1
commit 107a74885a25e585b467c7841c6929a12aa62565
2
Author: Carl Worth <cworth@cworth.org>
3
Date: Wed Jun 27 14:05:56 2007 -0700
5
Increment cairo version to 1.4.10 (and libtool versioning to 13:5:11)
8
1 files changed, 2 insertions(+), 2 deletions(-)
10
commit f595ad2348dbd97b57d22471fdec7664f8ca7bf6
11
Author: Carl Worth <cworth@cworth.org>
12
Date: Wed Jun 27 14:04:27 2007 -0700
14
Add notes to NEWS for 1.4.10
16
NEWS | 45 +++++++++++++++++++++++++++++++++++++++++++++
17
1 files changed, 45 insertions(+), 0 deletions(-)
19
commit 2bf3e31da99f34328973a0866346af40748097f6
20
Author: Carl Worth <cworth@cworth.org>
21
Date: Wed Jun 27 11:11:36 2007 -0700
23
Prefer local dpy variable instead of display->display
25
This was a tiny piece of cleanup that had been erroneously included
26
with some earlier functional changes, (so it went through a cycle
27
of being applied and reverted). It's back now in its own commit.
29
src/cairo-xlib-display.c | 6 +++---
30
1 files changed, 3 insertions(+), 3 deletions(-)
32
commit eebb0df512da50f883a417bb5e8e368dc81e35a9
33
Author: Carl Worth <cworth@cworth.org>
34
Date: Wed Jun 27 11:08:53 2007 -0700
36
Revert "[cairo-xlib-display] Hide XErrors during processing of the work queue."
38
This reverts commit 285b702ef6f73e7eb4ca0da235a287ad1e1f412f.
40
The recent commit of 0791f342b93225849d9171aac8b738014b18bdf5 fixes
41
the same bug that 285b702e was fixing, but without introducing any
42
performance-killing calls to XSync. So we can drop those now.
44
src/cairo-xlib-display.c | 17 +++--------------
45
1 files changed, 3 insertions(+), 14 deletions(-)
47
commit b019cb8a7a910879c7af304edbd06fd105c9d89e
48
Author: Carl Worth <cworth@cworth.org>
49
Date: Wed Jun 27 11:07:07 2007 -0700
51
Revert "[cairo-xlib-surface] Check for errors before installing a NOOP error handler."
53
This reverts commit 7016614dd90798247524f0c118f462aa2e7ef673.
55
We want to avoid any negative performance impacts due to extra calls
56
to XSync. The fact that X errors can be missed with this appraoch is
57
undesirable of course---a proper fix will likely involve moving to
58
XCB which will hopefully allow us to do the error-checking the way
59
we want without any performance penalty.
61
src/cairo-xlib-surface.c | 2 --
62
1 files changed, 0 insertions(+), 2 deletions(-)
64
commit 6d021eb4b6e319dd2bb3e5e126de07c6844d5c07
65
Merge: 9109946... 0791f34...
66
Author: Carl Worth <cworth@cworth.org>
67
Date: Wed Jun 27 11:01:00 2007 -0700
69
Merge branch 'ooo-fix' into cairo
71
commit 0791f342b93225849d9171aac8b738014b18bdf5
72
Author: Chris Wilson <chris@chris-wilson.co.uk>
73
Date: Wed Jun 27 10:53:29 2007 -0700
75
Avoid deferring resource cleanup for application drawables
77
This eliminates X errors propagated from cairo due to cleaning up
78
Render Pictures after the application had already destroyed the
79
Drawable they reference. (It would be nice if the X server wouldn't
80
complain that some cleanup work is already done, but there you
83
This fix has been verified to fix the bug causing OpenOffice.org to
84
crash as described here:
86
XError on right click menus in OOo.
87
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=243811
89
And unlike other proposed fixes for this bug, this fix does not
90
introduce any new calls to XSync, (and thereby avoids performance
93
src/cairo-xlib-surface.c | 47 +++++++++++++++++++++++++--------------------
94
1 files changed, 26 insertions(+), 21 deletions(-)
96
commit 9109946a1a7f9341e60da7358da6535c5fac52db
97
Author: Chris Wilson <chris@chris-wilson.co.uk>
98
Date: Thu Jun 21 15:40:23 2007 +0100
100
[cairo-directfb] Correct minor typo.
102
Correct the reference to _cairo_directfb_surface_is_similar.
104
src/cairo-directfb-surface.c | 2 +-
105
1 files changed, 1 insertions(+), 1 deletions(-)
107
commit 1e76aa66b23aa7b3fd7b9f7de2b563b4db814517
108
Author: Nis Martensen <nis.martensen@web.de>
109
Date: Tue Jun 19 17:04:48 2007 +0200
111
Update INSTALL about status of backends
114
1 files changed, 4 insertions(+), 2 deletions(-)
116
commit 02f753c23ad0db7d677ae41f8d69dc566c8aaa0b
117
Author: Carl Worth <cworth@cworth.org>
118
Date: Mon Jun 18 18:23:06 2007 -0700
120
Fix cairo-perf-diff to compile cairo-perf explicitly
122
perf/cairo-perf-diff | 2 +-
123
1 files changed, 1 insertions(+), 1 deletions(-)
125
commit 2477e57de532fb3ebd1f6113cf51619b84b303d9
126
Author: Vladimir Vukicevic <vladimir@pobox.com>
127
Date: Mon Jun 18 13:58:15 2007 -0700
129
[perf] Add pixman_region_init_rects and use in extract_region
131
Avoid O(N*N) loop in traps_extract_region by letting us hand pixman
132
an array of rects all at once.
134
perf/Makefile.am | 3 +-
135
perf/cairo-perf.c | 1 +
136
perf/cairo-perf.h | 1 +
137
perf/long-dashed-lines.c | 67 +++++++++++++++++++++++++++++++++++++++++++++
138
pixman/src/pixman-remap.h | 1 +
139
pixman/src/pixman.h | 2 +
140
pixman/src/pixregion.c | 29 +++++++++++++++++++
141
src/cairo-traps.c | 58 +++++++++++++++++++++++++++-----------
142
8 files changed, 144 insertions(+), 18 deletions(-)
144
commit 285b702ef6f73e7eb4ca0da235a287ad1e1f412f
145
Author: Chris Wilson <chris@chris-wilson.co.uk>
146
Date: Fri Jun 15 20:38:01 2007 +0100
148
[cairo-xlib-display] Hide XErrors during processing of the work queue.
150
It is possible for the resources that we defer freeing to be already
151
destroyed and trigger an XError whilst processing the work queue. For
152
example, the application renders to a Window and then destroys the
153
Drawable before proceeding with more rendering. This will trigger an
154
invalid Picture from RenderFreePicture whilst attempting to free the
157
By ignoring the possibility that the application could allocate a fresh
158
resource with the same ID, we can simply hide the XErrors...
160
Fixes: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=243811
162
src/cairo-xlib-display.c | 17 ++++++++++++++---
163
1 files changed, 14 insertions(+), 3 deletions(-)
165
commit 7016614dd90798247524f0c118f462aa2e7ef673
166
Author: Chris Wilson <chris@chris-wilson.co.uk>
167
Date: Fri Jun 15 20:45:53 2007 +0100
169
[cairo-xlib-surface] Check for errors before installing a NOOP error handler.
171
Call XSync before ignoring errors from XGetImage to avoid hiding
172
unassociated errors. Similarly, call XSync before reinstalling the old
173
error handler to ensure no errors creep out of the ignored section.
175
src/cairo-xlib-surface.c | 2 ++
176
1 files changed, 2 insertions(+), 0 deletions(-)
178
commit 0c5d28a4e5ce5e4dd72c0f416ce5e960e92b808b
179
Author: Ryan Lortie <desrt@desrt.ca>
180
Date: Wed Jun 13 18:59:22 2007 -0400
182
[xlib] Create source xrender Picture with IncludeInferiors
184
When an xlib surface is used as the source of a draw operation this
185
will cause the contents of child windows to be included in the source
186
data. The semantics of drawing to xlib surfaces are unchanged (ie:
187
draws are still clipped by child windows overlapping the destination
190
src/cairo-xlib-surface.c | 15 ++++++++++++++-
191
1 files changed, 14 insertions(+), 1 deletions(-)
193
commit 817d4b0c9a354526389290c6d5a7662713d67cd8
194
Author: Brian Ewins <Brian.Ewins@gmail.com>
195
Date: Sat Jun 9 19:14:05 2007 +0100
197
[atsui] Document ATSUI
199
Add cairo_atsui_font_face_create_for_atsu_font_id
200
and ATSUI to the documentation. Don't enable it yet,
201
since this is still unsupported.
203
doc/public/tmpl/cairo-atsui.sgml | 2 +-
204
src/cairo-atsui-font.c | 13 +++++++++++++
205
2 files changed, 14 insertions(+), 1 deletions(-)
207
commit fd1edaa5d386f15edacfd5596b550593ed45d627
208
Author: Brian Ewins <Brian.Ewins@gmail.com>
209
Date: Wed Jun 13 01:27:36 2007 +0100
211
[quartz] remove unused code
213
clean up warnings about unused code: removing
214
_cairo_quartz_cairo_path_to_quartz_path and the functions
217
src/cairo-quartz-surface.c | 47 --------------------------------------------
218
1 files changed, 0 insertions(+), 47 deletions(-)
220
commit d7a0816ec3d750939dd935f34b217980ee27af3f
221
Author: Brian Ewins <Brian.Ewins@gmail.com>
222
Date: Wed Jun 13 01:27:36 2007 +0100
224
[quartz] move glyph array declarations
226
Move declarations causing a warning. A separate patch from
227
the other warning cleanups because it moves where the allocation
230
src/cairo-quartz-surface.c | 20 ++++++++++----------
231
1 files changed, 10 insertions(+), 10 deletions(-)
233
commit bf39b28b77a83160e5aa037031d82f8c0843f387
234
Author: Brian Ewins <Brian.Ewins@gmail.com>
235
Date: Wed Jun 13 01:04:54 2007 +0100
237
commit 75be87b4093aaa7f477d587d5a68308cade1b29c
239
[quartz] move glyph array declarations
241
Move declarations causing a warning. A separate patch from
242
the other warning cleanups because it moves where the allocation
245
src/cairo-quartz-surface.c | 27 +++++++++++++++------------
246
1 files changed, 15 insertions(+), 12 deletions(-)
248
commit 2034d1dbd5888c393c57f0feeb707b0411fa4480
249
Author: Brian Ewins <Brian.Ewins@gmail.com>
250
Date: Wed Jun 13 01:27:36 2007 +0100
252
[quartz] pass quartz_stroke_t not CGContextRef
254
Fix a typo where an incompatible pointer was being passed.
256
src/cairo-quartz-surface.c | 4 ++--
257
1 files changed, 2 insertions(+), 2 deletions(-)
259
commit 54bbe44b08b37041c8982634837dbc79b19e6c18
260
Author: Behdad Esfahbod <behdad@behdad.org>
261
Date: Mon Jun 11 17:51:37 2007 -0400
263
[TODO] Add link to Adrian's finer-grain fallback thread
266
1 files changed, 2 insertions(+), 0 deletions(-)
268
commit ef3c64fd13d66648f4e00affb304e8b404249f92
269
Author: Vladimir Vukicevic <vladimir@pobox.com>
270
Date: Mon Jun 11 09:27:11 2007 -0700
272
[misc] Blow away last remaining $Id$ directives in sources
274
pixman/src/fbtrap.c | 2 --
275
src/cairo-analysis-surface-private.h | 3 +--
276
test/rel-path.c | 2 --
277
3 files changed, 1 insertions(+), 6 deletions(-)
279
commit 853f23e18c28548bce4647d4e54a5cfb317ac3dc
280
Author: Behdad Esfahbod <behdad@behdad.org>
281
Date: Mon Jun 11 02:42:04 2007 -0400
283
[test] Use check_PROGRAMS instead of custom made SUPPORT_PROGS
285
It better handles $(EXEEXT) and is exactly made for this purpose.
287
test/Makefile.am | 14 ++++++--------
288
1 files changed, 6 insertions(+), 8 deletions(-)
290
commit 1d86c7fa888918c32eb13adb084de78883e17c84
291
Author: Behdad Esfahbod <behdad@behdad.org>
292
Date: Sat Jun 9 13:48:13 2007 -0400
294
[perf] Link to librt if available
296
This is needed on Solaris, but also works on Linux.
298
configure.in | 4 ++++
299
perf/Makefile.am | 3 ++-
300
2 files changed, 6 insertions(+), 1 deletions(-)
302
commit 85d045f2675cf191ea1d1af66ad4cd9e57d58e67
303
Author: Carl Worth <cworth@cworth.org>
304
Date: Fri Jun 8 16:08:44 2007 -0700
306
Update version to 1.4.9 after the 1.4.8 release.
309
1 files changed, 1 insertions(+), 1 deletions(-)
311
commit fea4f344c46cf5f85c6af3102333008768c55063
312
Author: Carl Worth <cworth@cworth.org>
313
Date: Fri Jun 8 15:49:12 2007 -0700
315
Update version to 1.4.8 (and libtool info to 13:4:11)
317
configure.in | 4 ++--
318
1 files changed, 2 insertions(+), 2 deletions(-)
320
commit 0b19ff1d3f493067fa5484151e71dfcedcd14fd1
321
Author: Carl Worth <cworth@cworth.org>
322
Date: Fri Jun 8 15:34:35 2007 -0700
324
Add include of X11/Xlib.h to cairo-xlib-xrender.h
326
This makes this header file self-sufficient. Thanks to
327
Sam Sirlin <samuel.w.sirlin@jpl.nasa.gov> for pointing
330
src/cairo-xlib-xrender.h | 1 +
331
1 files changed, 1 insertions(+), 0 deletions(-)
333
commit 8223c976d54319b58906de03fcb8fb1967105e53
334
Author: Brian Ewins <Brian.Ewins@gmail.com>
335
Date: Fri Jun 8 01:56:10 2007 +0100
337
[NEWS] add note about quartz fixes
339
We've got 11 less failures in the quartz tests this time around,
343
1 files changed, 3 insertions(+), 0 deletions(-)
345
commit 00063a65f758265f3ad5c0caa374d9c7d5e89932
346
Author: Vladimir Vukicevic <vladimir@pobox.com>
347
Date: Fri Jun 8 01:17:09 2007 +0100
349
[quartz] fix DO_IMAGE
351
The implementation of DO_IMAGE leaks memory via a referenced surface,
352
and wasn't applied for strokes and glyphs. This patch corrects those
355
src/cairo-quartz-private.h | 5 ++-
356
src/cairo-quartz-surface.c | 83 +++++++++++++++++++++++++++-----------------
357
2 files changed, 55 insertions(+), 33 deletions(-)
359
commit 39e6a0090faa4e73a658c1ca0ead3040309b84a2
360
Author: Brian Ewins <Brian.Ewins@gmail.com>
361
Date: Fri Jun 8 01:12:24 2007 +0100
363
[quartz] fall back on extended gradients
365
A temporary fix for mozilla bug 379321, use an image fallback for
366
gradients that use EXTEND_REPEAT or EXTEND_REFLECT.
368
src/cairo-quartz-surface.c | 7 +++++++
369
1 files changed, 7 insertions(+), 0 deletions(-)
371
commit 7c1afdcd597331c14f256f406a3e95743f7fdad6
372
Author: Brian Ewins <Brian.Ewins@gmail.com>
373
Date: Mon Mar 26 00:06:23 2007 +0100
375
[quartz] fixes the offsets in the font-matrix test
377
Apply the font matrix offset to text on the quartz surface, if necessary.
379
src/cairo-quartz-surface.c | 6 +++++-
380
1 files changed, 5 insertions(+), 1 deletions(-)
382
commit 55f1dbd0fbcbc587823ef8fa291a0af08441c775
383
Author: Brian Ewins <Brian.Ewins@gmail.com>
384
Date: Sun Apr 1 00:04:24 2007 +0100
386
[quartz] ensure that line widths are scaled.
388
cairo-gstate applies the ctm to the coordinates used in paths,
389
but not to the line width. In quartz this ends up drawing unscaled
390
lines. This is a minimal fix - it undoes the scaling applied to the
391
points and then draws the path scaled correctly.
393
src/cairo-quartz-surface.c | 72 ++++++++++++++++++++++++++++++++++---------
394
1 files changed, 57 insertions(+), 15 deletions(-)
396
commit 5a9de1b5c9f6cc445f9f6230937c2254ee49e7cb
397
Author: Brian Ewins <Brian.Ewins@gmail.com>
398
Date: Thu Jun 7 23:22:30 2007 +0100
400
[atsui] remove unused code
402
Remove CGAffineTransformMakeWithCairoFontScale.
404
src/cairo-atsui-font.c | 8 --------
405
1 files changed, 0 insertions(+), 8 deletions(-)
407
commit 807c5ab613e7df60be452d6683c4f9f045ef62a0
408
Author: Brian Ewins <Brian.Ewins@gmail.com>
409
Date: Thu Jun 7 23:22:29 2007 +0100
411
[atsui] clean up warnings
413
Refactor code to get rid of compiler warnings.
415
src/cairo-atsui-font.c | 11 +++++++----
416
1 files changed, 7 insertions(+), 4 deletions(-)
418
commit b210b09e2de2f048debad6e8881f0226b6b17060
419
Author: Brian Ewins <Brian.Ewins@gmail.com>
420
Date: Thu Jun 7 23:22:27 2007 +0100
422
[quartz] implement CAIRO_EXTEND_REFLECT
424
Implement extend-reflect by tiling a larger 2x2 grid of reflected
427
src/cairo-quartz-surface.c | 64 ++++++++++++++++++++-----------------------
428
1 files changed, 30 insertions(+), 34 deletions(-)
430
commit fa5dd548b0dd2dfe523501bd40cafe7916240be1
431
Author: Brian Ewins <Brian.Ewins@gmail.com>
432
Date: Tue May 29 23:11:49 2007 +0100
434
[quartz] implement CAIRO_EXTEND_NONE
436
Implement extend-none for surface patterns, by using a single
437
DrawImage where possible. There is some code duplication in this
438
patch, to make it easier to edit this patch series without conflicts.
439
A patch to remove duplicate code will be required later..
441
src/cairo-quartz-surface.c | 61 ++++++++++++++++++++++++++++++++++++++++++-
442
1 files changed, 59 insertions(+), 2 deletions(-)
444
commit 147288864c8c512f3ae17c8117d3c36dbbc6d5f8
445
Author: Brian Ewins <Brian.Ewins@gmail.com>
446
Date: Thu Jun 7 23:22:05 2007 +0100
448
[quartz] Refactor code to create a CGImageRef from a pattern
450
In order to implement CAIRO_EXTEND_NONE we will need to create
451
a CGImageRef without also creating a CGPattern. Separate the two
454
src/cairo-quartz-surface.c | 40 +++++++++++++++++++++-------------------
455
1 files changed, 21 insertions(+), 19 deletions(-)
457
commit a5ee983e1cb97aff63b0c9c3a57125b37d0e3f74
458
Author: Carl Worth <cworth@cworth.org>
459
Date: Thu Jun 7 15:03:43 2007 -0700
461
Update release notes for 1.4.8
463
NEWS | 75 ++++++++++++++++++++++++++++++++++++++++++-----------------------
464
1 files changed, 48 insertions(+), 27 deletions(-)
466
commit e19c49269d0b236de91a5a9b5230bed7d76282ed
467
Author: Carl Worth <cworth@cworth.org>
468
Date: Thu Jun 7 12:19:46 2007 -0700
470
Remove stale reference to cairo-xlib-test.h
472
src/Makefile.am | 3 +--
473
1 files changed, 1 insertions(+), 2 deletions(-)
475
commit 5ded4479d6ddbbe16c631144ef987c4c02e706a6
476
Author: Carl Worth <cworth@cworth.org>
477
Date: Thu May 31 15:35:14 2007 -0700
479
Fix return value of cairo_surface_write_to_png for unsupported formats
481
For some reason this was returning CAIRO_STATUS_NULL_POINTER.
482
Now fixed to return CAIRO_STATUS_INVALID_FORMAT.
484
src/cairo-png.c | 2 +-
485
1 files changed, 1 insertions(+), 1 deletions(-)
487
commit ec63a7839457e2d14c7b1a5b64d1a79daf044222
488
Author: Carl Worth <cworth@cworth.org>
489
Date: Thu May 31 14:28:50 2007 -0700
491
Add CAIRO_INTERNAL_FORMAT_RGB16_565 and prefer it over deprecated CAIRO_FORMAT_RGB16_565
493
Also clarify the documentation for cairo_internal_format_t
495
src/cairo-image-surface.c | 6 ++--
496
src/cairoint.h | 52 ++++++++++++++++++++++++++------------------
497
2 files changed, 34 insertions(+), 24 deletions(-)
499
commit b6ee6c531c41adb57512fe0eaf21558e5d03f04b
500
Author: Behdad Esfahbod <behdad@behdad.org>
501
Date: Thu Jun 7 12:22:20 2007 -0400
503
[NEWS] Add par about Chris 'ickle' Wilson's error-handling improvements work
505
NEWS | 14 ++++++++++++++
506
1 files changed, 14 insertions(+), 0 deletions(-)
508
commit 2399f923d504fba6b3dcbd0a185cd3d4b29b4dcf
509
Author: Chris Wilson <chris@chris-wilson.co.uk>
510
Date: Mon Jun 4 19:55:23 2007 +0100
512
[cairo-bentley-ottmann] Malloc reduction.
514
Attempt to allocate the edges during tessellate_polygon() from the stack,
515
if the polygon size is sufficiently small and amalgamate the separate
516
allocations for the list of events and their sorted index into a single
519
src/cairo-bentley-ottmann.c | 28 +++++++++++++++-------------
520
1 files changed, 15 insertions(+), 13 deletions(-)
522
commit ecf6f7f5147195276b3b479879cbd3db402df688
523
Author: Chris Wilson <chris@chris-wilson.co.uk>
524
Date: Mon Jun 4 16:35:15 2007 +0100
526
[cairo-scaled-font] Skip the mask composition onto the surface on error.
528
If we fail to composite the glyph onto the mask, skip compositing the
529
mask onto the surface.
531
src/cairo-scaled-font.c | 2 +-
532
1 files changed, 1 insertions(+), 1 deletions(-)
534
commit 2e60029392bca904f7035a8f403de0593193b6b9
535
Author: Chris Wilson <chris@chris-wilson.co.uk>
536
Date: Tue Jun 5 09:08:51 2007 +0100
538
[cairo-ft-font] Markup error paths with _cairo_error().
540
Behdad Esfahbod noted that in ff5af0f540ec4 I had introduce new error
541
paths without the appropriate _cairo_error(). So review cairo-ft-font
542
to ensure that _cairo_error() is called at the start of every error path,
543
as close to the originating error as possible.
545
src/cairo-ft-font.c | 58 ++++++++++++++++++++++++++++++++++++---------------
546
1 files changed, 41 insertions(+), 17 deletions(-)
548
commit a5e12cd9f212b12a32230263188be38c175dc0a1
549
Author: Behdad Esfahbod <behdad@behdad.org>
550
Date: Thu May 31 19:21:30 2007 -0400
552
[ROADMAP] Add link for a8mask patch
555
1 files changed, 3 insertions(+), 1 deletions(-)
557
commit ff5af0f540ec407beb3d2a105b22f041cd770ce4
558
Author: Chris Wilson <chris@chris-wilson.co.uk>
559
Date: Wed May 30 15:44:59 2007 +0100
561
[cairo-ft-font] Propagate error rather than asserting.
563
FT_Set_Char_Size can fail due to an out-of-memory condition, so
564
propagate the error status instead of asserting that it never fails.
566
src/cairo-ft-font.c | 41 ++++++++++++++++++++++++++++++-----------
567
1 files changed, 30 insertions(+), 11 deletions(-)
569
commit de4dd4263cb5183b128a8fc80576ed7ddb239319
570
Author: Chris Wilson <chris@chris-wilson.co.uk>
571
Date: Fri May 11 15:15:11 2007 +0100
573
[cairo] Propagate surface->status on cairo_t creation.
575
Set the cairo_t status to be the surface->status when the context is
576
created, and special case the NO_MEMORY status in order to avoid a
577
redundant allocation.
579
src/cairo-gstate.c | 2 +-
580
src/cairo.c | 12 +++++-------
581
2 files changed, 6 insertions(+), 8 deletions(-)
583
commit 9f4efa8a3ae6cbc194d89012286990582a6c8f5d
584
Author: Chris Wilson <chris@chris-wilson.co.uk>
585
Date: Fri May 11 09:48:47 2007 +0100
587
[cairo-ps-surface] Check status of glyph_lookup.
589
Check for failure of _cairo_scaled_glyph_lookup() before preceeding to
590
access the glyph and propagate the failure up the callstack as far as
593
src/cairo-ps-surface.c | 14 ++++++++++----
594
1 files changed, 10 insertions(+), 4 deletions(-)
596
commit 8010d46de4056e6c15b6891a06ef3d784c641b82
597
Author: Chris Wilson <chris@chris-wilson.co.uk>
598
Date: Sun May 27 11:40:47 2007 +0100
600
[cairo-gstate] Check scaled font status.
602
After using the public API to access the scaled font, which only sets
603
the status field in the font, check the scaled font status. This will
604
then correctly propagate errors during glyph loading to the context.
606
src/cairo-gstate.c | 4 ++--
607
1 files changed, 2 insertions(+), 2 deletions(-)
609
commit faf986bb25eab34eee16415f4dab6f7d5d3460d3
610
Author: Chris Wilson <chris@chris-wilson.co.uk>
611
Date: Tue May 29 12:39:16 2007 +0100
613
[cairo-gstate] Check status on existing fonts.
615
Add an initial guard in _cairo_gstate_ensure_scaled_font() and
616
_cairo_gstate_ensure_font_face() to check that there is no prior
617
error status on the objects.
619
src/cairo-gstate.c | 41 +++++++++++++++++++++++------------------
620
1 files changed, 23 insertions(+), 18 deletions(-)
622
commit ac4b20082dd6b2e2b280d3615eebf5387da87e2f
623
Author: Vladimir Vukicevic <vladimir@pobox.com>
624
Date: Tue May 29 20:50:02 2007 -0700
626
[misc] make _cairo_image_surface_nil_invalid static const
628
src/cairo-image-surface.c | 2 +-
629
1 files changed, 1 insertions(+), 1 deletions(-)
631
commit 0b34e958f18f0bcfb8bc9b054fb3bbb2343d2c32
632
Author: Vladimir Vukicevic <vladimir@pobox.com>
633
Date: Tue May 29 17:14:41 2007 -0700
635
[test] add XFAIL test surface-pattern-big-scale down
637
Add test for image downscaling with large images severely limiting
638
the destination coordinate space. See the test for more information.
640
test/Makefile.am | 2 +
641
test/surface-pattern-big-scale-down.c | 121 +++++++++++++++++++++++++++++++++
642
2 files changed, 123 insertions(+), 0 deletions(-)
644
commit 0898411d0abdfa6a02c2fb959b3a668e728fd87c
645
Author: Kouhei Sutou <kou@cozmixng.org>
646
Date: Mon May 28 17:05:40 2007 -0400
648
[doc] Minor documentation fixes
650
src/cairo-matrix.c | 2 +-
651
src/cairo-pattern.c | 2 +-
652
src/cairo-scaled-font.c | 2 +-
653
src/cairo.c | 22 +++++++++++++++-------
655
5 files changed, 19 insertions(+), 11 deletions(-)
657
commit 4da50dfa02d7c03c32ee20c15f8304eafa0844e0
658
Author: Luo jinghua <sunmoon1997@gmail.com>
659
Date: Sun May 27 17:09:49 2007 +0800
661
[cairo-xlib-surface]: flush work queue before sending glyphs to X server.
663
After introducing a work queue for deferred destruction of X resource
664
my firefox crashes over and over again because XRenderFreeGlyphs is trying
665
to free a non-exist glyph (already freed). The problematic call sequence is
666
something like below:
667
XRenderAddGlyphs (20990204, 20069)
668
XRenderAddGlyphs (20990204, 20069)
669
XRenderFreeGlyphs (20990204, 20069)
670
XRenderFreeGlyphs (20990204, 20069)
671
You can see the two add/free glyphs is interlaced. And obviously, we'll crash
672
at the last one. To fix this bug, we must be ensure here's no pending work
673
to free the glyph that we want to sent.
675
src/cairo-xlib-surface.c | 1 +
676
1 files changed, 1 insertions(+), 0 deletions(-)
678
commit 69bf823db1b256f19487d2f002e7b0811859e58e
679
Author: Brian Ewins <Brian.Ewins@gmail.com>
680
Date: Fri May 25 01:35:37 2007 +0100
682
[atsui] use ATSGlyphGetScreenMetrics to measure glyphs.
684
I don't know how I managed to get glyph measurement so badly wrong
685
before, but tracing paths was not necessary, and 6x slower. The fix
686
switches to using ATSGlyphGetScreenMetrics for all metrics, and remove
687
the old measuring code.
689
src/cairo-atsui-font.c | 88 +++--------------------------------------------
690
1 files changed, 6 insertions(+), 82 deletions(-)
692
commit 5b2b008048d2bcbb0b558a6c02aee1093311db39
693
Author: Chris Wilson <chris@chris-wilson.co.uk>
694
Date: Fri May 11 10:14:57 2007 +0100
696
[cairo-scaled-font-subsets] Shortcut empty subset.
698
If the font_subset if empty, avoid allocating zero bytes and iterating
699
over the empty hash table.
701
src/cairo-scaled-font-subsets.c | 4 ++++
702
1 files changed, 4 insertions(+), 0 deletions(-)
704
commit c175cf7b833b03c38c8ddea183333ce84c6fdfec
705
Author: Chris Wilson <chris@chris-wilson.co.uk>
706
Date: Thu May 17 17:04:14 2007 +0100
708
[cairo-ft-font] Remove erroneous cached font faces.
710
Only return a font face from the cache if it is not in an error condition.
711
Otherwise unlink the bad font face from the cache and construct a new one.
713
src/cairo-ft-font.c | 15 +++++++++++----
714
1 files changed, 11 insertions(+), 4 deletions(-)
716
commit f382c3e110f8078e83cbb9d73cfbb43b1506a11b
717
Author: Chris Wilson <chris@chris-wilson.co.uk>
718
Date: Fri May 11 15:31:33 2007 +0100
720
[cairo-pattern] Fully initialise the error pattern.
722
_cairo_pattern_fini depends on the pattern being correctly initialised,
723
for example when calling _cairo_user_data_array_fini(), so we need to
724
initialize the whole pattern and not just set the type to SOLID when
725
creating a pattern for a surface in error.
727
src/cairo-pattern.c | 2 +-
728
1 files changed, 1 insertions(+), 1 deletions(-)
730
commit fcdfda83655faf0eecbb2b5af09a05340fe422e6
731
Author: Boris Zbarsky <bzbarsky@MIT.EDU>
732
Date: Mon May 14 23:46:14 2007 -0500
734
[quartz] implementing release_source_image (#11059)
736
The image surface that _cairo_quartz_surface_acquire_source_image creates never
737
seems to be released, probably because there is no release_source_image callback
740
The attached patch fixes that problem, at least insofar as the image surface
741
itself is no longer leaking. I'm not sure whether any other cleanup needs to
746
src/cairo-quartz-surface.c | 11 ++++++++++-
747
1 files changed, 10 insertions(+), 1 deletions(-)
749
commit 2c8598aafb4a8779ce94940ce91033a8c5a62ea4
750
Author: Carl Worth <cworth@cworth.org>
751
Date: Fri May 18 13:23:04 2007 -0700
755
src/cairo-pattern.c | 2 +-
756
1 files changed, 1 insertions(+), 1 deletions(-)
758
commit 3cb67435f805a8ea39f38194379f216ea4a69ed6
759
Author: Carl Worth <cworth@cworth.org>
760
Date: Fri May 18 13:22:36 2007 -0700
762
Document behavior of color stops added with identical offsets.
764
src/cairo-pattern.c | 13 +++++++++++++
765
1 files changed, 13 insertions(+), 0 deletions(-)
767
commit 1cf4ed989473e2468ea2d64bb7759084c9f6a1e4
768
Author: Carl Worth <cworth@cworth.org>
769
Date: Fri May 18 13:16:23 2007 -0700
771
ROADMAP: Add bugs for 565 and 655 Visuals to the list
774
1 files changed, 5 insertions(+), 3 deletions(-)
776
commit 7260ee23ecb08e72a938a194e70dfb5e7a48c599
777
Author: Behdad Esfahbod <behdad@behdad.org>
778
Date: Fri May 18 11:55:37 2007 -0400
780
[Type1] #include <ctype.h> (#10989)
782
src/cairo-type1-subset.c | 2 ++
783
1 files changed, 2 insertions(+), 0 deletions(-)
785
commit 6a42ddf0f9e9e4b8dc5fa6a98ef4448f1c149789
786
Author: Adrian Johnson <ajohnson@redneon.com>
787
Date: Thu May 17 12:45:22 2007 +0930
789
TrueType Subsetting: Remove post table
791
The post table is not used now that TrueType fonts are embedded
794
src/cairo-truetype-subset.c | 34 +---------------------------------
795
1 files changed, 1 insertions(+), 33 deletions(-)
797
commit 67e752f75fdc561aca419f798a1650feb22e59a4
798
Author: Adrian Johnson <ajohnson@redneon.com>
799
Date: Thu May 17 11:48:25 2007 +0930
801
CFF Subsetting: Filter out Unique ID from subset
803
The subsetted font is not the same as the original font so it should not
804
have the same XUID and UniqueID.
806
src/cairo-cff-subset.c | 7 +++++++
807
1 files changed, 7 insertions(+), 0 deletions(-)
809
commit 99a6983017e1cd27f8a598487f8a72cfa6d411f1
810
Author: Adrian Johnson <ajohnson@redneon.com>
811
Date: Thu May 17 10:17:09 2007 +0930
813
Ensure surface backend finish() is never called more than once.
815
Previously if the backend finish() function returned an error status,
816
surface->finished was not set true. This would result in the backend
817
finish() function being called twice which in the case of the PostScript
818
backend caused a seg fault.
820
src/cairo-surface.c | 4 +---
821
1 files changed, 1 insertions(+), 3 deletions(-)
823
commit c5ae0f1232e8cef860bc1fc0b449ddf9d9063d22
824
Author: Chris Wilson <chris@chris-wilson.co.uk>
825
Date: Fri May 11 16:11:02 2007 +0100
827
[cairo-truetype-subset] Avoid a potential 0 byte allocation.
829
During _cairo_truetype_subset_init skip copying the string_offsets if
832
src/cairo-truetype-subset.c | 21 +++++++++++++--------
833
1 files changed, 13 insertions(+), 8 deletions(-)
835
commit e37bee3f52282a042251f2dfc8e051943fd8f1d7
836
Author: Chris Wilson <chris@chris-wilson.co.uk>
837
Date: Wed May 16 14:47:33 2007 +0100
839
[cairo-pdf-surface] emit_pattern_stops() array overrun.
841
_cairo_pdf_surface_emit_pattern_stops() tried to set the last element
842
to have an offset of exactly 1.0, but missed and set the next element
843
after the end of the array.
845
src/cairo-pdf-surface.c | 2 +-
846
1 files changed, 1 insertions(+), 1 deletions(-)
848
commit 27de1869f5a837b79812cd4b04e17621ec0f848c
849
Author: Chris Wilson <chris@chris-wilson.co.uk>
850
Date: Wed May 16 13:10:58 2007 +0100
852
[cairo-pdf-surface] Free allstops on error.
854
Ensure the locally allocated resources are freed on the error paths.
856
src/cairo-pdf-surface.c | 18 +++++++++---------
857
1 files changed, 9 insertions(+), 9 deletions(-)
859
commit 79e6c0207cb65b6bc1f38537f42632d623a1bc9a
860
Author: Chris Wilson <chris@chris-wilson.co.uk>
861
Date: Sat May 12 18:27:58 2007 +0100
863
[cairo-pattern] Check for the nil surface.
865
cairo_surface_create_similar() does not return NULL as was being checked
866
for, but the nil surface on error. Also ensure that the returned surface
867
is destroyed if we encounter an error whilst compositing.
869
src/cairo-pattern.c | 26 ++++++++++++++++++++++----
870
1 files changed, 22 insertions(+), 4 deletions(-)
872
commit 32c0ef9f145cec8b997c011b13208362eaf03004
873
Author: Chris Wilson <chris@chris-wilson.co.uk>
874
Date: Sat May 12 16:20:00 2007 +0100
876
[cairo-gstate] Remove a redundant conditional.
878
Simplify _cairo_gstate_text_to_glyphs() with a tail call.
880
src/cairo-gstate.c | 9 ++-------
881
1 files changed, 2 insertions(+), 7 deletions(-)
883
commit 37d8c18b3fc489d6336131bae6ec219cafc35718
884
Author: Chris Wilson <chris@chris-wilson.co.uk>
885
Date: Sat May 12 15:42:59 2007 +0100
887
[cairo-scaled-font-subsets] Destroy the glyph if we fail to cache it.
889
If we fail to insert the glyph into the sub_font glyph cache then we
890
must destroy it before propagating the error.
892
src/cairo-scaled-font-subsets.c | 4 +++-
893
1 files changed, 3 insertions(+), 1 deletions(-)
895
commit 76e758df5b99fd4dee64481b9039b0d44dd01587
896
Author: Chris Wilson <chris@chris-wilson.co.uk>
897
Date: Sat May 12 15:40:39 2007 +0100
899
[cairo-truetype-subset] Destroy the arrays on error.
901
Growing the arrays may successfully allocate the indirect pointer, but
902
fail whilst allocating the actual array - so always call
903
_cairo_array_fini after _cairo_array_grow_by().
905
src/cairo-truetype-subset.c | 22 +++++++++++-----------
906
1 files changed, 11 insertions(+), 11 deletions(-)
908
commit b63b32958e690409448ddc14e19b1856b9ef555a
909
Author: Chris Wilson <chris@chris-wilson.co.uk>
910
Date: Sat May 12 15:32:34 2007 +0100
912
[cairo-scaled-font-subsets] Destroy the parent and subfont on error.
914
If we fail to create the sub font destroy the local reference to the
915
parent font and if we fail to insert the sub font into the hash table,
916
destroy the newly create sub font.
918
src/cairo-scaled-font-subsets.c | 16 ++++++++++++----
919
1 files changed, 12 insertions(+), 4 deletions(-)
921
commit fcd1076bcffa20b7770a1b447a46232760972e2f
922
Author: Chris Wilson <chris@chris-wilson.co.uk>
923
Date: Sat May 12 14:36:11 2007 +0100
925
[cairo-ft-font] Destroy the path on error.
927
During _decompose_glyph_outline() destroy the fixed path if we
930
src/cairo-ft-font.c | 22 ++++++++++++----------
931
1 files changed, 12 insertions(+), 10 deletions(-)
933
commit abb19e61cf076c62c7626094c70de0530bd9fd00
934
Author: Chris Wilson <chris@chris-wilson.co.uk>
935
Date: Sat May 12 14:32:52 2007 +0100
937
[cairo-ft-font] Destroy the unscaled reference on error.
939
Release the reference to the unscaled font if we encounter an error
940
whilst initialising the cairo_ft_scaled_font_t.
942
src/cairo-ft-font.c | 1 +
943
1 files changed, 1 insertions(+), 0 deletions(-)
945
commit e4055f02a1f5a3d7942c7c2bb4f460ce0a8b5481
946
Author: Chris Wilson <chris@chris-wilson.co.uk>
947
Date: Sat May 12 14:29:28 2007 +0100
949
[cairo-ft-font] Race between unscaled removal from hash table and creation
951
Small window of opportunity for the unscaled font to be destroyed and
952
removed from the hash table before
953
_cairo_ft_unscaled_font_create_for_pattern() takes a reference on behalf
954
of its cairo. Close the window by taking the reference with the font
957
src/cairo-ft-font.c | 2 +-
958
1 files changed, 1 insertions(+), 1 deletions(-)
960
commit f239308ef1014174d554ccaeab1fe7c2d84e26dc
961
Author: Chris Wilson <chris@chris-wilson.co.uk>
962
Date: Sat May 12 13:27:09 2007 +0100
964
[cairo-deflate-stream] Free the stream on error.
966
Before returning the nil output stream, free the locally allocated
967
stream when encountering an error during _cairo_deflate_stream_Create().
969
src/cairo-deflate-stream.c | 4 +++-
970
1 files changed, 3 insertions(+), 1 deletions(-)
972
commit 35a2ed03352a1abc42e441ce5f52f2704de9be85
973
Author: Chris Wilson <chris@chris-wilson.co.uk>
974
Date: Sat May 12 12:36:47 2007 +0100
976
[cairo-ft-font] Destroy surface if glyph transformation fails.
978
As we allocated the surface we need to destroy it if we encounter an
981
src/cairo-ft-font.c | 5 ++++-
982
1 files changed, 4 insertions(+), 1 deletions(-)
984
commit 6a43c027238d2302f9e01ee7a780370d330def6c
985
Author: Chris Wilson <chris@chris-wilson.co.uk>
986
Date: Sat May 12 09:43:30 2007 +0100
988
[cairo-xlib-screen] Increase number of GC depths.
990
Add support for depths 12 and 30, and a separate unknown.
992
src/cairo-xlib-private.h | 2 +-
993
src/cairo-xlib-screen.c | 14 ++++++++------
994
2 files changed, 9 insertions(+), 7 deletions(-)
996
commit 70611846ded98ffa0f085f5a704979384b37e84c
997
Author: Chris Wilson <chris@chris-wilson.co.uk>
998
Date: Sat May 12 09:40:13 2007 +0100
1000
[cairo-xlib-surface] Always nullify GC after pushing to screen.
1002
The status return from _cairo_xlib_screen_put_gc() indicates the failure
1003
to queue a job to free an old GC - the current GC is always transferred
1004
away from the caller, so always nullify it in the surface.
1006
src/cairo-xlib-surface.c | 11 +++++------
1007
1 files changed, 5 insertions(+), 6 deletions(-)
1009
commit 58c35e6d7b2e153dc9cd6ff89fa91497c507afaf
1010
Author: Chris Wilson <chris@chris-wilson.co.uk>
1011
Date: Sat May 12 00:10:26 2007 +0100
1013
[cairo-paginated-surface] Check surface status during finish.
1015
Propagate children status during finish.
1017
src/cairo-paginated-surface.c | 11 +++++++++--
1018
1 files changed, 9 insertions(+), 2 deletions(-)
1020
commit 9ffd8154e2ec2ccbeeefd3e4a34b2aa16844c1ce
1021
Author: Chris Wilson <chris@chris-wilson.co.uk>
1022
Date: Fri May 11 23:43:53 2007 +0100
1024
[cairo-scaled-font-subsets] Correctly destroy the hash table.
1026
After an allocation failure in
1027
_cairo_scaled_font_subsets_create_internal() call
1028
_cairo_hash_table_destroy() instead of a mere free().
1030
src/cairo-scaled-font-subsets.c | 2 +-
1031
1 files changed, 1 insertions(+), 1 deletions(-)
1033
commit bcfc5f0bdbd4c1eedc22bde5eed464a8bd18211e
1034
Author: Chris Wilson <chris@chris-wilson.co.uk>
1035
Date: Fri May 11 20:57:12 2007 +0100
1037
[pixman] Propagate allocation failure.
1039
pixman_op() failed to propagate the failure from
1040
pixman_region_appendNonO() and the generic op.
1042
pixman/src/pixregion.c | 24 +++++++++++++++++-------
1043
1 files changed, 17 insertions(+), 7 deletions(-)
1045
commit 9e99f0611c834f80903e3554663f71682ef59ef3
1046
Author: Chris Wilson <chris@chris-wilson.co.uk>
1047
Date: Fri May 11 20:38:24 2007 +0100
1049
[cairo-traps] Initialize traps to use embedded buffer.
1051
Set the traps to use the embedded buffer during initialization which will
1052
save one redundant _cairo_traps_grow()
1054
src/cairo-traps.c | 26 ++++++--------------------
1055
1 files changed, 6 insertions(+), 20 deletions(-)
1057
commit 35eb65b7772459266e2f954fb370bfdca12b5b64
1058
Author: Chris Wilson <chris@chris-wilson.co.uk>
1059
Date: Fri May 11 18:25:13 2007 +0100
1061
[cairo-path] Check for errors during the count.
1063
Return the nil object if we encounter any error whilst trying to
1066
Also special case the NO_MEMORY error object to return the nil object.
1068
src/cairo-path.c | 10 +++++++++-
1069
1 files changed, 9 insertions(+), 1 deletions(-)
1071
commit a60afb0e78ab42498158ef852fcea35c8f71e8ec
1072
Author: Chris Wilson <chris@chris-wilson.co.uk>
1073
Date: Fri May 11 16:01:26 2007 +0100
1075
[cairo-scaled-font] Return status of _cairo_scaled_font_glyph_path()
1077
The status return of _cairo_path_fixed_interpret() was being ignored,
1080
src/cairo-scaled-font.c | 3 +++
1081
1 files changed, 3 insertions(+), 0 deletions(-)
1083
commit d46f6872a5fe601862e2f63455c97a15c4667cf2
1084
Author: Behdad Esfahbod <behdad@behdad.org>
1085
Date: Sun May 13 21:52:52 2007 -0400
1087
[docs] Update to latest source changes and kill warnings
1089
doc/public/Headers.mk | 1 +
1090
doc/public/Makefile.am | 2 --
1091
doc/public/cairo-docs.xml | 6 +++---
1092
3 files changed, 4 insertions(+), 5 deletions(-)
1094
commit 40558cb15e5f7276a29847b00c9dae08b9d9380e
1095
Author: Chris Wilson <chris@chris-wilson.co.uk>
1096
Date: Sat May 12 10:10:49 2007 +0100
1098
[cairo-xlib-screen] Clear the gc_needs_clip_reset after use.
1100
After consuming the GC we need to unset the clip reset flag, so that
1101
if we try and get a new GC without first putting a fresh one we do not
1102
try to call XSetClipMask on a NULL GC.
1104
(Fixes http://bugs.freedesktop.org/show_bug.cgi?id=10921)
1106
src/cairo-xlib-screen.c | 4 +++-
1107
1 files changed, 3 insertions(+), 1 deletions(-)
1109
commit abba3f2375c58401b7722837b3be37c3de9beca4
1110
Author: Chris Wilson <chris@chris-wilson.co.uk>
1111
Date: Thu May 10 23:05:46 2007 +0100
1113
[valgrind-suppressions] Update to cover XrmGetStringDatabase
1115
By dropping the top frame from suppression, the XrmGetFileDatabase
1116
suppressions will also match XrmGetStringDatabase leaks which are
1119
test/.valgrind-suppressions | 42 ++++++++++++++----------------------------
1120
1 files changed, 14 insertions(+), 28 deletions(-)
1122
commit c4abc3a0e3ebb27bc0aa178651e496c514eb1fae
1123
Author: Chris Wilson <chris@chris-wilson.co.uk>
1124
Date: Thu May 10 21:28:48 2007 +0100
1126
[cairo-truetype-subset] Set CAIRO_STATUS_NO_MEMORY on malloc failure.
1128
_cairo_truetype_font_create() failed to update the status before
1129
returning after detecting an allocation failure, leaving its callers
1130
none the wishing - and eventually triggering a segmentation fault when
1131
the font was used in anger.
1133
src/cairo-truetype-subset.c | 16 ++++++++++++----
1134
1 files changed, 12 insertions(+), 4 deletions(-)
1136
commit ebababc0cf83f828d48200b8e316f57912fb0128
1137
Author: Chris Wilson <chris@chris-wilson.co.uk>
1138
Date: Thu May 10 19:24:54 2007 +0100
1140
[cairo-pattern] Return the nil cairo_pattern_t for CAIRO_STATUS_NO_MEMORY.
1142
If we asked to create a pattern after encountering an allocation failure,
1143
we can avoid another allocation by returning the nil pattern object.
1145
src/cairo-pattern.c | 3 +++
1146
1 files changed, 3 insertions(+), 0 deletions(-)
1148
commit e8e5f93ffec8321c029c0b95abcb3cd8cadcff31
1149
Author: Chris Wilson <chris@chris-wilson.co.uk>
1150
Date: Thu May 10 20:50:58 2007 +0100
1152
[cairo-meta-surface] Add a surface->status guard to meta_surface_replay()
1154
Before attempting to access the cairo_meta_surface_t specific members,
1155
we need to ensure that _cairo_meta_surface_replay() has received a true
1156
meta surface rather than an error surface (e.g. _cairo_surface_nil).
1158
src/cairo-meta-surface.c | 3 +++
1159
1 files changed, 3 insertions(+), 0 deletions(-)
1161
commit 195112697fac77e70ef36e00a2d557eda1e0e145
1162
Author: elaine <elaine.xiong@sun.com>
1163
Date: Thu May 10 13:58:44 2007 -0400
1165
[xlib] The buggy_repeat path should be removed for Xsun now
1167
Sun never released a version of Solaris with Xorg with the buggy repeat
1168
problem. This patch was only needed for development versions of Solaris
1169
Nevada (roughly builds 25-30). The latest S10U release and Nevada releases
1170
have a fixed Xorg. So no users should ever encounter this bug.
1172
We need to remove this test because Xsun has the same VendorString and a lower
1173
VendorRelease number so it falsely triggers buggy_repeat to be turned on.
1174
They just added Xrender support recently to Xsun, so this wasn't an issue
1177
src/cairo-xlib-surface.c | 3 ---
1178
1 files changed, 0 insertions(+), 3 deletions(-)
1180
commit ab6a767cf476c98b466c62dd410d0f61f8dd6bbb
1181
Author: Chris Wilson <chris@chris-wilson.co.uk>
1182
Date: Thu May 10 17:17:30 2007 +0100
1184
[cairo-scaled-font] Check for allocation failure.
1186
cairo_scaled_font_create() returns a nil object on failure whereas a few
1187
callers were checking for NULL.
1189
Secondly review the public entry points for cairo_scaled_font_*() to
1190
ensure that all check that they will not attempt to overwrite the
1191
read-only nil object.
1193
src/cairo-gstate.c | 7 +++----
1194
src/cairo-scaled-font-subsets.c | 2 ++
1195
src/cairo-scaled-font.c | 10 ++++++++--
1196
src/cairo-type1-fallback.c | 2 +-
1197
4 files changed, 14 insertions(+), 7 deletions(-)
1199
commit aec92188f1cf4ca34e890b0a4266425532f669d4
1200
Author: Chris Wilson <chris@chris-wilson.co.uk>
1201
Date: Thu May 10 09:29:24 2007 +0100
1203
[cairo-clip] Correctly report allocation failure
1205
Distinguish between the unrepresentable clip and the failure to allocate
1208
src/cairo-clip.c | 7 +++++--
1209
1 files changed, 5 insertions(+), 2 deletions(-)
1211
commit 1a719d1189243a76120b98371f84e074c8cd611e
1212
Author: Chris Wilson <chris@chris-wilson.co.uk>
1213
Date: Thu May 10 09:28:20 2007 +0100
1215
[cairo] Use _cairo_clip_nil for CAIRO_STATUS_NO_MEMORY
1217
When creating a error clip list for CAIRO_STATUS_NO_MEMORY, simply
1218
reuse the nil object rather than allocate a fresh list.
1221
1 files changed, 3 insertions(+), 0 deletions(-)
1223
commit 3fbc4bb5ae27809f417ec2627fa515375e63a0e7
1224
Author: Chris Wilson <chris@chris-wilson.co.uk>
1225
Date: Wed May 9 21:41:17 2007 +0100
1227
[cairo-clip] Add missing error status for _cairo__clip_intersect_region()
1229
An out-of-memory error path missed setting CAIRO_STATUS_NO_MEMORY.
1231
src/cairo-clip.c | 2 ++
1232
1 files changed, 2 insertions(+), 0 deletions(-)
1234
commit b5d25068796d572b4b0c6e33eecc5f0736fb8f78
1235
Author: Chris Wilson <chris@chris-wilson.co.uk>
1236
Date: Wed May 9 16:27:42 2007 +0100
1238
[cairo] cairo_pop_group() returns a NULL pattern
1240
cairo_pop_group() checks for a NULL return from
1241
cairo_pattern_create_for_surface() instead of the nil cairo_pattern_t,
1242
and then returns a NULL pattern instead of the nil object.
1244
src/cairo.c | 6 +++---
1245
1 files changed, 3 insertions(+), 3 deletions(-)
1247
commit 6f09e93ad7ac4c941ba6c72b21ea4536d248f8d5
1248
Author: Chris Wilson <chris@chris-wilson.co.uk>
1249
Date: Wed May 9 13:39:08 2007 +0100
1251
[ciro-surface-fallback] Propagate status for _clip_and_composite_trapezoids
1253
The result of _clip_and_composite_trapezoids() was ignored by 2/3 of
1254
its callers - simply propagate the status.
1256
src/cairo-surface-fallback.c | 28 ++++++++++++++--------------
1257
1 files changed, 14 insertions(+), 14 deletions(-)
1259
commit ae5d4a1c17a46c0a6ea2e4c825ecce7a5cbbe28b
1260
Author: Chris Wilson <chris@chris-wilson.co.uk>
1261
Date: Wed May 9 13:19:54 2007 +0100
1263
[cairo] Return after detecting the invalid font-options.
1265
Do not continue to copy the contents of the nil cairo_font_options_t,
1266
but set the error on the context and return.
1268
src/cairo.c | 4 +++-
1269
1 files changed, 3 insertions(+), 1 deletions(-)
1271
commit dfd4d41ac99dbe5d8ea16aa4ce4809b66308c803
1272
Author: Chris Wilson <chris@chris-wilson.co.uk>
1273
Date: Wed May 9 12:30:40 2007 +0100
1275
[cairo-xlib-surface] Free the allocation if we fail to queue the work.
1277
Avoid the leak of the allocated argument if we fail to queue the work to
1280
src/cairo-xlib-surface.c | 5 ++++-
1281
1 files changed, 4 insertions(+), 1 deletions(-)
1283
commit 8ddfc1b2e4aeefb704e05e64661b5c9985788e99
1284
Author: Chris Wilson <chris@chris-wilson.co.uk>
1285
Date: Tue May 8 16:13:08 2007 +0100
1287
[cairo-pattern] Return status from _cairo_pattern_init_copy()
1289
During the copy, allocation of the gradient may fail and so the callers
1290
need to check for a pattern that returned in an error state. No callers
1291
did so and in order to force all callers to check the error status,
1292
the status return was added to _cairo_pattern_init_copy(). The early
1293
error checking may appear redundant for an object with an embedded
1294
structure, however it does fix an error where an uninitialised pattern
1297
==1922== Process terminating with default action of signal 11 (SIGSEGV)
1298
==1922== Access not within mapped region at address 0x55555555
1299
==1922== at 0x402CF6F: _cairo_array_index (cairo-array.c:208)
1300
==1922== by 0x402D4F3: _cairo_user_data_array_fini (cairo-array.c:370)
1301
==1922== by 0x4046464: _cairo_pattern_fini (cairo-pattern.c:188)
1302
==1922== by 0x404992A: _cairo_meta_surface_paint (cairo-meta-surface.c:266)
1303
==1922== by 0x403FCE0: _cairo_surface_paint (cairo-surface.c:1331)
1304
==1922== by 0x405CB5E: _test_meta_surface_paint (test-meta-surface.c:195)
1305
==1922== by 0x403FCE0: _cairo_surface_paint (cairo-surface.c:1331)
1306
==1922== by 0x4032A60: _cairo_gstate_paint (cairo-gstate.c:822)
1307
==1922== by 0x402B2D1: cairo_paint (cairo.c:1879)
1308
==1922== by 0x804A4F7: draw (radial-gradient.c:73)
1309
==1922== by 0x804AFA4: cairo_test_expecting (cairo-test.c:326)
1310
==1922== by 0x804A57C: main (radial-gradient.c:109)
1311
==1922== Injected fault at:
1312
==1922== at 0x4020EA5: malloc (vg_replace_malloc.c:207)
1313
==1922== by 0x404475C: _cairo_pattern_init_copy (cairo-pattern.c:136)
1314
==1922== by 0x403F779: _cairo_surface_copy_pattern_for_destination (cairo-surface.c:2153)
1315
==1922== by 0x403FCC1: _cairo_surface_paint (cairo-surface.c:1328)
1316
==1922== by 0x405CB5E: _test_meta_surface_paint (test-meta-surface.c:195)
1317
==1922== by 0x403FCE0: _cairo_surface_paint (cairo-surface.c:1331)
1318
==1922== by 0x4032A60: _cairo_gstate_paint (cairo-gstate.c:822)
1319
==1922== by 0x402B2D1: cairo_paint (cairo.c:1879)
1320
==1922== by 0x804A4F7: draw (radial-gradient.c:73)
1321
==1922== by 0x804AFA4: cairo_test_expecting (cairo-test.c:326)
1322
==1922== by 0x804A57C: main (radial-gradient.c:109)
1324
src/cairo-glitz-surface.c | 12 +++++++--
1325
src/cairo-gstate.c | 55 ++++++++++++++++++++++++++++++-------------
1326
src/cairo-meta-surface.c | 6 ++++-
1327
src/cairo-pattern.c | 30 +++++++++++++++++------
1328
src/cairo-quartz-surface.c | 6 ++++-
1329
src/cairo-surface.c | 47 ++++++++++++++++++++++++++-----------
1330
src/cairoint.h | 2 +-
1331
7 files changed, 113 insertions(+), 45 deletions(-)
1333
commit dbdaf0690e1121d0f810dfb035e7a9f0dae17248
1334
Author: Chris Wilson <chris@chris-wilson.co.uk>
1335
Date: Wed May 9 09:22:31 2007 +0100
1337
[cairo-scaled-font] Check _cairo_scaled_glyph_loop() status
1339
In _cairo_scaled_font_glyph_path() we forgot to check the status return
1340
of _cairo_scaled_glyph_loop() - propagate any failures.
1342
src/cairo-scaled-font.c | 2 ++
1343
1 files changed, 2 insertions(+), 0 deletions(-)
1345
commit b744c2705184c24845423d661258b39bbb17749b
1346
Author: James Cloos <cloos@jhcloos.com>
1347
Date: Wed May 9 02:50:59 2007 -0400
1349
[cairo-directfb-surface] Fix typo from commit a8c8e17d
1350
Fix typo in name of _cairo_directfb_surface_is_similar().
1352
src/cairo-directfb-surface.c | 2 +-
1353
1 files changed, 1 insertions(+), 1 deletions(-)
1355
commit cbc9218cd3f664682bcb5095c602adf9615535d0
1356
Author: Chris Wilson <chris@chris-wilson.co.uk>
1357
Date: Wed May 9 09:03:04 2007 +0100
1359
[cairo-xcb-surface] Fix compilation
1361
As spotted by James Cloos <cloos@jbcloos.com>, I broke the compilation...
1362
This is a minimal fix with no claims of completeness.
1364
src/cairo-xcb-surface.c | 6 +++---
1365
1 files changed, 3 insertions(+), 3 deletions(-)
1367
commit 069514a10ff2ca9ac86cc3dc1703aa19caa538e2
1368
Author: Chris Wilson <chris@chris-wilson.co.uk>
1369
Date: Tue May 8 18:19:56 2007 +0100
1371
[test/in-fill-empty-trapezoid] Cleanup after test failure.
1373
Ensure that the failure path also calls cairo_test_fini().
1375
test/in-fill-empty-trapezoid.c | 8 +++++---
1376
1 files changed, 5 insertions(+), 3 deletions(-)
1378
commit 43645eb486da1af91b3264af6c84ac18a1eddcaa
1379
Author: Chris Wilson <chris@chris-wilson.co.uk>
1380
Date: Tue May 8 20:25:21 2007 +0100
1382
[test/fallback-resolution] Cleanup after test failure
1384
Be valgrind clean even for test failures.
1386
test/fallback-resolution.c | 6 ++++--
1387
1 files changed, 4 insertions(+), 2 deletions(-)
1389
commit 21c6643b09c771454f913b444b6b040aaaacd3a8
1390
Author: Chris Wilson <chris@chris-wilson.co.uk>
1391
Date: Tue May 8 21:28:48 2007 +0100
1393
[cairo-surface] Check for errors when generating the scaled font.
1395
cairo_surface_show_glyphs() attempts to generate a device specific
1396
scaled font and so needs to check for failure before attempting to use
1399
src/cairo-surface.c | 5 +++++
1400
1 files changed, 5 insertions(+), 0 deletions(-)
1402
commit ede76a97ea5b68c3bd042dc6a93ecb1aa7c9761c
1403
Author: Chris Wilson <chris@chris-wilson.co.uk>
1404
Date: Tue May 8 17:26:22 2007 +0100
1406
[cairo-font-options] Check for the nil-object.
1408
The design is for the user to create a cairo_font_options_t object with
1409
cairo_font_options_create() and then is free to use it with any Cairo
1410
operation. This requires us to check when we may be about to overwrite
1411
the read-only nil object.
1413
src/cairo-font-face.c | 5 +++++
1414
src/cairo-font-options.c | 7 ++++++-
1415
src/cairo-gstate.c | 4 +---
1416
src/cairo-scaled-font.c | 10 ++++++++++
1417
src/cairo-surface.c | 3 +++
1418
src/cairo.c | 12 ++++++++----
1419
src/cairoint.h | 3 ++-
1420
7 files changed, 35 insertions(+), 9 deletions(-)
1422
commit c441938569ed78123a57662a70ef5a74dcf73851
1423
Author: Chris Wilson <chris@chris-wilson.co.uk>
1424
Date: Tue May 8 21:40:26 2007 +0100
1426
[cairo-pattern] Cleanly handle an invalid pattern in cairo_pattern_transform()
1428
Simply return without writing to potentially read-only members of an
1429
invalid pattern rather than assert. This is cleaner than tracking down
1430
all the error paths that may call into cairo_pattern_transform()...
1432
src/cairo-pattern.c | 3 ++-
1433
1 files changed, 2 insertions(+), 1 deletions(-)
1435
commit 409f9734297be250de5e462e2d52e653bd893125
1436
Author: Behdad Esfahbod <behdad@behdad.org>
1437
Date: Tue May 8 14:18:42 2007 -0400
1439
[test] If a test target fails, end the test
1440
otherwise cairo is left in a dirty state and further tests are
1443
test/cairo-test.c | 6 ++++--
1444
1 files changed, 4 insertions(+), 2 deletions(-)
1446
commit aad66d05fd0f310564e80c9ff59526028871751c
1447
Author: Chris Wilson <chris@chris-wilson.co.uk>
1448
Date: Tue May 8 16:40:24 2007 +0100
1450
[test/nil-surface] Destroy the auxiliary context on failure paths.
1452
Just to be tidy, and aim to be valgrind-clean.
1454
test/nil-surface.c | 5 +++++
1455
1 files changed, 5 insertions(+), 0 deletions(-)
1457
commit e3acacc096d7db947e7c8f2167a6d97f04c403b1
1458
Author: Chris Wilson <chris@chris-wilson.co.uk>
1459
Date: Tue May 8 16:35:14 2007 +0100
1461
[cairo-boilerplate-ps] Destroy the target on creation failure
1463
Remember to destroy the ptc->target as well as the ordinary surface, if
1466
boilerplate/cairo-boilerplate-ps.c | 2 ++
1467
1 files changed, 2 insertions(+), 0 deletions(-)
1469
commit efd212bfa25cb44b9499b89f93aa7167a9544ccb
1470
Author: Chris Wilson <chris@chris-wilson.co.uk>
1471
Date: Tue May 8 16:23:07 2007 +0100
1473
[cairo-boilerplate] Protect against the nil cairo_scaled_font_t
1475
Beware the NULL pointer deference when trying to adjust the max glyph
1478
boilerplate/cairo-boilerplate.c | 3 +++
1479
1 files changed, 3 insertions(+), 0 deletions(-)
1481
commit b85920684f8feaba8d2d5b0262c60b4960c223b8
1482
Author: Chris Wilson <chris@chris-wilson.co.uk>
1483
Date: Tue May 8 14:01:00 2007 +0100
1485
[cairo-test] Destroy the check image on failure
1487
If drawing the checker pattern should fail, we need to free the
1488
resources allocated locally.
1490
test/cairo-test.c | 4 +++-
1491
1 files changed, 3 insertions(+), 1 deletions(-)
1493
commit 0bf3ffacda5dbfc4fd8a5a0d5fd37d9630f5bcdb
1494
Author: Chris Wilson <chris@chris-wilson.co.uk>
1495
Date: Tue May 8 13:55:04 2007 +0100
1497
[test-fallback-surface] Destroy the backing image on malloc failure.
1499
Ensure we free all local resource should we encounter an allocation
1500
failure during _cairo_test_fallback_surface_create().
1502
src/test-fallback-surface.c | 1 +
1503
1 files changed, 1 insertions(+), 0 deletions(-)
1505
commit eac18d44c7559fe393abf6706b52e5a8edbfd5e9
1506
Author: Chris Wilson <chris@chris-wilson.co.uk>
1507
Date: Tue May 8 12:46:42 2007 +0100
1509
[cairo-paginated-surface] Propagate malloc failure
1511
Check for an allocation failure during _cairo_analysis_surface_create()
1512
and propagate to caller - where we discover that the callers themselves
1513
missed the status checks...
1515
src/cairo-paginated-surface.c | 10 ++++++++--
1516
1 files changed, 8 insertions(+), 2 deletions(-)
1518
commit 0d8a1540ec53ecc309a10e77ea7788fcd16d8345
1519
Author: Emmanuel Pacaud <emmanuel.pacaud@free.fr>
1520
Date: Tue May 8 09:11:57 2007 +0200
1522
SVG: Don't clip SVG element, as clipping region is implicit.
1524
That makes editing of produced SVG easier.
1526
src/cairo-svg-surface-private.h | 1 +
1527
src/cairo-svg-surface.c | 53 +++++++++++++++++++--------------------
1528
2 files changed, 27 insertions(+), 27 deletions(-)
1530
commit 936c965777c867bd4de7fd2278335837cc24eb22
1531
Author: Jinghua Luo <sunmoon1997@gmail.com>
1532
Date: Tue May 8 13:24:40 2007 +0800
1534
glitz: kill some compiler warnings.
1536
src/cairo-glitz-surface.c | 11 +++++++++--
1537
1 files changed, 9 insertions(+), 2 deletions(-)
1539
commit 413705872e321288bff1368c62eacad11805c2fc
1540
Author: Jinghua Luo <sunmoon1997@gmail.com>
1541
Date: Tue May 8 13:19:35 2007 +0800
1543
glitz: fix a typo preventing build glitz backend from succeeding.
1545
src/cairo-glitz-surface.c | 2 +-
1546
1 files changed, 1 insertions(+), 1 deletions(-)
1548
commit d81907734e18fb9302e78eccb1e25a838223b726
1549
Author: Chris Wilson <chris@chris-wilson.co.uk>
1550
Date: Sat May 5 12:33:29 2007 +0100
1552
[cairo-color] Only compare the shorts for equality.
1554
By only checking the premultiplied shorts inside the cairo_color_t we
1555
only have to compare at most 8 bytes instead of the full 24 bytes.
1557
src/cairo-color.c | 5 ++++-
1558
1 files changed, 4 insertions(+), 1 deletions(-)
1560
commit 966a39396eb75d9d4ecc9997bb21d62fba176f78
1561
Author: Chris Wilson <chris@chris-wilson.co.uk>
1562
Date: Fri May 4 15:25:18 2007 +0100
1564
[NEWS] Surface cache for solid patterns
1566
Add an entry describing the surface cache to NEWS.
1568
NEWS | 21 +++++++++++++++++++++
1569
1 files changed, 21 insertions(+), 0 deletions(-)
1571
commit 056d149212ce4999f8984db62b880ff2eb998ab3
1572
Author: Chris Wilson <chris@chris-wilson.co.uk>
1573
Date: Wed May 2 12:54:49 2007 +0100
1575
[cairo-pattern] Don't cache fallback surfaces
1577
_cairo_surface_create_similar_solid() may return an image surface,
1578
should the backend not support the required content or should it
1579
encounter an error whilst creating the surface. In those circumstances
1580
we choose not to cache the fallback surface.
1582
src/cairo-pattern.c | 8 +++++++-
1583
1 files changed, 7 insertions(+), 1 deletions(-)
1585
commit a8c8e17d845c7060286dac58b553fb717b270788
1586
Author: Chris Wilson <chris@chris-wilson.co.uk>
1587
Date: Wed May 2 10:00:22 2007 +0100
1589
[cairo-pattern] Cache surface for solid patterns
1591
Original work by Jorn Baayen <jorn@openedhand.com>,
1592
2715f2098127d04d2f9e304580a26cd0842c0e64
1594
We use a small cache of size 16 for surfaces created for solid patterns.
1595
This mainly helps with the X backends where we don't have to create a
1596
pattern for every operation, so we save a lot on X traffic. Xft uses a
1597
similar cache, so cairo's text rendering traffic with the xlib backend
1598
now completely matches that of Xft.
1600
The cache uses an static index variable, which itself acts like a cache of
1601
size 1, remembering the most recently used solid pattern. So repeated
1602
lookups for the same pattern hit immediately. If that fails, the cache is
1603
searched linearly, and if that fails too, a new surface is created and a
1604
random member of the cache is evicted.
1606
A cached surface can only be reused if it is similar to the destination.
1607
In order to check for similar surfaces a new test is introduced for the
1608
backends to determine that the cached surface is as would be returned by
1609
a _create_similar() call for the destination and content.
1611
As surfaces are in general complex encapsulation of graphics state we
1612
only return unshared cached surfaces and reset them (to clear any error
1613
conditions and graphics state). In practice this makes little difference
1614
to the efficacy of the cache during various benchmarks. However, in order
1615
to transparently share solid surfaces it would be possible to implement a
1618
Cache hit rates: (hit same index + hit in cache) / lookups
1619
cairo-perf: (42346 + 28480) / 159600 = 44.38%
1620
gtk-theme-torturer: (3023 + 3502) / 6528 = 99.95%
1621
gtk-perf: (8270 + 3190) / 21504 = 53.29%
1623
This translates into a reduction of about 25% of the XRENDER traffic during
1626
src/cairo-directfb-surface.c | 15 ++++-
1627
src/cairo-glitz-surface.c | 40 ++++++++++++-
1628
src/cairo-image-surface.c | 29 ++++++++-
1629
src/cairo-mutex-list-private.h | 3 +-
1630
src/cairo-pattern.c | 135 +++++++++++++++++++++++++++++++++++-----
1631
src/cairo-pdf-surface.c | 3 +
1632
src/cairo-surface.c | 57 +++++++++++++++++
1633
src/cairo-win32-surface.c | 29 ++++++++-
1634
src/cairo-xcb-surface.c | 39 +++++++++++-
1635
src/cairo-xlib-surface.c | 45 +++++++++++++-
1636
src/cairoint.h | 16 +++++
1637
11 files changed, 388 insertions(+), 23 deletions(-)
1639
commit 52472b740e821dee444ede1fff041a99d344daab
1640
Author: Chris Wilson <chris@chris-wilson.co.uk>
1641
Date: Tue May 1 18:34:47 2007 +0100
1643
[cairo-xlib-surface] Defer application of clip mask until required.
1645
By deferring the issuing of the X requests to set the clip mask we can
1646
theoretically avoid some redundant requests, but primarily we remove
1647
another path where X requests are emitted.
1649
src/cairo-xlib-surface-private.h | 7 ++++
1650
src/cairo-xlib-surface.c | 72 ++++++++++++++++++--------------------
1651
2 files changed, 41 insertions(+), 38 deletions(-)
1653
commit a81823cdf9a147d02bb2365558ba667ab52fb3c9
1654
Author: Chris Wilson <chris@chris-wilson.co.uk>
1655
Date: Fri Apr 20 17:32:25 2007 +0100
1657
[cairo-xlib-display] Allocate the close_display hooks from a freelist.
1659
Similar to job allocation, but only useful for toolkits like GTK+ which
1660
recreate a new xlib surface for each expose.
1662
src/cairo-xlib-display.c | 105 ++++++++++++++++++++++++---------------------
1663
src/cairo-xlib-private.h | 1 +
1664
2 files changed, 57 insertions(+), 49 deletions(-)
1666
commit c29ffc64ca341623d21a7861f1b5f131b420d20f
1667
Author: Chris Wilson <chris@chris-wilson.co.uk>
1668
Date: Fri Apr 20 16:33:56 2007 +0100
1670
[cairo-xlib-display] Cache the screen_info for the lifetime of the display.
1672
Hold an extra reference to the screen_info and explicitly destroy the
1673
list of screens on CloseDisplay.
1675
src/cairo-xlib-display.c | 19 +++++++++++++++++++
1676
src/cairo-xlib-screen.c | 3 +--
1677
2 files changed, 20 insertions(+), 2 deletions(-)
1679
commit 1d6f7b7a0282d1b24bec82d9ad113b0d0a0cde98
1680
Author: Chris Wilson <chris@chris-wilson.co.uk>
1681
Date: Thu Apr 19 13:01:52 2007 +0100
1683
[cairo-xlib] Cache freed GCs
1685
Maintain a cache of freed GCs, one for each used depth.
1687
src/cairo-xlib-display.c | 6 +++-
1688
src/cairo-xlib-private.h | 10 ++++++
1689
src/cairo-xlib-screen.c | 70 ++++++++++++++++++++++++++++++++++++++++++++++
1690
src/cairo-xlib-surface.c | 22 ++++++++------
1691
4 files changed, 98 insertions(+), 10 deletions(-)
1693
commit 88c6d25d4e53ddad6f3d465b2f5249c76a421b82
1694
Author: Chris Wilson <chris@chris-wilson.co.uk>
1695
Date: Tue Apr 17 12:03:07 2007 +0100
1697
[cairo-xlib-surface] Defer xlib resource cleanup.
1699
Due to caching, destruction of X11 resources may occur outside of a
1700
usable X11 context. To avoid this, we defer the destruction onto a work
1701
queue which will be run the next time we try to use the X11 connection
1702
on behalf of the user (at which point we must have a usable X11 context!)
1703
or we are closing the Display.
1705
src/cairo-xlib-surface.c | 180 +++++++++++++++++++++++++++++++++++++++------
1706
1 files changed, 156 insertions(+), 24 deletions(-)
1708
commit 8ad30ccdb0a00701b15003edb2fe0cd4a8a9dfb7
1709
Author: Chris Wilson <chris@chris-wilson.co.uk>
1710
Date: Thu Apr 19 12:15:04 2007 +0100
1712
[cairo-xlib] Introduce a workqueue for deferred destruction of X resources.
1714
Due to the nature of the reference counting, an X resource may be
1715
destroyed later than anticipated and possibly from a different thread
1716
than the original context. This becomes an issue for applications that
1717
carefully manage their single X connection from a single thread and do
1718
not use locking and are then suprised when cairo triggers X traffic when
1719
performing work for a different part of the application in another thread.
1721
src/cairo-xlib-display.c | 171 +++++++++++++++++++++++++++++++++++++++++++++-
1722
src/cairo-xlib-private.h | 18 +++++
1723
src/cairo-xlib-screen.c | 1 -
1724
src/cairo-xlib-surface.c | 21 +++++-
1725
4 files changed, 205 insertions(+), 6 deletions(-)
1727
commit dd8681b76b088bab45c99510258920f027490f70
1728
Author: Chris Wilson <chris@chris-wilson.co.uk>
1729
Date: Mon Apr 16 15:04:08 2007 +0100
1731
[cairo-xlib] Split per-display attributes from per-screen.
1733
Previously, we stored the per-display attributes inside a special
1734
screen=NULL _cairo_xlib_screen_info_t. Now we keep track of known X
1735
displays and store the screen information beneath the display structure
1736
alongside the per-display hooks.
1738
src/Makefile.am | 8 +-
1739
src/cairo-debug.c | 4 -
1740
src/cairo-mutex-list-private.h | 2 +-
1741
src/cairo-xlib-display.c | 258 +++++++++++++++++++++++++++++++++
1742
src/cairo-xlib-private.h | 37 ++++-
1743
src/cairo-xlib-screen.c | 309 ++++++++-------------------------------
1744
src/cairo-xlib-surface.c | 2 +-
1745
src/cairoint.h | 6 -
1746
8 files changed, 359 insertions(+), 267 deletions(-)
1748
commit 9919f1ed9ccbec637252e06dd1de5f4665c873b4
1749
Author: Behdad Esfahbod <behdad@behdad.org>
1750
Date: Thu May 3 19:54:31 2007 -0400
1752
[TODO] Add link to cairo_copy_clip() proposal
1755
1 files changed, 1 insertions(+), 0 deletions(-)
1757
commit e5d9d51e55eb45704de6d98ac9265743af56711f
1758
Author: Behdad Esfahbod <behdad@behdad.org>
1759
Date: Thu May 3 19:04:21 2007 -0400
1761
[cairo-mutex] Fix typo.
1763
src/cairo-mutex.c | 8 ++++----
1764
1 files changed, 4 insertions(+), 4 deletions(-)
1766
commit 5ec27eef9566faa22fb1cbaf1a103a57ba5296c8
1767
Author: Chris Wilson <chris@chris-wilson.co.uk>
1768
Date: Thu May 3 13:46:25 2007 +0100
1770
[pixman] Free the old rects if we fail to allocate new.
1772
During the pixman_op, a complicated dance is performed to handle
1773
enlarging the rectangle array to accommodate the op. One consequence
1774
of this is to, under certain circumstances, replace the current
1775
rectangle array with emptyData and track the old array with oldData.
1776
Hence if we fail to realloc the enlarged array we need to free oldData.
1778
pixman/src/pixregion.c | 8 ++++++--
1779
1 files changed, 6 insertions(+), 2 deletions(-)
1781
commit ef3070821713c33fab78abb191e27a62e165f6c6
1782
Author: Behdad Esfahbod <behdad@behdad.org>
1783
Date: Wed May 2 16:22:13 2007 -0400
1785
[boilerplate] Fix typo
1787
boilerplate/xmalloc.h | 2 +-
1788
1 files changed, 1 insertions(+), 1 deletions(-)
1790
commit c412e42c72c0ff53c678119638357ed95897ed78
1791
Author: Chris Wilson <chris@chris-wilson.co.uk>
1792
Date: Wed May 2 21:17:39 2007 +0100
1794
[cairo-xlib-surface] Check that the acquire surfaces are xlib surfaces
1796
_cairo_pattern_acquire_surfaces() may substitute an image surface for
1797
either the source or the mask should the backend not support creation
1798
of similar scratch surfaces or an error occurs during creation. For
1799
composition we require xlib surfaces and so we must trigger the
1800
fallback path if this happens.
1802
src/cairo-xlib-surface.c | 10 ++++++++++
1803
1 files changed, 10 insertions(+), 0 deletions(-)
1805
commit f3153091b742daffa853f2c31b76aa9689c5165a
1806
Author: Behdad Esfahbod <behdad@behdad.org>
1807
Date: Tue May 1 20:10:39 2007 -0400
1809
[cairo-mutex] Document the API for adding cairo_mutex_t implementations
1811
src/cairo-mutex-type-private.h | 83 ++++++++++++++++++++++++++++++++++++++++
1812
1 files changed, 83 insertions(+), 0 deletions(-)
1814
commit 5bfd6553fd028f1429d72c60d04788de4a3c0d58
1815
Author: Behdad Esfahbod <behdad@behdad.org>
1816
Date: Tue May 1 19:48:33 2007 -0400
1818
[cairo-mutex] Define a NOOP CAIRO_MUTEX_FINALIZE() for pthread
1819
as now the mutex layer will define a generic CAIRO_MUTEX_FINALIZE()
1820
whenever the implementation defines CAIRO_MUTEX_FINI(). In the
1821
case of pthread however we don't need finalization as we don't
1822
have any place to call it, and pthread_mutex_destroy() doesn't
1825
src/cairo-mutex-type-private.h | 1 +
1826
1 files changed, 1 insertions(+), 0 deletions(-)
1828
commit c4e0a059feb9c2e0c32966dcb168861e75a244b7
1829
Author: Behdad Esfahbod <behdad@behdad.org>
1830
Date: Tue May 1 19:46:51 2007 -0400
1832
[cairo-mutex] Remove NOOP definition of CAIRO_MUTEX_INITIALIZE
1833
as now the mutex layer will use a NOOP CAIRO_MUTEX_INITIALIZE
1834
by default if the implementation does not define CAIRO_MUTEX_INIT.
1836
src/cairo-mutex-type-private.h | 1 -
1837
1 files changed, 0 insertions(+), 1 deletions(-)
1839
commit 06cc74d974a99526829df558606174b41b0ee6e1
1840
Author: Behdad Esfahbod <behdad@behdad.org>
1841
Date: Tue May 1 19:45:29 2007 -0400
1843
[cairo-mutex] Rewrite defaults for CAIRO_MUTEX macros not defined by the implementation
1844
to make them better match the design I have in mind, that I will
1845
document in a minute. They are a lot more readable and understandable
1848
src/cairo-mutex-private.h | 93 ++++++++++++++++++++++++++++++++------------
1849
src/cairo-mutex.c | 18 +++++++-
1850
2 files changed, 82 insertions(+), 29 deletions(-)
1852
commit e87a25dc7c73a44b0cdfc4ef368736e7f77fb522
1853
Author: Behdad Esfahbod <behdad@behdad.org>
1854
Date: Tue May 1 19:24:26 2007 -0400
1856
[cairo-mutex] Fix usage of CAIRO_MUTEX_DECLARE()
1858
Previously cairo-mutex.c was abusing cairo-mutex-private.h by
1859
defining CAIRO_MUTEX_DECLARE before including it, and
1860
cairo-mutex-private.h was simply not overriding any available
1861
CAIRO_MUTEX_DECLARE. This is not the way it should be.
1862
cairo-mutex.c should instead define CAIRO_MUTEX_DECLARE and
1863
include cairo-mutex-list-private.h for itself.
1865
src/cairo-mutex-private.h | 4 +---
1866
src/cairo-mutex.c | 9 +++++----
1867
2 files changed, 6 insertions(+), 7 deletions(-)
1869
commit 1a33e44aa5d73f568c4164c41f9595964e9f1bbb
1870
Author: Behdad Esfahbod <behdad@behdad.org>
1871
Date: Tue May 1 18:13:19 2007 -0400
1873
[RELEASING] Update GNOME URL to point to 2.19 planning page
1876
1 files changed, 1 insertions(+), 1 deletions(-)
1878
commit 4764e6222bf4d5223fc2fbb139bb31a24819b2b5
1879
Author: Behdad Esfahbod <behdad@behdad.org>
1880
Date: Tue May 1 00:50:03 2007 -0400
1882
[cairo-mutex] Improve error message if no thread implementation found
1884
to put back Carl's "acknowledge and accept" clause (!) before suggesting
1885
use of CAIRO_NO_MUTEX.
1887
src/cairo-mutex-type-private.h | 4 ++--
1888
1 files changed, 2 insertions(+), 2 deletions(-)
1890
commit b5f015f21f3c800919a85f03a081a3ec1648a794
1891
Author: Behdad Esfahbod <behdad@behdad.org>
1892
Date: Tue May 1 00:48:33 2007 -0400
1894
[cairo-mutex] Make sure mutex implementation declares enough macros
1896
We have defaults for the rest.
1898
src/cairo-mutex-private.h | 11 +++++++++++
1899
1 files changed, 11 insertions(+), 0 deletions(-)
1901
commit b0a0a1779dc5cc16423473b6d80ee5099793a47f
1902
Author: Behdad Esfahbod <behdad@behdad.org>
1903
Date: Tue May 1 00:47:02 2007 -0400
1905
[cairo-mutex] Make CAIRO_MUTEX_INIT/FINI take mutex object, not pointer to it
1907
This is more consistent with CAIRO_MUTEX_LOCK/UNLOCK.
1909
src/cairo-ft-font.c | 4 ++--
1910
src/cairo-mutex-private.h | 2 +-
1911
src/cairo-mutex-type-private.h | 19 +++++++------------
1912
src/cairo-mutex.c | 4 ++--
1913
src/cairo-scaled-font.c | 4 ++--
1914
5 files changed, 14 insertions(+), 19 deletions(-)
1916
commit f9154f7eda4272ff99cc8a894082cc5aa1b008ef
1917
Author: Behdad Esfahbod <behdad@behdad.org>
1918
Date: Tue May 1 00:44:42 2007 -0400
1920
[cairo-mutex] Make sure CAIRO_MUTEX_FINI() evaluates its argument once
1922
src/cairo-mutex-private.h | 2 +-
1923
src/cairo-mutex-type-private.h | 3 ++-
1924
2 files changed, 3 insertions(+), 2 deletions(-)
1926
commit a8d47d0c001a36ddd6c9f09247e6eada408edb24
1927
Author: Behdad Esfahbod <behdad@behdad.org>
1928
Date: Tue May 1 00:43:15 2007 -0400
1930
[cairo-mutex] Rename macro arguments from "name" to "mutex"
1932
src/cairo-mutex-private.h | 6 +++---
1933
src/cairo-mutex-type-private.h | 20 ++++++++++----------
1934
src/cairo-mutex.c | 4 ++--
1935
3 files changed, 15 insertions(+), 15 deletions(-)
1937
commit f57a536fceec73435bb13c44275717792b9b3a8c
1938
Author: Carl Worth <cworth@cworth.org>
1939
Date: Tue May 1 13:45:58 2007 -0700
1941
Increment version to 1.4.7 after the 1.4.6 release
1944
1 files changed, 1 insertions(+), 1 deletions(-)
1
1946
commit ddca8fec07ff95caeda6e4ce9efc3239b146bd2d
2
1947
Author: Carl Worth <cworth@cworth.org>
3
1948
Date: Tue May 1 13:37:16 2007 -0700