diff options
author | wm4 <wm4@nowhere> | 2017-12-02 23:19:13 +0100 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2017-12-02 23:19:13 +0100 |
commit | d7a02bcb3b25a9e3e80e9b80e46a494f97e684a9 (patch) | |
tree | f3a0f98d193b9bbf5fd74695935b0f4ac198937d /video/out/vo_xv.c | |
parent | ca29a5aa9b5bb38d43cce878131a61c0c0928b64 (diff) | |
download | mpv-d7a02bcb3b25a9e3e80e9b80e46a494f97e684a9.tar.bz2 mpv-d7a02bcb3b25a9e3e80e9b80e46a494f97e684a9.tar.xz |
build: remove POSIX/sysv shared memory test
vo_x11 and vo_xv need this. According to the Linux manpage, all involved
functions are POSIX-2001 anyway. (I just assumed they were not, because
they're mostly System V UNIX legacy garbage.)
Diffstat (limited to 'video/out/vo_xv.c')
-rw-r--r-- | video/out/vo_xv.c | 24 |
1 files changed, 4 insertions, 20 deletions
diff --git a/video/out/vo_xv.c b/video/out/vo_xv.c index 7c710f20ac..e75a653d65 100644 --- a/video/out/vo_xv.c +++ b/video/out/vo_xv.c @@ -30,12 +30,10 @@ #include "config.h" -#if HAVE_SHM #include <sys/types.h> #include <sys/ipc.h> #include <sys/shm.h> #include <X11/extensions/XShm.h> -#endif // Note: depends on the inclusion of X11/extensions/XShm.h #include <X11/extensions/Xv.h> @@ -92,10 +90,8 @@ struct xvctx { GC f_gc; // used to paint background GC vo_gc; // used to paint video int Shmem_Flag; -#if HAVE_SHM XShmSegmentInfo Shminfo[MAX_BUFFERS]; int Shm_Warned_Slow; -#endif }; #define MP_FOURCC(a,b,c,d) ((a) | ((b)<<8) | ((c)<<16) | ((unsigned)(d)<<24)) @@ -542,7 +538,6 @@ static bool allocate_xvimage(struct vo *vo, int foo) int aligned_w = FFALIGN(ctx->image_width, 32); // round up the height to next chroma boundary too int aligned_h = FFALIGN(ctx->image_height, 2); -#if HAVE_SHM if (x11->display_is_local && XShmQueryExtension(x11->display)) { ctx->Shmem_Flag = 1; x11->ShmCompletionEvent = XShmGetEventBase(x11->display) @@ -572,9 +567,7 @@ static bool allocate_xvimage(struct vo *vo, int foo) XShmAttach(x11->display, &ctx->Shminfo[foo]); XSync(x11->display, False); shmctl(ctx->Shminfo[foo].shmid, IPC_RMID, 0); - } else -#endif - { + } else { ctx->xvimage[foo] = (XvImage *) XvCreateImage(x11->display, ctx->xv_port, ctx->xv_format, NULL, aligned_w, @@ -604,22 +597,17 @@ static bool allocate_xvimage(struct vo *vo, int foo) static void deallocate_xvimage(struct vo *vo, int foo) { struct xvctx *ctx = vo->priv; -#if HAVE_SHM if (ctx->Shmem_Flag) { XShmDetach(vo->x11->display, &ctx->Shminfo[foo]); shmdt(ctx->Shminfo[foo].shmaddr); - } else -#endif - { + } else { av_free(ctx->xvimage[foo]->data); } if (ctx->xvimage[foo]) XFree(ctx->xvimage[foo]); ctx->xvimage[foo] = NULL; -#if HAVE_SHM ctx->Shminfo[foo] = (XShmSegmentInfo){0}; -#endif XSync(vo->x11->display, False); return; @@ -633,16 +621,14 @@ static inline void put_xvimage(struct vo *vo, XvImage *xvi) struct mp_rect *dst = &ctx->dst_rect; int dw = dst->x1 - dst->x0, dh = dst->y1 - dst->y0; int sw = src->x1 - src->x0, sh = src->y1 - src->y0; -#if HAVE_SHM + if (ctx->Shmem_Flag) { XvShmPutImage(x11->display, ctx->xv_port, x11->window, ctx->vo_gc, xvi, src->x0, src->y0, sw, sh, dst->x0, dst->y0, dw, dh, True); x11->ShmCompletionWaitCount++; - } else -#endif - { + } else { XvPutImage(x11->display, ctx->xv_port, x11->window, ctx->vo_gc, xvi, src->x0, src->y0, sw, sh, dst->x0, dst->y0, dw, dh); @@ -677,7 +663,6 @@ static struct mp_image get_xv_buffer(struct vo *vo, int buf_index) static void wait_for_completion(struct vo *vo, int max_outstanding) { -#if HAVE_SHM struct xvctx *ctx = vo->priv; struct vo_x11_state *x11 = vo->x11; if (ctx->Shmem_Flag) { @@ -691,7 +676,6 @@ static void wait_for_completion(struct vo *vo, int max_outstanding) vo_x11_check_events(vo); } } -#endif } static void flip_page(struct vo *vo) |