allow compile-time setting for XCB queue buffer size
authorJulien Danjou <julien@danjou.info>
Fri, 26 Sep 2008 13:26:42 +0000 (15:26 +0200)
committerJulien Danjou <julien@danjou.info>
Tue, 14 Oct 2008 18:38:47 +0000 (20:38 +0200)
Signed-off-by: Julien Danjou <julien@danjou.info>
configure.ac
src/xcbint.h

index c3d3595..62c20be 100644 (file)
@@ -76,6 +76,16 @@ linux*)
        ;;
 esac
 
+dnl define buffer queue size
+xcb_queue_buffer_size=16384
+AC_DEFINE(XCB_QUEUE_BUFFER_SIZE, $xcb_queue_buffer_size, [XCB buffer queue size])
+AC_ARG_WITH(queue-size,
+            AC_HELP_STRING([--with-queue-size=SIZE],
+              [Set the XCB buffer queue size (default is 16384)]),
+            [AC_DEFINE_UNQUOTED(XCB_QUEUE_BUFFER_SIZE, $withval, [XCB buffer queue size]),
+            xcb_queue_buffer_size=$withval],
+            )
+
 dnl check for the sockaddr_un.sun_len member
 AC_CHECK_MEMBER([struct sockaddr_un.sun_len],
                [AC_DEFINE(HAVE_SOCKADDR_SUN_LEN,1,[Have the sockaddr_un.sun_len member.])],
@@ -181,6 +191,7 @@ echo ""
 echo "  Configuration"
 echo "    XDM support.........: ${have_xdmcp}"
 echo "    Build unit tests....: ${HAVE_CHECK}"
+echo "    XCB buffer size.....: ${xcb_queue_buffer_size}"
 echo ""
 echo "  Used CFLAGS:"
 echo "    CPPFLAGS............: ${CPPFLAGS}"
index ab0264f..22f8f41 100644 (file)
@@ -72,7 +72,7 @@ typedef struct _xcb_out {
     pthread_cond_t cond;
     int writing;
 
-    char queue[4096];
+    char queue[XCB_QUEUE_BUFFER_SIZE];
     int queue_len;
 
     unsigned int request;