Remove c->out.vec. Pass iovecs directly down the call tree. Add _xcb_out_flush_to...
[free-sw/xcb/libxcb] / src / xcbint.h
index 7c8f331..e90ede2 100644 (file)
@@ -63,8 +63,6 @@ typedef struct _xcb_out {
 
     char queue[4096];
     int queue_len;
-    struct iovec *vec;
-    int vec_len;
 
     unsigned int request;
     unsigned int request_written;
@@ -76,9 +74,9 @@ typedef struct _xcb_out {
 int _xcb_out_init(_xcb_out *out);
 void _xcb_out_destroy(_xcb_out *out);
 
-int _xcb_out_write(XCBConnection *c);
-int _xcb_out_write_block(XCBConnection *c, struct iovec *vector, size_t count);
-int _xcb_out_flush(XCBConnection *c);
+int _xcb_out_write(XCBConnection *c, struct iovec **vector, int *count);
+int _xcb_out_send(XCBConnection *c, struct iovec **vector, int *count);
+int _xcb_out_flush_to(XCBConnection *c, unsigned int request);
 
 
 /* xcb_in.c */
@@ -157,7 +155,7 @@ struct XCBConnection {
     _xcb_xid xid;
 };
 
-int _xcb_conn_wait(XCBConnection *c, const int should_write, pthread_cond_t *cond);
+int _xcb_conn_wait(XCBConnection *c, pthread_cond_t *cond, struct iovec **vector, int *count);
 
 #ifdef GCC_HAS_VISIBILITY
 #pragma GCC visibility pop