1 2005-12-28 Jamey Sharp <jamey@minilop.net>
4 Replace obsolete AC_OUTPUT(...) call with AC_CONFIG_FILES(...)
5 and the no-argument AC_OUTPUT macro.
7 2005-12-24 Jamey Sharp <jamey@minilop.net>
9 * src/xcb_xlib.c, src/xcbxlib.h, src/Makefile.am:
10 New header and two functions specifically for Xlib's use, so
11 we can quit installing xcbint.h.
13 * src/xcb_out.c, src/xcbint.h:
14 Now that Xlib uses entirely public API, force_sequence_wrap is
15 purely internal to xcb_out.
17 2005-12-20 Jamey Sharp <jamey@minilop.net>
20 Use AF_UNIX instead of PF_UNIX, because they're interchangeable
21 on Linux (and 4.x BSD?) but on MacOS X the latter is not
22 available. Thanks to Ian Osgood for testing.
24 2005-12-12 Jamey Sharp <jamey@minilop.net>
27 Rewrite XCBParseDisplay to handle all error cases correctly.
28 Thanks to Travis Spencer for pointing out a problem with
29 the previous sscanf call; turns out that sscanf won't do what
30 I want anyway, so this version just uses strtoul.
32 2005-12-12 Jamey Sharp <jamey@minilop.net>
34 * tests/check_public.c:
35 Fix segfault in fail_unless calls and provide more useful error
36 messages. Also remove DISPLAY from the environment and test
37 ParseDisplay on a null pointer.
39 2005-12-07 Jamey Sharp <jamey@minilop.net>
41 * src/xcb.h, src/xcb_in.c:
42 Use GCC attribute extension, if available, to mark some
43 functions deprecated; and rename XCBWaitEvent to
44 XCBWaitForEvent, with a deprecated backwards compatibility
47 2005-12-07 Jamey Sharp <jamey@minilop.net>
49 * src/xcb.h, src/xcb_conn.c, src/xcb_util.c:
50 Rename XCBConnect to XCBConnectToFD, and implement XCBConnect
51 and XCBConnectToDisplayWithAuthInfo, as specified by the XcbApi
52 documentation. Provide a trivial implementation of deprecated
53 XCBConnectBasic for backwards compatibility. Fix XCBParseDisplay
54 to accept a null screen pointer.
56 2005-09-30 Trevor Woerner <twoerner.x@gmail.com>
58 reviewer: Jamey Sharp <jamey@minilop.net>
60 * Makefile.am, configure.ac, src/Makefile.am, tests/Makefile.am,
61 src/check_all.c, src/check_public.c, src/check_suites.h:
62 Created a new directory called "tests" where the unit tests
63 will reside, separate from other files. Moved the unit
64 test files from the "src" directory into the new "tests"
67 * configure.ac, tests/CheckLog.xsl, tests/.cvsignore,
68 tests/Makefile.am, tests/check_all.c:
69 Added an XSLT transform to post-process the XML log file which
70 is generated by the unit test suite into an HTML page. Added
71 the necessary hooks into the build system to have this
72 translation occur when necessary as part of the build process.
74 2005-08-15 Trevor Woerner <twoerner.x@gmail.com>
76 reviewer: Jamey Sharp <jamey@minilop.net>
79 Make builds work when the source and build directories
82 2005-08-03 Trevor Woerner <twoerner.x@gmail.com>
84 reviewer: Jamey Sharp <jamey@minilop.net>
87 Allow people to not have check as long as they have at
88 least automake version 1.9. Older versions of automake
89 still work as long as check is installed or the NoCheck
90 instructions are followed.
92 2005-07-21 Jamey Sharp <jamey@minilop.net>
95 Fix one uninitialized memory warning from Valgrind.
96 More will have to wait.
98 2005-07-21 Jamey Sharp <jamey@minilop.net>
101 Fix memory leak reported by Carl Worth (thanks Carl!).
103 2005-05-22 Josh Triplett <josh@freedesktop.org>
106 Permit unions to have fixed-length list fields.
108 2005-05-21 Josh Triplett <josh@freedesktop.org>
111 In function parameters and structure fields, line up field names in
112 the same starting column.
114 2005-05-17 Josh Triplett <josh@freedesktop.org>
117 Make header files self-sufficient, by including xcb.h in the
118 generated headers rather than the generated sources.
121 Make xcbext.h self-sufficient, by including xcb.h.
123 2005-05-17 Josh Triplett <josh@freedesktop.org>
126 Line up function parameters with opening parenthesis.
128 2005-05-17 Jamey Sharp <jamey@minilop.net>
131 Improve whitespace output on function declarations.
133 2005-04-23 Jeremy Kolb <jkolb@brandeis.edu>
135 Added list support for typedefs.
138 2005-04-23 Josh Triplett <josh@freedesktop.org>
141 Allow protocol descriptions to explicitly qualify types with a
142 namespace, which should be the value of the header attribute from
143 the protocol description containing the desired type.
145 2005-04-10 Jamey Sharp <jamey@minilop.net>
147 * src/xcb.h, src/xcb_in.c:
148 New public function XCBGetRequestRead: returns the last sequence
149 number that the server is known to have processed. This function
150 enables apps to determine whether forcing a cookie is going to
153 2005-04-09 Jamey Sharp <jamey@minilop.net>
156 Implement XCBPrefetchExtensionData. An extension can now be in
157 one of three states in a particular connection's cache: not
158 queried; query cookie available; and query reply available.
160 2005-04-09 Jamey Sharp <jamey@minilop.net>
162 * src/xcb_ext.c, src/xcbint.h:
163 Assign a display-independent unique integer to each XCBExtension
164 structure. Use a map instead of a list for the extension cache.
165 Key the map on the assigned integer.
167 2005-04-06 Jeremy Kolb <jkolb@brandeis.edu>
170 Added support for c types float and double.
171 Needed for GLX extension.
173 2005-04-02 Jamey Sharp <jamey@minilop.net>
176 Workaround for XSLT processors that can't understand attribute
177 values of the form '{{ "{...}" }}'. (What? That looks completely
180 2005-04-01 Jamey Sharp <jamey@minilop.net>
183 Make the _destroy operations no-op on null pointers.
185 2005-03-31 Jamey Sharp <jamey@minilop.net>
187 * src/xcb.h, src/xcb_conn.c, src/xcb_out.c, src/xcbint.h:
188 Lazily check for BIG-REQUESTS support. The first call to
189 XCBGetMaximumRequestLength takes the two-round-trip penalty for
190 discovering BIG-REQUESTS support, and caches the result for
191 subsequent calls. Also XCBSendRequest is now careful to only ask
192 for the true maximum request length if the length from the
193 connection setup data isn't sufficient for the current request.
195 2005-03-31 Jamey Sharp <jamey@minilop.net>
198 Fix X error handling to, uh, not hang.
200 2005-03-30 Jamey Sharp <jamey@minilop.net>
202 * src/xcb_in.c, src/xcbint.h:
203 Accept zero or more replies to any request. Eliminates, for the
204 moment, nearly all run-time error checking regarding the number
205 of replies expected for a particular request. Also breaks the
206 unexpected reply callback, which is OK because I was going to
207 remove it anyway, and now I've done so.
209 2005-03-30 Jamey Sharp <jamey@minilop.net>
211 * src/xcb_list.c, src/xcbint.h:
212 Add a map ADT implemented using the list ADT.
214 2005-03-28 Vincent Torri <torri@iecn.u-nancy.fr>
216 * doc/tutorial/index.html, doc/tutorial/xcb.css:
219 2005-03-27 Jeremy Kolb <jkolb@brandeis.edu>
222 Added xf86dri (xcb-proto/src/extensions/xf86dri.h).
223 Removed compilation of record as it's broken.
225 2005-03-25 Jamey Sharp <jamey@minilop.net>
228 Instead of storing a pending flag per reply record, look in the
229 readers list to find out whether there's a reader waiting for
230 the reply we've just been asked to wait for.
232 2005-03-25 Jamey Sharp <jamey@minilop.net>
234 * src/xcb_list.c, src/xcbint.h:
235 Add _xcb_queue_is_empty.
237 2005-03-25 Jamey Sharp <jamey@minilop.net>
239 * src/xcb_in.c, src/xcb_list.c, src/xcbint.h:
240 Add a queue ADT. Currently implemented using the list ADT, but
241 analysis will probably suggest a better data structure. The
242 split is intended to help that analysis.
244 2005-03-25 Jamey Sharp <jamey@minilop.net>
246 * src/xcb_in.c, src/xcb_list.c, src/xcbint.h:
247 Remove _xcb_list_length. (Two callers in xcb_in didn't actually
248 care about the returned value beyond "empty" or "non-empty",
249 which they can get other ways.) _xcb_in_events_length became
250 obsolete in the process, and I took _xcb_list_clear out of
251 xcbint.h while I was at it because only _xcb_list_delete calls
254 2005-03-25 Jamey Sharp <jamey@minilop.net>
256 * src/xcb.h, src/xcb_in.c:
257 Remove XCBEventQueueLength and XCBEventQueueClear: they're not
258 part of the new API, and they interfere with analysis of the
259 _xcb_list implementation.
261 2005-03-24 Josh Triplett <josh@freedesktop.org>
264 Change pdx.freedesktop.org to lists.freedesktop.org in package
267 2005-03-23 Jamey Sharp <jamey@minilop.net>
269 * src/xcb_conn.c, src/xcb_in.c:
270 avn@daemon.hole.ru pointed out two memory leaks in XCB, which
271 this update fixes. I also introduced a third a couple of days
272 ago, which this fixes as well.
274 2005-03-23 Jamey Sharp <jamey@minilop.net>
277 Quit storing an "error" flag: it's redundant with the contents
278 of the packet that it was stored with.
280 2005-03-22 Jamey Sharp <jamey@minilop.net>
282 * src/xcb_in.c, src/xcbint.h:
283 My recent Xlib patch stressed XCB's pending reply queue in ways
284 it has never been stressed before, with thousands of entries.
285 Profiling revealed that wake_up_next_reader was taking most of
286 the cycles of my test app with its linear search of the reply
287 queue. So I gave it its own 'readers' queue, which can have at
288 most one entry per thread, and which can be no more than the
289 number of pending replies. In the current implementation the
290 readers queue uses only constant-time operations, too.
292 2005-03-20 Jamey Sharp <jamey@minilop.net>
295 Wait for the last known read sequence number to pass the request
296 we're waiting for, instead of checking whether data has arrived
297 for the current request. Causes null to be returned if somebody
298 screwed up by expecting a reply when none can come; relied on by
299 new Xlib/XCB bits that intentionally and routinely screw up this
300 way because the API doesn't give them enough information.
302 * src/xcb_list.c, src/xcbint.h:
303 Add _xcb_list_peek_head so Xlib doesn't have to repeatedly
304 remove and re-insert the item at the head of its new
305 pending_requests queue. Profiling showed that was a significant
306 performance hit for the above-mentioned patch and with this
307 three-line function apps are actually usable again.
309 2004-11-26 Josh Triplett <josh@freedesktop.org>
312 In do-request processing, use the existing num-parts variable
313 rather than recalculating the same expression.
315 2004-11-26 Josh Triplett <josh@freedesktop.org>
318 * Add a list of known core types, and don't search all the
319 protocol descriptions for types in that list. This
320 significantly shortens the processing time.
321 * Search for all definitions of a non-core type, not just the
322 first, in order to check for duplicate definitions.
323 * Add an error message for non-core types with no definitions
326 2004-11-10 Josh Triplett <josh@freedesktop.org>
329 Don't create a separate local variable for exprfields, and change
330 an explicit xsl:for-each to an xsl:apply-templates.
332 2004-11-10 Josh Triplett <josh@freedesktop.org>
335 Prefix variables in request functions with "xcb_" to avoid
336 collisions with field names.
338 2004-11-09 Josh Triplett <josh@freedesktop.org>
343 More API changes: Put constant request-specific data into a static
344 const structure in each request function.
346 2004-11-09 Josh Triplett <josh@freedesktop.org>
349 Add support for an <indent> tag in a function body, which indents
350 the <l>s it contains.
353 debian/copyright is a generated file, so add it to
356 2004-11-08 Jamey Sharp <jamey@minilop.net>
359 Make the __thread-based assertion a compile-time
360 option, defaulting to off. It breaks on many systems
361 and isn't critical to XCB's functionality.
363 2004-11-07 Josh Triplett <josh@freedesktop.org>
366 Update XSLT to deal with change from extension element to
367 extension-name and extension-xname attributes on xcb element.
369 2004-11-06 Josh Triplett <josh@freedesktop.org>
382 Include license in every file rather than referencing COPYING.
383 Update copyright notices to 2004.
386 Remove non-applicable licenses from COPYING file.
388 2004-11-06 Josh Triplett <josh@freedesktop.org>
394 Merged changes for XML-XCB project.
398 Add XSLT binding generator and non-M4 version of xcb.h.
402 Remove M4 binding generator and M4 version of xcb.h.
406 * debian/copyright.debian:
408 Updated Debian packaging.
410 2004-09-30 Jamey Sharp <jamey@minilop.net>
415 Renamed XCBWaitReply to XCBWaitForReply for new API.
417 2004-09-30 Jamey Sharp <jamey@minilop.net>
420 Fix build failure when compiling tests.
422 2004-09-29 Jamey Sharp <jamey@minilop.net>
426 Added XCBPollForEvent function from new API.
428 2004-09-29 Jamey Sharp <jamey@minilop.net>
434 Update the extension cache for its new API. The
435 optimizations that this API enables are not yet
436 implemented, but the current implementation should
437 at least function correctly.
439 2004-09-29 Jamey Sharp <jamey@minilop.net>
443 Oops, XCBPopcount was supposed to change argument
446 2004-09-29 Jamey Sharp <jamey@minilop.net>
451 Renamed XCBOnes to XCBPopcount as per new API spec.
453 2004-09-29 Jamey Sharp <jamey@minilop.net>
463 Moved declarations that are only useful to protocol
464 implementations into a separate header file,
467 2004-09-28 Jamey Sharp <jamey@minilop.net>
471 Add internal sanity check macros for sequence
472 numbers, and invoke them every time _xcb_conn_wait
475 2004-09-28 Jamey Sharp <jamey@minilop.net>
478 Allow LISTPARAMs to omit the length argument. When
479 generating C code, a LOCALPARAM is automatically
480 generated for the length if the length argument is
483 2004-08-13 Jamey Sharp <jamey@minilop.net>
489 * src/check_suites.h:
490 * src/check_public.c:
491 Add the first unit tests for XCB. This adds a build
492 dependency on 'check'; I hope somebody will make it
493 more of a build recommendation.
495 2004-08-13 Jamey Sharp <jamey@minilop.net>
498 Add a sanity check: assert() that _xcb_conn_wait
499 will not be re-entered within the same thread. This
500 turns out not to be true in some current buggy code.
501 Xlib re-enters from _XAsyncReplyHandler in
502 src/xcl/display.c; and the X Test Suite seems to
503 catch SIGABRT and continue running.
505 2004-08-10 Jamey Sharp <jamey@minilop.net>
508 I misread the BIG-REQUESTS specification. The long
509 length field needs to count itself too.
511 2004-07-24 Jamey Sharp <jamey@minilop.net>
514 Renamed functions that return new iterators to
515 *Iter, to avoid conflict with similar functions that
518 Deprecating ARRAYFIELD in favor of LISTFIELD, which
519 now generates both array and iterator accessors. You
520 get an array accessor as long as the element type is
521 fixed length; you get an interator accessor as long
522 as the base type has an iterator. You always get a
525 2004-07-24 Jamey Sharp <jamey@minilop.net>
528 Bart cleaned up some code that I made ugly, and
529 I'm fixing a warning that resulted from a static
530 function being created but not necessarily used.
532 2004-07-07 Jamey Sharp <jamey@minilop.net>
535 OK, it might be a good idea to commit something
536 that compiles. I thought I'd tested this change...
538 2004-07-06 Jamey Sharp <jamey@minilop.net>
542 Added support for the XC-Misc extension's ability
543 to request more XIDs from the server when the
544 client runs out of them.
546 2004-07-06 Jamey Sharp <jamey@minilop.net>
551 Removed XCBNextNonce, and the nonce parameter of
552 XCBGetAuthInfo, from the API. XCB can compute
553 that just fine without help from the application.
555 2004-07-06 Jamey Sharp <jamey@minilop.net>
558 Importing part of patches, adding SYNC, by
559 Mikko Markus Torni <mikko.markus.torni@iki.fi>.
560 This needed better padding computation in XCB
561 before it could be implemented cleanly.
563 2004-07-02 Jamey Sharp <jamey@minilop.net>
566 Importing part of patches, adding XC-MISC, by
567 Mikko Markus Torni <mikko.markus.torni@iki.fi>.
569 2004-07-02 Jamey Sharp <jamey@minilop.net>
573 Remove XCBEventQueueRemove and XCBEventQueueFind.
574 Their existence in the API constrains the
575 implementation, and they're not useful for real
576 code, like toolkits, anyway.
578 2004-07-02 Jamey Sharp <jamey@minilop.net>
582 XCB headers are now compatible with C++ source.
584 2004-07-02 Jamey Sharp <jamey@minilop.net>
588 Keith's fix for padding didn't quite work, despite
589 looking quite sensible at the time. Replaced
590 XCB_TYPE_CEIL with XCB_TYPE_PAD and made all the
591 iterators, lists, and arrays count the number of
592 bytes from the beginning of the current request.
594 2004-07-02 Jamey Sharp <jamey@minilop.net>
598 Force a response from the server if we haven't seen
599 one in 65530 requests. If you don't do this, XCB
600 gets confused the next time it waits for a reply.
602 2004-06-16 Keith Packard <keithp@keithp.com>
606 Must round datatype lengths to 4-byte boundary for
607 NEXTFIELD and End macros. Created new XCB_TYPE_CEIL
608 macro for this purpose and used it in a couple of
609 places. It is to be hoped that this represents all
610 of the locations that need changing...