TORRI Vincent
01656220ef
fixes + valid css
2006-03-05 09:22:03 +01:00
TORRI Vincent
6659c8c63b
lots of fixes. Thanks to Indan Zupancic
2006-03-05 09:05:21 +01:00
TORRI Vincent
6e4745bbd0
lots of fixes. Thanks to Indan Zupancic
2006-03-05 07:54:20 +01:00
Josh Triplett
df9c7cb4f9
Add *.tar.{bz2,gz} to .gitignore for the benefit of "make distcheck".
2006-03-04 18:35:53 -08:00
Jamey Sharp
29f9fe0fc8
API/ABI change: XCBSendRequest returns the sequence number instead of using an out-parameter. Now 0 is a special sequence number indicating failure.
2006-03-03 11:08:10 -08:00
Jamey Sharp
255c21b17f
Add 32-bit full_sequence fields to generic errors and events, so callers can always correlate events and errors with requests correctly.
2006-03-03 01:45:00 -08:00
Jamey Sharp
622b599c8f
Tweak to previous API change: Require that spare iovecs fall before vector[0]. Leave vector in well-defined state.
2006-03-02 23:39:38 -08:00
Jamey Sharp
87905f0579
assert() that XCBSendRequest was handed enough space to set opcodes and short length fields.
2006-03-02 23:31:35 -08:00
Jamey Sharp
45e1cc0935
Bugfix: The fixed-length part needs two iovecs reserved, just like all the other parts.
2006-03-02 23:12:21 -08:00
Jamey Sharp
b46953f46c
Use XPath position() function instead of xsl:number, to evaluate array indices while generating code for easier readability.
2006-03-02 23:05:08 -08:00
Jamey Sharp
5e115e2441
API/ABI change: XCBSendRequest callers must pad to 4-byte boundaries now. When not in RAW mode, a null pointer for iov_base is replaced by up to 3 padding bytes.
2006-03-02 15:35:31 -08:00
Jamey Sharp
ed823bf651
Separate notion of request-completed from current-request, and mark requests completed more aggressively. Detects some usage errors that are otherwise undetectable.
2006-03-02 13:49:00 -08:00
Jamey Sharp
c05ae15b66
Buffer a couple CARD32s on the stack instead of using an extra iovec. Also a bugfix: do not hold a reference to longlen after it goes out of scope.
2006-02-27 12:12:33 -08:00
Jamey Sharp
8f991bdd38
Add XCB_REQUEST_RAW flag for XCBSendRequest.
2006-02-27 11:03:13 -08:00
Jamey Sharp
5e350126a7
Bugfix: how about *not* leaking all pending_replies when no reply matches, as often happens with Xlib?
2006-02-27 10:53:08 -08:00
Jamey Sharp
731c85762d
Move test for other writing threads *before* allocating a sequence number.
2006-02-27 02:57:36 -08:00
Jamey Sharp
8ab4dcde9d
_xcb_list is no longer used, so remove it. Simplify _xcb_map.
2006-02-27 02:14:48 -08:00
Jamey Sharp
76ad79a7ad
Replace readers generic list with hand-written typesafe version.
2006-02-27 01:43:07 -08:00
Jamey Sharp
fa71b9b835
Rename struct XCBReplyData to reader_list to follow my naming conventions and better reflect its purpose.
2006-02-27 01:06:15 -08:00
Jamey Sharp
ff665b5726
In struct XCBReplyData, change void *data to pthread_cond_t *data. That was dumb.
2006-02-27 00:54:59 -08:00
Jamey Sharp
50acfeae36
Delete unused xcb_list functions and refactor others.
2006-02-26 23:43:44 -08:00
Jamey Sharp
86ce18c22c
Replace current_reply generic queue with hand-written version. No generic queues remain so delete their implementation.
2006-02-26 22:58:17 -08:00
Jamey Sharp
0f130b4d94
Replace events generic queue with hand-written typesafe version.
2006-02-26 18:28:50 -08:00
Jamey Sharp
ff7b6c9124
API/ABI break: Add flags to XCBSendRequest, first for error-checked requests.
...
There's no more race condition between event and reply handling.
The *RequestBlind and *RequestChecked functions are not yet implemented.
2006-02-26 15:45:08 -08:00
Jamey Sharp
7875040fa1
Replace pending_replies generic queue with a hand-implemented typesafe version.
2006-02-26 02:00:03 -08:00
Jamey Sharp
a1eff0c49a
Replace my old generic map ADT with a growable array for the extension cache.
2006-02-26 01:27:01 -08:00
Jamey Sharp
46a7549981
XCB has not had tracing features for a long time: remove the remnants.
2006-02-25 23:27:47 -08:00
Jamey Sharp
b6cbe83774
Rearrange an if statement that's been bothering me.
2006-02-25 23:26:55 -08:00
Jamey Sharp
f27166f49b
Coalesce _xcb_writev into _xcb_out_write and simplify.
2006-02-24 02:17:36 -08:00
Jamey Sharp
9463653b1e
Take advantage of Requires and *.private fields for a more accurate pkg-config file.
2006-02-24 01:56:18 -08:00
Jamey Sharp
bae98d3604
Move _xcb_set_fd_flags to xcb_conn.c and make it static. xcb_util.c now has only public functions.
2006-02-24 01:50:48 -08:00
Jamey Sharp
67b2649dc4
Move _xcb_read_block to xcb_in.c and make it static. Change calls in xcb_conn.c to _xcb_in_read_block instead.
2006-02-24 01:40:45 -08:00
Jamey Sharp
838317f4d3
Remove XCB_CEIL and use a simpler definition for XCB_PAD.
2006-02-24 01:17:03 -08:00
Jamey Sharp
1b50d2ee1e
Quit using "-include config.h": use #ifdef HAVE_CONFIG_H etc. like everyone else.
2006-02-24 01:04:48 -08:00
Jamey Sharp
e1c2777aba
Coalesce readn into _xcb_in_read and simplify.
2006-02-24 00:59:08 -08:00
Jamey Sharp
3f8d0bd532
Move _xcb_readn to xcb_in.c and make it static. Minor change to _xcb_read_block to not depend on _xcb_readn.
2006-02-24 00:48:18 -08:00
Jamey Sharp
cdf362f33a
Bugfix: protect the output queue from being written while another thread is flushing it.
2006-02-24 00:25:34 -08:00
Jamey Sharp
4e91ae275e
Simplify: Always use writev. (In _xcb_out_flush, convert the output queue to a single iovec if needed.)
2006-02-24 00:02:43 -08:00
Jamey Sharp
7f0bc778c8
Factor padding out of _xcb_out_write_block and into its callers, XCBSendRequest and write_setup.
...
This requires dynamically allocating memory in XCBSendRequest, but this
malloc/free pair turns out to cause a 30% speed hit for the 'x11perf -noop'
test -- so for the moment I use alloca where available and fall back to malloc
on other platforms. Later I think I'll change the contract of XCBSendRequest
so the caller is responsible for memory allocation, because the caller ought
to always be able to stack-allocate here.
2006-02-23 22:41:59 -08:00
Jamey Sharp
6e29e5f2ee
Add XCBGetQueuedRequestRead for Xlib that does no syscalls, just returns whatever XCB already knows about.
2006-02-23 17:50:53 -08:00
Jamey Sharp
26ac6292ba
Minor performance fix: Change the contract on XCBGetRequestSent so that it does not waste time re-locking. This is for Xlib, and Xlib has already locked.
2006-02-23 15:29:40 -08:00
Jamey Sharp
a736674943
Minor performance fix: Only rearrange buffers for BIG-REQUESTs.
2006-02-23 14:57:46 -08:00
Jamey Sharp
e866bed934
Move request_written update back where it was for now: doing it early can cause XCBWaitForReply to wrongly believe that the request has been flushed. Eventually, we should fix bug #6021 .
2006-02-23 14:32:11 -08:00
Jamey Sharp
1b83f8f8f3
Remove _xcb_assert_valid_sequence. One test is trivially true, and the other may be temporarily violated without anything bad happening.
2006-02-23 14:30:08 -08:00
Jamey Sharp
55c1842686
Move _xcb_write and _xcb_writev to xcb_out.c and make them static, since only _xcb_out_write calls them.
2006-02-23 12:48:27 -08:00
Jamey Sharp
213b572592
Ignore test byproducts.
2006-02-23 12:34:08 -08:00
Jamey Sharp
6149c7a6b5
More return value changes, and make _xcb_in_read_packet static since it is not called from outside xcb_in.c.
2006-02-23 12:15:09 -08:00
Jamey Sharp
5b1d39e27b
More return value changes.
2006-02-23 11:50:12 -08:00
Jamey Sharp
662479760c
Make the return value of _xcb_conn_wait boolean, instead of syscall-like.
2006-02-23 10:17:40 -08:00
Jamey Sharp
f8a8b465e0
Bugfix: move request_written update *before* _xcb_conn_wait in _xcb_out_flush. Otherwise a reply may be read before we record that we have sent the request, and then XCB gets... confused.
2006-02-22 23:38:16 -08:00