mirror of
				https://github.com/SwallowOS/xorg_lib_libxcb
				synced 2025-11-04 13:54:44 +08:00 
			
		
		
		
	
			
				
					
						
					
					8584c0e09573a29d8ba7050e3d5afd925b4d8d80
				
			
			
		
	Before this patch, the following code caused an endless loop in send_fds(),
because the queue of FDs to send was eventually full, but _xcb_out_flush_to()
didn't make any progress, since there was no request to send:
   while (1) { xcb_send_fd(conn, dup(some_fd)); }
Fix this by sending a sync when flushing didn't make any progress. That way we
actually have something to send and can attach the pending FDs.
Because send_fds() can now send requests, the code in
xcb_send_request_with_fds64() has to be changed. It has to call send_fds()
before it establishes a good sequence number for the request it wants to send.
Signed-off-by: Uli Schlachter <psychon@znc.in>
		
	
About libxcb
============
libxcb provides an interface to the X Window System protocol, which
replaces the current Xlib interface. It has several advantages over
Xlib, including:
- size: small, simple library, and lower memory footprint
- latency hiding: batch several requests and wait for the replies later
- direct protocol access: interface and protocol correspond exactly
- proven thread support: transparently access XCB from multiple threads
- easy extension implementation: interfaces auto-generated from XML-XCB
Xlib can also use XCB as a transport layer, allowing software to make
requests and receive responses with both, which eases porting to XCB.
However, client programs, libraries, and toolkits will gain the most
benefit from a native XCB port.
Please report any issues you find to the freedesktop.org bug tracker,
at:
	<https://bugs.freedesktop.org/enter_bug.cgi?product=XCB>
Discussion about XCB occurs on the XCB mailing list:
        <mailto:xcb at lists.freedesktop.org>
        <http://lists.freedesktop.org/mailman/listinfo/xcb>
You can obtain the latest development versions of XCB using GIT.
For anonymous checkouts, use:
        git clone git://anongit.freedesktop.org/git/xcb/libxcb
For developers, use:
        git clone git+ssh://git.freedesktop.org/git/xcb/libxcb
			
		Description
				
					Languages
				
				
								
								
									C
								
								96.8%
							
						
							
								
								
									Python
								
								2.6%
							
						
							
								
								
									M4
								
								0.3%
							
						
							
								
								
									Makefile
								
								0.2%