summaryrefslogtreecommitdiff
path: root/libavdevice/xcbgrab.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavdevice/xcbgrab.c')
-rw-r--r--libavdevice/xcbgrab.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/libavdevice/xcbgrab.c b/libavdevice/xcbgrab.c
index 161bd03281..23969c9752 100644
--- a/libavdevice/xcbgrab.c
+++ b/libavdevice/xcbgrab.c
@@ -47,8 +47,9 @@ typedef struct XCBGrabContext {
xcb_connection_t *conn;
xcb_screen_t *screen;
xcb_window_t window;
+#if CONFIG_LIBXCB_SHM
xcb_shm_seg_t segment;
-
+#endif
int64_t time_frame;
AVRational time_base;
@@ -614,8 +615,6 @@ static av_cold int xcbgrab_read_header(AVFormatContext *s)
return AVERROR(EIO);
}
- c->segment = xcb_generate_id(c->conn);
-
ret = create_stream(s);
if (ret < 0) {
@@ -624,7 +623,8 @@ static av_cold int xcbgrab_read_header(AVFormatContext *s)
}
#if CONFIG_LIBXCB_SHM
- c->has_shm = check_shm(c->conn);
+ if ((c->has_shm = check_shm(c->conn)))
+ c->segment = xcb_generate_id(c->conn);
#endif
#if CONFIG_LIBXCB_XFIXES