1commit d6263bec89bcd1565fb0f56a9840cd6f7761097f 2Author: Carl Worth <cworth@cworth.org> 3AuthorDate: Thu Apr 10 17:34:41 2008 -0700 4Commit: Carl Worth <cworth@cworth.org> 5CommitDate: Thu Apr 10 17:34:41 2008 -0700 6 7 Increment cairo version to 1.6.0 8 9 configure.in | 6 +++--- 10 1 file changed, 3 insertions(+), 3 deletions(-) 11 12commit 709805c26f567b7fa90d04e701ccbf1cccc34da7 13Author: Carl Worth <cworth@cworth.org> 14AuthorDate: Thu Apr 10 17:33:51 2008 -0700 15Commit: Carl Worth <cworth@cworth.org> 16CommitDate: Thu Apr 10 17:33:51 2008 -0700 17 18 NEWS: Add notes for 1.6.0 release 19 20 NEWS | 198 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--- 21 1 file changed, 190 insertions(+), 8 deletions(-) 22 23commit aadbaf7d990d0d5cd7c25cc856dbcfcc357b44f1 24Author: Carl Worth <cworth@cworth.org> 25AuthorDate: Tue Apr 8 02:45:56 2008 -0700 26Commit: Carl Worth <cworth@cworth.org> 27CommitDate: Tue Apr 8 02:45:56 2008 -0700 28 29 Increment version to 1.5.20 30 31 configure.in | 4 ++-- 32 1 file changed, 2 insertions(+), 2 deletions(-) 33 34commit 8f123d035af0c02dc0a668a073410756edafbdd6 35Author: Carl Worth <cworth@cworth.org> 36AuthorDate: Tue Apr 8 02:45:31 2008 -0700 37Commit: Carl Worth <cworth@cworth.org> 38CommitDate: Tue Apr 8 02:45:31 2008 -0700 39 40 NEWS: Add notes for 1.5.20 snapshot 41 42 NEWS | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 43 1 file changed, 47 insertions(+) 44 45commit f7dea9a8d3da7f57286db4b1b6300726483a0d76 46Author: Carl Worth <cworth@cworth.org> 47AuthorDate: Tue Apr 8 02:28:52 2008 -0700 48Commit: Carl Worth <cworth@cworth.org> 49CommitDate: Tue Apr 8 02:29:05 2008 -0700 50 51 Fix distcheck by renaming large-source-ref.c to large-source-ref.png (oops!) 52 53 test/{large-source-ref.c => large-source-ref.png} | Bin 54 1 file changed, 0 insertions(+), 0 deletions(-) 55 56commit c26a7de9707e26d0552b0fedcd4bf2e0ba6542b2 57Author: Carl Worth <cworth@cworth.org> 58AuthorDate: Tue Apr 8 01:54:27 2008 -0700 59Commit: Carl Worth <cworth@cworth.org> 60CommitDate: Tue Apr 8 01:54:27 2008 -0700 61 62 Prevent potentially infinite wandering through memeory in _cairo_hull_prev_valid 63 64 It is possible for _cairo_hull_prev_valid to be called just once 65 right before the calling loop is going to terminate. In this 66 case we really don't want to walk off the beginning of the 67 array and start wandering. 68 69 Thanks to Jonathan Watt for noticing this problem: 70 71 https://bugzilla.mozilla.org/show_bug.cgi?id=306649#c21 72 73 src/cairo-hull.c | 7 ++++++- 74 1 file changed, 6 insertions(+), 1 deletion(-) 75 76commit c19133eb9ab31bbdc7e82573033e513e9eb867f2 77Author: Carl Worth <cworth@cworth.org> 78AuthorDate: Tue Apr 8 01:34:37 2008 -0700 79Commit: Carl Worth <cworth@cworth.org> 80CommitDate: Tue Apr 8 01:34:37 2008 -0700 81 82 Revert "[test] Repeat tests using cairo_push_group()." 83 84 This reverts commit 07122e64fa9529e7ba9323988a5af1d1e7c2c55f. 85 86 The extra testing did find a pdf bug, and that should be fixed, 87 but the extra maintenance burden of running another iteration 88 of all tests does not seem justfied at all---particularly since 89 it looks like dozens of new reference images would be needed 90 for the svg backend. 91 92 Also, the new "failures" of the image backend with this new 93 testing look like a misunderstanding of exactly what the new 94 testing is actually drawing. 95 96 test/cairo-test.c | 119 ++++++++---------------------------------------------- 97 1 file changed, 16 insertions(+), 103 deletions(-) 98 99commit c1f7655f2fd5373a74d3fbf5977ebbd84e401e25 100Author: Carl Worth <cworth@cworth.org> 101AuthorDate: Tue Apr 8 00:40:58 2008 -0700 102Commit: Carl Worth <cworth@cworth.org> 103CommitDate: Tue Apr 8 00:41:09 2008 -0700 104 105 Check surface->status and finished in cairo_surface_write_to_png 106 107 Without these checks, a user could hit an assertion failure 108 by passing a finished surface to cairo_surface_write_to_png. 109 Now we return a nice CAIRO_STATUS_SURFACE_FINISHED error in 110 that case instead. 111 112 src/cairo-png.c | 6 ++++++ 113 1 file changed, 6 insertions(+) 114 115commit 33c54ed240b319acb28ef370eef5188ad42a5737 116Author: Chris Wilson <chris@chris-wilson.co.uk> 117AuthorDate: Mon Apr 7 22:14:04 2008 +0100 118Commit: Chris Wilson <chris@chris-wilson.co.uk> 119CommitDate: Tue Apr 8 07:52:47 2008 +0100 120 121 [test] Add large-source to exercise handling of massive images. 122 123 This test exercises https://bugzilla.mozilla.org/show_bug.cgi?id=424333. 124 125 The test is expected to fail due to issues with pixman, but cairo 126 should fail gracefully and neither crash nor cause XErrors. 127 128 test/.gitignore | 1 + 129 test/Makefile.am | 3 ++ 130 test/large-source-ref.c | Bin 0 -> 137 bytes 131 test/large-source.c | 109 ++++++++++++++++++++++++++++++++++++++++++++++++ 132 4 files changed, 113 insertions(+) 133 134commit 4924d4d928666981f3e64bec685e8f90e524e62e 135Author: Chris Wilson <chris@chris-wilson.co.uk> 136AuthorDate: Mon Apr 7 23:48:36 2008 +0100 137Commit: Chris Wilson <chris@chris-wilson.co.uk> 138CommitDate: Tue Apr 8 07:52:47 2008 +0100 139 140 [cairo-xlib] Do not create surface with mismatching Visual and PictFormat. 141 142 As identified by Vladimir Vukicevic, 143 _cairo_xlib_surface_create_similar_with_format() was erroneously passing 144 down the source Visual when creating a surface with a different 145 XRenderPictFormat. 146 147 src/cairo-xlib-surface.c | 2 +- 148 1 file changed, 1 insertion(+), 1 deletion(-) 149 150commit 9aac5916bcb4a3e62194315b12961d97f193a585 151Author: Chris Wilson <chris@chris-wilson.co.uk> 152AuthorDate: Mon Apr 7 23:42:47 2008 +0100 153Commit: Chris Wilson <chris@chris-wilson.co.uk> 154CommitDate: Tue Apr 8 07:52:47 2008 +0100 155 156 [test/xlib-surface] Check for mismatching Visuals and XRenderPictFormats 157 158 Vladimir Vukicevic reported that surfaces were being created with 159 mismatching Visuals and XRenderPictFormats - and demonstated here. 160 161 test/xlib-surface.c | 63 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 162 1 file changed, 63 insertions(+) 163 164commit f6afba8f5453b8e3af9101fa2cde4c05a67f6d4b 165Author: Chris Wilson <chris@chris-wilson.co.uk> 166AuthorDate: Mon Apr 7 23:25:57 2008 +0100 167Commit: Chris Wilson <chris@chris-wilson.co.uk> 168CommitDate: Tue Apr 8 07:52:47 2008 +0100 169 170 [cairo-xlib] Create Pixmap using depth from xrender_format. 171 172 Use the depth as specified by the xrender_format when creating the 173 pixmap (as opposed to a guess based on the cairo_format_t). 174 175 src/cairo-xlib-surface.c | 21 ++------------------- 176 1 file changed, 2 insertions(+), 19 deletions(-) 177 178commit 922fefdde4af28f9fc1e42fcba1b315980b01dc7 179Author: Chris Wilson <chris@chris-wilson.co.uk> 180AuthorDate: Mon Apr 7 23:06:18 2008 +0100 181Commit: Chris Wilson <chris@chris-wilson.co.uk> 182CommitDate: Tue Apr 8 07:52:46 2008 +0100 183 184 [cairo-xlib] Handle missing RENDER during similar surface creation 185 186 If the xserver doesn't support the RENDER extension or simply doesn't 187 have the matching PictFormat then xrender_format might be NULL. Check 188 and fallback in this case. 189 190 src/cairo-xlib-surface.c | 6 ++++-- 191 1 file changed, 4 insertions(+), 2 deletions(-) 192 193commit 07122e64fa9529e7ba9323988a5af1d1e7c2c55f 194Author: Chris Wilson <chris@chris-wilson.co.uk> 195AuthorDate: Mon Apr 7 22:00:51 2008 +0100 196Commit: Chris Wilson <chris@chris-wilson.co.uk> 197CommitDate: Tue Apr 8 07:52:46 2008 +0100 198 199 [test] Repeat tests using cairo_push_group(). 200 201 Test surfaces using similar surfaces with both CONTENT_COLOR and 202 CONTENT_COLOR_ALPHA, if applicable. This seems justified by the apparent 203 bugs in the pdf backend when going from an ARGB32 similar surface to 204 a destination RGB24 surface as well as isolated bugs in the image 205 backend. 206 207 The original goal was to try and trick the test suite into producing 208 a xlib surface with mismatching Visual/XRenderPictFormat. This succeeds, 209 although with a little bit of brute force in the xlib backend, but the 210 search to reproduce a BadMatch error fruitless. 211 212 test/cairo-test.c | 119 ++++++++++++++++++++++++++++++++++++++++++++++-------- 213 1 file changed, 103 insertions(+), 16 deletions(-) 214 215commit e04e4262386b8735d2ceabbc187405cace89dc80 216Author: Chris Wilson <chris@chris-wilson.co.uk> 217AuthorDate: Mon Apr 7 10:56:38 2008 +0100 218Commit: Chris Wilson <chris@chris-wilson.co.uk> 219CommitDate: Tue Apr 8 07:52:46 2008 +0100 220 221 [test/get-xrender-format] Free static data on exit. 222 223 Free the internal caches so that valgrind reports zero leaks. 224 225 test/get-xrender-format.c | 3 +++ 226 1 file changed, 3 insertions(+) 227 228commit e57ef66fab7cb05b84175b3cfb5c032150cfa682 229Author: Chris Wilson <chris@chris-wilson.co.uk> 230AuthorDate: Mon Apr 7 10:51:27 2008 +0100 231Commit: Chris Wilson <chris@chris-wilson.co.uk> 232CommitDate: Tue Apr 8 07:52:46 2008 +0100 233 234 [test/xlib-surface] Zero pixel buffers before use. 235 236 As we only use RGB24 surface data the alpha channel is undefined, so 237 zero it to prevent valgrind warnings. 238 239 test/xlib-surface.c | 24 ++++++++++++++++++++---- 240 1 file changed, 20 insertions(+), 4 deletions(-) 241 242commit d0672e85ef120a4e3cd0dfcbdb717afbf9526f17 243Author: Chris Wilson <chris@chris-wilson.co.uk> 244AuthorDate: Mon Apr 7 10:42:57 2008 +0100 245Commit: Chris Wilson <chris@chris-wilson.co.uk> 246CommitDate: Tue Apr 8 07:52:46 2008 +0100 247 248 [test/surface-source] Skip tests if we cannot create the source surface. 249 250 Check that the test environment supports the desired source and avoid 251 triggering asserts in the test routines. 252 253 test/glitz-surface-source.c | 15 ++++++++++----- 254 test/surface-source.c | 8 ++++++++ 255 2 files changed, 18 insertions(+), 5 deletions(-) 256 257commit 056d3c853e6660db31ee4a50d0e990a6013aa703 258Author: Chris Wilson <chris@chris-wilson.co.uk> 259AuthorDate: Mon Apr 7 10:35:04 2008 +0100 260Commit: Chris Wilson <chris@chris-wilson.co.uk> 261CommitDate: Tue Apr 8 07:52:46 2008 +0100 262 263 [test/stroke-image] Fix memleak. 264 265 Release the temporary image surface after setting it as the source. 266 267 test/stroke-image.c | 3 ++- 268 1 file changed, 2 insertions(+), 1 deletion(-) 269 270commit e460e586d7d093c1e03052efa3bfb45a2d5cf6ef 271Author: Carl Worth <cworth@cworth.org> 272AuthorDate: Mon Apr 7 22:02:44 2008 -0700 273Commit: Carl Worth <cworth@cworth.org> 274CommitDate: Mon Apr 7 22:02:44 2008 -0700 275 276 Update several pdf-specific reference images 277 278 I don't know if we made minor changes to the pdf backend, or 279 if this was due to a poppler change, (we recently bumped the 280 poppler required for testing up to 0.8.0), but any way around 281 it these test results look just as good as the reference images 282 they are replacing. 283 284 test/Makefile.am | 2 ++ 285 test/clip-operator-pdf-argb32-ref.png | Bin 11429 -> 11145 bytes 286 test/ft-text-vertical-layout-type1-pdf-ref.png | Bin 0 -> 3604 bytes 287 test/ft-text-vertical-layout-type3-pdf-ref.png | Bin 0 -> 3634 bytes 288 test/push-group-pdf-ref.png | Bin 2694 -> 2807 bytes 289 test/push-group-pdf-rgb24-ref.png | Bin 2611 -> 2714 bytes 290 6 files changed, 2 insertions(+) 291 292commit fdcd1445846b59d2ffd1780dd0f6d70169036ad4 293Author: Carl Worth <cworth@cworth.org> 294AuthorDate: Mon Apr 7 13:30:59 2008 -0700 295Commit: Carl Worth <cworth@cworth.org> 296CommitDate: Mon Apr 7 16:09:08 2008 -0700 297 298 Add filter-bilinear-extents to the XFAIL list 299 300 This test case does show a bug, and we have lots of ideas on how 301 to fix the bug, but we want to wait until after the 1.6 release 302 before we fix it. See: 303 304 http://bugs.freedesktop.org/show_bug.cgi?id=15349 305 306 test/Makefile.am | 1 + 307 1 file changed, 1 insertion(+) 308 309commit 36246c51ba720713ebf93573da29b098e87f0bd0 310Author: Carl Worth <cworth@cworth.org> 311AuthorDate: Mon Apr 7 12:10:24 2008 -0700 312Commit: Carl Worth <cworth@cworth.org> 313CommitDate: Mon Apr 7 16:09:06 2008 -0700 314 315 Revert "_cairo_pattern_get_extents: Fix to allow for expansion based on filter" 316 317 This reverts commit 731e121c802a7b1c3429d1bde7a93bc471d70880. 318 319 This commit introduced various problems, (some likely noticeable 320 in the test suite, and others perhaps not). For some details, see 321 the latest comments in the original bug report leading to the 322 fix now being reverted: 323 324 http://bugs.freedesktop.org/show_bug.cgi?id=15349 325 326 src/cairo-pattern.c | 22 ---------------------- 327 1 file changed, 22 deletions(-) 328 329commit c88adb6aee650c8c544b212f539bd5da9ed88734 330Author: Carl Worth <cworth@cworth.org> 331AuthorDate: Mon Apr 7 16:09:03 2008 -0700 332Commit: Carl Worth <cworth@cworth.org> 333CommitDate: Mon Apr 7 16:09:03 2008 -0700 334 335 Add svg-specific reference images for smask and smask-mask 336 337 The most recent change for the mask_id allocation fixes these 338 two test, (it fixes mask-image-mask as well, but it didn't need 339 a new reference image). 340 341 test/Makefile.am | 2 ++ 342 test/smask-mask-svg-ref.png | Bin 0 -> 2529 bytes 343 test/smask-svg-ref.png | Bin 0 -> 3634 bytes 344 3 files changed, 2 insertions(+) 345 346commit 164e9c195c16fbed08539b859a06cc6f042fb5d9 347Author: Carl Worth <cworth@cworth.org> 348AuthorDate: Mon Apr 7 15:50:22 2008 -0700 349Commit: Carl Worth <cworth@cworth.org> 350CommitDate: Mon Apr 7 15:56:26 2008 -0700 351 352 SVG: Fix generation of mask_id identifiers 353 354 In tests such as smask-mask (and others) the cairo_mask operation 355 is used in the construction of a mask. In this case, the single 356 document->mask_id value was being incremented at inappropriate 357 times. 358 359 We fix this by adding a new _cairo_svg_document_allocate_mask_id 360 that returns the current value and increments it. That way, 361 callers can hold onto this reliable value for the desired lifetime 362 that the code needs the identifier. 363 364 src/cairo-svg-surface.c | 18 ++++++++++++++---- 365 1 file changed, 14 insertions(+), 4 deletions(-) 366 367commit 8aa306ec08dcf0ae8803cdb1bda0fb31658f9e83 368Author: Carl Worth <cworth@cworth.org> 369AuthorDate: Mon Apr 7 14:17:40 2008 -0700 370Commit: Carl Worth <cworth@cworth.org> 371CommitDate: Mon Apr 7 15:56:26 2008 -0700 372 373 Add svg-specific reference images for smask-fill, smask-paint, and smask-text tests 374 375 test/Makefile.am | 3 +++ 376 test/smask-fill-svg-ref.png | Bin 0 -> 1166 bytes 377 test/smask-paint-svg-ref.png | Bin 0 -> 2612 bytes 378 test/smask-text-svg-ref.png | Bin 0 -> 1886 bytes 379 4 files changed, 3 insertions(+) 380 381commit 3d86023281d7d18ad72be85ad8b53c29f20dfc7e 382Author: Carl Worth <cworth@cworth.org> 383AuthorDate: Mon Apr 7 14:09:32 2008 -0700 384Commit: Carl Worth <cworth@cworth.org> 385CommitDate: Mon Apr 7 15:56:26 2008 -0700 386 387 Add ps-specific reference images for smask and smask-text tests 388 389 test/Makefile.am | 2 ++ 390 test/smask-ps-ref.png | Bin 0 -> 3669 bytes 391 test/smask-text-ps-ref.png | Bin 0 -> 2023 bytes 392 3 files changed, 2 insertions(+) 393 394commit f2a94c84a160f205ee72cc0c538a556d7d611e7b 395Author: Carl Worth <cworth@cworth.org> 396AuthorDate: Mon Apr 7 13:03:58 2008 -0700 397Commit: Carl Worth <cworth@cworth.org> 398CommitDate: Mon Apr 7 13:03:58 2008 -0700 399 400 Add underscore prefix to private _cairo_pdf_surface_set_size_internal 401 402 src/cairo-pdf-surface.c | 48 ++++++++++++++++++++++++------------------------ 403 1 file changed, 24 insertions(+), 24 deletions(-) 404 405commit 3d22902fa37623a56dee9e4a20d0dc215deabd72 406Author: Adrian Johnson <ajohnson@redneon.com> 407AuthorDate: Sun Apr 6 19:29:25 2008 +0930 408Commit: Adrian Johnson <ajohnson@redneon.com> 409CommitDate: Sun Apr 6 20:38:41 2008 +0930 410 411 Add PDF ref images for the smask tests 412 413 These tests render correctly in acroread 8.1. 414 415 test/Makefile.am | 7 +++++++ 416 test/smask-fill-pdf-ref.png | Bin 0 -> 1075 bytes 417 test/smask-image-mask-pdf-ref.png | Bin 0 -> 421 bytes 418 test/smask-mask-pdf-ref.png | Bin 0 -> 3731 bytes 419 test/smask-paint-pdf-ref.png | Bin 0 -> 3800 bytes 420 test/smask-pdf-ref.png | Bin 0 -> 3800 bytes 421 test/smask-stroke-pdf-ref.png | Bin 0 -> 449 bytes 422 test/smask-text-pdf-ref.png | Bin 0 -> 1806 bytes 423 8 files changed, 7 insertions(+) 424 425commit 688fbc24c38119a505e54a8a2fd0e71e988bf969 426Author: Adrian Johnson <ajohnson@redneon.com> 427AuthorDate: Sun Apr 6 19:04:27 2008 +0930 428Commit: Adrian Johnson <ajohnson@redneon.com> 429CommitDate: Sun Apr 6 20:24:40 2008 +0930 430 431 PDF: Add a function for changing the surface size 432 433 The smask-fill test was failing for PDF output because in some places 434 where the surface size is changed (eg when emitting patterns or 435 smasks) the cairo_to_pdf matrix was not updated. 436 437 Fix this by adding a function to handle the surface size change and 438 replace all the duplicated code for changing surface size with a call 439 to this function. 440 441 src/cairo-pdf-surface.c | 69 +++++++++++++++++++++++-------------------------- 442 1 file changed, 33 insertions(+), 36 deletions(-) 443 444commit 6e5e852f739b63f0325927c70e4d4456c60d0ba9 445Author: Carl Worth <cworth@cworth.org> 446AuthorDate: Sun Apr 6 03:25:58 2008 -0700 447Commit: Carl Worth <cworth@cworth.org> 448CommitDate: Sun Apr 6 03:25:58 2008 -0700 449 450 Increment cairo version to 1.5.19 after the 1.5.18 snapshot 451 452 configure.in | 2 +- 453 1 file changed, 1 insertion(+), 1 deletion(-) 454 455commit 6d6c8aa643603c2b5fd7baedc897d4698ba8bafb 456Author: Carl Worth <cworth@cworth.org> 457AuthorDate: Sun Apr 6 03:11:04 2008 -0700 458Commit: Carl Worth <cworth@cworth.org> 459CommitDate: Sun Apr 6 03:11:04 2008 -0700 460 461 Increment cairo version to 1.5.18 and library versioning to 19:1:17 462 463 configure.in | 4 ++-- 464 1 file changed, 2 insertions(+), 2 deletions(-) 465 466commit 44cd51ada62f831e4fddd363797b3ad4568fb443 467Author: Carl Worth <cworth@cworth.org> 468AuthorDate: Sun Apr 6 03:10:07 2008 -0700 469Commit: Carl Worth <cworth@cworth.org> 470CommitDate: Sun Apr 6 03:10:07 2008 -0700 471 472 NEWS: Add notes for 1.5.18 snapshot 473 474 NEWS | 111 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 475 1 file changed, 111 insertions(+) 476 477commit 3f5ce00e99bcbb17594441301ad0845007d0aedf 478Author: Carl Worth <cworth@cworth.org> 479AuthorDate: Sun Apr 6 03:09:45 2008 -0700 480Commit: Carl Worth <cworth@cworth.org> 481CommitDate: Sun Apr 6 03:09:45 2008 -0700 482 483 Add missing parens() to function name in gtk-doc comment 484 485 src/cairo.c | 2 +- 486 1 file changed, 1 insertion(+), 1 deletion(-) 487 488commit c08e2ba974ad7f5d9343d0d815a00a8e9ad51f81 489Author: Carl Worth <cworth@cworth.org> 490AuthorDate: Sun Apr 6 02:56:19 2008 -0700 491Commit: Carl Worth <cworth@cworth.org> 492CommitDate: Sun Apr 6 02:56:19 2008 -0700 493 494 Document default opaque black source pattern. 495 496 src/cairo.c | 12 +++++++++--- 497 1 file changed, 9 insertions(+), 3 deletions(-) 498 499commit e07e1b7bbbac59ae2ea25ed762c017b477e22cc4 500Author: Carl Worth <cworth@cworth.org> 501AuthorDate: Sun Apr 6 02:47:32 2008 -0700 502Commit: Carl Worth <cworth@cworth.org> 503CommitDate: Sun Apr 6 02:47:32 2008 -0700 504 505 Document many more defaults 506 507 Including: fallback_resolution, fill_rule, line_cap, line_join, 508 miter_limit, font_face, font_size, and operator. 509 510 src/cairo-surface.c | 3 +++ 511 src/cairo.c | 30 ++++++++++++++++++++++++++---- 512 src/cairo.h | 10 +++++++++- 513 3 files changed, 38 insertions(+), 5 deletions(-) 514 515commit a55669c325c341fa6175a193cb0d6fa30b8247c9 516Author: Carl Worth <cworth@cworth.org> 517AuthorDate: Sun Apr 6 02:17:33 2008 -0700 518Commit: Carl Worth <cworth@cworth.org> 519CommitDate: Sun Apr 6 02:17:33 2008 -0700 520 521 Document toy nature of cairo_select_font_face 522 523 src/cairo.c | 32 ++++++++++++++++++++++++++------ 524 1 file changed, 26 insertions(+), 6 deletions(-) 525 526commit d1fe0084405a49f33d4ab6d80e9398e281483900 527Author: Carl Worth <cworth@cworth.org> 528AuthorDate: Sun Apr 6 02:17:09 2008 -0700 529Commit: Carl Worth <cworth@cworth.org> 530CommitDate: Sun Apr 6 02:17:09 2008 -0700 531 532 Document default extend modes 533 534 src/cairo-pattern.c | 3 +++ 535 src/cairo.h | 9 +++++++-- 536 2 files changed, 10 insertions(+), 2 deletions(-) 537 538commit abe6f9541eb1fe10c063540dbffe3499ec8a9d3e 539Author: Carl Worth <cworth@cworth.org> 540AuthorDate: Sun Apr 6 02:01:04 2008 -0700 541Commit: Carl Worth <cworth@cworth.org> 542CommitDate: Sun Apr 6 02:01:04 2008 -0700 543 544 Document EXTEND_REFLECT and EXTEND_PAD as implemented for surfaces since 1.6 545 546 src/cairo.h | 6 +++--- 547 1 file changed, 3 insertions(+), 3 deletions(-) 548 549commit 657b348e0172f3b5f2c91a406c2eca039a790ca1 550Author: Carl Worth <cworth@cworth.org> 551AuthorDate: Sun Apr 6 01:57:45 2008 -0700 552Commit: Carl Worth <cworth@cworth.org> 553CommitDate: Sun Apr 6 01:57:45 2008 -0700 554 555 README: Update dependencies 556 557 README | 139 +++++++++++++++++++++++++++++++++++++++++------------------------ 558 1 file changed, 89 insertions(+), 50 deletions(-) 559 560commit c642a401959c183de2afa3fba2c4206aa0fdbc0c 561Author: Carl Worth <cworth@cworth.org> 562AuthorDate: Sun Apr 6 01:13:17 2008 -0700 563Commit: Carl Worth <cworth@cworth.org> 564CommitDate: Sun Apr 6 01:14:14 2008 -0700 565 566 Revert "[README] Remove the Dependencies section as it falls out of date easily" 567 568 This reverts commit 5f38e215ed4ec930492ee373db37a767d85a6ee8. 569 570 It's true that the dependencies can fall out of date, but it's really 571 unkind to not provide users with this information. I think we can 572 compromise by committing to update this information before major 573 releases. 574 575 README | 89 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 576 1 file changed, 89 insertions(+) 577 578commit b61d1b01e94b3d8daa288b8d5d183f093d989582 579Author: Carl Worth <cworth@cworth.org> 580AuthorDate: Sun Apr 6 01:07:32 2008 -0700 581Commit: Carl Worth <cworth@cworth.org> 582CommitDate: Sun Apr 6 01:07:32 2008 -0700 583 584 Change default filter from BEST to GOOD 585 586 Right now the two filters are implemented identically, so there's 587 no real change for now. But in the future, it's conceivable that an 588 X server could implement some crazy, high-quality filter for BEST 589 without regard to performance, (since that's what BEST means). 590 591 Meanwhile, GOOD actually captures what we want by default which is 592 a good mix of both quality and performance. 593 594 src/cairoint.h | 2 +- 595 1 file changed, 1 insertion(+), 1 deletion(-) 596 597commit 14b056945cef7e016ec07c87725348f3f0649d9f 598Author: Carl Worth <cworth@cworth.org> 599AuthorDate: Sun Apr 6 00:34:59 2008 -0700 600Commit: Carl Worth <cworth@cworth.org> 601CommitDate: Sun Apr 6 00:34:59 2008 -0700 602 603 Update smask-text reference image 604 605 It appears the reference image wasn't generated on a gold-standard 606 machine, (and yes, the gold standard is, *ahem* whatever happens 607 to match what Carl's machine does---eventually we'll make the test- 608 based tests less picky about system configuration like this). 609 610 test/smask-text-ref.png | Bin 1796 -> 1739 bytes 611 1 file changed, 0 insertions(+), 0 deletions(-) 612 613commit 3a89bf4a1dd37852ca603c2ba472de73959dc69a 614Author: Chris Wilson <chris@chris-wilson.co.uk> 615AuthorDate: Sat Apr 5 22:01:24 2008 +0100 616Commit: Chris Wilson <chris@chris-wilson.co.uk> 617CommitDate: Sat Apr 5 22:06:34 2008 +0100 618 619 [test] Remove some redundant evals from the summary. 620 621 In a couple of places we used eval to execute a simple assignment - 622 complete overkill. 623 624 test/Makefile.am | 8 ++++---- 625 1 file changed, 4 insertions(+), 4 deletions(-) 626 627commit fc0a2988cdcbc54292377b00fe9a82b4a7407918 628Author: Chris Wilson <chris@chris-wilson.co.uk> 629AuthorDate: Sat Apr 5 21:58:10 2008 +0100 630Commit: Chris Wilson <chris@chris-wilson.co.uk> 631CommitDate: Sat Apr 5 22:06:34 2008 +0100 632 633 [test] Disable jobserver with make check. 634 635 make -j check has the unfortunate side-effect of performing the summary 636 before the TESTS have completed, both hiding in the stream of test 637 output and making it useless. Forcibly disable the jobserver so that the 638 summary is always last at the expense of not compiling the tests in parallel. 639 640 test/Makefile.am | 4 +++- 641 1 file changed, 3 insertions(+), 1 deletion(-) 642 643commit ae6fbe9e6e153a917f3ae8d733e88303e2816b2b 644Author: Adrian Johnson <ajohnson@redneon.com> 645AuthorDate: Sun Apr 6 01:08:31 2008 +1030 646Commit: Adrian Johnson <ajohnson@redneon.com> 647CommitDate: Sun Apr 6 01:08:31 2008 +1030 648 649 scaled-font-subsets: Special case .notdef in a new subset 650 651 If the .notdef glyph is the first glyph in the subset to be mapped in 652 scaled font, we do not know if the subset will scaled or unscaled. We 653 can put it in the unscaled subset as Type1-fallback will embded an 654 empty glyph if it can not get the path. 655 656 src/cairo-scaled-font-subsets.c | 20 +++++++++++++++----- 657 1 file changed, 15 insertions(+), 5 deletions(-) 658 659commit 0d5902b7167f8cb4bfc96fd813003cd220441151 660Author: Adrian Johnson <ajohnson@redneon.com> 661AuthorDate: Sat Apr 5 23:33:29 2008 +1030 662Commit: Adrian Johnson <ajohnson@redneon.com> 663CommitDate: Sun Apr 6 00:36:02 2008 +1030 664 665 Type1-fallback: Use correct glyph metrics for .notdef glyph 666 667 Bug 15348 references the following PDF that was printing incorrectly 668 when running through poppler and cairo to generate PostScript. 669 670 http://launchpadlibrarian.net/12921700/UbuntuDesktop.pdf 671 672 The PostScript output had too much space between each word causing 673 strings of glyphs printed with the TJ operator to overlap. 674 675 The original PDF file contains an CFF font with CID Identity-H 676 encoding. The PDF file is using character code 0 (glyph 0 due to 677 Identity-H encoding) as a space character. The CFF specification 678 defines glyph 0 to be the .notdef glyph. 679 680 The PS backend subsets CFF fonts as a Type1-fallback 681 font. Type1-fallback creates it's own empty .notdef glyph with an 682 arbitrary glyph advance of 500. The problem here is the TJ operator 683 used to output the glyphs depends on the glyph advance being 684 correct. pdf-operators.c uses the glyph advance returned by 685 _scaled_glyph_init(). However the PostScript interpreter sees the 686 glyph advance of 500 for .notdef. This problem does not occur when 687 generating PDF as the PDF font dictionary contains an list of glyph 688 advances that override the font metrics. 689 690 Fix this by making Type1-fallback not treat .notdef as special and to 691 create it the path and metrics obtained from _scaled_glyph_init(). As 692 a special case, make it not fail if _scaled_glyph_init() is unable to 693 return a path for .notdef. This was probably the reason Type1-fallback 694 previously created it's own .notdef glyph as calling 695 _scaled_glyph_init(_GLYPH_INFO_PATH) for glyph 0 returns 696 CAIRO_INT_STATUS_UNSUPPORTED for some fonts. 697 698 This ensures the Type1-fallback font metrics match the metrics used 699 by pdf-operators.c to position the glyphs. This also results in the 700 removal of some duplicated code. 701 702 src/cairo-type1-fallback.c | 92 +++++++++++++++------------------------------- 703 1 file changed, 29 insertions(+), 63 deletions(-) 704 705commit 03d2b098ff245ff6724b1d83a121f5ce9dcd0b51 706Author: Adrian Johnson <ajohnson@redneon.com> 707AuthorDate: Sat Apr 5 21:15:15 2008 +1030 708Commit: Adrian Johnson <ajohnson@redneon.com> 709CommitDate: Sun Apr 6 00:36:02 2008 +1030 710 711 Type1-fallback: Use correct glyph advance in Type 1 charstrings 712 713 5050c55f93af fixed type1-fallback to use the glyph advance instead of 714 glyph width in the stored glyph metrics in the font. However it did 715 not fix the same bug in Type 2 charstrings (used by CFF fallback in 716 PDF). This problem was not noticed since the glyph widths in the PDF 717 font dictionary overrides these values. 718 719 Fix this in case any software reading cairo PDFs uses these values. 720 721 src/cairo-type1-fallback.c | 2 +- 722 1 file changed, 1 insertion(+), 1 deletion(-) 723 724commit 40cee8c57879d37d77c5a93de8f7bdef28851923 725Author: Adrian Johnson <ajohnson@redneon.com> 726AuthorDate: Sat Apr 5 20:53:39 2008 +1030 727Commit: Adrian Johnson <ajohnson@redneon.com> 728CommitDate: Sun Apr 6 00:36:02 2008 +1030 729 730 Add assert to scaled_glyph_lookup in scaled-font-subsets 731 732 If _cairo_scaled_glyph_lookup() returns CAIRO_INT_STATUS_UNSUPPORTED 733 it will be caught by the ASSERT_NOT_REACHED in 734 _emit_unscaled_font_subset in PS/PDF. It is more useful to catch this 735 closer to the source. 736 737 src/cairo-scaled-font-subsets.c | 1 + 738 1 file changed, 1 insertion(+) 739 740commit 93536bf3ac251d17c4d8630cad93c37b0d4a8326 741Author: Chris Wilson <chris@chris-wilson.co.uk> 742AuthorDate: Sat Apr 5 09:31:22 2008 +0100 743Commit: Chris Wilson <chris@chris-wilson.co.uk> 744CommitDate: Sat Apr 5 09:31:22 2008 +0100 745 746 [test] Summarise failures per backend. 747 748 Enhance the test failure summary to list the tests that failed per 749 backend. 750 751 test/Makefile.am | 12 ++++++++++-- 752 1 file changed, 10 insertions(+), 2 deletions(-) 753 754commit 731e121c802a7b1c3429d1bde7a93bc471d70880 755Author: Carl Worth <cworth@cworth.org> 756AuthorDate: Fri Apr 4 19:00:28 2008 -0700 757Commit: Carl Worth <cworth@cworth.org> 758CommitDate: Fri Apr 4 19:00:28 2008 -0700 759 760 _cairo_pattern_get_extents: Fix to allow for expansion based on filter 761 762 This fixes the filter-bilinear-extents test case and the 763 related bug entry: 764 765 bad clipping with EXTEND_NONE 766 http://bugs.freedesktop.org/show_bug.cgi?id=15349 767 768 Though there are still differences in the PDF and PostScript 769 backends, (primarily because we can't capture cairo's filter 770 modes in those file formats). 771 772 src/cairo-pattern.c | 22 ++++++++++++++++++++++ 773 1 file changed, 22 insertions(+) 774 775commit 04608952e2efb9bffaa131ab39780c3e1a7430ba 776Author: Carl Worth <cworth@cworth.org> 777AuthorDate: Fri Apr 4 18:56:38 2008 -0700 778Commit: Carl Worth <cworth@cworth.org> 779CommitDate: Fri Apr 4 18:56:38 2008 -0700 780 781 Replace open-coded transformation with a call to _cairo_matrix_transform_bounding_box 782 783 It's a wonderful feeiling to remove duplicate code. 784 785 src/cairo-pattern.c | 61 ++++++++++++++++++++++++----------------------------- 786 1 file changed, 27 insertions(+), 34 deletions(-) 787 788commit 89567f9278c002ac5e4e25ddccec88b1b1eea420 789Author: Carl Worth <cworth@cworth.org> 790AuthorDate: Fri Apr 4 18:28:23 2008 -0700 791Commit: Carl Worth <cworth@cworth.org> 792CommitDate: Fri Apr 4 18:28:23 2008 -0700 793 794 Add new filter-bilinear-extents test 795 796 This test exercises code that computes the extents of a surface 797 pattern with CAIRO_FILTER_BILINEAR, (where the filtering 798 effectively increases the extents of the pattern). 799 800 The original bug was reported by Owen Taylor here: 801 802 bad clipping with EXTEND_NONE 803 http://bugs.freedesktop.org/show_bug.cgi?id=15349 804 805 test/.gitignore | 1 + 806 test/Makefile.am | 2 + 807 test/filter-bilinear-extents-ref.png | Bin 0 -> 1340 bytes 808 test/filter-bilinear-extents.c | 91 +++++++++++++++++++++++++++++++++++ 809 4 files changed, 94 insertions(+) 810 811commit 80f7aa03b35921a96683a0442f885c4b8335f3d9 812Author: Carl Worth <cworth@cworth.org> 813AuthorDate: Fri Apr 4 11:29:47 2008 -0700 814Commit: Carl Worth <cworth@cworth.org> 815CommitDate: Fri Apr 4 11:30:16 2008 -0700 816 817 Enable buggy_repeat workaround for X.Org servers < 1.4 818 819 This covers the known-to-broken 1.3 servers such as appeared 820 in Fedora 8. It also leaves the workaround off, (since it's 821 a severe slowdown), for the known-to-be-working 1.4.99.901 822 server as appears in Fedora 9 Betas. 823 824 src/cairo-xlib-display.c | 11 +++++++++++ 825 1 file changed, 11 insertions(+) 826 827commit 2c8ead12a64d0deff4dc9e32c60f2815fe7c4a63 828Author: Chris Wilson <chris@chris-wilson.co.uk> 829AuthorDate: Fri Apr 4 17:46:54 2008 +0100 830Commit: Chris Wilson <chris@chris-wilson.co.uk> 831CommitDate: Fri Apr 4 18:08:25 2008 +0100 832 833 [xlib] Avoiding sending glyphs > XMaxRequestSize. 834 835 XRenderAddGlyph() does not split its image data across multiple requests 836 and so the glyph surface must be smaller than XMaxRequestSize or else 837 the server will disconnect the client, causing "Fatal IO error 104". 838 As this will require an extension to the XRender spec, we can work 839 around the issue by using our fallbacks if we detect that the glyph will 840 be too large for a single request. 841 842 See bugs https://bugs.freedesktop.org/show_bug.cgi?id=4339 and 843 http://bugs.freedesktop.org/show_bug.cgi?id=13266 for examples. 844 845 src/cairo-xlib-surface.c | 14 ++++++++++++++ 846 1 file changed, 14 insertions(+) 847 848commit a4f94624b2f4a85bafbc2dc01b08788a7a88deba 849Author: Chris Wilson <chris@chris-wilson.co.uk> 850AuthorDate: Fri Apr 4 15:56:22 2008 +0100 851Commit: Chris Wilson <chris@chris-wilson.co.uk> 852CommitDate: Fri Apr 4 15:56:22 2008 +0100 853 854 [test] Add bilevel image test case. 855 856 Add a simple test to exercise the embedding of an image with a bilevel 857 alpha channel into a postscript level 3 document. 858 859 test/.gitignore | 1 + 860 test/Makefile.am | 2 ++ 861 test/bilevel-image-ref.png | Bin 0 -> 131 bytes 862 test/bilevel-image.c | 68 +++++++++++++++++++++++++++++++++++++++++++++ 863 4 files changed, 71 insertions(+) 864 865commit f72799a2520feb7ed04fd14e53db59fe697a58d1 866Author: Chris Wilson <chris@chris-wilson.co.uk> 867AuthorDate: Fri Apr 4 14:15:58 2008 +0100 868Commit: Chris Wilson <chris@chris-wilson.co.uk> 869CommitDate: Fri Apr 4 14:22:18 2008 +0100 870 871 [configure.in] Add a link to the LTP homepage. 872 873 If ./configure --enable-gcov fails due to a missing LTP package, then 874 include a link to LTP homepage in the error message. 875 876 configure.in | 15 ++++++++------- 877 1 file changed, 8 insertions(+), 7 deletions(-) 878 879commit c0593d16c7f2ca9c1ba4d05b6cbf3cf9c2f0524b 880Author: Chris Wilson <chris@chris-wilson.co.uk> 881AuthorDate: Fri Apr 4 12:53:13 2008 +0100 882Commit: Chris Wilson <chris@chris-wilson.co.uk> 883CommitDate: Fri Apr 4 13:40:46 2008 +0100 884 885 [pdf] Copy the glyphs for use within an smask group. 886 887 When constructing an smask group using PDF_SHOW_GLYPHS, we need a copy 888 of the glyphs else they'll be freed be we use them (in _show_page()). 889 890 src/cairo-pdf-surface.c | 9 ++++++++- 891 1 file changed, 8 insertions(+), 1 deletion(-) 892 893commit a74db7e7bc092533d244123ea2ae272edf3f5d8f 894Author: Chris Wilson <chris@chris-wilson.co.uk> 895AuthorDate: Fri Apr 4 12:34:40 2008 +0100 896Commit: Chris Wilson <chris@chris-wilson.co.uk> 897CommitDate: Fri Apr 4 13:40:37 2008 +0100 898 899 [test] Exercise "soft" masks. 900 901 PDF has a concept of "soft" masks, for which it is able to construct a 902 mask out of PDF drawing operations. These tests exercise constructing 903 various masks using the high level drawing operations. 904 905 test/.gitignore | 7 +++ 906 test/Makefile.am | 14 +++++ 907 test/smask-fill-ref.png | Bin 0 -> 1223 bytes 908 test/smask-fill.c | 83 +++++++++++++++++++++++++++ 909 test/smask-image-mask-ref.png | Bin 0 -> 643 bytes 910 test/smask-image-mask.c | 92 ++++++++++++++++++++++++++++++ 911 test/smask-mask-ref.png | Bin 0 -> 2523 bytes 912 test/smask-mask.c | 107 ++++++++++++++++++++++++++++++++++ 913 test/smask-paint-ref.png | Bin 0 -> 2639 bytes 914 test/smask-paint.c | 90 +++++++++++++++++++++++++++++ 915 test/smask-ref.png | Bin 0 -> 3587 bytes 916 test/smask-stroke-ref.png | Bin 0 -> 1845 bytes 917 test/smask-stroke.c | 83 +++++++++++++++++++++++++++ 918 test/smask-text-ref.png | Bin 0 -> 1796 bytes 919 test/smask-text.c | 92 ++++++++++++++++++++++++++++++ 920 test/smask.c | 130 ++++++++++++++++++++++++++++++++++++++++++ 921 16 files changed, 698 insertions(+) 922 923commit 2d42f5ac27494f2bfd75e7bba42fd36783e053eb 924Author: Adrian Johnson <ajohnson@redneon.com> 925AuthorDate: Fri Apr 4 20:29:12 2008 +1030 926Commit: Adrian Johnson <ajohnson@redneon.com> 927CommitDate: Fri Apr 4 20:29:12 2008 +1030 928 929 TrueType: Fix buffer check 930 931 bb76eb50 added some checks to ensure we do not read past the end of 932 the buffer for the loaded glyph. However the checks assumed 933 tt_composite_glyph_t has a fixed size. tt_composite_glyph_t has a 934 variable size that depends on the values with the struct. 935 936 src/cairo-truetype-subset.c | 16 ++++++++-------- 937 1 file changed, 8 insertions(+), 8 deletions(-) 938 939commit 7dbb2dec33bb91b3d89a8072283297025817d0c6 940Author: Adrian Johnson <ajohnson@redneon.com> 941AuthorDate: Fri Apr 4 19:48:55 2008 +1030 942Commit: Adrian Johnson <ajohnson@redneon.com> 943CommitDate: Fri Apr 4 19:48:55 2008 +1030 944 945 TrueType: Remove assert 946 947 If the status is UNSUPPORTED we should let type1-fallback subset it. 948 949 src/cairo-truetype-subset.c | 3 ++- 950 1 file changed, 2 insertions(+), 1 deletion(-) 951 952commit 6192001816053403b8e51fc2aa44cf6d0a9baece 953Author: Adrian Johnson <ajohnson@redneon.com> 954AuthorDate: Fri Apr 4 19:26:00 2008 +1030 955Commit: Adrian Johnson <ajohnson@redneon.com> 956CommitDate: Fri Apr 4 19:26:36 2008 +1030 957 958 Add PS reference image for ft-show-glyphs-table 959 960 test/Makefile.am | 1 + 961 test/ft-show-glyphs-table-ps-ref.png | Bin 0 -> 5687 bytes 962 2 files changed, 1 insertion(+) 963 964commit e50324d3cc66df83120f908845657382e0020868 965Author: Adrian Johnson <ajohnson@redneon.com> 966AuthorDate: Fri Apr 4 19:21:40 2008 +1030 967Commit: Adrian Johnson <ajohnson@redneon.com> 968CommitDate: Fri Apr 4 19:26:36 2008 +1030 969 970 PS: Fix emulation of 'Td' pdf operator 971 972 src/cairo-ps-surface.c | 3 ++- 973 1 file changed, 2 insertions(+), 1 deletion(-) 974 975commit 759793cad1459c2b70daa6adb3deb7af5fe705aa 976Author: Chris Wilson <chris@chris-wilson.co.uk> 977AuthorDate: Fri Apr 4 09:43:32 2008 +0100 978Commit: Chris Wilson <chris@chris-wilson.co.uk> 979CommitDate: Fri Apr 4 09:49:34 2008 +0100 980 981 Add links to the font specifications. 982 983 Add links to specifications for the Type1, CFF, and TrueType font file 984 formats, provided by Adrian Johnson. 985 986 src/cairo-cff-subset.c | 5 +++++ 987 src/cairo-truetype-subset.c | 6 ++++++ 988 src/cairo-type1-subset.c | 5 +++++ 989 3 files changed, 16 insertions(+) 990 991commit 8a78760f15c29c72e6a945b2157fd214e8045e1e 992Author: Carl Worth <cworth@cworth.org> 993AuthorDate: Thu Apr 3 17:12:14 2008 -0700 994Commit: Carl Worth <cworth@cworth.org> 995CommitDate: Thu Apr 3 17:12:14 2008 -0700 996 997 Add new ft-show-glyphs-table test to exercise recent glyph positioning bug fix 998 999 Interestingly, this test case does demonstrate that cairo-pdf 1000 is fixed, (where without commit f6509933a4e0 the Y positions 1001 of the glyphs were inverted); however, cairo-ps is failing 1002 with this test, (all the glyphs are ending up on top of each 1003 other). 1004 1005 test/.gitignore | 1 + 1006 test/Makefile.am | 2 + 1007 test/ft-show-glyphs-table-ref.png | Bin 0 -> 11439 bytes 1008 test/ft-show-glyphs-table.c | 116 ++++++++++++++++++++++++++++++++++++++ 1009 4 files changed, 119 insertions(+) 1010 1011commit f6509933a4e0abde3b7bca861f65e433b7e8dcf0 1012Author: Adrian Johnson <ajohnson@redneon.com> 1013AuthorDate: Fri Apr 4 08:41:08 2008 +1030 1014Commit: Adrian Johnson <ajohnson@redneon.com> 1015CommitDate: Fri Apr 4 08:41:08 2008 +1030 1016 1017 PDF: Fix glyph positioning bug 1018 1019 src/cairo-pdf-operators.c | 2 +- 1020 1 file changed, 1 insertion(+), 1 deletion(-) 1021 1022commit bb76eb508b2d97a4455393a12540ceb7427bc271 1023Author: Chris Wilson <chris@chris-wilson.co.uk> 1024AuthorDate: Thu Apr 3 18:36:16 2008 +0100 1025Commit: Chris Wilson <chris@chris-wilson.co.uk> 1026CommitDate: Thu Apr 3 18:36:16 2008 +0100 1027 1028 [cairo-truetype-subset] Check reads are within valid data. 1029 1030 Check cairo_truetype_font_remap_composite_glyph() does not read beyond 1031 the end of the buffer loaded for the glyf. 1032 1033 src/cairo-truetype-subset.c | 16 ++++++++++++---- 1034 1 file changed, 12 insertions(+), 4 deletions(-) 1035 1036commit a5e2a2ad2d03c217b9b27c537ee6a945bdc98a44 1037Author: Chris Wilson <chris@chris-wilson.co.uk> 1038AuthorDate: Thu Apr 3 18:24:00 2008 +0100 1039Commit: Chris Wilson <chris@chris-wilson.co.uk> 1040CommitDate: Thu Apr 3 18:35:57 2008 +0100 1041 1042 [cairo-truetype-subset] Prevent accesses beyond the end of the glyph array. 1043 1044 Reject the font if we try to remap a composite glyph that exists outside 1045 the known set of glyphs. 1046 1047 src/cairo-truetype-subset.c | 43 ++++++++++++++++++++++++++++++------------- 1048 1 file changed, 30 insertions(+), 13 deletions(-) 1049 1050commit 13cdfed894d48b30e28296c3a27c8361bf5506fb 1051Author: Chris Wilson <chris@chris-wilson.co.uk> 1052AuthorDate: Thu Apr 3 17:43:37 2008 +0100 1053Commit: Chris Wilson <chris@chris-wilson.co.uk> 1054CommitDate: Thu Apr 3 17:43:37 2008 +0100 1055 1056 [cairo-truetype-subset] Perform a quick sanity check that glyf end >= begin. 1057 1058 Check for a bogus glyf position and prevent an integer overflow. 1059 1060 src/cairo-truetype-subset.c | 6 ++++++ 1061 1 file changed, 6 insertions(+) 1062 1063commit cfff3c3bd04df5257176d9e43add52fc6daba329 1064Author: Chris Wilson <chris@chris-wilson.co.uk> 1065AuthorDate: Thu Apr 3 17:23:48 2008 +0100 1066Commit: Chris Wilson <chris@chris-wilson.co.uk> 1067CommitDate: Thu Apr 3 17:36:50 2008 +0100 1068 1069 [cairo-array] Guard against integer overflow whilst growing the array. 1070 1071 Sanity check the arguments to _cairo_array_grow_by() such that the 1072 array size does not overflow, similar to the defensive checking of 1073 parameters to malloc. 1074 1075 src/cairo-array.c | 12 ++++++++---- 1076 src/cairoint.h | 2 +- 1077 2 files changed, 9 insertions(+), 5 deletions(-) 1078 1079commit 6101dc3e93b20294c75734d7f29e55694ed58e74 1080Author: Chris Wilson <chris@chris-wilson.co.uk> 1081AuthorDate: Thu Apr 3 14:53:17 2008 +0100 1082Commit: Chris Wilson <chris@chris-wilson.co.uk> 1083CommitDate: Thu Apr 3 15:41:31 2008 +0100 1084 1085 [cairo-pdf-surface] Do not bitswap big-endian A1 masks. 1086 1087 Pixman stores the bits A1 surfaces in native byte order, PDF stores 1088 A1 masks in MSb - so only perform swapping for little-endian machines. 1089 1090 Note this also removes the extraneous packing as per the PDF spec 4.8.2: 1091 "Byte boundaries are ignored, except that each row of sample data must 1092 begin on a byte boundary. If the number of data bits per row is not a 1093 multiple of 8, the end of the row is padded with extra bits to fill out 1094 the last byte." 1095 1096 src/cairo-pdf-surface.c | 30 +++++++----------------------- 1097 1 file changed, 7 insertions(+), 23 deletions(-) 1098 1099commit 7901eb29efb04e469f4bf94e2da6fd6b79b140b0 1100Author: Chris Wilson <chris@chris-wilson.co.uk> 1101AuthorDate: Thu Apr 3 12:12:25 2008 +0100 1102Commit: Chris Wilson <chris@chris-wilson.co.uk> 1103CommitDate: Thu Apr 3 15:41:31 2008 +0100 1104 1105 [test] Add a1-mask. 1106 1107 Add a variant of the a8-mask test case that exercises the FORMAT_A1 code 1108 paths instead. 1109 1110 test/.gitignore | 1 + 1111 test/Makefile.am | 2 + 1112 test/a1-mask-ref.png | Bin 0 -> 131 bytes 1113 test/a1-mask.c | 198 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1114 4 files changed, 201 insertions(+) 1115 1116commit 5aa5aeb1f56493cf7a6bafd22c6921d8415db64e 1117Author: Chris Wilson <chris@chris-wilson.co.uk> 1118AuthorDate: Thu Apr 3 12:09:03 2008 +0100 1119Commit: Chris Wilson <chris@chris-wilson.co.uk> 1120CommitDate: Thu Apr 3 15:41:31 2008 +0100 1121 1122 [cairo-font-face] Cleanup up the font_face on the error path. 1123 1124 A missing _cairo_toy_font_face_fini() was leaking the strdup(family). 1125 1126 src/cairo-font-face.c | 1 + 1127 1 file changed, 1 insertion(+) 1128 1129commit 048160d44c564b0265b2e740b13d6ed3b367661d 1130Author: Chris Wilson <chris@chris-wilson.co.uk> 1131AuthorDate: Thu Apr 3 12:11:44 2008 +0100 1132Commit: Chris Wilson <chris@chris-wilson.co.uk> 1133CommitDate: Thu Apr 3 15:41:31 2008 +0100 1134 1135 [.gitignore] Add test/stroke-image 1136 1137 test/.gitignore | 1 + 1138 1 file changed, 1 insertion(+) 1139 1140commit 9e749d0a287b8038d8a8524ed74626b2d3071538 1141Author: Vladimir Vukicevic <vladimir@pobox.com> 1142AuthorDate: Wed Apr 2 23:37:24 2008 -0700 1143Commit: Vladimir Vukicevic <vladimir@sleet.vlad1.com> 1144CommitDate: Wed Apr 2 23:37:24 2008 -0700 1145 1146 [cgfont] typo fix 1147 1148 src/cairo-quartz-font.c | 2 +- 1149 1 file changed, 1 insertion(+), 1 deletion(-) 1150 1151commit 3f9b1ceac78976f34a18b551eec376c07db40775 1152Author: Vladimir Vukicevic <vladimir@pobox.com> 1153AuthorDate: Wed Apr 2 16:13:53 2008 -0700 1154Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 1155CommitDate: Wed Apr 2 16:14:09 2008 -0700 1156 1157 [cgfont] Implement missing scaled font metrics 1158 1159 src/cairo-quartz-font.c | 74 +++++++++++++++++++++++++++++++++++++++++++++++-- 1160 1 file changed, 71 insertions(+), 3 deletions(-) 1161 1162commit eb3eb0252b13b3d2a3b6acfd13306ff3c6b0506e 1163Author: Chris Wilson <chris@chris-wilson.co.uk> 1164AuthorDate: Wed Apr 2 14:53:25 2008 +0100 1165Commit: Chris Wilson <chris@chris-wilson.co.uk> 1166CommitDate: Wed Apr 2 17:33:30 2008 +0100 1167 1168 [cairo-xlib-surface] Avoid writing to the error surface. 1169 1170 Insert status checks during construction of temporary glyph surfaces 1171 to avoid potentially writing to the inert error object. 1172 1173 src/cairo-xlib-surface.c | 16 ++++++++-------- 1174 1 file changed, 8 insertions(+), 8 deletions(-) 1175 1176commit c1062bf20ab60f6335be0814de245616a8d24bd2 1177Author: Chris Wilson <chris@chris-wilson.co.uk> 1178AuthorDate: Wed Apr 2 10:43:39 2008 +0100 1179Commit: Chris Wilson <chris@chris-wilson.co.uk> 1180CommitDate: Wed Apr 2 10:50:48 2008 +0100 1181 1182 [cairo-xlib-surface] Preserve Visuals for non-TrueColor similar surfaces. 1183 1184 Previously, given a valid XRenderFormat the Visual was discarded 1185 when creating similar surfaces. However the original Visual is 1186 required to support reading back from non-TrueColor surfaces. 1187 1188 src/cairo-xlib-surface.c | 32 ++++++++++++++++++++------------ 1189 1 file changed, 20 insertions(+), 12 deletions(-) 1190 1191commit b3a70629f8d1f5d7c23f4369d3395af73318eb28 1192Author: Chris Wilson <chris@chris-wilson.co.uk> 1193AuthorDate: Wed Apr 2 09:19:11 2008 +0100 1194Commit: Chris Wilson <chris@chris-wilson.co.uk> 1195CommitDate: Wed Apr 2 10:50:48 2008 +0100 1196 1197 [test/text-transform] Fix pattern leak. 1198 1199 Add missing cairo_pattern_destroy. 1200 1201 test/text-transform.c | 10 ++++------ 1202 1 file changed, 4 insertions(+), 6 deletions(-) 1203 1204commit 37c69c0d54c4b77c96497db4d6633558d4e1300d 1205Author: Chris Wilson <chris@chris-wilson.co.uk> 1206AuthorDate: Mon Mar 31 21:49:34 2008 +0100 1207Commit: Chris Wilson <chris@chris-wilson.co.uk> 1208CommitDate: Wed Apr 2 10:50:48 2008 +0100 1209 1210 [cairo-xlib] Handle malloc failures for cairo_xlib_visual_info_t. 1211 1212 Tidy the error paths whilst handling visuals, in particular avoiding a 1213 couple of potential NULL deferences, missed status checks and fresh 1214 leaks. 1215 1216 src/cairo-xlib-private.h | 15 ++++++++++---- 1217 src/cairo-xlib-screen.c | 52 +++++++++++++++++++++++++++++++++--------------- 1218 src/cairo-xlib-surface.c | 30 +++++++++++++++++++--------- 1219 src/cairo-xlib-visual.c | 19 ++++++++++++++---- 1220 4 files changed, 83 insertions(+), 33 deletions(-) 1221 1222commit 0cd42c25a6f4be1ff27ed3a9ba7fa9a91d076e0d 1223Author: Chris Wilson <chris@chris-wilson.co.uk> 1224AuthorDate: Mon Mar 31 19:15:48 2008 +0100 1225Commit: Chris Wilson <chris@chris-wilson.co.uk> 1226CommitDate: Wed Apr 2 10:50:47 2008 +0100 1227 1228 [cairo-svg-surface] Check surface status before extracting the svg target. 1229 1230 We need to check and report the existent status, else we may try to 1231 modify the inert error object. 1232 1233 src/cairo-svg-surface.c | 5 +++++ 1234 1 file changed, 5 insertions(+) 1235 1236commit 013bbda6373d84d39e080c5e0b305581a2c6919c 1237Author: Chris Wilson <chris@chris-wilson.co.uk> 1238AuthorDate: Mon Mar 31 19:15:16 2008 +0100 1239Commit: Chris Wilson <chris@chris-wilson.co.uk> 1240CommitDate: Wed Apr 2 10:50:47 2008 +0100 1241 1242 [cairo-ps-surface] Check surface status before extracting the ps target. 1243 1244 We need to check and report the existent status, else we may try to 1245 modify the inert error object. 1246 1247 src/cairo-ps-surface.c | 5 +++++ 1248 1 file changed, 5 insertions(+) 1249 1250commit cebb1eef431a38c7c3a96ae60a5bee188f41dc0b 1251Author: Chris Wilson <chris@chris-wilson.co.uk> 1252AuthorDate: Mon Mar 31 19:09:21 2008 +0100 1253Commit: Chris Wilson <chris@chris-wilson.co.uk> 1254CommitDate: Wed Apr 2 10:50:47 2008 +0100 1255 1256 [cairo-svg-surface] Missing status check. 1257 1258 Check and, if necessary, propagate the error status - do not allow the 1259 status to be overwritten, potentially masking the original error. 1260 1261 src/cairo-svg-surface.c | 3 +++ 1262 1 file changed, 3 insertions(+) 1263 1264commit 94db91b65ef42228c963f2d6d82da085f9148895 1265Author: Chris Wilson <chris@chris-wilson.co.uk> 1266AuthorDate: Mon Mar 31 15:47:45 2008 +0100 1267Commit: Chris Wilson <chris@chris-wilson.co.uk> 1268CommitDate: Wed Apr 2 10:50:47 2008 +0100 1269 1270 [cairo-pdf-surface] Do not mask error during cleanup. 1271 1272 Be careful to preserve the original error status whilst on the common 1273 cleanup path for _cairo_pdf_surface_emit_meta_surface(). 1274 1275 src/cairo-pdf-surface.c | 8 ++++---- 1276 1 file changed, 4 insertions(+), 4 deletions(-) 1277 1278commit 3580b99a8f99db207b54529f5ac7d0e4325cc123 1279Author: Chris Wilson <chris@chris-wilson.co.uk> 1280AuthorDate: Mon Mar 31 14:25:17 2008 +0100 1281Commit: Chris Wilson <chris@chris-wilson.co.uk> 1282CommitDate: Wed Apr 2 10:50:47 2008 +0100 1283 1284 [cairo-pdf-surface] Check surface status before extracting the pdf target. 1285 1286 We need to check and report the existent status, else we may try to 1287 modify the inert error object. 1288 1289 src/cairo-pdf-surface.c | 5 +++++ 1290 1 file changed, 5 insertions(+) 1291 1292commit 34d734365bdc1c02cf1880804ab15af48c8d03e1 1293Author: Chris Wilson <chris@chris-wilson.co.uk> 1294AuthorDate: Mon Mar 31 11:27:10 2008 +0100 1295Commit: Chris Wilson <chris@chris-wilson.co.uk> 1296CommitDate: Wed Apr 2 10:50:47 2008 +0100 1297 1298 [cairo-svg-surface] Release acquired surface on error path. 1299 1300 Ensure the surface returned from _cairo_pattern_acquire_surface() is 1301 released on the error path. 1302 1303 src/cairo-svg-surface.c | 5 +++-- 1304 1 file changed, 3 insertions(+), 2 deletions(-) 1305 1306commit ba2e82d138eecb451c3d0bf53d9c349fb560f039 1307Author: Chris Wilson <chris@chris-wilson.co.uk> 1308AuthorDate: Mon Mar 31 10:55:39 2008 +0100 1309Commit: Chris Wilson <chris@chris-wilson.co.uk> 1310CommitDate: Wed Apr 2 10:50:47 2008 +0100 1311 1312 [cairo-ps-surface] Check error status before potential illegal dereference. 1313 1314 After acquiring the source image, check for the error status to ensure 1315 that we do not attempt to deference an invalid surface. 1316 1317 src/cairo-ps-surface.c | 8 +++++++- 1318 1 file changed, 7 insertions(+), 1 deletion(-) 1319 1320commit 767add1ee356660075aaf02283f62a23ef9bcb24 1321Author: Chris Wilson <chris@chris-wilson.co.uk> 1322AuthorDate: Fri Mar 28 11:51:13 2008 +0000 1323Commit: Chris Wilson <chris@chris-wilson.co.uk> 1324CommitDate: Wed Apr 2 10:50:47 2008 +0100 1325 1326 [cairo-pdf-operators] Destroy stream on error. 1327 1328 We cannot guarantee that a newly created error stream is a static error 1329 object, so we need to always destroy the stream on the error path. (One 1330 day this may change with the global pool of error objects...) 1331 1332 src/cairo-pdf-operators.c | 6 +++--- 1333 1 file changed, 3 insertions(+), 3 deletions(-) 1334 1335commit 2f06284ad6154d1f5fac1a195edbcbc9ed3432cb 1336Author: Carl Worth <cworth@cworth.org> 1337AuthorDate: Tue Apr 1 16:07:22 2008 -0700 1338Commit: Carl Worth <cworth@cworth.org> 1339CommitDate: Tue Apr 1 16:07:22 2008 -0700 1340 1341 Increment cairo version to 1.5.17 after 1.5.16 snapshot 1342 1343 configure.in | 2 +- 1344 1 file changed, 1 insertion(+), 1 deletion(-) 1345 1346commit 5366c8f483dc7bd40b5d0a184c9b16826007c032 1347Author: Carl Worth <cworth@cworth.org> 1348AuthorDate: Tue Apr 1 15:52:41 2008 -0700 1349Commit: Carl Worth <cworth@cworth.org> 1350CommitDate: Tue Apr 1 15:52:41 2008 -0700 1351 1352 Increment version to 1.5.16 and library versioning to 19:0:17 1353 1354 configure.in | 8 ++++---- 1355 1 file changed, 4 insertions(+), 4 deletions(-) 1356 1357commit eb6721f4ccc6ac861e16ec21c7b420645c4f572b 1358Author: Carl Worth <cworth@cworth.org> 1359AuthorDate: Tue Apr 1 15:51:57 2008 -0700 1360Commit: Carl Worth <cworth@cworth.org> 1361CommitDate: Tue Apr 1 15:51:57 2008 -0700 1362 1363 NEWS: Add notes for the cairo 1.5.16 snapshot 1364 1365 NEWS | 109 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1366 1 file changed, 109 insertions(+) 1367 1368commit 8707892b218cb79ef544ba396d4501827b900c32 1369Author: Carl Worth <cworth@cworth.org> 1370AuthorDate: Tue Apr 1 15:40:54 2008 -0700 1371Commit: Carl Worth <cworth@cworth.org> 1372CommitDate: Tue Apr 1 15:40:54 2008 -0700 1373 1374 Doc SGML template churn 1375 1376 doc/public/tmpl/cairo-ft.sgml | 7 +++++++ 1377 doc/public/tmpl/cairo-xlib.sgml | 7 +++++++ 1378 2 files changed, 14 insertions(+) 1379 1380commit 5d0b2ede52eb6d05a7d5579e6bcd1d4d1850300c 1381Author: Carl Worth <cworth@cworth.org> 1382AuthorDate: Tue Apr 1 15:24:48 2008 -0700 1383Commit: Carl Worth <cworth@cworth.org> 1384CommitDate: Tue Apr 1 15:24:48 2008 -0700 1385 1386 Mark cairo-quartz as officially supported 1387 1388 An especial thanks to Vladimir Vukicevic and the Mozilla 1389 Foundation for a tremendous amount of work on cairo-quartz 1390 while it has been marked as "experimental" 1391 1392 configure.in | 6 +----- 1393 1 file changed, 1 insertion(+), 5 deletions(-) 1394 1395commit 07130a9061b012bb5c206dc547b4cc0cc69dcbf1 1396Author: Carl Worth <cworth@cworth.org> 1397AuthorDate: Tue Apr 1 15:20:42 2008 -0700 1398Commit: Carl Worth <cworth@cworth.org> 1399CommitDate: Tue Apr 1 15:20:42 2008 -0700 1400 1401 Include cairoint.h first to satisfy the test suite 1402 1403 Forgetting to include cairoint.h (or not including it first) can 1404 cause some subtle bugs due to specific feature flags not being 1405 set, etc. 1406 1407 src/cairo-quartz-font.c | 4 ++-- 1408 1 file changed, 2 insertions(+), 2 deletions(-) 1409 1410commit 46ea00d829bc50ab5316d2257e0d1ed1d8e3f4b6 1411Author: Carl Worth <cworth@cworth.org> 1412AuthorDate: Tue Apr 1 14:53:55 2008 -0700 1413Commit: Carl Worth <cworth@cworth.org> 1414CommitDate: Tue Apr 1 14:53:55 2008 -0700 1415 1416 More quieting of subtle potentially-uninitialized warnings 1417 1418 The compiler isn't clever enough to notice that these 1419 variables are always initialized (in either the TrueColor 1420 or ! TrueColor conditions corresponding to the later 1421 identical conditions in which the variables are used). 1422 1423 src/cairo-xlib-surface.c | 14 +++++++------- 1424 1 file changed, 7 insertions(+), 7 deletions(-) 1425 1426commit 1489e66d250c070c46cb42a1db9ea9f447f464b9 1427Author: Carl Worth <cworth@cworth.org> 1428AuthorDate: Tue Apr 1 14:49:03 2008 -0700 1429Commit: Carl Worth <cworth@cworth.org> 1430CommitDate: Tue Apr 1 14:49:03 2008 -0700 1431 1432 Quiet a more subtle potentially-uninitialized warning 1433 1434 The compiler isn't clever enough to notice that these 1435 variables are always initialized. 1436 1437 src/cairo-rectangle.c | 2 +- 1438 1 file changed, 1 insertion(+), 1 deletion(-) 1439 1440commit afc6e3b69dcadc63b1dd26a6d67a7da20d7397fe 1441Author: Carl Worth <cworth@cworth.org> 1442AuthorDate: Tue Apr 1 14:40:18 2008 -0700 1443Commit: Carl Worth <cworth@cworth.org> 1444CommitDate: Tue Apr 1 14:40:18 2008 -0700 1445 1446 Quiet some trivial unused and potentially-uninitialized compiler warnings 1447 1448 src/cairo-gstate.c | 2 +- 1449 src/cairo-hull.c | 2 +- 1450 src/cairo-ps-surface.c | 2 +- 1451 src/cairo-xlib-visual.c | 2 +- 1452 4 files changed, 4 insertions(+), 4 deletions(-) 1453 1454commit d09b0394d59b50ffd3ea8e58f9f57ea4717de754 1455Author: Carl Worth <cworth@cworth.org> 1456AuthorDate: Mon Mar 31 16:50:24 2008 -0700 1457Commit: Carl Worth <cworth@cworth.org> 1458CommitDate: Tue Apr 1 14:11:08 2008 -0700 1459 1460 Add some reference images that were missing from the distribution list 1461 1462 test/Makefile.am | 10 ++++++++++ 1463 1 file changed, 10 insertions(+) 1464 1465commit 56800e6ea0f7153e44f0cba14c89c4239067a60e 1466Author: Vladimir Vukicevic <vladimir@pobox.com> 1467AuthorDate: Tue Apr 1 13:28:03 2008 -0700 1468Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 1469CommitDate: Tue Apr 1 13:28:03 2008 -0700 1470 1471 [quartz] Remove cairo-atsui-font.c 1472 1473 src/cairo-atsui-font.c | 1028 ------------------------------------------------ 1474 1 file changed, 1028 deletions(-) 1475 1476commit 8ddae11b544c35057a96ca0bdea34b4f473ee261 1477Author: Vladimir Vukicevic <vladimir@pobox.com> 1478AuthorDate: Tue Apr 1 13:26:00 2008 -0700 1479Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 1480CommitDate: Tue Apr 1 13:26:00 2008 -0700 1481 1482 [quartz] Update documentation 1483 1484 doc/public/tmpl/cairo-ft.sgml | 8 -------- 1485 doc/public/tmpl/cairo-quartz-fonts.sgml | 25 +++++++++++++++++++++++++ 1486 doc/public/tmpl/cairo-quartz.sgml | 25 +++++++------------------ 1487 doc/public/tmpl/cairo-xlib.sgml | 8 -------- 1488 src/cairo-quartz-font.c | 14 ++++++++++++-- 1489 src/cairo-quartz-surface.c | 18 ++++++++---------- 1490 6 files changed, 52 insertions(+), 46 deletions(-) 1491 1492commit 9a7162cfdf48f47bb8ee0a7c24c55c061e4fbc90 1493Author: Vladimir Vukicevic <vladimir@pobox.com> 1494AuthorDate: Tue Apr 1 13:17:14 2008 -0700 1495Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 1496CommitDate: Tue Apr 1 13:17:14 2008 -0700 1497 1498 [doc] Add some Quartz/CGFont documentation templates 1499 1500 doc/public/cairo-docs.xml | 1 + 1501 doc/public/cairo-sections.txt | 14 ++++++++++++++ 1502 doc/public/tmpl/cairo-quartz-fonts.sgml | 23 +++++++++++++++++++++++ 1503 3 files changed, 38 insertions(+) 1504 1505commit 56cabc352e44ee7cb2989dd81688f6c37c33fc21 1506Author: Vladimir Vukicevic <vladimir@pobox.com> 1507AuthorDate: Tue Apr 1 13:01:41 2008 -0700 1508Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 1509CommitDate: Tue Apr 1 13:04:08 2008 -0700 1510 1511 [quartz] Update Quartz test reference images 1512 1513 test/Makefile.am | 3 +++ 1514 test/clip-operator-quartz-ref.png | Bin 9364 -> 9539 bytes 1515 test/clip-operator-quartz-rgb24-ref.png | Bin 4359 -> 4412 bytes 1516 test/font-matrix-translation-quartz-ref.png | Bin 1041 -> 1090 bytes 1517 test/glyph-cache-pressure-quartz-ref.png | Bin 3491 -> 3654 bytes 1518 test/linear-gradient-reflect-quartz-ref.png | Bin 0 -> 878 bytes 1519 test/operator-clear-quartz-ref.png | Bin 1368 -> 1459 bytes 1520 test/operator-clear-quartz-rgb24-ref.png | Bin 1201 -> 1293 bytes 1521 test/operator-source-quartz-ref.png | Bin 4572 -> 4637 bytes 1522 test/operator-source-quartz-rgb24-ref.png | Bin 3452 -> 3533 bytes 1523 test/select-font-face-quartz-ref.png | Bin 2958 -> 2970 bytes 1524 test/show-text-current-point-quartz-ref.png | Bin 3198 -> 3093 bytes 1525 test/surface-pattern-scale-down-quartz-ref.png | Bin 0 -> 3188 bytes 1526 test/text-antialias-gray-quartz-ref.png | Bin 1039 -> 1041 bytes 1527 test/text-antialias-none-quartz-ref.png | Bin 304 -> 300 bytes 1528 test/text-antialias-subpixel-quartz-ref.png | Bin 1100 -> 1065 bytes 1529 test/text-pattern-quartz-ref.png | Bin 0 -> 2158 bytes 1530 test/text-pattern-quartz-rgb24-ref.png | Bin 1867 -> 1874 bytes 1531 test/text-rotate-quartz-ref.png | Bin 17405 -> 17820 bytes 1532 test/unbounded-operator-quartz-ref.png | Bin 4325 -> 4066 bytes 1533 test/unbounded-operator-quartz-rgb24-ref.png | Bin 1972 -> 1918 bytes 1534 21 files changed, 3 insertions(+) 1535 1536commit 94b67d13f38d860f1a768f9a088e3b6f5d188f7b 1537Author: Vladimir Vukicevic <vladimir@pobox.com> 1538AuthorDate: Tue Apr 1 12:44:32 2008 -0700 1539Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 1540CommitDate: Tue Apr 1 13:04:08 2008 -0700 1541 1542 [quartz] Handle further 10.4 vs. 10.5 differences; fix text AA handling 1543 1544 src/cairo-quartz-surface.c | 74 +++++++++++++++++++++++++++------------------- 1545 1 file changed, 43 insertions(+), 31 deletions(-) 1546 1547commit a1d1be4234f7787c078ff096b4101e300494e7d1 1548Author: Vladimir Vukicevic <vladimir@pobox.com> 1549AuthorDate: Thu Mar 27 23:46:53 2008 -0700 1550Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 1551CommitDate: Tue Apr 1 13:04:08 2008 -0700 1552 1553 [cgfont] Round surface rectangle outwards to ensure whole-pixel dimensions 1554 1555 src/cairo-quartz-font.c | 60 +++++++++++++++++++++++++++++++++++++++---------- 1556 1 file changed, 48 insertions(+), 12 deletions(-) 1557 1558commit c064ad1b56d11950786a3fd0363e543f5aec1761 1559Author: Vladimir Vukicevic <vladimir@pobox.com> 1560AuthorDate: Thu Mar 27 11:42:53 2008 -0700 1561Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 1562CommitDate: Tue Apr 1 13:04:08 2008 -0700 1563 1564 [cgfont] Fix whitespace errors 1565 1566 src/cairo-quartz-font.c | 4 ++-- 1567 1 file changed, 2 insertions(+), 2 deletions(-) 1568 1569commit 2be3e67db24ac34f772b5fc1182dfb9b730dce11 1570Author: Vladimir Vukicevic <vladimir@pobox.com> 1571AuthorDate: Tue Mar 25 22:44:39 2008 -0700 1572Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 1573CommitDate: Tue Apr 1 13:04:08 2008 -0700 1574 1575 [cgfont] Add CGFont backend to replace deprecated ATSUI backend 1576 1577 Create a new font backend that uses the CGFont API on MacOS X 1578 10.4 and beyond. 1579 1580 src/cairo-quartz-font.c | 124 +++++++++++++++++++++++++++++++++++++++++------- 1581 1 file changed, 107 insertions(+), 17 deletions(-) 1582 1583commit 30f7fae6475c36549badf1fcc11ae39d1d79b532 1584Author: Vladimir Vukicevic <vladimir@pobox.com> 1585AuthorDate: Thu Mar 20 13:24:48 2008 -0700 1586Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 1587CommitDate: Tue Apr 1 13:04:08 2008 -0700 1588 1589 [cgfont] Add start of CGFont font backend to replace ATSUI 1590 1591 configure.in | 10 +- 1592 src/Makefile.am | 3 +- 1593 src/cairo-atsui-font.c | 2 +- 1594 src/cairo-quartz-font.c | 590 +++++++++++++++++++++++++++++++++++++++++++++ 1595 src/cairo-quartz-private.h | 5 + 1596 src/cairo-quartz-surface.c | 1 - 1597 src/cairo-quartz.h | 5 +- 1598 src/cairoint.h | 4 +- 1599 8 files changed, 611 insertions(+), 9 deletions(-) 1600 1601commit 9e6d6798700cf629abbd921cf744babeb49215a1 1602Author: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 1603AuthorDate: Tue Apr 1 16:48:04 2008 +0200 1604Commit: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 1605CommitDate: Tue Apr 1 16:50:12 2008 +0200 1606 1607 [SVG] Fix stroke-image test failure. 1608 1609 The pattern transform inherit the object transform matrix, and that was not 1610 taken into account. 1611 1612 src/cairo-svg-surface.c | 96 ++++++++++++++++++++++++++++++------------------- 1613 1 file changed, 60 insertions(+), 36 deletions(-) 1614 1615commit a571cc56a3e708e37fe112212fbd41ae9071a16b 1616Author: Carl Worth <cworth@cworth.org> 1617AuthorDate: Mon Mar 31 12:17:39 2008 -0700 1618Commit: Carl Worth <cworth@cworth.org> 1619CommitDate: Mon Mar 31 12:17:39 2008 -0700 1620 1621 Update pixman dependency to recent 0.10.0 release 1622 1623 configure.in | 2 +- 1624 1 file changed, 1 insertion(+), 1 deletion(-) 1625 1626commit e9adba9a57177a1b5755734db25d08513a30c0b7 1627Author: Carl Worth <cworth@cworth.org> 1628AuthorDate: Mon Mar 31 12:15:06 2008 -0700 1629Commit: Carl Worth <cworth@cworth.org> 1630CommitDate: Mon Mar 31 12:15:06 2008 -0700 1631 1632 Update ps-specifc reference image for ft-text-vertical-layout-type1 1633 1634 Presumably this minor change happened due to a recent fix in 1635 cairo-ps glyph positioning. 1636 1637 test/ft-text-vertical-layout-type1-ps-ref.png | Bin 1911 -> 1910 bytes 1638 1 file changed, 0 insertions(+), 0 deletions(-) 1639 1640commit a30ed53a1ce37f68f2ee8abf0f631bcc180e0e57 1641Author: Adrian Johnson <ajohnson@redneon.com> 1642AuthorDate: Sun Mar 30 00:13:35 2008 +1030 1643Commit: Adrian Johnson <ajohnson@redneon.com> 1644CommitDate: Sun Mar 30 00:13:35 2008 +1030 1645 1646 Add stroke-image PS/PDF ref images 1647 1648 test/stroke-image-pdf-ref.png | Bin 0 -> 1554 bytes 1649 test/stroke-image-ps-ref.png | Bin 0 -> 1786 bytes 1650 2 files changed, 0 insertions(+), 0 deletions(-) 1651 1652commit a729f27f3c5770277d691257d2355ffb97e3172f 1653Author: Adrian Johnson <ajohnson@redneon.com> 1654AuthorDate: Sun Mar 30 00:07:05 2008 +1030 1655Commit: Adrian Johnson <ajohnson@redneon.com> 1656CommitDate: Sun Mar 30 00:07:05 2008 +1030 1657 1658 Add clip-operator PS/PDF rgb24 ref images 1659 1660 test/clip-operator-pdf-rgb24-ref.png | Bin 0 -> 6530 bytes 1661 test/clip-operator-ps-rgb24-ref.png | Bin 0 -> 4620 bytes 1662 2 files changed, 0 insertions(+), 0 deletions(-) 1663 1664commit 9058b9260acce8839263fccf451a982bcb1c54f3 1665Author: Adrian Johnson <ajohnson@redneon.com> 1666AuthorDate: Sat Mar 29 23:49:51 2008 +1030 1667Commit: Adrian Johnson <ajohnson@redneon.com> 1668CommitDate: Sat Mar 29 23:49:51 2008 +1030 1669 1670 Add operator-source PDF ref images 1671 1672 Required due to gradient rendering differences between poppler and 1673 cairo. 1674 1675 test/operator-source-pdf-argb32-ref.png | Bin 0 -> 4694 bytes 1676 test/operator-source-pdf-rgb24-ref.png | Bin 0 -> 3848 bytes 1677 2 files changed, 0 insertions(+), 0 deletions(-) 1678 1679commit 47981226db1650799ddb5efba01df2564aa1a3b5 1680Author: Adrian Johnson <ajohnson@redneon.com> 1681AuthorDate: Sat Mar 29 23:45:31 2008 +1030 1682Commit: Adrian Johnson <ajohnson@redneon.com> 1683CommitDate: Sat Mar 29 23:45:31 2008 +1030 1684 1685 Fix PDF analysis of OPERATOR_SOURCE surface patterns 1686 1687 src/cairo-pdf-surface.c | 12 +++++++++--- 1688 1 file changed, 9 insertions(+), 3 deletions(-) 1689 1690commit 53d1a4b0dcb3a1fa62face9d2b5b086d74b6e397 1691Author: Adrian Johnson <ajohnson@redneon.com> 1692AuthorDate: Sat Mar 29 23:03:02 2008 +1030 1693Commit: Adrian Johnson <ajohnson@redneon.com> 1694CommitDate: Sat Mar 29 23:03:41 2008 +1030 1695 1696 Update operator-source PS ref images 1697 1698 test/operator-source-ps-argb32-ref.png | Bin 3893 -> 3890 bytes 1699 test/operator-source-ps-rgb24-ref.png | Bin 3241 -> 3181 bytes 1700 2 files changed, 0 insertions(+), 0 deletions(-) 1701 1702commit b3b3e3810d6ea9e75d5accd8e0d2ad00f664b4a5 1703Author: Adrian Johnson <ajohnson@redneon.com> 1704AuthorDate: Sat Mar 29 19:14:18 2008 +1030 1705Commit: Adrian Johnson <ajohnson@redneon.com> 1706CommitDate: Sat Mar 29 23:00:34 2008 +1030 1707 1708 PS: Clear pattern background to when using OPERATOR_SOURCE 1709 1710 Set pattern background to white if surface content is COLOR_ALPHA or 1711 black if surface content is COLOR when operator is SOURCE. 1712 1713 src/cairo-ps-surface.c | 43 +++++++++++++++++++++++++++---------------- 1714 1 file changed, 27 insertions(+), 16 deletions(-) 1715 1716commit 5b8b3a9765d292d554b50df0981652d3bb4ec56f 1717Author: Adrian Johnson <ajohnson@redneon.com> 1718AuthorDate: Sat Mar 29 01:07:30 2008 +1030 1719Commit: Adrian Johnson <ajohnson@redneon.com> 1720CommitDate: Sat Mar 29 15:52:37 2008 +1030 1721 1722 PS/PDF: Save/Restore surface clip when emitting a meta-surface pattern 1723 1724 src/cairo-pdf-surface.c | 6 ++++++ 1725 src/cairo-ps-surface.c | 6 ++++++ 1726 src/cairo-surface.c | 6 ++++++ 1727 src/cairoint.h | 3 +++ 1728 4 files changed, 21 insertions(+) 1729 1730commit e4fd9b4ea2e8cc378471c4f536236faa73467977 1731Author: Adrian Johnson <ajohnson@redneon.com> 1732AuthorDate: Thu Mar 27 09:06:11 2008 +1030 1733Commit: Adrian Johnson <ajohnson@redneon.com> 1734CommitDate: Thu Mar 27 09:09:41 2008 +1030 1735 1736 Bump poppler version required for testing to 0.8.0 1737 1738 The poppler specific reference images are created from the latest 1739 version of poppler in git. The main reason has been for support for 1740 knockout groups that had not yet been available in a stable release. 1741 1742 Poppler 0.8.0 is the first stable release to include the support for 1743 knockout groups. 1744 1745 configure.in | 2 +- 1746 1 file changed, 1 insertion(+), 1 deletion(-) 1747 1748commit af8928fa8bb8905515f36b4ddc51e665b4b8da56 1749Author: Carl Worth <cworth@cworth.org> 1750AuthorDate: Wed Mar 26 14:21:58 2008 -0700 1751Commit: Carl Worth <cworth@cworth.org> 1752CommitDate: Wed Mar 26 14:52:09 2008 -0700 1753 1754 Add svg-specific reference image for ft-show-glyphs-positioning test 1755 1756 There was no failure here, just minor rasterization differences. 1757 1758 test/ft-show-glyphs-positioning-svg-ref.png | Bin 0 -> 6590 bytes 1759 1 file changed, 0 insertions(+), 0 deletions(-) 1760 1761commit fbab4bbb06d875313e9cd0dc38673b79b8460edb 1762Author: Carl Worth <cworth@cworth.org> 1763AuthorDate: Wed Mar 26 13:47:06 2008 -0700 1764Commit: Carl Worth <cworth@cworth.org> 1765CommitDate: Wed Mar 26 14:52:09 2008 -0700 1766 1767 Update clip-operator and operator-clear reference images 1768 1769 There were legitimate bugs in the ps and pdf backends for these 1770 tests, (particularly with the row of glyphs), but these bugs 1771 were recently fixed with: 1772 1773 commit d89edde84de9cec9ce6f76f4f2c44dd9c1220528 1774 Author: Vladimir Vukicevic <vladimir@pobox.com> 1775 Date: Tue Mar 4 00:15:46 2008 -0800 1776 1777 [meta] always copy glyph array before passing to _cairo_surface_show_glyphs 1778 1779 and we just failed to notice the fix at the time. 1780 1781 test/clip-operator-pdf-argb32-ref.png | Bin 11005 -> 11429 bytes 1782 test/clip-operator-ps-argb32-ref.png | Bin 9084 -> 9102 bytes 1783 test/operator-clear-ps-argb32-ref.png | Bin 1400 -> 1435 bytes 1784 3 files changed, 0 insertions(+), 0 deletions(-) 1785 1786commit 75972167a277687b1434c52e791ffe9c18fa2a7a 1787Author: Carl Worth <cworth@cworth.org> 1788AuthorDate: Wed Mar 26 11:31:04 2008 -0700 1789Commit: Carl Worth <cworth@cworth.org> 1790CommitDate: Wed Mar 26 14:52:09 2008 -0700 1791 1792 Use floating-point offsets for color stops 1793 1794 Previously we were using the cairo_fixed_t type which meant we've 1795 historically only been using 16 bits of precision for these offsets, 1796 and recently only 8 bits. Meanwhile, all manipulatons of offsets 1797 have been in floating-point anyway, so we might as well store them 1798 that way. 1799 1800 This change also prevents a rendering regression introduced with the 1801 24.8->16.16 change betwen snapshots 1.5.10 and 1.5.12 . 1802 1803 This change affected gradient-rendering details for the clip-operator 1804 and operator-source tests, so the corresponding reference images are 1805 updated here. 1806 1807 src/cairo-glitz-surface.c | 2 +- 1808 src/cairo-pattern.c | 10 ++++------ 1809 src/cairo-pdf-surface.c | 6 +++--- 1810 src/cairo-ps-surface.c | 6 +++--- 1811 src/cairo-quartz-surface.c | 6 +++--- 1812 src/cairo-svg-surface.c | 31 ++++++++++++++----------------- 1813 src/cairo-win32-printing-surface.c | 2 +- 1814 src/cairoint.h | 2 +- 1815 test/clip-operator-ref.png | Bin 8263 -> 8271 bytes 1816 test/operator-source-ref.png | Bin 4422 -> 4420 bytes 1817 10 files changed, 30 insertions(+), 35 deletions(-) 1818 1819commit 80dc1714c87c3902e70fa94e4911945986cc7920 1820Author: Carl Worth <cworth@cworth.org> 1821AuthorDate: Wed Mar 26 10:31:36 2008 -0700 1822Commit: Carl Worth <cworth@cworth.org> 1823CommitDate: Wed Mar 26 14:52:09 2008 -0700 1824 1825 Remove unused variable 1826 1827 src/cairo-image-surface.c | 1 - 1828 1 file changed, 1 deletion(-) 1829 1830commit f676f18050383ecf26c36cdbba4ac81d2d45b042 1831Author: Chris Wilson <chris@chris-wilson.co.uk> 1832AuthorDate: Wed Mar 26 08:43:23 2008 +0000 1833Commit: Chris Wilson <chris@chris-wilson.co.uk> 1834CommitDate: Wed Mar 26 13:13:20 2008 +0000 1835 1836 [cairo] Fixup make check. 1837 1838 make check demands that all function references in the docs are suffixed 1839 with (). 1840 1841 src/cairo.c | 6 +++--- 1842 1 file changed, 3 insertions(+), 3 deletions(-) 1843 1844commit 452a1de2a06b57a3ed1b149e152487505dbc04f8 1845Author: Chris Wilson <chris@chris-wilson.co.uk> 1846AuthorDate: Tue Mar 25 16:50:33 2008 +0000 1847Commit: Chris Wilson <chris@chris-wilson.co.uk> 1848CommitDate: Wed Mar 26 13:13:19 2008 +0000 1849 1850 [cairo-gstate] Remove dead code. 1851 1852 Eliminate _cairo_gstate_recursive_apply_clip_path, as its last caller 1853 was removed over 2 years ago. 1854 1855 src/cairo-gstate.c | 21 --------------------- 1856 1 file changed, 21 deletions(-) 1857 1858commit ed42916028e4f51949210de6ecf4ebc5095aa45c 1859Author: Adrian Johnson <ajohnson@redneon.com> 1860AuthorDate: Wed Mar 26 23:04:35 2008 +1030 1861Commit: Adrian Johnson <ajohnson@redneon.com> 1862CommitDate: Wed Mar 26 23:04:35 2008 +1030 1863 1864 Win32: Fix bug in cairo_win32_font_face_create_for_hfont() 1865 1866 Use GetObjectW for LOGFONTW. 1867 1868 src/cairo-win32-font.c | 2 +- 1869 1 file changed, 1 insertion(+), 1 deletion(-) 1870 1871commit 6dc75ab0f8370154aae7719ed805c5a8bdf1c9f4 1872Author: Carl Worth <cworth@cworth.org> 1873AuthorDate: Tue Mar 25 10:21:50 2008 -0700 1874Commit: Carl Worth <cworth@cworth.org> 1875CommitDate: Tue Mar 25 16:46:02 2008 -0700 1876 1877 Quiet compiler warnings about unhandled PIXMAN_yuy2 and PIXMAN_yv12 1878 1879 We still don't handle these format codes of course, (they're meaningless 1880 for the context in which they're used here). 1881 1882 Note that we previously avoided adding these to avoid people being forced 1883 to upgrade pixman just to get two enum values that cairo doesn't really 1884 care about. But now we're depending on a new pixman anyway, (for the 1885 pixman_format_code_to_masks function), so we'll go ahead and do this now. 1886 1887 src/cairo-image-surface.c | 3 +++ 1888 1 file changed, 3 insertions(+) 1889 1890commit 1675713aff7311461e26d7badccb9942573f2bca 1891Author: Carl Worth <cworth@cworth.org> 1892AuthorDate: Tue Mar 25 16:45:21 2008 -0700 1893Commit: Carl Worth <cworth@cworth.org> 1894CommitDate: Tue Mar 25 16:45:21 2008 -0700 1895 1896 Depend on pixman 0.9.7 for new pixman_format_supported_destination function 1897 1898 This allows us to do a much more general and complete implementation of 1899 _pixman_format_from_masks and _pixman_format_to_masks so that we'll 1900 even pick up new pixman formats as they get added. 1901 1902 configure.in | 2 +- 1903 src/cairo-image-surface.c | 200 ++++++++++++++++++++-------------------------- 1904 2 files changed, 86 insertions(+), 116 deletions(-) 1905 1906commit d7e5f6b6a00912e22cb5ca837d0a56d30cf59124 1907Author: Carl Worth <cworth@cworth.org> 1908AuthorDate: Tue Mar 25 16:32:24 2008 -0700 1909Commit: Carl Worth <cworth@cworth.org> 1910CommitDate: Tue Mar 25 16:32:24 2008 -0700 1911 1912 Rename _popcount to _cairo_popcount and make it available for internal use 1913 1914 Both cairo-image-surface.c and cairo-xlib-surface.c want to 1915 use this function now. 1916 1917 src/cairo-xlib-surface.c | 25 ++----------------------- 1918 src/cairoint.h | 21 +++++++++++++++++++++ 1919 2 files changed, 23 insertions(+), 23 deletions(-) 1920 1921commit 90cf7c2faf167b4b86443eb340af23cf853b146a 1922Author: Carl Worth <cworth@cworth.org> 1923AuthorDate: Tue Mar 25 10:40:01 2008 -0700 1924Commit: Carl Worth <cworth@cworth.org> 1925CommitDate: Tue Mar 25 13:17:49 2008 -0700 1926 1927 Quiet warning about signed vs. unsigned comparison 1928 1929 src/cairo-surface-fallback.c | 4 ++-- 1930 1 file changed, 2 insertions(+), 2 deletions(-) 1931 1932commit 770633c05acf12b911cdbdaa94b20ccf34ce742a 1933Author: Carl Worth <cworth@cworth.org> 1934AuthorDate: Tue Mar 25 10:27:36 2008 -0700 1935Commit: Carl Worth <cworth@cworth.org> 1936CommitDate: Tue Mar 25 13:17:49 2008 -0700 1937 1938 Quiet warnings about unhandled enum values in _cairo_surface_create_in_error 1939 1940 src/cairo-surface.c | 18 ++++++++++++++++++ 1941 1 file changed, 18 insertions(+) 1942 1943commit d15c7c94bdfc714845bd88f9e3ed5317afcfce72 1944Author: Carl Worth <cworth@cworth.org> 1945AuthorDate: Tue Mar 25 12:12:40 2008 -0700 1946Commit: Carl Worth <cworth@cworth.org> 1947CommitDate: Tue Mar 25 13:17:49 2008 -0700 1948 1949 Document performance advantage of cairo_path_extents 1950 1951 The cairo_path_extents function can perform better than either 1952 cairo_stroke_extents or cairo_fill_extents, so provide that 1953 pointer from the documentation of the other two functions. 1954 1955 src/cairo.c | 14 ++++++++++++-- 1956 1 file changed, 12 insertions(+), 2 deletions(-) 1957 1958commit 8aba5b802946530ef481f1461f9894529498cd8a 1959Author: Vladimir Vukicevic <vladimir@pobox.com> 1960AuthorDate: Tue Mar 25 11:53:52 2008 -0700 1961Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 1962CommitDate: Tue Mar 25 11:53:52 2008 -0700 1963 1964 [win32] Prevent crash in create_similar if win32_surface_create fails 1965 1966 src/cairo-win32-surface.c | 12 +++++++++--- 1967 1 file changed, 9 insertions(+), 3 deletions(-) 1968 1969commit 49a140b04bda85c03f824dcf565f1fcdd70b8965 1970Author: Vladimir Vukicevic <vladimir@pobox.com> 1971AuthorDate: Tue Mar 25 11:22:43 2008 -0700 1972Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 1973CommitDate: Tue Mar 25 11:22:43 2008 -0700 1974 1975 [osx] additional fix to configure for multi-arch OSX builds 1976 1977 configure.in | 3 ++- 1978 1 file changed, 2 insertions(+), 1 deletion(-) 1979 1980commit ae143d779ba5765f55754cb89af87b065d84ef04 1981Author: Vladimir Vukicevic <vladimir@pobox.com> 1982AuthorDate: Tue Mar 25 11:17:57 2008 -0700 1983Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 1984CommitDate: Tue Mar 25 11:17:57 2008 -0700 1985 1986 [quartz] When stroking with an image source, use the right CTM for the image 1987 1988 Since the CTM was modified for the stroke transform, we need to reset 1989 it before calling ConcatCTM for the source transform. 1990 1991 src/cairo-quartz-surface.c | 9 ++++- 1992 test/Makefile.am | 3 ++ 1993 test/stroke-image-quartz-ref.png | Bin 0 -> 1802 bytes 1994 test/stroke-image-ref.png | Bin 0 -> 1866 bytes 1995 test/stroke-image.c | 77 +++++++++++++++++++++++++++++++++++++++ 1996 5 files changed, 88 insertions(+), 1 deletion(-) 1997 1998commit e9906ae2021904c8c3d3a4083786475c102196f7 1999Author: Adrian Johnson <ajohnson@redneon.com> 2000AuthorDate: Tue Mar 25 21:56:19 2008 +1030 2001Commit: Adrian Johnson <ajohnson@redneon.com> 2002CommitDate: Tue Mar 25 21:56:19 2008 +1030 2003 2004 Win32-Printing: Fix fallback resolution when DC ctm is not identity 2005 2006 And also move the _cairo_surface_set_resolution() into 2007 _cairo_win32_printing_surface_start_page as the DC ctm may be changed 2008 between pages. 2009 2010 This bug was found in Inkscape now that they are using the cairo 2011 win32-printing surface for printing on Windows. 2012 2013 src/cairo-win32-printing-surface.c | 19 ++++++++++++++----- 2014 1 file changed, 14 insertions(+), 5 deletions(-) 2015 2016commit ee3981fb92ee5fa9b049dae32421cc0015fd4bf6 2017Author: Carl Worth <cworth@cworth.org> 2018AuthorDate: Mon Mar 24 16:24:36 2008 -0700 2019Commit: Carl Worth <cworth@cworth.org> 2020CommitDate: Mon Mar 24 16:26:28 2008 -0700 2021 2022 Add new text-transform test 2023 2024 Previously, the test suite wasn't supplying any coverage of transformed 2025 text rendering. 2026 2027 test/.gitignore | 1 + 2028 test/Makefile.am | 1 + 2029 test/README | 1 + 2030 test/text-transform-pdf-ref.png | Bin 0 -> 3796 bytes 2031 test/text-transform-ps-ref.png | Bin 0 -> 4154 bytes 2032 test/text-transform-ref.png | Bin 0 -> 6200 bytes 2033 test/text-transform.c | 113 ++++++++++++++++++++++++++++++++++++++++ 2034 7 files changed, 116 insertions(+) 2035 2036commit 184d9cbf9c8967b741209b9d891848c9bd37dd60 2037Author: Adrian Johnson <ajohnson@redneon.com> 2038AuthorDate: Mon Mar 24 12:36:37 2008 +1030 2039Commit: Adrian Johnson <ajohnson@redneon.com> 2040CommitDate: Mon Mar 24 12:36:37 2008 +1030 2041 2042 Update REFERENCE_IMAGES with PS ref images 2043 2044 for finer finer-grained-fallbacks. 2045 2046 test/Makefile.am | 2 ++ 2047 1 file changed, 2 insertions(+) 2048 2049commit 2ad39157975d71735da936977dd10e66d055ece7 2050Author: Adrian Johnson <ajohnson@redneon.com> 2051AuthorDate: Mon Mar 24 12:32:07 2008 +1030 2052Commit: Adrian Johnson <ajohnson@redneon.com> 2053CommitDate: Mon Mar 24 12:32:07 2008 +1030 2054 2055 Add PS reference images for finer-grained-fallbacks test 2056 2057 test/finer-grained-fallbacks-ps-argb32-ref.png | Bin 0 -> 1047 bytes 2058 test/finer-grained-fallbacks-ps-rgb24-ref.png | Bin 0 -> 819 bytes 2059 2 files changed, 0 insertions(+), 0 deletions(-) 2060 2061commit ae9635bf33cb989f5c525800b82b81daad699e01 2062Author: Adrian Johnson <ajohnson@redneon.com> 2063AuthorDate: Mon Mar 24 12:16:20 2008 +1030 2064Commit: Adrian Johnson <ajohnson@redneon.com> 2065CommitDate: Mon Mar 24 12:16:20 2008 +1030 2066 2067 Fix assertion in PS/PDF/Win32-print when fallback image is off the page 2068 2069 If during analysis the bounding box of an operation or the number of 2070 traps is 0, the operation is marked as natively supported. The problem 2071 here is if the operation is unsupported by the backend, we get an 2072 assertion when the operation is replayed during 2073 CAIRO_PAGINATED_MODE_RENDER. 2074 2075 This bug was found in Inkscape when printing to the 2076 win32_printing_surface a page that has been layed out as landscape but 2077 landscape paper had not been selected in the print dialog. 2078 2079 Fix this by being careful not to mark unsupported operations as 2080 supported during analysis even they may not be visible on the page. 2081 2082 src/cairo-analysis-surface.c | 73 +++++++++++++++++++++++++++++++++----------- 2083 1 file changed, 55 insertions(+), 18 deletions(-) 2084 2085commit 179ab7d2860b8ff94fe491896c50505fde7cf6af 2086Author: Adrian Johnson <ajohnson@redneon.com> 2087AuthorDate: Mon Mar 24 11:43:29 2008 +1030 2088Commit: Adrian Johnson <ajohnson@redneon.com> 2089CommitDate: Mon Mar 24 11:43:29 2008 +1030 2090 2091 Add finer-grained-fallbacks test 2092 2093 This reproduces the bug in PS/PDF/Win32-printing where an unsupported 2094 operation that is off the page causes an unsupported operation 2095 assertion in the backend. 2096 2097 test/.gitignore | 1 + 2098 test/Makefile.am | 3 + 2099 test/finer-grained-fallbacks-ref.png | Bin 0 -> 796 bytes 2100 test/finer-grained-fallbacks-rgb24-ref.png | Bin 0 -> 590 bytes 2101 test/finer-grained-fallbacks.c | 111 +++++++++++++++++++++++++++++ 2102 5 files changed, 115 insertions(+) 2103 2104commit 9a1f7bbc357ecce351b459f883b4ebeaa6640b65 2105Author: Benjamin Otte <otte@gnome.org> 2106AuthorDate: Sun Mar 23 15:31:24 2008 +0100 2107Commit: Benjamin Otte <otte@gnome.org> 2108CommitDate: Sun Mar 23 15:31:24 2008 +0100 2109 2110 [API] unbreak CAIRO_FONT_TYPE_ATSUI 2111 2112 commit 9d61f7db8082baf3a223c4ea41a53de372676e40 broke API by making the 2113 CAIRO_FONT_TYPE_ATSUI symbol not work anymore. However, this symbol was part of 2114 Cairo's public API and should continue working this way. 2115 2116 src/cairo-deprecated.h | 3 ++- 2117 1 file changed, 2 insertions(+), 1 deletion(-) 2118 2119commit 104c2825ea66d7d5f405cc8d690d90b45e752c46 2120Author: Chris Wilson <chris@chris-wilson.co.uk> 2121AuthorDate: Fri Mar 21 09:11:48 2008 +0000 2122Commit: Chris Wilson <chris@chris-wilson.co.uk> 2123CommitDate: Fri Mar 21 09:15:42 2008 +0000 2124 2125 [cairo-png] Set bKGD gray value. 2126 2127 For PNG_COLOR_TYPE_GRAY images the bKGD value is read from white.gray 2128 which was uninitialized, triggering the "PNG warning = Ignoring attempt 2129 to write bKGD chunk out-of-range for bit_depth" reported by Emmanuel 2130 Pacaud. This patch sets the background gray value to white, the same as 2131 for RGB images. 2132 2133 src/cairo-png.c | 5 ++--- 2134 1 file changed, 2 insertions(+), 3 deletions(-) 2135 2136commit c4599324820cfb46700bf2f059c46e9245f98ea5 2137Author: Adrian Johnson <ajohnson@redneon.com> 2138AuthorDate: Fri Mar 21 18:12:03 2008 +1030 2139Commit: Adrian Johnson <ajohnson@redneon.com> 2140CommitDate: Fri Mar 21 18:12:03 2008 +1030 2141 2142 Update PS reference images 2143 2144 Some of the text tests require new PS specific reference images as a 2145 result of the PS glyph positioning fix. 2146 2147 test/font-matrix-translation-ps-argb32-ref.png | Bin 749 -> 748 bytes 2148 test/font-matrix-translation-ps-rgb24-ref.png | Bin 749 -> 748 bytes 2149 test/glyph-cache-pressure-ps-ref.png | Bin 1413 -> 1454 bytes 2150 test/select-font-face-ps-ref.png | Bin 1079 -> 959 bytes 2151 test/show-text-current-point-ps-ref.png | Bin 1454 -> 1356 bytes 2152 test/text-pattern-ps-argb32-ref.png | Bin 984 -> 966 bytes 2153 test/text-pattern-ps-rgb24-ref.png | Bin 936 -> 924 bytes 2154 7 files changed, 0 insertions(+), 0 deletions(-) 2155 2156commit f3a5f7570104c8d48c99a2b6bd34f4142e52f099 2157Author: Adrian Johnson <ajohnson@redneon.com> 2158AuthorDate: Fri Mar 21 16:34:01 2008 +1030 2159Commit: Adrian Johnson <ajohnson@redneon.com> 2160CommitDate: Fri Mar 21 16:34:01 2008 +1030 2161 2162 Add PS/PDF ref images for ft-show-glyphs-positioning 2163 2164 test/Makefile.am | 2 ++ 2165 test/ft-show-glyphs-positioning-pdf-ref.png | Bin 0 -> 3114 bytes 2166 test/ft-show-glyphs-positioning-ps-ref.png | Bin 0 -> 2269 bytes 2167 3 files changed, 2 insertions(+) 2168 2169commit 4f56a6324f16fa58c21180cc362ee18520a59179 2170Author: Adrian Johnson <ajohnson@redneon.com> 2171AuthorDate: Fri Mar 21 16:30:53 2008 +1030 2172Commit: Adrian Johnson <ajohnson@redneon.com> 2173CommitDate: Fri Mar 21 16:30:53 2008 +1030 2174 2175 Finish the PDF text operator decimal reduction commit 2176 2177 Commit 158b32b60bc7e0f6488383c1d4f83203ffe97c98 reduced excess 2178 decimals emitted for the TJ operator. However it only fixed the first 2179 of the two locations in pdf-operators where the TJ position 2180 adjustments are emitted. 2181 2182 src/cairo-pdf-operators.c | 12 +++++++++--- 2183 1 file changed, 9 insertions(+), 3 deletions(-) 2184 2185commit 13e05bffd5cae5690fada24c7a7e2457c39e4dbf 2186Author: Adrian Johnson <ajohnson@redneon.com> 2187AuthorDate: Fri Mar 21 15:41:31 2008 +1030 2188Commit: Adrian Johnson <ajohnson@redneon.com> 2189CommitDate: Fri Mar 21 16:15:57 2008 +1030 2190 2191 Fix PS glyph positioning bug in PDF operator emulation 2192 2193 The emulation of the PDF 'TJ' operator in the PS prolog was 2194 incorrectly updating the glyph position between strings. The glyph 2195 position values are a negative x offset that are in 1/1000 unit of 2196 text space. We were incorrectly multiplying the number by -0.0001 2197 instead of -0.001. We also need to transform this to device space 2198 before calling rmoveto. 2199 2200 src/cairo-ps-surface.c | 5 +++-- 2201 1 file changed, 3 insertions(+), 2 deletions(-) 2202 2203commit 83486684520f3fd27d1118aa23462d013def83df 2204Author: Adrian Johnson <ajohnson@redneon.com> 2205AuthorDate: Fri Mar 21 16:06:12 2008 +1030 2206Commit: Adrian Johnson <ajohnson@redneon.com> 2207CommitDate: Fri Mar 21 16:14:56 2008 +1030 2208 2209 Add ft-show-glyphs-positioning test 2210 2211 This demonstrates the glyph positioning bug in the PS backend. 2212 2213 test/.gitignore | 1 + 2214 test/Makefile.am | 2 + 2215 test/ft-show-glyphs-positioning-ref.png | Bin 0 -> 3444 bytes 2216 test/ft-show-glyphs-positioning.c | 167 ++++++++++++++++++++++++++++++++ 2217 4 files changed, 170 insertions(+) 2218 2219commit 37fedd108e3defc10f2f749a3a9971287e41706c 2220Author: Carl Worth <cworth@cworth.org> 2221AuthorDate: Thu Mar 20 17:02:01 2008 -0700 2222Commit: Carl Worth <cworth@cworth.org> 2223CommitDate: Thu Mar 20 17:02:01 2008 -0700 2224 2225 Increment cairo version to 1.5.15 after the 1.5.14 snapshot 2226 2227 configure.in | 2 +- 2228 1 file changed, 1 insertion(+), 1 deletion(-) 2229 2230commit f4d4d7b3d0bd62af6ffd50ba9cd8df0b9a12be71 2231Author: Carl Worth <cworth@cworth.org> 2232AuthorDate: Thu Mar 20 16:13:28 2008 -0700 2233Commit: Carl Worth <cworth@cworth.org> 2234CommitDate: Thu Mar 20 16:13:28 2008 -0700 2235 2236 Cleanup up png-test.png file in 'make clean' 2237 2238 test/Makefile.am | 1 + 2239 1 file changed, 1 insertion(+) 2240 2241commit 4ad5937648b27cd7a73a6a245ed875de92fa1c07 2242Author: Carl Worth <cworth@cworth.org> 2243AuthorDate: Thu Mar 20 15:55:28 2008 -0700 2244Commit: Carl Worth <cworth@cworth.org> 2245CommitDate: Thu Mar 20 15:55:28 2008 -0700 2246 2247 Enable PLT avoidance for cairo_image_surface_get_data/stride 2248 2249 src/cairo-image-surface.c | 2 ++ 2250 src/cairoint.h | 2 ++ 2251 2 files changed, 4 insertions(+) 2252 2253commit 5d9eefccd6ff4d51e16caa8f3092d3acc33b5549 2254Author: Carl Worth <cworth@cworth.org> 2255AuthorDate: Thu Mar 20 15:37:04 2008 -0700 2256Commit: Carl Worth <cworth@cworth.org> 2257CommitDate: Thu Mar 20 15:37:04 2008 -0700 2258 2259 Disable enum_regexp test in check-doc-syntax.h 2260 2261 It's returning false positives on non-gtk-doc comments with non-public 2262 enum values. Ick. 2263 2264 src/check-doc-syntax.sh | 29 +++++++++++++++++++---------- 2265 1 file changed, 19 insertions(+), 10 deletions(-) 2266 2267commit 0c17ca52aa63a9c77cff47c4ae42bc16e5220552 2268Author: Carl Worth <cworth@cworth.org> 2269AuthorDate: Thu Mar 20 15:33:37 2008 -0700 2270Commit: Carl Worth <cworth@cworth.org> 2271CommitDate: Thu Mar 20 15:33:37 2008 -0700 2272 2273 Mark new cairo_xlib_visual_info functions as private. 2274 2275 src/cairo-xlib-private.h | 4 ++-- 2276 1 file changed, 2 insertions(+), 2 deletions(-) 2277 2278commit f32f81fa1badce15403d922002f4fc59fe8b563a 2279Author: Carl Worth <cworth@cworth.org> 2280AuthorDate: Thu Mar 20 13:49:29 2008 -0700 2281Commit: Carl Worth <cworth@cworth.org> 2282CommitDate: Thu Mar 20 13:49:29 2008 -0700 2283 2284 Increment cairo version to 1.5.14 and libtool versioning to 18:1:16 2285 2286 configure.in | 4 ++-- 2287 1 file changed, 2 insertions(+), 2 deletions(-) 2288 2289commit ffa50c31d38c761b4bf247d3ac27933974b819d3 2290Author: Carl Worth <cworth@cworth.org> 2291AuthorDate: Thu Mar 20 13:49:19 2008 -0700 2292Commit: Carl Worth <cworth@cworth.org> 2293CommitDate: Thu Mar 20 13:49:19 2008 -0700 2294 2295 Doc template churn 2296 2297 doc/public/tmpl/cairo-font-face.sgml | 2 +- 2298 1 file changed, 1 insertion(+), 1 deletion(-) 2299 2300commit 3bb0474ea7d453793199d3ce7674fbe1ee8a324d 2301Author: Carl Worth <cworth@cworth.org> 2302AuthorDate: Thu Mar 20 13:48:29 2008 -0700 2303Commit: Carl Worth <cworth@cworth.org> 2304CommitDate: Thu Mar 20 13:48:29 2008 -0700 2305 2306 NEWS: Add notes for 1.5.14 snapshot 2307 2308 NEWS | 129 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- 2309 1 file changed, 128 insertions(+), 1 deletion(-) 2310 2311commit 191440101e815fe9be23bb6fbb36114de65d8c2d 2312Author: Carl Worth <cworth@cworth.org> 2313AuthorDate: Thu Mar 20 12:33:17 2008 -0700 2314Commit: Carl Worth <cworth@cworth.org> 2315CommitDate: Thu Mar 20 12:38:26 2008 -0700 2316 2317 Fix the REFERENCE_IMAGES list, (like always before a snapshot) 2318 2319 test/Makefile.am | 4 ++-- 2320 1 file changed, 2 insertions(+), 2 deletions(-) 2321 2322commit 46bbead898186349094ae69d2b16f88b80cb820e 2323Author: Carl Worth <cworth@cworth.org> 2324AuthorDate: Thu Mar 20 12:18:39 2008 -0700 2325Commit: Carl Worth <cworth@cworth.org> 2326CommitDate: Thu Mar 20 12:18:39 2008 -0700 2327 2328 RELEASING: Clarify steps for verifying no unpushed modifications 2329 2330 RELEASING | 7 +++---- 2331 1 file changed, 3 insertions(+), 4 deletions(-) 2332 2333commit c91a2a2e80f2172a4174cfc3b5e821cb49633da5 2334Author: Carl Worth <cworth@cworth.org> 2335AuthorDate: Thu Mar 20 11:51:31 2008 -0700 2336Commit: Carl Worth <cworth@cworth.org> 2337CommitDate: Thu Mar 20 11:51:57 2008 -0700 2338 2339 Track minor change in pixman filtering sample location 2340 2341 This change in reference image was triggered by the following commit 2342 in the pixman library: 2343 2344 commit f2d8a5caa63596739b4dc47c00daaaafd9f522e2 2345 Author: Søren Sandmann <sandmann@redhat.com> 2346 Date: Mon Mar 10 23:41:52 2008 -0400 2347 2348 Add rounding epsilon for NEAREST filter after transformation, not before. 2349 2350 This hasn't appeared in a pixman release yet. So for now, getting 2351 correct results is a matter of "use latest pixman". Soon we'll 2352 have a new pixman release and we'll make cairo depend on that. 2353 2354 test/rotate-image-surface-paint-ref.png | Bin 209 -> 232 bytes 2355 1 file changed, 0 insertions(+), 0 deletions(-) 2356 2357commit e96f382549eb3411d461162fdd8989f4ade8b448 2358Author: Carl Worth <cworth@cworth.org> 2359AuthorDate: Wed Mar 19 13:00:47 2008 -0700 2360Commit: Carl Worth <cworth@cworth.org> 2361CommitDate: Thu Mar 20 11:51:57 2008 -0700 2362 2363 Add support for 8-bit PseudoColor visuals 2364 2365 This support involves allocating a 16-bit grayscale ramp as well 2366 as a 5x5x5 RGB color cube. Afterwards, the 256 colors are queried 2367 and an array is generated mapping from r3g3b3 colors to the closest 2368 available color. Both the queried colors and the reverse mapping 2369 are stored in a new visual-specific cairo_xlib_visual_info_t 2370 structure which hangs off of the cairo_xlib_screen_info_t. 2371 2372 Both the color-cube allocation and the distance metric could be 2373 improved by someone sufficiently motivated, (for example, allocating 2374 and matching in a perceptually linear color space rather than just 2375 in RGB space). Also, making this work well in the face of a changing 2376 color map, or in the case of GrayScale, StaticGray, or DirectColor 2377 visuals are left entirely as exercises for the reader. StaticColor 2378 support should be fine as is, but is entirely untested. 2379 2380 src/Makefile.am | 1 + 2381 src/cairo-xlib-private.h | 15 ++++++ 2382 src/cairo-xlib-screen.c | 49 +++++++++++++++++ 2383 src/cairo-xlib-surface.c | 122 +++++++++++++++++++++++++---------------- 2384 src/cairo-xlib-visual.c | 137 +++++++++++++++++++++++++++++++++++++++++++++++ 2385 5 files changed, 278 insertions(+), 46 deletions(-) 2386 2387commit d413c5ab21efb2ccc6a4847ff387f8e39ba2f3e1 2388Author: Carl Worth <cworth@cworth.org> 2389AuthorDate: Wed Mar 19 14:23:35 2008 -0700 2390Commit: Carl Worth <cworth@cworth.org> 2391CommitDate: Thu Mar 20 11:51:57 2008 -0700 2392 2393 xlib: Add support for arbitrary TrueColor visuals 2394 2395 This fixes the following bugs: 2396 2397 cairo doesn't support 8-bit truecolor visuals 2398 https://bugs.freedesktop.org/show_bug.cgi?id=7735 2399 2400 cairo doesn't support 655 xlib format 2401 https://bugs.freedesktop.org/show_bug.cgi?id=9719 2402 2403 src/cairo-xlib-surface-private.h | 5 + 2404 src/cairo-xlib-surface.c | 342 +++++++++++++++++++++++++++++++-------- 2405 2 files changed, 276 insertions(+), 71 deletions(-) 2406 2407commit aeaec94fd03b9098efce9d7455f813acf22ec026 2408Author: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 2409AuthorDate: Thu Mar 20 16:05:34 2008 +0100 2410Commit: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 2411CommitDate: Thu Mar 20 16:05:34 2008 +0100 2412 2413 [SVG] Replace the color property by stroke. 2414 2415 Color property doesn't support URL as value. This pacth fixes 2416 http://bugs.freedesktop.org/show_bug.cgi?id=14556 . 2417 2418 src/cairo-svg-surface.c | 6 +++--- 2419 1 file changed, 3 insertions(+), 3 deletions(-) 2420 2421commit 158b32b60bc7e0f6488383c1d4f83203ffe97c98 2422Author: Adrian Johnson <ajohnson@redneon.com> 2423AuthorDate: Tue Mar 18 22:29:59 2008 +1030 2424Commit: Adrian Johnson <ajohnson@redneon.com> 2425CommitDate: Thu Mar 20 18:15:10 2008 +1030 2426 2427 PDF: Reduce excess decimals in text position offsets 2428 2429 The numbers output in the TJ array for adjusting the horizontal 2430 position of the next glyph are in 1/1000 of the text space 2431 units. Rounding these numbers to an integer should still provide 2432 sufficient precision. 2433 2434 We use the rounded numbers to update the text position in 2435 pdf-operators so subsequent numbers in the TJ array will compensate 2436 for the rounding error. 2437 2438 src/cairo-pdf-operators.c | 26 ++++++++++++++++++++++---- 2439 1 file changed, 22 insertions(+), 4 deletions(-) 2440 2441commit 222041530cd5d7f1ef6b41ea1738bf395ef1678a 2442Author: Adrian Johnson <ajohnson@redneon.com> 2443AuthorDate: Tue Mar 18 22:28:37 2008 +1030 2444Commit: Adrian Johnson <ajohnson@redneon.com> 2445CommitDate: Thu Mar 20 18:15:10 2008 +1030 2446 2447 Use %g for printing path coordinates in pdf-operators 2448 2449 to eliminate unnecessary decimal places in the output. 2450 2451 src/cairo-pdf-operators.c | 8 ++++---- 2452 1 file changed, 4 insertions(+), 4 deletions(-) 2453 2454commit d78013470b11677df88f246d893c1f019f4ae228 2455Author: Adrian Johnson <ajohnson@redneon.com> 2456AuthorDate: Tue Mar 18 22:27:25 2008 +1030 2457Commit: Adrian Johnson <ajohnson@redneon.com> 2458CommitDate: Thu Mar 20 18:15:10 2008 +1030 2459 2460 Add %g conversion specifer to output-stream for limited precision 2461 2462 The %g conversion specifier is for printing numbers that were at some 2463 time stored in a cairo_fixed_t type and as a result have their 2464 precision limited by the size of CAIRO_FIXED_FRAC_BITS. 2465 2466 Using %g will limit the number of digits after the decimal point to 2467 the minimum required to preserve the available precision. 2468 2469 src/cairo-output-stream.c | 87 ++++++++++++++++++++++++++++++----------------- 2470 1 file changed, 56 insertions(+), 31 deletions(-) 2471 2472commit f3734085a1d1d9b08004a243e28a0233f621847c 2473Author: Adrian Johnson <ajohnson@redneon.com> 2474AuthorDate: Tue Mar 18 22:25:46 2008 +1030 2475Commit: Adrian Johnson <ajohnson@redneon.com> 2476CommitDate: Thu Mar 20 18:15:09 2008 +1030 2477 2478 Make _cairo_dtostr() static 2479 2480 It is only used in cairo-output-stream.c 2481 2482 src/cairo-output-stream-private.h | 3 --- 2483 src/cairo-output-stream.c | 2 +- 2484 2 files changed, 1 insertion(+), 4 deletions(-) 2485 2486commit 4d9e5b51aa4164cf758c6a1f84c7f831becc098b 2487Author: Adrian Johnson <ajohnson@redneon.com> 2488AuthorDate: Tue Mar 18 22:25:18 2008 +1030 2489Commit: Adrian Johnson <ajohnson@redneon.com> 2490CommitDate: Thu Mar 20 18:15:09 2008 +1030 2491 2492 Rescale CTM used for PS/PDF stroking to reduce rounding error 2493 2494 The PS/PDF CTM is transformed to the user space CTM when emitting 2495 paths to be stroked to ensure the correct pen shape used. However this 2496 can result in rounding errors. 2497 2498 For example the device space point (1.234, 3.142) when transformed to 2499 a user space CTM of [100 0 0 100 0 0] will be emitted as 2500 (0.012, 0.031). 2501 2502 Fix this by rescaling the user space CTM so that the path coordinates 2503 emitted to the PDF file stay within the range the maximizes the 2504 precision. The line width and dashing is also rescaled to be the same 2505 size in the rescaled CTM. 2506 2507 src/cairo-pdf-operators.c | 70 ++++++++++++++++++++++++++++++++++++++++++----- 2508 1 file changed, 63 insertions(+), 7 deletions(-) 2509 2510commit 7f4b967c020042779748021fa32fddfc3f0def28 2511Author: Carl Worth <cworth@cworth.org> 2512AuthorDate: Fri Mar 14 16:51:24 2008 +0100 2513Commit: Carl Worth <cworth@cworth.org> 2514CommitDate: Tue Mar 18 17:20:08 2008 -0700 2515 2516 Make CAIRO_FORMAT_STRIDE_FOR_WIDTH_BPP available to the cairo internals. 2517 2518 src/cairo-image-surface.c | 7 ++----- 2519 src/cairoint.h | 5 +++++ 2520 2 files changed, 7 insertions(+), 5 deletions(-) 2521 2522commit eb31c52febd615a92ef0c7204f9fa056ef01b536 2523Author: Carl Worth <cworth@cworth.org> 2524AuthorDate: Fri Mar 14 16:48:41 2008 +0100 2525Commit: Carl Worth <cworth@cworth.org> 2526CommitDate: Tue Mar 18 17:20:08 2008 -0700 2527 2528 Make _pixman_format_to_masks accept a cairo_format_masks_t structure 2529 2530 This makes it work similarly to _pixman_format_from_masks 2531 2532 src/cairo-image-surface.c | 48 ++++++++++++++++++++++------------------------- 2533 src/cairo-xlib-surface.c | 12 ++++++------ 2534 src/cairoint.h | 5 +---- 2535 3 files changed, 29 insertions(+), 36 deletions(-) 2536 2537commit cdb1ae97f241ec6b24d64b0fa5447d26f6bc5318 2538Author: Carl Worth <cworth@cworth.org> 2539AuthorDate: Sun Jan 27 10:31:58 2008 -0800 2540Commit: Carl Worth <cworth@cworth.org> 2541CommitDate: Tue Mar 18 17:20:08 2008 -0700 2542 2543 Move assertion failure for unsupported masks up one level 2544 2545 We're moving the assertion up from inside _pixman_format_to_mask 2546 to its callers. This will allow us to selectively eliminate the 2547 assertion from the supported xlib backend, while leaving it in 2548 the unsupported glitz and xcb backends for now. 2549 2550 src/cairo-image-surface.c | 62 ++++++++++++++++++++++++++++------------------- 2551 src/cairo-xlib-surface.c | 20 +++++++++++++-- 2552 src/cairoint.h | 5 ++-- 2553 3 files changed, 58 insertions(+), 29 deletions(-) 2554 2555commit b83b8c26f5d64fa07b56a747dec681c6626a0297 2556Author: Adrian Johnson <ajohnson@redneon.com> 2557AuthorDate: Mon Mar 17 23:38:34 2008 +1030 2558Commit: Adrian Johnson <ajohnson@redneon.com> 2559CommitDate: Tue Mar 18 21:08:55 2008 +1030 2560 2561 Optimize generated PostScript when EXTEND_PAD is used 2562 2563 Allow image patterns with EXTEND_PAD to use the currentfile 2564 optimization. 2565 2566 src/cairo-ps-surface.c | 6 ++++-- 2567 1 file changed, 4 insertions(+), 2 deletions(-) 2568 2569commit 1ab804891bb71fd742ccc7a228483c53aee282a4 2570Author: Vladimir Vukicevic <vladimir@pobox.com> 2571AuthorDate: Mon Mar 17 17:37:24 2008 -0700 2572Commit: Vladimir Vukicevic <vladimir@sleet.local> 2573CommitDate: Mon Mar 17 17:37:24 2008 -0700 2574 2575 [quartz] Additional test reference images for quartz 2576 2577 test/Makefile.am | 10 ++++++++++ 2578 test/clip-operator-quartz-ref.png | Bin 0 -> 9364 bytes 2579 test/clip-operator-quartz-rgb24-ref.png | Bin 0 -> 4359 bytes 2580 test/dash-curve-quartz-ref.png | Bin 0 -> 47965 bytes 2581 test/dash-state-quartz-ref.png | Bin 0 -> 8698 bytes 2582 test/degenerate-path-quartz-ref.png | Bin 0 -> 232 bytes 2583 test/degenerate-path-quartz-rgb24-ref.png | Bin 0 -> 198 bytes 2584 test/operator-source-quartz-ref.png | Bin 0 -> 4572 bytes 2585 test/operator-source-quartz-rgb24-ref.png | Bin 0 -> 3452 bytes 2586 test/unbounded-operator-quartz-ref.png | Bin 0 -> 4325 bytes 2587 test/unbounded-operator-quartz-rgb24-ref.png | Bin 0 -> 1972 bytes 2588 11 files changed, 10 insertions(+) 2589 2590commit df5087992be5f0f1e42d968559c47bf43de9cfb7 2591Author: Vladimir Vukicevic <vladimir@pobox.com> 2592AuthorDate: Mon Mar 17 17:37:22 2008 -0700 2593Commit: Vladimir Vukicevic <vladimir@sleet.local> 2594CommitDate: Mon Mar 17 17:37:22 2008 -0700 2595 2596 [quartz] Fix bogus CGContextGetType warning that's printed on the console 2597 2598 This is caused by 0x0 surfaces being special, and not having an 2599 associated cgContext. 2600 2601 src/cairo-quartz-surface.c | 104 ++++++++++++++++++++++++++++++--------------- 2602 1 file changed, 69 insertions(+), 35 deletions(-) 2603 2604commit 9d61f7db8082baf3a223c4ea41a53de372676e40 2605Author: Vladimir Vukicevic <vladimir@pobox.com> 2606AuthorDate: Mon Mar 17 17:37:19 2008 -0700 2607Commit: Vladimir Vukicevic <vladimir@sleet.local> 2608CommitDate: Mon Mar 17 17:37:19 2008 -0700 2609 2610 [quartz] Rename ATSUI font to Quartz font 2611 2612 configure.in | 35 +++++++--------------------- 2613 src/Makefile.am | 17 ++++++-------- 2614 src/cairo-atsui-font.c | 39 +++++++++++++------------------ 2615 src/cairo-atsui.h | 58 ---------------------------------------------- 2616 src/cairo-deprecated.h | 2 ++ 2617 src/cairo-quartz-private.h | 14 +++-------- 2618 src/cairo-quartz-surface.c | 14 +++++------ 2619 src/cairo-quartz.h | 15 +++++++++++- 2620 src/cairo.h | 4 ++-- 2621 src/cairoint.h | 10 ++++---- 2622 10 files changed, 65 insertions(+), 143 deletions(-) 2623 2624commit e4f087b8b944a26d688afeef4b9ea7a0d0a6e9ec 2625Author: Adrian Johnson <ajohnson@redneon.com> 2626AuthorDate: Sun Mar 16 17:29:48 2008 +1030 2627Commit: Adrian Johnson <ajohnson@redneon.com> 2628CommitDate: Mon Mar 17 22:04:05 2008 +1030 2629 2630 Factor out common stroke code in pdf-operators 2631 2632 src/cairo-pdf-operators.c | 68 ++++++++++++++++++++++------------------------- 2633 1 file changed, 32 insertions(+), 36 deletions(-) 2634 2635commit 8238a9fd4fa672299fd99aa95f5fcec03647f7c8 2636Author: Adrian Johnson <ajohnson@redneon.com> 2637AuthorDate: Sat Mar 15 22:08:52 2008 +1030 2638Commit: Adrian Johnson <ajohnson@redneon.com> 2639CommitDate: Sat Mar 15 22:08:52 2008 +1030 2640 2641 Add stroke-ctm-caps to .gitignore 2642 2643 test/.gitignore | 1 + 2644 1 file changed, 1 insertion(+) 2645 2646commit 344af99d356203dce8cb97d3effa380cad0c9238 2647Author: Adrian Johnson <ajohnson@redneon.com> 2648AuthorDate: Sat Mar 15 22:07:01 2008 +1030 2649Commit: Adrian Johnson <ajohnson@redneon.com> 2650CommitDate: Sat Mar 15 22:07:01 2008 +1030 2651 2652 Improve the PDF operators word wrapping 2653 2654 to correctly count the columns and avoid breaking hex strings 2655 immediately after the '<' and before any hex digits have been written. 2656 2657 src/cairo-pdf-operators.c | 34 +++++++++++++++++++++++++--------- 2658 1 file changed, 25 insertions(+), 9 deletions(-) 2659 2660commit 0a8478ca1aa37695e84b4875e1efb3d93c7b8434 2661Author: Vladimir Vukicevic <vladimir@pobox.com> 2662AuthorDate: Fri Mar 14 23:23:16 2008 -0700 2663Commit: Vladimir Vukicevic <vladimir@sleet.vlad1.com> 2664CommitDate: Fri Mar 14 23:23:16 2008 -0700 2665 2666 [quartz] don't say we forced subpixel AA when we didn't 2667 2668 Whoops. Net result was that this was disabling subpixel AA on 2669 contexts if CAIRO_ANTIALIAS_DEFAULT was being used. 2670 2671 src/cairo-quartz-surface.c | 2 +- 2672 1 file changed, 1 insertion(+), 1 deletion(-) 2673 2674commit 028d352286991f7ec1da168f7f91bed6449f64e4 2675Author: Vladimir Vukicevic <vladimir@pobox.com> 2676AuthorDate: Fri Mar 14 23:22:08 2008 -0700 2677Commit: Vladimir Vukicevic <vladimir@sleet.vlad1.com> 2678CommitDate: Fri Mar 14 23:22:14 2008 -0700 2679 2680 [quartz] compare gradient stops as doubles, not as fixed point 2681 2682 We use the floating-point value later, and we can end up with weirdness 2683 such as negative colors due to the precision mismatch of our fixed 2684 point vs. floating point type. So just do everything in floating 2685 point. 2686 2687 src/cairo-quartz-surface.c | 5 +---- 2688 1 file changed, 1 insertion(+), 4 deletions(-) 2689 2690commit 112bbacea3c06f844af400f34a4a2eadf25d13dd 2691Author: Adrian Johnson <ajohnson@redneon.com> 2692AuthorDate: Sat Mar 15 00:28:21 2008 +1030 2693Commit: Adrian Johnson <ajohnson@redneon.com> 2694CommitDate: Sat Mar 15 00:28:21 2008 +1030 2695 2696 Don't use fill-stroke during analysis 2697 2698 Instead ensure the fill and stroke are each analyzed separately. 2699 2700 This fixes a bug in the PS output where if a fill-stroke with a 2701 translucent fill resulted in a fallback image with the stroke clipped 2702 to the fill path. 2703 2704 src/cairo-meta-surface.c | 14 +++++--------- 2705 1 file changed, 5 insertions(+), 9 deletions(-) 2706 2707commit 112b43452d302eb4ac62a20bca01bdecbfdcaaf5 2708Author: Adrian Johnson <ajohnson@redneon.com> 2709AuthorDate: Sat Mar 15 00:18:59 2008 +1030 2710Commit: Adrian Johnson <ajohnson@redneon.com> 2711CommitDate: Sat Mar 15 00:18:59 2008 +1030 2712 2713 Fix bug in _cairo_path_fixed_is_equal 2714 2715 Ensure the entire path is compared. 2716 2717 src/cairo-path-fixed.c | 6 ++++-- 2718 1 file changed, 4 insertions(+), 2 deletions(-) 2719 2720commit 7e83d6e6fb8c4b11d5d95acac4a35df8969e0944 2721Author: Adrian Johnson <ajohnson@redneon.com> 2722AuthorDate: Fri Mar 14 21:26:04 2008 +1030 2723Commit: Adrian Johnson <ajohnson@redneon.com> 2724CommitDate: Fri Mar 14 21:37:14 2008 +1030 2725 2726 Do not use PDF fill-stroke operator with transparent fill 2727 2728 because the PDF rendering does not match cairo. See 2729 PDF Reference 7.6.3. 2730 2731 Bug report at 2732 https://bugs.launchpad.net/inkscape/+bug/202096 2733 2734 src/cairo-pdf-surface.c | 15 +++++---------- 2735 1 file changed, 5 insertions(+), 10 deletions(-) 2736 2737commit 0aef7c1a34b2522d400b5a1a74567a79696216c9 2738Author: Adrian Johnson <ajohnson@redneon.com> 2739AuthorDate: Mon Mar 10 22:19:52 2008 +1030 2740Commit: Adrian Johnson <ajohnson@redneon.com> 2741CommitDate: Fri Mar 14 19:46:51 2008 +1030 2742 2743 PDF/PS: Optimize away the stroke ctm when not required 2744 2745 The PDF/PS backends change the ctm to user space when emitting and 2746 stroking a path. When the user space ctm does not alter the pen shape 2747 we can avoid changing the ctm. 2748 2749 This patch optimizes the most common case where the user ctm is 2750 [1 0 0 -1 0 y] due to conversion from cairo to PDF coordinates. 2751 2752 src/cairo-pdf-operators.c | 36 ++++++++++++++++++++++++++++-------- 2753 1 file changed, 28 insertions(+), 8 deletions(-) 2754 2755commit 2bd15d080c562bfcbced1f6bb586cc1e3cae4555 2756Author: Adrian Johnson <ajohnson@redneon.com> 2757AuthorDate: Fri Mar 14 19:46:15 2008 +1030 2758Commit: Adrian Johnson <ajohnson@redneon.com> 2759CommitDate: Fri Mar 14 19:46:15 2008 +1030 2760 2761 Add PS reference image for stroke-ctm-caps 2762 2763 test/stroke-ctm-caps-ps-ref.png | Bin 0 -> 1079 bytes 2764 1 file changed, 0 insertions(+), 0 deletions(-) 2765 2766commit 761b4ce8dd40b8e5536a19018656c2440a61e71a 2767Author: Jeremy Huddleston <jeremyhu@apple.com> 2768AuthorDate: Thu Mar 13 17:45:25 2008 -0700 2769Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 2770CommitDate: Thu Mar 13 17:45:25 2008 -0700 2771 2772 [mac] Correctly handle endianness in multi-architecture compiles on MacOS X 2773 2774 configure.in | 18 ++++++++++++++++++ 2775 1 file changed, 18 insertions(+) 2776 2777commit 4cc93881d9603c90f1318b2eb822cf2c516ecf7d 2778Author: Vladimir Vukicevic <vladimir@pobox.com> 2779AuthorDate: Thu Mar 13 17:30:59 2008 -0700 2780Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 2781CommitDate: Thu Mar 13 17:30:59 2008 -0700 2782 2783 [test] Add testcase for previous stroker regression fix 2784 2785 Add Adrian's original testcase for reproducing the stroker device 2786 vector issue. (b4f518f917f5062537ee3c6a7a54180017b2c588) 2787 2788 test/Makefile.am | 3 ++ 2789 test/stroke-ctm-caps-quartz-ref.png | Bin 0 -> 1109 bytes 2790 test/stroke-ctm-caps-ref.png | Bin 0 -> 1057 bytes 2791 test/stroke-ctm-caps.c | 86 ++++++++++++++++++++++++++++++++++++ 2792 4 files changed, 89 insertions(+) 2793 2794commit a33351f9c677144437bef25a794b97f2ac4bb17a 2795Author: Vladimir Vukicevic <vladimir@pobox.com> 2796AuthorDate: Thu Mar 13 15:37:26 2008 -0700 2797Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 2798CommitDate: Thu Mar 13 15:37:57 2008 -0700 2799 2800 [quartz] remove some compiler warnings 2801 2802 src/cairo-atsui-font.c | 2 +- 2803 src/cairo-quartz-image-surface.c | 4 ---- 2804 2 files changed, 1 insertion(+), 5 deletions(-) 2805 2806commit b4f518f917f5062537ee3c6a7a54180017b2c588 2807Author: Vladimir Vukicevic <vladimir@pobox.com> 2808AuthorDate: Thu Mar 13 15:36:30 2008 -0700 2809Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 2810CommitDate: Thu Mar 13 15:37:57 2008 -0700 2811 2812 Correctly pass the device-space vector through to stroker 2813 2814 Part of the earlier optimization caused the wrong slope to be used for 2815 some computations; this passes the correct slope vector down to 2816 _compute_face. 2817 2818 src/cairo-path-stroke.c | 37 +++++++++++++++++++++++-------------- 2819 test/dash-scale-ref.png | Bin 8035 -> 8058 bytes 2820 test/reflected-stroke-ref.png | Bin 4802 -> 5704 bytes 2821 3 files changed, 23 insertions(+), 14 deletions(-) 2822 2823commit 5050c55f93afef9b0d0651a78f2c99e06e19b55a 2824Author: Adrian Johnson <ajohnson@redneon.com> 2825AuthorDate: Thu Mar 13 21:35:12 2008 +1030 2826Commit: Adrian Johnson <ajohnson@redneon.com> 2827CommitDate: Thu Mar 13 21:37:32 2008 +1030 2828 2829 Use the correct glyph metrics in Type1 fallback 2830 2831 Now that the PS backend is using PDF operators, it uses the glyph 2832 metrics in the font to position each glyph in a string. This exposed a 2833 bug in Type 1 fallback where the glyph width and height was used in 2834 the charstrings instead of x_advance/y_advance. This was causing 2835 strings to print diagonally due to the no zero y_advance. 2836 2837 src/cairo-type1-fallback.c | 8 ++++---- 2838 1 file changed, 4 insertions(+), 4 deletions(-) 2839 2840commit ed452713cfa16e5facca8f918ef4ee4fe2ec41c3 2841Author: Vladimir Vukicevic <vladimir@pobox.com> 2842AuthorDate: Wed Mar 12 18:33:05 2008 -0700 2843Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 2844CommitDate: Wed Mar 12 18:33:21 2008 -0700 2845 2846 [win32] Use a DIB when cloning a surface for a WIN32_PRINTING dest 2847 2848 In some cases we were creating a 1bpp temporary surface, losing all 2849 color/grayscale data while printing. 2850 2851 Ref: https://bugzilla.mozilla.org/show_bug.cgi?id=399388 2852 2853 src/cairo-win32-surface.c | 16 +++++++++++++--- 2854 1 file changed, 13 insertions(+), 3 deletions(-) 2855 2856commit 6ac3eb487cf0de0d28bf6b14852de91b09fecb05 2857Author: Vladimir Vukicevic <vladimir@pobox.com> 2858AuthorDate: Wed Mar 12 18:19:59 2008 -0700 2859Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 2860CommitDate: Wed Mar 12 18:33:21 2008 -0700 2861 2862 [quartz] correctly force subpixel AA on a context, even if defaults say otherwise 2863 2864 In some cases (in my case, having an external monitor attached to my 2865 MBP), Quartz seems to default to grayscale AA even when it should be 2866 using subpixel AA. CGContextGetAllowsFontSmoothing returns FALSE in 2867 this case (pretty sure this is a Quartz bug). We can force subpixel 2868 AA in this case by setting CGContextSetAllowsFontSmoothing. 2869 2870 src/cairo-quartz-surface.c | 22 +++++++++++++++++++--- 2871 1 file changed, 19 insertions(+), 3 deletions(-) 2872 2873commit 5d11b937f1b769355a3dc7971ded40f60b001630 2874Author: Vladimir Vukicevic <vladimir@pobox.com> 2875AuthorDate: Wed Mar 12 18:11:57 2008 -0700 2876Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 2877CommitDate: Wed Mar 12 18:33:21 2008 -0700 2878 2879 [quartz] Apply fixup to unbounded operators to clear area outside of mask 2880 2881 src/cairo-quartz-surface.c | 249 ++++++++++++++++++++++++++++++++++++++++++--- 2882 1 file changed, 236 insertions(+), 13 deletions(-) 2883 2884commit c86cbcdd644e043dc5ae2eabf5dd6afa020e2358 2885Author: Chris Wilson <chris@chris-wilson.co.uk> 2886AuthorDate: Wed Mar 12 17:54:54 2008 +0000 2887Commit: Chris Wilson <chris@chris-wilson.co.uk> 2888CommitDate: Wed Mar 12 17:55:55 2008 +0000 2889 2890 [cairoint.h] Mark _cairo_image_analyze_transparency as private. 2891 2892 Add the required cairo_private markup for make check. 2893 2894 src/cairoint.h | 2 +- 2895 1 file changed, 1 insertion(+), 1 deletion(-) 2896 2897commit 222eb6f1400ab7a51632cbc18b1526664e50c2e4 2898Author: Chris Wilson <chris@chris-wilson.co.uk> 2899AuthorDate: Wed Mar 12 17:52:16 2008 +0000 2900Commit: Chris Wilson <chris@chris-wilson.co.uk> 2901CommitDate: Wed Mar 12 17:52:16 2008 +0000 2902 2903 Define _BSD_SOURCE to enable prototypes for strdup, snprintf. 2904 2905 strdup() and friends require at least _BSD_SOURCE or 2906 _XOPEN_SOURCE >= 500 to be defined for the prototypes to be included. 2907 For the time being, add the define to each source file that requires one 2908 of the BSD functions. 2909 2910 src/cairo-cff-subset.c | 1 + 2911 src/cairo-font-face.c | 1 + 2912 src/cairo-ft-font.c | 1 + 2913 src/cairo-output-stream.c | 1 + 2914 src/cairo-pdf-surface.c | 1 + 2915 src/cairo-ps-surface.c | 1 + 2916 src/cairo-scaled-font-subsets.c | 1 + 2917 src/cairo-svg-surface.c | 3 ++- 2918 src/cairo-truetype-subset.c | 1 + 2919 src/cairo-type1-fallback.c | 1 + 2920 src/cairo-type1-subset.c | 1 + 2921 11 files changed, 12 insertions(+), 1 deletion(-) 2922 2923commit 2d9203c349ffba863368e85567b2e89443d51746 2924Author: Adrian Johnson <ajohnson@redneon.com> 2925AuthorDate: Mon Mar 10 22:30:16 2008 +1030 2926Commit: Adrian Johnson <ajohnson@redneon.com> 2927CommitDate: Mon Mar 10 22:30:16 2008 +1030 2928 2929 win32-printing: Don't scale the miter limit 2930 2931 since the miter is a ratio it should not be scaled like the other 2932 stroke parameters when the user ctm is scaled. 2933 2934 src/cairo-win32-printing-surface.c | 2 +- 2935 1 file changed, 1 insertion(+), 1 deletion(-) 2936 2937commit f534fe434db38c2c24605bdfc251e0186dc7cafc 2938Author: Adrian Johnson <ajohnson@redneon.com> 2939AuthorDate: Mon Mar 10 17:18:07 2008 +1030 2940Commit: Adrian Johnson <ajohnson@redneon.com> 2941CommitDate: Mon Mar 10 17:23:10 2008 +1030 2942 2943 PDF: Use cairo_image_analyse_transparency during analysis 2944 2945 OPERATOR_SOURCE is only supported for opaque images. Check if and ARGB 2946 image really contains transparency before returing unsupported. 2947 2948 src/cairo-pdf-surface.c | 38 +++++++++++++++++++++++++++++++++++++- 2949 1 file changed, 37 insertions(+), 1 deletion(-) 2950 2951commit 61d45c9d1f2322c7c2ee7a58e7b3d5ccfac92db2 2952Author: Adrian Johnson <ajohnson@redneon.com> 2953AuthorDate: Sat Feb 16 22:34:39 2008 +1030 2954Commit: Adrian Johnson <ajohnson@redneon.com> 2955CommitDate: Mon Mar 10 17:04:01 2008 +1030 2956 2957 Remember the results of _cairo_image_analyze_transparency 2958 2959 As _cairo_image_analyze_transparency() is only used on images in the 2960 meta surface, we can store the results of the image analysis and 2961 return the saved value on second and subsequent calls to analyze the 2962 same image. 2963 2964 Previously each image was analyzed twice - once during 2965 CAIRO_PAGINATED_MODE_ANALYZE and once during 2966 CAIRO_PAGINATED_MODE_RENDER. 2967 2968 src/cairo-image-surface.c | 21 +++++++++++++++------ 2969 src/cairo-ps-surface.c | 3 +++ 2970 src/cairo-types-private.h | 3 ++- 2971 src/cairoint.h | 1 + 2972 4 files changed, 21 insertions(+), 7 deletions(-) 2973 2974commit 7eb8f497d8ac8ee76809f958170f1e5370744ba8 2975Author: Adrian Johnson <ajohnson@redneon.com> 2976AuthorDate: Sat Feb 16 22:13:43 2008 +1030 2977Commit: Adrian Johnson <ajohnson@redneon.com> 2978CommitDate: Mon Mar 10 17:02:31 2008 +1030 2979 2980 Move analyze_image_transparency in to cairo-image-surface.c 2981 2982 src/cairo-image-surface.c | 29 +++++++++++++++++++++++++++++ 2983 src/cairo-ps-surface.c | 44 ++------------------------------------------ 2984 src/cairo-types-private.h | 6 ++++++ 2985 src/cairoint.h | 3 +++ 2986 4 files changed, 40 insertions(+), 42 deletions(-) 2987 2988commit 00091d50a6187acd0fd35aef16a4fa5fab3c8aa9 2989Author: Adrian Johnson <ajohnson@redneon.com> 2990AuthorDate: Sun Mar 9 16:44:18 2008 +1030 2991Commit: Adrian Johnson <ajohnson@redneon.com> 2992CommitDate: Sun Mar 9 16:44:18 2008 +1030 2993 2994 Add fallback image comment to PS output 2995 2996 To help better understand when fallback images are used, a comment 2997 similiar to the following is included with each fallback image in the 2998 PS output. 2999 3000 % Fallback Image: x=101, y=478, w=50, h=10 res=300dpi size=31500 3001 3002 src/cairo-ps-surface.c | 14 ++++++++++++++ 3003 1 file changed, 14 insertions(+) 3004 3005commit 95acec69d8ee4fd37937f5b466c2baf612e9113a 3006Author: Adrian Johnson <ajohnson@redneon.com> 3007AuthorDate: Sun Mar 9 16:40:25 2008 +1030 3008Commit: Adrian Johnson <ajohnson@redneon.com> 3009CommitDate: Sun Mar 9 16:40:25 2008 +1030 3010 3011 Round fallback image size up instead of down 3012 3013 to ensure the fallback image completely covers the fallback region. 3014 3015 src/cairo-paginated-surface.c | 4 ++-- 3016 1 file changed, 2 insertions(+), 2 deletions(-) 3017 3018commit 94e41d5565ef72a0ef6e0235545c660aaf92b825 3019Author: Vladimir Vukicevic <vladimir@pobox.com> 3020AuthorDate: Sat Mar 8 17:45:47 2008 -0800 3021Commit: Vladimir Vukicevic <vladimir@sleet.vlad1.com> 3022CommitDate: Sat Mar 8 17:45:47 2008 -0800 3023 3024 [quartz] Don't force interpolation off for images 3025 3026 Creating a CGImage with interpolation set to FALSE means that 3027 it will never be interpolated; otherwise the interoplation 3028 is controlled by the destination context's interpolation 3029 quality setting. 3030 3031 src/cairo-quartz-image-surface.c | 4 ++-- 3032 src/cairo-quartz-surface.c | 2 +- 3033 2 files changed, 3 insertions(+), 3 deletions(-) 3034 3035commit 08e38d3f204911a793d3aa24bf2636caf3e58e20 3036Author: Vladimir Vukicevic <vladimir@pobox.com> 3037AuthorDate: Sat Mar 8 16:06:01 2008 -0800 3038Commit: Vladimir Vukicevic <vladimir@sleet.vlad1.com> 3039CommitDate: Sat Mar 8 16:06:01 2008 -0800 3040 3041 [quartz] align strides to 16 bytes, as per apple docs 3042 3043 The docs indicate that doing so can yield a peformance win, so we align 3044 ARGB32/RGB24 surface strides to 16 bytes. 3045 3046 src/cairo-quartz-surface.c | 21 ++++++++++++++------- 3047 1 file changed, 14 insertions(+), 7 deletions(-) 3048 3049commit 73444f16fa82b63a19aa938eb42001b5731326da 3050Author: Vladimir Vukicevic <vladimir@pobox.com> 3051AuthorDate: Sat Mar 8 15:31:15 2008 -0800 3052Commit: Vladimir Vukicevic <vladimir@sleet.vlad1.com> 3053CommitDate: Sat Mar 8 15:31:15 2008 -0800 3054 3055 [quartz] Don't try to call CGBitmapContextCreateImage on non-bitmap contexts 3056 3057 src/cairo-quartz-surface.c | 8 +++++--- 3058 1 file changed, 5 insertions(+), 3 deletions(-) 3059 3060commit 091df2c59b6dbd53a748955db359443d5d445ba4 3061Author: Vladimir Vukicevic <vladimir@pobox.com> 3062AuthorDate: Sat Mar 8 15:16:05 2008 -0800 3063Commit: Vladimir Vukicevic <vladimir@sleet.vlad1.com> 3064CommitDate: Sat Mar 8 15:16:05 2008 -0800 3065 3066 [quartz] properly honor text antialiasing modes in show_glyphs 3067 3068 src/cairo-quartz-surface.c | 35 ++++++++++++++++++++++++---- 3069 test/Makefile.am | 2 ++ 3070 test/text-antialias-none-quartz-ref.png | Bin 0 -> 304 bytes 3071 test/text-antialias-subpixel-quartz-ref.png | Bin 0 -> 1100 bytes 3072 4 files changed, 32 insertions(+), 5 deletions(-) 3073 3074commit 4f7ac14b8fdafd9fa85e797fb6e4c974788f70fc 3075Author: Vladimir Vukicevic <vladimir@pobox.com> 3076AuthorDate: Sat Mar 8 19:22:13 2008 -0800 3077Commit: Vladimir Vukicevic <vladimir@sleet.vlad1.com> 3078CommitDate: Sat Mar 8 15:15:45 2008 -0800 3079 3080 [quartz] implement REPEAT/REFLECT for gradients 3081 3082 Implement REPEAT/REFLECT for gradients in Quartz: for linear gradients, 3083 they're implemented natively (by extending the gradient region); for 3084 radial gradients, we generate a fallback image using pixman and render 3085 that. 3086 3087 src/cairo-quartz-surface.c | 203 +++++++++++++++++++++++++++++++++++++++------ 3088 1 file changed, 179 insertions(+), 24 deletions(-) 3089 3090commit 869942a97e34b09a7bd5b8cfc54832ce9dbd08b6 3091Author: Vladimir Vukicevic <vladimir@pobox.com> 3092AuthorDate: Fri Mar 7 16:55:47 2008 -0800 3093Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 3094CommitDate: Fri Mar 7 16:55:47 2008 -0800 3095 3096 [quartz] some more quartz ref images 3097 3098 test/Makefile.am | 2 ++ 3099 test/big-line-quartz-ref.png | Bin 0 -> 1075 bytes 3100 test/big-line-quartz-rgb24-ref.png | Bin 0 -> 941 bytes 3101 3 files changed, 2 insertions(+) 3102 3103commit 2e33d5f57bde82b953ebc5f9c1355327a7ac4967 3104Author: Vladimir Vukicevic <vladimir@pobox.com> 3105AuthorDate: Fri Mar 7 16:46:53 2008 -0800 3106Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 3107CommitDate: Fri Mar 7 16:46:53 2008 -0800 3108 3109 [quartz] Update a bunch of reference images 3110 3111 Generated with Bitstream Vera font family installed, using ATSUI 3112 font backend. 3113 3114 test/Makefile.am | 14 ++++++++++++++ 3115 test/font-matrix-translation-quartz-ref.png | Bin 0 -> 1041 bytes 3116 test/glyph-cache-pressure-quartz-ref.png | Bin 0 -> 3491 bytes 3117 test/linear-gradient-quartz-ref.png | Bin 0 -> 1164 bytes 3118 test/long-dashed-lines-quartz-ref.png | Bin 0 -> 2313 bytes 3119 test/mask-quartz-ref.png | Bin 10657 -> 10682 bytes 3120 test/operator-clear-quartz-ref.png | Bin 1195 -> 1368 bytes 3121 test/operator-clear-quartz-rgb24-ref.png | Bin 1244 -> 1201 bytes 3122 test/radial-gradient-quartz-ref.png | Bin 0 -> 92334 bytes 3123 test/random-intersections-quartz-ref.png | Bin 0 -> 197778 bytes 3124 test/reflected-stroke-quartz-ref.png | Bin 0 -> 5293 bytes 3125 test/rotate-image-surface-paint-quartz-ref.png | Bin 257 -> 257 bytes 3126 test/select-font-face-quartz-ref.png | Bin 0 -> 2958 bytes 3127 test/show-text-current-point-quartz-ref.png | Bin 0 -> 3198 bytes 3128 test/text-antialias-gray-quartz-ref.png | Bin 0 -> 1039 bytes 3129 test/text-pattern-quartz-rgb24-ref.png | Bin 0 -> 1867 bytes 3130 test/text-rotate-quartz-ref.png | Bin 0 -> 17405 bytes 3131 test/trap-clip-quartz-ref.png | Bin 6171 -> 6041 bytes 3132 test/unantialiased-shapes-quartz-ref.png | Bin 0 -> 4394 bytes 3133 19 files changed, 14 insertions(+) 3134 3135commit fb1378a24b5c6cd65b73aa611bb049ebb6f2b57a 3136Author: Vladimir Vukicevic <vladimir@pobox.com> 3137AuthorDate: Fri Mar 7 16:46:15 2008 -0800 3138Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 3139CommitDate: Fri Mar 7 16:46:15 2008 -0800 3140 3141 [quartz] Correctly handle gradients with non-identity pattern transform 3142 3143 Fixes http://bugs.freedesktop.org/show_bug.cgi?id=14248 3144 3145 src/cairo-quartz-private.h | 3 +- 3146 src/cairo-quartz-surface.c | 68 ++++++++++++++++++++-------------------------- 3147 2 files changed, 31 insertions(+), 40 deletions(-) 3148 3149commit 6c7610067f8a131a4fbba8d2b6a88c27ef229bbe 3150Author: Vladimir Vukicevic <vladimir@pobox.com> 3151AuthorDate: Fri Mar 7 15:35:31 2008 -0800 3152Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 3153CommitDate: Fri Mar 7 15:35:31 2008 -0800 3154 3155 [quartz] handle antialiasing correctly in stroke() and clip() 3156 3157 A CoreGraphics bug was fixed so strokes are no longer incorrectly 3158 drawn with antialiasing disabled; we no longer have to ignore 3159 antialiasing for stroke(). Also, antialiasing was not being 3160 correctly set for clip(). This fixes both issues. 3161 3162 src/cairo-quartz-surface.c | 9 ++++++--- 3163 1 file changed, 6 insertions(+), 3 deletions(-) 3164 3165commit 21dab3c5e9fe1ff344ff809053618c2c8f0710f3 3166Author: Vladimir Vukicevic <vladimir@pobox.com> 3167AuthorDate: Fri Mar 7 14:49:46 2008 -0800 3168Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 3169CommitDate: Fri Mar 7 14:49:46 2008 -0800 3170 3171 [quartz] look up the right symbol name for CGContextGetType 3172 3173 src/cairo-quartz-surface.c | 2 +- 3174 1 file changed, 1 insertion(+), 1 deletion(-) 3175 3176commit e52bad5e33e0b69b868525056c95ebd473fd6b10 3177Author: Vladimir Vukicevic <vladimir@pobox.com> 3178AuthorDate: Fri Mar 7 14:49:15 2008 -0800 3179Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 3180CommitDate: Fri Mar 7 14:49:15 2008 -0800 3181 3182 [quartz] split out (experimental) quartz-image into separate file 3183 3184 configure.in | 15 ++++++++++ 3185 src/Makefile.am | 5 ++++ 3186 src/cairo-quartz-image-surface.c | 21 +++++++++----- 3187 src/cairo-quartz-image.h | 59 ++++++++++++++++++++++++++++++++++++++++ 3188 src/cairo-quartz-surface.c | 10 +++---- 3189 src/cairo-quartz.h | 6 ---- 3190 6 files changed, 97 insertions(+), 19 deletions(-) 3191 3192commit b52f127c12fd7ee2b4f532954cb1e9e4eb8561b4 3193Author: Vladimir Vukicevic <vladimir@pobox.com> 3194AuthorDate: Thu Mar 6 16:52:54 2008 -0800 3195Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 3196CommitDate: Thu Mar 6 16:53:39 2008 -0800 3197 3198 [quartz] fix text rendering with gradient or image source 3199 3200 A quirk in how CGContextShowGlyphsWithAdvances works was causing all 3201 non-solid glyphs to be rendered on top of eachother. This fixes the problem. 3202 3203 src/cairo-quartz-surface.c | 65 +++++++++++++++++++++++++--------------------- 3204 1 file changed, 36 insertions(+), 29 deletions(-) 3205 3206commit de515e0f9a46162dcdef3bce81702a56ac6f29bf 3207Author: Chris Wilson <chris@chris-wilson.co.uk> 3208AuthorDate: Thu Mar 6 08:10:16 2008 +0000 3209Commit: Chris Wilson <chris@chris-wilson.co.uk> 3210CommitDate: Thu Mar 6 08:10:16 2008 +0000 3211 3212 [cairo-png] Revert accidental chunk from FORMAT_A1 support. 3213 3214 Whilst splitting the patches, I left in this line which would preserve 3215 1-bit grayscale unexpanded, but without any of the other FORMAT_A1 3216 support. 3217 3218 src/cairo-png.c | 4 +++- 3219 1 file changed, 3 insertions(+), 1 deletion(-) 3220 3221commit 8ba8a1192497ff89215f8a1657cbe88609083fb1 3222Author: Chris Wilson <chris@chris-wilson.co.uk> 3223AuthorDate: Tue Mar 4 13:59:57 2008 +0000 3224Commit: Chris Wilson <chris@chris-wilson.co.uk> 3225CommitDate: Tue Mar 4 13:59:57 2008 +0000 3226 3227 [win32] make check doc fixup. 3228 3229 Add the missing '%' to the macro as demanded by make check. 3230 3231 src/cairo-win32-surface.c | 2 +- 3232 1 file changed, 1 insertion(+), 1 deletion(-) 3233 3234commit 1dd894115e03aa202941ecebe9fd3420c73645ef 3235Author: Chris Wilson <chris@chris-wilson.co.uk> 3236AuthorDate: Tue Mar 4 09:04:17 2008 +0000 3237Commit: Chris Wilson <chris@chris-wilson.co.uk> 3238CommitDate: Tue Mar 4 09:31:21 2008 +0000 3239 3240 [cairo-pattern] Raise an error for _cairo_pattern_create_solid() failure. 3241 3242 Add a missing _cairo_error() for the malloc failure in 3243 _cairo_pattern_create_solid(). 3244 3245 src/cairo-pattern.c | 5 +++-- 3246 1 file changed, 3 insertions(+), 2 deletions(-) 3247 3248commit 5efc5238d548599a90a02d922d031a899424d1c1 3249Author: Chris Wilson <chris@chris-wilson.co.uk> 3250AuthorDate: Fri Feb 29 17:06:30 2008 +0000 3251Commit: Chris Wilson <chris@chris-wilson.co.uk> 3252CommitDate: Tue Mar 4 09:31:21 2008 +0000 3253 3254 [cairo-hull] Propagate error during hull computation. 3255 3256 Propagate the original error status instead of returning a new NO_MEMORY 3257 error. 3258 3259 src/cairo-hull.c | 22 ++++++++++++---------- 3260 1 file changed, 12 insertions(+), 10 deletions(-) 3261 3262commit 11a2444ec875aaaed12c1f1cfed5eb8e139c306d 3263Author: Chris Wilson <chris@chris-wilson.co.uk> 3264AuthorDate: Fri Jan 18 14:53:50 2008 +0000 3265Commit: Chris Wilson <chris@chris-wilson.co.uk> 3266CommitDate: Tue Mar 4 09:31:21 2008 +0000 3267 3268 [cairo-png] Support generating CAIRO_FORMAT_RGB24 from PNGs. 3269 3270 If the PNG does not have an alpha channel, then create an opaque image. 3271 3272 src/cairo-png.c | 69 +++++++++++++++++++------- 3273 test/.gitignore | 1 + 3274 test/Makefile.am | 2 + 3275 test/png.c | 149 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3276 4 files changed, 204 insertions(+), 17 deletions(-) 3277 3278commit 06b375aee999220ce294c22fa50a3040c19d5492 3279Author: Chris Wilson <chris@chris-wilson.co.uk> 3280AuthorDate: Fri Feb 29 11:55:01 2008 +0000 3281Commit: Chris Wilson <chris@chris-wilson.co.uk> 3282CommitDate: Tue Mar 4 09:31:21 2008 +0000 3283 3284 [cairo-png] Use cairo_format_stride_for_width() 3285 3286 Use cairo_format_stride_for_width() instead of assuming the pixel size 3287 and manually calculating the row stride. This should make it easier to 3288 support loading multiple image formats in future. 3289 3290 src/cairo-image-surface.c | 1 + 3291 src/cairo-png.c | 16 ++++++++++------ 3292 src/cairoint.h | 1 + 3293 3 files changed, 12 insertions(+), 6 deletions(-) 3294 3295commit b181f40949a855c957dc6e7a1033981a2ed7d05a 3296Author: Chris Wilson <chris@chris-wilson.co.uk> 3297AuthorDate: Thu Feb 28 16:04:08 2008 +0000 3298Commit: Chris Wilson <chris@chris-wilson.co.uk> 3299CommitDate: Tue Mar 4 09:31:20 2008 +0000 3300 3301 [test/a8-mask] Check negative strides as well. 3302 3303 Check that we also allow surfaces to be created using a negative stride. 3304 3305 test/a8-mask.c | 19 ++++++++++++++++++- 3306 1 file changed, 18 insertions(+), 1 deletion(-) 3307 3308commit b6eb1c5c92321849661198facd53510366050d45 3309Author: Chris Wilson <chris@chris-wilson.co.uk> 3310AuthorDate: Fri Feb 29 11:49:14 2008 +0000 3311Commit: Chris Wilson <chris@chris-wilson.co.uk> 3312CommitDate: Tue Mar 4 09:31:20 2008 +0000 3313 3314 [cairo-image-surface] Harden cairo_format_stride_for_width(). 3315 3316 Check the user supplied values for validity and potential overflow, 3317 returning -1 in such cases, and update the documentation to warn of the 3318 new error return. 3319 3320 src/cairo-image-surface.c | 14 ++++++++++++-- 3321 1 file changed, 12 insertions(+), 2 deletions(-) 3322 3323commit c06d929325710c1a2cbecb8a64803ca8e1ffbec0 3324Author: Chris Wilson <chris@chris-wilson.co.uk> 3325AuthorDate: Thu Feb 28 16:07:57 2008 +0000 3326Commit: Chris Wilson <chris@chris-wilson.co.uk> 3327CommitDate: Tue Mar 4 09:31:20 2008 +0000 3328 3329 [cairo-png] Further hardening against malloc failures. 3330 3331 On some OOM paths, libpng raises a warning as opposed to an error, 3332 these were not being propagated back to the caller. We were also not 3333 checking that we did not overwrite a pre-existing error status when 3334 raising an error whilst performing I/O. 3335 3336 src/cairo-png.c | 38 +++++++++++++++++++++++++++++--------- 3337 1 file changed, 29 insertions(+), 9 deletions(-) 3338 3339commit c985096e6d7c04a780c055387e17ec4bb9334db3 3340Author: Chris Wilson <chris@chris-wilson.co.uk> 3341AuthorDate: Fri Feb 29 11:16:39 2008 +0000 3342Commit: Chris Wilson <chris@chris-wilson.co.uk> 3343CommitDate: Tue Mar 4 09:31:20 2008 +0000 3344 3345 [cairo-xlib] Tidy usage of _cairo_error(). 3346 3347 Avoid a duplicate call to _cairo_error() and add a missing one. 3348 3349 src/cairo-xlib-display.c | 1 + 3350 src/cairo-xlib-surface.c | 12 ++++++------ 3351 2 files changed, 7 insertions(+), 6 deletions(-) 3352 3353commit 914f4a3ec5a310c823558c27e500a23be808b9fe 3354Author: Chris Wilson <chris@chris-wilson.co.uk> 3355AuthorDate: Fri Feb 29 11:15:26 2008 +0000 3356Commit: Chris Wilson <chris@chris-wilson.co.uk> 3357CommitDate: Tue Mar 4 09:31:20 2008 +0000 3358 3359 [cairo-pattern] Tidy usage of _cairo_error(). 3360 3361 Remove the duplicate calls to _cairo_error() along the constructor 3362 error paths and a missing call to _cairo_error(). 3363 3364 src/cairo-pattern.c | 20 +++++--------------- 3365 1 file changed, 5 insertions(+), 15 deletions(-) 3366 3367commit d9fb4d4bc55eae42f6348b142e667be454064e2c 3368Author: Chris Wilson <chris@chris-wilson.co.uk> 3369AuthorDate: Fri Feb 29 11:12:57 2008 +0000 3370Commit: Chris Wilson <chris@chris-wilson.co.uk> 3371CommitDate: Tue Mar 4 09:31:20 2008 +0000 3372 3373 [cairo-ft-font] Simplify return of the nil font face during construction. 3374 3375 Simply return the nil font face from the internal constructor rather 3376 than returning NULL and repeating the same fixup in the callers. 3377 3378 src/cairo-ft-font.c | 12 +++--------- 3379 1 file changed, 3 insertions(+), 9 deletions(-) 3380 3381commit fd7d5d6e1dbad6c44a607d91ee59361ee19d32f9 3382Author: Chris Wilson <chris@chris-wilson.co.uk> 3383AuthorDate: Fri Feb 29 11:11:47 2008 +0000 3384Commit: Chris Wilson <chris@chris-wilson.co.uk> 3385CommitDate: Tue Mar 4 09:31:20 2008 +0000 3386 3387 [cairo-clip] Raise _cairo_error() at original error site. 3388 3389 In a couple of places where we detect an error and return an error 3390 object to the user, we did not throw a _cairo_error(). 3391 3392 src/cairo-clip.c | 8 ++++++-- 3393 1 file changed, 6 insertions(+), 2 deletions(-) 3394 3395commit 1654510a349d99167247d1004a481a95388cf0be 3396Author: Chris Wilson <chris@chris-wilson.co.uk> 3397AuthorDate: Fri Feb 29 11:10:34 2008 +0000 3398Commit: Chris Wilson <chris@chris-wilson.co.uk> 3399CommitDate: Tue Mar 4 09:31:20 2008 +0000 3400 3401 [cairo-cff-subset] Propagate error status. 3402 3403 Remove duplicate _cairo_error() by ensuring that the error status is 3404 always propagated from the original error site. Note that in one case 3405 this eliminates a potential _cairo_error(CAIRO_INT_STATUS_UNSUPPORTED)! 3406 3407 src/cairo-cff-subset.c | 47 +++++++++++++++++++++++++---------------------- 3408 1 file changed, 25 insertions(+), 22 deletions(-) 3409 3410commit 3b93d90edde7c065c6484e03e056b8605af85c4d 3411Author: Chris Wilson <chris@chris-wilson.co.uk> 3412AuthorDate: Fri Feb 29 10:16:05 2008 +0000 3413Commit: Chris Wilson <chris@chris-wilson.co.uk> 3414CommitDate: Tue Mar 4 09:31:20 2008 +0000 3415 3416 [cairo-type1-fallback] Propagate original error status. 3417 3418 _cairo_error() has already been called at the originating error site, so 3419 remove the duplicate (hard-coded!) call at the return statement. 3420 3421 src/cairo-type1-fallback.c | 10 ++++++---- 3422 1 file changed, 6 insertions(+), 4 deletions(-) 3423 3424commit 141c54cd276ae86f6677fa8f66a118264d4287bf 3425Author: Chris Wilson <chris@chris-wilson.co.uk> 3426AuthorDate: Fri Feb 29 08:54:33 2008 +0000 3427Commit: Chris Wilson <chris@chris-wilson.co.uk> 3428CommitDate: Tue Mar 4 09:31:19 2008 +0000 3429 3430 [cairo-truetype-subset] Remove duplicate _cairo_error(). 3431 3432 _cairo_error() has already been called at the originating error site, so 3433 remove the duplicate call at the return statement. 3434 3435 src/cairo-truetype-subset.c | 7 ++----- 3436 1 file changed, 2 insertions(+), 5 deletions(-) 3437 3438commit d89edde84de9cec9ce6f76f4f2c44dd9c1220528 3439Author: Vladimir Vukicevic <vladimir@pobox.com> 3440AuthorDate: Tue Mar 4 00:15:46 2008 -0800 3441Commit: Vladimir Vukicevic <vladimir@sleet.vlad1.com> 3442CommitDate: Tue Mar 4 00:15:46 2008 -0800 3443 3444 [meta] always copy glyph array before passing to _cairo_surface_show_glyphs 3445 3446 _cairo_surface_show_glyphs is allowed to mutate the glyph array; if it's 3447 handed the internal array that the meta surface holds, then any subsequent 3448 playback (such as for fine-grained fallbacks) will result in incorrect 3449 glyph rendering. 3450 3451 Ref: https://bugzilla.mozilla.org/show_bug.cgi?id=419917 3452 (I was unable to create a simple cairo testcase to demonstrate the problem.) 3453 3454 src/cairo-meta-surface.c | 24 +++++++++++++++--------- 3455 1 file changed, 15 insertions(+), 9 deletions(-) 3456 3457commit 4a1f65b63e891436f5896b1ccb0af26dd4b9cfe1 3458Author: Vladimir Vukicevic <vladimir@pobox.com> 3459AuthorDate: Mon Mar 3 21:16:12 2008 -0800 3460Commit: Vladimir Vukicevic <vladimir@sleet.vlad1.com> 3461CommitDate: Mon Mar 3 21:16:12 2008 -0800 3462 3463 Fix msvc compilation issue in cairo-compiler-private.h 3464 3465 __WIN32__ is not a standard define set by MSVC; we have to check for 3466 __WIN32__ (for mingw/gcc) and for _MSC_VER, for MSVC. 3467 3468 src/cairo-compiler-private.h | 2 +- 3469 1 file changed, 1 insertion(+), 1 deletion(-) 3470 3471commit 4588b016d389bb678ab55f7dbbf2bf8cdf597bc1 3472Author: Vladimir Vukicevic <vladimir@pobox.com> 3473AuthorDate: Mon Mar 3 20:00:08 2008 -0800 3474Commit: Vladimir Vukicevic <vladimir@sleet.vlad1.com> 3475CommitDate: Mon Mar 3 20:00:08 2008 -0800 3476 3477 [quartz] compilation fix 3478 3479 I'm an idiot and forgot to stg refresh, apparently. 3480 3481 src/cairo-quartz-surface.c | 2 +- 3482 1 file changed, 1 insertion(+), 1 deletion(-) 3483 3484commit 2f9350424fd7eb03ecbdbdee2831944d4e9c35af 3485Author: Vladimir Vukicevic <vladimir@pobox.com> 3486AuthorDate: Mon Mar 3 17:43:41 2008 -0800 3487Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 3488CommitDate: Mon Mar 3 17:43:41 2008 -0800 3489 3490 [win32] Treat all incoming HDCs as RGB24, regardless of depth 3491 3492 Assuming A8/A1 doesn't really make sense in any case, and doing 3493 this allows for rendering to 8bpp displays. 3494 3495 src/cairo-win32-surface.c | 28 ++++++---------------------- 3496 1 file changed, 6 insertions(+), 22 deletions(-) 3497 3498commit 9dd55f6fe854ec2365a5c1d264e39ca03f6eceb5 3499Author: Vladimir Vukicevic <vladimir@pobox.com> 3500AuthorDate: Mon Mar 3 17:40:21 2008 -0800 3501Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 3502CommitDate: Mon Mar 3 17:40:21 2008 -0800 3503 3504 [quartz] use CGContextGetType API if available 3505 3506 We need to have a way to figure out if a context is a bitmap context; 3507 the current method works, but it prints a warning to the system console 3508 if called on a non-bitmap context. There's a private CGContextGetType 3509 API that seems to let us get this information. 3510 3511 src/cairo-quartz-surface.c | 17 ++++++++++++++++- 3512 1 file changed, 16 insertions(+), 1 deletion(-) 3513 3514commit 5b334b274778f588c997d674c111a8bbf91be1df 3515Author: Antoine Azar <cairo@antoineazar.com> 3516AuthorDate: Fri Feb 29 03:49:55 2008 -0500 3517Commit: Carl Worth <cworth@cworth.org> 3518CommitDate: Mon Mar 3 10:21:17 2008 -0800 3519 3520 fixed compilation typo on win32 3521 3522 src/cairo-win32-surface.c | 10 +++++----- 3523 1 file changed, 5 insertions(+), 5 deletions(-) 3524 3525commit 39d18ecbfda6b3c1234c5ef4a4723099990b3502 3526Author: Claudio Ciccani <klan@directfb.org> 3527AuthorDate: Sat Mar 1 11:07:47 2008 +0100 3528Commit: Claudio Ciccani <klan@directfb.org> 3529CommitDate: Sat Mar 1 11:07:47 2008 +0100 3530 3531 [cairo-directfb] Fixed bug in clone_similar() (src_x added twice). 3532 3533 src/cairo-directfb-surface.c | 2 +- 3534 1 file changed, 1 insertion(+), 1 deletion(-) 3535 3536commit 6295c46569de13a96816ed8e30dcefd73af1eb18 3537Author: Carl Worth <cworth@cworth.org> 3538AuthorDate: Thu Feb 28 17:08:40 2008 -0800 3539Commit: Carl Worth <cworth@cworth.org> 3540CommitDate: Thu Feb 28 17:08:40 2008 -0800 3541 3542 INSTALL: Add notes on running autogen.sh if there is no configure script 3543 3544 INSTALL | 71 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------ 3545 1 file changed, 65 insertions(+), 6 deletions(-) 3546 3547commit e7e4a03dd387d264226105dc29c8541f0528fd2c 3548Author: Carl Worth <cworth@cworth.org> 3549AuthorDate: Thu Feb 28 16:39:42 2008 -0800 3550Commit: Carl Worth <cworth@cworth.org> 3551CommitDate: Thu Feb 28 16:39:42 2008 -0800 3552 3553 get-path-extents: Fix APPROX_EQUALS to round values on both sides of the comparison 3554 3555 test/get-path-extents.c | 7 ++++++- 3556 1 file changed, 6 insertions(+), 1 deletion(-) 3557 3558commit 602489b150e879bc5cab6b1ad37c107799bf05ae 3559Author: Carl Worth <cworth@cworth.org> 3560AuthorDate: Thu Feb 28 16:33:51 2008 -0800 3561Commit: Carl Worth <cworth@cworth.org> 3562CommitDate: Thu Feb 28 16:33:51 2008 -0800 3563 3564 get-path-extents: Use APPROX_EQUALS instead of EQUALS for text path tests 3565 3566 This is done grudgingly due to freetype rounding the coordinates 3567 of the extents when hinting is enabled. 3568 3569 test/get-path-extents.c | 12 +++++++++--- 3570 1 file changed, 9 insertions(+), 3 deletions(-) 3571 3572commit 50a6fe1a2aa88e1f5ba40eda21142319f98f3d0d 3573Author: Carl Worth <cworth@cworth.org> 3574AuthorDate: Thu Feb 28 16:32:55 2008 -0800 3575Commit: Carl Worth <cworth@cworth.org> 3576CommitDate: Thu Feb 28 16:32:55 2008 -0800 3577 3578 Remove unnecessary cairo_set_tolerance call from get-path-extents test 3579 3580 test/get-path-extents.c | 1 - 3581 1 file changed, 1 deletion(-) 3582 3583commit 4a73471087f42baf07988e0f2de323ed3b18dac9 3584Merge: 54a61911f 523c7dbf6 3585Author: Carl Worth <cworth@cworth.org> 3586AuthorDate: Thu Feb 28 16:21:11 2008 -0800 3587Commit: Carl Worth <cworth@cworth.org> 3588CommitDate: Thu Feb 28 16:21:11 2008 -0800 3589 3590 Merge branch 'master' of git.cairographics.org:/git/cairo 3591 3592commit 54a61911f26b46b6d9b7335ac7dda746081261d9 3593Author: Carl Worth <cworth@cworth.org> 3594AuthorDate: Thu Feb 28 16:20:56 2008 -0800 3595Commit: Carl Worth <cworth@cworth.org> 3596CommitDate: Thu Feb 28 16:20:56 2008 -0800 3597 3598 Increment version to 1.5.13 after the 1.5.12 snapshot 3599 3600 configure.in | 2 +- 3601 1 file changed, 1 insertion(+), 1 deletion(-) 3602 3603commit 523c7dbf6db85e75624ae111179dedb570212bb2 3604Author: Behdad Esfahbod <behdad@behdad.org> 3605AuthorDate: Thu Feb 28 18:53:08 2008 -0500 3606Commit: Behdad Esfahbod <behdad@behdad.org> 3607CommitDate: Thu Feb 28 18:53:45 2008 -0500 3608 3609 [cairo-scaled-font] Pedantic check for zero-area glyphs 3610 3611 src/cairo-scaled-font.c | 4 ++-- 3612 1 file changed, 2 insertions(+), 2 deletions(-) 3613 3614commit 3ec4b9a4fc96572f099d0e9679fec9e5eb97a32e 3615Author: Carl Worth <cworth@cworth.org> 3616AuthorDate: Thu Feb 28 15:46:22 2008 -0800 3617Commit: Carl Worth <cworth@cworth.org> 3618CommitDate: Thu Feb 28 15:46:22 2008 -0800 3619 3620 Increment cairo version to 1.5.12 and libtool versioning to 18:0:16 3621 3622 configure.in | 6 +++--- 3623 1 file changed, 3 insertions(+), 3 deletions(-) 3624 3625commit bf99e355d9d24a4820dc93b49321b15318501b61 3626Author: Carl Worth <cworth@cworth.org> 3627AuthorDate: Thu Feb 28 15:45:11 2008 -0800 3628Commit: Carl Worth <cworth@cworth.org> 3629CommitDate: Thu Feb 28 15:45:11 2008 -0800 3630 3631 Clarify that 16-bit limit still exists in pixman 3632 3633 NEWS | 21 +++++++++++---------- 3634 1 file changed, 11 insertions(+), 10 deletions(-) 3635 3636commit 4cc174f72f635e885b5f5fdc3d67789d3952cd2e 3637Author: Carl Worth <cworth@cworth.org> 3638AuthorDate: Thu Feb 28 15:41:36 2008 -0800 3639Commit: Carl Worth <cworth@cworth.org> 3640CommitDate: Thu Feb 28 15:41:36 2008 -0800 3641 3642 Mark the big-line test as XFAIL 3643 3644 test/Makefile.am | 1 + 3645 test/big-line.c | 3 ++- 3646 2 files changed, 3 insertions(+), 1 deletion(-) 3647 3648commit 5d0bc97b2000a7b7e40a7a3918f09d90bdf5376a 3649Author: Carl Worth <cworth@cworth.org> 3650AuthorDate: Thu Feb 28 15:35:46 2008 -0800 3651Commit: Carl Worth <cworth@cworth.org> 3652CommitDate: Thu Feb 28 15:35:46 2008 -0800 3653 3654 Fix incorrect reference images for big-line test 3655 3656 I mistakenly generated the original reference images with 3657 a 16.16 version of cairo, (which manifests a different 3658 buggy behavior than does the current 24.8 cairo). 3659 3660 test/big-line-ps-ref.png | Bin 1161 -> 1148 bytes 3661 test/big-line-ps-rgb24-ref.png | Bin 809 -> 830 bytes 3662 test/big-line-ref.png | Bin 1421 -> 1486 bytes 3663 test/big-line-rgb24-ref.png | Bin 1231 -> 1308 bytes 3664 4 files changed, 0 insertions(+), 0 deletions(-) 3665 3666commit 4c7784e91eb953b905f187dda2a76dc102d73d01 3667Author: Jody Goldberg <jody@gnome.org> 3668AuthorDate: Thu Feb 28 15:23:53 2008 -0800 3669Commit: Carl Worth <cworth@cworth.org> 3670CommitDate: Thu Feb 28 15:23:53 2008 -0800 3671 3672 Fix PDF ouput when cross-compiling with mingw 3673 3674 Need to use __WIN32__ instead of _MSC_VER to select _snprintf in 3675 place of snprintf when cross compiling. Otherwise all all %ld 3676 arguments get misprinted resulting in broken PDF output. 3677 3678 src/cairo-compiler-private.h | 5 ++++- 3679 src/cairo-output-stream.c | 5 +---- 3680 2 files changed, 5 insertions(+), 5 deletions(-) 3681 3682commit 3d9db511c6990481add24f14225e36ea4d3f62d5 3683Author: Carl Worth <cworth@cworth.org> 3684AuthorDate: Thu Feb 28 15:07:50 2008 -0800 3685Commit: Carl Worth <cworth@cworth.org> 3686CommitDate: Thu Feb 28 15:07:50 2008 -0800 3687 3688 Remove references to PIXMAN_yuy2 and PIXMAN_yv12 enum values 3689 3690 These were added in cb5ea8abfdf2c92241d4dea8bb827648697fd8e9 to 3691 quiet a compiler warning. We're reverting them now to avoid 3692 gratuitously requiring a new pixman version just to pick up two 3693 enum values that we aren't actually using. 3694 3695 src/cairo-image-surface.c | 3 --- 3696 1 file changed, 3 deletions(-) 3697 3698commit a8e5c6b924447bb1303589cc31792a6c4bcc27ec 3699Author: Carl Worth <cworth@cworth.org> 3700AuthorDate: Thu Feb 28 15:05:12 2008 -0800 3701Commit: Carl Worth <cworth@cworth.org> 3702CommitDate: Thu Feb 28 15:05:12 2008 -0800 3703 3704 Fix typo in comment 3705 3706 src/cairo-fixed-private.h | 2 +- 3707 1 file changed, 1 insertion(+), 1 deletion(-) 3708 3709commit 307a7448ea89c5cf2805bc3a8da31c5ea77e4542 3710Author: Larry Ewing <lewing@novell.com> 3711AuthorDate: Thu Feb 28 15:02:23 2008 -0800 3712Commit: Carl Worth <cworth@cworth.org> 3713CommitDate: Thu Feb 28 15:02:23 2008 -0800 3714 3715 Add big-line test showing a 24.8 failure 3716 3717 test/.gitignore | 1 + 3718 test/Makefile.am | 5 +++ 3719 test/big-line-ps-ref.png | Bin 0 -> 1161 bytes 3720 test/big-line-ps-rgb24-ref.png | Bin 0 -> 809 bytes 3721 test/big-line-ref.png | Bin 0 -> 1421 bytes 3722 test/big-line-rgb24-ref.png | Bin 0 -> 1231 bytes 3723 test/big-line.c | 69 +++++++++++++++++++++++++++++++++++++++++ 3724 7 files changed, 75 insertions(+) 3725 3726commit 81175110ab44e74fe04f2bc8ed3c9983e23a82c6 3727Author: Carl Worth <cworth@cworth.org> 3728AuthorDate: Thu Feb 28 14:36:47 2008 -0800 3729Commit: Carl Worth <cworth@cworth.org> 3730CommitDate: Thu Feb 28 14:36:47 2008 -0800 3731 3732 NEWS: Add notes for cairo 1.5.12 3733 3734 NEWS | 94 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3735 1 file changed, 94 insertions(+) 3736 3737commit fbd29a4025fc3bca3812d205230151e8c6e80f49 3738Author: Carl Worth <cworth@cworth.org> 3739AuthorDate: Thu Feb 28 14:36:32 2008 -0800 3740Commit: Carl Worth <cworth@cworth.org> 3741CommitDate: Thu Feb 28 14:36:32 2008 -0800 3742 3743 Fix 'make doc-publish' for when run twice on the same day 3744 3745 Makefile.am | 1 + 3746 1 file changed, 1 insertion(+) 3747 3748commit 8d515344c4ecded58566b704a740766f85359876 3749Author: Carl Worth <cworth@cworth.org> 3750AuthorDate: Thu Feb 28 14:35:57 2008 -0800 3751Commit: Carl Worth <cworth@cworth.org> 3752CommitDate: Thu Feb 28 14:35:57 2008 -0800 3753 3754 Add cairo-quartz to the manual 3755 3756 doc/public/Makefile.am | 1 - 3757 doc/public/cairo-docs.xml | 2 +- 3758 doc/public/cairo-sections.txt | 11 +++++++++ 3759 doc/public/tmpl/cairo-quartz.sgml | 49 ++++++++++++++++++++++++++++++++++++++ 3760 doc/public/tmpl/cairo-surface.sgml | 1 + 3761 5 files changed, 62 insertions(+), 2 deletions(-) 3762 3763commit c8c77f01f7429b43dba4840698497187ff4d5779 3764Author: Carl Worth <cworth@cworth.org> 3765AuthorDate: Thu Feb 28 13:02:27 2008 -0800 3766Commit: Carl Worth <cworth@cworth.org> 3767CommitDate: Thu Feb 28 13:02:27 2008 -0800 3768 3769 Fix typo in documentation 3770 3771 src/cairo-quartz-image-surface.c | 2 +- 3772 1 file changed, 1 insertion(+), 1 deletion(-) 3773 3774commit fa4b91fcac9b83cb66ac98dbcb395bd7b75c7560 3775Author: Carl Worth <cworth@cworth.org> 3776AuthorDate: Thu Feb 28 12:56:31 2008 -0800 3777Commit: Carl Worth <cworth@cworth.org> 3778CommitDate: Thu Feb 28 12:56:31 2008 -0800 3779 3780 Add missing reference images to make distcheck happily 3781 3782 test/Makefile.am | 28 ++++++++++++++++++++++------ 3783 1 file changed, 22 insertions(+), 6 deletions(-) 3784 3785commit a95b22858fa5d65600faf5163966e18760a3cf35 3786Merge: c84ec5851 67d543716 3787Author: Carl Worth <cworth@cworth.org> 3788AuthorDate: Thu Feb 28 12:30:13 2008 -0800 3789Commit: Carl Worth <cworth@cworth.org> 3790CommitDate: Thu Feb 28 12:30:13 2008 -0800 3791 3792 Merge branch '24.8' 3793 3794commit 67d543716e294f4af330c52dcc9597e16267425e 3795Author: Carl Worth <cworth@cworth.org> 3796AuthorDate: Wed Feb 27 20:39:53 2008 -0800 3797Commit: Carl Worth <cworth@cworth.org> 3798CommitDate: Wed Feb 27 20:39:53 2008 -0800 3799 3800 PS: Fix to never break the final ~> that terminates a base85 stream. 3801 3802 This was recently broken in commit 40d5082c24819968a5ee5a8f72e3b9cd61cb6105 3803 which uses a base85-stream but without strings for encapsulating image 3804 data. The bug was that the protection for ~> was only being applied 3805 to the string encodings rather than all base85 streams. 3806 3807 We got lucky recently that the 24.8 change just happened to put the ~> 3808 sequence on the line-wrap boundary so the test suite tripped up the 3809 bug. Otherwise, we could have missed this for quite some time. 3810 3811 src/cairo-ps-surface.c | 16 ++++++++-------- 3812 1 file changed, 8 insertions(+), 8 deletions(-) 3813 3814commit c84ec585123be1802b50665e192b80daf14fdd2b 3815Author: Carl Worth <cworth@cworth.org> 3816AuthorDate: Wed Feb 27 16:24:10 2008 -0800 3817Commit: Carl Worth <cworth@cworth.org> 3818CommitDate: Wed Feb 27 16:24:10 2008 -0800 3819 3820 Add some missing .gitignore entries 3821 3822 test/.gitignore | 5 ++++- 3823 1 file changed, 4 insertions(+), 1 deletion(-) 3824 3825commit 1df0b001b5b3e1062fa3c3a9070391105fe3d4ba 3826Author: Carl Worth <cworth@cworth.org> 3827AuthorDate: Wed Feb 27 15:08:18 2008 -0800 3828Commit: Carl Worth <cworth@cworth.org> 3829CommitDate: Wed Feb 27 15:08:18 2008 -0800 3830 3831 Change cairo's fixed-point format from 16.16 to 24.8 3832 3833 The additional 8 bits of integer allows device space to be 256 3834 times larger before applications need to start worrying about 3835 any issues with overflow. So this should help in many cases. 3836 And the loss of 8 bits of sub-pixel precision shouldn't cause 3837 any harm at all---16 was really much more than necessary. 3838 3839 With this change the details of rasterization for several tests 3840 are changed slightly, (particularly on arcs, for example), so 3841 many reference images are updated here. 3842 3843 NOTE: This change is currently breaking get-path-extents for 3844 ps/pdf/svg as well as push-group for ps. We do not yet know 3845 the reasons for these new failures. 3846 3847 src/cairo-fixed-type-private.h | 2 +- 3848 test/clip-operator-ref.png | Bin 8262 -> 8263 bytes 3849 test/clip-twice-ref.png | Bin 1191 -> 1362 bytes 3850 test/clip-twice-rgb24-ref.png | Bin 1120 -> 1198 bytes 3851 test/copy-path-ps-argb32-ref.png | Bin 442 -> 0 bytes 3852 test/copy-path-ps-ref.png | Bin 0 -> 474 bytes 3853 test/copy-path-ps-rgb24-ref.png | Bin 440 -> 0 bytes 3854 test/linear-gradient-ps-ref.png | Bin 718 -> 779 bytes 3855 test/mask-ref.png | Bin 8381 -> 8476 bytes 3856 test/mask-svg-argb32-ref.png | Bin 8389 -> 8527 bytes 3857 test/meta-surface-pattern-svg-argb32-ref.png | Bin 3896 -> 3924 bytes 3858 test/operator-clear-ps-argb32-ref.png | Bin 1437 -> 1400 bytes 3859 test/operator-source-ref.png | Bin 4422 -> 4422 bytes 3860 test/push-group-ref.png | Bin 3005 -> 3126 bytes 3861 test/push-group-rgb24-ref.png | Bin 2849 -> 2961 bytes 3862 test/random-intersections-ps-ref.png | Bin 89253 -> 89253 bytes 3863 test/random-intersections-ref.png | Bin 132210 -> 148722 bytes 3864 test/text-pattern-svg-argb32-ref.png | Bin 1749 -> 1733 bytes 3865 test/text-rotate-ps-ref.png | Bin 6859 -> 6878 bytes 3866 test/trap-clip-ref.png | Bin 5723 -> 5772 bytes 3867 test/unantialiased-shapes-ref.png | Bin 3968 -> 4459 bytes 3868 21 files changed, 1 insertion(+), 1 deletion(-) 3869 3870commit 0532cb5c03bac394e22ac4200e8bebc3d959b21c 3871Author: Carl Worth <cworth@cworth.org> 3872AuthorDate: Wed Feb 27 13:18:39 2008 -0800 3873Commit: Carl Worth <cworth@cworth.org> 3874CommitDate: Wed Feb 27 13:18:39 2008 -0800 3875 3876 Remove reference images for text-zero-len 3877 3878 This test isn't generating any image output, so it's silly to 3879 have a 60x60 reference image for that. Not only that, but the 3880 rgb24 cases have always been failing due to a missing rgb24- 3881 specific reference image, (but pdiff had been hiding that). 3882 3883 test/Makefile.am | 1 + 3884 test/text-zero-len-ref.png | Bin 130 -> 0 bytes 3885 test/text-zero-len.c | 4 +--- 3886 3 files changed, 2 insertions(+), 3 deletions(-) 3887 3888commit 427a73ab31e2dce9d98820ba921b216176cde182 3889Author: Carl Worth <cworth@cworth.org> 3890AuthorDate: Wed Feb 27 12:43:37 2008 -0800 3891Commit: Carl Worth <cworth@cworth.org> 3892CommitDate: Wed Feb 27 12:43:37 2008 -0800 3893 3894 Add ps-specific reference images for two recently-added tests 3895 3896 test/Makefile.am | 2 ++ 3897 test/long-dashed-lines-ps-ref.png | Bin 0 -> 1516 bytes 3898 test/reflected-stroke-ps-ref.png | Bin 0 -> 3898 bytes 3899 3 files changed, 2 insertions(+) 3900 3901commit 676c869d794f824b6e624d0b9b5c960870102406 3902Author: Carl Worth <cworth@cworth.org> 3903AuthorDate: Wed Feb 27 11:24:59 2008 -0800 3904Commit: Carl Worth <cworth@cworth.org> 3905CommitDate: Wed Feb 27 11:24:59 2008 -0800 3906 3907 Add some new ps-specific reference images 3908 3909 These are necessary now due to the recent change to use pdiff 3910 only when the differences are less than a particular threshold. 3911 3912 test/Makefile.am | 8 ++++++++ 3913 test/caps-joins-ps-ref.png | Bin 0 -> 1459 bytes 3914 test/close-path-ps-ref.png | Bin 0 -> 309 bytes 3915 test/infinite-join-ps-ref.png | Bin 0 -> 218 bytes 3916 test/leaky-polygon-ps-ref.png | Bin 0 -> 354 bytes 3917 test/rectilinear-miter-limit-ps-ref.png | Bin 0 -> 221 bytes 3918 test/self-copy-ps-ref.png | Bin 0 -> 335 bytes 3919 test/skew-extreme-ps-ref.png | Bin 0 -> 1048 bytes 3920 test/text-rotate-ps-ref.png | Bin 0 -> 6859 bytes 3921 test/transforms-ps-ref.png | Bin 0 -> 418 bytes 3922 10 files changed, 8 insertions(+) 3923 3924commit 1889427e78f2501df78a42c5e75c696745b517a7 3925Author: Vladimir Vukicevic <vladimir@pobox.com> 3926AuthorDate: Wed Feb 27 12:35:56 2008 -0500 3927Commit: Vladimir Vukicevic <vladimir@ca-224.office.mozilla.org> 3928CommitDate: Wed Feb 27 12:36:16 2008 -0500 3929 3930 Fix usage of rectangle_int16_t in ps surface, and rename types 3931 3932 The rectangle_int16_t usage was causing failures on 24.8 (due to a wrong 3933 pointer used to get_extents); I removed all the specific int16/int32 typedefs 3934 to avoid this situation in the future. 3935 3936 src/cairo-ps-surface.c | 2 +- 3937 src/cairo-types-private.h | 47 +++++++++++++++++++++-------------------------- 3938 2 files changed, 22 insertions(+), 27 deletions(-) 3939 3940commit 4f7d3063520b987d3df3bcebfaeed9489b16b12d 3941Author: Chris Wilson <chris@chris-wilson.co.uk> 3942AuthorDate: Wed Feb 27 10:11:08 2008 +0000 3943Commit: Chris Wilson <chris@chris-wilson.co.uk> 3944CommitDate: Wed Feb 27 10:11:08 2008 +0000 3945 3946 [cairo-paginated-surface] Fix enum compiler warning. 3947 3948 Add a CAIRO_SURFACE_TYPE_QUARTZ_IMAGE to the switch to suppress a 3949 compiler warning. 3950 3951 src/cairo-paginated-surface.c | 1 + 3952 1 file changed, 1 insertion(+) 3953 3954commit cb5ea8abfdf2c92241d4dea8bb827648697fd8e9 3955Author: Chris Wilson <chris@chris-wilson.co.uk> 3956AuthorDate: Thu Feb 21 16:03:42 2008 +0000 3957Commit: Chris Wilson <chris@chris-wilson.co.uk> 3958CommitDate: Wed Feb 27 09:51:37 2008 +0000 3959 3960 [cairo-image-surface] Compiler warnings and whitespace. 3961 3962 Silence a couple of enum compiler warnings and tweak the whitespace. 3963 3964 src/cairo-image-surface.c | 45 ++++++++++++++++++++++++--------------------- 3965 1 file changed, 24 insertions(+), 21 deletions(-) 3966 3967commit 22600e2393f2ec5ebe40213c49599167523ddf20 3968Author: Chris Wilson <chris@chris-wilson.co.uk> 3969AuthorDate: Fri Feb 22 17:07:45 2008 +0000 3970Commit: Chris Wilson <chris@chris-wilson.co.uk> 3971CommitDate: Wed Feb 27 09:48:24 2008 +0000 3972 3973 [cairo-gstate] Remove a couple of impossible guards. 3974 3975 Delete a couple of superfluous gstate != NULL guards. 3976 3977 src/cairo-gstate.c | 6 ------ 3978 1 file changed, 6 deletions(-) 3979 3980commit 37e597f1e553a98d06c5334aa95b918ed303e89e 3981Author: Chris Wilson <chris@chris-wilson.co.uk> 3982AuthorDate: Fri Feb 22 17:03:51 2008 +0000 3983Commit: Chris Wilson <chris@chris-wilson.co.uk> 3984CommitDate: Wed Feb 27 09:48:13 2008 +0000 3985 3986 [cairo-gstate] Propagate the error from _cairo_gstate_clone(). 3987 3988 Propagate the true status value back from the _cairo_gstate_init_copy() 3989 instead of assuming that is a NO_MEMORY and re-raising the error in the 3990 caller. 3991 3992 src/cairo-gstate.c | 22 +++++++++++----------- 3993 1 file changed, 11 insertions(+), 11 deletions(-) 3994 3995commit 127d7f43ea7043bba1d276d9721e80a702d9fd46 3996Author: Chris Wilson <chris@chris-wilson.co.uk> 3997AuthorDate: Thu Feb 21 15:56:34 2008 +0000 3998Commit: Chris Wilson <chris@chris-wilson.co.uk> 3999CommitDate: Wed Feb 27 09:47:35 2008 +0000 4000 4001 [cairo-path-bounds] _cairo_path_fixed_bounds() can fail... 4002 4003 I was wrong in my assertion that the call to 4004 _cairo_path_fixed_interpret_flat() could not possibly fail with the 4005 given _cairo_path_bounder_* callbacks - as I had missed the implicit 4006 spline decomposition. (An interesting exercise would be to avoid the 4007 spline allocation...) As a result we do have to check and propagate the 4008 status return through the call stack. 4009 4010 src/cairo-analysis-surface.c | 8 ++++++-- 4011 src/cairo-gstate.c | 12 +++++++++--- 4012 src/cairo-path-bounds.c | 10 +++++----- 4013 src/cairo.c | 10 +++++++--- 4014 src/cairoint.h | 4 ++-- 4015 5 files changed, 29 insertions(+), 15 deletions(-) 4016 4017commit 65a8a279430a08e6f28b1e0354e9f18fda1a0ad7 4018Author: Chris Wilson <chris@chris-wilson.co.uk> 4019AuthorDate: Tue Feb 26 14:14:38 2008 +0000 4020Commit: Chris Wilson <chris@chris-wilson.co.uk> 4021CommitDate: Tue Feb 26 17:06:18 2008 +0000 4022 4023 [test] Add reflected-stroke to exercise stroking with a reflected ctm. 4024 4025 Parts of the stroker depend upon whether we have in effect a reflection 4026 matrix (one whose determinant < 0). This test incopororates the same 4027 drawing under the a couple of reflections to exercise stroking under 4028 matrices with both positive and negative determinants. 4029 4030 test/.gitignore | 1 + 4031 test/Makefile.am | 2 + 4032 test/reflected-stroke-ref.png | Bin 0 -> 4802 bytes 4033 test/reflected-stroke.c | 100 ++++++++++++++++++++++++++++++++++++++++++ 4034 4 files changed, 103 insertions(+) 4035 4036commit 76f0613e5f1244557eab31945d7e7c757d987304 4037Author: Chris Wilson <chris@chris-wilson.co.uk> 4038AuthorDate: Tue Feb 26 09:50:51 2008 +0000 4039Commit: Chris Wilson <chris@chris-wilson.co.uk> 4040CommitDate: Tue Feb 26 17:05:28 2008 +0000 4041 4042 [test] Add long-dashed-lines to exercise _cairo_box_intersects_line_segment(). 4043 4044 Draw a few rectangles whose vertices are outside the bounds of the 4045 surface, but whose segments cross the surface. This exercises the new 4046 dashed stroker optimisation which tries to determine whether the line 4047 segment is visible. 4048 4049 test/.gitignore | 1 + 4050 test/Makefile.am | 2 ++ 4051 test/long-dashed-lines-ref.png | Bin 0 -> 2116 bytes 4052 test/long-dashed-lines.c | 75 +++++++++++++++++++++++++++++++++++++++++ 4053 4 files changed, 78 insertions(+) 4054 4055commit cdeffc69d9daa931c3c4ffcbb9e093180da45fe5 4056Author: Chris Wilson <chris@chris-wilson.co.uk> 4057AuthorDate: Tue Feb 26 13:04:33 2008 +0000 4058Commit: Chris Wilson <chris@chris-wilson.co.uk> 4059CommitDate: Tue Feb 26 17:05:22 2008 +0000 4060 4061 [cairo-quartz-surface] Make check fixup. 4062 4063 A couple of minor corrections to satisfy make check. 4064 4065 src/cairo-quartz-surface.c | 6 +++--- 4066 1 file changed, 3 insertions(+), 3 deletions(-) 4067 4068commit 40f4750f5ec53ca9ca6e3d621fefb2bd1687909e 4069Author: Adrian Johnson <ajohnson@redneon.com> 4070AuthorDate: Tue Feb 26 23:17:04 2008 +1030 4071Commit: Adrian Johnson <ajohnson@redneon.com> 4072CommitDate: Tue Feb 26 23:17:04 2008 +1030 4073 4074 Use PDF 're' operator for rectangle paths 4075 4076 Modify cairo-pdf-operators.c to emit to 're' path operator when the 4077 path contains only a rectangle. This can only be done when the path is 4078 logically equivilent to the the path drawn by the 're' 4079 operator. Otherwise dashed strokes may start on the wrong line. 4080 4081 ie the path must be equivalent to: 4082 4083 cairo_move_to (cr, x, y); 4084 cairo_rel_line_to (cr, width, 0); 4085 cairo_rel_line_to (cr, 0, height); 4086 cairo_rel_line_to (cr, -width, 0); 4087 cairo_close_path (cr); 4088 4089 which is also equivilent to cairo_rectangle(). 4090 4091 src/cairo-path-fixed.c | 24 ++++++++++++++++++++++++ 4092 src/cairo-pdf-operators.c | 36 +++++++++++++++++++++++++++++------- 4093 src/cairo-ps-surface.c | 2 ++ 4094 src/cairoint.h | 4 ++++ 4095 4 files changed, 59 insertions(+), 7 deletions(-) 4096 4097commit 7acfee38b1ac6ef2292d754c7103bd65d58f72d8 4098Author: Vladimir Vukicevic <vladimir@pobox.com> 4099AuthorDate: Mon Feb 25 21:44:04 2008 -0500 4100Commit: Vladimir Vukicevic <vladimir@sleet.local> 4101CommitDate: Mon Feb 25 21:44:04 2008 -0500 4102 4103 [atsui] Make default font 'Helvetica' 4104 4105 The previous default font was Monaco, which is a fixed-pitch font; Helvetica 4106 is more inline with the other platform defaults. 4107 4108 src/cairoint.h | 2 +- 4109 1 file changed, 1 insertion(+), 1 deletion(-) 4110 4111commit 9979f786acaf0ebba1bf97e40aeba66287a3c743 4112Author: Vladimir Vukicevic <vladimir@pobox.com> 4113AuthorDate: Mon Feb 25 21:27:33 2008 -0500 4114Commit: Vladimir Vukicevic <vladimir@sleet.local> 4115CommitDate: Mon Feb 25 21:27:33 2008 -0500 4116 4117 [test] update degenerate-pen test 4118 4119 pdiff was hiding a rgb24 failure here, as the test was drawing using 4120 black ink on the default black background. Instead, explicitly fill 4121 the surface with white first. 4122 4123 test/degenerate-pen-ps-argb32-ref.png | Bin 795 -> 0 bytes 4124 test/degenerate-pen-ps-ref.png | Bin 0 -> 865 bytes 4125 test/degenerate-pen-quartz-ref.png | Bin 0 -> 1144 bytes 4126 test/degenerate-pen-ref.png | Bin 788 -> 1139 bytes 4127 test/degenerate-pen.c | 4 ++++ 4128 5 files changed, 4 insertions(+) 4129 4130commit baec928a69b5b763b30766cddfb1473e4e05fc3c 4131Author: Vladimir Vukicevic <vladimir@pobox.com> 4132AuthorDate: Mon Feb 25 21:06:36 2008 -0500 4133Commit: Vladimir Vukicevic <vladimir@sleet.local> 4134CommitDate: Mon Feb 25 21:06:36 2008 -0500 4135 4136 [quartz] More mask fixes -- handle all types via fallback mask image 4137 4138 src/cairo-quartz-surface.c | 79 ++++++++++++++++++++++++++++++++--------- 4139 test/mask-quartz-ref.png | Bin 0 -> 10657 bytes 4140 test/mask-quartz-rgb24-ref.png | Bin 0 -> 8418 bytes 4141 3 files changed, 62 insertions(+), 17 deletions(-) 4142 4143commit 3fcd0be52215e1d8a59560d6b0919fb3f53b7a28 4144Author: Vladimir Vukicevic <vladimir@pobox.com> 4145AuthorDate: Mon Feb 25 21:06:35 2008 -0500 4146Commit: Vladimir Vukicevic <vladimir@sleet.local> 4147CommitDate: Mon Feb 25 21:06:35 2008 -0500 4148 4149 Use pdiff only if the pixel difference is less than a limit 4150 4151 test/buffer-diff.c | 24 +++++++++++++++++------- 4152 1 file changed, 17 insertions(+), 7 deletions(-) 4153 4154commit 1dfb1bd45fbe08392e233af67f464b2776de9f19 4155Author: Vladimir Vukicevic <vladimir@pobox.com> 4156AuthorDate: Mon Feb 25 21:06:28 2008 -0500 4157Commit: Vladimir Vukicevic <vladimir@sleet.local> 4158CommitDate: Mon Feb 25 21:06:28 2008 -0500 4159 4160 [quartz] update test suite images for quartz 4161 4162 test/dash-scale-quartz-ref.png | Bin 0 -> 8079 bytes 4163 test/leaky-dash-quartz-ref.png | Bin 0 -> 241 bytes 4164 test/line-width-scale-quartz-ref.png | Bin 0 -> 6434 bytes 4165 test/mask-alpha-quartz-argb32-ref.png | Bin 0 -> 641 bytes 4166 test/meta-surface-pattern-quartz-ref.png | Bin 0 -> 4572 bytes 4167 test/meta-surface-pattern-quartz-rgb24-ref.png | Bin 0 -> 4063 bytes 4168 test/new-sub-path-quartz-ref.png | Bin 386 -> 383 bytes 4169 test/over-above-source-quartz-ref.png | Bin 0 -> 530 bytes 4170 test/over-above-source-quartz-rgb24-ref.png | Bin 0 -> 456 bytes 4171 test/over-around-source-quartz-ref.png | Bin 0 -> 612 bytes 4172 test/over-around-source-quartz-rgb24-ref.png | Bin 0 -> 491 bytes 4173 test/over-between-source-quartz-ref.png | Bin 0 -> 570 bytes 4174 test/over-between-source-quartz-rgb24-ref.png | Bin 0 -> 467 bytes 4175 test/rotate-image-surface-paint-quartz-ref.png | Bin 0 -> 257 bytes 4176 test/trap-clip-quartz-ref.png | Bin 5814 -> 6171 bytes 4177 15 files changed, 0 insertions(+), 0 deletions(-) 4178 4179commit b439e638087d6e76d14ca42cd59dba3915dcc8e8 4180Author: Vladimir Vukicevic <vladimir@pobox.com> 4181AuthorDate: Mon Feb 25 21:06:25 2008 -0500 4182Commit: Vladimir Vukicevic <vladimir@sleet.local> 4183CommitDate: Mon Feb 25 21:06:25 2008 -0500 4184 4185 [quartz] fix mask to correctly take CTM into account 4186 4187 src/cairo-quartz-surface.c | 40 ++++++++-------------------------------- 4188 1 file changed, 8 insertions(+), 32 deletions(-) 4189 4190commit a4975ab1173957a293aad8ccac51d1e43cab86da 4191Author: Vladimir Vukicevic <vladimir@pobox.com> 4192AuthorDate: Mon Feb 25 21:06:23 2008 -0500 4193Commit: Vladimir Vukicevic <vladimir@sleet.local> 4194CommitDate: Mon Feb 25 21:06:23 2008 -0500 4195 4196 [quartz] Optimize path handling where possible 4197 4198 src/cairo-path-fill.c | 66 ++----------------------------------- 4199 src/cairo-path-fixed.c | 81 ++++++++++++++++++++++++++++++++++++++++++++++ 4200 src/cairo-quartz-surface.c | 11 +++++++ 4201 src/cairoint.h | 7 ++++ 4202 4 files changed, 101 insertions(+), 64 deletions(-) 4203 4204commit 63711b1d4a61f21db070f30b9c153d0923cc24bb 4205Author: Vladimir Vukicevic <vladimir@pobox.com> 4206AuthorDate: Mon Feb 25 21:06:21 2008 -0500 4207Commit: Vladimir Vukicevic <vladimir@sleet.local> 4208CommitDate: Mon Feb 25 21:06:21 2008 -0500 4209 4210 [quartz] Add quartz-image-surface type 4211 4212 src/Makefile.am | 2 +- 4213 src/cairo-quartz-image-surface.c | 370 ++++++++++++++++++++++++++++++ 4214 src/cairo-quartz-private.h | 31 ++- 4215 src/cairo-quartz-surface.c | 476 ++++++++++++++++++--------------------- 4216 src/cairo-quartz.h | 6 + 4217 src/cairo.h | 4 +- 4218 6 files changed, 634 insertions(+), 255 deletions(-) 4219 4220commit ecb54b96967ae0d1b5ec3a4d0955f46dd68f2b8b 4221Author: Behdad Esfahbod <behdad@behdad.org> 4222AuthorDate: Mon Feb 25 19:48:58 2008 -0500 4223Commit: Behdad Esfahbod <behdad@behdad.org> 4224CommitDate: Mon Feb 25 19:48:58 2008 -0500 4225 4226 [test/get-path-extents] Don't use short-circuit && operators 4227 4228 That causes some tests to be skipped if the preceding test failed. 4229 4230 test/get-path-extents.c | 143 +++++++++++++++++++++--------------------------- 4231 1 file changed, 62 insertions(+), 81 deletions(-) 4232 4233commit be316b7cfae90878d05869329c85c9617019bbec 4234Author: Behdad Esfahbod <behdad@behdad.org> 4235AuthorDate: Mon Feb 25 19:36:22 2008 -0500 4236Commit: Behdad Esfahbod <behdad@behdad.org> 4237CommitDate: Mon Feb 25 19:36:44 2008 -0500 4238 4239 [test]/get-path-extents] Use %g instead of %f to print doubles 4240 4241 test/get-path-extents.c | 2 +- 4242 1 file changed, 1 insertion(+), 1 deletion(-) 4243 4244commit 7c8c9cf334b8687ffe2d6f614e234bd1662689e6 4245Author: Adrian Johnson <ajohnson@redneon.com> 4246AuthorDate: Mon Feb 25 21:50:37 2008 +1030 4247Commit: Adrian Johnson <ajohnson@redneon.com> 4248CommitDate: Mon Feb 25 21:50:37 2008 +1030 4249 4250 PDF: Support OPERATOR_SOURCE when pattern is opaque 4251 4252 src/cairo-pdf-surface.c | 12 ++++++++---- 4253 1 file changed, 8 insertions(+), 4 deletions(-) 4254 4255commit 35295546ef63821c5eee5336ec73eef2e03a035d 4256Author: Adrian Johnson <ajohnson@redneon.com> 4257AuthorDate: Fri Feb 22 22:06:25 2008 +1030 4258Commit: Adrian Johnson <ajohnson@redneon.com> 4259CommitDate: Fri Feb 22 22:06:25 2008 +1030 4260 4261 Add mask pdf ref images 4262 4263 The mask test pdf output is now correct. Poppler ref images 4264 are required due to minor gradient rendering differences. 4265 4266 test/mask-pdf-argb32-ref.png | Bin 0 -> 7834 bytes 4267 test/mask-pdf-rgb24-ref.png | Bin 0 -> 7383 bytes 4268 2 files changed, 0 insertions(+), 0 deletions(-) 4269 4270commit 1df969158c83b31acbcf0963913bc4d4a9d20730 4271Author: Adrian Johnson <ajohnson@redneon.com> 4272AuthorDate: Fri Feb 22 21:59:47 2008 +1030 4273Commit: Adrian Johnson <ajohnson@redneon.com> 4274CommitDate: Fri Feb 22 21:59:47 2008 +1030 4275 4276 Refresh clip-operator ps/pdf ref images 4277 4278 Because the meta surface analysis fix increased the size of some of 4279 the fallback images. 4280 4281 test/clip-operator-pdf-argb32-ref.png | Bin 9096 -> 11005 bytes 4282 test/clip-operator-ps-argb32-ref.png | Bin 9062 -> 9084 bytes 4283 2 files changed, 0 insertions(+), 0 deletions(-) 4284 4285commit eae259168fc4318f2a67f3107f953648e7ab925e 4286Author: Adrian Johnson <ajohnson@redneon.com> 4287AuthorDate: Fri Feb 22 21:07:31 2008 +1030 4288Commit: Adrian Johnson <ajohnson@redneon.com> 4289CommitDate: Fri Feb 22 21:07:31 2008 +1030 4290 4291 Using correct surface size and clip when analyzing meta surface patterns 4292 4293 The surface size and clip needs to be saved before and restored after 4294 replaying meta surface patterns back to the analysis surface. The clip 4295 is reset and the correct surface size is set before replaying the meta 4296 surface. 4297 4298 src/cairo-analysis-surface.c | 20 ++++++++++++++++++++ 4299 1 file changed, 20 insertions(+) 4300 4301commit 0db2c67cc5b29623070465f2cf6eafbff174ed30 4302Author: Adrian Johnson <ajohnson@redneon.com> 4303AuthorDate: Thu Feb 21 20:51:20 2008 +1030 4304Commit: Adrian Johnson <ajohnson@redneon.com> 4305CommitDate: Fri Feb 22 19:43:03 2008 +1030 4306 4307 PS: Replace gsave/grestore with q/Q 4308 4309 src/cairo-ps-surface.c | 8 ++++---- 4310 1 file changed, 4 insertions(+), 4 deletions(-) 4311 4312commit 187ace8024ffadc3ee0b69bbd99c52d189cb7be2 4313Author: Adrian Johnson <ajohnson@redneon.com> 4314AuthorDate: Fri Feb 22 19:36:11 2008 +1030 4315Commit: Adrian Johnson <ajohnson@redneon.com> 4316CommitDate: Fri Feb 22 19:43:03 2008 +1030 4317 4318 PS: Make debug code compile 4319 4320 src/cairo-ps-surface.c | 6 +++--- 4321 1 file changed, 3 insertions(+), 3 deletions(-) 4322 4323commit 8f0ec1174ad3c7a59ecdcf7724b8e8b96801b3e0 4324Author: Carl Worth <cworth@cworth.org> 4325AuthorDate: Thu Feb 21 08:05:27 2008 -0800 4326Commit: Carl Worth <cworth@cworth.org> 4327CommitDate: Thu Feb 21 08:17:33 2008 -0800 4328 4329 Patch hole in fabric of time-space continuum 4330 4331 NEWS | 2 +- 4332 1 file changed, 1 insertion(+), 1 deletion(-) 4333 4334commit 70bb2abed04ed25abccbb2d6a5bdc58136701b0a 4335Author: Behdad Esfahbod <behdad@behdad.org> 4336AuthorDate: Wed Feb 20 20:54:01 2008 -0500 4337Commit: Behdad Esfahbod <behdad@behdad.org> 4338CommitDate: Wed Feb 20 20:55:21 2008 -0500 4339 4340 [cairo-ft] Handle font sizes smaller than 1px correctly 4341 4342 The FT_Set_Char_Size() docs say it replaces sizes smaller than 1.0 with 1.0. 4343 So, we can't use x_scale and y_scale values less than one. The fix is easy thouh, 4344 cap them to 1.0 and let the FT transform do the scaling down. 4345 4346 src/cairo-ft-font.c | 36 ++++++++++++++++++++++-------------- 4347 1 file changed, 22 insertions(+), 14 deletions(-) 4348 4349commit dcab5019d5d9cb70aed0f473642ee840b785c4af 4350Author: Carl Worth <cworth@cworth.org> 4351AuthorDate: Wed Feb 20 17:35:48 2008 -0800 4352Commit: Carl Worth <cworth@cworth.org> 4353CommitDate: Wed Feb 20 17:35:48 2008 -0800 4354 4355 Add poppler-specific reference image for radial-gradient 4356 4357 This is justified by the previously mentioned bug on poppler 4358 gradients. Note that this test only passes with a patch 4359 to fix a bug in poppler (not yet upstream). Here it is: 4360 4361 PATCH: Keep 'cairo_shape' and 'cairo' consistent 4362 https://bugs.freedesktop.org/show_bug.cgi?id=14593 4363 4364 test/Makefile.am | 1 + 4365 test/README | 1 + 4366 test/radial-gradient-pdf-ref.png | Bin 0 -> 79490 bytes 4367 3 files changed, 2 insertions(+) 4368 4369commit 70b683363f6e37d8952c8f857dd687022a02ada5 4370Author: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 4371AuthorDate: Wed Feb 20 23:46:27 2008 +0100 4372Commit: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 4373CommitDate: Wed Feb 20 23:46:27 2008 +0100 4374 4375 [SVG] Fix a8-mask test failure. 4376 4377 For A8 and A1 masks, the embedded mask image doesn't have an alpha channel. 4378 In this case, the feColorMatrix should not be used, since it's goal is to 4379 discard the color channels and to only keep the alpha one (which is what 4380 we want when we have an ARGB32 mask image, since SVG uses all the channels 4381 for the mask operation, where cairo only use the alpha channel). 4382 4383 src/cairo-svg-surface.c | 21 ++++++++++++++++----- 4384 1 file changed, 16 insertions(+), 5 deletions(-) 4385 4386commit c5d056aaebe51d2c3430807de559b0d8ab3431d5 4387Author: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 4388AuthorDate: Wed Feb 20 21:42:24 2008 +0100 4389Commit: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 4390CommitDate: Wed Feb 20 21:51:21 2008 +0100 4391 4392 [SVG] Fix the extend-reflect-similar test failure. 4393 4394 SVG doesn't support extend reflect for image pattern, and there isn't 4395 any trivial way to emulate this feature. So we use the image fallback 4396 for now. This fix also forces an image fallback for extend-reflect, but 4397 in the end, it generates more or less the same file (one big image for 4398 the pattern). No other test is forced to use an image fallback by this 4399 patch. 4400 4401 src/cairo-svg-surface.c | 7 ++++++- 4402 1 file changed, 6 insertions(+), 1 deletion(-) 4403 4404commit 1d236521a527d8b07962d1d671daff35134f4d31 4405Author: Carl Worth <cworth@cworth.org> 4406AuthorDate: Wed Feb 20 10:00:41 2008 -0800 4407Commit: Carl Worth <cworth@cworth.org> 4408CommitDate: Wed Feb 20 10:00:41 2008 -0800 4409 4410 Increment cairo version to 1.5.11 after the 1.5.10 snapshot 4411 4412 configure.in | 2 +- 4413 1 file changed, 1 insertion(+), 1 deletion(-) 4414 4415commit 83489f623f1239a731c5377d634ea8e9b782d448 4416Author: Carl Worth <cworth@cworth.org> 4417AuthorDate: Wed Feb 20 10:00:31 2008 -0800 4418Commit: Carl Worth <cworth@cworth.org> 4419CommitDate: Wed Feb 20 10:00:31 2008 -0800 4420 4421 SGML churn 4422 4423 doc/public/tmpl/cairo-paths.sgml | 10 +++++++++- 4424 1 file changed, 9 insertions(+), 1 deletion(-) 4425 4426commit 0f2ecb5ec65ff13c3aafbe57600c1906f3fe7978 4427Author: Carl Worth <cworth@cworth.org> 4428AuthorDate: Wed Feb 20 08:24:32 2008 -0800 4429Commit: Carl Worth <cworth@cworth.org> 4430CommitDate: Wed Feb 20 08:24:32 2008 -0800 4431 4432 Update REFERENCE_IMAGES for distcheck 4433 4434 test/Makefile.am | 64 +++++++++++++++++++++++++++++++++++++++++--------------- 4435 1 file changed, 47 insertions(+), 17 deletions(-) 4436 4437commit ee62a5fad6a32a6997600caac8b292aef4e2fe54 4438Author: Carl Worth <cworth@cworth.org> 4439AuthorDate: Wed Feb 20 08:08:52 2008 -0800 4440Commit: Carl Worth <cworth@cworth.org> 4441CommitDate: Wed Feb 20 08:08:52 2008 -0800 4442 4443 Mention that cairo_get_current_point is void again 4444 4445 NEWS | 4 ++++ 4446 1 file changed, 4 insertions(+) 4447 4448commit 118657136d3323f4769bee28ec2435a61540f0eb 4449Author: Carl Worth <cworth@cworth.org> 4450AuthorDate: Wed Feb 20 08:06:39 2008 -0800 4451Commit: Carl Worth <cworth@cworth.org> 4452CommitDate: Wed Feb 20 08:06:39 2008 -0800 4453 4454 Increment cairo version to 1.5.10 and libtool versioning to 17:0:15 4455 4456 configure.in | 6 +++--- 4457 1 file changed, 3 insertions(+), 3 deletions(-) 4458 4459commit 5aacc54c430a982b51992d6fac186b955e478045 4460Author: Carl Worth <cworth@cworth.org> 4461AuthorDate: Wed Feb 20 08:02:45 2008 -0800 4462Commit: Carl Worth <cworth@cworth.org> 4463CommitDate: Wed Feb 20 08:02:45 2008 -0800 4464 4465 NEWS: Add notes for cairo 1.5.10 4466 4467 NEWS | 99 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---- 4468 1 file changed, 94 insertions(+), 5 deletions(-) 4469 4470commit f954db72dd33de837296ede353ad9823b0e32fcd 4471Author: Carl Worth <cworth@cworth.org> 4472AuthorDate: Wed Feb 20 06:24:48 2008 -0800 4473Commit: Carl Worth <cworth@cworth.org> 4474CommitDate: Wed Feb 20 06:24:48 2008 -0800 4475 4476 Add svg-specific reference image for mask-alpha 4477 4478 There's no apparent bug here. 4479 4480 test/mask-alpha-svg-argb32-ref.png | Bin 0 -> 615 bytes 4481 1 file changed, 0 insertions(+), 0 deletions(-) 4482 4483commit c197c684a6b002ad8549d92f15d7f68b7c0068bd 4484Author: Carl Worth <cworth@cworth.org> 4485AuthorDate: Wed Feb 20 05:58:42 2008 -0800 4486Commit: Carl Worth <cworth@cworth.org> 4487CommitDate: Wed Feb 20 05:58:42 2008 -0800 4488 4489 Update ps-specific reference images for ghostscript 8.61 4490 4491 I was wrong in the previous message where I said I had ghostscript 8.61 4492 installed. I do now, (and "gs --version" says the same thing), and 4493 here are the new reference images. 4494 4495 test/clip-fill-rule-ps-argb32-ref.png | Bin 322 -> 310 bytes 4496 test/clip-fill-rule-ps-rgb24-ref.png | Bin 309 -> 302 bytes 4497 test/dash-caps-joins-ps-argb32-ref.png | Bin 3854 -> 3870 bytes 4498 test/dash-caps-joins-ps-rgb24-ref.png | Bin 3852 -> 3870 bytes 4499 test/dash-curve-ps-ref.png | Bin 27206 -> 27293 bytes 4500 test/dash-state-ps-argb32-ref.png | Bin 8652 -> 0 bytes 4501 test/dash-state-ps-ref.png | Bin 0 -> 10219 bytes 4502 test/dash-state-ps-rgb24-ref.png | Bin 8650 -> 0 bytes 4503 test/dash-zero-length-ps-argb32-ref.png | Bin 319 -> 0 bytes 4504 test/dash-zero-length-ps-ref.png | Bin 0 -> 319 bytes 4505 test/dash-zero-length-ps-rgb24-ref.png | Bin 0 -> 304 bytes 4506 test/degenerate-pen-ps-argb32-ref.png | Bin 771 -> 795 bytes 4507 test/font-matrix-translation-ps-argb32-ref.png | Bin 785 -> 749 bytes 4508 test/font-matrix-translation-ps-rgb24-ref.png | Bin 783 -> 749 bytes 4509 test/ft-text-vertical-layout-type1-ps-ref.png | Bin 1894 -> 1911 bytes 4510 test/ft-text-vertical-layout-type3-ps-ref.png | Bin 1879 -> 1867 bytes 4511 test/glyph-cache-pressure-ps-ref.png | Bin 1667 -> 1413 bytes 4512 test/gradient-alpha-ps-argb32-ref.png | Bin 179 -> 189 bytes 4513 test/line-width-scale-ps-argb32-ref.png | Bin 3903 -> 0 bytes 4514 test/line-width-scale-ps-ref.png | Bin 0 -> 3911 bytes 4515 test/line-width-scale-ps-rgb24-ref.png | Bin 3901 -> 0 bytes 4516 test/linear-gradient-ps-argb32-ref.png | Bin 613 -> 0 bytes 4517 test/linear-gradient-ps-ref.png | Bin 0 -> 718 bytes 4518 test/linear-gradient-ps-rgb24-ref.png | Bin 613 -> 0 bytes 4519 test/linear-gradient-reflect-ps-ref.png | Bin 315 -> 314 bytes 4520 test/meta-surface-pattern-ps-argb32-ref.png | Bin 3246 -> 3257 bytes 4521 test/meta-surface-pattern-ps-rgb24-ref.png | Bin 3823 -> 3873 bytes 4522 test/new-sub-path-ps-argb32-ref.png | Bin 559 -> 556 bytes 4523 test/operator-clear-ps-argb32-ref.png | Bin 1409 -> 1437 bytes 4524 test/operator-source-ps-argb32-ref.png | Bin 4026 -> 3893 bytes 4525 test/operator-source-ps-rgb24-ref.png | Bin 3366 -> 3241 bytes 4526 test/pixman-rotate-ps-argb32-ref.png | Bin 411 -> 0 bytes 4527 test/pixman-rotate-ps-rgb24-ref.png | Bin 392 -> 0 bytes 4528 test/random-intersections-ps-argb32-ref.png | Bin 89733 -> 0 bytes 4529 test/random-intersections-ps-ref.png | Bin 0 -> 89253 bytes 4530 test/random-intersections-ps-rgb24-ref.png | Bin 89733 -> 0 bytes 4531 test/select-font-face-ps-ref.png | Bin 1352 -> 1079 bytes 4532 test/show-text-current-point-ps-ref.png | Bin 1475 -> 1454 bytes 4533 test/text-pattern-ps-argb32-ref.png | Bin 998 -> 984 bytes 4534 test/text-pattern-ps-rgb24-ref.png | Bin 969 -> 936 bytes 4535 test/text-rotate-ps-argb32-ref.png | Bin 7156 -> 0 bytes 4536 test/text-rotate-ps-rgb24-ref.png | Bin 7156 -> 0 bytes 4537 test/trap-clip-ps-argb32-ref.png | Bin 5715 -> 5591 bytes 4538 test/trap-clip-ps-rgb24-ref.png | Bin 5630 -> 5512 bytes 4539 44 files changed, 0 insertions(+), 0 deletions(-) 4540 4541commit 8d2d4130146d16676c9ed6cf7d82d6aeaadf1c56 4542Author: Carl Worth <cworth@cworth.org> 4543AuthorDate: Wed Feb 20 05:11:53 2008 -0800 4544Commit: Carl Worth <cworth@cworth.org> 4545CommitDate: Wed Feb 20 05:11:53 2008 -0800 4546 4547 Expand the documentation of cairo/test/README 4548 4549 Add notes on CAIRO_REF_DIR and the version requirements of 4550 poppler and ghostscript necessary for getting no failures. 4551 4552 test/README | 99 +++++++++++++++++++++++++++++++++++++++++++++++++++++-------- 4553 1 file changed, 87 insertions(+), 12 deletions(-) 4554 4555commit 4d42f569007f23e4cf9713c14f8c3dc640cf0f2c 4556Author: Carl Worth <cworth@cworth.org> 4557AuthorDate: Wed Feb 20 04:22:58 2008 -0800 4558Commit: Carl Worth <cworth@cworth.org> 4559CommitDate: Wed Feb 20 04:22:58 2008 -0800 4560 4561 Update ps-specific reference images 4562 4563 Presumably these are due to ghostscript version churn. I don't 4564 know what version was used in the past, but we're going to be 4565 more careful about documenting versions now. 4566 4567 The ghostscript package I used here advertises itself as "8.61" 4568 and "gs --version" reports 8.15.3. 4569 4570 test/ft-text-vertical-layout-type1-ps-argb32-ref.png | Bin 1879 -> 0 bytes 4571 test/ft-text-vertical-layout-type1-ps-ref.png | Bin 0 -> 1894 bytes 4572 test/ft-text-vertical-layout-type3-ps-argb32-ref.png | Bin 1882 -> 0 bytes 4573 test/ft-text-vertical-layout-type3-ps-ref.png | Bin 0 -> 1879 bytes 4574 test/text-pattern-ps-rgb24-ref.png | Bin 969 -> 969 bytes 4575 5 files changed, 0 insertions(+), 0 deletions(-) 4576 4577commit 78b270601ce54545a0c68075a60a3b85a2f37adb 4578Author: Carl Worth <cworth@cworth.org> 4579AuthorDate: Wed Feb 20 03:49:16 2008 -0800 4580Commit: Carl Worth <cworth@cworth.org> 4581CommitDate: Wed Feb 20 04:04:05 2008 -0800 4582 4583 Add poppler-specific reference image for source-clip-scale 4584 4585 This one doesn't have any associated poppler bug report. The 4586 rendering by poppler is totally reasonable, and not problematic 4587 at all with respect to what the test is actually testing for. 4588 4589 test/source-clip-scale-pdf-ref.png | Bin 0 -> 113 bytes 4590 1 file changed, 0 insertions(+), 0 deletions(-) 4591 4592commit 64b7489a50808bd660a47615d0775842c77dd0f2 4593Author: Carl Worth <cworth@cworth.org> 4594AuthorDate: Wed Feb 20 03:47:34 2008 -0800 4595Commit: Carl Worth <cworth@cworth.org> 4596CommitDate: Wed Feb 20 04:04:05 2008 -0800 4597 4598 Add poppler-specific reference image for push-group 4599 4600 This is justified by the following new bug report: 4601 4602 Incorrect clipping of group object (regression?) 4603 https://bugs.freedesktop.org/show_bug.cgi?id=14580 4604 4605 test/README | 5 +++++ 4606 test/push-group-pdf-ref.png | Bin 0 -> 2694 bytes 4607 test/push-group-pdf-rgb24-ref.png | Bin 0 -> 2611 bytes 4608 3 files changed, 5 insertions(+) 4609 4610commit 7aaa3e67c5016357e28476b10d768101e1e5bd41 4611Author: Carl Worth <cworth@cworth.org> 4612AuthorDate: Wed Feb 20 03:38:07 2008 -0800 4613Commit: Carl Worth <cworth@cworth.org> 4614CommitDate: Wed Feb 20 04:04:05 2008 -0800 4615 4616 Add poppler-specific reference images for tests needing EXTEND_PAD 4617 4618 This is justified by the following new bug report: 4619 4620 Poppler should paint images with CAIRO_EXTEND_PAD 4621 https://bugs.freedesktop.org/show_bug.cgi?id=14578 4622 4623 The four affected tests are: 4624 4625 paint-source-alpha 4626 paint-with-alpha 4627 rotate-image-surface-paint 4628 scale-source-surface-paint 4629 4630 test/README | 9 +++++++-- 4631 test/paint-source-alpha-pdf-ref.png | Bin 0 -> 473 bytes 4632 test/paint-with-alpha-pdf-ref.png | Bin 0 -> 466 bytes 4633 test/rotate-image-surface-paint-pdf-rgb24-ref.png | Bin 0 -> 207 bytes 4634 test/scale-source-surface-paint-pdf-rgb24-ref.png | Bin 0 -> 198 bytes 4635 5 files changed, 7 insertions(+), 2 deletions(-) 4636 4637commit fdd046edccf283bfedb59733516f6110cc96ea82 4638Author: Carl Worth <cworth@cworth.org> 4639AuthorDate: Wed Feb 20 03:23:38 2008 -0800 4640Commit: Carl Worth <cworth@cworth.org> 4641CommitDate: Wed Feb 20 04:04:04 2008 -0800 4642 4643 Add poppler-specific reference image for text-pattern 4644 4645 This is justified with the following new bug report: 4646 4647 Poppler renders patterned text as black 4648 https://bugs.freedesktop.org/show_bug.cgi?id=14577 4649 4650 test/README | 6 ++++++ 4651 test/text-pattern-pdf-argb32-ref.png | Bin 0 -> 1823 bytes 4652 test/text-pattern-pdf-rgb24-ref.png | Bin 0 -> 508 bytes 4653 3 files changed, 6 insertions(+) 4654 4655commit 43302f0408d92138ac12afcd855d44c430074859 4656Author: Carl Worth <cworth@cworth.org> 4657AuthorDate: Wed Feb 20 03:15:17 2008 -0800 4658Commit: Carl Worth <cworth@cworth.org> 4659CommitDate: Wed Feb 20 04:04:04 2008 -0800 4660 4661 Re-enable pdf tests with gradients and add poppler-based reference images 4662 4663 This freezes the current (buggy) poppler result in the test suite 4664 so that we will notice any future regressions. 4665 4666 boilerplate/cairo-boilerplate-pdf.c | 42 --------------------- 4667 test/README | 47 ++++++++++++++++++++++++ 4668 test/gradient-alpha-pdf-argb32-ref.png | Bin 0 -> 126 bytes 4669 test/gradient-alpha-pdf-rgb24-ref.png | Bin 0 -> 121 bytes 4670 test/gradient-alpha.c | 3 +- 4671 test/linear-gradient-pdf-ref.png | Bin 0 -> 935 bytes 4672 test/linear-gradient-reflect-pdf-argb32-ref.png | Bin 0 -> 248 bytes 4673 test/linear-gradient-reflect-pdf-rgb24-ref.png | Bin 0 -> 248 bytes 4674 test/linear-gradient.c | 3 +- 4675 test/text-pattern.c | 3 +- 4676 test/trap-clip-pdf-argb32-ref.png | Bin 0 -> 5809 bytes 4677 test/trap-clip-pdf-rgb24-ref.png | Bin 0 -> 5768 bytes 4678 test/trap-clip.c | 3 +- 4679 13 files changed, 51 insertions(+), 50 deletions(-) 4680 4681commit 635fed77676f2446cbedfcf52a85f96e32c3a241 4682Author: Carl Worth <cworth@cworth.org> 4683AuthorDate: Wed Feb 20 02:24:28 2008 -0800 4684Commit: Carl Worth <cworth@cworth.org> 4685CommitDate: Wed Feb 20 04:04:04 2008 -0800 4686 4687 Re-enable some pdf tests now that poppler has knockout support 4688 4689 We had several pdf tests disabled waiting for this bug fix: 4690 4691 Poppler does not correctly handle knockout groups 4692 https://bugs.freedesktop.org/show_bug.cgi?id=12185 4693 4694 That's in place for poppler now, so we're turning the tests 4695 back on. Some of the affected tests now pass perfectly: 4696 4697 over-above-source 4698 over-around-source 4699 over-below-source 4700 over-between-source 4701 4702 Some just needed new reference images: 4703 4704 operator-clear 4705 clip-operator-pdf-argb32 4706 4707 The remaining tests still fail, but none of the failures can 4708 obviously be ascribed to just poppler problems: 4709 4710 clip-operator-pdf-rgb24 4711 operator-source 4712 unbounded-operator 4713 4714 The first two have some serious problems, while in the case 4715 of unbounded-operator the problem is extremely minor (a white 4716 grid appears in the background where the reference image is 4717 all black). 4718 4719 boilerplate/cairo-boilerplate-pdf.c | 13 ------------- 4720 test/clip-operator-pdf-argb32-ref.png | Bin 0 -> 9096 bytes 4721 test/operator-clear-pdf-argb32-ref.png | Bin 0 -> 1438 bytes 4722 test/operator-clear-pdf-rgb24-ref.png | Bin 0 -> 1170 bytes 4723 4 files changed, 13 deletions(-) 4724 4725commit 98189d860e2c4219f994dd19fb199fcf4b457852 4726Author: Carl Worth <cworth@cworth.org> 4727AuthorDate: Wed Feb 20 01:43:51 2008 -0800 4728Commit: Carl Worth <cworth@cworth.org> 4729CommitDate: Wed Feb 20 04:04:04 2008 -0800 4730 4731 svg: Add support for flattening SOURCE painting when there's nothing beneath it 4732 4733 This avoids unnecessary rasterization in many cases when using 4734 cairo_surface_create_similar with an SVG surface. Because of that 4735 it eliminates test-suite failures for the -similar cases where we 4736 have svg-specific reference images. Namely: 4737 4738 font-matrix-translation, ft-text-vertical-layout-type1, 4739 ft-text-vertical-layout-type3, mask, meta-surface-pattern, 4740 paint-source-alpha, paint-with-alpha, rotate-image-surface-paint, 4741 scale-source-surface-paint, source-clip-scale, text-pattern, 4742 text-rotate 4743 4744 In all of these cases the test suite was kindly noticing that we 4745 weren't getting the same 'native' SVG output that was desired. 4746 4747 src/cairo-svg-surface.c | 15 +++++++++++---- 4748 1 file changed, 11 insertions(+), 4 deletions(-) 4749 4750commit e7c6e291a64391004ae7bafc4d69830af5b0c8b1 4751Author: Carl Worth <cworth@cworth.org> 4752AuthorDate: Wed Feb 20 01:43:22 2008 -0800 4753Commit: Carl Worth <cworth@cworth.org> 4754CommitDate: Wed Feb 20 04:04:04 2008 -0800 4755 4756 Add svg-specific reference images for meta-surface-pattern test 4757 4758 test/meta-surface-pattern-svg-argb32-ref.png | Bin 0 -> 3896 bytes 4759 test/meta-surface-pattern-svg-rgb24-ref.png | Bin 0 -> 4593 bytes 4760 2 files changed, 0 insertions(+), 0 deletions(-) 4761 4762commit a1867412210db667a02e7b656729e2cf6a64a2d7 4763Author: Carl Worth <cworth@cworth.org> 4764AuthorDate: Wed Feb 20 01:38:59 2008 -0800 4765Commit: Carl Worth <cworth@cworth.org> 4766CommitDate: Wed Feb 20 04:04:04 2008 -0800 4767 4768 cairo-svg: Make operation_supported depend on analyze_operation instead of the other way around. 4769 4770 This prepares for analyze_operation to be able to return more than 4771 just two values, (which will allow the svg backend to take advantage 4772 of CAIRO_INT_STATUS_FLATTEN_TRANSPARENCY). 4773 4774 src/cairo-svg-surface.c | 27 +++++++++++++++------------ 4775 1 file changed, 15 insertions(+), 12 deletions(-) 4776 4777commit 8f11c4583f58f97c348aafcd71db059ac7791fe7 4778Author: Carl Worth <cworth@cworth.org> 4779AuthorDate: Mon Feb 18 17:32:35 2008 -0800 4780Commit: Carl Worth <cworth@cworth.org> 4781CommitDate: Wed Feb 20 04:04:04 2008 -0800 4782 4783 Revert "[meta-surface] Adjust tolerance when replaying to surfaces with device scale" 4784 4785 This reverts commit 7f21bfb0a8265095d68bb5ff6afae7553683a776. 4786 4787 We don't yet have consensus on whether this is a good change or not. 4788 So for now, we're favoring the existing behavior until we can work 4789 that out. 4790 4791 src/cairo-meta-surface.c | 11 +++++------ 4792 1 file changed, 5 insertions(+), 6 deletions(-) 4793 4794commit 1747718406b3450bc8869f0e050f9a18b3036030 4795Author: Carl Worth <cworth@cworth.org> 4796AuthorDate: Thu Feb 14 12:27:47 2008 -0800 4797Commit: Carl Worth <cworth@cworth.org> 4798CommitDate: Wed Feb 20 04:04:04 2008 -0800 4799 4800 Add a spline to the degenerate-pen test case 4801 4802 This was triggering an infinite loop (with 24.8 fixed-point) just before 4803 the previous fix. 4804 4805 NOTE: I usually put bug demonstrations just before the fixes, but this 4806 one was quite harsh---not only was cairo looping infinitely, but it 4807 was appending to an array on each iteration---so not kind at all. 4808 4809 test/degenerate-pen-ps-argb32-ref.png | Bin 374 -> 771 bytes 4810 test/degenerate-pen-ref.png | Bin 278 -> 788 bytes 4811 test/degenerate-pen.c | 3 +++ 4812 3 files changed, 3 insertions(+) 4813 4814commit d6d81c92b501b32be6c48d134683ebd51f63c134 4815Author: Carl Worth <cworth@cworth.org> 4816AuthorDate: Sat Feb 16 13:27:02 2008 -0800 4817Commit: Carl Worth <cworth@cworth.org> 4818CommitDate: Wed Feb 20 04:04:04 2008 -0800 4819 4820 Eliminate a potential infinite loop in spline stroking 4821 4822 Sometimes > rather than >= can make a bug difference. The infinite loop 4823 was noticed here: 4824 4825 Infinite loop when scaling very small values using 24.8 4826 http://bugs.freedesktop.org/show_bug.cgi?id=14280 4827 4828 Note that that particular test case only exposes the infinite 4829 loop when using 24.8 instead of 16.16 fixed-point values by 4830 setting CAIRO_FIXED_FRAC_BITS to 8. 4831 4832 src/cairo-pen.c | 13 ++++++++++++- 4833 1 file changed, 12 insertions(+), 1 deletion(-) 4834 4835commit 770b058c9e53c6d0e3a3f600cd5a9631eee39dff 4836Author: Carl Worth <cworth@cworth.org> 4837AuthorDate: Sat Feb 16 13:17:49 2008 -0800 4838Commit: Carl Worth <cworth@cworth.org> 4839CommitDate: Wed Feb 20 04:04:04 2008 -0800 4840 4841 Remove _cairo_slope_[counter_]clockwise 4842 4843 These two functions were hiding away some important details 4844 about strictness of inequalities. Also, the callers differ 4845 on the strictness they need. Everything is cleaner and more 4846 flexible by making the callers just call _cairo_slope_compare 4847 directly. 4848 4849 src/cairo-path-stroke.c | 2 +- 4850 src/cairo-pen.c | 30 ++++++++++++++++-------------- 4851 src/cairo-slope.c | 23 ----------------------- 4852 src/cairoint.h | 6 ------ 4853 4 files changed, 17 insertions(+), 44 deletions(-) 4854 4855commit 2d22d698d32575fd883d2be072c041709254c86d 4856Author: Carl Worth <cworth@cworth.org> 4857AuthorDate: Thu Feb 14 11:50:26 2008 -0800 4858Commit: Carl Worth <cworth@cworth.org> 4859CommitDate: Wed Feb 20 04:04:03 2008 -0800 4860 4861 Make _cairo_slope_compare return a non-zero result for slopes that differ by pi 4862 4863 This was an initial attempt to fix the infinite loop bug 4864 described here: 4865 4866 Infinite loop when scaling very small values using 24.8 4867 http://bugs.freedesktop.org/show_bug.cgi?id=14280 4868 4869 This doesn't actually fix that bug, but having a more robust 4870 comparison function can only be a good thing. 4871 4872 src/cairo-slope.c | 30 ++++++++++++++++++++++++++++-- 4873 1 file changed, 28 insertions(+), 2 deletions(-) 4874 4875commit 9292c0a1b509ecea8415cdbc21415d9ce7615e04 4876Author: Chris Wilson <chris@chris-wilson.co.uk> 4877AuthorDate: Wed Feb 20 10:54:14 2008 +0000 4878Commit: Chris Wilson <chris@chris-wilson.co.uk> 4879CommitDate: Wed Feb 20 10:57:14 2008 +0000 4880 4881 [gitignore] Ignore cairo-no-features.h 4882 4883 Add the autogenerated header to the ignore list. 4884 4885 src/.gitignore | 1 + 4886 1 file changed, 1 insertion(+) 4887 4888commit e6a8768a0446b9e537bb77bd309ad5719fe74451 4889Author: Chris Wilson <chris@chris-wilson.co.uk> 4890AuthorDate: Wed Feb 20 10:53:15 2008 +0000 4891Commit: Chris Wilson <chris@chris-wilson.co.uk> 4892CommitDate: Wed Feb 20 10:57:04 2008 +0000 4893 4894 [cairo-scaled-font-subsets] Fix memleak on failure to reserve .notdef glyph. 4895 4896 Remember to destroy the sub_font if we fail to reserve the .notdef glyph 4897 during construction. 4898 4899 Whilst in the vicinity, adjust the function prototype to remove 4900 duplicated calls to _cairo_error(). 4901 4902 src/cairo-scaled-font-subsets.c | 57 ++++++++++++++++++++++------------------- 4903 1 file changed, 30 insertions(+), 27 deletions(-) 4904 4905commit e208f31236af6b2012d725696485f96fe4acd863 4906Author: Chris Wilson <chris@chris-wilson.co.uk> 4907AuthorDate: Tue Feb 19 15:14:37 2008 +0000 4908Commit: Chris Wilson <chris@chris-wilson.co.uk> 4909CommitDate: Wed Feb 20 10:56:53 2008 +0000 4910 4911 [cairo-surface] Check surface status on internal paths as well. 4912 4913 Return any error status on the surface to the caller. 4914 4915 src/cairo-surface.c | 50 +++++++++++++++++++++++++++++++++++++++++++++++++- 4916 1 file changed, 49 insertions(+), 1 deletion(-) 4917 4918commit 1d59daecfe1078ba2ad56f80b35c934312dc4f6b 4919Author: Chris Wilson <chris@chris-wilson.co.uk> 4920AuthorDate: Tue Feb 19 15:13:53 2008 +0000 4921Commit: Chris Wilson <chris@chris-wilson.co.uk> 4922CommitDate: Wed Feb 20 10:56:37 2008 +0000 4923 4924 [cairo-pdf-operators] Cleanup word_wrap_stream 4925 4926 Ensure that the stream is destroyed on the error paths. 4927 4928 src/cairo-pdf-operators.c | 10 +++++++--- 4929 1 file changed, 7 insertions(+), 3 deletions(-) 4930 4931commit aac5650beebb40068767a7d3ffedf634a3da5002 4932Author: Chris Wilson <chris@chris-wilson.co.uk> 4933AuthorDate: Tue Feb 19 14:39:13 2008 +0000 4934Commit: Chris Wilson <chris@chris-wilson.co.uk> 4935CommitDate: Wed Feb 20 10:56:24 2008 +0000 4936 4937 [pdf-operators] Missing private markup. 4938 4939 Fixup make check by adding the required cairo_private markup. 4940 4941 src/cairo-pdf-operators-private.h | 2 +- 4942 1 file changed, 1 insertion(+), 1 deletion(-) 4943 4944commit eaaa1415a9becb8f11ddde4094fcf0aec6d1458f 4945Author: Adrian Johnson <ajohnson@redneon.com> 4946AuthorDate: Wed Feb 20 21:05:23 2008 +1030 4947Commit: Adrian Johnson <ajohnson@redneon.com> 4948CommitDate: Wed Feb 20 21:05:23 2008 +1030 4949 4950 Change PDF newline characters from \r\n to \n 4951 4952 The PDF backend has always used "\r\n" for the newline character. 4953 There was no particular reason for this choice. PDF allows "\n", "\r", 4954 or "\r\n" as the end of line marker. 4955 4956 Since the PS backend (which uses "\n") has started sharing 4957 cairo-pdf-operators.c with the PDF backend, the PS output has been 4958 getting mixed "\n" and "\r\n" newlines. 4959 4960 Fix this by changing the PDF backend to use "\n". 4961 4962 src/cairo-pdf-operators.c | 40 +-- 4963 src/cairo-pdf-surface.c | 878 +++++++++++++++++++++++----------------------- 4964 2 files changed, 459 insertions(+), 459 deletions(-) 4965 4966commit 24c319fbae9ea4a43bf4e1fdf94d069b4ad78904 4967Author: Bertram Felgenhauer <int-e@gmx.de> 4968AuthorDate: Sat Feb 16 09:22:01 2008 +0100 4969Commit: Bertram Felgenhauer <int-e@gmx.de> 4970CommitDate: Tue Feb 19 22:19:44 2008 +0100 4971 4972 [perf] add tests for magnified and minified image sources. 4973 With this change, cairo's performance testsuite will catch performance 4974 regressions in pixman's fbFetchTransformed path. 4975 4976 perf/cairo-perf-cover.c | 34 ++++++++++++++++++++++++++++++++++ 4977 1 file changed, 34 insertions(+) 4978 4979commit 21049a9a5eb7ba0873771428bde0db8f8b1ece08 4980Author: Antoine Azar <cairo@antoineazar.com> 4981AuthorDate: Mon Feb 18 23:57:38 2008 -0500 4982Commit: Behdad Esfahbod <behdad@behdad.org> 4983CommitDate: Tue Feb 19 00:17:47 2008 -0500 4984 4985 Added cairo-misc.c to makefile 4986 4987 src/Makefile.win32 | 1 + 4988 1 file changed, 1 insertion(+) 4989 4990commit f2d21e73827d81da559ee4cd046bfb02dfd66a83 4991Author: Vladimir Vukicevic <vladimir@pobox.com> 4992AuthorDate: Mon Feb 18 17:18:51 2008 -0800 4993Commit: Vladimir Vukicevic <vladimir@sleet.vlad1.com> 4994CommitDate: Mon Feb 18 17:18:51 2008 -0800 4995 4996 [stroker] fix _compute_normalized_device_slope to return correct sign 4997 4998 The optimization to avoid sqrt() for horizontal/vertical lines in 4999 _compute_normalized_device_slope was causing us to return a negative 5000 magnitude with a positive slope for left-to-right and bottom-to-top 5001 lines, instead of always returning a positive magnitude and a slope 5002 with an appropriate sign. 5003 5004 src/cairo-path-stroke.c | 18 ++++++++++++++---- 5005 1 file changed, 14 insertions(+), 4 deletions(-) 5006 5007commit 8fb624dbf2c660fbbf6d6964f7876656e1b62e41 5008Author: Adrian Johnson <ajohnson@redneon.com> 5009AuthorDate: Sun Feb 17 19:49:39 2008 +1030 5010Commit: Adrian Johnson <ajohnson@redneon.com> 5011CommitDate: Sun Feb 17 21:33:25 2008 +1030 5012 5013 Use correct prefix for _cairo_pdf_operators_stroke 5014 5015 s/operator/operators/ 5016 5017 src/cairo-pdf-operators-private.h | 10 +++++----- 5018 src/cairo-pdf-operators.c | 10 +++++----- 5019 src/cairo-pdf-surface.c | 20 ++++++++++---------- 5020 src/cairo-ps-surface.c | 10 +++++----- 5021 4 files changed, 25 insertions(+), 25 deletions(-) 5022 5023commit d2a1576941e46fb71eda8b27bd3df4de691df6ff 5024Author: Adrian Johnson <ajohnson@redneon.com> 5025AuthorDate: Sun Feb 17 19:48:01 2008 +1030 5026Commit: Adrian Johnson <ajohnson@redneon.com> 5027CommitDate: Sun Feb 17 21:33:16 2008 +1030 5028 5029 PDF/PS: Fix mismatched save restore when using fill-stroke 5030 5031 src/cairo-pdf-surface.c | 11 +++++++++-- 5032 1 file changed, 9 insertions(+), 2 deletions(-) 5033 5034commit 3a05b5d2d5989386e1500ffcf8738ca89ef8457d 5035Author: Adrian Johnson <ajohnson@redneon.com> 5036AuthorDate: Sun Feb 17 19:45:45 2008 +1030 5037Commit: Adrian Johnson <ajohnson@redneon.com> 5038CommitDate: Sun Feb 17 21:33:04 2008 +1030 5039 5040 PDF/PS: No need to use save/restore for solid colors 5041 5042 src/cairo-pdf-surface-private.h | 1 + 5043 src/cairo-pdf-surface.c | 7 +++++-- 5044 2 files changed, 6 insertions(+), 2 deletions(-) 5045 5046commit c7204adcf3ff6614aae75c4c1c5ef0fc5269d834 5047Author: Behdad Esfahbod <behdad@behdad.org> 5048AuthorDate: Sun Feb 17 02:32:00 2008 -0500 5049Commit: Behdad Esfahbod <behdad@behdad.org> 5050CommitDate: Sun Feb 17 02:32:24 2008 -0500 5051 5052 [cairo-misc.c] Add misc functions to this file 5053 5054 Anything functions that doesn't group with other functions enough to 5055 justify its own file should go here now. 5056 5057 src/Makefile.am | 1 + 5058 src/cairo-gstate.c | 79 ----------- 5059 src/cairo-misc.c | 407 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 5060 src/cairo.c | 287 ------------------------------------- 5061 4 files changed, 408 insertions(+), 366 deletions(-) 5062 5063commit a1360322c4e2867d7060a7f65bf0d96d9af36174 5064Author: Adrian Johnson <ajohnson@redneon.com> 5065AuthorDate: Sun Feb 17 17:16:53 2008 +1030 5066Commit: Adrian Johnson <ajohnson@redneon.com> 5067CommitDate: Sun Feb 17 17:21:35 2008 +1030 5068 5069 PS: Remove unused code 5070 5071 src/cairo-ps-surface.c | 9 --------- 5072 1 file changed, 9 deletions(-) 5073 5074commit 2dfe32a0ff9272ade481796f0f25fd83863c7600 5075Author: Adrian Johnson <ajohnson@redneon.com> 5076AuthorDate: Sun Feb 17 16:45:15 2008 +1030 5077Commit: Adrian Johnson <ajohnson@redneon.com> 5078CommitDate: Sun Feb 17 17:21:35 2008 +1030 5079 5080 Implement PDF fill-stroke 5081 5082 src/cairo-meta-surface.c | 15 ++++++- 5083 src/cairo-pdf-operators-private.h | 8 ++++ 5084 src/cairo-pdf-operators.c | 51 +++++++++++++++++++++- 5085 src/cairo-pdf-surface.c | 92 +++++++++++++++++++++++++++++++++++++++ 5086 4 files changed, 164 insertions(+), 2 deletions(-) 5087 5088commit 1e7fa4b9f5c478bcb7c49667192f239c2bd1d03e 5089Author: Behdad Esfahbod <behdad@behdad.org> 5090AuthorDate: Sat Feb 16 22:47:31 2008 -0500 5091Commit: Behdad Esfahbod <behdad@behdad.org> 5092CommitDate: Sat Feb 16 22:48:06 2008 -0500 5093 5094 [cairo-pdf-operators] Pass matrix by reference, not by value 5095 5096 src/cairo-pdf-operators-private.h | 4 ++-- 5097 src/cairo-pdf-operators.c | 8 ++++---- 5098 src/cairo-pdf-surface.c | 12 ++++++------ 5099 src/cairo-ps-surface.c | 9 +++++---- 5100 4 files changed, 17 insertions(+), 16 deletions(-) 5101 5102commit 357f2334f0bd518815c80905e451b6ac1ba43553 5103Author: Adrian Johnson <ajohnson@redneon.com> 5104AuthorDate: Sat Feb 16 20:37:16 2008 +1030 5105Commit: Adrian Johnson <ajohnson@redneon.com> 5106CommitDate: Sat Feb 16 20:37:16 2008 +1030 5107 5108 PDF: Allow word_wrap_stream to split hex strings 5109 5110 src/cairo-pdf-operators.c | 50 +++++++++++++++++++++++++++++++++++++++++------ 5111 1 file changed, 44 insertions(+), 6 deletions(-) 5112 5113commit 204a27aadb2390b62bd75857d8736b34870f79b1 5114Author: Adrian Johnson <ajohnson@redneon.com> 5115AuthorDate: Sat Feb 16 20:35:42 2008 +1030 5116Commit: Adrian Johnson <ajohnson@redneon.com> 5117CommitDate: Sat Feb 16 20:35:42 2008 +1030 5118 5119 PDF: Word wrap _cairo_pdf_operators_show_glyphs output 5120 5121 src/cairo-pdf-operators.c | 38 ++++++++++++++++++++++++-------------- 5122 1 file changed, 24 insertions(+), 14 deletions(-) 5123 5124commit bcb0395288128da7dd8f24c503b8badacc806720 5125Author: Behdad Esfahbod <behdad@behdad.org> 5126AuthorDate: Fri Feb 15 15:56:29 2008 -0500 5127Commit: Behdad Esfahbod <behdad@behdad.org> 5128CommitDate: Fri Feb 15 15:56:29 2008 -0500 5129 5130 [docs] Fix typo 5131 5132 src/cairo-font-options.c | 2 +- 5133 1 file changed, 1 insertion(+), 1 deletion(-) 5134 5135commit 536e1963b774038d9afc7fbf63303e118b0250a2 5136Author: Shailendra Jain <shailen.n.jain@gmail.com> 5137AuthorDate: Fri Feb 15 13:21:29 2008 +0000 5138Commit: Chris Wilson <chris@chris-wilson.co.uk> 5139CommitDate: Fri Feb 15 13:50:43 2008 +0000 5140 5141 Compile fix for AIX. 5142 5143 Minor correction for a build failure on AIX: 5144 "mozilla/gfx/cairo/cairo/src/cairo-gstate.c", line 45.43: 1506-294 (S) 5145 Syntax error in expression on #if directive. 5146 5147 (Fixes https://bugzilla.mozilla.org/show_bug.cgi?id=415867.) 5148 5149 src/cairo-gstate.c | 2 +- 5150 src/cairo-matrix.c | 2 +- 5151 test/invalid-matrix.c | 2 +- 5152 3 files changed, 3 insertions(+), 3 deletions(-) 5153 5154commit 31a67c5f22eb2cbb94878d47be19b32ff319c5b3 5155Author: Chris Wilson <chris@chris-wilson.co.uk> 5156AuthorDate: Fri Feb 15 13:16:58 2008 +0000 5157Commit: Chris Wilson <chris@chris-wilson.co.uk> 5158CommitDate: Fri Feb 15 13:50:43 2008 +0000 5159 5160 [pdf] Minor make check fix. 5161 5162 Add a missing '%' in the documentation. 5163 5164 src/cairo-pdf-operators.c | 2 +- 5165 1 file changed, 1 insertion(+), 1 deletion(-) 5166 5167commit 9e9fda047879f0336c2627483c78499af8ef5458 5168Author: Chris Wilson <chris@chris-wilson.co.uk> 5169AuthorDate: Tue Feb 12 11:16:37 2008 +0000 5170Commit: Chris Wilson <chris@chris-wilson.co.uk> 5171CommitDate: Fri Feb 15 13:50:43 2008 +0000 5172 5173 [test/bitmap-font] Destroy the font options after use. 5174 5175 Fix the leak of the font options. 5176 5177 test/bitmap-font.c | 2 ++ 5178 1 file changed, 2 insertions(+) 5179 5180commit 92970ec83687435e75e60110cb7434670515ae57 5181Author: Chris Wilson <chris@chris-wilson.co.uk> 5182AuthorDate: Mon Feb 11 17:00:30 2008 +0000 5183Commit: Chris Wilson <chris@chris-wilson.co.uk> 5184CommitDate: Fri Feb 15 13:50:43 2008 +0000 5185 5186 [test/invalid-matrix] Test detection of infinities. 5187 5188 Feed infinities into the API and check that we correctly return 5189 INVALID_MATRIX. 5190 5191 test/invalid-matrix.c | 123 +++++++++++++++++++++++++++++++++++++++++++++++++- 5192 1 file changed, 122 insertions(+), 1 deletion(-) 5193 5194commit 012f68e043d3594fa6cb5235eafb1ca1bfe2d099 5195Author: Chris Wilson <chris@chris-wilson.co.uk> 5196AuthorDate: Mon Feb 11 16:48:24 2008 +0000 5197Commit: Chris Wilson <chris@chris-wilson.co.uk> 5198CommitDate: Fri Feb 15 13:50:43 2008 +0000 5199 5200 [test/invalid-matrix] Check scale(0,0) 5201 5202 Test that INVALID_MATRIX is returned if the user calls cairo_scale(0,0) 5203 or a variant thereof. 5204 5205 test/invalid-matrix.c | 16 ++++++++++++++++ 5206 1 file changed, 16 insertions(+) 5207 5208commit eb7488e1e67b872d29d1bd459bb7994ad3789576 5209Author: Chris Wilson <chris@chris-wilson.co.uk> 5210AuthorDate: Mon Feb 11 16:45:18 2008 +0000 5211Commit: Chris Wilson <chris@chris-wilson.co.uk> 5212CommitDate: Fri Feb 15 13:50:43 2008 +0000 5213 5214 [test/invalid-matrix] Promote incorrect status warning to an error. 5215 5216 As the last warning for an incorrect status has been resolved, throw an 5217 error if we regress and no longer report an INVALID_MATRIX under testing. 5218 5219 test/invalid-matrix.c | 3 ++- 5220 1 file changed, 2 insertions(+), 1 deletion(-) 5221 5222commit fc732c3aaa53d8abcea46ad28da696ad08d09b63 5223Author: Chris Wilson <chris@chris-wilson.co.uk> 5224AuthorDate: Mon Feb 11 16:17:34 2008 +0000 5225Commit: Chris Wilson <chris@chris-wilson.co.uk> 5226CommitDate: Fri Feb 15 13:50:42 2008 +0000 5227 5228 [cairo-scaled-font] Create error objects on demand. 5229 5230 In order to correctly report the error back to the user during the 5231 creation of a scaled font, we need to support a nil object per error. 5232 Instead of statically allocating all possible errors, lazily allocate 5233 the nil object the first time we need to report a particular error. 5234 5235 This fixes the misreporting of an INVALID_MATRIX or NULL_POINTER that 5236 are common user errors during the construction of a scaled font. 5237 5238 src/cairo-debug.c | 2 ++ 5239 src/cairo-mutex-list-private.h | 1 + 5240 src/cairo-scaled-font.c | 65 +++++++++++++++++++++++++++++++++++++----- 5241 src/cairo.c | 10 ++----- 5242 src/cairo.h | 2 +- 5243 src/cairoint.h | 15 +++++++++- 5244 test/font-options.c | 2 +- 5245 7 files changed, 79 insertions(+), 18 deletions(-) 5246 5247commit 38fcc015a5106e5007035c22355da863b3bc9def 5248Author: Chris Wilson <chris@chris-wilson.co.uk> 5249AuthorDate: Mon Feb 11 16:14:40 2008 +0000 5250Commit: Chris Wilson <chris@chris-wilson.co.uk> 5251CommitDate: Fri Feb 15 13:50:42 2008 +0000 5252 5253 [cairo-ft-font] Propagate error detected during determination of scale factors. 5254 5255 Ensure that if an invalid matrix is detected when creating the toy font, 5256 the error is propagated to the caller. 5257 5258 src/cairo-ft-font.c | 8 +++++--- 5259 1 file changed, 5 insertions(+), 3 deletions(-) 5260 5261commit ad265cc9f26a20f2336747d69b28bc6ca0d91f4b 5262Author: Chris Wilson <chris@chris-wilson.co.uk> 5263AuthorDate: Mon Feb 11 14:58:21 2008 +0000 5264Commit: Chris Wilson <chris@chris-wilson.co.uk> 5265CommitDate: Fri Feb 15 13:50:42 2008 +0000 5266 5267 [cairo-font-options] Disallow use of NULL font-options. 5268 5269 Partial revert of commit 0086db893cba90dc73824d77c661d2965ad48112. 5270 5271 This is a follow to the earlier commit that allowed creation of scaled 5272 fonts using a NULL font options (by interpreting the NULL as meaning 5273 use the default options) to reflect the comments made by Behdad 5274 (http://lists.cairographics.org/archives/cairo/2008-January/012714.html). 5275 5276 The intent is that the public font options getter/setter API has similar 5277 defensive behaviour to that of the core objects - i.e. do not overwrite 5278 the nil object and if the object is in error then return the default 5279 value. For the indirect use of a NULL/nil font options (e.g. creation of 5280 scaled fonts), then an error should be returned rather than crashing. 5281 5282 src/cairo-font-face.c | 8 +++----- 5283 src/cairo-font-options.c | 36 +++++++++++++--------------------- 5284 src/cairo-ft-font.c | 8 +++----- 5285 src/cairo-scaled-font.c | 13 ++++-------- 5286 src/cairo-win32-font.c | 4 ++-- 5287 src/cairo.c | 10 ++++------ 5288 test/font-options.c | 51 +++++++++++++++++++++++++++--------------------- 5289 7 files changed, 59 insertions(+), 71 deletions(-) 5290 5291commit 790eaef71cbd30e1994c9499ab553f2ef5e5d620 5292Author: Chris Wilson <chris@chris-wilson.co.uk> 5293AuthorDate: Mon Feb 11 10:31:33 2008 +0000 5294Commit: Chris Wilson <chris@chris-wilson.co.uk> 5295CommitDate: Fri Feb 15 13:50:42 2008 +0000 5296 5297 [boilerplage] Add getopts to the boilerplate library. 5298 5299 Remember to compile the _cairo_getopts() function into the boilerplate 5300 convenience library for cairo-perf. 5301 5302 boilerplate/Makefile.am | 14 ++++++++------ 5303 1 file changed, 8 insertions(+), 6 deletions(-) 5304 5305commit fe93038ef343c769b38b9e7f15c1be415e6bcdd9 5306Author: Chris Wilson <chris@chris-wilson.co.uk> 5307AuthorDate: Fri Feb 8 08:36:34 2008 +0000 5308Commit: Chris Wilson <chris@chris-wilson.co.uk> 5309CommitDate: Fri Feb 15 13:50:42 2008 +0000 5310 5311 [test/font-options] Check for HAVE_FCFINI 5312 5313 Only pull in the fontconfig headers if we actually use FcFini(). 5314 5315 test/font-options.c | 2 ++ 5316 1 file changed, 2 insertions(+) 5317 5318commit 2eb03b8cf2b2c0520d018127b377071a8a63799d 5319Author: Chris Wilson <chris@chris-wilson.co.uk> 5320AuthorDate: Thu Feb 7 17:07:43 2008 +0000 5321Commit: Chris Wilson <chris@chris-wilson.co.uk> 5322CommitDate: Fri Feb 15 13:50:42 2008 +0000 5323 5324 [cairo-ps-surface] Tidy return from _analyze_image_transparency(). 5325 5326 _analyze_image_transparency() only returned SUCCESS, so use the return 5327 parameter to pass back the transparency type instead of using an out 5328 parameter. 5329 5330 src/cairo-ps-surface.c | 37 +++++++++++++------------------------ 5331 1 file changed, 13 insertions(+), 24 deletions(-) 5332 5333commit bc83e028b8d12223164263a9f9cfc822ed40f8c8 5334Author: Chris Wilson <chris@chris-wilson.co.uk> 5335AuthorDate: Thu Feb 7 11:47:11 2008 +0000 5336Commit: Chris Wilson <chris@chris-wilson.co.uk> 5337CommitDate: Fri Feb 15 13:50:42 2008 +0000 5338 5339 [cairo-output-stream] Add format(printf) markup. 5340 5341 Add CAIRO_PRINTF_FORMAT attribute to the printf-esque output stream 5342 functions, and fixup the one warning caught by the compiler. 5343 5344 src/cairo-output-stream-private.h | 6 ++++-- 5345 src/cairo-pdf-surface.c | 4 ++-- 5346 2 files changed, 6 insertions(+), 4 deletions(-) 5347 5348commit 4430157841d4b55061c6af58576cfe6ec66fcfe5 5349Author: Chris Wilson <chris@chris-wilson.co.uk> 5350AuthorDate: Wed Feb 6 11:37:13 2008 +0000 5351Commit: Chris Wilson <chris@chris-wilson.co.uk> 5352CommitDate: Fri Feb 15 13:50:42 2008 +0000 5353 5354 [test] Summarise the tests failures per backend. 5355 5356 After the summary, show the total number of failures per backend. 5357 5358 test/Makefile.am | 15 +++++++++++++++ 5359 1 file changed, 15 insertions(+) 5360 5361commit af88d4d9ae66152ac885531bfc73a47eb78d1d03 5362Author: Chris Wilson <chris@chris-wilson.co.uk> 5363AuthorDate: Wed Jan 30 15:20:50 2008 +0000 5364Commit: Chris Wilson <chris@chris-wilson.co.uk> 5365CommitDate: Fri Feb 15 13:50:42 2008 +0000 5366 5367 [test/a8-mask] Fix memleak. 5368 5369 Destroy the auxiallary surfaces and contexts. 5370 5371 test/a8-mask.c | 14 ++++++++------ 5372 1 file changed, 8 insertions(+), 6 deletions(-) 5373 5374commit a3f071aee707e66e637587f1e9ae327b21243a60 5375Author: Chris Wilson <chris@chris-wilson.co.uk> 5376AuthorDate: Wed Jan 30 15:19:49 2008 +0000 5377Commit: Chris Wilson <chris@chris-wilson.co.uk> 5378CommitDate: Fri Feb 15 13:50:42 2008 +0000 5379 5380 [cairo-ft-font] Tidy usage of cairo_error(). 5381 5382 Remove a redundant use of cairo_error(NO_MEMORY). 5383 5384 src/cairo-ft-font.c | 7 +++---- 5385 1 file changed, 3 insertions(+), 4 deletions(-) 5386 5387commit a4c960a93cf5f37819b933d19f92e17e6c047c66 5388Author: Chris Wilson <chris@chris-wilson.co.uk> 5389AuthorDate: Fri Jan 18 17:14:17 2008 +0000 5390Commit: Chris Wilson <chris@chris-wilson.co.uk> 5391CommitDate: Fri Feb 15 13:50:41 2008 +0000 5392 5393 [test] Add tests using each backend as a source. 5394 5395 Inspired by bug 7362 (painting a glitz surface onto an xlib surface 5396 crashes cairo) and the lack of coverage for 5397 _cairo_paginated_surface_acquire_source_image(), these tests attempt 5398 to use each backend as a source surface for all the other backends. 5399 For example, this checks that one can construct a PS file ready for 5400 printing and then copy that surface to an image/xlib for previewing. 5401 5402 test/.gitignore | 6 ++ 5403 test/Makefile.am | 19 +++- 5404 test/glitz-surface-source-ref.png | Bin 0 -> 268 bytes 5405 test/glitz-surface-source.c | 196 ++++++++++++++++++++++++++++++++++++++ 5406 test/image-surface-source-ref.png | Bin 0 -> 268 bytes 5407 test/image-surface-source.c | 35 +++++++ 5408 test/pdf-surface-source-ref.png | Bin 0 -> 268 bytes 5409 test/pdf-surface-source.c | 41 ++++++++ 5410 test/ps-surface-source-ref.png | Bin 0 -> 268 bytes 5411 test/ps-surface-source.c | 41 ++++++++ 5412 test/surface-source.c | 93 ++++++++++++++++++ 5413 test/svg-surface-source-ref.png | Bin 0 -> 268 bytes 5414 test/svg-surface-source.c | 41 ++++++++ 5415 test/xlib-surface-source-ref.png | Bin 0 -> 268 bytes 5416 test/xlib-surface-source.c | 76 +++++++++++++++ 5417 15 files changed, 544 insertions(+), 4 deletions(-) 5418 5419commit f59f22eecba7cbf2151e01533ba936ca94d25056 5420Author: Chris Wilson <chris@chris-wilson.co.uk> 5421AuthorDate: Tue Jan 29 09:29:10 2008 +0000 5422Commit: Chris Wilson <chris@chris-wilson.co.uk> 5423CommitDate: Fri Feb 15 13:50:41 2008 +0000 5424 5425 [check] Only build documents during make check if we have GTK_DOC 5426 5427 Check that gtk-doc has been enabled before running attempting to build 5428 the docs during make check. 5429 5430 doc/public/Makefile.am | 2 ++ 5431 1 file changed, 2 insertions(+) 5432 5433commit e5f0253b67801ad79eb881e189b9835aea0fcf57 5434Author: Chris Wilson <chris@chris-wilson.co.uk> 5435AuthorDate: Tue Jan 29 09:07:14 2008 +0000 5436Commit: Chris Wilson <chris@chris-wilson.co.uk> 5437CommitDate: Fri Feb 15 13:50:41 2008 +0000 5438 5439 [cairo-surface] Hide the compiler warnings. 5440 5441 Assign the return value from _cairo_surface_set_error() to hide the 5442 compiler warnings. 5443 5444 src/cairo-surface.c | 18 ++++++++++++------ 5445 1 file changed, 12 insertions(+), 6 deletions(-) 5446 5447commit 53c1ed25abb7e8e22b24aa64fcd29d210c6b7903 5448Author: Chris Wilson <chris@chris-wilson.co.uk> 5449AuthorDate: Tue Jan 29 08:52:28 2008 +0000 5450Commit: Chris Wilson <chris@chris-wilson.co.uk> 5451CommitDate: Fri Feb 15 13:50:41 2008 +0000 5452 5453 [test/a1-sample-image] Fix the memleak. 5454 5455 Destroy the surface after use. 5456 5457 test/a1-image-sample.c | 2 ++ 5458 1 file changed, 2 insertions(+) 5459 5460commit 5efc88e9108df2331772cc22dc52ef0a9cc93869 5461Author: Chris Wilson <chris@chris-wilson.co.uk> 5462AuthorDate: Tue Jan 29 08:50:25 2008 +0000 5463Commit: Chris Wilson <chris@chris-wilson.co.uk> 5464CommitDate: Fri Feb 15 13:50:41 2008 +0000 5465 5466 [xmalloc] Hide valgrind warning. 5467 5468 Allocate the string to the next integer boundary to hide a valgrind 5469 warning. 5470 5471 boilerplate/xmalloc.c | 27 +++++++++++++++++++-------- 5472 1 file changed, 19 insertions(+), 8 deletions(-) 5473 5474commit 1faf208093a8cce77d2f7d6b248bc1eb1bd19a8a 5475Author: Chris Wilson <chris@chris-wilson.co.uk> 5476AuthorDate: Fri Jan 18 14:41:03 2008 +0000 5477Commit: Chris Wilson <chris@chris-wilson.co.uk> 5478CommitDate: Fri Feb 15 13:50:41 2008 +0000 5479 5480 [cairo-png] Improve error return for invalid parameters. 5481 5482 Only translate an UNSUPPORTED error into a SURFACE_TYPE_MISMATCH, all 5483 others can be returned to the user unadulterated. 5484 5485 PNG doesn't support width==0 or height==0 and generates an error 5486 whilst writing - which without further information is assumed to be 5487 a NO_MEMORY error. So check the image size at the start and return a 5488 WRITE_ERROR for a zero sized image. 5489 5490 src/cairo-png.c | 24 +++++++++++++----------- 5491 1 file changed, 13 insertions(+), 11 deletions(-) 5492 5493commit d0cc1d929119d2e05578a60af3b873af1d7f6b13 5494Author: Chris Wilson <chris@chris-wilson.co.uk> 5495AuthorDate: Fri Jan 18 14:34:41 2008 +0000 5496Commit: Chris Wilson <chris@chris-wilson.co.uk> 5497CommitDate: Fri Feb 15 13:50:41 2008 +0000 5498 5499 [cairo-pdf-surface] Minor code tidy. 5500 5501 Remove code duplication. 5502 5503 src/cairo-pdf-surface.c | 6 ++---- 5504 1 file changed, 2 insertions(+), 4 deletions(-) 5505 5506commit d7ce0582f1eb86b2af5964820378b75297822dd1 5507Author: Chris Wilson <chris@chris-wilson.co.uk> 5508AuthorDate: Thu Jan 17 23:18:46 2008 +0000 5509Commit: Chris Wilson <chris@chris-wilson.co.uk> 5510CommitDate: Fri Feb 15 13:50:41 2008 +0000 5511 5512 [test/font-options] Check the defaults values. 5513 5514 Exercise the getters by checking that a fresh cairo_font_options_t has 5515 the default values. 5516 5517 test/font-options.c | 24 ++++++++++++++++++++---- 5518 1 file changed, 20 insertions(+), 4 deletions(-) 5519 5520commit f40f24e272cf05a7a727217ae7a35844bf95f5d2 5521Author: Chris Wilson <chris@chris-wilson.co.uk> 5522AuthorDate: Thu Jan 17 23:05:53 2008 +0000 5523Commit: Chris Wilson <chris@chris-wilson.co.uk> 5524CommitDate: Fri Feb 15 13:50:41 2008 +0000 5525 5526 [test/invalid] Test cairo_translate() and friends for NaN safety. 5527 5528 Pass NaNs to cairo_translate() and friends and check that they raise 5529 an INVALID_MATRIX error. 5530 5531 test/invalid-matrix.c | 37 +++++++++++++++++++++++++++++++++++++ 5532 1 file changed, 37 insertions(+) 5533 5534commit 896da0305a09e53518d6d1af6f58bbfaf3ddc89c 5535Author: Adrian Johnson <ajohnson@redneon.com> 5536AuthorDate: Fri Feb 15 23:54:55 2008 +1030 5537Commit: Adrian Johnson <ajohnson@redneon.com> 5538CommitDate: Fri Feb 15 23:54:55 2008 +1030 5539 5540 Win32-printing: Fix meta surface patterns 5541 5542 Ensure the win32-printing surface has the same fixes for meta surface 5543 patterns with more than one level of push/pop group that PS/PDF 5544 received in 060f384310e887f7f431a98e847b8a36fc303a0c 5545 5546 src/cairo-win32-printing-surface.c | 28 ++++++++++++++++------------ 5547 1 file changed, 16 insertions(+), 12 deletions(-) 5548 5549commit fbde0fb872a3af78236f4cbc8024d4df245de9c8 5550Author: Adrian Johnson <ajohnson@redneon.com> 5551AuthorDate: Fri Feb 15 08:17:25 2008 +1030 5552Commit: Adrian Johnson <ajohnson@redneon.com> 5553CommitDate: Fri Feb 15 08:17:25 2008 +1030 5554 5555 Update PS ref images 5556 5557 test/degenerate-pen-ps-argb32-ref.png | Bin 390 -> 374 bytes 5558 test/extend-reflect-ps-ref.png | Bin 0 -> 153322 bytes 5559 test/extend-reflect-similar-ps-ref.png | Bin 0 -> 153322 bytes 5560 test/glyph-cache-pressure-ps-ref.png | Bin 0 -> 1667 bytes 5561 test/meta-surface-pattern-ps-argb32-ref.png | Bin 0 -> 3246 bytes 5562 test/meta-surface-pattern-ps-rgb24-ref.png | Bin 0 -> 3823 bytes 5563 test/random-intersections-ps-argb32-ref.png | Bin 89416 -> 89733 bytes 5564 test/random-intersections-ps-rgb24-ref.png | Bin 89414 -> 89733 bytes 5565 test/select-font-face-ps-ref.png | Bin 0 -> 1352 bytes 5566 test/show-text-current-point-ps-ref.png | Bin 0 -> 1475 bytes 5567 test/text-pattern-ps-argb32-ref.png | Bin 997 -> 998 bytes 5568 test/text-rotate-ps-argb32-ref.png | Bin 7198 -> 7156 bytes 5569 test/text-rotate-ps-rgb24-ref.png | Bin 7196 -> 7156 bytes 5570 test/trap-clip-ps-argb32-ref.png | Bin 5700 -> 5715 bytes 5571 test/trap-clip-ps-rgb24-ref.png | Bin 5616 -> 5630 bytes 5572 15 files changed, 0 insertions(+), 0 deletions(-) 5573 5574commit 40d5082c24819968a5ee5a8f72e3b9cd61cb6105 5575Author: Adrian Johnson <ajohnson@redneon.com> 5576AuthorDate: Sun Feb 10 14:53:17 2008 +1030 5577Commit: Adrian Johnson <ajohnson@redneon.com> 5578CommitDate: Fri Feb 15 07:42:29 2008 +1030 5579 5580 PS: Use currentfile as the image data source 5581 5582 When the emitted image is not inside a PS procedure we can use the 5583 currentfile operator as the datasource instead of an array of strings. 5584 This avoids having to read to entire image data into printer memory 5585 before the image can be decoded. This improves the performance and 5586 reduces the chance of running out of memory on printers with limited 5587 memory. 5588 5589 src/cairo-ps-surface-private.h | 1 + 5590 src/cairo-ps-surface.c | 268 +++++++++++++++++++++++++---------------- 5591 2 files changed, 168 insertions(+), 101 deletions(-) 5592 5593commit fe334bb476bb1d7496b197b47ac60167e3fb10bd 5594Author: Adrian Johnson <ajohnson@redneon.com> 5595AuthorDate: Sun Feb 10 14:52:39 2008 +1030 5596Commit: Adrian Johnson <ajohnson@redneon.com> 5597CommitDate: Fri Feb 15 07:42:29 2008 +1030 5598 5599 PS: Use InterleaveType 2 for image and mask 5600 5601 To be able to use the currentfile operator we need to combine the 5602 image data and mask data into the one data source. InterleaveType 2 5603 scan line interleaves the image and data. 5604 5605 src/cairo-ps-surface.c | 129 ++++++++++++++++++------------------------------- 5606 1 file changed, 47 insertions(+), 82 deletions(-) 5607 5608commit b053aaba80e1118ddd7f9c695f6491458f4f5794 5609Author: Adrian Johnson <ajohnson@redneon.com> 5610AuthorDate: Tue Feb 5 22:46:01 2008 +1030 5611Commit: Adrian Johnson <ajohnson@redneon.com> 5612CommitDate: Fri Feb 15 07:42:29 2008 +1030 5613 5614 PS: Don't use patterns for fill surface extend none 5615 5616 _ps_surface_fill() can also avoid using PS patterns for EXTEND_NONE 5617 surface patterns. A clip path is set around the fill path then the 5618 surface is painted. 5619 5620 src/cairo-ps-surface.c | 38 ++++++++++++++++++++++++++++++-------- 5621 1 file changed, 30 insertions(+), 8 deletions(-) 5622 5623commit 2324a48c95d88ae0b6a066bfc9b6722f42945efa 5624Author: Adrian Johnson <ajohnson@redneon.com> 5625AuthorDate: Tue Feb 5 22:35:06 2008 +1030 5626Commit: Adrian Johnson <ajohnson@redneon.com> 5627CommitDate: Fri Feb 15 07:42:29 2008 +1030 5628 5629 Update rotate-image-surface-paint ps ref image 5630 5631 test/rotate-image-surface-paint-ps-argb32-ref.png | Bin 276 -> 0 bytes 5632 test/rotate-image-surface-paint-ps-ref.png | Bin 0 -> 275 bytes 5633 test/rotate-image-surface-paint-ps-rgb24-ref.png | Bin 274 -> 0 bytes 5634 3 files changed, 0 insertions(+), 0 deletions(-) 5635 5636commit 67374af22fe60c27517dd3bef2c8f3cc2f683b12 5637Author: Adrian Johnson <ajohnson@redneon.com> 5638AuthorDate: Tue Feb 5 22:31:58 2008 +1030 5639Commit: Adrian Johnson <ajohnson@redneon.com> 5640CommitDate: Fri Feb 15 07:42:29 2008 +1030 5641 5642 PS: Don't use patterns for paint surface extend none 5643 5644 This is the first of four patches intended to fix the bug reported in 5645 5646 http://lists.cairographics.org/archives/cairo/2007-December/012226.html 5647 5648 Previously the PS backend would draw all cairo patterns (except solid 5649 colors) by emitting a PS pattern. As PS does not support non repeating 5650 patterns, the PS backend would set a large repeat step to ensure that 5651 only one copy of the pattern is on the page. 5652 5653 Some printers with limited memory are unable to print large images 5654 inside a pattern. This was probably because when using patterns the 5655 printer tries to keep the uncompressed image in memory so it can tile 5656 the pattern. 5657 5658 When painting surface patterns with the extend mode EXTEND_NONE we do 5659 not need to use PS patterns. The image or meta surface commands can be 5660 emitted directly. 5661 5662 src/cairo-ps-surface-private.h | 2 + 5663 src/cairo-ps-surface.c | 234 ++++++++++++++++++++++++++++------------- 5664 2 files changed, 162 insertions(+), 74 deletions(-) 5665 5666commit 6f9d71c10bf3e38c88378950037d1c81a2413617 5667Author: Adrian Johnson <ajohnson@redneon.com> 5668AuthorDate: Thu Feb 7 00:28:19 2008 +1030 5669Commit: Adrian Johnson <ajohnson@redneon.com> 5670CommitDate: Fri Feb 15 07:42:29 2008 +1030 5671 5672 Make PS backend use cairo-pdf-operators.c 5673 5674 Changes include: 5675 - Replace PS prolog with new prolog that emulates PDF operators 5676 - Remove the [1 0 0 -1 0 height] ctm on each page. PS and PDF surfaces 5677 now both transform all output to PS/PDF coordinates. 5678 - Invert images to match PDF images where (0,0) is top left 5679 - emit_surface_pattern now uses the same transform as PDF 5680 - move the special dash handling into cairo-pdf-operators.c 5681 5682 src/cairo-pdf-operators.c | 82 ++++- 5683 src/cairo-ps-surface-private.h | 4 + 5684 src/cairo-ps-surface.c | 767 ++++++++--------------------------------- 5685 3 files changed, 219 insertions(+), 634 deletions(-) 5686 5687commit 49f755ed2d517adabcdbe9f3834ff18b220dfa7f 5688Author: Adrian Johnson <ajohnson@redneon.com> 5689AuthorDate: Wed Jan 30 20:42:28 2008 +1100 5690Commit: Adrian Johnson <ajohnson@redneon.com> 5691CommitDate: Fri Feb 15 07:42:29 2008 +1030 5692 5693 PS: Remove the Type 3 outline glyph code 5694 5695 This code is never used because outline glyphs that go through the 5696 fallback path are always embedded with Type 1 fallback. The only fonts 5697 that are embedded as Type 3 are bitmap fonts. 5698 5699 src/cairo-ps-surface.c | 54 +++++--------------------------------------------- 5700 1 file changed, 5 insertions(+), 49 deletions(-) 5701 5702commit 0c6a362122657d5c9804fa7f45c3404aef052688 5703Author: Adrian Johnson <ajohnson@redneon.com> 5704AuthorDate: Wed Jan 30 20:38:17 2008 +1100 5705Commit: Adrian Johnson <ajohnson@redneon.com> 5706CommitDate: Fri Feb 15 07:42:29 2008 +1030 5707 5708 pdf-operators: only one path matrix is required 5709 5710 The PDF emit path orginally had two matrix transforms in the path 5711 struct. One for strokes and one for fill/clip. As only one transform 5712 at a time is ever used this can be simplified. 5713 5714 src/cairo-pdf-operators.c | 41 ++++++++--------------------------------- 5715 1 file changed, 8 insertions(+), 33 deletions(-) 5716 5717commit 5639643efe12bee4252e8cb433d343999e34ec32 5718Author: Adrian Johnson <ajohnson@redneon.com> 5719AuthorDate: Wed Jan 30 20:16:08 2008 +1100 5720Commit: Adrian Johnson <ajohnson@redneon.com> 5721CommitDate: Fri Feb 15 07:42:29 2008 +1030 5722 5723 Add PS linecap path workarounds to pdf_operators 5724 5725 So that pdf_operators can be used by the PS backend. PDF also needs 5726 this workaround. 5727 5728 src/cairo-pdf-operators.c | 123 ++++++++++++++++++++++++++++++++-------------- 5729 1 file changed, 86 insertions(+), 37 deletions(-) 5730 5731commit 0987fdee24d60573249a7fa3acc15e67454bd8b3 5732Author: Adrian Johnson <ajohnson@redneon.com> 5733AuthorDate: Wed Jan 30 17:22:52 2008 +1100 5734Commit: Adrian Johnson <ajohnson@redneon.com> 5735CommitDate: Fri Feb 15 07:42:29 2008 +1030 5736 5737 Add word_wrap stream to pdf-operators 5738 5739 The word_wrap stream in ps-surface will be removed in a later commit. 5740 5741 src/cairo-pdf-operators.c | 114 ++++++++++++++++++++++++++++++++++++++++++++++ 5742 1 file changed, 114 insertions(+) 5743 5744commit d05f08bceebe832844ab97a5660af4fa1452697d 5745Author: Behdad Esfahbod <behdad@behdad.org> 5746AuthorDate: Tue Feb 12 15:44:21 2008 -0500 5747Commit: Behdad Esfahbod <behdad@behdad.org> 5748CommitDate: Tue Feb 12 15:44:21 2008 -0500 5749 5750 [configure.in] Make PS/PDF/SVG default enabled 5751 5752 Previously they were default auto-detected. We really want people 5753 have to go out of their way to not build them, hence the change. 5754 5755 configure.in | 6 +++--- 5756 1 file changed, 3 insertions(+), 3 deletions(-) 5757 5758commit fd3181c7bfdb468557d8c845a016b19c5a897955 5759Author: Adrian Johnson <ajohnson@redneon.com> 5760AuthorDate: Tue Feb 12 20:22:38 2008 +1030 5761Commit: Adrian Johnson <ajohnson@redneon.com> 5762CommitDate: Tue Feb 12 20:22:38 2008 +1030 5763 5764 PDF: Remove stale comments 5765 5766 src/cairo-pdf-surface.c | 23 ----------------------- 5767 1 file changed, 23 deletions(-) 5768 5769commit bdb857a78b41d926b1c239cf988539842a72130b 5770Author: Adrian Johnson <ajohnson@redneon.com> 5771AuthorDate: Tue Feb 12 20:19:03 2008 +1030 5772Commit: Adrian Johnson <ajohnson@redneon.com> 5773CommitDate: Tue Feb 12 20:19:03 2008 +1030 5774 5775 PDF: Fix uninitialized variable in previous commit 5776 5777 src/cairo-pdf-surface.c | 1 + 5778 1 file changed, 1 insertion(+) 5779 5780commit ba6788fc968477cfae6ed76414dd91b21671d028 5781Author: Kristian Høgsberg <krh@redhat.com> 5782AuthorDate: Mon Feb 11 13:44:48 2008 -0500 5783Commit: Kristian Høgsberg <krh@redhat.com> 5784CommitDate: Mon Feb 11 16:57:56 2008 -0500 5785 5786 [pdf] Use compressed PDF stream instead of compress_dup() 5787 5788 The deflate stream has bounded (constant) memory overhead, whereas 5789 compress_dup() allocates memory proportional to the uncompressed data. 5790 5791 This replaces compress_dup() usage with a compressed PDF stream for 5792 emitting images, alpha masks and font subsets, and eliminates the 5793 compress_dup() function. 5794 5795 src/cairo-pdf-surface.c | 204 +++++++++++++----------------------------------- 5796 1 file changed, 55 insertions(+), 149 deletions(-) 5797 5798commit e68584d3a16da7db30bc53a42fa8367c8356bd7e 5799Author: Behdad Esfahbod <behdad@behdad.org> 5800AuthorDate: Fri Feb 8 17:36:59 2008 -0500 5801Commit: Behdad Esfahbod <behdad@behdad.org> 5802CommitDate: Fri Feb 8 17:37:50 2008 -0500 5803 5804 [xlib] Move multiple CAIRO_MUTEX_INITIALIZE into one place they all end up anyway 5805 5806 src/cairo-xlib-surface.c | 8 ++------ 5807 1 file changed, 2 insertions(+), 6 deletions(-) 5808 5809commit 0626cac6dba91d0ee20458858275745b7c6a1bfd 5810Author: Peter Weilbacher <mozilla@weilbacher.org> 5811AuthorDate: Fri Feb 8 15:09:19 2008 +0100 5812Commit: Peter Weilbacher <mozilla@weilbacher.org> 5813CommitDate: Fri Feb 8 15:09:19 2008 +0100 5814 5815 [os2] fix typo in comment 5816 5817 src/cairo-os2-surface.c | 2 +- 5818 1 file changed, 1 insertion(+), 1 deletion(-) 5819 5820commit b4fe25d9afff5d5b0ebaa315ad0e42f36853d5d1 5821Author: Peter Weilbacher <mozilla@weilbacher.org> 5822AuthorDate: Fri Feb 8 15:04:49 2008 +0100 5823Commit: Peter Weilbacher <mozilla@weilbacher.org> 5824CommitDate: Fri Feb 8 15:04:49 2008 +0100 5825 5826 [os2] only call FcInit/Fini when compiled with FT font backend 5827 5828 src/cairo-os2-surface.c | 6 +++++- 5829 1 file changed, 5 insertions(+), 1 deletion(-) 5830 5831commit 5e9cdcca00a490f3a36b4229f5353d795ca53a5d 5832Author: Antoine Azar <cairo@antoineazar.com> 5833AuthorDate: Thu Feb 7 17:09:41 2008 -0500 5834Commit: Behdad Esfahbod <behdad@behdad.org> 5835CommitDate: Fri Feb 8 00:19:57 2008 -0500 5836 5837 Fixed rounding function call 5838 5839 test/get-path-extents.c | 2 +- 5840 1 file changed, 1 insertion(+), 1 deletion(-) 5841 5842commit 80e11a85a95c5f2c814eef90a8e6ab60c8835104 5843Author: Vladimir Vukicevic <vladimir@pobox.com> 5844AuthorDate: Thu Feb 7 14:36:39 2008 -0800 5845Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 5846CommitDate: Thu Feb 7 14:36:51 2008 -0800 5847 5848 [pdf] restore alpha_size back to correct bit size 5849 5850 src/cairo-pdf-surface.c | 6 +++++- 5851 1 file changed, 5 insertions(+), 1 deletion(-) 5852 5853commit 95db215cc15d228fcb38bc43d2d918fccec0a9cd 5854Author: Azar@.(none) <Azar@.(none)> 5855AuthorDate: Fri Feb 1 18:45:59 2008 -0800 5856Commit: Behdad Esfahbod <behdad@behdad.org> 5857CommitDate: Wed Feb 6 21:45:24 2008 -0500 5858 5859 Some fixes and improvements to the Win32 build 5860 5861 Makefile.win32 | 32 ++++- 5862 boilerplate/Makefile.win32 | 25 +++- 5863 boilerplate/cairo-boilerplate-getopt.c | 250 +++++++++++++++++++++++++++++++++ 5864 boilerplate/cairo-boilerplate-getopt.h | 63 +++++++++ 5865 boilerplate/cairo-boilerplate.h | 4 + 5866 perf/Makefile.win32 | 54 ++++++- 5867 perf/cairo-perf.c | 7 +- 5868 perf/cairo-perf.h | 2 +- 5869 perf/world-map.c | 2 + 5870 src/Makefile.win32 | 36 +++-- 5871 test/Makefile.win32 | 25 +++- 5872 test/font-matrix-translation.c | 2 +- 5873 test/pdiff/Makefile.win32 | 3 + 5874 13 files changed, 470 insertions(+), 35 deletions(-) 5875 5876commit 7800cfd7de347bb8c54fc36ed886018a2d9ec503 5877Author: Carl Worth <cworth@cworth.org> 5878AuthorDate: Wed Feb 6 17:00:29 2008 -0800 5879Commit: Carl Worth <cworth@cworth.org> 5880CommitDate: Wed Feb 6 17:01:22 2008 -0800 5881 5882 Add several Makefile.win32 files to EXTRA_DIST 5883 5884 Otherwise, these files were being omitted from the tar files. 5885 5886 Makefile.am | 2 ++ 5887 boilerplate/Makefile.am | 2 ++ 5888 perf/Makefile.am | 2 ++ 5889 src/Makefile.am | 2 ++ 5890 test/Makefile.am | 2 ++ 5891 5 files changed, 10 insertions(+) 5892 5893commit ac743e25fa7f8bd720219a5c909fe8bbd20b11b2 5894Author: Carl Worth <cworth@cworth.org> 5895AuthorDate: Thu Jan 31 16:13:44 2008 +1100 5896Commit: Carl Worth <cworth@cworth.org> 5897CommitDate: Wed Feb 6 17:01:21 2008 -0800 5898 5899 cairo_xlib_surface_create_similar: Pass the original drawable to XCreatePixmap 5900 5901 Previously we were passing the root window of the same screen. 5902 Letting the X server know the actual Drawable for which we're 5903 trying to be similar allows the X server to be more efficient. 5904 5905 src/cairo-xlib-surface.c | 4 ++-- 5906 1 file changed, 2 insertions(+), 2 deletions(-) 5907 5908commit cb9f9086a1c8ad312cfc5314fc8e352a6046d75e 5909Merge: c11b036b7 a9b0e54d3 5910Author: Peter Weilbacher <mozilla@weilbacher.org> 5911AuthorDate: Thu Feb 7 00:07:20 2008 +0100 5912Commit: Peter Weilbacher <mozilla@weilbacher.org> 5913CommitDate: Thu Feb 7 00:07:20 2008 +0100 5914 5915 Merge branch 'master' of ssh://pmw@git.freedesktop.org/git/cairo 5916 5917commit c11b036b75f3c71ff57ff4578b388bf5e35b2057 5918Author: Peter Weilbacher <mozilla@weilbacher.org> 5919AuthorDate: Thu Feb 7 00:03:33 2008 +0100 5920Commit: Peter Weilbacher <mozilla@weilbacher.org> 5921CommitDate: Thu Feb 7 00:03:33 2008 +0100 5922 5923 [os2] Improve documentation 5924 5925 Move the API documentation for the OS/2 backend from the .h file to the .c file and use the correct format. 5926 5927 src/cairo-os2-surface.c | 139 ++++++++++++++++++++++++++++++++++++++++++++++++ 5928 src/cairo-os2.h | 115 --------------------------------------- 5929 2 files changed, 139 insertions(+), 115 deletions(-) 5930 5931commit a9b0e54d386811dc750b5e676a0dfd84c32f4625 5932Author: Vladimir Vukicevic <vladimir@pobox.com> 5933AuthorDate: Wed Feb 6 13:52:33 2008 -0800 5934Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 5935CommitDate: Wed Feb 6 13:52:33 2008 -0800 5936 5937 Avoid buffer overflow in ps/pdf surface 5938 5939 A few places weren't using _cairo_malloc_*; fixed. 5940 5941 src/cairo-pdf-surface.c | 22 ++++++++++++++++------ 5942 src/cairo-ps-surface.c | 4 ++-- 5943 2 files changed, 18 insertions(+), 8 deletions(-) 5944 5945commit bf1f7f70b61b5bb657b2531dab63c541ac8fb59d 5946Author: Vladimir Vukicevic <vladimir@pobox.com> 5947AuthorDate: Wed Feb 6 13:01:52 2008 -0800 5948Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 5949CommitDate: Wed Feb 6 13:07:13 2008 -0800 5950 5951 Do correct calculation of pen dimensions for stroke optimization 5952 5953 src/cairo-path-stroke.c | 33 +++++++++++++-------------------- 5954 src/cairo-rectangle.c | 2 +- 5955 src/cairo-stroke-style.c | 17 +++++++++++++++++ 5956 src/cairoint.h | 11 ++++++++++- 5957 4 files changed, 41 insertions(+), 22 deletions(-) 5958 5959commit e104fcab1c8c8d9a7a7962a1dbea0c87867c8f9a 5960Author: Alp Toker <alp@atoker.com> 5961AuthorDate: Thu Jan 31 01:33:50 2008 +0000 5962Commit: Behdad Esfahbod <behdad@behdad.org> 5963CommitDate: Wed Feb 6 01:06:01 2008 -0500 5964 5965 Introduce cairo_has_current_point() 5966 5967 cairo_has_current_point() can be used to determine whether a current 5968 point is defined. We introduce this new symbol with a boolean return 5969 value to avoid the versioning ambiguity of modifying 5970 cairo_get_current_point(). This way we also don't have to map what 5971 should be a routine operation to an error condition as was previously 5972 proposed. 5973 5974 doc/public/cairo-sections.txt | 1 + 5975 src/cairo.c | 25 +++++++++++++++++++++++-- 5976 src/cairo.h | 3 +++ 5977 3 files changed, 27 insertions(+), 2 deletions(-) 5978 5979commit 1f0c3d06895ebcbfbae252e6b7298da0b64b37a9 5980Author: Alp Toker <alp@atoker.com> 5981AuthorDate: Thu Jan 31 00:54:52 2008 +0000 5982Commit: Behdad Esfahbod <behdad@behdad.org> 5983CommitDate: Wed Feb 6 01:06:00 2008 -0500 5984 5985 Revert "Change cairo_get_current_point() to return cairo_status_t instead of void" 5986 5987 This reverts commit b3eea75d1f7b56c2046b5387a5eb186d8f154184. 5988 5989 Reverted in favour of an alternative approach. 5990 5991 Conflicts: 5992 5993 src/cairo.c 5994 5995 src/cairo.c | 22 ++++------------------ 5996 src/cairo.h | 2 +- 5997 2 files changed, 5 insertions(+), 19 deletions(-) 5998 5999commit 4c005f7ce385f3f8b161cffac11bb9766f4ef9a9 6000Author: Azar@.(none) <Azar@.(none)> 6001AuthorDate: Fri Feb 1 14:29:24 2008 -0800 6002Commit: Behdad Esfahbod <behdad@behdad.org> 6003CommitDate: Wed Feb 6 00:27:57 2008 -0500 6004 6005 replaced round with _cairo_lround. Round doesn't compile on Win32 6006 6007 test/get-path-extents.c | 2 +- 6008 1 file changed, 1 insertion(+), 1 deletion(-) 6009 6010commit 1d93e148766ded8f3105277f944849f6297974fb 6011Author: Vladimir Vukicevic <vladimir@pobox.com> 6012AuthorDate: Tue Feb 5 16:14:51 2008 -0800 6013Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 6014CommitDate: Tue Feb 5 16:14:51 2008 -0800 6015 6016 Followup patch to dashed stroke optimization 6017 6018 Make sure that we don't test lines that start or end inside the box, 6019 since our algorithm will find intersections on the wrong ends on the 6020 line, and not count them. 6021 6022 src/cairo-rectangle.c | 10 ++++++++-- 6023 1 file changed, 8 insertions(+), 2 deletions(-) 6024 6025commit 7b788ce7cace4fd24c568248c22b4ec6c88b563b 6026Author: Vladimir Vukicevic <vladimir@pobox.com> 6027AuthorDate: Tue Feb 5 15:04:38 2008 -0800 6028Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 6029CommitDate: Tue Feb 5 15:04:38 2008 -0800 6030 6031 Update test ref images that changed with stroking changes 6032 6033 test/dash-scale-ref.png | Bin 7908 -> 8035 bytes 6034 1 file changed, 0 insertions(+), 0 deletions(-) 6035 6036commit 4471e58c12c20723f1ddac3d0284239be6eb27a8 6037Author: Vladimir Vukicevic <vladimir@pobox.com> 6038AuthorDate: Mon Feb 4 03:55:55 2008 -0800 6039Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 6040CommitDate: Tue Feb 5 15:04:28 2008 -0800 6041 6042 Optimize dashed strokes, part 2 6043 6044 Pass down the bounding box to the stroker, and avoid doing expensive 6045 calculations for dash segments that are outside the box. 6046 6047 src/cairo-path-stroke.c | 122 ++++++++++++++++++++++++++++++++---------------- 6048 src/cairo-rectangle.c | 94 +++++++++++++++++++++++++++++++++++++ 6049 src/cairo-traps.c | 8 ++++ 6050 src/cairoint.h | 10 ++++ 6051 4 files changed, 195 insertions(+), 39 deletions(-) 6052 6053commit afbd82671fe5ebebe5d58bef3d372312be1c5aeb 6054Author: Vladimir Vukicevic <vladimir@pobox.com> 6055AuthorDate: Sat Feb 2 23:48:16 2008 -0800 6056Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 6057CommitDate: Tue Feb 5 15:04:25 2008 -0800 6058 6059 Optimize stroker by hoisting some calculations out of loops 6060 6061 sqrt and a few other floating-point operations were being done 6062 repeatedly within a loop; those are now precalculated and passed 6063 down where needed. 6064 6065 src/cairo-path-stroke.c | 142 +++++++++++++++++++++++++++++------------------- 6066 1 file changed, 87 insertions(+), 55 deletions(-) 6067 6068commit bda0baa255801dbc21b63b364eff32de98dd6c7f 6069Author: Vladimir Vukicevic <vladimir@pobox.com> 6070AuthorDate: Tue Feb 5 15:04:15 2008 -0800 6071Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 6072CommitDate: Tue Feb 5 15:04:15 2008 -0800 6073 6074 Fix text-zero-len on ATSUI to not infinite loop 6075 6076 src/cairo-atsui-font.c | 11 +++++++++++ 6077 1 file changed, 11 insertions(+) 6078 6079commit 03256d0f2be15e7ba57bc041f8cdfc1c3e718660 6080Author: Vladimir Vukicevic <vladimir@pobox.com> 6081AuthorDate: Tue Feb 5 15:04:11 2008 -0800 6082Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 6083CommitDate: Tue Feb 5 15:04:11 2008 -0800 6084 6085 Remove get-xrender-format from list of tests to be run on all platforms 6086 6087 test/Makefile.am | 1 - 6088 1 file changed, 1 deletion(-) 6089 6090commit 6140776b4e7d5787467606fbe8a961dbee6bd9fb 6091Author: Adrian Johnson <ajohnson@redneon.com> 6092AuthorDate: Tue Feb 5 00:22:26 2008 +1030 6093Commit: Adrian Johnson <ajohnson@redneon.com> 6094CommitDate: Tue Feb 5 00:22:26 2008 +1030 6095 6096 Update operator-source ps ref images 6097 6098 test/operator-source-ps-argb32-ref.png | Bin 4053 -> 4026 bytes 6099 test/operator-source-ps-rgb24-ref.png | Bin 2567 -> 3366 bytes 6100 2 files changed, 0 insertions(+), 0 deletions(-) 6101 6102commit dee6e27537a26e93266c0a2d2071ad8d4ed2c9ee 6103Author: Adrian Johnson <ajohnson@redneon.com> 6104AuthorDate: Tue Feb 5 00:12:48 2008 +1030 6105Commit: Adrian Johnson <ajohnson@redneon.com> 6106CommitDate: Tue Feb 5 00:12:48 2008 +1030 6107 6108 Add dash-curve ps ref image 6109 6110 test/dash-curve-ps-ref.png | Bin 0 -> 27206 bytes 6111 1 file changed, 0 insertions(+), 0 deletions(-) 6112 6113commit 2b0da0503baba111085a23e5e5e5feb8788d6650 6114Author: Adrian Johnson <ajohnson@redneon.com> 6115AuthorDate: Tue Feb 5 00:02:17 2008 +1030 6116Commit: Adrian Johnson <ajohnson@redneon.com> 6117CommitDate: Tue Feb 5 00:02:17 2008 +1030 6118 6119 Ensure PS/PDF miter is >= 1.0 6120 6121 The PS Language Reference requires the PS miter to be >= 1. 6122 6123 The PDF Reference does not specify miter limits however acroread fails 6124 to display pages when the miter is < 1. Older versions of ghostscript 6125 crash when the PDF miter is < 1. 6126 6127 src/cairo-pdf-operators.c | 2 +- 6128 src/cairo-ps-surface.c | 2 +- 6129 2 files changed, 2 insertions(+), 2 deletions(-) 6130 6131commit 381fcf01d71d6c83183f9764507ebbafd783d18a 6132Author: Adrian Johnson <ajohnson@redneon.com> 6133AuthorDate: Sun Feb 3 20:05:41 2008 +1030 6134Commit: Adrian Johnson <ajohnson@redneon.com> 6135CommitDate: Sun Feb 3 20:05:41 2008 +1030 6136 6137 Update over-around-source ps ref image 6138 6139 test/over-around-source-ps-argb32-ref.png | Bin 637 -> 632 bytes 6140 1 file changed, 0 insertions(+), 0 deletions(-) 6141 6142commit 9dda017af9bffeda59756cb3b15028ae83ed19ef 6143Author: Adrian Johnson <ajohnson@redneon.com> 6144AuthorDate: Sun Feb 3 19:53:35 2008 +1030 6145Commit: Adrian Johnson <ajohnson@redneon.com> 6146CommitDate: Sun Feb 3 19:53:35 2008 +1030 6147 6148 Update gradient-alpha ps ref images 6149 6150 test/gradient-alpha-ps-argb32-ref.png | Bin 187 -> 179 bytes 6151 test/gradient-alpha-ps-rgb24-ref.png | Bin 184 -> 179 bytes 6152 2 files changed, 0 insertions(+), 0 deletions(-) 6153 6154commit 3f943a98f69b90b066217b19c47851ce03e50551 6155Author: Adrian Johnson <ajohnson@redneon.com> 6156AuthorDate: Sun Feb 3 19:49:23 2008 +1030 6157Commit: Adrian Johnson <ajohnson@redneon.com> 6158CommitDate: Sun Feb 3 19:49:23 2008 +1030 6159 6160 Add linear-gradient-reflect ps ref image 6161 6162 test/linear-gradient-reflect-ps-ref.png | Bin 0 -> 315 bytes 6163 1 file changed, 0 insertions(+), 0 deletions(-) 6164 6165commit a74e6692341daeff9ab266b3b29fcc8b8e917d88 6166Author: Adrian Johnson <ajohnson@redneon.com> 6167AuthorDate: Sun Feb 3 19:34:53 2008 +1030 6168Commit: Adrian Johnson <ajohnson@redneon.com> 6169CommitDate: Sun Feb 3 19:34:53 2008 +1030 6170 6171 PS: Implement reflected surface patterns 6172 6173 The image/meta-pattern is written once. A PS pattern twice the size of 6174 the cairo pattern is created and the surface drawn four times in a 6175 reflect pattern inside the PS pattern. 6176 6177 This fixes the extend-reflect and extend-reflect-similar PS test 6178 failures. 6179 6180 src/cairo-ps-surface.c | 41 +++++++++++++++++++++++++++++++++-------- 6181 1 file changed, 33 insertions(+), 8 deletions(-) 6182 6183commit 7c5bc5fde819014f62ebb9bac86d4529f056956d 6184Author: Adrian Johnson <ajohnson@redneon.com> 6185AuthorDate: Sun Feb 3 18:58:02 2008 +1030 6186Commit: Adrian Johnson <ajohnson@redneon.com> 6187CommitDate: Sun Feb 3 18:58:02 2008 +1030 6188 6189 Add operator-clear ps ref image 6190 6191 test/operator-clear-ps-argb32-ref.png | Bin 0 -> 1409 bytes 6192 1 file changed, 0 insertions(+), 0 deletions(-) 6193 6194commit 06b2d009ba50a2908fd9c93ff3e467f511b233cf 6195Author: Adrian Johnson <ajohnson@redneon.com> 6196AuthorDate: Sun Feb 3 18:50:14 2008 +1030 6197Commit: Adrian Johnson <ajohnson@redneon.com> 6198CommitDate: Sun Feb 3 18:50:14 2008 +1030 6199 6200 Update clip-operator ps ref image 6201 6202 test/clip-operator-ps-argb32-ref.png | Bin 8594 -> 9062 bytes 6203 1 file changed, 0 insertions(+), 0 deletions(-) 6204 6205commit 13663d1d500a6c2254097011e66199d6dd81c62d 6206Author: Adrian Johnson <ajohnson@redneon.com> 6207AuthorDate: Sun Feb 3 17:10:56 2008 +1030 6208Commit: Adrian Johnson <ajohnson@redneon.com> 6209CommitDate: Sun Feb 3 17:10:56 2008 +1030 6210 6211 PS: Implement linear gradient repeat and reflect 6212 6213 src/cairo-ps-surface.c | 250 ++++++++++++++++++++++++++++++++++++++----------- 6214 1 file changed, 196 insertions(+), 54 deletions(-) 6215 6216commit 92a2e851df6668f60c63165466d2ee85dd600f47 6217Author: Adrian Johnson <ajohnson@redneon.com> 6218AuthorDate: Sat Feb 2 23:00:30 2008 +1030 6219Commit: Adrian Johnson <ajohnson@redneon.com> 6220CommitDate: Sat Feb 2 23:00:30 2008 +1030 6221 6222 Update operator-source PS ref images 6223 6224 test/operator-source-ps-argb32-ref.png | Bin 3885 -> 4053 bytes 6225 test/operator-source-ps-rgb24-ref.png | Bin 3548 -> 2567 bytes 6226 2 files changed, 0 insertions(+), 0 deletions(-) 6227 6228commit 367e50137eb1b2b3952a87c580eed08a79fd211f 6229Author: Adrian Johnson <ajohnson@redneon.com> 6230AuthorDate: Sat Feb 2 20:59:56 2008 +1030 6231Commit: Adrian Johnson <ajohnson@redneon.com> 6232CommitDate: Sat Feb 2 21:22:16 2008 +1030 6233 6234 PDF: Use correct surface size when emitting patterns 6235 6236 Store the surface size in each pattern and smask group and use this 6237 size when the pattern/group is emitted. This is required as a pattern 6238 or group may be used from a meta surface with a different size to the 6239 PDF surface. However the pattern or group is emitted after the the meta 6240 surface content has been emitted and the surface size has been 6241 restored to the the page size. 6242 6243 This fixes the following pdf test failures: 6244 extend-reflect-similar 6245 extend-repeat-similar 6246 mask 6247 6248 src/cairo-pdf-surface-private.h | 4 ++++ 6249 src/cairo-pdf-surface.c | 53 ++++++++++++++++++++++++++++++++++++----- 6250 2 files changed, 51 insertions(+), 6 deletions(-) 6251 6252commit d08d5c421a45c4e5f30b308823e90a86f1ec2052 6253Author: Carl Worth <cworth@cworth.org> 6254AuthorDate: Wed Jan 30 05:35:50 2008 -0800 6255Commit: Carl Worth <cworth@cworth.org> 6256CommitDate: Wed Jan 30 05:35:50 2008 -0800 6257 6258 Increment cairo version to 1.5.9 after the 1.5.8 snapshot 6259 6260 configure.in | 2 +- 6261 1 file changed, 1 insertion(+), 1 deletion(-) 6262 6263commit 4ccb8cb29546432858e778e1b88cada1327f6f45 6264Author: Carl Worth <cworth@cworth.org> 6265AuthorDate: Wed Jan 30 05:16:26 2008 -0800 6266Commit: Carl Worth <cworth@cworth.org> 6267CommitDate: Wed Jan 30 05:16:26 2008 -0800 6268 6269 Add some more reference images to REFERENCE_IMAGES 6270 6271 test/Makefile.am | 3 +++ 6272 1 file changed, 3 insertions(+) 6273 6274commit b31a7a904f8413c34970beabce6fecf6e1fdc925 6275Author: Carl Worth <cworth@cworth.org> 6276AuthorDate: Wed Jan 30 05:13:53 2008 -0800 6277Commit: Carl Worth <cworth@cworth.org> 6278CommitDate: Wed Jan 30 05:13:53 2008 -0800 6279 6280 Increment cairo version to 1.5.8 and libtool version to 16:0:14 6281 6282 configure.in | 6 +++--- 6283 1 file changed, 3 insertions(+), 3 deletions(-) 6284 6285commit ca10920cc9f3a673e2199112541d5a1472423c47 6286Author: Carl Worth <cworth@cworth.org> 6287AuthorDate: Wed Jan 30 05:07:20 2008 -0800 6288Commit: Carl Worth <cworth@cworth.org> 6289CommitDate: Wed Jan 30 05:07:20 2008 -0800 6290 6291 Add a1-image-sample and a1-traps-sample reference images to the dist list 6292 6293 test/Makefile.am | 2 ++ 6294 1 file changed, 2 insertions(+) 6295 6296commit 2fee01e2d40715defe9143456101533c1f1aafcf 6297Author: Carl Worth <cworth@cworth.org> 6298AuthorDate: Wed Jan 30 04:54:39 2008 -0800 6299Commit: Carl Worth <cworth@cworth.org> 6300CommitDate: Wed Jan 30 04:54:39 2008 -0800 6301 6302 check-doc-syntax.sh: Fix for non-srcdir builds (such as make distcheck) 6303 6304 src/check-doc-syntax.sh | 5 +---- 6305 1 file changed, 1 insertion(+), 4 deletions(-) 6306 6307commit 78022f3aa16cf8a629aec4595c5a542ca68a78cc 6308Author: Carl Worth <cworth@cworth.org> 6309AuthorDate: Wed Jan 30 04:54:05 2008 -0800 6310Commit: Carl Worth <cworth@cworth.org> 6311CommitDate: Wed Jan 30 04:54:05 2008 -0800 6312 6313 Add doc/public test scripts to EXTRA_DIST 6314 6315 This prevents failures of make distcheck 6316 6317 doc/public/Makefile.am | 1 + 6318 1 file changed, 1 insertion(+) 6319 6320commit d49b1220b2feeca82050de05c9c01012e8420acb 6321Author: Carl Worth <cworth@cworth.org> 6322AuthorDate: Wed Jan 30 04:52:23 2008 -0800 6323Commit: Carl Worth <cworth@cworth.org> 6324CommitDate: Wed Jan 30 04:52:50 2008 -0800 6325 6326 Remove extend-pad-similar test case 6327 6328 This seems redundant with the recent testing of all test cases 6329 against similar surfaces. Plus, it hasn't had a reference image 6330 anyway which was causing problems with the recent extra checks 6331 for missing reference images. 6332 6333 test/Makefile.am | 3 -- 6334 test/extend-pad-similar.c | 105 ---------------------------------------------- 6335 2 files changed, 108 deletions(-) 6336 6337commit 7d2fda54f9bf6ae48cf8048b4836dea7f20cccee 6338Author: Carl Worth <cworth@cworth.org> 6339AuthorDate: Wed Jan 30 04:23:19 2008 -0800 6340Commit: Carl Worth <cworth@cworth.org> 6341CommitDate: Wed Jan 30 04:23:19 2008 -0800 6342 6343 NEWS: Add notes for the 1.5.8 snapshot 6344 6345 NEWS | 103 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 6346 1 file changed, 103 insertions(+) 6347 6348commit 3b0adf4f5ac78e3f19b4e19267da2aa1b3c7d57b 6349Author: Jeff Muizelaar <jeff@infidigm.net> 6350AuthorDate: Tue Jan 29 09:07:54 2008 -0800 6351Commit: Carl Worth <cworth@cworth.org> 6352CommitDate: Tue Jan 29 09:07:54 2008 -0800 6353 6354 Use ADD instead of IN for clipping. 6355 6356 ADD is already special-cased by pixman, so using it instead avoids hitting 6357 the slower general path. 6358 6359 src/cairo-clip.c | 34 ++++++++++++++++++++++++++++++++-- 6360 1 file changed, 32 insertions(+), 2 deletions(-) 6361 6362commit fa6aedf2d68941bf8532bf487d5412cfc508e0a9 6363Author: Carl Worth <cworth@cworth.org> 6364AuthorDate: Tue Jan 29 09:01:47 2008 -0800 6365Commit: Carl Worth <cworth@cworth.org> 6366CommitDate: Tue Jan 29 09:01:47 2008 -0800 6367 6368 Fix typo in printf arguments in error message 6369 6370 test/font-matrix-translation.c | 2 +- 6371 1 file changed, 1 insertion(+), 1 deletion(-) 6372 6373commit e2bb36fe08546e6461fcbd40f5f3f81e5efc7686 6374Author: Carl Worth <cworth@cworth.org> 6375AuthorDate: Tue Jan 29 08:41:21 2008 -0800 6376Commit: Carl Worth <cworth@cworth.org> 6377CommitDate: Tue Jan 29 09:01:00 2008 -0800 6378 6379 wAdd proper error propagation to _cairo_matrix_compute_scale_factors 6380 6381 Before there was just an assert statement here that the 6382 determinant of the matrix was not infinite. That was bogus 6383 since a user-provided can end up here. So instead, do the 6384 correct error propagation of any CAIRO_STATUS_INVALID_MATRIX 6385 error as necessary. 6386 6387 This eliminates the current failure of the invalid-matrix 6388 test case. 6389 6390 src/cairo-atsui-font.c | 56 ++++++++++++++++++++++++++++++++++++------------- 6391 src/cairo-ft-font.c | 20 ++++++++++++------ 6392 src/cairo-matrix.c | 7 +++++-- 6393 src/cairo-scaled-font.c | 13 ++++++++---- 6394 src/cairo-win32-font.c | 20 +++++++++++------- 6395 src/cairoint.h | 4 ++-- 6396 6 files changed, 83 insertions(+), 37 deletions(-) 6397 6398commit 849322235764f570a4a3a1217960d096d16165cf 6399Author: Carl Worth <cworth@cworth.org> 6400AuthorDate: Tue Jan 29 05:40:39 2008 -0800 6401Commit: Carl Worth <cworth@cworth.org> 6402CommitDate: Tue Jan 29 05:40:39 2008 -0800 6403 6404 Initialize return values for cairo_*_extents in case of error 6405 6406 Previously we left the return values alone, which set the 6407 user up for a nasty trap, (using potentially uninitialized 6408 values with no indication that there was an error). So now 6409 we initialize these values to 0.0 if the cairo_t is in error. 6410 6411 The fixed functions include: 6412 6413 cairo_path_extents 6414 cairo_stroke_extents 6415 cairo_fill_extents 6416 cairo_clip_extents 6417 cairo_font_extents 6418 6419 src/cairo.c | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++---- 6420 1 file changed, 50 insertions(+), 4 deletions(-) 6421 6422commit 6bdba4b4be5e66ffa61e164f8098b76d848e8f32 6423Author: Carl Worth <cworth@cworth.org> 6424AuthorDate: Tue Jan 29 05:27:10 2008 -0800 6425Commit: Carl Worth <cworth@cworth.org> 6426CommitDate: Tue Jan 29 05:27:10 2008 -0800 6427 6428 Add missing libcairo_font_subset_sources to fix the build 6429 6430 src/Makefile.am | 2 ++ 6431 1 file changed, 2 insertions(+) 6432 6433commit 3d82056cee0ba960ebb61877fec8aa646e60e990 6434Author: Nis Martensen <nis.martensen@web.de> 6435AuthorDate: Tue Jan 29 05:32:24 2008 -0500 6436Commit: Behdad Esfahbod <behdad@behdad.org> 6437CommitDate: Tue Jan 29 05:32:24 2008 -0500 6438 6439 Fix typos 6440 6441 src/cairo.h | 4 ++-- 6442 src/check-doc-syntax.sh | 4 ++-- 6443 2 files changed, 4 insertions(+), 4 deletions(-) 6444 6445commit b28f4f57f21ac4091c9457873abe1465ec3f7fed 6446Author: Behdad Esfahbod <behdad@behdad.org> 6447AuthorDate: Tue Jan 29 04:32:39 2008 -0500 6448Commit: Behdad Esfahbod <behdad@behdad.org> 6449CommitDate: Tue Jan 29 04:32:55 2008 -0500 6450 6451 [src/Makefile.am] Reorganize 6452 6453 Main goal was to be able to pass list of all cairo sources, enabled or 6454 not, to check-doc-syntax.sh such that it doesn't check *.h, *.c, *.cpp 6455 because that can be annoying when bisecting. 6456 6457 src/Makefile.am | 352 ++++++++++++++++++++++++++---------------------- 6458 src/check-doc-syntax.sh | 5 +- 6459 2 files changed, 195 insertions(+), 162 deletions(-) 6460 6461commit 41a57007939a3e206647fda1b6e5a554ca125c5f 6462Author: Adrian Johnson <ajohnson@redneon.com> 6463AuthorDate: Tue Jan 29 20:27:06 2008 +1100 6464Commit: Adrian Johnson <ajohnson@redneon.com> 6465CommitDate: Tue Jan 29 20:27:06 2008 +1100 6466 6467 Fix undefined macro that was preventing the tests from compiling 6468 6469 test/pattern-getters.c | 28 ++++++++++++++-------------- 6470 1 file changed, 14 insertions(+), 14 deletions(-) 6471 6472commit cfce362375963502c4d29089b369d8e5ce2b7dcb 6473Author: Behdad Esfahbod <behdad@behdad.org> 6474AuthorDate: Tue Jan 29 01:27:47 2008 -0500 6475Commit: Behdad Esfahbod <behdad@behdad.org> 6476CommitDate: Tue Jan 29 01:27:47 2008 -0500 6477 6478 [cairo_operator_t] Mark DestAtop unbounded and document boundedness 6479 6480 src/cairo.h | 7 ++++++- 6481 1 file changed, 6 insertions(+), 1 deletion(-) 6482 6483commit f9b90e475ed6009e58e5f11ac713f9ea639a6900 6484Author: Behdad Esfahbod <behdad@behdad.org> 6485AuthorDate: Tue Jan 29 01:20:03 2008 -0500 6486Commit: Behdad Esfahbod <behdad@behdad.org> 6487CommitDate: Tue Jan 29 01:20:03 2008 -0500 6488 6489 [doc] Fix cairo_operator_t docs to make Carl (and Keith) happy 6490 6491 src/cairo.h | 17 ++++++++++++----- 6492 1 file changed, 12 insertions(+), 5 deletions(-) 6493 6494commit 9ee7a48b33f11a42b0ffd12a9192a328e35233f3 6495Author: Behdad Esfahbod <behdad@behdad.org> 6496AuthorDate: Tue Jan 29 00:50:48 2008 -0500 6497Commit: Behdad Esfahbod <behdad@behdad.org> 6498CommitDate: Tue Jan 29 00:50:48 2008 -0500 6499 6500 [Makefile.am] Minor wording change 6501 6502 Makefile.am | 2 +- 6503 1 file changed, 1 insertion(+), 1 deletion(-) 6504 6505commit 013781137ff4940d0b9e04b656c20af37bbd5333 6506Author: Behdad Esfahbod <behdad@behdad.org> 6507AuthorDate: Tue Jan 29 00:42:51 2008 -0500 6508Commit: Behdad Esfahbod <behdad@behdad.org> 6509CommitDate: Tue Jan 29 00:43:10 2008 -0500 6510 6511 [cairo-image-surface.c] Cleanup stride checking and improve docs 6512 6513 src/cairo-image-surface.c | 16 ++++++++-------- 6514 1 file changed, 8 insertions(+), 8 deletions(-) 6515 6516commit 8e3250b8564a346c61e926a6aa61f18ae3f60c93 6517Author: Behdad Esfahbod <behdad@behdad.org> 6518AuthorDate: Tue Jan 29 00:36:38 2008 -0500 6519Commit: Behdad Esfahbod <behdad@behdad.org> 6520CommitDate: Tue Jan 29 00:43:10 2008 -0500 6521 6522 [Makefile.am] Remove ROADMAP and TODO from dist files 6523 6524 Makefile.am | 4 +--- 6525 1 file changed, 1 insertion(+), 3 deletions(-) 6526 6527commit 81e4cc3bd7d1fec659a19f8b37253aaebe12c99b 6528Author: Behdad Esfahbod <behdad@behdad.org> 6529AuthorDate: Tue Jan 29 00:36:16 2008 -0500 6530Commit: Behdad Esfahbod <behdad@behdad.org> 6531CommitDate: Tue Jan 29 00:43:10 2008 -0500 6532 6533 [cairo_image_surface_create_for_data] Document stride error status 6534 6535 src/cairo-image-surface.c | 4 +++- 6536 1 file changed, 3 insertions(+), 1 deletion(-) 6537 6538commit 6153a3b620641b1fb7b64a050a168482d2a42f2c 6539Author: Behdad Esfahbod <behdad@behdad.org> 6540AuthorDate: Tue Jan 29 00:34:00 2008 -0500 6541Commit: Behdad Esfahbod <behdad@behdad.org> 6542CommitDate: Tue Jan 29 00:43:10 2008 -0500 6543 6544 [doc] Run check-doc-syntax.sh for SGML docs too 6545 6546 doc/public/Makefile.am | 4 ++-- 6547 doc/public/check-doc-syntax.sh | 11 +++++++++++ 6548 src/check-doc-syntax.sh | 33 ++++++++++++++++++++++++--------- 6549 3 files changed, 37 insertions(+), 11 deletions(-) 6550 6551commit 3f7d301786ce345cc4221f434bda6751e9b97ad1 6552Author: Behdad Esfahbod <behdad@behdad.org> 6553AuthorDate: Mon Jan 28 23:56:23 2008 -0500 6554Commit: Behdad Esfahbod <behdad@behdad.org> 6555CommitDate: Tue Jan 29 00:43:10 2008 -0500 6556 6557 [src/check-doc-syntax.sh] Skip test if GNU grep is not available 6558 6559 src/check-doc-syntax.sh | 7 ++++++- 6560 1 file changed, 6 insertions(+), 1 deletion(-) 6561 6562commit 247e1011995b0241526262cc36eb34c7e5edd47c 6563Author: Carl Worth <cworth@cworth.org> 6564AuthorDate: Mon Jan 28 21:24:56 2008 -0800 6565Commit: Carl Worth <cworth@cworth.org> 6566CommitDate: Mon Jan 28 21:26:05 2008 -0800 6567 6568 Fix bitmap-font test by using near-equality for double comparison 6569 6570 test/bitmap-font.c | 11 ++++++----- 6571 test/cairo-test.h | 2 ++ 6572 test/pattern-getters.c | 4 +--- 6573 3 files changed, 9 insertions(+), 8 deletions(-) 6574 6575commit 468caac068d3d25507d901f069e3e55731a27ae9 6576Author: Behdad Esfahbod <behdad@behdad.org> 6577AuthorDate: Mon Jan 28 23:30:09 2008 -0500 6578Commit: Behdad Esfahbod <behdad@behdad.org> 6579CommitDate: Mon Jan 28 23:30:09 2008 -0500 6580 6581 [configure.in] Minor change to cairo-features.h comments to make tests pass 6582 6583 configure.in | 2 +- 6584 1 file changed, 1 insertion(+), 1 deletion(-) 6585 6586commit b4c7a0dc6e996e47390ae544f82024afbb7859ed 6587Author: Behdad Esfahbod <behdad@behdad.org> 6588AuthorDate: Mon Jan 28 23:27:10 2008 -0500 6589Commit: Behdad Esfahbod <behdad@behdad.org> 6590CommitDate: Mon Jan 28 23:27:10 2008 -0500 6591 6592 [doc] Document CAIRO_HAS_* macros. We now finally have real 100% coverage. 6593 6594 doc/public/Makefile.am | 2 ++ 6595 doc/public/cairo-sections.txt | 9 +++++++++ 6596 doc/public/tmpl/cairo-ft.sgml | 8 ++++++++ 6597 doc/public/tmpl/cairo-pdf.sgml | 8 ++++++++ 6598 doc/public/tmpl/cairo-png.sgml | 9 +++++++++ 6599 doc/public/tmpl/cairo-ps.sgml | 8 ++++++++ 6600 doc/public/tmpl/cairo-svg.sgml | 8 ++++++++ 6601 doc/public/tmpl/cairo-win32-fonts.sgml | 8 ++++++++ 6602 doc/public/tmpl/cairo-win32.sgml | 8 ++++++++ 6603 doc/public/tmpl/cairo-xlib-xrender.sgml | 8 ++++++++ 6604 doc/public/tmpl/cairo-xlib.sgml | 8 ++++++++ 6605 11 files changed, 84 insertions(+) 6606 6607commit 47e0ecbea51cae73a85db277972b80eff0c4b9f6 6608Author: Behdad Esfahbod <behdad@behdad.org> 6609AuthorDate: Mon Jan 28 23:26:35 2008 -0500 6610Commit: Behdad Esfahbod <behdad@behdad.org> 6611CommitDate: Mon Jan 28 23:26:35 2008 -0500 6612 6613 [configure.in] Generate a cairo-no-features.h with macros for disabled supported backends 6614 to trick gtk-doc with it. 6615 6616 configure.in | 33 ++++++++++++++++++++++++++++++++- 6617 src/Makefile.am | 6 +++--- 6618 src/check-headers.sh | 2 +- 6619 3 files changed, 36 insertions(+), 5 deletions(-) 6620 6621commit 9d8990b6bdec8e574e37346c363b3a850a246452 6622Author: Behdad Esfahbod <behdad@behdad.org> 6623AuthorDate: Mon Jan 28 23:23:00 2008 -0500 6624Commit: Behdad Esfahbod <behdad@behdad.org> 6625CommitDate: Mon Jan 28 23:23:00 2008 -0500 6626 6627 [doc] Remove excess paranthesis 6628 6629 src/cairo-xlib-surface.c | 2 +- 6630 1 file changed, 1 insertion(+), 1 deletion(-) 6631 6632commit 6e495e94886dfa80f11f675a4b7fa3a767671cc0 6633Author: Behdad Esfahbod <behdad@behdad.org> 6634AuthorDate: Mon Jan 28 23:10:28 2008 -0500 6635Commit: Behdad Esfahbod <behdad@behdad.org> 6636CommitDate: Mon Jan 28 23:10:28 2008 -0500 6637 6638 [doc] More syntax fixes 6639 6640 doc/public/tmpl/cairo-version.sgml | 4 ++-- 6641 1 file changed, 2 insertions(+), 2 deletions(-) 6642 6643commit a00d71968285fc8c49903c1c84835a8be32cfbd3 6644Author: Behdad Esfahbod <behdad@behdad.org> 6645AuthorDate: Mon Jan 28 23:05:00 2008 -0500 6646Commit: Behdad Esfahbod <behdad@behdad.org> 6647CommitDate: Mon Jan 28 23:05:00 2008 -0500 6648 6649 [configure.in] Add commented-out #undef's for disable stable backends in cairo-features.h 6650 6651 configure.in | 8 ++++++++ 6652 1 file changed, 8 insertions(+) 6653 6654commit 6a089247a180cbc85e222520d2d93914434027be 6655Author: Behdad Esfahbod <behdad@behdad.org> 6656AuthorDate: Mon Jan 28 22:45:06 2008 -0500 6657Commit: Behdad Esfahbod <behdad@behdad.org> 6658CommitDate: Mon Jan 28 22:45:06 2008 -0500 6659 6660 [doc] Rename cairo-font.sgml to cairo-font-face.sgml 6661 6662 doc/public/cairo-docs.xml | 2 +- 6663 doc/public/cairo-sections.txt | 2 +- 6664 doc/public/tmpl/{cairo-font.sgml => cairo-font-face.sgml} | 0 6665 3 files changed, 2 insertions(+), 2 deletions(-) 6666 6667commit 1d17a7f7811b15c72a4091663e01a448f538bc68 6668Author: Behdad Esfahbod <behdad@behdad.org> 6669AuthorDate: Mon Jan 28 22:42:46 2008 -0500 6670Commit: Behdad Esfahbod <behdad@behdad.org> 6671CommitDate: Mon Jan 28 22:42:46 2008 -0500 6672 6673 [doc] Document the surface type of win32-printing surface being different 6674 6675 doc/public/tmpl/cairo-win32.sgml | 11 ++++++++++- 6676 1 file changed, 10 insertions(+), 1 deletion(-) 6677 6678commit a55f65b5d29060a7f8033ceea211252431d20b77 6679Author: Behdad Esfahbod <behdad@behdad.org> 6680AuthorDate: Mon Jan 28 22:25:37 2008 -0500 6681Commit: Behdad Esfahbod <behdad@behdad.org> 6682CommitDate: Mon Jan 28 22:25:37 2008 -0500 6683 6684 [doc] Fix typo 6685 6686 src/cairo-pattern.c | 4 ++-- 6687 1 file changed, 2 insertions(+), 2 deletions(-) 6688 6689commit 52cc603db1a805a0b3a8d7eba3171cd2785f10a7 6690Author: Behdad Esfahbod <behdad@behdad.org> 6691AuthorDate: Mon Jan 28 22:10:20 2008 -0500 6692Commit: Behdad Esfahbod <behdad@behdad.org> 6693CommitDate: Mon Jan 28 22:10:20 2008 -0500 6694 6695 [doc] Stricter syntax check for type names, update test 6696 6697 src/cairo-array.c | 2 +- 6698 src/cairo-cache-private.h | 2 +- 6699 src/cairo-font-face.c | 4 ++-- 6700 src/cairo-ft-font.c | 4 ++-- 6701 src/cairo-image-surface.c | 2 +- 6702 src/cairo-paginated-private.h | 8 ++++---- 6703 src/cairo-ps-surface.c | 2 +- 6704 src/cairo-ps.h | 2 +- 6705 src/cairo-region-private.h | 2 +- 6706 src/cairo-scaled-font-subsets-private.h | 16 ++++++++-------- 6707 src/cairo-scaled-font.c | 2 +- 6708 src/cairo-svg.h | 2 +- 6709 src/cairo-types-private.h | 2 +- 6710 src/cairo-win32-font.c | 2 +- 6711 src/cairo.c | 2 +- 6712 src/cairo.h | 24 ++++++++++++------------ 6713 src/cairoint.h | 2 +- 6714 src/check-doc-syntax.sh | 9 +++++---- 6715 18 files changed, 45 insertions(+), 44 deletions(-) 6716 6717commit b790c5a6bcdd890c16d21753407188ed200ce445 6718Author: Behdad Esfahbod <behdad@behdad.org> 6719AuthorDate: Mon Jan 28 21:53:44 2008 -0500 6720Commit: Behdad Esfahbod <behdad@behdad.org> 6721CommitDate: Mon Jan 28 21:53:44 2008 -0500 6722 6723 [doc] Replace 'NOTE' by 'Note' and add it to test 6724 6725 src/cairo-bentley-ottmann.c | 2 +- 6726 src/cairo-cache.c | 4 ++-- 6727 src/cairo-ft-font.c | 4 ++-- 6728 src/cairo-lzw.c | 4 ++-- 6729 src/cairo-output-stream-private.h | 2 +- 6730 src/cairo-paginated-private.h | 4 ++-- 6731 src/cairo-path.c | 2 +- 6732 src/cairo-pen.c | 4 ++-- 6733 src/cairo-scaled-font.c | 4 ++-- 6734 src/cairo-slope.c | 2 +- 6735 src/cairo-surface.c | 4 ++-- 6736 src/cairo-win32-surface.c | 4 ++-- 6737 src/cairo-xcb-surface.c | 4 ++-- 6738 src/cairo-xlib-surface.c | 4 ++-- 6739 src/cairo.c | 4 ++-- 6740 src/check-doc-syntax.sh | 7 +++++++ 6741 16 files changed, 33 insertions(+), 26 deletions(-) 6742 6743commit f0633f4449c39a8f78c582790fb5dc85899b5d82 6744Author: Behdad Esfahbod <behdad@behdad.org> 6745AuthorDate: Mon Jan 28 21:49:57 2008 -0500 6746Commit: Behdad Esfahbod <behdad@behdad.org> 6747CommitDate: Mon Jan 28 21:49:57 2008 -0500 6748 6749 [doc] Make sure all function names in docs are followed by () 6750 6751 src/cairo-array.c | 2 +- 6752 src/cairo-base85-stream.c | 3 +-- 6753 src/cairo-beos-surface.cpp | 2 +- 6754 src/cairo-cache-private.h | 4 ++-- 6755 src/cairo-debug.c | 4 ++-- 6756 src/cairo-deflate-stream.c | 3 +-- 6757 src/cairo-ft-font.c | 4 ++-- 6758 src/cairo-image-surface.c | 4 ++-- 6759 src/cairo-output-stream-private.h | 3 +-- 6760 src/cairo-output-stream.c | 3 +-- 6761 src/cairo-paginated-private.h | 2 +- 6762 src/cairo-path-fixed-private.h | 2 +- 6763 src/cairo-path.c | 6 +++--- 6764 src/cairo-pdf-surface.c | 4 ++-- 6765 src/cairo-ps-surface.c | 6 +++--- 6766 src/cairo-quartz-surface.c | 2 +- 6767 src/cairo-scaled-font-subsets-private.h | 2 +- 6768 src/cairo-scaled-font.c | 8 ++++---- 6769 src/cairo-surface.c | 6 +++--- 6770 src/cairo-svg-surface.c | 4 ++-- 6771 src/cairo-traps.c | 2 +- 6772 src/cairo-types-private.h | 4 ++-- 6773 src/cairo-unicode.c | 3 +-- 6774 src/cairo.c | 30 ++++++++++++++---------------- 6775 src/cairo.h | 22 +++++++++++----------- 6776 src/cairoint.h | 8 ++++---- 6777 26 files changed, 68 insertions(+), 75 deletions(-) 6778 6779commit 9ba8f6b1b0a4fbf2407e0dbd767f043c6920344c 6780Author: Behdad Esfahbod <behdad@behdad.org> 6781AuthorDate: Mon Jan 28 21:49:26 2008 -0500 6782Commit: Behdad Esfahbod <behdad@behdad.org> 6783CommitDate: Mon Jan 28 21:49:26 2008 -0500 6784 6785 [src/check-doc-syntax.sh] Check for various doc syntax consistency rules 6786 6787 src/Makefile.am | 2 +- 6788 src/check-doc-syntax.sh | 36 ++++++++++++++++++++++++++++++++++++ 6789 2 files changed, 37 insertions(+), 1 deletion(-) 6790 6791commit e15fcdd74734e922183afd4732ec4ba090f313c9 6792Author: Behdad Esfahbod <behdad@behdad.org> 6793AuthorDate: Mon Jan 28 21:48:23 2008 -0500 6794Commit: Behdad Esfahbod <behdad@behdad.org> 6795CommitDate: Mon Jan 28 21:48:23 2008 -0500 6796 6797 [doc] Improve syntax 6798 6799 doc/public/tmpl/cairo-font.sgml | 7 +++++-- 6800 doc/public/tmpl/cairo-matrix.sgml | 2 +- 6801 doc/public/tmpl/cairo-pattern.sgml | 12 +++++++++--- 6802 doc/public/tmpl/cairo-status.sgml | 5 +++-- 6803 doc/public/tmpl/cairo-surface.sgml | 8 +++++++- 6804 doc/public/tmpl/cairo-xcb-xrender.sgml | 3 ++- 6805 doc/public/tmpl/cairo-xcb.sgml | 3 ++- 6806 doc/public/tmpl/cairo-xlib-xrender.sgml | 3 ++- 6807 doc/public/tmpl/cairo-xlib.sgml | 3 ++- 6808 9 files changed, 33 insertions(+), 13 deletions(-) 6809 6810commit 587508528c4a318649ecb347b96fbc89a40175ea 6811Author: Behdad Esfahbod <behdad@behdad.org> 6812AuthorDate: Mon Jan 28 21:12:16 2008 -0500 6813Commit: Behdad Esfahbod <behdad@behdad.org> 6814CommitDate: Mon Jan 28 21:12:51 2008 -0500 6815 6816 [doc] Minor improvement 6817 6818 doc/public/tmpl/cairo-beos.sgml | 4 ++-- 6819 1 file changed, 2 insertions(+), 2 deletions(-) 6820 6821commit fd5dfedbb75593539eeda92013042ce5423a65c4 6822Author: Behdad Esfahbod <behdad@behdad.org> 6823AuthorDate: Mon Jan 28 21:02:44 2008 -0500 6824Commit: Behdad Esfahbod <behdad@behdad.org> 6825CommitDate: Mon Jan 28 21:02:44 2008 -0500 6826 6827 [doc/public/check-doc-coverage.sh] Test that doc coverage is 100% 6828 6829 Yay! 6830 6831 doc/public/Makefile.am | 2 ++ 6832 doc/public/check-doc-coverage.sh | 43 ++++++++++++++++++++++++++++++++++++++++ 6833 2 files changed, 45 insertions(+) 6834 6835commit c133ee5acc7c97fcd43d61f5aad160ca96c47941 6836Author: Behdad Esfahbod <behdad@behdad.org> 6837AuthorDate: Mon Jan 28 21:00:21 2008 -0500 6838Commit: Behdad Esfahbod <behdad@behdad.org> 6839CommitDate: Mon Jan 28 21:00:21 2008 -0500 6840 6841 [doc] Improve docs for new API 6842 6843 src/cairo-image-surface.c | 8 ++++---- 6844 src/cairo-xlib-surface.c | 20 +++++++++++++------- 6845 2 files changed, 17 insertions(+), 11 deletions(-) 6846 6847commit 0d898f2badf41d3b0ae5ee88943c44cf49690f5d 6848Author: Behdad Esfahbod <behdad@behdad.org> 6849AuthorDate: Mon Jan 28 20:49:44 2008 -0500 6850Commit: Behdad Esfahbod <behdad@behdad.org> 6851CommitDate: Mon Jan 28 20:49:44 2008 -0500 6852 6853 [doc] Make sure all type names in docs are prefixed by # 6854 6855 src/cairo-array.c | 2 +- 6856 src/cairo-bentley-ottmann.c | 4 ++-- 6857 src/cairo-cache-private.h | 4 ++-- 6858 src/cairo-cache.c | 2 +- 6859 src/cairo-fixed-type-private.h | 2 +- 6860 src/cairo-font-face.c | 12 ++++++------ 6861 src/cairo-font-options.c | 2 +- 6862 src/cairo-ft-font.c | 12 ++++++------ 6863 src/cairo-gstate.c | 8 ++++---- 6864 src/cairo-hash.c | 2 +- 6865 src/cairo-image-surface.c | 4 ++-- 6866 src/cairo-matrix.c | 10 +++++----- 6867 src/cairo-mutex-type-private.h | 6 +++--- 6868 src/cairo-pattern.c | 10 +++++----- 6869 src/cairo-pdf-surface.c | 2 +- 6870 src/cairo-png.c | 2 +- 6871 src/cairo-ps-surface.c | 12 ++++++------ 6872 src/cairo-quartz-surface.c | 2 +- 6873 src/cairo-rectangle.c | 8 ++++---- 6874 src/cairo-region.c | 2 +- 6875 src/cairo-scaled-font-subsets-private.h | 8 ++++---- 6876 src/cairo-scaled-font.c | 8 ++++---- 6877 src/cairo-traps.c | 2 +- 6878 src/cairo-types-private.h | 2 +- 6879 src/cairo-win32-surface.c | 2 +- 6880 src/cairo-xlib-surface.c | 4 ++-- 6881 src/cairo.c | 4 ++-- 6882 src/cairo.h | 16 ++++++++-------- 6883 src/cairoint.h | 4 ++-- 6884 29 files changed, 79 insertions(+), 79 deletions(-) 6885 6886commit 9ecde82d35ead4975ce110bb2012264e3ca9d2e1 6887Author: Behdad Esfahbod <behdad@behdad.org> 6888AuthorDate: Mon Jan 28 20:48:48 2008 -0500 6889Commit: Behdad Esfahbod <behdad@behdad.org> 6890CommitDate: Mon Jan 28 20:48:48 2008 -0500 6891 6892 [doc] Make sure all macro names in docs are prefixed by % 6893 6894 src/cairo-array.c | 6 ++--- 6895 src/cairo-bentley-ottmann.c | 8 +++---- 6896 src/cairo-cache.c | 6 ++--- 6897 src/cairo-deprecated.h | 2 +- 6898 src/cairo-directfb.h | 4 ++-- 6899 src/cairo-fixed-type-private.h | 2 +- 6900 src/cairo-freelist-private.h | 4 ++-- 6901 src/cairo-ft-font.c | 6 ++--- 6902 src/cairo-gstate.c | 14 +++++------ 6903 src/cairo-hash.c | 36 ++++++++++++++-------------- 6904 src/cairo-image-surface.c | 4 ++-- 6905 src/cairo-lzw.c | 14 +++++------ 6906 src/cairo-meta-surface.c | 6 ++--- 6907 src/cairo-mutex-private.h | 4 ++-- 6908 src/cairo-mutex-type-private.h | 24 +++++++++---------- 6909 src/cairo-os2.h | 6 ++--- 6910 src/cairo-output-stream-private.h | 6 ++--- 6911 src/cairo-paginated-private.h | 4 ++-- 6912 src/cairo-path-fill.c | 2 +- 6913 src/cairo-path.c | 12 +++++----- 6914 src/cairo-pattern.c | 2 +- 6915 src/cairo-pdf-surface.c | 2 +- 6916 src/cairo-png.c | 10 ++++---- 6917 src/cairo-ps-surface.c | 12 +++++----- 6918 src/cairo-scaled-font-subsets-private.h | 42 ++++++++++++++++----------------- 6919 src/cairo-scaled-font.c | 4 ++-- 6920 src/cairo-surface-fallback.c | 6 ++--- 6921 src/cairo-surface.c | 10 ++++---- 6922 src/cairo-svg-surface.c | 4 ++-- 6923 src/cairo-types-private.h | 4 ++-- 6924 src/cairo-win32-font.c | 4 ++-- 6925 src/cairo-win32-surface.c | 10 ++++---- 6926 src/cairo-xcb-surface.c | 2 +- 6927 src/cairo-xlib-surface.c | 4 ++-- 6928 src/cairo.c | 26 ++++++++++---------- 6929 src/cairo.h | 10 ++++---- 6930 src/cairoint.h | 6 ++--- 6931 src/test-fallback-surface.c | 4 ++-- 6932 38 files changed, 166 insertions(+), 166 deletions(-) 6933 6934commit 099c3c2602b59fbf9424044caa1fec7eb92f71df 6935Author: Behdad Esfahbod <behdad@behdad.org> 6936AuthorDate: Mon Jan 28 20:32:35 2008 -0500 6937Commit: Behdad Esfahbod <behdad@behdad.org> 6938CommitDate: Mon Jan 28 20:32:35 2008 -0500 6939 6940 [doc] Another enum nick expansion 6941 6942 src/cairo-scaled-font.c | 2 +- 6943 1 file changed, 1 insertion(+), 1 deletion(-) 6944 6945commit 72feed5b54e1aa725c3c5238b21946b6250503fe 6946Author: Behdad Esfahbod <behdad@behdad.org> 6947AuthorDate: Mon Jan 28 20:16:01 2008 -0500 6948Commit: Behdad Esfahbod <behdad@behdad.org> 6949CommitDate: Mon Jan 28 20:16:01 2008 -0500 6950 6951 [doc] Update templates for recently added APIs 6952 6953 doc/public/cairo-sections.txt | 2 ++ 6954 doc/public/tmpl/cairo-image.sgml | 10 ++++++++++ 6955 doc/public/tmpl/cairo-paths.sgml | 2 +- 6956 doc/public/tmpl/cairo-status.sgml | 1 + 6957 doc/public/tmpl/cairo-xlib-xrender.sgml | 9 +++++++++ 6958 5 files changed, 23 insertions(+), 1 deletion(-) 6959 6960commit b7d43d235c01480b5a5a34db6fea8a3d86161d91 6961Author: Behdad Esfahbod <behdad@behdad.org> 6962AuthorDate: Mon Jan 28 20:14:52 2008 -0500 6963Commit: Behdad Esfahbod <behdad@behdad.org> 6964CommitDate: Mon Jan 28 20:14:52 2008 -0500 6965 6966 [src/check-*] Shut make up 6967 6968 src/check-def.sh | 4 ++-- 6969 src/check-plt.sh | 2 +- 6970 2 files changed, 3 insertions(+), 3 deletions(-) 6971 6972commit dd7ce762946ec03fc115310c7e295b3327d7e805 6973Author: Behdad Esfahbod <behdad@behdad.org> 6974AuthorDate: Mon Jan 28 19:54:27 2008 -0500 6975Commit: Behdad Esfahbod <behdad@behdad.org> 6976CommitDate: Mon Jan 28 19:54:27 2008 -0500 6977 6978 [doc] Expand a couple nicks to full enum names 6979 6980 src/cairo.h | 4 ++-- 6981 1 file changed, 2 insertions(+), 2 deletions(-) 6982 6983commit c624ff46541b311c226ad7a026db3495b59dee41 6984Author: Behdad Esfahbod <behdad@behdad.org> 6985AuthorDate: Mon Jan 28 19:45:10 2008 -0500 6986Commit: Behdad Esfahbod <behdad@behdad.org> 6987CommitDate: Mon Jan 28 19:45:18 2008 -0500 6988 6989 [cairo_operator_t] Improve docs 6990 6991 src/cairo.h | 8 +++++--- 6992 1 file changed, 5 insertions(+), 3 deletions(-) 6993 6994commit f1271babcd4df1140019b258ca0af0d7da0d1328 6995Author: Behdad Esfahbod <behdad@behdad.org> 6996AuthorDate: Mon Jan 28 19:37:46 2008 -0500 6997Commit: Behdad Esfahbod <behdad@behdad.org> 6998CommitDate: Mon Jan 28 19:45:18 2008 -0500 6999 7000 [doc] Add Long_Description and some See_Also for all chapters 7001 7002 doc/public/tmpl/cairo-atsui.sgml | 6 ++++-- 7003 doc/public/tmpl/cairo-beos.sgml | 7 +++++-- 7004 doc/public/tmpl/cairo-font-options.sgml | 11 ++++++++--- 7005 doc/public/tmpl/cairo-font.sgml | 12 ++++++++++-- 7006 doc/public/tmpl/cairo-ft.sgml | 7 +++++-- 7007 doc/public/tmpl/cairo-glitz.sgml | 7 +++++-- 7008 doc/public/tmpl/cairo-image.sgml | 15 ++++++++------- 7009 doc/public/tmpl/cairo-matrix.sgml | 5 +++-- 7010 doc/public/tmpl/cairo-paths.sgml | 4 +++- 7011 doc/public/tmpl/cairo-pattern.sgml | 13 +++++++++---- 7012 doc/public/tmpl/cairo-pdf.sgml | 7 +++++-- 7013 doc/public/tmpl/cairo-png.sgml | 7 +++++-- 7014 doc/public/tmpl/cairo-ps.sgml | 7 +++++-- 7015 doc/public/tmpl/cairo-quartz.sgml | 7 +++++-- 7016 doc/public/tmpl/cairo-scaled-font.sgml | 13 +++++++++---- 7017 doc/public/tmpl/cairo-status.sgml | 19 ++++++++++++++++-- 7018 doc/public/tmpl/cairo-surface.sgml | 8 ++++++-- 7019 doc/public/tmpl/cairo-svg.sgml | 7 +++++-- 7020 doc/public/tmpl/cairo-text.sgml | 34 ++++++++++++++++++++++++++++++--- 7021 doc/public/tmpl/cairo-transforms.sgml | 10 ++++++++-- 7022 doc/public/tmpl/cairo-types.sgml | 4 ++-- 7023 doc/public/tmpl/cairo-win32-fonts.sgml | 7 +++++-- 7024 doc/public/tmpl/cairo-win32.sgml | 7 +++++-- 7025 doc/public/tmpl/cairo-xcb-xrender.sgml | 10 ++++++++-- 7026 doc/public/tmpl/cairo-xcb.sgml | 8 +++++++- 7027 doc/public/tmpl/cairo-xlib-xrender.sgml | 12 +++++++++--- 7028 doc/public/tmpl/cairo-xlib.sgml | 8 +++++++- 7029 doc/public/tmpl/cairo.sgml | 4 +++- 7030 28 files changed, 202 insertions(+), 64 deletions(-) 7031 7032commit 73b184fb9c41f26365c99dbb5f81aa5166632722 7033Author: Behdad Esfahbod <behdad@behdad.org> 7034AuthorDate: Mon Jan 28 19:19:27 2008 -0500 7035Commit: Behdad Esfahbod <behdad@behdad.org> 7036CommitDate: Mon Jan 28 19:45:18 2008 -0500 7037 7038 [src] Fix gtk-doc warnings 7039 7040 src/cairo-scaled-font.c | 2 +- 7041 src/cairo-surface.c | 2 +- 7042 src/cairo.c | 6 +++--- 7043 3 files changed, 5 insertions(+), 5 deletions(-) 7044 7045commit 8709b943c6f0025c65081b23ea24ce606150cf49 7046Author: Carl Worth <cworth@cworth.org> 7047AuthorDate: Mon Jan 28 16:15:28 2008 -0800 7048Commit: Carl Worth <cworth@cworth.org> 7049CommitDate: Mon Jan 28 16:15:28 2008 -0800 7050 7051 Fix some documentation typos 7052 7053 src/cairo.h | 6 +++--- 7054 1 file changed, 3 insertions(+), 3 deletions(-) 7055 7056commit e48d7ca802acba300aee99def0eb01727fe2f58a 7057Author: Carl Worth <cworth@cworth.org> 7058AuthorDate: Mon Jan 28 16:11:39 2008 -0800 7059Commit: Carl Worth <cworth@cworth.org> 7060CommitDate: Mon Jan 28 16:11:39 2008 -0800 7061 7062 Add example to documentation of cairo_pattern_set_filter 7063 7064 It's helpful to let the reade know about cairo_get_source here. 7065 7066 src/cairo-pattern.c | 11 +++++++++++ 7067 1 file changed, 11 insertions(+) 7068 7069commit cd26fa266b51ffd91aa9f2c60dd353c53729291e 7070Author: Carl Worth <cworth@cworth.org> 7071AuthorDate: Mon Jan 28 16:10:10 2008 -0800 7072Commit: Carl Worth <cworth@cworth.org> 7073CommitDate: Mon Jan 28 16:10:10 2008 -0800 7074 7075 Add documentation for cairo_filter_t 7076 7077 src/cairo.h | 18 ++++++++++++++++++ 7078 1 file changed, 18 insertions(+) 7079 7080commit 7c00269e00332974c3a2843272f84960a90b9fb7 7081Author: Carl Worth <cworth@cworth.org> 7082AuthorDate: Sun Jan 27 12:36:19 2008 -0800 7083Commit: Carl Worth <cworth@cworth.org> 7084CommitDate: Mon Jan 28 15:39:40 2008 -0800 7085 7086 Add pdf-specific reference images for meta-surface-pattern 7087 7088 This test has been "failing" ever since we had native 7089 replay of metasurfaces to pdf. But looking at the results, 7090 they are actually superior to the image-backend reference 7091 images. 7092 7093 test/meta-surface-pattern-pdf-ref.png | Bin 0 -> 4111 bytes 7094 test/meta-surface-pattern-pdf-rgb24-ref.png | Bin 0 -> 4009 bytes 7095 2 files changed, 0 insertions(+), 0 deletions(-) 7096 7097commit 9cd198d200e4470d3451581b9e672a87d5d91719 7098Author: Carl Worth <cworth@cworth.org> 7099AuthorDate: Mon Jan 28 15:37:22 2008 -0800 7100Commit: Carl Worth <cworth@cworth.org> 7101CommitDate: Mon Jan 28 15:39:40 2008 -0800 7102 7103 Test the no-Render-extension-available case in get-xrender-format 7104 7105 test/get-xrender-format.c | 13 ++++++++++++- 7106 1 file changed, 12 insertions(+), 1 deletion(-) 7107 7108commit d7fd3bd536465881446686305622d31fdc6fd48f 7109Author: Carl Worth <cworth@cworth.org> 7110AuthorDate: Sun Jan 27 12:14:51 2008 -0800 7111Commit: Carl Worth <cworth@cworth.org> 7112CommitDate: Mon Jan 28 15:39:40 2008 -0800 7113 7114 Add get-xrender-format test to test cairo_xlib_surface_get_xrender_format 7115 7116 test/.gitignore | 1 + 7117 test/Makefile.am | 5 +++ 7118 test/get-xrender-format.c | 104 ++++++++++++++++++++++++++++++++++++++++++++++ 7119 3 files changed, 110 insertions(+) 7120 7121commit cc94dce25085fef936b7cb36cf9fc41569668eba 7122Author: Carl Worth <cworth@cworth.org> 7123AuthorDate: Mon Jan 28 15:26:15 2008 -0800 7124Commit: Carl Worth <cworth@cworth.org> 7125CommitDate: Mon Jan 28 15:39:39 2008 -0800 7126 7127 Return NULL from cairo_xlib_surface_get_xrender_format without an error 7128 7129 The NULL return value will only happen if the X Render extension 7130 is not available. We've already got that NULL return value 7131 documented, so it's not an error if the user asks for it. In 7132 particular, it's definitely not a surface-type mismatch. 7133 7134 src/cairo-xlib-surface.c | 6 +----- 7135 1 file changed, 1 insertion(+), 5 deletions(-) 7136 7137commit 3c018a6e5abe099fa916f45ecf0c8e9dd5771fae 7138Author: Carl Worth <cworth@cworth.org> 7139AuthorDate: Sun Jan 27 12:13:13 2008 -0800 7140Commit: Carl Worth <cworth@cworth.org> 7141CommitDate: Mon Jan 28 15:39:39 2008 -0800 7142 7143 Add new API cairo_xlib_surface_get_render_format 7144 7145 src/cairo-xlib-surface.c | 27 +++++++++++++++++++++++++++ 7146 src/cairo-xlib-xrender.h | 3 +++ 7147 2 files changed, 30 insertions(+) 7148 7149commit 88811540722d891b987efa6fa8edcbab7e10feeb 7150Author: Carl Worth <cworth@cworth.org> 7151AuthorDate: Sun Jan 27 11:12:14 2008 -0800 7152Commit: Carl Worth <cworth@cworth.org> 7153CommitDate: Mon Jan 28 15:39:39 2008 -0800 7154 7155 Add missing cairo_private (for _pixman_format_to_masks) 7156 7157 src/cairoint.h | 2 +- 7158 1 file changed, 1 insertion(+), 1 deletion(-) 7159 7160commit 3841cc0932ac77540c306c1c70a6171d7d00cf3e 7161Author: Carl Worth <cworth@cworth.org> 7162AuthorDate: Mon Jan 28 15:12:38 2008 -0800 7163Commit: Carl Worth <cworth@cworth.org> 7164CommitDate: Mon Jan 28 15:39:39 2008 -0800 7165 7166 Clarify the documentation of stride within cairo_image_surface_create_for_data 7167 7168 src/cairo-image-surface.c | 23 +++++++++++++++-------- 7169 1 file changed, 15 insertions(+), 8 deletions(-) 7170 7171commit 13a5624277adf7e87f66d674ce8073013b53bece 7172Author: Carl Worth <cworth@cworth.org> 7173AuthorDate: Mon Jan 28 14:29:36 2008 -0800 7174Commit: Carl Worth <cworth@cworth.org> 7175CommitDate: Mon Jan 28 15:39:39 2008 -0800 7176 7177 Rename cairo_image_surface_stride_for_width to cairo_format_stride_for_width 7178 7179 Thanks for Behdad for the suggested name improvement. Also, make 7180 it more clear that the stride passed to cairo_image_surface_create_for_data 7181 should come from calling cairo_format_stride_for_width with the 7182 same width. 7183 7184 src/cairo-image-surface.c | 21 +++++++++++---------- 7185 src/cairo.h | 4 ++-- 7186 test/a8-mask.c | 11 ++++++----- 7187 3 files changed, 19 insertions(+), 17 deletions(-) 7188 7189commit dc67de3d8b6154b74a243cd7b63e45f343520256 7190Author: Carl Worth <cworth@cworth.org> 7191AuthorDate: Sat Jan 26 23:12:14 2008 -0800 7192Commit: Carl Worth <cworth@cworth.org> 7193CommitDate: Mon Jan 28 15:39:36 2008 -0800 7194 7195 Add cairo_image_surface_stride_for_width 7196 7197 Document this function as a required call to get the correct 7198 stride value before calling cairo_image_surface_create_for_data. 7199 This means that previously-failing calls with non-multiple-of-4 7200 stride values are now documented as errors. Also, we now have 7201 the possibility of moving to more stringent alignment constraints, 7202 (one can imagine doing 64-bit or 128-bit boundaries for example). 7203 7204 src/cairo-image-surface.c | 60 +++++++++++++++++---- 7205 src/cairo-surface.c | 3 ++ 7206 src/cairo.c | 4 +- 7207 src/cairo.h | 8 ++- 7208 test/Makefile.am | 4 -- 7209 test/a8-mask.c | 132 ++++++++++++++++++++++++++++++++++++++++------ 7210 6 files changed, 179 insertions(+), 32 deletions(-) 7211 7212commit b151cb0709364bed03e4918b79f26ef3243948ca 7213Author: Carl Worth <cworth@cworth.org> 7214AuthorDate: Sat Jan 26 16:42:26 2008 -0800 7215Commit: Carl Worth <cworth@cworth.org> 7216CommitDate: Mon Jan 28 15:39:36 2008 -0800 7217 7218 Rename cairo_format_width to cairo_format_bits_per_pixel and correct its logic 7219 7220 src/cairo-image-surface.c | 6 +++--- 7221 src/cairo-scaled-font.c | 3 ++- 7222 src/cairoint.h | 4 ++-- 7223 3 files changed, 7 insertions(+), 6 deletions(-) 7224 7225commit 538ace5b51c968a81ea1d4c8d7538f0a227661c6 7226Author: Nis Martensen <nis.martensen@web.de> 7227AuthorDate: Sat Jan 26 19:11:26 2008 +0100 7228Commit: Behdad Esfahbod <behdad@behdad.org> 7229CommitDate: Mon Jan 28 08:38:39 2008 -0500 7230 7231 re-indent xml after removal of structuring level 7232 7233 doc/public/cairo-docs.xml | 76 +++++++++++++++++++++++------------------------ 7234 1 file changed, 38 insertions(+), 38 deletions(-) 7235 7236commit 642e1af892353d55edd6ebe71720fb541c9deb22 7237Author: Nis Martensen <nis.martensen@web.de> 7238AuthorDate: Sat Jan 26 19:05:16 2008 +0100 7239Commit: Behdad Esfahbod <behdad@behdad.org> 7240CommitDate: Mon Jan 28 08:38:36 2008 -0500 7241 7242 remove empty tutorial stub and one level of structuring 7243 7244 doc/public/cairo-docs.xml | 6 ------ 7245 1 file changed, 6 deletions(-) 7246 7247commit be93e61d70f4e32069448b79cca7eacab6035c6c 7248Author: Nis Martensen <nis.martensen@web.de> 7249AuthorDate: Sat Jan 26 18:44:32 2008 +0100 7250Commit: Behdad Esfahbod <behdad@behdad.org> 7251CommitDate: Mon Jan 28 08:38:32 2008 -0500 7252 7253 Add index of new symbols in 1.6 7254 7255 doc/public/cairo-docs.xml | 3 +++ 7256 1 file changed, 3 insertions(+) 7257 7258commit 0874834ec4606c5ff960588077d5310927d560ba 7259Author: Nis Martensen <nis.martensen@web.de> 7260AuthorDate: Sat Jan 26 16:59:21 2008 +0100 7261Commit: Behdad Esfahbod <behdad@behdad.org> 7262CommitDate: Mon Jan 28 08:38:27 2008 -0500 7263 7264 Describe cairo_operator_t, add link to operators/ wiki page 7265 7266 src/cairo.h | 28 ++++++++++++++++++++++++++++ 7267 1 file changed, 28 insertions(+) 7268 7269commit b18bc660c6d5d5018b4cfaf0eaf0278669cac1ac 7270Author: Behdad Esfahbod <behdad@behdad.org> 7271AuthorDate: Mon Jan 28 02:33:58 2008 -0500 7272Commit: Behdad Esfahbod <behdad@behdad.org> 7273CommitDate: Mon Jan 28 02:33:58 2008 -0500 7274 7275 [test/font-matrix-translation] Fix function signature 7276 7277 test/font-matrix-translation.c | 13 ++++++++++--- 7278 1 file changed, 10 insertions(+), 3 deletions(-) 7279 7280commit 936edecb35b94213997fdb172f0256c658f416aa 7281Author: Vladimir Vukicevic <vladimir@pobox.com> 7282AuthorDate: Sun Jan 27 16:52:39 2008 -0800 7283Commit: Vladimir Vukicevic <vladimir@sleet.vlad1.com> 7284CommitDate: Sun Jan 27 16:52:39 2008 -0800 7285 7286 [quartz] only use DrawTiledImage if transformed image is integer aligned 7287 7288 This Quartz API seems to only tile at integer coordinates; if the source image is 7289 scaled to anything less than integer-aligned, seams appear between tiles. Detect 7290 this and fall back to slower but more general CGPattern path. 7291 7292 src/cairo-quartz-surface.c | 144 ++++++++++++++++++++++++--------------------- 7293 1 file changed, 77 insertions(+), 67 deletions(-) 7294 7295commit 182b02240192c03b1fae5367573962d527f8aad4 7296Author: Vladimir Vukicevic <vladimir@pobox.com> 7297AuthorDate: Sat Jan 26 10:57:20 2008 -0800 7298Commit: Vladimir Vukicevic <vladimir@sleet.vlad1.com> 7299CommitDate: Sun Jan 27 15:26:00 2008 -0800 7300 7301 [win32] Fix initial clip region test 7302 7303 I misread the docs; GetClipBox's return value doesn't necessarily correspond to 7304 GetClipRgn's region type. 7305 7306 src/cairo-win32-surface.c | 3 +-- 7307 1 file changed, 1 insertion(+), 2 deletions(-) 7308 7309commit 0e737632905e61f4d76b6b2c4e5908d75a5cddda 7310Author: Behdad Esfahbod <behdad@behdad.org> 7311AuthorDate: Sun Jan 27 02:19:47 2008 -0500 7312Commit: Behdad Esfahbod <behdad@behdad.org> 7313CommitDate: Sun Jan 27 02:19:47 2008 -0500 7314 7315 [src] Fix make check 7316 7317 src/cairo-quartz-surface.c | 4 ++-- 7318 1 file changed, 2 insertions(+), 2 deletions(-) 7319 7320commit b3eea75d1f7b56c2046b5387a5eb186d8f154184 7321Author: Behdad Esfahbod <behdad@behdad.org> 7322AuthorDate: Sat Jan 26 13:56:08 2008 -0500 7323Commit: Behdad Esfahbod <behdad@behdad.org> 7324CommitDate: Sat Jan 26 13:56:08 2008 -0500 7325 7326 Change cairo_get_current_point() to return cairo_status_t instead of void 7327 7328 So we can return CAIRO_STATUS_NO_CURRENT_POINT. Previously it wasn't easy 7329 to fetch that information. 7330 7331 src/cairo.c | 22 ++++++++++++++++++---- 7332 src/cairo.h | 2 +- 7333 2 files changed, 19 insertions(+), 5 deletions(-) 7334 7335commit 79383841520af3a7de3018befca37be6a037f9ba 7336Author: Behdad Esfahbod <behdad@behdad.org> 7337AuthorDate: Fri Jan 25 19:48:36 2008 -0500 7338Commit: Behdad Esfahbod <behdad@behdad.org> 7339CommitDate: Fri Jan 25 19:48:36 2008 -0500 7340 7341 [doc] Update list of private header files 7342 7343 doc/public/Headers.mk | 10 ++++++++++ 7344 1 file changed, 10 insertions(+) 7345 7346commit 58f6aed93d137b77a2550bcace16f8d5573d45ef 7347Author: Behdad Esfahbod <behdad@behdad.org> 7348AuthorDate: Fri Jan 25 19:47:07 2008 -0500 7349Commit: Behdad Esfahbod <behdad@behdad.org> 7350CommitDate: Fri Jan 25 19:47:07 2008 -0500 7351 7352 [doc] Update for recent API changes 7353 7354 doc/public/tmpl/cairo-paths.sgml | 2 ++ 7355 doc/public/tmpl/cairo-status.sgml | 1 + 7356 doc/public/tmpl/cairo-surface.sgml | 2 -- 7357 3 files changed, 3 insertions(+), 2 deletions(-) 7358 7359commit 45e7ba356d308f67f674a20484a55d41fe922d13 7360Author: Behdad Esfahbod <behdad@behdad.org> 7361AuthorDate: Fri Jan 25 19:46:43 2008 -0500 7362Commit: Behdad Esfahbod <behdad@behdad.org> 7363CommitDate: Fri Jan 25 19:46:43 2008 -0500 7364 7365 [cairo-pdf-operators] Reformat typedef to not confuse gtk-doc 7366 7367 src/cairo-pdf-operators-private.h | 7 +++---- 7368 1 file changed, 3 insertions(+), 4 deletions(-) 7369 7370commit 756420a780e870bed6f174ca7f3f14421d1ff7d2 7371Author: Behdad Esfahbod <behdad@behdad.org> 7372AuthorDate: Fri Jan 25 19:38:27 2008 -0500 7373Commit: Behdad Esfahbod <behdad@behdad.org> 7374CommitDate: Fri Jan 25 19:38:27 2008 -0500 7375 7376 [cairo_surface_show/copy_page()] Make them return void, like cairo_show/copy_page() do 7377 7378 src/cairo-gstate.c | 6 ++++-- 7379 src/cairo-paginated-surface.c | 12 ++++++++---- 7380 src/cairo-surface.c | 33 ++++++++++++++++++--------------- 7381 src/cairo-svg-surface.c | 5 +++-- 7382 src/cairo.h | 4 ++-- 7383 5 files changed, 35 insertions(+), 25 deletions(-) 7384 7385commit c4ec5539ca7380dccf1a2f797e536c7273b5c2b5 7386Author: Nis Martensen <nis.martensen@web.de> 7387AuthorDate: Fri Jan 25 19:13:13 2008 -0500 7388Commit: Behdad Esfahbod <behdad@behdad.org> 7389CommitDate: Fri Jan 25 19:13:13 2008 -0500 7390 7391 [cairo-surface] Fix doc typo 7392 7393 src/cairo-surface.c | 2 +- 7394 1 file changed, 1 insertion(+), 1 deletion(-) 7395 7396commit ab188f2e90b49fc4e07f04dc512f9fb9864efa0b 7397Author: Behdad Esfahbod <behdad@behdad.org> 7398AuthorDate: Fri Jan 25 17:44:26 2008 -0500 7399Commit: Behdad Esfahbod <behdad@behdad.org> 7400CommitDate: Fri Jan 25 18:28:57 2008 -0500 7401 7402 [cairo-ft] Disable embedded bitmaps if hinting style NONE is requested 7403 7404 src/cairo-ft-font.c | 11 ++++++++--- 7405 1 file changed, 8 insertions(+), 3 deletions(-) 7406 7407commit 2df9944a8ac48cb43845e56c5483bf77dafda584 7408Author: Behdad Esfahbod <behdad@behdad.org> 7409AuthorDate: Fri Jan 25 17:12:34 2008 -0500 7410Commit: Behdad Esfahbod <behdad@behdad.org> 7411CommitDate: Fri Jan 25 18:28:57 2008 -0500 7412 7413 [.gitignore] Add check-has-hidden-symbols.i 7414 7415 src/.gitignore | 1 + 7416 1 file changed, 1 insertion(+) 7417 7418commit 3d2144b6af07ca44b6fbf1c96080b7e2b7c0285c 7419Author: Behdad Esfahbod <behdad@behdad.org> 7420AuthorDate: Fri Jan 25 17:06:11 2008 -0500 7421Commit: Behdad Esfahbod <behdad@behdad.org> 7422CommitDate: Fri Jan 25 18:28:57 2008 -0500 7423 7424 [cairo-ft] Fix font metrics computation for bitmap fonts and no metrics-hinting 7425 7426 Preivously we were returning NAN font metrics. Fixed now. Makes bitmap-font 7427 test pass again. 7428 7429 src/cairo-ft-font.c | 7 ++++++- 7430 1 file changed, 6 insertions(+), 1 deletion(-) 7431 7432commit c621d8d7191bfa8c1bca533bf9d53d514d01f529 7433Author: Vladimir Vukicevic <vladimir@pobox.com> 7434AuthorDate: Fri Jan 25 15:01:44 2008 -0800 7435Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 7436CommitDate: Fri Jan 25 15:01:57 2008 -0800 7437 7438 [ps] Pad image mask lines out to full lines 7439 7440 The PostScript backend was generating image masks with packed mask 7441 bits, when PS seems to expect each line of the mask to be padded out 7442 to 8 bytes. 7443 7444 Ref: https://bugzilla.mozilla.org/show_bug.cgi?id=407360 7445 7446 src/cairo-ps-surface.c | 8 +++++++- 7447 1 file changed, 7 insertions(+), 1 deletion(-) 7448 7449commit bae496df11247a1e4aff8b0df3356701f8a11792 7450Author: Behdad Esfahbod <behdad@behdad.org> 7451AuthorDate: Fri Jan 25 08:03:32 2008 -0500 7452Commit: Behdad Esfahbod <behdad@behdad.org> 7453CommitDate: Fri Jan 25 08:03:32 2008 -0500 7454 7455 [test/bitmap-font] Test under all combinations of hinting, test font metrics too 7456 7457 This is now failing as we compute NAN font metrics for bitmap-only fonts under 7458 disabled metrics hinting. A very infamous bug excercised with PangoCairo's PDF 7459 output. 7460 7461 test/bitmap-font.c | 102 ++++++++++++++++++++++++++++++++++++++++++++++++----- 7462 1 file changed, 94 insertions(+), 8 deletions(-) 7463 7464commit 20c8531243c2f2ee220bd1f234cdba6fc3d6d4c7 7465Author: Behdad Esfahbod <behdad@behdad.org> 7466AuthorDate: Fri Jan 25 07:14:07 2008 -0500 7467Commit: Behdad Esfahbod <behdad@behdad.org> 7468CommitDate: Fri Jan 25 07:14:07 2008 -0500 7469 7470 [test/text-zero-len] Test text and font extents for font size 0 7471 7472 test/text-zero-len.c | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++-- 7473 1 file changed, 50 insertions(+), 2 deletions(-) 7474 7475commit 83bd590760629b61898ed403e273046545f26767 7476Author: Behdad Esfahbod <behdad@behdad.org> 7477AuthorDate: Fri Jan 25 07:02:25 2008 -0500 7478Commit: Behdad Esfahbod <behdad@behdad.org> 7479CommitDate: Fri Jan 25 07:02:25 2008 -0500 7480 7481 [test] Test that cairo_text_extents() and cairo_scaled_font_text_extents() match 7482 in results. 7483 7484 test/font-matrix-translation.c | 31 ++++++++++++++++++++++++++++++- 7485 1 file changed, 30 insertions(+), 1 deletion(-) 7486 7487commit 4c432b09557f52fa35be981743272b33baca6232 7488Author: Behdad Esfahbod <behdad@behdad.org> 7489AuthorDate: Fri Jan 25 04:16:44 2008 -0500 7490Commit: Behdad Esfahbod <behdad@behdad.org> 7491CommitDate: Fri Jan 25 04:16:44 2008 -0500 7492 7493 [cairo-scaled-font] Fix bug in glyphs bounding box computation 7494 7495 In 02970ac8cf27bc9d42cf27848a97019d9dd13b6d Vlad introduced the following 7496 innocent-looking change: 7497 7498 - short min_x = INT16_MAX, max_x = INT16_MIN; 7499 - short min_y = INT16_MAX, max_y = INT16_MIN; 7500 + cairo_point_int_t min = { CAIRO_RECT_INT_MIN, CAIRO_RECT_INT_MIN }; 7501 + cairo_point_int_t max = { CAIRO_RECT_INT_MAX, CAIRO_RECT_INT_MAX }; 7502 7503 Well, read it carefully... yeah. That caused each show glyph operation 7504 upload a mask the size of the surface. With evince/poppler and certain 7505 PDF files that each glyph is rendered in its own cairo_show_glyphs() 7506 call, that meant a 20x slowdown in rendering a page of PDF. 7507 7508 If still wondering what's wrong with that change, here is the answer: 7509 7510 - cairo_point_int_t min = { CAIRO_RECT_INT_MIN, CAIRO_RECT_INT_MIN }; 7511 - cairo_point_int_t max = { CAIRO_RECT_INT_MAX, CAIRO_RECT_INT_MAX }; 7512 + cairo_point_int_t min = { CAIRO_RECT_INT_MAX, CAIRO_RECT_INT_MAX }; 7513 + cairo_point_int_t max = { CAIRO_RECT_INT_MIN, CAIRO_RECT_INT_MIN }; 7514 7515 Yay for git-bisect. 7516 7517 src/cairo-scaled-font.c | 4 ++-- 7518 1 file changed, 2 insertions(+), 2 deletions(-) 7519 7520commit 8983208f456c6f570698df46174faa0208d6de5f 7521Author: Behdad Esfahbod <behdad@behdad.org> 7522AuthorDate: Fri Jan 25 01:00:21 2008 -0500 7523Commit: Behdad Esfahbod <behdad@behdad.org> 7524CommitDate: Fri Jan 25 01:00:21 2008 -0500 7525 7526 [configure.in] Require pixman >= 0.9.6 7527 7528 I was experiencing very weird rendering problems and crashes in evince with 7529 pixman 0.9.4. Upgrading to pixman 0.9.6 fixed the all. Lets just require it. 7530 7531 configure.in | 2 +- 7532 1 file changed, 1 insertion(+), 1 deletion(-) 7533 7534commit 5dfe47a3f14ee8597395dc53ff57fd429e9804cd 7535Author: Behdad Esfahbod <behdad@behdad.org> 7536AuthorDate: Fri Jan 25 00:35:11 2008 -0500 7537Commit: Behdad Esfahbod <behdad@behdad.org> 7538CommitDate: Fri Jan 25 00:35:11 2008 -0500 7539 7540 [cairo-scaled-font] Unbreak it after my recent commit 7541 7542 Sigh. 7543 7544 src/cairo-scaled-font.c | 41 +++++++++++++++++++---------------------- 7545 1 file changed, 19 insertions(+), 22 deletions(-) 7546 7547commit efd3a965244305a069ec231b7ec28cff8d6c67c8 7548Author: Behdad Esfahbod <behdad@behdad.org> 7549AuthorDate: Thu Jan 24 23:35:06 2008 -0500 7550Commit: Behdad Esfahbod <behdad@behdad.org> 7551CommitDate: Thu Jan 24 23:35:06 2008 -0500 7552 7553 [cairo-scaled-font] Don't err on font size 0, really 7554 7555 First, seems like we were rejecting degenerate font matrix right away 7556 at the constructor. Don't do that. 7557 7558 Next, PS/PDF were inverting the font scale matrix, assuming that it's 7559 invertible. We now keep the inverse too, so they can use it. For the 7560 case of a size 0 font, both the scale matrix and its invert are set to 7561 0,0,0,0. That's safe, even if slightly inconsistent. 7562 7563 src/cairo-pdf-surface.c | 5 +---- 7564 src/cairo-ps-surface.c | 5 +---- 7565 src/cairo-scaled-font-private.h | 1 + 7566 src/cairo-scaled-font.c | 19 ++++++++----------- 7567 4 files changed, 11 insertions(+), 19 deletions(-) 7568 7569commit 45f269e33020d8d7cf247926712b9c64c1fb8959 7570Author: Behdad Esfahbod <behdad@behdad.org> 7571AuthorDate: Thu Jan 24 22:39:28 2008 -0500 7572Commit: Behdad Esfahbod <behdad@behdad.org> 7573CommitDate: Thu Jan 24 22:39:28 2008 -0500 7574 7575 [cairo-scaled-font] Oops, return err if not handling it 7576 7577 src/cairo-scaled-font.c | 4 ++++ 7578 1 file changed, 4 insertions(+) 7579 7580commit 6d0dc3e0760e6bc6b0eceab48674410b4e865287 7581Author: Behdad Esfahbod <behdad@behdad.org> 7582AuthorDate: Thu Jan 24 22:24:23 2008 -0500 7583Commit: Behdad Esfahbod <behdad@behdad.org> 7584CommitDate: Thu Jan 24 22:27:27 2008 -0500 7585 7586 [cairo-scaled-font] Don't err on font size 0 7587 7588 src/cairo-scaled-font.c | 18 ++++++++++++++++-- 7589 1 file changed, 16 insertions(+), 2 deletions(-) 7590 7591commit ea9afecc9aaa87c2df14dc9126c75ac0e3e5b13f 7592Author: Vladimir Vukicevic <vladimir@pobox.com> 7593AuthorDate: Thu Jan 24 11:48:02 2008 -0800 7594Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 7595CommitDate: Thu Jan 24 11:48:02 2008 -0800 7596 7597 [quartz] Do dynamic symbol lookups for 10.4/10.5 optimization symbols 7598 7599 The gcc-__attribute-__ based weak linking was causing all sorts of problems; 7600 do dlsym lookups at runtime instead. 7601 7602 src/cairo-quartz-surface.c | 39 ++++++++++++++++++++++++++++----------- 7603 1 file changed, 28 insertions(+), 11 deletions(-) 7604 7605commit 287de2ce5883daa4238c534e0d4890cb640d7fb7 7606Author: Vladimir Vukicevic <vladimir@pobox.com> 7607AuthorDate: Wed Jan 23 21:30:42 2008 -0800 7608Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 7609CommitDate: Thu Jan 24 11:32:27 2008 -0800 7610 7611 [quartz] Clean up unused APIs a bit 7612 7613 The data parameter from get_image was never really used; get rid of it and clean up 7614 callers. Also get rid of a chunk of dead code in release_dest_image. 7615 7616 src/cairo-quartz-surface.c | 76 ++++++++-------------------------------------- 7617 1 file changed, 13 insertions(+), 63 deletions(-) 7618 7619commit b96c6c26c2d6b0b5f79ee569ece602338c4146b2 7620Author: Vladimir Vukicevic <vladimir@pobox.com> 7621AuthorDate: Thu Jan 24 11:04:26 2008 -0800 7622Commit: Vladimir Vukicevic <vladimir@pobox.com> 7623CommitDate: Thu Jan 24 11:24:02 2008 -0800 7624 7625 [win32] Print non-black/white text correctly in show_glyphs 7626 7627 src/cairo-win32-printing-surface.c | 6 +++--- 7628 1 file changed, 3 insertions(+), 3 deletions(-) 7629 7630commit 8e7c0db8018b258fc367da1e5502e9e13bad098c 7631Author: Vladimir Vukicevic <vladimir@pobox.com> 7632AuthorDate: Thu Jan 24 11:01:55 2008 -0800 7633Commit: Vladimir Vukicevic <vladimir@pobox.com> 7634CommitDate: Thu Jan 24 11:24:02 2008 -0800 7635 7636 [win32] Better tracking of initial clip 7637 7638 There were a few corner cases that the win32 surface was failing 7639 at when there was an initial clip set; the win32-printing surface 7640 had more serious problems when painting meta surface patterns. 7641 This cleans up the initial DC clip tracking for both surfaces. 7642 7643 src/cairo-win32-printing-surface.c | 69 +++++------- 7644 src/cairo-win32-private.h | 23 +++- 7645 src/cairo-win32-surface.c | 221 +++++++++++++++++++++++++------------ 7646 3 files changed, 197 insertions(+), 116 deletions(-) 7647 7648commit c05e3b08b4cfa820a18e33b5012a6138b931788f 7649Author: Carl Worth <cworth@cworth.org> 7650AuthorDate: Thu Jan 24 09:51:58 2008 -0800 7651Commit: Carl Worth <cworth@cworth.org> 7652CommitDate: Thu Jan 24 10:12:01 2008 -0800 7653 7654 Remove ROADMAP and TODO, mentioning their URLs in README 7655 7656 We're maintaining these as part of cairo's website now, 7657 rather than as part of the source code. 7658 7659 README | 18 ++++---- 7660 ROADMAP | 149 ---------------------------------------------------------------- 7661 TODO | 111 ----------------------------------------------- 7662 3 files changed, 8 insertions(+), 270 deletions(-) 7663 7664commit 21823842775988c0b58e3868dce053544ed246e2 7665Author: Behdad Esfahbod <behdad@behdad.org> 7666AuthorDate: Wed Jan 23 15:06:52 2008 -0500 7667Commit: Behdad Esfahbod <behdad@behdad.org> 7668CommitDate: Wed Jan 23 15:07:26 2008 -0500 7669 7670 [test] Minor fix for check-ref-dups rule 7671 7672 test/Makefile.am | 3 ++- 7673 1 file changed, 2 insertions(+), 1 deletion(-) 7674 7675commit e7c0a69dcb627abb677f84473a9e3857b2d89a69 7676Author: Behdad Esfahbod <behdad@behdad.org> 7677AuthorDate: Wed Jan 23 14:57:42 2008 -0500 7678Commit: Behdad Esfahbod <behdad@behdad.org> 7679CommitDate: Wed Jan 23 14:57:59 2008 -0500 7680 7681 [test] Also check for reference images listed in Makefile.am but missing 7682 in git, and if this is not a git checkout, in source directory. 7683 7684 test/Makefile.am | 36 +++++++++++++++++++++++++++--------- 7685 1 file changed, 27 insertions(+), 9 deletions(-) 7686 7687commit 188765c8e857c88a66656a454a3dbd27c32170f7 7688Author: Bertram Felgenhauer <int-e@gmx.de> 7689AuthorDate: Wed Jan 23 19:22:18 2008 +0100 7690Commit: Bertram Felgenhauer <int-e@gmx.de> 7691CommitDate: Wed Jan 23 19:22:18 2008 +0100 7692 7693 improve comments for the pixman transformation anchoring math. 7694 7695 src/cairo-matrix.c | 14 +++++++++++++- 7696 1 file changed, 13 insertions(+), 1 deletion(-) 7697 7698commit b6c723644302c43b7aae098338092e578fe2f007 7699Author: Bertram Felgenhauer <int-e@gmx.de> 7700AuthorDate: Wed Jan 23 18:09:20 2008 +0100 7701Commit: Bertram Felgenhauer <int-e@gmx.de> 7702CommitDate: Wed Jan 23 18:09:20 2008 +0100 7703 7704 update reference images for some non-aa testcases 7705 7706 test/rectangle-rounding-error-ref.png | Bin 298 -> 231 bytes 7707 test/rotate-image-surface-paint-ref.png | Bin 232 -> 209 bytes 7708 test/unantialiased-shapes-ref.png | Bin 4449 -> 3968 bytes 7709 3 files changed, 0 insertions(+), 0 deletions(-) 7710 7711commit 5a0b15d2c9b5e9ef3aed1f01e8ea28a3f2c36216 7712Author: Bertram Felgenhauer <int-e@gmx.de> 7713AuthorDate: Wed Jan 23 18:02:02 2008 +0100 7714Commit: Bertram Felgenhauer <int-e@gmx.de> 7715CommitDate: Wed Jan 23 18:02:02 2008 +0100 7716 7717 anchor pattern transformations at the pattern origin 7718 This keeps the rounding errors due to the conversion to 16.16 fixed point 7719 numbers small and improves cairo's translation invariance. 7720 7721 src/cairo-matrix.c | 23 +++++++++++++++++++++++ 7722 1 file changed, 23 insertions(+) 7723 7724commit 431e846c03b39495ac57834a8b65b7499472ef1b 7725Author: Vladimir Vukicevic <vladimir@pobox.com> 7726AuthorDate: Tue Jan 22 16:30:37 2008 -0800 7727Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 7728CommitDate: Tue Jan 22 16:30:37 2008 -0800 7729 7730 cairo_point_int32_t is really int32_t, not int16_t 7731 7732 Oops. 7733 7734 src/cairo-types-private.h | 2 +- 7735 1 file changed, 1 insertion(+), 1 deletion(-) 7736 7737commit 02970ac8cf27bc9d42cf27848a97019d9dd13b6d 7738Author: Vladimir Vukicevic <vladimir@pobox.com> 7739AuthorDate: Tue Jan 22 15:32:11 2008 -0800 7740Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 7741CommitDate: Tue Jan 22 15:32:11 2008 -0800 7742 7743 Fix usage of cairo_rectangle_int16_t leading to memory corruption 7744 7745 cairo_rectangle_int16_t was being used in a number of places instead 7746 of cairo_rectangle_int_t, which led to memory corruption when cairo was 7747 using a fixed point format with a bigger space than 16.16 (such as 24.8). 7748 7749 src/cairo-analysis-surface.c | 3 +++ 7750 src/cairo-pdf-surface.c | 6 +++--- 7751 src/cairo-scaled-font.c | 24 ++++++++++++------------ 7752 src/cairo-surface-fallback.c | 9 ++------- 7753 src/cairo-win32-private.h | 2 +- 7754 src/cairo-xcb-surface.c | 4 ++-- 7755 src/cairo-xlib-surface.c | 4 ++-- 7756 src/cairoint.h | 2 +- 7757 8 files changed, 26 insertions(+), 28 deletions(-) 7758 7759commit 1109ccfb4e5b078581a3b4a7e2d152681fa863ec 7760Author: Behdad Esfahbod <behdad@behdad.org> 7761AuthorDate: Tue Jan 22 17:44:47 2008 -0500 7762Commit: Behdad Esfahbod <behdad@behdad.org> 7763CommitDate: Tue Jan 22 17:44:47 2008 -0500 7764 7765 [ROADMAP] Add item: Make cairo-ft respect FC_FT_FACE pattern element 7766 7767 ROADMAP | 2 ++ 7768 1 file changed, 2 insertions(+) 7769 7770commit 5024650d4d8d4fa890a531d9e54fed7beef8e2c1 7771Author: Behdad Esfahbod <behdad@behdad.org> 7772AuthorDate: Tue Jan 22 12:45:50 2008 -0500 7773Commit: Behdad Esfahbod <behdad@behdad.org> 7774CommitDate: Tue Jan 22 12:46:03 2008 -0500 7775 7776 [test] Only summarize check results for the tests tested! 7777 7778 test/Makefile.am | 2 +- 7779 1 file changed, 1 insertion(+), 1 deletion(-) 7780 7781commit 18181f12ae6c412fea984484355ff8bc1dfccb54 7782Author: Carl Worth <cworth@cworth.org> 7783AuthorDate: Tue Jan 22 06:25:19 2008 -0800 7784Commit: Carl Worth <cworth@cworth.org> 7785CommitDate: Tue Jan 22 06:25:19 2008 -0800 7786 7787 Make Carl return from his time-traveling expedition 7788 7789 test/rectilinear-miter-limit.c | 2 +- 7790 1 file changed, 1 insertion(+), 1 deletion(-) 7791 7792commit 95f3b425e6fb31b364b08e53e072fac4f5ed0733 7793Author: Behdad Esfahbod <behdad@behdad.org> 7794AuthorDate: Tue Jan 22 01:03:02 2008 -0500 7795Commit: Behdad Esfahbod <behdad@behdad.org> 7796CommitDate: Tue Jan 22 01:03:02 2008 -0500 7797 7798 [cairo-path-stroke] Use M_SQRT2 for constant value 7799 7800 src/cairo-path-stroke.c | 8 ++++---- 7801 src/cairoint.h | 4 ++++ 7802 2 files changed, 8 insertions(+), 4 deletions(-) 7803 7804commit 1931ce1b3d491afe4f23670c82e428f95eb25e6d 7805Author: Behdad Esfahbod <behdad@behdad.org> 7806AuthorDate: Tue Jan 22 00:36:25 2008 -0500 7807Commit: Behdad Esfahbod <behdad@behdad.org> 7808CommitDate: Tue Jan 22 00:36:48 2008 -0500 7809 7810 [cairo-operator] Remove unused cairo-operator.c 7811 7812 src/Makefile.am | 1 - 7813 src/cairo-operator.c | 119 --------------------------------------------------- 7814 src/cairoint.h | 7 --- 7815 3 files changed, 127 deletions(-) 7816 7817commit 47cf7ed769891b00abf96d14de6e79c0fa893cf9 7818Author: Carl Worth <cworth@cworth.org> 7819AuthorDate: Mon Jan 21 16:45:41 2008 -0800 7820Commit: Carl Worth <cworth@cworth.org> 7821CommitDate: Mon Jan 21 16:45:41 2008 -0800 7822 7823 Test and document that fill rule has no effect on cairo_path_extents 7824 7825 src/cairo.c | 4 ++-- 7826 test/get-path-extents.c | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 7827 2 files changed, 51 insertions(+), 2 deletions(-) 7828 7829commit 1ca186f51134e7d5969937760b068caba0070d31 7830Author: Carl Worth <cworth@cworth.org> 7831AuthorDate: Mon Jan 21 16:34:24 2008 -0800 7832Commit: Carl Worth <cworth@cworth.org> 7833CommitDate: Mon Jan 21 16:34:24 2008 -0800 7834 7835 Disable rectilinear stroke optimization for small miter limit values 7836 7837 This fixes the bug that was causing the recently added 7838 rectilinear-miter-limit test case to fail. It passes 7839 quite happily now. 7840 7841 src/cairo-path-stroke.c | 6 ++++++ 7842 1 file changed, 6 insertions(+) 7843 7844commit 32efcc94627e8890969c4b36a78c831ced6f8d62 7845Author: Carl Worth <cworth@cworth.org> 7846AuthorDate: Mon Jan 21 16:32:48 2008 -0800 7847Commit: Carl Worth <cworth@cworth.org> 7848CommitDate: Mon Jan 21 16:32:48 2008 -0800 7849 7850 Add new rectilinear-miter-limit test to demonstrate bug 7851 7852 We're failing to respect the miter limit in the rectilinear 7853 stroke optimization code. 7854 7855 test/.gitignore | 1 + 7856 test/Makefile.am | 2 + 7857 test/rectilinear-miter-limit-ref.png | Bin 0 -> 177 bytes 7858 test/rectilinear-miter-limit.c | 80 +++++++++++++++++++++++++++++++++++ 7859 4 files changed, 83 insertions(+) 7860 7861commit 326342962daa694d876c03194e8a6c1b13f9a8d2 7862Author: Carl Worth <cworth@cworth.org> 7863AuthorDate: Mon Jan 21 15:20:07 2008 -0800 7864Commit: Carl Worth <cworth@cworth.org> 7865CommitDate: Mon Jan 21 15:20:07 2008 -0800 7866 7867 Rename trailing_move_to_point to move_to_point 7868 7869 And prefer TRUE and FALSE literals over 1 and 0. 7870 7871 src/cairo-path-bounds.c | 24 +++++++++++++----------- 7872 1 file changed, 13 insertions(+), 11 deletions(-) 7873 7874commit c480eedbb58dd03dd4b9b87b3985758ffbce7113 7875Author: Carl Worth <cworth@cworth.org> 7876AuthorDate: Mon Jan 21 14:56:21 2008 -0800 7877Commit: Carl Worth <cworth@cworth.org> 7878CommitDate: Mon Jan 21 14:56:21 2008 -0800 7879 7880 Test and document extents of degenerate "dots" 7881 7882 It's a common idiom to stroke degenerate sub-paths made with 7883 cairo_move_to(x,y);cairo_rel_line_to(0,0) to draw dots. Test 7884 that we get the desired extents from cairo_fill_extents, 7885 cairo_stroke_extents, and cairo_path_extents for these cases. 7886 7887 Also document that the cairo_path_extents result is equivalent 7888 to the limit of stroking with CAIRO_LINE_CAP_ROUND, (so that 7889 these "dot" points are included), as the line width 7890 approaches 0.0 . 7891 7892 src/cairo.c | 6 +++--- 7893 test/get-path-extents.c | 28 ++++++++++++++++++++++++++++ 7894 2 files changed, 31 insertions(+), 3 deletions(-) 7895 7896commit 55e0dddf0408046ea0ded419ebe45099a4eb563e 7897Author: Carl Worth <cworth@cworth.org> 7898AuthorDate: Mon Jan 21 14:45:06 2008 -0800 7899Commit: Carl Worth <cworth@cworth.org> 7900CommitDate: Mon Jan 21 14:45:06 2008 -0800 7901 7902 Add cairo_path_extents testing to several cases missing it 7903 7904 With these degenerate shapes, cairo_path_extents still returns 7905 a zero-area rectangle, but with a non-zero offset. 7906 7907 test/get-path-extents.c | 12 ++++++++---- 7908 1 file changed, 8 insertions(+), 4 deletions(-) 7909 7910commit 63df3a82a3a4a035edf89152995a324449616059 7911Author: Carl Worth <cworth@cworth.org> 7912AuthorDate: Mon Jan 21 13:47:05 2008 -0800 7913Commit: Carl Worth <cworth@cworth.org> 7914CommitDate: Mon Jan 21 13:47:05 2008 -0800 7915 7916 Fix cairo_path_extents to ignore lone cairo_move_to points. 7917 7918 Update the documentation as well. 7919 7920 src/cairo-path-bounds.c | 11 ++++++++++- 7921 src/cairo.c | 40 +++++++++++++++++++++++++--------------- 7922 2 files changed, 35 insertions(+), 16 deletions(-) 7923 7924commit c15cab8b6855540436e457465c4766812c6def55 7925Author: Carl Worth <cworth@cworth.org> 7926AuthorDate: Mon Jan 21 13:34:53 2008 -0800 7927Commit: Carl Worth <cworth@cworth.org> 7928CommitDate: Mon Jan 21 13:34:53 2008 -0800 7929 7930 Correct near-pangram to be an actual pangram 7931 7932 This wasn't affecting the test quality at all, but it did annoy 7933 me to see this mistake. 7934 7935 test/get-path-extents.c | 2 +- 7936 1 file changed, 1 insertion(+), 1 deletion(-) 7937 7938commit ed695bdb9b1e4500f796c7f07a7cc2f3832b2a39 7939Author: Carl Worth <cworth@cworth.org> 7940AuthorDate: Mon Jan 21 13:33:46 2008 -0800 7941Commit: Carl Worth <cworth@cworth.org> 7942CommitDate: Mon Jan 21 13:33:46 2008 -0800 7943 7944 Define repeated string literal once 7945 7946 test/get-path-extents.c | 10 ++++++---- 7947 1 file changed, 6 insertions(+), 4 deletions(-) 7948 7949commit 80df194b77a4caac1d58132341f034596e500bda 7950Author: Carl Worth <cworth@cworth.org> 7951AuthorDate: Mon Jan 21 12:14:49 2008 -0800 7952Commit: Carl Worth <cworth@cworth.org> 7953CommitDate: Mon Jan 21 12:14:49 2008 -0800 7954 7955 Clarify documentation of cairo_{fill,stroke,path}_extents 7956 7957 Mostly just adding more cross-references between the documentation 7958 of these three similar functions. 7959 7960 src/cairo.c | 36 +++++++++++++++++++++++++----------- 7961 1 file changed, 25 insertions(+), 11 deletions(-) 7962 7963commit eba04b7fbcc7fdbf075ad1372208908634459178 7964Author: Brian Ewins <Brian.Ewins@gmail.com> 7965AuthorDate: Sun Jan 20 03:22:12 2008 +0000 7966Commit: Carl Worth <cworth@cworth.org> 7967CommitDate: Mon Jan 21 12:07:11 2008 -0800 7968 7969 [path] use new interpret_flat infrastructure for path_populate 7970 7971 refactor to reduce duplication of flattening code. 7972 7973 src/cairo-path.c | 50 +++++++++++++------------------------------------- 7974 1 file changed, 13 insertions(+), 37 deletions(-) 7975 7976commit 3270ae6a65105787942da8309fa874ee65bc79fe 7977Author: Brian Ewins <Brian.Ewins@gmail.com> 7978AuthorDate: Sun Jan 20 03:21:41 2008 +0000 7979Commit: Carl Worth <cworth@cworth.org> 7980CommitDate: Mon Jan 21 12:06:36 2008 -0800 7981 7982 [path] Use new interpret_flat infrastructure for path_count. 7983 7984 Refactor to reduce duplication of path flattening code. 7985 7986 src/cairo-path-bounds.c | 6 ----- 7987 src/cairo-path.c | 62 ++++++++++++++----------------------------------- 7988 2 files changed, 18 insertions(+), 50 deletions(-) 7989 7990commit 4177208be63caa3128eaf07428f3d4617fcd18e0 7991Author: Brian Ewins <Brian.Ewins@gmail.com> 7992AuthorDate: Fri Nov 16 22:43:43 2007 +0000 7993Commit: Carl Worth <cworth@cworth.org> 7994CommitDate: Mon Jan 21 12:04:32 2008 -0800 7995 7996 [cairo] Add cairo_path_extents() 7997 7998 This new function gets the extents of the current path, whether 7999 or not they would be inked by a 'fill'. It differs from 8000 cairo_fill_extents() when the area enclosed by the path is 0. 8001 8002 Includes documentation and updated test. 8003 8004 doc/public/cairo-sections.txt | 1 + 8005 doc/public/tmpl/cairo-paths.sgml | 10 ++++++++++ 8006 src/cairo-gstate.c | 11 +++++++++++ 8007 src/cairo.c | 30 ++++++++++++++++++++++++++++++ 8008 src/cairo.h | 5 +++++ 8009 src/cairoint.h | 7 +++++++ 8010 test/get-path-extents.c | 33 +++++++++++++++++++++++---------- 8011 7 files changed, 87 insertions(+), 10 deletions(-) 8012 8013commit d923457c0f40c9b34ee75d4d47b9bd0c3edfe669 8014Author: Brian Ewins <Brian.Ewins@gmail.com> 8015AuthorDate: Sat Jan 19 22:31:49 2008 +0000 8016Commit: Carl Worth <cworth@cworth.org> 8017CommitDate: Mon Jan 21 12:01:44 2008 -0800 8018 8019 [path-fixed] make _cairo_path_fixed_bounds use _cairo_path_fixed_interpret_flat 8020 8021 _cairo_path_fixed_bounds can use the new _interpret_flat mechanism; this 8022 results in tighter bounds; previously the bounds followed the control 8023 points of the beziers, whereas now they are the bounds of the curve. 8024 8025 src/cairo-analysis-surface.c | 2 +- 8026 src/cairo-path-bounds.c | 39 ++++++++++++++------------------------- 8027 src/cairoint.h | 3 ++- 8028 3 files changed, 17 insertions(+), 27 deletions(-) 8029 8030commit 1471b3f00acddecdfc2617a62ab0e584f319dc1c 8031Author: Brian Ewins <Brian.Ewins@gmail.com> 8032AuthorDate: Sat Jan 19 22:31:10 2008 +0000 8033Commit: Carl Worth <cworth@cworth.org> 8034CommitDate: Mon Jan 21 12:01:44 2008 -0800 8035 8036 [path-fixed] add _cairo_path_fixed_interpret_flat 8037 8038 _cairo_path_fixed_interpret_flat flattens the path as it 8039 interprets it, meaning that a curve_to callback is not 8040 required. 8041 8042 src/cairo-path-fixed.c | 99 ++++++++++++++++++++++++++++++++++++++++++++++++++ 8043 src/cairoint.h | 9 +++++ 8044 2 files changed, 108 insertions(+) 8045 8046commit 3339c32b0aa44c4bae6e534f90d26aa342e3d717 8047Author: Behdad Esfahbod <behdad@behdad.org> 8048AuthorDate: Sun Jan 20 02:56:26 2008 -0500 8049Commit: Behdad Esfahbod <behdad@behdad.org> 8050CommitDate: Sun Jan 20 02:56:26 2008 -0500 8051 8052 [cairoint.h] Move MSC inline macros into cairo-compiler-private.h 8053 where they belong 8054 8055 src/cairo-compiler-private.h | 10 ++++++++++ 8056 src/cairoint.h | 11 ----------- 8057 2 files changed, 10 insertions(+), 11 deletions(-) 8058 8059commit ac17ce0f89b494a404756c8d24b21a7fb354218e 8060Author: Behdad Esfahbod <behdad@behdad.org> 8061AuthorDate: Sun Jan 20 02:54:16 2008 -0500 8062Commit: Behdad Esfahbod <behdad@behdad.org> 8063CommitDate: Sun Jan 20 02:55:07 2008 -0500 8064 8065 [cairo-fixed/wideint-private.h] Split out typedefs from prototypes 8066 such that the type definitions can be used from boilerplate without exposing 8067 the prototypes. 8068 8069 src/Makefile.am | 2 + 8070 src/cairo-fixed-private.h | 34 +--------- 8071 src/cairo-fixed-type-private.h | 70 +++++++++++++++++++++ 8072 src/cairo-types-private.h | 2 +- 8073 src/cairo-wideint-private.h | 71 +-------------------- 8074 src/cairo-wideint-type-private.h | 130 +++++++++++++++++++++++++++++++++++++++ 8075 src/cairoint.h | 1 + 8076 7 files changed, 208 insertions(+), 102 deletions(-) 8077 8078commit f072d815d40e6fd44369424b68d54cea22da3a26 8079Author: Peter Weilbacher <mozilla@weilbacher.org> 8080AuthorDate: Sat Jan 19 20:48:39 2008 -0500 8081Commit: Behdad Esfahbod <behdad@behdad.org> 8082CommitDate: Sat Jan 19 20:54:25 2008 -0500 8083 8084 [cairo-ft] Fix typo in comment 8085 8086 src/cairo-ft-font.c | 2 +- 8087 1 file changed, 1 insertion(+), 1 deletion(-) 8088 8089commit 0fb800ff2258d4642a2188a7f219db9620450bc2 8090Author: Peter Weilbacher <mozilla@weilbacher.org> 8091AuthorDate: Sat Jan 19 20:47:59 2008 -0500 8092Commit: Behdad Esfahbod <behdad@behdad.org> 8093CommitDate: Sat Jan 19 20:54:24 2008 -0500 8094 8095 [cairo-ft] Add FC_PIXEL_SIZE as double, not int 8096 8097 src/cairo-ft-font.c | 2 +- 8098 1 file changed, 1 insertion(+), 1 deletion(-) 8099 8100commit 8887fb35936bb48acadc19a0c71d1b81ec8b481d 8101Author: Adrian Johnson <ajohnson@redneon.com> 8102AuthorDate: Sun Jan 20 01:14:19 2008 +1030 8103Commit: Adrian Johnson <ajohnson@redneon.com> 8104CommitDate: Sun Jan 20 01:33:56 2008 +1030 8105 8106 Fix PS/PDF Type 1 font embedding when glyph 0 is used 8107 8108 cairo-scaled-fonts-subsets.c reserves position 0 in each subset for 8109 glyph 0 (.notdef) as the font embedding of each font type requires 8110 .notdef as the first glyph. For some reason this was done by reserving 8111 the position then inserting glyph 0 in the collect function instead of 8112 just adding the glyph to the hash table when the subset is 8113 created. The problem this caused was that when an application called 8114 show_glyphs() with glyph 0, the glyph was added to the hash table 8115 (because it was not already there) resulting in two .notdef glyphs in 8116 the subset. This resulted in breakage in the Type 1 subsetting where 8117 the second .notdef was not emitted and all subsequent glyphs were 8118 moved up one place resulting in incorrect font encoding in the PS/PDF 8119 output. 8120 8121 Fix this by adding .notdef to the subset hash table when the subset is 8122 created. 8123 8124 This fixes #13841. 8125 8126 src/cairo-scaled-font-subsets.c | 36 +++++++++++++++++++----------------- 8127 1 file changed, 19 insertions(+), 17 deletions(-) 8128 8129commit 574bdd01fd5df8f378c901de5cd9b24bd720ad37 8130Author: Adrian Johnson <ajohnson@redneon.com> 8131AuthorDate: Sun Jan 20 00:26:09 2008 +1030 8132Commit: Adrian Johnson <ajohnson@redneon.com> 8133CommitDate: Sun Jan 20 00:26:09 2008 +1030 8134 8135 Type1-subset: Add newline to the end of the font 8136 8137 as some fonts do not have a newline at the end of the last line 8138 8139 src/cairo-type1-subset.c | 3 +++ 8140 1 file changed, 3 insertions(+) 8141 8142commit ec272fbd0980e8124d87ff5c17a5b751876fc9e2 8143Author: Adrian Johnson <ajohnson@redneon.com> 8144AuthorDate: Sat Jan 19 12:46:24 2008 +1030 8145Commit: Adrian Johnson <ajohnson@redneon.com> 8146CommitDate: Sat Jan 19 12:46:24 2008 +1030 8147 8148 Fix PDF extend-reflect test failure 8149 8150 Previously, when emitting image patterns the PDF backend used 8151 _cairo_pattern_acquire_surface to get the image. For reflected images 8152 this would return an image containing four images in a reflect 8153 pattern. When drawn in a PDF pattern (which only does repeating 8154 patterns) this would create the reflected pattern in PDF. 8155 8156 For some reason _cairo_pattern_acquire_surface is no longer returning 8157 a reflected image pattern. 8158 8159 This is fixed by only using _cairo_surface_acquire_source_image to get 8160 the image and using the same code as is used for reflected 8161 meta-surface patterns to created a reflected pattern by drawing four 8162 transformed copies of the image inside the PDF patten. 8163 8164 This is the better way to implement reflected images as we are no 8165 longer embedding an image four times larger than the original. 8166 8167 src/cairo-pdf-surface.c | 67 +++++++++++++++++++++++-------------------------- 8168 1 file changed, 32 insertions(+), 35 deletions(-) 8169 8170commit 50d0767c8bf4c738b86e10be09d5c4fd7e14a05f 8171Author: Carl Worth <cworth@cworth.org> 8172AuthorDate: Fri Jan 18 12:41:57 2008 -0800 8173Commit: Carl Worth <cworth@cworth.org> 8174CommitDate: Fri Jan 18 12:41:57 2008 -0800 8175 8176 Add a1-image-sample and a1-traps-sample tests 8177 8178 Both of these currently fail due to bugs in the way pixman does 8179 its sampling. 8180 8181 test/.gitignore | 2 ++ 8182 test/Makefile.am | 2 ++ 8183 test/a1-image-sample-ref.png | Bin 0 -> 148 bytes 8184 test/a1-image-sample.c | 83 +++++++++++++++++++++++++++++++++++++++++++ 8185 test/a1-traps-sample-ref.png | Bin 0 -> 148 bytes 8186 test/a1-traps-sample.c | 72 +++++++++++++++++++++++++++++++++++++ 8187 test/cairo-test.c | 2 ++ 8188 7 files changed, 161 insertions(+) 8189 8190commit c11790fded69ed476e7740ed86e4a66bf878d2d3 8191Author: Carl Worth <cworth@cworth.org> 8192AuthorDate: Wed Jan 16 16:32:36 2008 -0800 8193Commit: Carl Worth <cworth@cworth.org> 8194CommitDate: Fri Jan 18 11:17:37 2008 -0800 8195 8196 Quiet a warning about switch without some cairo_surface_type_t enum values 8197 8198 src/cairo-paginated-surface.c | 10 ++++++++++ 8199 1 file changed, 10 insertions(+) 8200 8201commit 1d6c2d578fa717906ba8fd0a897c52033179e938 8202Author: Carl Worth <cworth@cworth.org> 8203AuthorDate: Wed Jan 16 16:19:40 2008 -0800 8204Commit: Carl Worth <cworth@cworth.org> 8205CommitDate: Fri Jan 18 11:17:37 2008 -0800 8206 8207 Remove some gratuitous assert statements 8208 8209 Calling assert immediately after assigning a literal value is 8210 very bad form. 8211 8212 src/cairo-image-surface.c | 5 +---- 8213 1 file changed, 1 insertion(+), 4 deletions(-) 8214 8215commit eabd28a655f8ddc73ff71583bb658db796e932cd 8216Author: Adrian Johnson <ajohnson@redneon.com> 8217AuthorDate: Fri Jan 18 21:53:04 2008 +1030 8218Commit: Adrian Johnson <ajohnson@redneon.com> 8219CommitDate: Fri Jan 18 21:53:04 2008 +1030 8220 8221 win32-printing: define GRADIENT_FILL_RECT_H bug #14107 8222 8223 Older versions of mingw do not define this. 8224 8225 src/cairo-win32-printing-surface.c | 4 ++++ 8226 1 file changed, 4 insertions(+) 8227 8228commit 0086db893cba90dc73824d77c661d2965ad48112 8229Author: Chris Wilson <chris@chris-wilson.co.uk> 8230AuthorDate: Thu Jan 17 22:31:05 2008 +0000 8231Commit: Chris Wilson <chris@chris-wilson.co.uk> 8232CommitDate: Thu Jan 17 22:38:02 2008 +0000 8233 8234 [cairo-font-options] Treat NULL as a default cairo_font_options_t 8235 8236 Interpret a NULL cairo_font_options_t as the default values - i.e 8237 as if it were a fresh pointer returned by cairo_font_options_create(). 8238 8239 src/cairo-font-face.c | 8 +++-- 8240 src/cairo-font-options.c | 51 ++++++++++++++++++++++----- 8241 src/cairo-ft-font.c | 16 +++++---- 8242 src/cairo-gstate.c | 2 +- 8243 src/cairo-scaled-font.c | 18 ++++++---- 8244 src/cairo-win32-font.c | 4 +-- 8245 src/cairo.c | 10 +++--- 8246 test/.gitignore | 1 + 8247 test/Makefile.am | 12 ++++--- 8248 test/font-options.c | 91 ++++++++++++++++++++++++++++++++++++++++++++++++ 8249 10 files changed, 177 insertions(+), 36 deletions(-) 8250 8251commit 02d0e070638f668bf50a8ce2174c21e5614dd6c4 8252Author: Chris Wilson <chris@chris-wilson.co.uk> 8253AuthorDate: Thu Jan 17 21:39:31 2008 +0000 8254Commit: Chris Wilson <chris@chris-wilson.co.uk> 8255CommitDate: Thu Jan 17 21:40:51 2008 +0000 8256 8257 [cairo-font-options] Use cairo_font_options_status() rather open-coding. 8258 8259 By switching to cairo_font_options_status() instead of checking against 8260 the _cairo_font_options_nil error object, the API is protected from NULL 8261 dereferences. 8262 8263 src/cairo-font-options.c | 16 ++++++++-------- 8264 1 file changed, 8 insertions(+), 8 deletions(-) 8265 8266commit b15e91d2b6c229dfe3da4a354306915cc42f75bd 8267Author: Chris Wilson <chris@chris-wilson.co.uk> 8268AuthorDate: Thu Jan 17 21:11:00 2008 +0000 8269Commit: Chris Wilson <chris@chris-wilson.co.uk> 8270CommitDate: Thu Jan 17 21:11:00 2008 +0000 8271 8272 [cairo-font-options] Check for a NULL cairo_font_options_t 8273 8274 On IRC Drakou reported a user error whereby cairo_scaled_font_create() 8275 was called with a NULL cairo_font_options_t. However, instead of 8276 reporting the error back to the user, cairo instead segfaulted trying 8277 to dereference the NULL pointer! 8278 8279 Add a guard to check that the options is not NULL. 8280 8281 src/cairo-font-options.c | 4 +++- 8282 1 file changed, 3 insertions(+), 1 deletion(-) 8283 8284commit 630536f17681b083db658414d68db2c0eb167af3 8285Author: Chris Wilson <chris@chris-wilson.co.uk> 8286AuthorDate: Thu Jan 17 17:44:57 2008 +0000 8287Commit: Chris Wilson <chris@chris-wilson.co.uk> 8288CommitDate: Thu Jan 17 17:45:17 2008 +0000 8289 8290 [test/extend-*] Add various cairo_pattern_set_extend() test cases. 8291 8292 Add various test cases to exercise 8293 _cairo_pattern_acquire_surface_for_surface(), most notably using similar 8294 source surfaces to provide coverage of the non-image surface branch. 8295 8296 test/.gitignore | 4 ++ 8297 test/Makefile.am | 11 +++- 8298 test/cairo-test.c | 2 - 8299 test/extend-pad-similar.c | 105 ++++++++++++++++++++++++++++++++++++ 8300 test/extend-reflect-similar-ref.png | Bin 0 -> 153571 bytes 8301 test/extend-reflect-similar.c | 56 +++++++++++++++++++ 8302 test/extend-reflect.c | 2 + 8303 test/extend-repeat-ref.png | Bin 0 -> 108622 bytes 8304 test/extend-repeat-similar-ref.png | Bin 0 -> 108622 bytes 8305 test/extend-repeat-similar.c | 56 +++++++++++++++++++ 8306 test/extend-repeat.c | 34 ++++++++++++ 8307 11 files changed, 267 insertions(+), 3 deletions(-) 8308 8309commit dec2daeaf396be9dc6e8952417cc615d3a607926 8310Author: Chris Wilson <chris@chris-wilson.co.uk> 8311AuthorDate: Thu Jan 17 15:34:51 2008 +0000 8312Commit: Chris Wilson <chris@chris-wilson.co.uk> 8313CommitDate: Thu Jan 17 15:34:51 2008 +0000 8314 8315 [cairo-{ps,pdf}-surface] Assert the font is supported during emission. 8316 8317 Add an ASSERT_NOT_REACHED to the tail of the font subset emission 8318 functions - as they should always, at least, be supported by the 8319 fallbacks. 8320 8321 src/cairo-pdf-surface.c | 2 ++ 8322 src/cairo-ps-surface.c | 2 ++ 8323 2 files changed, 4 insertions(+) 8324 8325commit bde68fd4d6271daf8ca374e472deab95a9a7acff 8326Author: Chris Wilson <chris@chris-wilson.co.uk> 8327AuthorDate: Thu Jan 17 15:06:13 2008 +0000 8328Commit: Chris Wilson <chris@chris-wilson.co.uk> 8329CommitDate: Thu Jan 17 15:08:16 2008 +0000 8330 8331 [cairo-scaled-font] Propagate the error to the font. 8332 8333 If we encounter an error whilst using the font backend to convert the 8334 text to the glyphs, flag the scaled font with that error. 8335 8336 src/cairo-scaled-font.c | 7 +++---- 8337 1 file changed, 3 insertions(+), 4 deletions(-) 8338 8339commit d664e3253e3c310c34264eb0070c2c3c309e071b 8340Author: Chris Wilson <chris@chris-wilson.co.uk> 8341AuthorDate: Thu Jan 17 15:05:10 2008 +0000 8342Commit: Chris Wilson <chris@chris-wilson.co.uk> 8343CommitDate: Thu Jan 17 15:05:10 2008 +0000 8344 8345 [cairo-scaled-font] Typo. 8346 8347 s/ZERO_EXENTS/ZERO_EXTENTS/ 8348 8349 src/cairo-scaled-font.c | 8 ++++---- 8350 1 file changed, 4 insertions(+), 4 deletions(-) 8351 8352commit fcdc525dde52c3bf7124d00a98b6be64ca522cb9 8353Author: Chris Wilson <chris@chris-wilson.co.uk> 8354AuthorDate: Thu Jan 17 14:47:43 2008 +0000 8355Commit: Chris Wilson <chris@chris-wilson.co.uk> 8356CommitDate: Thu Jan 17 14:51:22 2008 +0000 8357 8358 [cairo-xlib] Remove the NULL safeguards. 8359 8360 No need to guarding against the pointer being NULL on internal functions 8361 as no path can call the function will a NULL pointer and no path should 8362 ever try, which in any case it would be better to crash immediately. 8363 8364 src/cairo-xlib-display.c | 7 +------ 8365 src/cairo-xlib-screen.c | 6 ------ 8366 2 files changed, 1 insertion(+), 12 deletions(-) 8367 8368commit 7b1a0eddacb290ae0d67fa974da1697b2c9ce38c 8369Author: Chris Wilson <chris@chris-wilson.co.uk> 8370AuthorDate: Thu Jan 17 13:51:21 2008 +0000 8371Commit: Chris Wilson <chris@chris-wilson.co.uk> 8372CommitDate: Thu Jan 17 13:51:21 2008 +0000 8373 8374 [test/get-path-extents] Exercise cairo_scaled_font_text_extents() 8375 8376 Compare cairo_scaled_font_text_extents() to cairo_text_extents() in 8377 order to provide test coverage of cairo_scaled_font_text_extents(). 8378 8379 test/get-path-extents.c | 19 ++++++++++++++++++- 8380 1 file changed, 18 insertions(+), 1 deletion(-) 8381 8382commit dbc97c2576320126e0cddd833ac88320af995d77 8383Author: Chris Wilson <chris@chris-wilson.co.uk> 8384AuthorDate: Thu Jan 17 13:41:19 2008 +0000 8385Commit: Chris Wilson <chris@chris-wilson.co.uk> 8386CommitDate: Thu Jan 17 13:41:19 2008 +0000 8387 8388 [text] Set the extents on the error paths. 8389 8390 Ensure the text extents are initialized (zeroed) if we encounter an 8391 error along for any of the text extents functions. 8392 8393 src/cairo-scaled-font.c | 19 ++++++++++++++++--- 8394 src/cairo.c | 35 +++++++++++++++++++---------------- 8395 2 files changed, 35 insertions(+), 19 deletions(-) 8396 8397commit aec7ae67aa72f3105232fa7a66c1ea013c840da1 8398Author: Chris Wilson <chris@chris-wilson.co.uk> 8399AuthorDate: Thu Jan 17 13:28:55 2008 +0000 8400Commit: Chris Wilson <chris@chris-wilson.co.uk> 8401CommitDate: Thu Jan 17 13:32:04 2008 +0000 8402 8403 [test/text-zero-len] Test the public cairo_scaled_font_* with NULLs. 8404 8405 Pass NULL to cairo_scaled_font_(text|glyph)_extents() to test the 8406 consistency of the extents API. 8407 8408 test/text-zero-len.c | 33 +++++++++++++++++++++++++++++++++ 8409 1 file changed, 33 insertions(+) 8410 8411commit 390e22894b093184e489ea762ffc29eeb1c81d2b 8412Author: Chris Wilson <chris@chris-wilson.co.uk> 8413AuthorDate: Thu Jan 17 13:13:40 2008 +0000 8414Commit: Chris Wilson <chris@chris-wilson.co.uk> 8415CommitDate: Thu Jan 17 13:13:40 2008 +0000 8416 8417 [test/in-fill-trapezoid] Add a few holes. 8418 8419 Complete the coverage of _cairo_trap_contains() by cutting holes out of 8420 the simple shapes. 8421 8422 test/in-fill-trapezoid.c | 20 ++++++++++++++++++++ 8423 1 file changed, 20 insertions(+) 8424 8425commit da9c43329ad09ccf48f8a71d28848f111af7ecb5 8426Author: Chris Wilson <chris@chris-wilson.co.uk> 8427AuthorDate: Thu Jan 17 11:22:19 2008 +0000 8428Commit: Chris Wilson <chris@chris-wilson.co.uk> 8429CommitDate: Thu Jan 17 11:50:51 2008 +0000 8430 8431 [test/in-fill-trapezoid] Add test to exercise _cairo_trap_contains(). 8432 8433 A simple test to provide coverage of _cairo_trap_contains(), though 8434 not yet seeking boundary conditions. 8435 8436 test/.gitignore | 1 + 8437 test/Makefile.am | 1 + 8438 test/in-fill-trapezoid.c | 66 ++++++++++++++++++++++++++++++++++++++++++++++++ 8439 3 files changed, 68 insertions(+) 8440 8441commit f638e5ea355cf0268a4b099ce7b8b98c69df6b67 8442Author: Chris Wilson <chris@chris-wilson.co.uk> 8443AuthorDate: Thu Jan 17 11:03:50 2008 +0000 8444Commit: Chris Wilson <chris@chris-wilson.co.uk> 8445CommitDate: Thu Jan 17 11:50:51 2008 +0000 8446 8447 [cairo-region] Review status propagation. 8448 8449 Check that the error status is propagated from _cairo_region_*. 8450 8451 src/cairo-clip.c | 2 +- 8452 src/cairo-glitz-surface.c | 50 +++++++++++++++++++++++++---------------------- 8453 src/cairo-surface.c | 7 ++----- 8454 3 files changed, 30 insertions(+), 29 deletions(-) 8455 8456commit 248f0060e5317f53a688ea0e0aea2997824fa996 8457Author: Chris Wilson <chris@chris-wilson.co.uk> 8458AuthorDate: Thu Jan 17 10:10:55 2008 +0000 8459Commit: Chris Wilson <chris@chris-wilson.co.uk> 8460CommitDate: Thu Jan 17 11:50:51 2008 +0000 8461 8462 [cairo-analysis-surface] Return the nil surface rather than NULL. 8463 8464 On error return a nil surface that represents the error rather than 8465 making the assumption of a NO_MEMORY error in the caller. 8466 8467 src/cairo-analysis-surface.c | 5 +---- 8468 src/cairo-paginated-surface.c | 5 ++--- 8469 2 files changed, 3 insertions(+), 7 deletions(-) 8470 8471commit dd13a00541ebd85bb7687add8b76fa3fb1d82b95 8472Author: Chris Wilson <chris@chris-wilson.co.uk> 8473AuthorDate: Thu Jan 17 10:09:22 2008 +0000 8474Commit: Chris Wilson <chris@chris-wilson.co.uk> 8475CommitDate: Thu Jan 17 11:50:32 2008 +0000 8476 8477 [test/get-path-extents] Check extents of degenerate paths. 8478 8479 Ensure that degenerate paths have zero extents. 8480 8481 test/get-path-extents.c | 35 +++++++++++++++++++++++++++++++++++ 8482 1 file changed, 35 insertions(+) 8483 8484commit 3f202c081d211d5ac6c28ce96cd0f57f8bb26aac 8485Author: Chris Wilson <chris@chris-wilson.co.uk> 8486AuthorDate: Wed Jan 16 23:42:24 2008 +0000 8487Commit: Chris Wilson <chris@chris-wilson.co.uk> 8488CommitDate: Wed Jan 16 23:42:24 2008 +0000 8489 8490 [Makefile.am] Another path massage for lcov. 8491 8492 Beware the inline functions in the headers that are now being pulled 8493 into the boilerplate code. 8494 8495 Makefile.am | 5 ++++- 8496 1 file changed, 4 insertions(+), 1 deletion(-) 8497 8498commit 9ebfa8b5fb82596341b9ca0f19c362f24a7ff782 8499Author: Chris Wilson <chris@chris-wilson.co.uk> 8500AuthorDate: Wed Jan 16 20:35:41 2008 +0000 8501Commit: Chris Wilson <chris@chris-wilson.co.uk> 8502CommitDate: Wed Jan 16 23:30:15 2008 +0000 8503 8504 [Makefile.am] Couple check-ref-missing into release-check 8505 8506 Verify that all the reference images checked into git will be included 8507 within the distribution tarball as early as possible in the release 8508 process. 8509 8510 Makefile.am | 6 +++++- 8511 test/Makefile.am | 16 ++++++++++++---- 8512 2 files changed, 17 insertions(+), 5 deletions(-) 8513 8514commit f9a80c06b40634ffef00770731d3b433e465a1b9 8515Author: Chris Wilson <chris@chris-wilson.co.uk> 8516AuthorDate: Wed Jan 16 23:28:27 2008 +0000 8517Commit: Chris Wilson <chris@chris-wilson.co.uk> 8518CommitDate: Wed Jan 16 23:28:27 2008 +0000 8519 8520 [cairo-path-stroke] Convert degenerate splines into lines. 8521 8522 This fixes a discrepancy in the stoker between splines and lines, 8523 whereby the stroker failed to add a dash for a zero length spline. 8524 8525 src/cairo-path-stroke.c | 4 ++-- 8526 1 file changed, 2 insertions(+), 2 deletions(-) 8527 8528commit 2621a323a0ccfe33ff42ed17536db0dc89473a9f 8529Author: Chris Wilson <chris@chris-wilson.co.uk> 8530AuthorDate: Wed Jan 16 23:24:41 2008 +0000 8531Commit: Chris Wilson <chris@chris-wilson.co.uk> 8532CommitDate: Wed Jan 16 23:24:41 2008 +0000 8533 8534 [test/dash-curve] Add a new test case for dashes along splines. 8535 8536 Modify the dash-state test case and use curves instead of lines - 8537 exercises _cairo_stroker_curve_to_dashed() and degenerate splines. 8538 8539 test/.gitignore | 1 + 8540 test/Makefile.am | 2 ++ 8541 test/dash-curve-ref.png | Bin 0 -> 39642 bytes 8542 test/dash-curve.c | 74 ++++++++++++++++++++++++++++++++++++++++++++++++ 8543 4 files changed, 77 insertions(+) 8544 8545commit bb41fa22e3d3b1fe4b3e802ecf7d8041eacda3fd 8546Author: Chris Wilson <chris@chris-wilson.co.uk> 8547AuthorDate: Wed Jan 16 23:21:53 2008 +0000 8548Commit: Chris Wilson <chris@chris-wilson.co.uk> 8549CommitDate: Wed Jan 16 23:21:53 2008 +0000 8550 8551 [Makefile.am] Further massage lcov paths for srcdir != builddir. 8552 8553 The lcov scripts generate incorrect absolute paths to the builddir for 8554 source files - so convert them to srcdir using sed. 8555 8556 Makefile.am | 4 ++-- 8557 1 file changed, 2 insertions(+), 2 deletions(-) 8558 8559commit 0a4ced5a2659b168fe8d1a6e3917f79fd5c66ae5 8560Author: Carl Worth <cworth@cworth.org> 8561AuthorDate: Wed Jan 16 10:47:46 2008 -0800 8562Commit: Carl Worth <cworth@cworth.org> 8563CommitDate: Wed Jan 16 10:47:46 2008 -0800 8564 8565 Increment version to 1.5.7 after the 1.5.6 snapshot 8566 8567 configure.in | 2 +- 8568 1 file changed, 1 insertion(+), 1 deletion(-) 8569 8570commit d2a02d4f5ccb1c6dc7f8cca0c322b72f1638d25b 8571Author: Carl Worth <cworth@cworth.org> 8572AuthorDate: Wed Jan 16 10:34:17 2008 -0800 8573Commit: Carl Worth <cworth@cworth.org> 8574CommitDate: Wed Jan 16 10:36:01 2008 -0800 8575 8576 Remove check-has-hidden-symbols.i on 'make distclean' 8577 8578 Without this, 'make distcheck' fails so releases don't happen. 8579 8580 src/Makefile.am | 1 + 8581 1 file changed, 1 insertion(+) 8582 8583commit 5c3a0b5c0044bff1262d583e38f84d48d407f0d9 8584Author: Carl Worth <cworth@cworth.org> 8585AuthorDate: Wed Jan 16 10:22:44 2008 -0800 8586Commit: Carl Worth <cworth@cworth.org> 8587CommitDate: Wed Jan 16 10:22:44 2008 -0800 8588 8589 Add miter-precision-ref.png tothe distribution. 8590 8591 test/Makefile.am | 1 + 8592 1 file changed, 1 insertion(+) 8593 8594commit cb1ddc4e475ff783960925139e85f6fada56213a 8595Author: Carl Worth <cworth@cworth.org> 8596AuthorDate: Wed Jan 16 10:10:39 2008 -0800 8597Commit: Carl Worth <cworth@cworth.org> 8598CommitDate: Wed Jan 16 10:15:34 2008 -0800 8599 8600 Replace -I($builddir) with -I. to avoid breaking non-srcdir builds. 8601 8602 This variable was expanding to an empty string, so the next -I flag 8603 was getting completely swallowed. Let's avoid being clever and just 8604 use . which is what we want in the expansion anyway. 8605 8606 src/Makefile.am | 2 +- 8607 1 file changed, 1 insertion(+), 1 deletion(-) 8608 8609commit ad8d03967a2b68ab88a428df6b9d68e76002a88f 8610Author: Carl Worth <cworth@cworth.org> 8611AuthorDate: Tue Jan 15 15:50:54 2008 -0800 8612Commit: Carl Worth <cworth@cworth.org> 8613CommitDate: Wed Jan 16 09:48:54 2008 -0800 8614 8615 Increment version to 1.5.6 and to 15:0:13 8616 8617 configure.in | 8 ++++---- 8618 1 file changed, 4 insertions(+), 4 deletions(-) 8619 8620commit fe27f4b9a34946b121b4259f057fdf3c52d1371b 8621Author: Carl Worth <cworth@cworth.org> 8622AuthorDate: Tue Jan 15 15:47:48 2008 -0800 8623Commit: Carl Worth <cworth@cworth.org> 8624CommitDate: Wed Jan 16 09:48:54 2008 -0800 8625 8626 NEWS: Add notes for cairo 1.5.6 8627 8628 NEWS | 100 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---- 8629 1 file changed, 95 insertions(+), 5 deletions(-) 8630 8631commit 1bccbd88c38c4438e94cf8936228c75e47be0af4 8632Author: Chris Wilson <chris@chris-wilson.co.uk> 8633AuthorDate: Wed Jan 16 16:33:22 2008 +0000 8634Commit: Chris Wilson <chris@chris-wilson.co.uk> 8635CommitDate: Wed Jan 16 17:02:52 2008 +0000 8636 8637 [cairo-pdf-surface] Review error propagation from output stream. 8638 8639 Ensure that errors encountered whilst processing the output stream are 8640 propagated back to the surface (and the user). 8641 8642 src/cairo-pdf-surface.c | 291 ++++++++++++++++++++++++------------------------ 8643 1 file changed, 147 insertions(+), 144 deletions(-) 8644 8645commit 20151fc53401dcc53ef3ab6a78c91a0a02afe497 8646Author: Chris Wilson <chris@chris-wilson.co.uk> 8647AuthorDate: Wed Jan 16 16:33:22 2008 +0000 8648Commit: Chris Wilson <chris@chris-wilson.co.uk> 8649CommitDate: Wed Jan 16 17:01:03 2008 +0000 8650 8651 [cairo-ps-surface] Review error propagation during surface creation. 8652 8653 Track the error during surface creation so that it can be returned to 8654 the user via _cairo_surface_create_in_error(). 8655 8656 src/cairo-ps-surface.c | 36 +++++++++++++++++------------------- 8657 1 file changed, 17 insertions(+), 19 deletions(-) 8658 8659commit 3daa63693c2f8f9cc3c7fa41ef1e4d69bd67b3cc 8660Author: Chris Wilson <chris@chris-wilson.co.uk> 8661AuthorDate: Wed Jan 16 16:33:22 2008 +0000 8662Commit: Chris Wilson <chris@chris-wilson.co.uk> 8663CommitDate: Wed Jan 16 16:52:51 2008 +0000 8664 8665 [cairo-svg-surface] Review error propagation during surface creation. 8666 8667 Track the error during surface creation so that it can be returned to 8668 the user via _cairo_surface_create_in_error(). 8669 8670 src/cairo-svg-surface.c | 124 ++++++++++++++++++++++++++---------------------- 8671 1 file changed, 66 insertions(+), 58 deletions(-) 8672 8673commit 7111b18c27d7ee0439339a6aa72f0e4244f883f9 8674Author: Chris Wilson <chris@chris-wilson.co.uk> 8675AuthorDate: Wed Jan 16 16:23:23 2008 +0000 8676Commit: Chris Wilson <chris@chris-wilson.co.uk> 8677CommitDate: Wed Jan 16 16:51:32 2008 +0000 8678 8679 [cairo-surface] Introduce _cairo_surface_create_in_error(). 8680 8681 Unexport all the static error surfaces and use a function to select 8682 the appropriate error surface for the status. 8683 8684 src/cairo-array.c | 3 +- 8685 src/cairo-glitz-surface.c | 20 ++---- 8686 src/cairo-image-surface.c | 136 ++++--------------------------------- 8687 src/cairo-meta-surface.c | 12 ++-- 8688 src/cairo-os2-surface.c | 22 +++--- 8689 src/cairo-paginated-surface.c | 8 ++- 8690 src/cairo-pdf-surface.c | 11 ++- 8691 src/cairo-png.c | 38 ++++++----- 8692 src/cairo-ps-surface.c | 9 +-- 8693 src/cairo-quartz-surface.c | 32 ++++----- 8694 src/cairo-surface-fallback.c | 6 +- 8695 src/cairo-surface.c | 62 +++++++++++------ 8696 src/cairo-svg-surface.c | 20 ++---- 8697 src/cairo-win32-printing-surface.c | 10 +-- 8698 src/cairo-win32-surface.c | 37 ++++------ 8699 src/cairo-xcb-surface.c | 18 ++--- 8700 src/cairo-xlib-surface.c | 26 +++---- 8701 src/cairo.c | 4 +- 8702 src/cairoint.h | 6 +- 8703 src/test-fallback-surface.c | 5 +- 8704 src/test-meta-surface.c | 18 +++-- 8705 src/test-paginated-surface.c | 5 +- 8706 22 files changed, 185 insertions(+), 323 deletions(-) 8707 8708commit 5cbc45488e276cb6e6ecfa7bc7dd4fae342de85e 8709Author: Chris Wilson <chris@chris-wilson.co.uk> 8710AuthorDate: Wed Jan 16 16:29:19 2008 +0000 8711Commit: Chris Wilson <chris@chris-wilson.co.uk> 8712CommitDate: Wed Jan 16 16:40:01 2008 +0000 8713 8714 [cairo-output-stream] Introduce _cairo_output_stream_create_in_error() 8715 8716 Use a utility function to wrap an incoming error status into a new 8717 error stream. As a side-effect, all error streams must be destroyed as 8718 in the general case the caller can not distinguish between a static 8719 error object and one allocated to hold an unusual error status. 8720 8721 src/cairo-base85-stream.c | 3 +++ 8722 src/cairo-deflate-stream.c | 7 ++----- 8723 src/cairo-output-stream-private.h | 3 +++ 8724 src/cairo-output-stream.c | 26 ++++++++++++++++++++++++-- 8725 src/cairo-ps-surface.c | 10 +++++++--- 8726 src/cairo-type1-fallback.c | 8 ++++---- 8727 src/cairo-type1-subset.c | 5 +++-- 8728 7 files changed, 46 insertions(+), 16 deletions(-) 8729 8730commit 2c10c7559db11ccf511e119f4d4fb2da97508786 8731Author: Chris Wilson <chris@chris-wilson.co.uk> 8732AuthorDate: Wed Jan 16 13:37:48 2008 +0000 8733Commit: Chris Wilson <chris@chris-wilson.co.uk> 8734CommitDate: Wed Jan 16 16:37:38 2008 +0000 8735 8736 [Makefile.am] Add -I$(builddir) for .c.i target 8737 8738 Updated the CPP command so that it can find <cairo-features.h> in the 8739 local build directory. 8740 8741 src/Makefile.am | 2 +- 8742 1 file changed, 1 insertion(+), 1 deletion(-) 8743 8744commit e49db8ed3ea5727e00e2734a8877af860371be69 8745Author: Carl Worth <cworth@cworth.org> 8746AuthorDate: Wed Jan 16 08:11:51 2008 -0800 8747Commit: Carl Worth <cworth@cworth.org> 8748CommitDate: Wed Jan 16 08:16:06 2008 -0800 8749 8750 Fix create-for-stream test to log its failure properly 8751 8752 Without this, a failure of this test won't be nicely reported 8753 in the post-make-check summary. (Also fix a silly little typo 8754 in the svg-clip test.) 8755 8756 test/Makefile.am | 1 - 8757 test/create-for-stream.c | 13 +++++++++++-- 8758 test/svg-clip.c | 2 +- 8759 3 files changed, 12 insertions(+), 4 deletions(-) 8760 8761commit 57c2b75c229ac7811c573548ae50e6b0e4ecf862 8762Author: Vladimir Vukicevic <vladimir@pobox.com> 8763AuthorDate: Tue Jan 15 14:27:14 2008 -0800 8764Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 8765CommitDate: Tue Jan 15 14:27:14 2008 -0800 8766 8767 [quartz] Store the CGFontRef and reuse it for rendering 8768 8769 Previously the CGFontRef was recreated each time in show_glyphs; this 8770 caused the font to get re-embedded in any PDF files that were being 8771 generated through Quartz. 8772 8773 src/cairo-atsui-font.c | 18 ++++++++++++++++++ 8774 src/cairo-quartz-private.h | 3 +++ 8775 src/cairo-quartz-surface.c | 10 ++-------- 8776 3 files changed, 23 insertions(+), 8 deletions(-) 8777 8778commit 968eaf3c44f37ada9c1d7005fc84ead797e11b58 8779Author: Chris Wilson <chris@chris-wilson.co.uk> 8780AuthorDate: Mon Jan 14 18:09:32 2008 +0000 8781Commit: Chris Wilson <chris@chris-wilson.co.uk> 8782CommitDate: Tue Jan 15 13:08:53 2008 +0000 8783 8784 [cairo-xlib] Fixup --disable-xlib-xrender 8785 8786 Fixup the headers and boilerplate to compile and run correctly when 8787 configured with --disable-xlib-xrender. 8788 8789 boilerplate/Makefile.am | 2 +- 8790 boilerplate/cairo-boilerplate-xlib-private.h | 2 ++ 8791 boilerplate/cairo-boilerplate-xlib.c | 29 ++++++++++++++++------------ 8792 boilerplate/cairo-boilerplate.c | 2 +- 8793 src/Makefile.am | 2 +- 8794 src/cairo-freelist-private.h | 3 +-- 8795 src/cairo-xlib-display.c | 1 + 8796 src/cairo-xlib-private.h | 6 +----- 8797 src/cairo-xlib-screen.c | 1 + 8798 src/cairo-xlib-surface-private.h | 2 ++ 8799 src/cairo-xlib-surface.c | 6 ++++++ 8800 src/cairo-xlib-xrender-private.h | 3 --- 8801 src/cairo-xlib-xrender.h | 8 ++++---- 8802 test/xlib-surface.c | 1 - 8803 14 files changed, 38 insertions(+), 30 deletions(-) 8804 8805commit 22d7f311f7733a57ece5d91708b2b5da9b71de86 8806Author: Behdad Esfahbod <behdad@behdad.org> 8807AuthorDate: Mon Jan 14 16:14:02 2008 -0500 8808Commit: Behdad Esfahbod <behdad@behdad.org> 8809CommitDate: Mon Jan 14 16:14:02 2008 -0500 8810 8811 [scaled-font] Upgrade glyph mask as needed in case of mixed-format glyphs 8812 8813 In ecb895803b9d2a3fd142f4a2c694ca08c5581f0e Carl made fallback show_glyphs 8814 always use a A8 mask in case of mixed-format glyphs. That's suboptimal if 8815 there are ARGB32 glyphs. Using masks smartly we can implement the desired 8816 behavior. Done now. 8817 8818 src/cairo-image-surface.c | 18 ++++++++++++++++ 8819 src/cairo-scaled-font.c | 54 ++++++++++++++++++++++++++--------------------- 8820 src/cairoint.h | 3 +++ 8821 3 files changed, 51 insertions(+), 24 deletions(-) 8822 8823commit a5e5c1b5b04dd1d1138e96b7f4c097f14a1cd2cd 8824Author: Chris Wilson <chris@chris-wilson.co.uk> 8825AuthorDate: Sun Jan 13 15:00:58 2008 +0000 8826Commit: Chris Wilson <chris@chris-wilson.co.uk> 8827CommitDate: Sun Jan 13 15:00:58 2008 +0000 8828 8829 [test] Add a custom hook to summarise the failures. 8830 8831 Add a check-local hook that scans the log fails and displays a list 8832 of failed tests (and the failing targets). 8833 8834 test/Makefile.am | 18 ++++++++++++++++++ 8835 1 file changed, 18 insertions(+) 8836 8837commit 8d6249b2c1200dfaf3e98c40e82ab2796e9ef28c 8838Author: Chris Wilson <chris@chris-wilson.co.uk> 8839AuthorDate: Sun Jan 13 11:40:53 2008 +0000 8840Commit: Chris Wilson <chris@chris-wilson.co.uk> 8841CommitDate: Sun Jan 13 11:40:53 2008 +0000 8842 8843 [cairo-scaled-font] Add missing matrix guard to cairo_scaled_font_create(). 8844 8845 cairo_scaled_font_create() did not check the user supplied ctm was valid, 8846 triggering an assertion later when computing the scale factors. 8847 8848 src/cairo-scaled-font.c | 3 +++ 8849 1 file changed, 3 insertions(+) 8850 8851commit 3f59ef95482db478230bb7634209bb826b6a06d0 8852Author: Chris Wilson <chris@chris-wilson.co.uk> 8853AuthorDate: Sun Jan 13 11:21:39 2008 +0000 8854Commit: Chris Wilson <chris@chris-wilson.co.uk> 8855CommitDate: Sun Jan 13 11:21:39 2008 +0000 8856 8857 [cairo-matrix] Tidy usage of HAVE_ISFINITE. 8858 8859 Use a macro to switch between isfinite() and its fallback in order to 8860 avoid using an #ifdef from within a function. 8861 8862 src/cairo-gstate.c | 25 ++++++------------------- 8863 src/cairo-matrix.c | 25 ++++++------------------- 8864 2 files changed, 12 insertions(+), 38 deletions(-) 8865 8866commit 5e32dcf863cc8f40e2679c8c8c42e3ac927ab3c9 8867Author: Chris Wilson <chris@chris-wilson.co.uk> 8868AuthorDate: Sun Jan 13 11:10:28 2008 +0000 8869Commit: Chris Wilson <chris@chris-wilson.co.uk> 8870CommitDate: Sun Jan 13 11:14:20 2008 +0000 8871 8872 [cairo-gstate] Check that the matrix remains invertible. 8873 8874 Ensure that the ctm remains invertible after multiplying the user 8875 supplied matrices. Although the arguments are checked so that they are 8876 valid per se, we double check that the result after multiplication is 8877 still a valid invertible matrix. This should catch pathological cases 8878 where the user concatenates a long series of matrix operations, which 8879 either exceed our numerical limits or become degenerate through rounding 8880 errors. 8881 8882 src/cairo-gstate.c | 16 ++++++++++++++++ 8883 1 file changed, 16 insertions(+) 8884 8885commit 2f600affaa9ac3537013c69643878731a2f4389e 8886Author: Chris Wilson <chris@chris-wilson.co.uk> 8887AuthorDate: Sun Jan 13 11:02:55 2008 +0000 8888Commit: Chris Wilson <chris@chris-wilson.co.uk> 8889CommitDate: Sun Jan 13 11:02:55 2008 +0000 8890 8891 [cairo-gstate] Add isfinite guards to the transformation ops. 8892 8893 If we have isfinite() available use it to check that the user supplied 8894 arguments are valid. 8895 8896 src/cairo-gstate.c | 21 +++++++++++++++++++++ 8897 1 file changed, 21 insertions(+) 8898 8899commit 3fed79d1c24f07618243bb197b44a9fd106aebbc 8900Author: Chris Wilson <chris@chris-wilson.co.uk> 8901AuthorDate: Sun Jan 13 10:28:11 2008 +0000 8902Commit: Chris Wilson <chris@chris-wilson.co.uk> 8903CommitDate: Sun Jan 13 10:28:11 2008 +0000 8904 8905 [cairo-paginated-surface] Set error on surface for operations done its behalf. 8906 8907 Ensure that the error is propagated to the target surface if we fail 8908 whilst performing an operation on its behalf, for example set the size 8909 of the paginated surface. 8910 8911 src/cairo-paginated-surface.c | 5 +++-- 8912 1 file changed, 3 insertions(+), 2 deletions(-) 8913 8914commit 481b88dd6b19c267feaf05652974225e86aa8007 8915Author: Chris Wilson <chris@chris-wilson.co.uk> 8916AuthorDate: Sat Jan 12 20:35:56 2008 +0000 8917Commit: Chris Wilson <chris@chris-wilson.co.uk> 8918CommitDate: Sat Jan 12 20:44:02 2008 +0000 8919 8920 [cairo-pattern] Add an ASSERT_NOT_REACHED 8921 8922 On the default case for an unknown pattern type, add an assert that the 8923 code is never reached, and just in case upgrade the error to a fatal 8924 PATTERN_TYPE_MISMATCH. 8925 8926 src/cairo-pattern.c | 3 ++- 8927 1 file changed, 2 insertions(+), 1 deletion(-) 8928 8929commit 973d5fa8a50fbb0fb760f2e32a227a6238d074da 8930Author: Chris Wilson <chris@chris-wilson.co.uk> 8931AuthorDate: Sat Jan 12 11:04:03 2008 +0000 8932Commit: Chris Wilson <chris@chris-wilson.co.uk> 8933CommitDate: Sat Jan 12 11:04:03 2008 +0000 8934 8935 [test] Sort TESTS 8936 8937 A couple of tests were out of order, causing a bit of confusion in the 8938 user. 8939 8940 test/.gitignore | 2 +- 8941 test/Makefile.am | 6 +++--- 8942 2 files changed, 4 insertions(+), 4 deletions(-) 8943 8944commit ac98c9e572135f5f46303ce49e6a04f86efe2676 8945Author: Chris Wilson <chris@chris-wilson.co.uk> 8946AuthorDate: Sat Jan 12 10:49:48 2008 +0000 8947Commit: Chris Wilson <chris@chris-wilson.co.uk> 8948CommitDate: Sat Jan 12 10:49:48 2008 +0000 8949 8950 [test/rel-path] Check that invalid relative paths raise an error. 8951 8952 Check that NO_CURRENT_PATH is raised if a relative path op is used 8953 on a new path. 8954 8955 test/rel-path.c | 66 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 8956 1 file changed, 66 insertions(+) 8957 8958commit 6cc75cfe5b962566938189b5a7dd63135e981300 8959Author: Chris Wilson <chris@chris-wilson.co.uk> 8960AuthorDate: Sat Jan 12 10:30:15 2008 +0000 8961Commit: Chris Wilson <chris@chris-wilson.co.uk> 8962CommitDate: Sat Jan 12 10:30:15 2008 +0000 8963 8964 [cairo] Harden the text API against NULL strings. 8965 8966 Handle NULL strings in cairo_show_(text|glyph), 8967 cairo_(text|glyph)_(extents|path) without crashing. 8968 8969 src/cairo.c | 6 ++++++ 8970 1 file changed, 6 insertions(+) 8971 8972commit 864dab828b4c860668adb48ff9361e9969b5259f 8973Author: Chris Wilson <chris@chris-wilson.co.uk> 8974AuthorDate: Sat Jan 12 10:01:36 2008 +0000 8975Commit: Chris Wilson <chris@chris-wilson.co.uk> 8976CommitDate: Sat Jan 12 10:28:16 2008 +0000 8977 8978 [test/text-zero-len] Test passing NULLs to the API. 8979 8980 Check that the public API handles NULL - at the moment the code 8981 is a little inconsistent and crashes! 8982 8983 test/text-zero-len.c | 45 ++++++++++++++++++++++++++++++++++++++++++++- 8984 1 file changed, 44 insertions(+), 1 deletion(-) 8985 8986commit ae1e044e328deec7a430de3724a7ae0ad958d22d 8987Author: Chris Wilson <chris@chris-wilson.co.uk> 8988AuthorDate: Sat Jan 12 00:31:42 2008 +0000 8989Commit: Chris Wilson <chris@chris-wilson.co.uk> 8990CommitDate: Sat Jan 12 00:40:59 2008 +0000 8991 8992 [cairo-matrix] Use isfinite() to check matrix determinant. 8993 8994 The current NaN check is insufficient as it classifies inf as a valid 8995 determinant. We can improve the test by using isfinite() - but only 8996 when it is available. We use the feature test macros as being the 8997 simplest way of determining the presence of isfinite() as it may be 8998 implemented as a macro, making checking for its usability troublesome 8999 during configure. 9000 9001 src/cairo-matrix.c | 20 ++++++++++++++++++++ 9002 1 file changed, 20 insertions(+) 9003 9004commit 3610841910714f0bca07caeb606be9c69fd9d4c8 9005Author: Kouhei Sutou <kou@cozmixng.org> 9006AuthorDate: Fri Jan 11 14:36:05 2008 -0800 9007Commit: Carl Worth <cworth@cworth.org> 9008CommitDate: Fri Jan 11 14:40:06 2008 -0800 9009 9010 Fix typo in comment. 9011 9012 src/cairo-quartz-surface.c | 2 +- 9013 1 file changed, 1 insertion(+), 1 deletion(-) 9014 9015commit 0b9124069271593be390d9835fcd1527b20770e3 9016Author: Chris Wilson <chris@chris-wilson.co.uk> 9017AuthorDate: Fri Jan 11 21:55:52 2008 +0000 9018Commit: Chris Wilson <chris@chris-wilson.co.uk> 9019CommitDate: Fri Jan 11 21:58:09 2008 +0000 9020 9021 [check-plt.sh] Ensure that $MAKE is defined. 9022 9023 Copy the check from check-def.sh now that $MAKE is also used in 9024 check-plt.sh 9025 9026 src/check-plt.sh | 1 + 9027 1 file changed, 1 insertion(+) 9028 9029commit 92c744978f0c08456cf0ec8dca87abebf6a6d150 9030Author: Chris Wilson <chris@chris-wilson.co.uk> 9031AuthorDate: Fri Jan 11 21:54:58 2008 +0000 9032Commit: Chris Wilson <chris@chris-wilson.co.uk> 9033CommitDate: Fri Jan 11 21:58:09 2008 +0000 9034 9035 [Makefile.am] Tweak the flags passed to CPP. 9036 9037 Adjust the flags passed to $(CPP) to match those used in the 9038 surrounding targets (splint and sparse), which should improve their 9039 reliability. 9040 9041 src/Makefile.am | 2 +- 9042 1 file changed, 1 insertion(+), 1 deletion(-) 9043 9044commit 36f5d69a1165f81e97b50c64dde33fa19db36326 9045Author: Behdad Esfahbod <behdad@behdad.org> 9046AuthorDate: Fri Jan 11 16:48:55 2008 -0500 9047Commit: Behdad Esfahbod <behdad@behdad.org> 9048CommitDate: Fri Jan 11 16:48:55 2008 -0500 9049 9050 [src/Makefile.am] Tweak includes a bit 9051 9052 src/Makefile.am | 4 ++-- 9053 1 file changed, 2 insertions(+), 2 deletions(-) 9054 9055commit ed113ef4229e23d137b2673f233a23064f51ff24 9056Author: Chris Wilson <chris@chris-wilson.co.uk> 9057AuthorDate: Fri Jan 11 21:13:05 2008 +0000 9058Commit: Chris Wilson <chris@chris-wilson.co.uk> 9059CommitDate: Fri Jan 11 21:21:34 2008 +0000 9060 9061 [check] Move the hidden symbol check into check-{def,plt}.sh 9062 9063 Behdad, once again the arbiter of good taste, objected to the use of 9064 the dotfile within the Makefile, and suggested that one calls $MAKE to 9065 pre-process the source file from within the check scripts. 9066 9067 Doing so removes the ugly wart added to Makefile.am... 9068 9069 src/Makefile.am | 14 +++++--------- 9070 src/check-def.sh | 4 ++-- 9071 src/check-has-hidden-symbols.c | 11 +---------- 9072 src/check-plt.sh | 4 ++-- 9073 4 files changed, 10 insertions(+), 23 deletions(-) 9074 9075commit bcf0c442b91b553b226c78d254906f7127013391 9076Merge: ecb895803 8a6a0b43d 9077Author: Carl Worth <cworth@cworth.org> 9078AuthorDate: Fri Jan 11 12:30:15 2008 -0800 9079Commit: Carl Worth <cworth@cworth.org> 9080CommitDate: Fri Jan 11 12:30:15 2008 -0800 9081 9082 Merge branch 'master' of git.cairographics.org:/git/cairo into cairo 9083 9084commit ecb895803b9d2a3fd142f4a2c694ca08c5581f0e 9085Author: Carl Worth <cworth@cworth.org> 9086AuthorDate: Fri Jan 11 12:28:49 2008 -0800 9087Commit: Carl Worth <cworth@cworth.org> 9088CommitDate: Fri Jan 11 12:28:49 2008 -0800 9089 9090 Migrate glyph mask to A8 in case of mixed-format glyphs. 9091 9092 This fixes the remaining image-backend problems with bug 13479: 9093 9094 Ugly Courier New font with cairo 1.4.12 9095 https://bugs.freedesktop.org/show_bug.cgi?id=13479 9096 9097 although the xlib-backend had been fixed previously. 9098 9099 Specifically, if an A1 glyph is first encountered, then subsequent 9100 glyphs will still be rendered with antialiasing, (previously they 9101 would be rendered very poorly without antialiasing). 9102 9103 Similarly, if the first glyph encountered has component-alpha 9104 sub-pixel antialiasing and then an A1 or A8 glyph is encountered 9105 then all glyphs will rendered in A8 (grayscale antialiasing). 9106 Previously, the non-subpixel-antialiased glyphs would not appear 9107 at all. 9108 9109 src/cairo-scaled-font.c | 50 ++++++++++++++++++++++++++++++++++++++++++++++--- 9110 1 file changed, 47 insertions(+), 3 deletions(-) 9111 9112commit 8a6a0b43dc249acb0ad8cb9c6f16360294bcfdc3 9113Author: Chris Wilson <chris@chris-wilson.co.uk> 9114AuthorDate: Fri Jan 11 18:47:19 2008 +0000 9115Commit: Chris Wilson <chris@chris-wilson.co.uk> 9116CommitDate: Fri Jan 11 20:27:23 2008 +0000 9117 9118 [check] Replace compiled symbol visibility checker with shell script. 9119 9120 Behdad Esfahbod objected to the execution of a compiled program to check 9121 symbol visibility as it makes cross-compilation more difficult. 9122 9123 Instead of executing the program, this method conditionally exports 9124 a variable if cairo uses symbol hiding and scans the executable for 9125 that symbol in a similar manner to check-def.sh. This has the slight 9126 advantage of using the Makefile for performing the compilation, rather 9127 than attempting to invoke $(CPP) from a shell script within the test 9128 environment. 9129 9130 src/Makefile.am | 12 ++++++++---- 9131 src/cairo-compiler-private.h | 5 ++--- 9132 src/check-def.sh | 11 ++++++----- 9133 src/check-has-hidden-symbols.c | 12 ++++++++++++ 9134 src/check-plt.sh | 14 ++++++++------ 9135 src/compiler-supports-visibility.c | 6 ------ 9136 6 files changed, 36 insertions(+), 24 deletions(-) 9137 9138commit 982f65081f987e2c44f05942411c031bd32fd968 9139Author: Chris Wilson <chris@chris-wilson.co.uk> 9140AuthorDate: Fri Jan 11 17:25:33 2008 +0000 9141Commit: Chris Wilson <chris@chris-wilson.co.uk> 9142CommitDate: Fri Jan 11 17:25:33 2008 +0000 9143 9144 [cairoint.h] Compile time check for a font backend. 9145 9146 Add a paranoid check that at least one font backend is available - this 9147 should have been already caught by configure, but it should help if a new 9148 font backend is ever added. 9149 9150 src/cairoint.h | 5 +++++ 9151 1 file changed, 5 insertions(+) 9152 9153commit 6d3ed950ea075ff2a5a569365b46c3cfc4152787 9154Author: Chris Wilson <chris@chris-wilson.co.uk> 9155AuthorDate: Fri Jan 11 16:16:20 2008 +0000 9156Commit: Chris Wilson <chris@chris-wilson.co.uk> 9157CommitDate: Fri Jan 11 16:16:20 2008 +0000 9158 9159 [check] Skip def/plt tests if the compiler doesn't support symbol hiding. 9160 9161 Compile a trivial program such that it reports whether cairo is hiding 9162 its internal symbols and skip the tests that depend upon it. 9163 9164 This prevents false errors, such as bug 12726, where the user is 9165 presented with a scary make check failure. 9166 9167 src/Makefile.am | 5 +++++ 9168 src/cairo-compiler-private.h | 3 +++ 9169 src/check-def.sh | 5 +++++ 9170 src/check-plt.sh | 5 +++++ 9171 src/compiler-supports-visibility.c | 6 ++++++ 9172 5 files changed, 24 insertions(+) 9173 9174commit be146f02e0e220aa70217bf348beef301a56f898 9175Author: Chris Wilson <chris@chris-wilson.co.uk> 9176AuthorDate: Fri Jan 11 15:28:52 2008 +0000 9177Commit: Chris Wilson <chris@chris-wilson.co.uk> 9178CommitDate: Fri Jan 11 15:45:22 2008 +0000 9179 9180 [Makefile.am] Update cairo.def after the set of enabled features is modified. 9181 9182 Bug 13342 corresponds with a rebuild of cairo after removing 9183 --enable-glitz from the configure line. Under these circumstances, 9184 the remaining installable headers are not modified and therefore 9185 cairo.def is not rebuilt and still expects to find a reference to 9186 cairo_glitz_surface_create. The solution is to rebuild cairo.def after 9187 any modification to the 'public' headers (installable or otherwise). 9188 9189 src/Makefile.am | 2 +- 9190 1 file changed, 1 insertion(+), 1 deletion(-) 9191 9192commit c26784dbb6d3c90f9e3fa722efa0f9f4fd59bd4c 9193Author: Chris Wilson <chris@chris-wilson.co.uk> 9194AuthorDate: Fri Jan 11 14:04:56 2008 +0000 9195Commit: Chris Wilson <chris@chris-wilson.co.uk> 9196CommitDate: Fri Jan 11 14:05:46 2008 +0000 9197 9198 [configure] Version bump for $(EXEEXT) 9199 9200 Adrian Johnson found that adding $(EXEEXT) to TESTS broke the build 9201 under mingw. After a bit of investigation, the issue was tracked down 9202 to being caused by automake-1.7. Bump the autotools version 9203 requirements to avoid the breakage. 9204 9205 configure.in | 6 ++++-- 9206 1 file changed, 4 insertions(+), 2 deletions(-) 9207 9208commit 2574cc35b3478e7333bd4953e90a3edc5f7c4f16 9209Author: Adrian Johnson <ajohnson@redneon.com> 9210AuthorDate: Fri Jan 11 22:07:26 2008 +1030 9211Commit: Adrian Johnson <ajohnson@redneon.com> 9212CommitDate: Fri Jan 11 22:07:26 2008 +1030 9213 9214 win32-printing: Do not clip and paint with an empty path 9215 9216 For non solid patterns _fill and _show_glyphs sets a clip 9217 path then paints the pattern. Previously if the path is empty 9218 SelectClipPath did not set clip. This was probably the cause 9219 of bug 13657 where the entire page was black. 9220 9221 Fix this by not painting anything if the path is empty. 9222 9223 src/cairo-win32-printing-surface.c | 8 ++++++-- 9224 src/cairo-win32-private.h | 1 + 9225 2 files changed, 7 insertions(+), 2 deletions(-) 9226 9227commit 7ef4caaf11379cb50a08520f729552553de60660 9228Author: Adrian Johnson <ajohnson@redneon.com> 9229AuthorDate: Fri Jan 11 22:06:51 2008 +1030 9230Commit: Adrian Johnson <ajohnson@redneon.com> 9231CommitDate: Fri Jan 11 22:06:51 2008 +1030 9232 9233 win32-printing: use fill instead of clip for non win32 fonts 9234 9235 Non Windows fonts are drawn by getting the outline path, setting 9236 this is the clip path, and painting the source pattern. For 9237 solid colors this can avoid the clip and just do a fill. 9238 9239 src/cairo-win32-printing-surface.c | 14 ++++++++++++-- 9240 1 file changed, 12 insertions(+), 2 deletions(-) 9241 9242commit ef56a6fd93d6192ee1f1948d11c75878aea40f4e 9243Author: Adrian Johnson <ajohnson@redneon.com> 9244AuthorDate: Fri Jan 11 22:05:54 2008 +1030 9245Commit: Adrian Johnson <ajohnson@redneon.com> 9246CommitDate: Fri Jan 11 22:05:54 2008 +1030 9247 9248 PS: Don't use language level check in EPS 9249 9250 As 'showpage' and 'quit' can not be used in EPS. 9251 9252 src/cairo-ps-surface.c | 16 ++++++++-------- 9253 1 file changed, 8 insertions(+), 8 deletions(-) 9254 9255commit b703199525ca02274ef5a8474cdae0cb70705964 9256Author: Adrian Johnson <ajohnson@redneon.com> 9257AuthorDate: Fri Jan 11 22:05:13 2008 +1030 9258Commit: Adrian Johnson <ajohnson@redneon.com> 9259CommitDate: Fri Jan 11 22:05:13 2008 +1030 9260 9261 Type1-subset: Font name may be NULL 9262 9263 If the FreeType face->family_name is NULL use a CairoFont-x-y name. 9264 9265 src/cairo-type1-subset.c | 37 ++++++++++++++++++++++++------------- 9266 1 file changed, 24 insertions(+), 13 deletions(-) 9267 9268commit 6418a8be8719c9a969d9ec1f8624c841db9d2b90 9269Author: Chris Wilson <chris@chris-wilson.co.uk> 9270AuthorDate: Thu Jan 10 21:35:05 2008 +0000 9271Commit: Chris Wilson <chris@chris-wilson.co.uk> 9272CommitDate: Thu Jan 10 22:14:31 2008 +0000 9273 9274 [test/.valgrind-suppressions] Update for amd64/sid 9275 9276 Update the valgrind suppressions for the libz and Xrm spam. 9277 9278 test/.valgrind-suppressions | 20 +++++++++++++++++--- 9279 1 file changed, 17 insertions(+), 3 deletions(-) 9280 9281commit 2e5f278da11369073eefeeedff7211bacb31ace1 9282Author: Chris Wilson <chris@chris-wilson.co.uk> 9283AuthorDate: Thu Jan 10 22:11:42 2008 +0000 9284Commit: Chris Wilson <chris@chris-wilson.co.uk> 9285CommitDate: Thu Jan 10 22:11:42 2008 +0000 9286 9287 [cairo-pattern] Free the copied pattern on error. 9288 9289 Free the locally allocated pattern if the copy fails. 9290 9291 src/cairo-pattern.c | 10 +++++++++- 9292 1 file changed, 9 insertions(+), 1 deletion(-) 9293 9294commit db246f2fa22920a996a32f11233228e9af1d1abb 9295Author: Chris Wilson <chris@chris-wilson.co.uk> 9296AuthorDate: Thu Jan 10 21:32:47 2008 +0000 9297Commit: Chris Wilson <chris@chris-wilson.co.uk> 9298CommitDate: Thu Jan 10 21:32:47 2008 +0000 9299 9300 [cairo-traps] Typo caught by valgrind. 9301 9302 ==3429== Conditional jump or move depends on uninitialised value(s) 9303 ==3429== at 0x4E3FB0F: _cairo_box_round_to_rectangle (cairo-fixed-private.h:196) 9304 ==3429== by 0x4E34B29: _cairo_clip_intersect_to_rectangle (cairo-clip.c:162) 9305 ==3429== by 0x4E31943: cairo_push_group_with_content (cairo.c:495) 9306 ==3429== by 0x403044: draw (clip-zero.c:48) 9307 ==3429== by 0x404221: cairo_test_expecting (cairo-test.c:377) 9308 ==3429== by 0x64701C3: (below main) (libc-start.c:222) 9309 9310 Caused by setting extents->p2.y to zero twice. 9311 9312 src/cairo-traps.c | 2 +- 9313 1 file changed, 1 insertion(+), 1 deletion(-) 9314 9315commit 10f6ef98f645d9f9f54d88fcf18683771258d36f 9316Author: Chris Wilson <chris@chris-wilson.co.uk> 9317AuthorDate: Thu Jan 10 17:50:45 2008 +0000 9318Commit: Chris Wilson <chris@chris-wilson.co.uk> 9319CommitDate: Thu Jan 10 17:59:33 2008 +0000 9320 9321 [gitignore] Add mkinstalldirs. 9322 9323 Ignore another autoconf utility script. 9324 9325 .gitignore | 1 + 9326 1 file changed, 1 insertion(+) 9327 9328commit da769b53e89b1f1ff91886a12a388e5fadec47bb 9329Author: Chris Wilson <chris@chris-wilson.co.uk> 9330AuthorDate: Thu Jan 10 17:23:56 2008 +0000 9331Commit: Chris Wilson <chris@chris-wilson.co.uk> 9332CommitDate: Thu Jan 10 17:59:22 2008 +0000 9333 9334 [configure.in] Fixup usage of _CHECK_FUNCS_WITH_FLAGS within PKG_CHECK_MODULE. 9335 9336 An unwanted side-effect of the recent fix for the paranoid extra check 9337 for a usable library was that it broke the logic for the absence of the 9338 module. 9339 9340 configure.in | 11 ++++++----- 9341 1 file changed, 6 insertions(+), 5 deletions(-) 9342 9343commit 409e91b576ad992b41c66c952931c4a3e652dbf9 9344Author: Chris Wilson <chris@chris-wilson.co.uk> 9345AuthorDate: Thu Jan 10 15:53:54 2008 +0000 9346Commit: Chris Wilson <chris@chris-wilson.co.uk> 9347CommitDate: Thu Jan 10 17:11:04 2008 +0000 9348 9349 [cairo-pdf-surface] Review error handling. 9350 9351 Ensure all errors are propagated back to the caller with locally 9352 allocated resources destroy as required. 9353 9354 src/cairo-pdf-surface.c | 261 ++++++++++++++++++++++++++++++++---------------- 9355 1 file changed, 177 insertions(+), 84 deletions(-) 9356 9357commit 6134600988a6b5fcbc72f7897bfc83b37949b677 9358Author: Chris Wilson <chris@chris-wilson.co.uk> 9359AuthorDate: Tue Jan 8 14:14:33 2008 +0000 9360Commit: Chris Wilson <chris@chris-wilson.co.uk> 9361CommitDate: Thu Jan 10 17:10:52 2008 +0000 9362 9363 [cairo-pdf-surface] Skip emitting the font subset if not among resources. 9364 9365 Do not emit the font_subset if we did not successfully add it to the list 9366 of font resources - can only happen after an error 9367 9368 src/cairo-pdf-surface.c | 35 +++++++++++++++++++++++------------ 9369 1 file changed, 23 insertions(+), 12 deletions(-) 9370 9371commit 755a4bb51b458fbc059b6306e371d9dc1c906b04 9372Author: Chris Wilson <chris@chris-wilson.co.uk> 9373AuthorDate: Thu Jan 10 15:30:42 2008 +0000 9374Commit: Chris Wilson <chris@chris-wilson.co.uk> 9375CommitDate: Thu Jan 10 17:10:41 2008 +0000 9376 9377 [test] Win32 printing backend testing depends upon ghostscript 9378 9379 Using the Win32 printing backend requires ghostscript, so only enable 9380 those tests if we detect 'gs' during configure. 9381 9382 boilerplate/cairo-boilerplate.c | 2 ++ 9383 configure.in | 17 +++++++++++++++++ 9384 2 files changed, 19 insertions(+) 9385 9386commit 02b0743458655f44ffc4d429b4ac355df42071f1 9387Author: Chris Wilson <chris@chris-wilson.co.uk> 9388AuthorDate: Thu Jan 10 15:22:16 2008 +0000 9389Commit: Chris Wilson <chris@chris-wilson.co.uk> 9390CommitDate: Thu Jan 10 17:10:30 2008 +0000 9391 9392 [cairo-pattern] Rearrange CAIRO_MUTEX_INITIALIZE. 9393 9394 test/pattern-get-type exposes a bug whereby we try to acquire the 9395 _cairo_pattern_solid_pattern_cache_lock before initializing the 9396 mutexes. To fix this move the CAIRO_MUTEX_INITIALIZE() from the 9397 depths of _cairo_pattern_init() and perform it at the public entry 9398 points. 9399 9400 src/cairo-pattern.c | 14 ++++++++++++-- 9401 1 file changed, 12 insertions(+), 2 deletions(-) 9402 9403commit cbe8d3855efd1254089c1c855c337df326ea52d7 9404Author: Chris Wilson <chris@chris-wilson.co.uk> 9405AuthorDate: Thu Jan 10 15:14:15 2008 +0000 9406Commit: Chris Wilson <chris@chris-wilson.co.uk> 9407CommitDate: Thu Jan 10 17:10:12 2008 +0000 9408 9409 [test] Fixup make check for mingw 9410 9411 Add EXEEXT to TESTS so that mingw builds the correct target. 9412 9413 perf/Makefile.am | 8 +- 9414 test/Makefile.am | 313 ++++++++++++++++++++++++++++--------------------------- 9415 2 files changed, 161 insertions(+), 160 deletions(-) 9416 9417commit 9ae4b219e1c5b7a8c139b004a97d86a1ce1d408c 9418Author: Chris Wilson <chris@chris-wilson.co.uk> 9419AuthorDate: Thu Jan 10 14:47:16 2008 +0000 9420Commit: Chris Wilson <chris@chris-wilson.co.uk> 9421CommitDate: Thu Jan 10 14:47:16 2008 +0000 9422 9423 [test/solid-pattern-cache-stress] Check for drand48(). 9424 9425 Apply an alternative rand() function if drand48() is not available for 9426 the platform. 9427 9428 configure.in | 2 +- 9429 test/solid-pattern-cache-stress.c | 12 ++++++++++-- 9430 2 files changed, 11 insertions(+), 3 deletions(-) 9431 9432commit 648289c639618cc31394f889f6e329ddcaca41ee 9433Author: Chris Wilson <chris@chris-wilson.co.uk> 9434AuthorDate: Thu Jan 10 14:36:57 2008 +0000 9435Commit: Chris Wilson <chris@chris-wilson.co.uk> 9436CommitDate: Thu Jan 10 14:36:57 2008 +0000 9437 9438 [configure.in] Add paranoid double checking for (svg|pdf)2png 9439 9440 Due to my incomplete cross-build environment, configure detects the 9441 presence of rsvg and poppler, but they cannot be used. To make my life 9442 easier, add a check similar to that used for fontconfig to ensure the 9443 libraries are usable before compiling the optional test utilites. 9444 9445 configure.in | 6 ++++-- 9446 1 file changed, 4 insertions(+), 2 deletions(-) 9447 9448commit 909c57ce158e41bf2761f82b2678dc1f390051d2 9449Author: Chris Wilson <chris@chris-wilson.co.uk> 9450AuthorDate: Thu Jan 10 12:45:58 2008 +0000 9451Commit: Chris Wilson <chris@chris-wilson.co.uk> 9452CommitDate: Thu Jan 10 14:22:38 2008 +0000 9453 9454 [cairo-pdf-operators] Be consistent in error checks. 9455 9456 Consistently check the output status at the end of each function - 9457 helps with early error detection and even improves test code coverage! 9458 9459 src/cairo-pdf-operators.c | 39 ++++++++++++++++++++------------------- 9460 1 file changed, 20 insertions(+), 19 deletions(-) 9461 9462commit 4ffb0a80b3aa9e54804082a24c58db0d2527073d 9463Author: Chris Wilson <chris@chris-wilson.co.uk> 9464AuthorDate: Thu Jan 10 12:51:07 2008 +0000 9465Commit: Chris Wilson <chris@chris-wilson.co.uk> 9466CommitDate: Thu Jan 10 14:22:28 2008 +0000 9467 9468 [cairo-paginated-surface] Call the abstract cairo_surface_show_page (). 9469 9470 Use the generic surface layer cairo_surface_show_page() instead of 9471 directly calling cairo_paginated_surface_show_page(), as the higher 9472 level performs more error checking. 9473 9474 src/cairo-paginated-surface.c | 2 +- 9475 1 file changed, 1 insertion(+), 1 deletion(-) 9476 9477commit 9d49c4b10e636c0868d15c50cb1d2a724000fc07 9478Author: Chris Wilson <chris@chris-wilson.co.uk> 9479AuthorDate: Thu Jan 10 14:18:25 2008 +0000 9480Commit: Chris Wilson <chris@chris-wilson.co.uk> 9481CommitDate: Thu Jan 10 14:18:25 2008 +0000 9482 9483 [configure] Print version info in summary. 9484 9485 Add the cairo version to the configure summary. 9486 9487 configure.in | 3 ++- 9488 1 file changed, 2 insertions(+), 1 deletion(-) 9489 9490commit ea4dec08f7c62ad3c3e81aa06ce0dd5a08936c45 9491Author: Chris Wilson <chris@chris-wilson.co.uk> 9492AuthorDate: Thu Jan 10 13:50:42 2008 +0000 9493Commit: Chris Wilson <chris@chris-wilson.co.uk> 9494CommitDate: Thu Jan 10 13:50:42 2008 +0000 9495 9496 [configure.in] Fixup fontconfig check. 9497 9498 Correct the check for FcFini() so that the result is actually used. 9499 9500 configure.in | 4 ++-- 9501 1 file changed, 2 insertions(+), 2 deletions(-) 9502 9503commit f4e7e7d6b4bb8e96dc8aef1ac673b8d64f65634c 9504Author: Chris Wilson <chris@chris-wilson.co.uk> 9505AuthorDate: Thu Jan 10 13:08:23 2008 +0000 9506Commit: Chris Wilson <chris@chris-wilson.co.uk> 9507CommitDate: Thu Jan 10 13:14:28 2008 +0000 9508 9509 [cairo-path-bounds] _cairo_path_fixed_bounds() should never fail. 9510 9511 _cairo_path_fixed_bounds() should never fail so change return type 9512 to void and update caller. 9513 9514 src/cairo-analysis-surface.c | 12 ++++-------- 9515 src/cairo-path-bounds.c | 8 ++++---- 9516 2 files changed, 8 insertions(+), 12 deletions(-) 9517 9518commit 5fad969317186520ebbe09f3767907fb3bfd6164 9519Author: Chris Wilson <chris@chris-wilson.co.uk> 9520AuthorDate: Mon Jan 7 10:03:51 2008 +0000 9521Commit: Chris Wilson <chris@chris-wilson.co.uk> 9522CommitDate: Thu Jan 10 13:11:09 2008 +0000 9523 9524 [cairo-ft-font] Destroy unscaled font ref on error. 9525 9526 Destroy the local reference taken to the unscaled font if we encounter 9527 an error whilst creating the derived scaled font. 9528 9529 src/cairo-ft-font.c | 2 ++ 9530 1 file changed, 2 insertions(+) 9531 9532commit 3b1411167c7d9fd94536c69de54dacfaf820e916 9533Author: Chris Wilson <chris@chris-wilson.co.uk> 9534AuthorDate: Thu Jan 10 12:55:08 2008 +0000 9535Commit: Chris Wilson <chris@chris-wilson.co.uk> 9536CommitDate: Thu Jan 10 12:57:36 2008 +0000 9537 9538 [headers] Brute force fixup of including cairoint.h from boilerplate. 9539 9540 More the majority of the typedefs from cairoint.h to 9541 cairo-types-private.h and fixup cairo-pdf-operators-private.h to 9542 avoid including cairoint.h. 9543 9544 A better approach would seem to be to rationalise cairoint.h so that it 9545 only provides the symbol aliasing, moving the types and functions to 9546 more appropriate private headers. However, this fixes the immediate 9547 problem of running make check! 9548 9549 src/cairo-pdf-operators-private.h | 3 +- 9550 src/cairo-types-private.h | 169 +++++++++++++++++++++++++++++++++++++ 9551 src/cairoint.h | 170 +------------------------------------- 9552 3 files changed, 172 insertions(+), 170 deletions(-) 9553 9554commit 40142d4bf4184dcae21c85d909d33ddaa4822636 9555Author: Adrian Johnson <ajohnson@redneon.com> 9556AuthorDate: Thu Jan 10 02:57:30 2008 +1030 9557Commit: Adrian Johnson <ajohnson@redneon.com> 9558CommitDate: Thu Jan 10 02:57:30 2008 +1030 9559 9560 Set the PS level to to minimum required 9561 9562 A problem with the previous commit for checking the PS level is that 9563 with the default PS level of 3 it prevents PS files from printing on 9564 Level 2 printers even if no Level 3 operators are used. 9565 9566 As the PS header is created after the page content has been generated, 9567 it is easy to check the PS Level actually required and set this in the 9568 header and PS level check code. 9569 9570 src/cairo-ps-surface-private.h | 1 + 9571 src/cairo-ps-surface.c | 10 +++++++--- 9572 2 files changed, 8 insertions(+), 3 deletions(-) 9573 9574commit 9bccc968466e6b83ceccb76680d5f54912424e8e 9575Author: Adrian Johnson <ajohnson@redneon.com> 9576AuthorDate: Thu Jan 10 02:34:02 2008 +1030 9577Commit: Adrian Johnson <ajohnson@redneon.com> 9578CommitDate: Thu Jan 10 02:34:02 2008 +1030 9579 9580 Add PS Level check to PS output 9581 9582 http://bugzilla.mozilla.org/show_bug.cgi?id=406376 9583 9584 reported problems with cairo PostScipt output printing black boxes 9585 instead of images. This was found to caused by printing Level 3 9586 PostScript to a Level 2 printer. 9587 9588 Add some PostScript code to to the cairo PS prolog to check the 9589 language level of the printer. If the printer can not print the job, a 9590 message stating the required language level is printed and the job is 9591 aborted. 9592 9593 src/cairo-ps-surface.c | 16 ++++++++++++---- 9594 1 file changed, 12 insertions(+), 4 deletions(-) 9595 9596commit f20a1a40c3f6d95b4dc89ae4198ad81b7092450c 9597Author: Adrian Johnson <ajohnson@redneon.com> 9598AuthorDate: Wed Jan 9 01:20:34 2008 +1030 9599Commit: Adrian Johnson <ajohnson@redneon.com> 9600CommitDate: Wed Jan 9 01:20:34 2008 +1030 9601 9602 Fix MSVC 2008 compiler warnings - bug 13698 9603 9604 src/cairo-win32-surface.c | 4 ++-- 9605 1 file changed, 2 insertions(+), 2 deletions(-) 9606 9607commit 47bebc8f1d0b6524f8d1eff1fa3f981f1e4c4c33 9608Author: Adrian Johnson <ajohnson@redneon.com> 9609AuthorDate: Wed Jan 9 01:18:44 2008 +1030 9610Commit: Adrian Johnson <ajohnson@redneon.com> 9611CommitDate: Wed Jan 9 01:18:44 2008 +1030 9612 9613 Fix win32-font problems with Type 1 fonts 9614 9615 This should fix the problems reported in 9616 9617 http://lists.cairographics.org/archives/cairo/2007-November/012172.html 9618 9619 The problem is that GetCharacterPlacement() used in 9620 _win32_scaled_font_text_to_glyphs returns utf16 instead of glyph 9621 indices when Type 1 fonts are used. 9622 9623 This has been fixed by using GetGlyphIndices instead of 9624 GetCharacterPlacement if the font is a Type 1. 9625 9626 _win32_scaled_font_map_glyphs_to_unicode has been fixed work with Type 1 9627 glyph indices. It now uses GetFontUnicodeRanges and GetGlyphIndices 9628 to do the reverse lookup. 9629 9630 src/cairo-win32-font.c | 261 +++++++++++++++++++++++++++++++++++++++++-------- 9631 1 file changed, 218 insertions(+), 43 deletions(-) 9632 9633commit 25f24e79f84e0c04a8c6944cc6e018e9eb2df997 9634Author: Adrian Johnson <ajohnson@redneon.com> 9635AuthorDate: Mon Jan 7 21:19:35 2008 +1030 9636Commit: Adrian Johnson <ajohnson@redneon.com> 9637CommitDate: Mon Jan 7 21:19:35 2008 +1030 9638 9639 PDF: Update the PDF page structure comment 9640 9641 src/cairo-pdf-surface.c | 68 ++++++------------------------------------------- 9642 1 file changed, 8 insertions(+), 60 deletions(-) 9643 9644commit 21f842f0dfd5dd3cc1fd3b56db034fc4e209adaa 9645Author: Adrian Johnson <ajohnson@redneon.com> 9646AuthorDate: Mon Jan 7 21:17:26 2008 +1030 9647Commit: Adrian Johnson <ajohnson@redneon.com> 9648CommitDate: Mon Jan 7 21:17:26 2008 +1030 9649 9650 PDF: Remove copy_page 9651 9652 Now that the content stream is no longer split into multiple streams 9653 it is not possible to implement a copy_page function that shares the 9654 common content between pages. 9655 9656 Remove this function so the paginated surface will rewrite the 9657 content from the meta surface. 9658 9659 src/cairo-pdf-surface.c | 15 +-------------- 9660 1 file changed, 1 insertion(+), 14 deletions(-) 9661 9662commit e2adb921f8b7619410db971d1524cbeab2dd6102 9663Author: Adrian Johnson <ajohnson@redneon.com> 9664AuthorDate: Mon Jan 7 21:15:18 2008 +1030 9665Commit: Adrian Johnson <ajohnson@redneon.com> 9666CommitDate: Mon Jan 7 21:15:18 2008 +1030 9667 9668 PDF: Put each fallback image in a separate group 9669 9670 Each fallback image needs to be in a separate group in the knockout 9671 group. Otherwise transparent edges of adjacent fallback images will 9672 composite with each other creating visible seams between the images. 9673 9674 src/cairo-pdf-surface-private.h | 2 +- 9675 src/cairo-pdf-surface.c | 26 ++++++++++++++++++++------ 9676 2 files changed, 21 insertions(+), 7 deletions(-) 9677 9678commit d6a84302a07d2b7e67584029fdb7a882ad246a09 9679Author: Adrian Johnson <ajohnson@redneon.com> 9680AuthorDate: Mon Jan 7 21:11:46 2008 +1030 9681Commit: Adrian Johnson <ajohnson@redneon.com> 9682CommitDate: Mon Jan 7 21:11:46 2008 +1030 9683 9684 Fix analysis of transformed meta surfaces 9685 9686 src/cairo-analysis-surface.c | 11 ++++++++--- 9687 1 file changed, 8 insertions(+), 3 deletions(-) 9688 9689commit 3c725d50db43b848b4ad8f35bcabd5b1d0395924 9690Author: Adrian Johnson <ajohnson@redneon.com> 9691AuthorDate: Mon Jan 7 21:09:04 2008 +1030 9692Commit: Adrian Johnson <ajohnson@redneon.com> 9693CommitDate: Mon Jan 7 21:09:04 2008 +1030 9694 9695 PDF: Make _SOURCE operator work inside meta surface patterns 9696 9697 src/cairo-pdf-surface.c | 16 +++++++++++++--- 9698 1 file changed, 13 insertions(+), 3 deletions(-) 9699 9700commit 6d6b74ac4ce3a9bcab45c338fc31e5a83823cde6 9701Author: Adrian Johnson <ajohnson@redneon.com> 9702AuthorDate: Mon Jan 7 21:08:09 2008 +1030 9703Commit: Adrian Johnson <ajohnson@redneon.com> 9704CommitDate: Mon Jan 7 21:08:09 2008 +1030 9705 9706 PDF: Support _OPERATOR_SOURCE when nothing under the operation 9707 9708 CAIRO_OPERATOR_SOURCE operations on the PDF backend are now natively 9709 supported when there is nothing already underneath the operation. 9710 9711 src/cairo-pdf-surface.c | 64 ++++++++++++++++++++++--------------------------- 9712 1 file changed, 29 insertions(+), 35 deletions(-) 9713 9714commit e195cb551caa40f309127ac7a39e4a17653966c8 9715Author: Adrian Johnson <ajohnson@redneon.com> 9716AuthorDate: Mon Jan 7 21:05:36 2008 +1030 9717Commit: Adrian Johnson <ajohnson@redneon.com> 9718CommitDate: Mon Jan 7 21:05:36 2008 +1030 9719 9720 Add FALLBACK mode to paginated surface 9721 9722 The PDF surface needs to know when the fallback images start so it can 9723 close off the content stream and create a knockout transparency group 9724 for the fallback images. Currently it does this by looking for 9725 operations with CAIRO_OPERATOR_SOURCE. PDF returns unsupported for 9726 _SOURCE during the analysis phase so _SOURCE will never appear during 9727 native operations. However this prevents the PDF surface from 9728 supporting _SOURCE operations that can be natively supported. For 9729 example a _SOURCE operation with nothing painting under it can be 9730 converted to _OVER and natively supported. 9731 9732 A third mode, CAIRO_PAGINATED_MODE_FALLBACK, has been added. The 9733 paginated surface will set this mode before it paints finer-grained 9734 fallback images. 9735 9736 src/cairo-paginated-private.h | 22 +++++++++++++--------- 9737 src/cairo-paginated-surface.c | 4 +++- 9738 src/cairo-pdf-surface.c | 2 +- 9739 src/cairo-types-private.h | 3 ++- 9740 4 files changed, 19 insertions(+), 12 deletions(-) 9741 9742commit d2a5d1ace64cb9efabcb065e7fc28667dd8f779d 9743Author: Adrian Johnson <ajohnson@redneon.com> 9744AuthorDate: Mon Jan 7 21:04:06 2008 +1030 9745Commit: Adrian Johnson <ajohnson@redneon.com> 9746CommitDate: Mon Jan 7 21:04:06 2008 +1030 9747 9748 PDF: Remove the remaining code for splitting the content 9749 9750 across multiple streams. This fixes the problem reported here 9751 9752 http://lists.cairographics.org/archives/cairo/2007-December/012197.html 9753 9754 src/cairo-pdf-surface-private.h | 20 +- 9755 src/cairo-pdf-surface.c | 429 +++++++++++----------------------------- 9756 2 files changed, 123 insertions(+), 326 deletions(-) 9757 9758commit 099810b6c39cc6b5529f740282b64185cf56c8d7 9759Author: Adrian Johnson <ajohnson@redneon.com> 9760AuthorDate: Mon Jan 7 20:59:22 2008 +1030 9761Commit: Adrian Johnson <ajohnson@redneon.com> 9762CommitDate: Mon Jan 7 20:59:22 2008 +1030 9763 9764 PDF: Perform all clipping in the content stream 9765 9766 Previously this was done in a separate group. Now that the PDF backend 9767 has been re-organized to not interrupt the content stream the clipping 9768 can be done in the same stream. 9769 9770 src/cairo-pdf-surface.c | 104 ++++++------------------------------------------ 9771 1 file changed, 12 insertions(+), 92 deletions(-) 9772 9773commit 83630b1c70b24035b333ccfbbda8b67bd5fdd32e 9774Author: Adrian Johnson <ajohnson@redneon.com> 9775AuthorDate: Mon Jan 7 20:55:56 2008 +1030 9776Commit: Adrian Johnson <ajohnson@redneon.com> 9777CommitDate: Mon Jan 7 20:55:56 2008 +1030 9778 9779 PDF: Emit all patterns after content stream 9780 9781 To fix this performance issue 9782 9783 http://lists.cairographics.org/archives/cairo/2007-December/012197.html 9784 9785 the PDF surface needs to avoid starting and stopping the content 9786 stream every time it emits a pattern. This patch makes the PDF surface 9787 store a list of all patterns used while the content stream is written 9788 out then write out all the patterns after the content stream is 9789 closed. 9790 9791 src/cairo-pdf-surface-private.h | 48 +- 9792 src/cairo-pdf-surface.c | 1128 ++++++++++++++++++++++----------------- 9793 2 files changed, 687 insertions(+), 489 deletions(-) 9794 9795commit b4e0864b960887fd71de85d514cb3e855c276080 9796Author: Adrian Johnson <ajohnson@redneon.com> 9797AuthorDate: Mon Jan 7 20:42:15 2008 +1030 9798Commit: Adrian Johnson <ajohnson@redneon.com> 9799CommitDate: Mon Jan 7 20:42:15 2008 +1030 9800 9801 Use _cairo_pattern_create_copy() in cairo-surface.c 9802 9803 Use _cairo_pattern_create_copy()/cairo_pattern_destroy() instead of 9804 _cairo_pattern_init_copy()/_cairo_pattern_fini() so the PDF backend 9805 can reference the patterns and destroy them later. 9806 9807 src/cairo-surface.c | 84 ++++++++++++++++++++++++++--------------------------- 9808 1 file changed, 42 insertions(+), 42 deletions(-) 9809 9810commit 6ead8feaf3f87e12e686092386dddcc2faa62b7f 9811Author: Adrian Johnson <ajohnson@redneon.com> 9812AuthorDate: Mon Jan 7 20:41:43 2008 +1030 9813Commit: Adrian Johnson <ajohnson@redneon.com> 9814CommitDate: Mon Jan 7 20:41:43 2008 +1030 9815 9816 Add _cairo_pattern_create_copy() 9817 9818 src/cairo-pattern.c | 28 ++++++++++++++++++++++++++++ 9819 src/cairoint.h | 4 ++++ 9820 2 files changed, 32 insertions(+) 9821 9822commit 26c6159b1e2f5481fb18f5f06f01063002dd6c98 9823Author: Adrian Johnson <ajohnson@redneon.com> 9824AuthorDate: Mon Jan 7 20:36:32 2008 +1030 9825Commit: Adrian Johnson <ajohnson@redneon.com> 9826CommitDate: Mon Jan 7 20:36:32 2008 +1030 9827 9828 Move the PDF drawing operators into cairo-pdf-operators.c 9829 9830 By defining PostScript functions the same as the PDF drawing 9831 operators, this code can be shared by both the PDF and PS backends. 9832 9833 src/Makefile.am | 1 + 9834 src/cairo-pdf-operators-private.h | 106 ++++++++ 9835 src/cairo-pdf-operators.c | 531 ++++++++++++++++++++++++++++++++++++++ 9836 src/cairo-pdf-surface-private.h | 3 +- 9837 src/cairo-pdf-surface.c | 442 ++++--------------------------- 9838 5 files changed, 687 insertions(+), 396 deletions(-) 9839 9840commit a0e0aae32dfe44cca088736d10d208f328d50a34 9841Author: Adrian Johnson <ajohnson@redneon.com> 9842AuthorDate: Mon Jan 7 20:34:55 2008 +1030 9843Commit: Adrian Johnson <ajohnson@redneon.com> 9844CommitDate: Mon Jan 7 20:34:55 2008 +1030 9845 9846 PDF: Remove the Type 3 outline glyph code 9847 9848 This code is never used because outline glyphs that go through the 9849 fallback path are always embedded with Type 1 fallback. The only fonts 9850 that are embedded as Type 3 are bitmap fonts. 9851 9852 src/cairo-pdf-surface.c | 90 ++++--------------------------------------------- 9853 1 file changed, 6 insertions(+), 84 deletions(-) 9854 9855commit 5b3f6405d8045d73d31d7e2e30db08e81e9e2360 9856Author: Adrian Johnson <ajohnson@redneon.com> 9857AuthorDate: Sun Jan 6 16:15:32 2008 +1030 9858Commit: Adrian Johnson <ajohnson@redneon.com> 9859CommitDate: Sun Jan 6 16:15:32 2008 +1030 9860 9861 PDF: Fix gradient-zero-stops test failure 9862 9863 src/cairo-pdf-surface.c | 24 ++++++++++++++++++++++++ 9864 1 file changed, 24 insertions(+) 9865 9866commit fb7407c9c4548fc033164790759c4e480b9d8fa0 9867Author: Adrian Johnson <ajohnson@redneon.com> 9868AuthorDate: Sun Jan 6 15:58:46 2008 +1030 9869Commit: Adrian Johnson <ajohnson@redneon.com> 9870CommitDate: Sun Jan 6 15:58:46 2008 +1030 9871 9872 PS: Fix gradient-zero-stops test failure 9873 9874 src/cairo-ps-surface.c | 18 ++++++++++++++++++ 9875 1 file changed, 18 insertions(+) 9876 9877commit f440d894e668994721248dc6c95a936a839870db 9878Author: Chris Wilson <chris@chris-wilson.co.uk> 9879AuthorDate: Sat Jan 5 21:20:45 2008 +0000 9880Commit: Chris Wilson <chris@chris-wilson.co.uk> 9881CommitDate: Sat Jan 5 21:25:30 2008 +0000 9882 9883 Check errno for appropriate error return. 9884 9885 After using fopen() and friends check the global errno to determine the 9886 most appropriate error return - especially important when running 9887 memfault, where correct reporting of NO_MEMORY errors is required. 9888 9889 src/cairo-output-stream.c | 12 ++++++++++-- 9890 src/cairo-png.c | 10 ++++++++-- 9891 src/cairo-ps-surface.c | 11 ++++++++++- 9892 3 files changed, 28 insertions(+), 5 deletions(-) 9893 9894commit 68a441e582c6c887e65800302906ddd35cb0291e 9895Author: Chris Wilson <chris@chris-wilson.co.uk> 9896AuthorDate: Sat Jan 5 19:34:42 2008 +0000 9897Commit: Chris Wilson <chris@chris-wilson.co.uk> 9898CommitDate: Sat Jan 5 21:23:58 2008 +0000 9899 9900 [cairo-analysis-surface] Return early if the traps is empty. 9901 9902 If the mask is empty, there is nothing to do, so return an early SUCCESS. 9903 9904 src/cairo-analysis-surface.c | 8 ++++---- 9905 1 file changed, 4 insertions(+), 4 deletions(-) 9906 9907commit 481fd3b4c8d3972ce21399f81b2021a57ed58f00 9908Author: Chris Wilson <chris@chris-wilson.co.uk> 9909AuthorDate: Sat Jan 5 19:33:21 2008 +0000 9910Commit: Chris Wilson <chris@chris-wilson.co.uk> 9911CommitDate: Sat Jan 5 21:23:46 2008 +0000 9912 9913 [cairo-traps] Return zero extents if it contains no traps. 9914 9915 Previously, _cairo_traps_extents () returned the extents 9916 p1={INT_MAX, INT_MAX} p2={INT_MIN, INT_MIN} for an empty traps leading 9917 to integer overflow when computing the width using p2-p1 and causing 9918 further overflows within libpixman. [For example this caused the 9919 allocation of massive regions with test/mask and the PS backend.] 9920 9921 src/cairo-gstate.c | 6 +++--- 9922 src/cairo-traps.c | 6 +++++- 9923 2 files changed, 8 insertions(+), 4 deletions(-) 9924 9925commit be126b6842e979dbcb306b2f9f41a2114a149b9a 9926Author: Chris Wilson <chris@chris-wilson.co.uk> 9927AuthorDate: Sat Jan 5 19:22:57 2008 +0000 9928Commit: Chris Wilson <chris@chris-wilson.co.uk> 9929CommitDate: Sat Jan 5 21:23:35 2008 +0000 9930 9931 [cairo-analysis-surface] Check for an empty transformed bbox. 9932 9933 After transforming the bbox, check that it has not been projected into 9934 an empty box. 9935 9936 src/cairo-analysis-surface.c | 10 ++++++++-- 9937 1 file changed, 8 insertions(+), 2 deletions(-) 9938 9939commit d9461733af36f2960525a9b33accf500447f5c64 9940Author: Chris Wilson <chris@chris-wilson.co.uk> 9941AuthorDate: Fri Jan 4 16:43:54 2008 +0000 9942Commit: Chris Wilson <chris@chris-wilson.co.uk> 9943CommitDate: Sat Jan 5 21:23:13 2008 +0000 9944 9945 [cairo-ps-surface] Use ctime_r when available. 9946 9947 Use the thread-safe (and non-allocating) ctime_r() instead of ctime() 9948 if supported by the platform. 9949 9950 configure.in | 2 +- 9951 src/cairo-ps-surface.c | 7 ++++++- 9952 2 files changed, 7 insertions(+), 2 deletions(-) 9953 9954commit 7cf9a6e4e39b18f4967afdb7c3c71eca5f4ba8c7 9955Author: Keith Packard <keithp@keithp.com> 9956AuthorDate: Thu Jan 3 18:37:53 2008 -0800 9957Commit: Carl Worth <cworth@cworth.org> 9958CommitDate: Fri Jan 4 17:47:31 2008 -0800 9959 9960 Directly check the miter corner to detect wild miters. 9961 9962 The original test for wild miters would only work with a square transform 9963 (and, in fact, the original code required an identity transform). Instead of 9964 fixing that, I replaced it with a more obvious test which makes sure the 9965 miter corner lies between the two faces and not out in space somewhere. 9966 9967 src/cairo-path-stroke.c | 139 ++++++++++++++++++++---------------------------- 9968 1 file changed, 57 insertions(+), 82 deletions(-) 9969 9970commit 552cf1dbd32eb5933bc93bb3c1ef0fca9d4066aa 9971Author: Vladimir Vukicevic <vladimir@pobox.com> 9972AuthorDate: Fri Jan 4 16:19:14 2008 -0800 9973Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 9974CommitDate: Fri Jan 4 16:19:14 2008 -0800 9975 9976 Fix cairo_surface_fallback_snapshot's use of release_source_image 9977 9978 &image_extra was being passed instead of image_extra to release; the 9979 bug only manifested itself when the particular backend did something 9980 with image_extra. 9981 9982 src/cairo-surface-fallback.c | 4 ++-- 9983 1 file changed, 2 insertions(+), 2 deletions(-) 9984 9985commit 81e029edda8c0404c6f0bd1b618e77fb55777c64 9986Author: Keith Packard <keithp@keithp.com> 9987AuthorDate: Thu Jan 3 18:17:24 2008 -0800 9988Commit: Keith Packard <keithp@keithp.com> 9989CommitDate: Thu Jan 3 18:24:24 2008 -0800 9990 9991 Add new miter-precision test. Checks miter joins at many scales. 9992 9993 This demonstrates an error in cairo where miter joins are replaced with 9994 bevels at high scale factors due to a test added to eliminate wild miters 9995 drawn when the line faces are nearly parallel. 9996 9997 test/.gitignore | 1 + 9998 test/Makefile.am | 1 + 9999 test/miter-precision-ref.png | Bin 0 -> 931 bytes 10000 test/miter-precision.c | 80 +++++++++++++++++++++++++++++++++++++++++++ 10001 4 files changed, 82 insertions(+) 10002 10003commit b796a2f69d043f6884f42befdc156cb1c527d217 10004Author: Chris Wilson <ickle@cube.(none)> 10005AuthorDate: Thu Jan 3 23:00:27 2008 +0000 10006Commit: Chris Wilson <ickle@cube.(none)> 10007CommitDate: Thu Jan 3 23:00:27 2008 +0000 10008 10009 [cairo] Update CAIRO_STATUS_LAST_STATUS 10010 10011 A couple of new errors have been added without updating the LAST_STATUS 10012 value... 10013 10014 src/cairo.c | 2 +- 10015 src/cairo.h | 1 + 10016 2 files changed, 2 insertions(+), 1 deletion(-) 10017 10018commit c67d99787cb75cd4d773871675b4201b3bf3d5bf 10019Author: Chris Wilson <chris@chris-wilson.co.uk> 10020AuthorDate: Thu Jan 3 17:33:33 2008 +0000 10021Commit: Chris Wilson <chris@chris-wilson.co.uk> 10022CommitDate: Thu Jan 3 18:01:43 2008 +0000 10023 10024 [test/surface-pattern-big-scaled-down] Kill the surface leaks. 10025 10026 Destroy the surface and pattern after use. 10027 10028 test/Makefile.am | 1 + 10029 test/surface-pattern-big-scale-down-ref.png | Bin 0 -> 226 bytes 10030 test/surface-pattern-big-scale-down.c | 11 ++++++++--- 10031 3 files changed, 9 insertions(+), 3 deletions(-) 10032 10033commit 6a7a07adf98729fc054ea9e7727c5b3c099ae7ee 10034Author: Chris Wilson <chris@chris-wilson.co.uk> 10035AuthorDate: Thu Jan 3 16:37:17 2008 +0000 10036Commit: Chris Wilson <chris@chris-wilson.co.uk> 10037CommitDate: Thu Jan 3 17:35:06 2008 +0000 10038 10039 [test] Update distribution list of ref images. 10040 10041 Add missing *-ps-rgb24-ref.png images, and a couple of tests to .gitignore. 10042 10043 test/.gitignore | 3 +++ 10044 test/Makefile.am | 34 ++++++++++++++++++++++++++++++++++ 10045 2 files changed, 37 insertions(+) 10046 10047commit 399f7c24e31a802e623cf9d63311f3ed7f3a3659 10048Author: Chris Wilson <chris@chris-wilson.co.uk> 10049AuthorDate: Tue Oct 9 23:24:35 2007 +0100 10050Commit: Chris Wilson <chris@chris-wilson.co.uk> 10051CommitDate: Thu Jan 3 17:34:58 2008 +0000 10052 10053 [cairo-pdf-surface] Continue to close streams even after error. 10054 10055 Do not return after encountering the first error whilst closing streams, 10056 but continue to close any auxiliary streams before finally reporting the 10057 error. Also during finalize check that we have closed any streams that 10058 may have been left open after encountering an error. 10059 10060 src/cairo-pdf-surface.c | 54 ++++++++++++++++++++++++++++++++++++++++--------- 10061 1 file changed, 44 insertions(+), 10 deletions(-) 10062 10063commit 42e77c1077f389357faab214d7ad8bc18709cb31 10064Author: Chris Wilson <chris@chris-wilson.co.uk> 10065AuthorDate: Tue Oct 9 16:59:45 2007 +0100 10066Commit: Chris Wilson <chris@chris-wilson.co.uk> 10067CommitDate: Thu Jan 3 17:34:47 2008 +0000 10068 10069 [cairo-pdf-surface] Destroy closed streams. 10070 10071 Destroy the streams when closing groups in order to free the associated 10072 resources. 10073 10074 src/cairo-pdf-surface.c | 4 ++-- 10075 1 file changed, 2 insertions(+), 2 deletions(-) 10076 10077commit 42bfe370f8df800419c1c7acbec1a7e51077d462 10078Author: Chris Wilson <chris@chris-wilson.co.uk> 10079AuthorDate: Thu Jan 3 14:46:40 2008 +0000 10080Commit: Chris Wilson <chris@chris-wilson.co.uk> 10081CommitDate: Thu Jan 3 17:34:38 2008 +0000 10082 10083 [cairo-pdf-surface] Propagate error from emit_glyph(). 10084 10085 Propagate the error and return early rather than setting the error on 10086 the surface and continuing. 10087 10088 src/cairo-pdf-surface.c | 31 ++++++++++++++++++++----------- 10089 1 file changed, 20 insertions(+), 11 deletions(-) 10090 10091commit 2a8e80f59ef61cff30d643bdd6ad2306d6068c5c 10092Author: Chris Wilson <chris@chris-wilson.co.uk> 10093AuthorDate: Thu Jan 3 10:34:37 2008 +0000 10094Commit: Chris Wilson <chris@chris-wilson.co.uk> 10095CommitDate: Thu Jan 3 11:03:17 2008 +0000 10096 10097 [cairo-gstate] Rearrange invalid-matrix guards. 10098 10099 Test for an invalid matrix before use. Whilst this has no effect on the 10100 result, an INVALID_MATRIX error will be raised on the context, placing 10101 the guards first makes the code obviously safe and avoids manipulation 10102 of invalid matrices. 10103 10104 src/cairo-gstate.c | 15 ++++++++------- 10105 1 file changed, 8 insertions(+), 7 deletions(-) 10106 10107commit e89cc8fa15ac418175e58ee41359a923bbc26f73 10108Author: Chris Wilson <chris@chris-wilson.co.uk> 10109AuthorDate: Tue Dec 18 09:23:29 2007 +0000 10110Commit: Chris Wilson <chris@chris-wilson.co.uk> 10111CommitDate: Thu Jan 3 11:03:17 2008 +0000 10112 10113 [cairo-scaled-fonts-subsets] Memleak and error reporting. 10114 10115 Fix leaks of strings and hash table from 10116 _cairo_scaled_font_subset_create_glyph_names(). 10117 10118 Whilst we are in the vicinity, review the error handling. 10119 10120 src/cairo-ft-font.c | 8 ++-- 10121 src/cairo-pdf-surface.c | 12 +++++- 10122 src/cairo-scaled-font-subsets.c | 94 +++++++++++++++++++++-------------------- 10123 src/cairo-win32-font.c | 6 ++- 10124 src/cairoint.h | 2 +- 10125 5 files changed, 68 insertions(+), 54 deletions(-) 10126 10127commit 51f37995c9cb5efa22a36a0199e24a684fa61279 10128Author: Chris Wilson <chris@chris-wilson.co.uk> 10129AuthorDate: Wed Jan 2 11:06:03 2008 +0000 10130Commit: Chris Wilson <chris@chris-wilson.co.uk> 10131CommitDate: Thu Jan 3 11:03:17 2008 +0000 10132 10133 Remove cairo_private from *.c files. 10134 10135 The cairo_private markup is only required in the headers, so cleanup the 10136 couple of remaining occurrences in the source files. 10137 10138 src/cairo-clip.c | 2 +- 10139 src/cairo-scaled-font-subsets.c | 2 +- 10140 2 files changed, 2 insertions(+), 2 deletions(-) 10141 10142commit 48fd65cdb50cd1fa0a6ada5edf7ef307586eb5fd 10143Author: Chris Wilson <chris@chris-wilson.co.uk> 10144AuthorDate: Wed Jan 2 10:59:44 2008 +0000 10145Commit: Chris Wilson <chris@chris-wilson.co.uk> 10146CommitDate: Thu Jan 3 11:03:17 2008 +0000 10147 10148 [cairo-svg-surface] Propagate the original error status. 10149 10150 Return the error status from the paginated surface instead of 10151 hard-coding a bare CAIRO_STATUS_NO_MEMORY. 10152 10153 src/cairo-svg-surface.c | 2 +- 10154 1 file changed, 1 insertion(+), 1 deletion(-) 10155 10156commit ba392488cb926c2697b8ccfa7337da1e66d78baa 10157Author: Chris Wilson <chris@chris-wilson.co.uk> 10158AuthorDate: Wed Jan 2 10:58:13 2008 +0000 10159Commit: Chris Wilson <chris@chris-wilson.co.uk> 10160CommitDate: Thu Jan 3 11:03:17 2008 +0000 10161 10162 [cairo-ps-surface] Wrap error site with _cairo_error(). 10163 10164 Wrap the original allocation error site with _cairo_error(). 10165 10166 src/cairo-ps-surface.c | 2 +- 10167 1 file changed, 1 insertion(+), 1 deletion(-) 10168 10169commit 4442acc96601db21a788e088040cb1f2fccdf400 10170Author: Chris Wilson <chris@chris-wilson.co.uk> 10171AuthorDate: Wed Jan 2 10:54:30 2008 +0000 10172Commit: Chris Wilson <chris@chris-wilson.co.uk> 10173CommitDate: Thu Jan 3 11:03:17 2008 +0000 10174 10175 [cairo-atsui-font] Minor _cairo_error() tidy. 10176 10177 Inline the use of _cairo_error() for slightly improved readability. 10178 10179 src/cairo-atsui-font.c | 3 +-- 10180 1 file changed, 1 insertion(+), 2 deletions(-) 10181 10182commit 2a0267639a39cacada89c59451faa8051041e436 10183Author: Chris Wilson <chris@chris-wilson.co.uk> 10184AuthorDate: Wed Jan 2 10:52:28 2008 +0000 10185Commit: Chris Wilson <chris@chris-wilson.co.uk> 10186CommitDate: Thu Jan 3 11:03:17 2008 +0000 10187 10188 [cairo-ps-surface] Wrap error site with _cairo_error(). 10189 10190 Markup the original error site for CAIRO_STATUS_TEMP_FILE_ERROR with 10191 _cairo_error(). 10192 10193 src/cairo-ps-surface.c | 4 ++-- 10194 1 file changed, 2 insertions(+), 2 deletions(-) 10195 10196commit cc5bd4725564d0add79c764b35acff78e43d0c00 10197Author: Chris Wilson <chris@chris-wilson.co.uk> 10198AuthorDate: Wed Jan 2 10:50:55 2008 +0000 10199Commit: Chris Wilson <chris@chris-wilson.co.uk> 10200CommitDate: Thu Jan 3 11:03:17 2008 +0000 10201 10202 [cairo-svg-surface] Wrap a couple of error sites with _cairo_error(). 10203 10204 Wrap a couple of bare CAIRO_STATUS_NO_MEMORY with a call to 10205 _cairo_error(). 10206 10207 src/cairo-svg-surface.c | 4 ++-- 10208 1 file changed, 2 insertions(+), 2 deletions(-) 10209 10210commit daf77ed3cb0d24f35ebb43760d6ba6de639d4636 10211Author: Chris Wilson <chris@chris-wilson.co.uk> 10212AuthorDate: Wed Jan 2 10:41:06 2008 +0000 10213Commit: Chris Wilson <chris@chris-wilson.co.uk> 10214CommitDate: Thu Jan 3 11:03:17 2008 +0000 10215 10216 [cairo-type1-subset] Remove the unused return value. 10217 10218 Nobody actually used the index returned by 10219 cairo_type1_font_subset_use_glyph(), so remove it. 10220 10221 src/cairo-type1-subset.c | 9 +++------ 10222 1 file changed, 3 insertions(+), 6 deletions(-) 10223 10224commit fd8bf678536877d9b016264d40a101a1fd2d9e25 10225Author: Chris Wilson <chris@chris-wilson.co.uk> 10226AuthorDate: Wed Jan 2 10:37:58 2008 +0000 10227Commit: Chris Wilson <chris@chris-wilson.co.uk> 10228CommitDate: Thu Jan 3 11:03:17 2008 +0000 10229 10230 [cairo-truetype-subset] Propagate error from failing to allocate padding. 10231 10232 Before filling the padding, check that we have successfully allocated 10233 the buffer - otherwise propagate the failure. 10234 10235 src/cairo-truetype-subset.c | 51 ++++++++++++++++++++++++++++----------------- 10236 1 file changed, 32 insertions(+), 19 deletions(-) 10237 10238commit ad0a2524ffdc9cc949d11de3aa51c429f13e12b7 10239Author: Claudio Ciccani <klan@directfb.org> 10240AuthorDate: Wed Jan 2 15:09:58 2008 +0100 10241Commit: Claudio Ciccani <klan@directfb.org> 10242CommitDate: Wed Jan 2 15:09:58 2008 +0100 10243 10244 [cairo-directfb] Optimize blend functions in fill_rectangles(), too. 10245 10246 src/cairo-directfb-surface.c | 25 ++++++++++++++++++++++++- 10247 1 file changed, 24 insertions(+), 1 deletion(-) 10248 10249commit 060f384310e887f7f431a98e847b8a36fc303a0c 10250Author: Adrian Johnson <ajohnson@redneon.com> 10251AuthorDate: Sat Dec 29 00:26:11 2007 +1030 10252Commit: Adrian Johnson <ajohnson@redneon.com> 10253CommitDate: Sat Dec 29 00:26:11 2007 +1030 10254 10255 Fix PS/PDF meta surface patterns 10256 10257 This was failing with more than one level of push/pop group. The 10258 problem was that the meta surface replay in PS/PDF emit_meta_surface 10259 was replaying all the meta surface commands insteads of only the 10260 natively supported commands. The analysis surface has also been 10261 changed to replay meta surface patterns back to the one analysis 10262 surface instead of creating a separate analysis surface for each 10263 pattern. The analysis surface now transforms bounding boxes with the 10264 meta surface pattern matrix so that fallback regions are correctly 10265 tracked. 10266 10267 src/cairo-analysis-surface.c | 44 +++++++++++++++++++++++++++++++++---------- 10268 src/cairo-meta-surface.c | 18 +----------------- 10269 src/cairo-paginated-surface.c | 1 + 10270 src/cairo-pdf-surface.c | 4 +++- 10271 src/cairo-ps-surface.c | 20 +++++++++++++------- 10272 5 files changed, 52 insertions(+), 35 deletions(-) 10273 10274commit 4fa46e3caaffb54f4419887418d8d0ea39816092 10275Author: Adrian Johnson <ajohnson@redneon.com> 10276AuthorDate: Sat Dec 29 00:15:03 2007 +1030 10277Commit: Adrian Johnson <ajohnson@redneon.com> 10278CommitDate: Sat Dec 29 00:25:34 2007 +1030 10279 10280 Implement a win32 tmpfile() function 10281 10282 Bug report and proposed patch at: 10283 http://lists.cairographics.org/archives/cairo/2007-December/012529.html 10284 10285 On Windows the tmpfile() function creates the file in the root 10286 directory. This will fail if the user does not have write access to the 10287 root directory. 10288 10289 Implement _cairo_win32_tmpfile() that is #defined as tmpfile() on 10290 Windows. This function uses GetTempPath() and GetTempFileName() to 10291 create the temporary file. CreateFile() is used to open the file so 10292 the DELETE_ON_CLOSE flag can be set. 10293 10294 src/Makefile.am | 3 +- 10295 src/cairo-win32.c | 98 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 10296 src/cairoint.h | 6 ++++ 10297 3 files changed, 106 insertions(+), 1 deletion(-) 10298 10299commit dcacad932334bbcc3cf6b1df3b37412db5017116 10300Author: Adrian Johnson <ajohnson@redneon.com> 10301AuthorDate: Sat Dec 29 00:13:24 2007 +1030 10302Commit: Adrian Johnson <ajohnson@redneon.com> 10303CommitDate: Sat Dec 29 00:13:24 2007 +1030 10304 10305 PS: Use _TEMP_FILE_ERROR for temp file errors 10306 10307 src/cairo-ps-surface.c | 18 +++++++++++++++--- 10308 1 file changed, 15 insertions(+), 3 deletions(-) 10309 10310commit bd44d114a6d4271a4a15cf7d70a996e73a86751c 10311Author: Adrian Johnson <ajohnson@redneon.com> 10312AuthorDate: Sat Dec 29 00:12:44 2007 +1030 10313Commit: Adrian Johnson <ajohnson@redneon.com> 10314CommitDate: Sat Dec 29 00:12:44 2007 +1030 10315 10316 Add CAIRO_STATUS_TEMP_FILE_ERROR 10317 10318 src/cairo.c | 2 ++ 10319 src/cairo.h | 4 +++- 10320 2 files changed, 5 insertions(+), 1 deletion(-) 10321 10322commit e82b0f46b2ea6ebcee5ea5cc09e9ab5c6cc383fb 10323Author: Chris Wilson <chris@chris-wilson.co.uk> 10324AuthorDate: Wed Nov 14 00:45:24 2007 +0000 10325Commit: Chris Wilson <chris@chris-wilson.co.uk> 10326CommitDate: Thu Dec 27 12:55:50 2007 +0000 10327 10328 [cairo-path-fixed] Consolidate cairo_path_buf_t when copying. 10329 10330 When copying the cairo_path_fixed_t, consolidate the list of 10331 dynamically allocated cairo_path_buf_t into a single buffer. 10332 10333 src/cairo-path-fixed.c | 33 +++++++++++++++++++++++++-------- 10334 1 file changed, 25 insertions(+), 8 deletions(-) 10335 10336commit e0187ad49b754c4024f1999155ed248616028582 10337Author: Chris Wilson <chris@chris-wilson.co.uk> 10338AuthorDate: Thu Dec 27 12:46:13 2007 +0000 10339Commit: Chris Wilson <chris@chris-wilson.co.uk> 10340CommitDate: Thu Dec 27 12:46:24 2007 +0000 10341 10342 [cairo-path-fixed] Ensure the points array is naturally aligned, take 2. 10343 10344 By enlarging buf_size to ensure the correct alignment of the points 10345 array with the cairo_path_buf_t block, we can efficiently use the 10346 padding bytes to store more ops. 10347 10348 src/cairo-path-fixed.c | 12 ++++++------ 10349 1 file changed, 6 insertions(+), 6 deletions(-) 10350 10351commit d8169b8cef041b4dbcea44e050df28659f4846aa 10352Author: Chris Wilson <chris@chris-wilson.co.uk> 10353AuthorDate: Thu Dec 27 10:45:25 2007 +0000 10354Commit: Chris Wilson <chris@chris-wilson.co.uk> 10355CommitDate: Thu Dec 27 10:45:25 2007 +0000 10356 10357 [cairo-path-fixed] Ensure the array of points is correctly aligned. 10358 10359 In http://bugs.gentoo.org/show_bug.cgi?id=203282, it was identified that 10360 the cairo_path_buf was causing unaligned accesses (thus generating SIGBUS 10361 on architectures like the SPARC) to its array of points. As we manually 10362 allocate a single block of memory for the cairo_path_buf_t and its 10363 arrays, we must also manually ensure correct alignment - as opposed to 10364 cairo_path_buf_fixed_t for which the compiler automatically aligns the 10365 embedded arrays. 10366 10367 src/cairo-path-fixed.c | 9 ++++++--- 10368 1 file changed, 6 insertions(+), 3 deletions(-) 10369 10370commit 7f69c2588b33d415f544c2ee24d85c83a8d7cd69 10371Author: Chris Wilson <chris@chris-wilson.co.uk> 10372AuthorDate: Thu Dec 20 21:15:41 2007 +0000 10373Commit: Chris Wilson <chris@chris-wilson.co.uk> 10374CommitDate: Thu Dec 20 21:30:22 2007 +0000 10375 10376 [cairo-ps-surface] Missing status checks. 10377 10378 Check and propagate the error status. 10379 10380 src/cairo-ps-surface.c | 53 +++++++++++++++++++++++++++++++------------------- 10381 1 file changed, 33 insertions(+), 20 deletions(-) 10382 10383commit 51523aec8177224d3f64f55ca2e61c64fe801a56 10384Author: Chris Wilson <chris@chris-wilson.co.uk> 10385AuthorDate: Thu Dec 20 21:15:08 2007 +0000 10386Commit: Chris Wilson <chris@chris-wilson.co.uk> 10387CommitDate: Thu Dec 20 21:22:03 2007 +0000 10388 10389 [cairo-meta-surface] Remove redundant _cairo_error(). 10390 10391 Remove the _cairo_error() from the return, as it has already been called 10392 immediately after the error was first detected. 10393 10394 src/cairo-meta-surface.c | 2 +- 10395 1 file changed, 1 insertion(+), 1 deletion(-) 10396 10397commit 146484e3122958212d4a69fff97d392451dcbeaa 10398Author: Chris Wilson <chris@chris-wilson.co.uk> 10399AuthorDate: Thu Dec 20 21:13:31 2007 +0000 10400Commit: Chris Wilson <chris@chris-wilson.co.uk> 10401CommitDate: Thu Dec 20 21:21:54 2007 +0000 10402 10403 [valgrind] Update zlib suppressions. 10404 10405 Match the zlib library as found on hardy+dbgsym. 10406 10407 test/.valgrind-suppressions | 37 +++++++++++++++++++++++++++++++++++++ 10408 1 file changed, 37 insertions(+) 10409 10410commit d4d3873bccea82bb3ae20bfcbab3158fa5df41b3 10411Author: Chris Wilson <chris@chris-wilson.co.uk> 10412AuthorDate: Thu Dec 20 18:21:46 2007 +0000 10413Commit: Chris Wilson <chris@chris-wilson.co.uk> 10414CommitDate: Thu Dec 20 21:21:46 2007 +0000 10415 10416 [cairo] Correct the documentation for cairo_get_group_target(). 10417 10418 cairo_get_group_target() can never return NULL, but will always 10419 return the current destination surface. 10420 10421 src/cairo.c | 20 +++++++++++--------- 10422 1 file changed, 11 insertions(+), 9 deletions(-) 10423 10424commit 3bf06c336629d9a485fdb150058897e5a6a30b45 10425Author: Chris Wilson <chris@chris-wilson.co.uk> 10426AuthorDate: Thu Dec 20 18:15:48 2007 +0000 10427Commit: Chris Wilson <chris@chris-wilson.co.uk> 10428CommitDate: Thu Dec 20 21:21:32 2007 +0000 10429 10430 [test/*] Create new surfaces using the group target. 10431 10432 cairo_get_target() returns the original surface passed to 10433 cairo_create(), and not the current destination as required when 10434 testing drawing to the same surface using multiple contexts. 10435 10436 For completeness we also use the group target when creating similar 10437 surfaces within the tests (to check that similar surfaces of similar 10438 surfaces also work). 10439 10440 perf/cairo-perf-cover.c | 4 ++-- 10441 test/cairo-test.c | 2 +- 10442 test/clip-nesting.c | 2 +- 10443 test/clip-operator.c | 2 +- 10444 test/clip-zero.c | 2 +- 10445 test/device-offset-positive.c | 2 +- 10446 test/device-offset.c | 2 +- 10447 test/get-clip.c | 2 +- 10448 test/get-path-extents.c | 2 +- 10449 test/invalid-matrix.c | 2 +- 10450 test/mask.c | 4 ++-- 10451 test/meta-surface-pattern.c | 2 +- 10452 test/operator-clear.c | 2 +- 10453 test/operator-source.c | 4 ++-- 10454 test/pixman-rotate.c | 2 +- 10455 test/self-copy.c | 2 +- 10456 test/source-clip-scale.c | 2 +- 10457 test/source-clip.c | 2 +- 10458 test/svg-clip.c | 2 +- 10459 test/unbounded-operator.c | 2 +- 10460 20 files changed, 23 insertions(+), 23 deletions(-) 10461 10462commit 643834e7aa3e90678276453439017359ef942c9e 10463Author: Chris Wilson <chris@chris-wilson.co.uk> 10464AuthorDate: Thu Dec 20 17:51:48 2007 +0000 10465Commit: Chris Wilson <chris@chris-wilson.co.uk> 10466CommitDate: Thu Dec 20 17:51:56 2007 +0000 10467 10468 [cairo-surface] Return UNSUPPORTED for acquire_(dest|source)_image. 10469 10470 If the backend does not support fallbacks ie backend->acquire_dest_image 10471 or backend->acquire_source_image is NULL, then return 10472 CAIRO_INT_STATUS_UNSUPPORTED rather than attempt to jump to the NULL 10473 hooks. 10474 10475 src/cairo-surface.c | 8 +++++++- 10476 1 file changed, 7 insertions(+), 1 deletion(-) 10477 10478commit 14454e12d8df606ed4b79c6e7cda4071b00ee581 10479Author: Chris Wilson <chris@chris-wilson.co.uk> 10480AuthorDate: Thu Dec 20 17:49:06 2007 +0000 10481Commit: Chris Wilson <chris@chris-wilson.co.uk> 10482CommitDate: Thu Dec 20 17:51:56 2007 +0000 10483 10484 [cairo-test] Wrap test function with cairo_save/restore(). 10485 10486 Restore the context to the original state before blitting the 10487 group surface in order to remove any residual state such as a clip path. 10488 10489 test/cairo-test.c | 2 ++ 10490 1 file changed, 2 insertions(+) 10491 10492commit d0119a5aa24a8b426ec64bb2eaa205b7f08ae58a 10493Author: Behdad Esfahbod <behdad@behdad.org> 10494AuthorDate: Thu Dec 20 12:30:35 2007 -0500 10495Commit: Behdad Esfahbod <behdad@behdad.org> 10496CommitDate: Thu Dec 20 12:30:35 2007 -0500 10497 10498 [cairo-unicode] Don't compile _cairo_utf8_to_utf16 on Linux 10499 10500 The _cairo_utf8_to_utf16() is only used in win32 and atsui font backends. 10501 Don't build it if none of those two are available. 10502 10503 src/cairo-unicode.c | 2 ++ 10504 src/cairoint.h | 5 +++++ 10505 2 files changed, 7 insertions(+) 10506 10507commit 281b11aef14f04b12639028e2a76bbdc7a1a32bf 10508Author: Chris Wilson <chris@chris-wilson.co.uk> 10509AuthorDate: Thu Dec 20 17:11:03 2007 +0000 10510Commit: Chris Wilson <chris@chris-wilson.co.uk> 10511CommitDate: Thu Dec 20 17:12:08 2007 +0000 10512 10513 [cairo-test] Use CAIRO_OPERATOR_SOURCE when painting the group surface. 10514 10515 To correctly copy a surface onto the destination irrespective of its 10516 content requires the SOURCE operator. Forgetting to do so here causes 10517 uninitialized pixels to be mixed into the result and the failure of 10518 many tests for the similar surface. Oops... 10519 10520 test/cairo-test.c | 1 + 10521 1 file changed, 1 insertion(+) 10522 10523commit ed3fccec01257a7c52694150cda9ea1059c33585 10524Author: Chris Wilson <chris@chris-wilson.co.uk> 10525AuthorDate: Mon Dec 17 22:37:31 2007 +0000 10526Commit: Chris Wilson <chris@chris-wilson.co.uk> 10527CommitDate: Thu Dec 20 14:13:12 2007 +0000 10528 10529 [pdiff] Avoid the memleak for small surfaces. 10530 10531 Allocate the arrays after the guard against small surfaces to avoid 10532 leaking them. 10533 10534 test/pdiff/pdiff.c | 40 +++++++++++++++++++++++++++------------- 10535 1 file changed, 27 insertions(+), 13 deletions(-) 10536 10537commit df938a515bd59138421b6ab4419966805d027b52 10538Author: Chris Wilson <chris@chris-wilson.co.uk> 10539AuthorDate: Mon Dec 17 21:39:25 2007 +0000 10540Commit: Chris Wilson <chris@chris-wilson.co.uk> 10541CommitDate: Thu Dec 20 14:13:12 2007 +0000 10542 10543 [cairo-path-bounds] Check for the empty path. 10544 10545 Avoid returning uninitialized variables if we're asked to find the 10546 bounds of an empty path - in which case we just return a rectangle 10547 of zero width and height similar to the empty clip region. 10548 10549 src/cairo-path-bounds.c | 18 ++++++++---------- 10550 1 file changed, 8 insertions(+), 10 deletions(-) 10551 10552commit c2adfb4052f72e1e6e6d283de3428b5453dac537 10553Author: Jim Meyering <jim@meyering.net> 10554AuthorDate: Sat Dec 15 16:42:25 2007 +0100 10555Commit: Carl Worth <cworth@cworth.org> 10556CommitDate: Wed Dec 19 11:09:47 2007 -0800 10557 10558 Don't leak memory upon failed realloc. 10559 10560 * cairo-glitz-surface.c (_cairo_glitz_surface_composite_trapezoids): 10561 10562 Signed-off-by: Jim Meyering <meyering@redhat.com> 10563 10564 src/cairo-glitz-surface.c | 6 ++++-- 10565 1 file changed, 4 insertions(+), 2 deletions(-) 10566 10567commit 45951345983f100e935af2fe2f5397d64c195f98 10568Author: Behdad Esfahbod <behdad@behdad.org> 10569AuthorDate: Tue Dec 18 16:00:21 2007 -0500 10570Commit: Behdad Esfahbod <behdad@behdad.org> 10571CommitDate: Tue Dec 18 16:00:21 2007 -0500 10572 10573 [directfb] Fix header include order to include cairoint.h first 10574 10575 src/cairo-directfb-surface.c | 5 ++--- 10576 1 file changed, 2 insertions(+), 3 deletions(-) 10577 10578commit 18f4f02f723cd005c159c8a0044dd385d551f022 10579Author: Nis Martensen <nis.martensen@web.de> 10580AuthorDate: Tue Dec 18 15:59:19 2007 -0500 10581Commit: Behdad Esfahbod <behdad@behdad.org> 10582CommitDate: Tue Dec 18 15:59:19 2007 -0500 10583 10584 [src/check-cairoint.sh] Fix typo in shell script 10585 10586 src/check-cairoint.sh | 2 +- 10587 1 file changed, 1 insertion(+), 1 deletion(-) 10588 10589commit 8343d6cc2a5e9198e1205e431de018f74107d9d8 10590Author: Chris Wilson <chris@chris-wilson.co.uk> 10591AuthorDate: Mon Dec 17 13:42:07 2007 +0000 10592Commit: Chris Wilson <chris@chris-wilson.co.uk> 10593CommitDate: Mon Dec 17 13:45:01 2007 +0000 10594 10595 Replace various uses of CAIRO_STACK_BUF_SIZE with a single macro. 10596 10597 In http://bugs.freedesktop.org/show_bug.cgi?id=13699, Pavel Vozenilek 10598 reports a duplicate define for computing the appropriate length for an 10599 on-stack array. The macro in question, and a few other places, was 10600 performing CAIRO_STACK_BUF_SIZE/sizeof(stack[0]) so we can simplify 10601 them slightly by using a common macro. 10602 10603 src/cairo-bentley-ottmann.c | 2 +- 10604 src/cairo-gstate.c | 10 ++++------ 10605 src/cairo-image-surface.c | 12 ++---------- 10606 src/cairo-region.c | 4 +--- 10607 src/cairo-surface.c | 2 +- 10608 src/cairo-traps.c | 4 +--- 10609 src/cairo-xlib-surface.c | 7 ++----- 10610 src/cairoint.h | 2 ++ 10611 8 files changed, 14 insertions(+), 29 deletions(-) 10612 10613commit 627a8b4a2f2824f156893382561f563d0aa9e90d 10614Author: Benjamin Otte <otte@gnome.org> 10615AuthorDate: Mon Dec 17 12:42:14 2007 +0100 10616Commit: Benjamin Otte <otte@gnome.org> 10617CommitDate: Mon Dec 17 12:42:14 2007 +0100 10618 10619 [directfb] replace u32 with uint32_t 10620 10621 This fix makes it compile for me again 10622 10623 src/cairo-directfb-surface.c | 6 +++--- 10624 1 file changed, 3 insertions(+), 3 deletions(-) 10625 10626commit 9637ffc62fab1b42ceb764d1b42e70654e0cbe2b 10627Author: Behdad Esfahbod <behdad@behdad.org> 10628AuthorDate: Mon Dec 17 01:55:15 2007 -0500 10629Commit: Behdad Esfahbod <behdad@behdad.org> 10630CommitDate: Mon Dec 17 01:55:15 2007 -0500 10631 10632 [cairo-xlib] Minor cleanup and add comment 10633 10634 src/cairo-xlib-surface.c | 7 +++++-- 10635 1 file changed, 5 insertions(+), 2 deletions(-) 10636 10637commit 83963d2a9ec445e23cfbe692b877177a9d9d135e 10638Author: Behdad Esfahbod <behdad@behdad.org> 10639AuthorDate: Mon Dec 17 01:19:53 2007 -0500 10640Commit: Behdad Esfahbod <behdad@behdad.org> 10641CommitDate: Mon Dec 17 01:19:53 2007 -0500 10642 10643 [cairo-ft] Revert "Force non-AA text when using a bitmap strike with only scaling transform." (#13479) 10644 10645 The reasoning for that commit was that fonts with bitmap strikes should be 10646 rendered with antialiasing off for those (hopefully) few glyphs that don't 10647 have a bitmap. 10648 10649 However, it turns out, there are fonts that have some, but very few, bitmaps, 10650 and this changed forces non-AA rendering on them. We now support multiple 10651 glyph formats per font in the Xlib backend, so backing this out to let every 10652 glyph render as is. Fontconfig rules can be used to force AA off on a per-font 10653 basis. 10654 10655 This reverts commit 06af5c2891b89da28581c30afcde06c5442884db. 10656 10657 src/cairo-ft-font.c | 24 ------------------------ 10658 1 file changed, 24 deletions(-) 10659 10660commit 805b668260c47e6d3d854361fcc53f12bd2a57e1 10661Author: Behdad Esfahbod <behdad@behdad.org> 10662AuthorDate: Mon Dec 17 01:14:27 2007 -0500 10663Commit: Behdad Esfahbod <behdad@behdad.org> 10664CommitDate: Mon Dec 17 01:14:45 2007 -0500 10665 10666 [cairo-xlib] Support scale fonts with glyphs of multiple formats (#13479) 10667 10668 We maintain three Xrender glyphsets per scaled font, one for each of A1, A8, 10669 and ARGB32. This is required to correctly support fonts with bitmaps for 10670 some glyphs but not all. 10671 10672 src/cairo-xlib-surface.c | 179 +++++++++++++++++++++++++++++++++++------------ 10673 1 file changed, 136 insertions(+), 43 deletions(-) 10674 10675commit f6dd037cf3231c2dd0550b0f2e6f3179202c299f 10676Author: Carl Worth <cworth@cworth.org> 10677AuthorDate: Fri Dec 14 14:02:43 2007 -0800 10678Commit: Carl Worth <cworth@cworth.org> 10679CommitDate: Fri Dec 14 14:04:13 2007 -0800 10680 10681 Remove rasterization when a paginated surace is used as a source 10682 10683 This was an old workaround for a bug that seems to no longer 10684 exist. Thanks to Donn Ingle for pointing out the problem. 10685 10686 src/cairo-paginated-surface.c | 34 ---------------------------------- 10687 1 file changed, 34 deletions(-) 10688 10689commit 9b3ce8b17ab8179131ae45a227d76241916f42e8 10690Author: Adrian Johnson <ajohnson@redneon.com> 10691AuthorDate: Wed Dec 12 23:41:53 2007 +1030 10692Commit: Adrian Johnson <ajohnson@redneon.com> 10693CommitDate: Wed Dec 12 23:41:53 2007 +1030 10694 10695 PS: Use the correct bounding box in Type 3 fonts 10696 10697 Previously this was a fixed size. 10698 10699 src/cairo-ps-surface.c | 44 +++++++++++++++++++++++++++++++++++++------- 10700 1 file changed, 37 insertions(+), 7 deletions(-) 10701 10702commit afdd53d35f53cfe3440c38531c112a586d3d7486 10703Author: Adrian Johnson <ajohnson@redneon.com> 10704AuthorDate: Wed Dec 12 23:35:56 2007 +1030 10705Commit: Adrian Johnson <ajohnson@redneon.com> 10706CommitDate: Wed Dec 12 23:35:56 2007 +1030 10707 10708 PS: Return the status for emit_image and gradients 10709 10710 src/cairo-ps-surface.c | 21 +++++++++++++++------ 10711 1 file changed, 15 insertions(+), 6 deletions(-) 10712 10713commit 55f5c4ffda5df9064bd0a5a6a2cf1a09b058afbb 10714Author: Boying Lu <brian.lu@sun.com> 10715AuthorDate: Wed Dec 12 21:05:57 2007 +1030 10716Commit: Adrian Johnson <ajohnson@redneon.com> 10717CommitDate: Wed Dec 12 21:05:57 2007 +1030 10718 10719 Remove cairo_private from static declaration 10720 10721 src/cairo-paginated-surface.c | 2 +- 10722 1 file changed, 1 insertion(+), 1 deletion(-) 10723 10724commit 942e3d53088a4d2b05c86d3f82b76cfbe707b3b5 10725Author: Claudio Ciccani <klan@directfb.org> 10726AuthorDate: Tue Dec 11 15:50:05 2007 +0100 10727Commit: Claudio Ciccani <klan@directfb.org> 10728CommitDate: Tue Dec 11 15:50:05 2007 +0100 10729 10730 [cairo-directfb] Support some environment variables 10731 10732 Added a couple of (boolean) env. vars affecting the backend: 10733 CAIRO_DIRECTFB_NO_ACCEL, disables acceleration 10734 CAIRO_DIRECTFB_ARGB_FONT, enables using ARGB fonts instead of A8 10735 10736 src/cairo-directfb-surface.c | 99 ++++++++++++++++++++++++++++++++++---------- 10737 src/cairo-directfb.h | 12 +++++- 10738 2 files changed, 88 insertions(+), 23 deletions(-) 10739 10740commit f3cec9d1c2a4d43cd734aae4bc7f8e7410a5e89a 10741Merge: 08516d97a c26084a45 10742Author: Claudio Ciccani <klan@directfb.org> 10743AuthorDate: Mon Dec 10 22:58:06 2007 +0100 10744Commit: Claudio Ciccani <klan@directfb.org> 10745CommitDate: Mon Dec 10 22:58:06 2007 +0100 10746 10747 Merge branch 'master' of git+ssh://klan@git.freedesktop.org/git/cairo 10748 10749commit c26084a45fcb6ac467cad8bdcedfb2f524b857fc 10750Author: Behdad Esfahbod <behdad@behdad.org> 10751AuthorDate: Mon Dec 10 14:38:09 2007 -0500 10752Commit: Behdad Esfahbod <behdad@behdad.org> 10753CommitDate: Mon Dec 10 14:38:48 2007 -0500 10754 10755 Pass $(MAKE) to test shell scripts (#13591) 10756 10757 src/Makefile.am | 2 +- 10758 src/check-def.sh | 3 ++- 10759 2 files changed, 3 insertions(+), 2 deletions(-) 10760 10761commit 78dac47399038cc9a05b82b01c4e4b35132f0784 10762Author: Behdad Esfahbod <behdad@behdad.org> 10763AuthorDate: Mon Dec 3 02:31:40 2007 -0500 10764Commit: Behdad Esfahbod <behdad@behdad.org> 10765CommitDate: Mon Dec 10 14:38:48 2007 -0500 10766 10767 [util/malloc-stats.c] Add a public function malloc_stats() 10768 10769 Apparently glibc already provides the function: 10770 10771 void malloc_stats (void); 10772 10773 So, like we do for backtrace_symbols(), override the public symbol. 10774 It still is defined as __destructor__ and runs at program finalization. 10775 10776 util/malloc-stats.c | 5 ++--- 10777 1 file changed, 2 insertions(+), 3 deletions(-) 10778 10779commit 08516d97a1b34cbb119d6d842ae31e4cb4e08740 10780Author: Claudio Ciccani <klan@directfb.org> 10781AuthorDate: Mon Dec 10 18:54:01 2007 +0100 10782Commit: Claudio Ciccani <klan@directfb.org> 10783CommitDate: Mon Dec 10 18:54:01 2007 +0100 10784 10785 [cairo-directfb] Merging from directfb.org 10786 10787 - Improved performance in case of surface conversion: allocate a shadow buffer that can only grow 10788 - Fixed support for small surfaces (less than 8x8) 10789 - Optimize the blending function according to the surface format 10790 - Added _directfb_categorize_operation(): selects the blitting function according to the transform matrix 10791 - Avoid inverting the matrix when doing a simple StretchBlit() 10792 - Use TextureTriangles() instead of StretchBlit() when scale factors are negative 10793 - Added support for ARGB32 fonts (converted to A8 internally) 10794 - Removed unused functions (flush() and mark_dirty_rectangle()) 10795 - Code cosmetics 10796 10797 src/cairo-directfb-surface.c | 847 ++++++++++++++++++++++++------------------- 10798 1 file changed, 466 insertions(+), 381 deletions(-) 10799 10800commit dd71ac910c3c176687fe4da582876bf46becf6d5 10801Author: Benjamin Otte <otte@gnome.org> 10802AuthorDate: Mon Dec 10 13:17:09 2007 +0100 10803Commit: Benjamin Otte <otte@gnome.org> 10804CommitDate: Mon Dec 10 13:17:09 2007 +0100 10805 10806 typo 10807 10808 configure.in | 2 +- 10809 1 file changed, 1 insertion(+), 1 deletion(-) 10810 10811commit 1f1f96d6459014a236611edf811a60225a652044 10812Author: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 10813AuthorDate: Sat Dec 8 22:32:16 2007 +0100 10814Commit: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 10815CommitDate: Sat Dec 8 22:32:16 2007 +0100 10816 10817 [SVG] Fix a minor issue when emitting a radial gradient with r1 == r2. 10818 10819 Minor because I don't know how the output is supposed to look in this case. 10820 10821 src/cairo-svg-surface.c | 15 ++++++++------- 10822 1 file changed, 8 insertions(+), 7 deletions(-) 10823 10824commit 19680f545a1620d944322775c1b85b0e5f93fa0f 10825Author: Brian Ewins <Brian.Ewins@gmail.com> 10826AuthorDate: Thu Dec 6 21:31:15 2007 +0000 10827Commit: Brian Ewins <Brian.Ewins@gmail.com> 10828CommitDate: Thu Dec 6 21:31:15 2007 +0000 10829 10830 [quartz] fix gradient-zero-stops crash (moz#407104) 10831 10832 Fixes failure in gradient-zero-stops test, reported 10833 by Boris Zbarsky (thanks!) as Mozill a bug#407104. 10834 10835 src/cairo-quartz-surface.c | 12 ++++++++++++ 10836 1 file changed, 12 insertions(+) 10837 10838commit e6c34bb6912d2801ee6c0d56ec0e98739c786e9f 10839Author: Brian Ewins <Brian.Ewins@gmail.com> 10840AuthorDate: Thu Dec 6 21:31:14 2007 +0000 10841Commit: Brian Ewins <Brian.Ewins@gmail.com> 10842CommitDate: Thu Dec 6 21:31:14 2007 +0000 10843 10844 [quartz] refactor gradient handling 10845 10846 Avoid checking the gradient type twice. This refactor 10847 also makes it easier to check when the gradient has no stops, 10848 and will make it easier to separate out the different 10849 implementations of EXTEND_REPEAT, REFLECT for linear and 10850 radial gradients. 10851 10852 src/cairo-quartz-surface.c | 206 +++++++++++++++++++++++---------------------- 10853 1 file changed, 107 insertions(+), 99 deletions(-) 10854 10855commit b81c8473bd0b8b829dc7eba9a105890f0c2f1158 10856Author: Brian Ewins <Brian.Ewins@gmail.com> 10857AuthorDate: Thu Dec 6 21:31:10 2007 +0000 10858Commit: Brian Ewins <Brian.Ewins@gmail.com> 10859CommitDate: Thu Dec 6 21:31:10 2007 +0000 10860 10861 [test] add test for gradient with no stops 10862 10863 Boris Zbarsky reported a bug where having zero stops in a 10864 gradient pattern would crash in the quartz surface. This 10865 test checks for that case. Mozilla bug#407104. 10866 10867 This also crashes testing pdf; and the ps, svg surfaces 10868 look suspicious (they reference stops[0]) but I havent 10869 been able to test them yet. 10870 10871 test/Makefile.am | 3 ++ 10872 test/gradient-zero-stops-ref.png | Bin 0 -> 105 bytes 10873 test/gradient-zero-stops-rgb24-ref.png | Bin 0 -> 105 bytes 10874 test/gradient-zero-stops.c | 66 +++++++++++++++++++++++++++++++++ 10875 4 files changed, 69 insertions(+) 10876 10877commit a7ae9c45d924effdd61390267eb216302a270d8e 10878Author: Peter Weilbacher <mozilla@weilbacher.org> 10879AuthorDate: Thu Dec 6 16:46:28 2007 +0100 10880Commit: Peter Weilbacher <mozilla@weilbacher.org> 10881CommitDate: Thu Dec 6 16:46:28 2007 +0100 10882 10883 [os2] add memory allocation wrappers for pixel buffers 10884 10885 Add ability to use OS/2 APIs instead of C library functions to manage 10886 pixel buffer allocations. This is to work around heap fragmentation. 10887 This implements two wrapper functions which replace _cairo_alloc_abc and 10888 free and when compiled with OS2_USE_PLATFORM_ALLOC the OS/2 functions 10889 DosAllocMem and DosFreeMem will be used for allocation/deallocation. 10890 10891 Also try to minimize the heap when shutting down the cairo library. 10892 10893 src/cairo-os2-surface.c | 108 ++++++++++++++++++++++++++++++++++++------------ 10894 1 file changed, 81 insertions(+), 27 deletions(-) 10895 10896commit be79779331ee29c0bfb74b728227719bb5dead6e 10897Author: Carl Worth <cworth@cworth.org> 10898AuthorDate: Wed Dec 5 09:24:17 2007 -0800 10899Commit: Carl Worth <cworth@cworth.org> 10900CommitDate: Wed Dec 5 09:24:17 2007 -0800 10901 10902 Restrict initial buggy version to X.Org 6.7 rather than 6.0 10903 10904 Also add some comments describing the test. 10905 10906 src/cairo-xlib-display.c | 9 ++++++++- 10907 1 file changed, 8 insertions(+), 1 deletion(-) 10908 10909commit d4138d1161c6b683fd0ef62a8d49ccf4ec4674bc 10910Author: Bernardo Innocenti <bernie@codewiz.org> 10911AuthorDate: Wed Dec 5 07:04:09 2007 -0500 10912Commit: Carl Worth <cworth@cworth.org> 10913CommitDate: Wed Dec 5 09:19:22 2007 -0800 10914 10915 Fix version check for buggy_repeat on modular Xserver 1.x 10916 10917 The versioning of the X server has restarted from 1.0 in the 10918 modular build. So we adjust the text to avoid considering 10919 the new servers buggy. 10920 10921 src/cairo-xlib-display.c | 2 +- 10922 1 file changed, 1 insertion(+), 1 deletion(-) 10923 10924commit 946b8fedb57fc0c70e4f82b2151433768479a11c 10925Author: Carl Worth <cworth@cworth.org> 10926AuthorDate: Wed Dec 5 02:30:58 2007 -0800 10927Commit: Carl Worth <cworth@cworth.org> 10928CommitDate: Wed Dec 5 02:30:58 2007 -0800 10929 10930 Fix misspellings 10931 10932 NEWS | 6 +++--- 10933 1 file changed, 3 insertions(+), 3 deletions(-) 10934 10935commit 94a35c7b71b2219d68e81272ce6328e46ae0e91e 10936Author: Carl Worth <cworth@cworth.org> 10937AuthorDate: Wed Dec 5 02:28:20 2007 -0800 10938Commit: Carl Worth <cworth@cworth.org> 10939CommitDate: Wed Dec 5 02:28:20 2007 -0800 10940 10941 Fix version number typo 10942 10943 NEWS | 2 +- 10944 1 file changed, 1 insertion(+), 1 deletion(-) 10945 10946commit 6f2ec12b882e49b425b22145592243b8ce75b6a4 10947Author: Carl Worth <cworth@cworth.org> 10948AuthorDate: Wed Dec 5 02:26:05 2007 -0800 10949Commit: Carl Worth <cworth@cworth.org> 10950CommitDate: Wed Dec 5 02:26:05 2007 -0800 10951 10952 Increment version to 1.5.5 after the 1.5.4 snapshot 10953 10954 configure.in | 2 +- 10955 1 file changed, 1 insertion(+), 1 deletion(-) 10956 10957commit e0c0275e1764502cfd1d0e93e374b4ed396f0073 10958Author: Carl Worth <cworth@cworth.org> 10959AuthorDate: Wed Dec 5 02:06:33 2007 -0800 10960Commit: Carl Worth <cworth@cworth.org> 10961CommitDate: Wed Dec 5 02:06:33 2007 -0800 10962 10963 Increment version to 1.5.4 and to 14:1:12 10964 10965 configure.in | 4 ++-- 10966 1 file changed, 2 insertions(+), 2 deletions(-) 10967 10968commit 11aaf992fb5d3d86f261ba48306adfaace9f96ea 10969Author: Carl Worth <cworth@cworth.org> 10970AuthorDate: Wed Dec 5 01:52:03 2007 -0800 10971Commit: Carl Worth <cworth@cworth.org> 10972CommitDate: Wed Dec 5 01:52:03 2007 -0800 10973 10974 NEWS: Add notes for 1.5.4 10975 10976 NEWS | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 10977 1 file changed, 57 insertions(+) 10978 10979commit 150564c7f8792fa2217fc2574e9e1925c9cd500f 10980Author: Vladimir Vukicevic <vladimir@pobox.com> 10981AuthorDate: Tue Dec 4 14:05:47 2007 -0800 10982Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 10983CommitDate: Tue Dec 4 14:05:47 2007 -0800 10984 10985 [quartz] use rectangle_int_t, not rectangle_int16_t 10986 10987 src/cairo-quartz-surface.c | 2 +- 10988 1 file changed, 1 insertion(+), 1 deletion(-) 10989 10990commit e8574022f949559c069da30f11dee8680fc59586 10991Author: Vladimir Vukicevic <vladimir@pobox.com> 10992AuthorDate: Tue Dec 4 13:54:32 2007 -0800 10993Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 10994CommitDate: Tue Dec 4 13:54:32 2007 -0800 10995 10996 [quartz] cleanup: remove trailing whitespace 10997 10998 src/cairo-quartz-surface.c | 22 +++++++++++----------- 10999 1 file changed, 11 insertions(+), 11 deletions(-) 11000 11001commit ee01a94726b3c0782fa182c9e874b2ed57e71aca 11002Author: Vladimir Vukicevic <vladimir@pobox.com> 11003AuthorDate: Tue Dec 4 13:53:03 2007 -0800 11004Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 11005CommitDate: Tue Dec 4 13:53:03 2007 -0800 11006 11007 [quartz] Use CGContextDrawTiledImage if available 11008 11009 Use this 10.5-only method if available, as it greatly speeds up 11010 tiled image rendering (EXTEND_REPEAT). 11011 11012 src/cairo-quartz-surface.c | 96 ++++++++++++++++++++++++++++++---------------- 11013 1 file changed, 64 insertions(+), 32 deletions(-) 11014 11015commit 2c25033e14d7d9f705c27683dfb093318d67910b 11016Author: Vladimir Vukicevic <vladimir@pobox.com> 11017AuthorDate: Tue Dec 4 13:49:59 2007 -0800 11018Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 11019CommitDate: Tue Dec 4 13:50:49 2007 -0800 11020 11021 [quartz] Handle creating 0x0 surfaces 11022 11023 Make all 0x0 surfaces be no-ops when used in a rendering operation. 11024 11025 src/cairo-quartz-surface.c | 109 +++++++++++++++++++++++++++++++++++---------- 11026 test/.gitignore | 1 + 11027 test/Makefile.am | 1 + 11028 test/clip-zero.c | 80 +++++++++++++++++++++++++++++++++ 11029 4 files changed, 168 insertions(+), 23 deletions(-) 11030 11031commit 407ed0a6e7183c4fc6da1e988fada19c82ccef8a 11032Author: Chris Wilson <chris@chris-wilson.co.uk> 11033AuthorDate: Mon Dec 3 09:59:52 2007 +0000 11034Commit: Chris Wilson <chris@chris-wilson.co.uk> 11035CommitDate: Mon Dec 3 18:58:21 2007 +0000 11036 11037 [Makefile.am] Add lcov-clean to distclean. 11038 11039 Clean the gcov temporary files when doing a full clean - spotted in a 11040 patch by Patrick Hulin to adapt cairo's lcov targets to glib. 11041 11042 Makefile.am | 2 ++ 11043 1 file changed, 2 insertions(+) 11044 11045commit 9c732594039b164a1e08125c35ec9d04278f0cbf 11046Author: Chris Wilson <chris@chris-wilson.co.uk> 11047AuthorDate: Sun Dec 2 17:55:35 2007 +0000 11048Commit: Chris Wilson <chris@chris-wilson.co.uk> 11049CommitDate: Sun Dec 2 18:46:23 2007 +0000 11050 11051 [Makefile.am] Wrap lcov make targets within an AM_CONDITIONAL. 11052 11053 Hide 'make lcov' and friends unless the user has actually enabled lcov 11054 supported during configure. 11055 11056 Makefile.am | 17 ++++++++++++----- 11057 configure.in | 4 ++++ 11058 2 files changed, 16 insertions(+), 5 deletions(-) 11059 11060commit 5f38e215ed4ec930492ee373db37a767d85a6ee8 11061Author: Behdad Esfahbod <behdad@behdad.org> 11062AuthorDate: Sat Dec 1 22:44:54 2007 -0500 11063Commit: Behdad Esfahbod <behdad@behdad.org> 11064CommitDate: Sat Dec 1 22:44:54 2007 -0500 11065 11066 [README] Remove the Dependencies section as it falls out of date easily 11067 11068 README | 89 ------------------------------------------------------------------ 11069 1 file changed, 89 deletions(-) 11070 11071commit b46bb58e11f9d7b7fa68a64ca887c9b996b8f6f2 11072Author: Behdad Esfahbod <behdad@behdad.org> 11073AuthorDate: Sat Dec 1 20:41:55 2007 -0500 11074Commit: Behdad Esfahbod <behdad@behdad.org> 11075CommitDate: Sat Dec 1 20:42:03 2007 -0500 11076 11077 [configure.in] Bump freetype required version to 2.1.9 (#13482) 11078 11079 configure.in | 8 ++++---- 11080 1 file changed, 4 insertions(+), 4 deletions(-) 11081 11082commit b701b4263048c3641f77796b9ea7bdc60b9815f7 11083Author: Adrian Johnson <ajohnson@redneon.com> 11084AuthorDate: Sun Dec 2 01:36:43 2007 +1030 11085Commit: Adrian Johnson <ajohnson@redneon.com> 11086CommitDate: Sun Dec 2 01:36:43 2007 +1030 11087 11088 win32: Implement _cairo_win32_scaled_font_init_glyph_surface() 11089 11090 This is required when using win32 bitmap fonts with PS/PDF surfaces. 11091 11092 src/cairo-win32-font.c | 63 ++++++++++++++++++++++++++++++++++++++++++++++++-- 11093 1 file changed, 61 insertions(+), 2 deletions(-) 11094 11095commit 1441e165f2338bc6a8e2945baca77611ff417b2f 11096Author: Adrian Johnson <ajohnson@redneon.com> 11097AuthorDate: Sun Dec 2 00:50:28 2007 +1030 11098Commit: Adrian Johnson <ajohnson@redneon.com> 11099CommitDate: Sun Dec 2 00:50:28 2007 +1030 11100 11101 Fix regression in Type1 Fallback 11102 11103 As a result of the changes to improve the status checking, 11104 _cairo_type2_charstrings_init() was failing due to the failure 11105 status returned when the font->output stream is destroyed. 11106 This is because _cairo_type2_charstrings_init() does not 11107 create an output stream. 11108 11109 Fix this by initializing font->output to NULL and only 11110 destroy it if not NULL. 11111 11112 src/cairo-type1-fallback.c | 6 ++++-- 11113 1 file changed, 4 insertions(+), 2 deletions(-) 11114 11115commit e6166f7b442ae55128b417559e48250c287e49b6 11116Author: Behdad Esfahbod <behdad@behdad.org> 11117AuthorDate: Sat Dec 1 04:19:39 2007 -0500 11118Commit: Behdad Esfahbod <behdad@behdad.org> 11119CommitDate: Sat Dec 1 04:19:39 2007 -0500 11120 11121 Convert bash scripts to regular sh ones for greater portability 11122 11123 perf/cairo-perf-diff | 31 ++++++++++++++++--------------- 11124 src/check-def.sh | 12 ++++++------ 11125 src/check-plt.sh | 6 +++--- 11126 3 files changed, 25 insertions(+), 24 deletions(-) 11127 11128commit 0d932f43fe17b2b65d9e52ff8f9c16122b525223 11129Author: Carl Worth <cworth@cworth.org> 11130AuthorDate: Fri Nov 30 16:19:45 2007 -0800 11131Commit: Carl Worth <cworth@cworth.org> 11132CommitDate: Fri Nov 30 16:19:45 2007 -0800 11133 11134 Explicitly call bash for bash-specific scripts 11135 11136 Thanks to Solaris-using Brian Cameron for pointing out that our 11137 shell scripts are bash-specific. We'd be glad if someone cared to 11138 rewrite them to not require bash, but for now let's have truth in 11139 advertising at least. 11140 11141 perf/cairo-perf-diff | 2 +- 11142 src/check-def.sh | 2 +- 11143 src/check-plt.sh | 2 +- 11144 3 files changed, 3 insertions(+), 3 deletions(-) 11145 11146commit f4b93cceb7fb83de558ed058915f92d4f75c1a6a 11147Author: Adrian Johnson <ajohnson@redneon.com> 11148AuthorDate: Thu Nov 29 23:18:45 2007 +1030 11149Commit: Adrian Johnson <ajohnson@redneon.com> 11150CommitDate: Thu Nov 29 23:18:45 2007 +1030 11151 11152 PS: Use correct glyphs widths for Type 3 fonts 11153 11154 Previously the widths were set to 0. 11155 11156 src/cairo-ps-surface.c | 8 +++++++- 11157 1 file changed, 7 insertions(+), 1 deletion(-) 11158 11159commit 2729af6c123983c1599fae9f7a0fac88ad320d7c 11160Author: Adrian Johnson <ajohnson@redneon.com> 11161AuthorDate: Thu Nov 29 23:07:47 2007 +1030 11162Commit: Adrian Johnson <ajohnson@redneon.com> 11163CommitDate: Thu Nov 29 23:07:47 2007 +1030 11164 11165 PS: Fix the Type 3 FontBBox 11166 11167 This was previously a fixed size. Make it [0 0 0 0] the same as the 11168 other fonts. 11169 11170 src/cairo-ps-surface.c | 2 +- 11171 1 file changed, 1 insertion(+), 1 deletion(-) 11172 11173commit 77aab8fdbb62e4e0ec0260651db7255d168cb25e 11174Author: Adrian Johnson <ajohnson@redneon.com> 11175AuthorDate: Thu Nov 29 23:03:40 2007 +1030 11176Commit: Adrian Johnson <ajohnson@redneon.com> 11177CommitDate: Thu Nov 29 23:03:40 2007 +1030 11178 11179 PS: Don't emit an image for Type 3 .notdef glyph 11180 11181 Make the .notdef procedure an empty procedure instead 11182 of creating an empty image mask. This reduced the size 11183 of the PS file. 11184 11185 src/cairo-ps-surface.c | 18 ++++++++++-------- 11186 1 file changed, 10 insertions(+), 8 deletions(-) 11187 11188commit 78e8d3d9bd2d4652f636a668a3fa53ef9edfd9ae 11189Author: Adrian Johnson <ajohnson@redneon.com> 11190AuthorDate: Thu Nov 29 22:54:54 2007 +1030 11191Commit: Adrian Johnson <ajohnson@redneon.com> 11192CommitDate: Thu Nov 29 22:54:54 2007 +1030 11193 11194 PS: Fix the bounding boxes of Type 3 glyphs 11195 11196 When viewing with ghostscript the glyphs were clipped 11197 11198 src/cairo-ps-surface.c | 4 ++-- 11199 1 file changed, 2 insertions(+), 2 deletions(-) 11200 11201commit 97b0d8b3c376f7848514debbe0697a2159a26eb9 11202Author: Adrian Johnson <ajohnson@redneon.com> 11203AuthorDate: Thu Nov 29 22:36:07 2007 +1030 11204Commit: Adrian Johnson <ajohnson@redneon.com> 11205CommitDate: Thu Nov 29 22:52:52 2007 +1030 11206 11207 PS: Make Type 3 fonts text selectable 11208 11209 Put the glyph names in the Encoding array the same as is done for 11210 Type 1 and Type42 fonts. 11211 11212 Acroread and Evince are still unable to correctly extract the text 11213 after conversion with ps2pdf. However examining the pdf file shows 11214 the glyph names are correct so this is probably a limitation of 11215 Acroread and Evince. 11216 11217 src/cairo-ps-surface.c | 46 ++++++++++++++++++++++++++++++---------------- 11218 1 file changed, 30 insertions(+), 16 deletions(-) 11219 11220commit 5e8f60531a09f357db38c4b646b1bbd29b97a891 11221Author: Adrian Johnson <ajohnson@redneon.com> 11222AuthorDate: Thu Nov 29 09:20:01 2007 +1030 11223Commit: Adrian Johnson <ajohnson@redneon.com> 11224CommitDate: Thu Nov 29 09:20:01 2007 +1030 11225 11226 PS: Ensure that xyshow operator has a pair of offsets for each glyph 11227 11228 The last entry should have been "0 0" instead of "0". 11229 11230 src/cairo-ps-surface.c | 2 +- 11231 1 file changed, 1 insertion(+), 1 deletion(-) 11232 11233commit ba239a474a5cab36098b8f4a98f36aa6281f7da9 11234Author: Brian Ewins <Brian.Ewins@gmail.com> 11235AuthorDate: Sun Nov 18 20:30:49 2007 +0000 11236Commit: Brian Ewins <Brian.Ewins@gmail.com> 11237CommitDate: Sun Nov 18 20:30:49 2007 +0000 11238 11239 [quartz] zero memory on bitmap creation 11240 11241 7 quartz/argb32/similar tests were showing failures due to 11242 random bits being set. The problem turned out to be that the 11243 initial test surface was not cleared before the similar surface 11244 was created by push_group. The problem behaviour is more obvious 11245 if you run the tests with MallocScribble=1. 11246 11247 Fix this by calling memset after bitmap allocation; the multiplication 11248 here cannot overflow since we already checked that in malloc_ab. 11249 11250 src/cairo-quartz-surface.c | 2 ++ 11251 1 file changed, 2 insertions(+) 11252 11253commit 58e828a9a31b91c80336fc4ce323b061226dde2b 11254Author: Brian Ewins <Brian.Ewins@gmail.com> 11255AuthorDate: Sun Jul 1 16:11:07 2007 +0100 11256Commit: Brian Ewins <Brian.Ewins@gmail.com> 11257CommitDate: Thu Nov 15 21:29:07 2007 +0000 11258 11259 [quartz] fill with alpha for EXTEND_NONE 11260 11261 The implementation of EXTEND_NONE was not filling areas outside 11262 the image with rgba(0,0,0,0). This showed up on the operator-source 11263 test, the fix makes the quartz and image renderings identical. 11264 11265 src/cairo-quartz-surface.c | 22 ++++++++++++++++++++++ 11266 1 file changed, 22 insertions(+) 11267 11268commit 39b8ddf07994747c039ee74c64a0cc97a4c7776a 11269Author: Vladimir Vukicevic <vladimir@pobox.com> 11270AuthorDate: Thu Nov 15 11:57:40 2007 -0800 11271Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 11272CommitDate: Thu Nov 15 11:57:40 2007 -0800 11273 11274 [win32] Remove double-free in win32 font code in init_glyph_path 11275 11276 Fixes bug #13243. 11277 11278 src/cairo-win32-font.c | 1 - 11279 1 file changed, 1 deletion(-) 11280 11281commit 50d5f5a4e6d7424694b0b27fc0c3a00c9eb203bb 11282Author: Vladimir Vukicevic <vladimir@pobox.com> 11283AuthorDate: Thu Nov 15 11:56:56 2007 -0800 11284Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 11285CommitDate: Thu Nov 15 11:56:56 2007 -0800 11286 11287 [quartz] Fix gradients; the wrong color field was being used 11288 11289 The wrong color field was being used, effectively making gradients always 11290 have transparent black as their color stops. 11291 11292 src/cairo-quartz-surface.c | 24 ++++++++++++------------ 11293 1 file changed, 12 insertions(+), 12 deletions(-) 11294 11295commit bcb0f57e5eca58480e24251777f0b967e1aadefe 11296Author: Brian Ewins <Brian.Ewins@gmail.com> 11297AuthorDate: Wed Nov 14 01:50:34 2007 +0000 11298Commit: Brian Ewins <Brian.Ewins@gmail.com> 11299CommitDate: Wed Nov 14 01:50:34 2007 +0000 11300 11301 [quartz] remove double malloc in dashing code. 11302 11303 fdash is reallocated without being released, and is 11304 allocated at the wrong size too. 11305 11306 src/cairo-quartz-surface.c | 5 +---- 11307 1 file changed, 1 insertion(+), 4 deletions(-) 11308 11309commit e6bc049465730a9640a1038104210d14aad4b3cb 11310Author: Brian Ewins <Brian.Ewins@gmail.com> 11311AuthorDate: Tue Nov 13 00:43:59 2007 +0000 11312Commit: Brian Ewins <Brian.Ewins@gmail.com> 11313CommitDate: Tue Nov 13 00:43:59 2007 +0000 11314 11315 [quartz] typo checking for malloc failure 11316 11317 The check after the malloc of cg_advances looked at the wrong 11318 variable. 11319 11320 src/cairo-quartz-surface.c | 2 +- 11321 1 file changed, 1 insertion(+), 1 deletion(-) 11322 11323commit bb2674207cf01386c6338511d2462694187fff36 11324Author: Brian Ewins <Brian.Ewins@gmail.com> 11325AuthorDate: Mon Nov 12 23:56:01 2007 +0000 11326Commit: Brian Ewins <Brian.Ewins@gmail.com> 11327CommitDate: Mon Nov 12 23:56:01 2007 +0000 11328 11329 [quartz] fix leak in show_glyphs 11330 11331 In cairo_quartz_show_glyphs we may leak the source if 11332 there is a failure to malloc the glyph arrays. Fix this. 11333 11334 src/cairo-quartz-surface.c | 30 ++++++++++++++++++------------ 11335 1 file changed, 18 insertions(+), 12 deletions(-) 11336 11337commit 7ad34c1bdc6417ca0e2e1075b67ca09c5318db75 11338Author: Brian Ewins <Brian.Ewins@gmail.com> 11339AuthorDate: Mon Nov 12 23:52:52 2007 +0000 11340Commit: Brian Ewins <Brian.Ewins@gmail.com> 11341CommitDate: Mon Nov 12 23:52:52 2007 +0000 11342 11343 [quartz] fix for cairo_reset_clip() 11344 11345 src/cairo-quartz-surface.c | 3 +++ 11346 1 file changed, 3 insertions(+) 11347 11348commit 717ccbcf0c12fcfa840396378812919c9e151d57 11349Author: Brian Ewins <Brian.Ewins@gmail.com> 11350AuthorDate: Mon Nov 12 23:51:39 2007 +0000 11351Commit: Brian Ewins <Brian.Ewins@gmail.com> 11352CommitDate: Mon Nov 12 23:51:39 2007 +0000 11353 11354 Revert "[quartz] handle 0x0 surfaces." 11355 11356 This reverts commit 2fd50a7897efaed4dabaf75a6ed8828f16c14d36. 11357 Spoke too soon, quartz doesn't like creating those 0x0 11358 images; while the tests pass, its putting warnings in the logs. 11359 Reverting to make a better fix. 11360 11361 src/cairo-quartz-surface.c | 2 +- 11362 1 file changed, 1 insertion(+), 1 deletion(-) 11363 11364commit 2fd50a7897efaed4dabaf75a6ed8828f16c14d36 11365Author: Brian Ewins <Brian.Ewins@gmail.com> 11366AuthorDate: Sun Nov 11 01:29:00 2007 +0000 11367Commit: Brian Ewins <Brian.Ewins@gmail.com> 11368CommitDate: Sun Nov 11 01:49:36 2007 +0000 11369 11370 [quartz] handle 0x0 surfaces. 11371 11372 Some tests, like invalid-matrix, generate a 0x0 bitmap; in 11373 the quartz backend this caused a nil surface to be returned, 11374 whereas the tests expect a quartz surface. Other surfaces 11375 return a backend-specific surface with a zero-sized bitmap, 11376 quartz should do the same. 11377 11378 Fixes the tests ft-font-create-for-ft-face, get-and-set, 11379 get-clip, invalid-matrix, line-width-zero, 11380 select-font-no-show-text, solid-pattern-cache-stress, 11381 surface-finish-twice, and text-cache-crash. 11382 11383 src/cairo-quartz-surface.c | 2 +- 11384 1 file changed, 1 insertion(+), 1 deletion(-) 11385 11386commit 0359ad6c8da56a44697498bd8b74fbc029cbe930 11387Author: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 11388AuthorDate: Sun Nov 11 00:18:19 2007 +0100 11389Commit: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 11390CommitDate: Sun Nov 11 00:18:19 2007 +0100 11391 11392 Compilation warning suppression (char as array subscript). 11393 11394 cairo_path_op_t is a char, and can't be directly used as array subscript. 11395 11396 src/cairo-path-fixed.c | 4 ++-- 11397 1 file changed, 2 insertions(+), 2 deletions(-) 11398 11399commit 1b71af7e61bd6c55b78e1a9a4c56b93d0b1134ed 11400Author: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 11401AuthorDate: Sun Nov 11 00:14:34 2007 +0100 11402Commit: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 11403CommitDate: Sun Nov 11 00:14:34 2007 +0100 11404 11405 Fix _cairo_path_fixed_init_copy. 11406 11407 All the copied data buffers except the first one weren't completely 11408 initialized (num_ops and num_points). That was the cause of the failure 11409 of some vector surface tests, like random-intersections. 11410 11411 src/cairo-path-fixed.c | 2 ++ 11412 1 file changed, 2 insertions(+) 11413 11414commit 3554c31e3d28ad5aad35c8fe4c6bb8ce7d297dde 11415Author: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 11416AuthorDate: Sat Nov 10 10:43:43 2007 +0100 11417Commit: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 11418CommitDate: Sat Nov 10 10:43:43 2007 +0100 11419 11420 [SVG] Add missing image to REFERENCE_IMAGES list. 11421 11422 test/Makefile.am | 1 + 11423 1 file changed, 1 insertion(+) 11424 11425commit 916d82586ec196bfb3124850e68ef66a63464e72 11426Author: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 11427AuthorDate: Sat Nov 10 10:24:21 2007 +0100 11428Commit: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 11429CommitDate: Sat Nov 10 10:24:21 2007 +0100 11430 11431 [SVG] Indentation fixes. 11432 11433 src/cairo-svg-surface.c | 130 ++++++++++++++++++++++++------------------------ 11434 1 file changed, 65 insertions(+), 65 deletions(-) 11435 11436commit 8edc3ed4857795387007e7c4997f30d7ceec57ac 11437Merge: 3bc8a8d1d 77e9b05b2 11438Author: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 11439AuthorDate: Sat Nov 10 10:10:50 2007 +0100 11440Commit: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 11441CommitDate: Sat Nov 10 10:10:50 2007 +0100 11442 11443 Merge branch 'master' of git+ssh://emmanuel@git.cairographics.org/git/cairo 11444 11445commit 3bc8a8d1d0e07e857b203a7872862437b8333b25 11446Author: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 11447AuthorDate: Sat Nov 10 10:10:03 2007 +0100 11448Commit: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 11449CommitDate: Sat Nov 10 10:10:03 2007 +0100 11450 11451 [SVG] Remove spurious semicolon when emitting mask url. 11452 11453 src/cairo-svg-surface.c | 2 +- 11454 1 file changed, 1 insertion(+), 1 deletion(-) 11455 11456commit b68968ffd1864d591e4fc08fed55c12ece95ec55 11457Author: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 11458AuthorDate: Sat Nov 10 10:07:12 2007 +0100 11459Commit: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 11460CommitDate: Sat Nov 10 10:07:12 2007 +0100 11461 11462 [SVG] Fix opacity of combined stroke and fill. 11463 11464 When emitting combined stroke and fill, cairo SVG backend was using the opacity 11465 two times, instead of using fill-opacity and stroke-opacity, leading to 11466 incorrect output. 11467 11468 I've updated the mask test reference images for the SVG output, since it seems 11469 there's a bug in librsvg when fill-opacity is used in the mask image. 11470 I've checked the SVG output with batik, and it looks fine. 11471 11472 src/cairo-svg-surface.c | 27 ++++++++++++++------------- 11473 test/mask-svg-argb32-ref.png | Bin 8405 -> 8389 bytes 11474 test/mask-svg-rgb24-ref.png | Bin 0 -> 7935 bytes 11475 3 files changed, 14 insertions(+), 13 deletions(-) 11476 11477commit 77e9b05b2b011ce964287ff493c2b421977107ee 11478Author: Brian Ewins <Brian.Ewins@gmail.com> 11479AuthorDate: Sat Nov 10 01:34:03 2007 +0000 11480Commit: Brian Ewins <Brian.Ewins@gmail.com> 11481CommitDate: Sat Nov 10 01:34:03 2007 +0000 11482 11483 [test] support using a previous build as a reference 11484 11485 Allow using a previous test output directory as a source of 11486 reference images. To make use of this, set the environment 11487 variable 'CAIRO_REF_DIR' to point at an old test directory, 11488 relative to the current test directory. 11489 11490 This is useful for testing backends when reference images haven't 11491 been created yet, or which the current reference image structure 11492 can't accomodate, like multiple font backends. 11493 11494 test/README | 8 ++++++++ 11495 test/cairo-test.c | 17 ++++++++++++++++- 11496 2 files changed, 24 insertions(+), 1 deletion(-) 11497 11498commit f8ee0cdf186bfb30bdeb487b63d42f274c1073ce 11499Author: Brian Ewins <Brian.Ewins@gmail.com> 11500AuthorDate: Sat Nov 10 01:34:01 2007 +0000 11501Commit: Brian Ewins <Brian.Ewins@gmail.com> 11502CommitDate: Sat Nov 10 01:34:01 2007 +0000 11503 11504 [test] Link to the correct reference image. 11505 11506 The generated test html guesses the names of the reference 11507 images used in the tests. This is quite often wrong, and 11508 makes it harder to change policy in cairo-test. Teach 11509 make-html.pl to parse the log for the path to the reference image. 11510 11511 test/make-html.pl | 102 ++++++++++++++++++++++++------------------------------ 11512 1 file changed, 45 insertions(+), 57 deletions(-) 11513 11514commit 15fc1bbefb49fefedca53c47ccfc7edace0acbfe 11515Author: Brian Ewins <Brian.Ewins@gmail.com> 11516AuthorDate: Sat Nov 10 01:33:47 2007 +0000 11517Commit: Brian Ewins <Brian.Ewins@gmail.com> 11518CommitDate: Sat Nov 10 01:33:47 2007 +0000 11519 11520 [test] log tested paths so that they can be parsed. 11521 11522 The test logs currently do not record the paths of 11523 image output, the reference images tested against, and 11524 the diffs created. This means that make-html.pl has to 11525 duplicate the policy in cairo-test.c. Fix this by teaching 11526 cairo-test.c to log the paths. 11527 11528 test/cairo-test.c | 4 +++- 11529 1 file changed, 3 insertions(+), 1 deletion(-) 11530 11531commit 28412f780ebf52914aa374bb2bdd3d539bd29241 11532Author: Vladimir Vukicevic <vladimir@pobox.com> 11533AuthorDate: Tue Nov 6 16:11:06 2007 -0800 11534Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 11535CommitDate: Fri Nov 9 12:50:45 2007 -0800 11536 11537 [win32-printing] bail out early if we don't have anything to do in paint_surf 11538 11539 src/cairo-win32-printing-surface.c | 5 +++++ 11540 1 file changed, 5 insertions(+) 11541 11542commit d72bb8c12efcffe7c576afe63212b2fe47e8154c 11543Author: Vladimir Vukicevic <vladimir@pobox.com> 11544AuthorDate: Tue Nov 6 16:08:59 2007 -0800 11545Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 11546CommitDate: Fri Nov 9 12:50:45 2007 -0800 11547 11548 [win32] Fix FIXED_to_fixed when cairo's fixed format isn't 16.16 11549 11550 src/cairo-win32-font.c | 10 ++++------ 11551 1 file changed, 4 insertions(+), 6 deletions(-) 11552 11553commit 0901b83ca56e197d5c96d71ab8cfe53f21b4c8bb 11554Author: Vladimir Vukicevic <vladimir@pobox.com> 11555AuthorDate: Tue Nov 6 15:49:57 2007 -0800 11556Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 11557CommitDate: Fri Nov 9 12:50:45 2007 -0800 11558 11559 [win32] Don't use GetGlyphOutline on non-TrueType fonts 11560 11561 win32-glyph-metrics.patch: GetGlyphOutline only works on Truetype fonts, 11562 so for non-Truetype fonts, assume no left or right bearing and use the 11563 font ascent and descent for the glyph extents. 11564 11565 src/cairo-win32-font.c | 44 +++++++++++++++++++++++++++++++------------- 11566 1 file changed, 31 insertions(+), 13 deletions(-) 11567 11568commit f11f7524b62df29aa377382f5ceeda8c3beb2d54 11569Author: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 11570AuthorDate: Tue Nov 6 15:40:30 2007 -0800 11571Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 11572CommitDate: Fri Nov 9 12:50:45 2007 -0800 11573 11574 [quartz] work around Quartz bugs with images bigger than a certain size 11575 11576 Quartz has a bug with images greater than (signed) 16 bits in height; avoid 11577 creating or working with those. Also fixes some memory leaks. 11578 11579 Patch from John Daggett. 11580 11581 src/cairo-quartz-surface.c | 61 ++++++++++++++++++++++++++++++++++++++++++++-- 11582 1 file changed, 59 insertions(+), 2 deletions(-) 11583 11584commit 95ede9ea59eb1e2d7fe10fbc698f3f9fff192e79 11585Author: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 11586AuthorDate: Tue Nov 6 15:06:06 2007 -0800 11587Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 11588CommitDate: Fri Nov 9 12:50:45 2007 -0800 11589 11590 Use correct surface resolution when creating paginated fallback image 11591 11592 If a surface resolution is set via _cairo_surface_set_resolution, it 11593 needs to be used when the fallback image is created. The user sets 11594 the fallback resolution on the paginated surface, so we need 11595 to divide that by the resolution of the actual (target) surface, not 11596 the paginated surface. 11597 11598 src/cairo-paginated-surface.c | 4 ++-- 11599 1 file changed, 2 insertions(+), 2 deletions(-) 11600 11601commit 9b8d9f2859ce66b742c887eb673407a84095f488 11602Author: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 11603AuthorDate: Tue Nov 6 14:54:59 2007 -0800 11604Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 11605CommitDate: Fri Nov 9 12:50:45 2007 -0800 11606 11607 [win32] Skip doing some work if we can't call StretchDIBits 11608 11609 src/cairo-win32-printing-surface.c | 6 ++++++ 11610 1 file changed, 6 insertions(+) 11611 11612commit fa7e36669ae24fdbb5bd89a9fc1b6906408a5823 11613Author: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 11614AuthorDate: Tue Nov 6 14:53:09 2007 -0800 11615Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 11616CommitDate: Fri Nov 9 12:50:45 2007 -0800 11617 11618 [quartz] Fix for 10.5 SDK; the FloatToFixed macro started doing strange things 11619 11620 src/cairo-quartz-surface.c | 8 ++++++++ 11621 1 file changed, 8 insertions(+) 11622 11623commit 236c52b095661be395021d511d2dca0b532f83e9 11624Author: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 11625AuthorDate: Tue Nov 6 14:52:24 2007 -0800 11626Commit: Vladimir Vukicevic <vladimir@h-232.office.mozilla.org> 11627CommitDate: Fri Nov 9 12:50:45 2007 -0800 11628 11629 Handle overflow/underflow gracefully when converting to 16.16 fixed 11630 11631 src/cairo-fixed-private.h | 22 +++++++++++++++++++--- 11632 1 file changed, 19 insertions(+), 3 deletions(-) 11633 11634commit 5b0a0fe7a230f99a43916a16bfd2d26882bad46b 11635Author: Carl Worth <cworth@cworth.org> 11636AuthorDate: Wed Nov 7 11:17:59 2007 -0800 11637Commit: Carl Worth <cworth@cworth.org> 11638CommitDate: Wed Nov 7 11:18:05 2007 -0800 11639 11640 Mention cairo_new_sub_path in documentation of cairo_arc 11641 11642 src/cairo.c | 3 ++- 11643 1 file changed, 2 insertions(+), 1 deletion(-) 11644 11645commit 62d64e12aa9264a17c9bb7d6ae154a1778f0c7e1 11646Author: Chris Wilson <chris@chris-wilson.co.uk> 11647AuthorDate: Tue Nov 6 14:24:52 2007 +0000 11648Commit: Chris Wilson <chris@chris-wilson.co.uk> 11649CommitDate: Tue Nov 6 15:22:07 2007 +0000 11650 11651 [cairo-pdf-surface] Create a new path for an empty clip. 11652 11653 If the clip path is empty, then we need to start a new path otherwise 11654 the clip is ineffective. 11655 11656 src/cairo-pdf-surface.c | 36 ++++++++++++++++++++++-------------- 11657 1 file changed, 22 insertions(+), 14 deletions(-) 11658 11659commit b4057b8643cf02439b6033d7443d0d4c42220a62 11660Author: Chris Wilson <chris@chris-wilson.co.uk> 11661AuthorDate: Tue Nov 6 09:45:54 2007 +0000 11662Commit: Chris Wilson <chris@chris-wilson.co.uk> 11663CommitDate: Tue Nov 6 15:21:37 2007 +0000 11664 11665 [cairo-clip] Special case using an empty clip path. 11666 11667 Detect when the user calls cairo_clip() with an empty clip path and 11668 mark the clip as all_clipped. 11669 11670 src/cairo-clip.c | 6 ++++++ 11671 1 file changed, 6 insertions(+) 11672 11673commit 2f0867b43fbc9a385a32a2a39895f4c3559f6ddf 11674Author: Chris Wilson <chris@chris-wilson.co.uk> 11675AuthorDate: Tue Nov 6 09:44:03 2007 +0000 11676Commit: Chris Wilson <chris@chris-wilson.co.uk> 11677CommitDate: Tue Nov 6 14:26:28 2007 +0000 11678 11679 [cairo-surface] Handle the all clipped out case. 11680 11681 Explicitly handle a clip which represents that the entire surface is 11682 clipped out. 11683 11684 Fixes https://bugs.freedesktop.org/show_bug.cgi?id=13084. 11685 11686 src/cairo-surface.c | 61 +++++++++++++++++++++++++++++++++++++++++++++-------- 11687 1 file changed, 52 insertions(+), 9 deletions(-) 11688 11689commit 641215b2b018e98b298db5042360e2e22ab5a0aa 11690Author: Chris Wilson <chris@chris-wilson.co.uk> 11691AuthorDate: Mon Nov 5 22:22:42 2007 +0000 11692Commit: Chris Wilson <chris@chris-wilson.co.uk> 11693CommitDate: Tue Nov 6 13:28:10 2007 +0000 11694 11695 [test/clip-all] Combine text and everything clipped out. 11696 11697 https://bugs.freedesktop.org/show_bug.cgi?id=13084 demonstrates a 11698 regression where the clip is ignored by the xlib backend whilst 11699 rendering text. Therefore we extend the current test cases to combine 11700 a clip that represents everything clipped out with the rendering of 11701 text. For completeness, we add a new test case that exactly mimics the 11702 sequence of cairo operations that lead to the discovery of this bug - 11703 namely the rendering of text with an empty clip path. 11704 11705 test/Makefile.am | 2 ++ 11706 test/clip-all.c | 10 +++++++ 11707 test/clip-empty-ref.png | Bin 0 -> 118 bytes 11708 test/clip-empty.c | 72 ++++++++++++++++++++++++++++++++++++++++++++++++ 11709 4 files changed, 84 insertions(+) 11710 11711commit 55b530ffef2bce96d57919563c6c9b58f02f8fb8 11712Author: Behdad Esfahbod <behdad@behdad.org> 11713AuthorDate: Mon Nov 5 14:47:27 2007 -0500 11714Commit: Behdad Esfahbod <behdad@behdad.org> 11715CommitDate: Mon Nov 5 14:47:27 2007 -0500 11716 11717 [PS] Fix compiler warnings 11718 11719 src/cairo-ps-surface.c | 14 +++++++------- 11720 1 file changed, 7 insertions(+), 7 deletions(-) 11721 11722commit 570714b2b4e0b7aea58142bcba37a9eb7945cf09 11723Author: Behdad Esfahbod <behdad@behdad.org> 11724AuthorDate: Mon Aug 14 21:34:40 2006 -0400 11725Commit: Behdad Esfahbod <behdad@behdad.org> 11726CommitDate: Mon Nov 5 13:23:40 2007 -0500 11727 11728 [test/fallback-resolution] set tolerance to a large value to see how it performs 11729 in different fallback resolutions. 11730 11731 test/fallback-resolution.c | 1 + 11732 1 file changed, 1 insertion(+) 11733 11734commit 5acbef20213ad354cc835f6d15811e333ee38e74 11735Author: Behdad Esfahbod <behdad@behdad.org> 11736AuthorDate: Mon Aug 14 21:34:03 2006 -0400 11737Commit: Behdad Esfahbod <behdad@behdad.org> 11738CommitDate: Mon Nov 5 13:23:35 2007 -0500 11739 11740 [test] fallback-resolution: center text 11741 11742 test/fallback-resolution.c | 5 ++++- 11743 1 file changed, 4 insertions(+), 1 deletion(-) 11744 11745commit 7f21bfb0a8265095d68bb5ff6afae7553683a776 11746Author: Behdad Esfahbod <behdad@behdad.org> 11747AuthorDate: Mon Aug 14 21:33:13 2006 -0400 11748Commit: Behdad Esfahbod <behdad@behdad.org> 11749CommitDate: Mon Nov 5 13:23:28 2007 -0500 11750 11751 [meta-surface] Adjust tolerance when replaying to surfaces with device scale 11752 11753 such that we get a consistent look with different fallback resolutions. 11754 11755 src/cairo-meta-surface.c | 11 ++++++----- 11756 1 file changed, 6 insertions(+), 5 deletions(-) 11757 11758commit 4270cd3358fabf0d3e6ac4e866099b172082b592 11759Author: Richard Hult <richard@imendio.com> 11760AuthorDate: Mon Nov 5 10:05:07 2007 +0000 11761Commit: Brian Ewins <Brian.Ewins@gmail.com> 11762CommitDate: Mon Nov 5 10:05:07 2007 +0000 11763 11764 [atsui] Use ascent+descent+leading to get the distance between baselines 11765 11766 The height is currently mapped to the atsui metrics property capHeight, which 11767 is documented as "The height of a capital letter in the font from the baseline 11768 to the top of the letter". 11769 11770 That doesn't match what height is in cairo, it should be the disctance between 11771 baselines. This patch that fixes that (and makes webkit on GTK+ OS X 11772 layout nicely). 11773 11774 src/cairo-atsui-font.c | 2 +- 11775 1 file changed, 1 insertion(+), 1 deletion(-) 11776 11777commit 3141b21c0c581dabc09a6ec9cdf0a071701b0e42 11778Author: Brian Ewins <Brian.Ewins@gmail.com> 11779AuthorDate: Mon Nov 5 10:05:04 2007 +0000 11780Commit: Brian Ewins <Brian.Ewins@gmail.com> 11781CommitDate: Mon Nov 5 10:05:04 2007 +0000 11782 11783 [configure.in] fix atsui experimental warning 11784 11785 The 'experimental' warning for atsui was appearing 11786 for --enable-quartz not --enable-atsui as it should. 11787 11788 configure.in | 2 +- 11789 1 file changed, 1 insertion(+), 1 deletion(-) 11790 11791commit b3ef306f84944a45b389c1f4bfeae910baf5bcb0 11792Author: Chris Wilson <ickle@cube.localdomain> 11793AuthorDate: Mon Nov 5 09:09:14 2007 +0000 11794Commit: Chris Wilson <ickle@cube.localdomain> 11795CommitDate: Mon Nov 5 09:09:14 2007 +0000 11796 11797 [cairo-atomic] Add a few more cpus that are known to have atomic access. 11798 11799 Add x86_64 and arm to the list of cpus which do not require memory 11800 barriers for reading and writing integers/pointers atomically. 11801 11802 configure.in | 6 ++++++ 11803 1 file changed, 6 insertions(+) 11804 11805commit bd5ed9a3988910a41748b7d78a265a2968a48f23 11806Author: Chris Wilson <ickle@cube.localdomain> 11807AuthorDate: Mon Nov 5 09:05:25 2007 +0000 11808Commit: Chris Wilson <ickle@cube.localdomain> 11809CommitDate: Mon Nov 5 09:05:25 2007 +0000 11810 11811 [cairo-atomic] Declare the mutex for NEEDS_MEMORY_BARRIER. 11812 11813 Whilst NEED_MEMORY_BARRIER should be a subset of ! HAS_ATOMIC_OPS, 11814 until we have accurate configure tests NEED_MEMORY_BARRIER may be 11815 invoked independently. 11816 11817 src/cairo-mutex-list-private.h | 2 +- 11818 1 file changed, 1 insertion(+), 1 deletion(-) 11819 11820commit 901b0c97523a2da00ccf91cf4cee3bf55ce989b5 11821Author: Chris Wilson <chris@chris-wilson.co.uk> 11822AuthorDate: Sun Nov 4 11:55:25 2007 +0000 11823Commit: Chris Wilson <chris@chris-wilson.co.uk> 11824CommitDate: Mon Nov 5 08:51:06 2007 +0000 11825 11826 [cairo-path-fixed] Exponentially enlarge cairo_path_buf_t. 11827 11828 Allocate subsequent path bufs twice as large as the previous buf, 11829 whilst still embedding a small initial buf into cairo_path_fixed_t 11830 that handles the most frequent usage. 11831 11832 src/cairo-path-fill.c | 2 +- 11833 src/cairo-path-fixed-private.h | 20 ++++++---- 11834 src/cairo-path-fixed.c | 89 +++++++++++++++++++++++++----------------- 11835 3 files changed, 68 insertions(+), 43 deletions(-) 11836 11837commit 92a18464bae40b19a26402eb2aa4950cac04c3a0 11838Author: Chris Wilson <chris@chris-wilson.co.uk> 11839AuthorDate: Sat Nov 3 10:41:55 2007 +0000 11840Commit: Chris Wilson <chris@chris-wilson.co.uk> 11841CommitDate: Mon Nov 5 08:51:06 2007 +0000 11842 11843 [cairo-surface] Avoid allocation for common case of 1 box. 11844 11845 _cairo_surface_fill_region(): avoid allocating the array of boxes if we 11846 know that the region only contains one box and is therefore defined by its 11847 extents. 11848 11849 src/cairo-surface.c | 48 ++++++++++++++++++++++++++++-------------------- 11850 1 file changed, 28 insertions(+), 20 deletions(-) 11851 11852commit e60a7c39cdcdfd474c4f6cc3b4612870726f55dc 11853Author: Chris Wilson <chris@chris-wilson.co.uk> 11854AuthorDate: Thu Oct 25 10:24:01 2007 +0100 11855Commit: Chris Wilson <chris@chris-wilson.co.uk> 11856CommitDate: Mon Nov 5 08:51:06 2007 +0000 11857 11858 [cairo-atomic] Check whether we can access int/pointers atomically. 11859 11860 Add a configure check to determine whether the host cpu can read/write 11861 cairo_atomic_t without an explicit memory barrier, and update the macros 11862 within cairo-atomic-private.h to reflect this knowledge. 11863 11864 configure.in | 15 +++++++++++++++ 11865 src/cairo-atomic-private.h | 20 +++++++++++++++----- 11866 2 files changed, 30 insertions(+), 5 deletions(-) 11867 11868commit 76667b4c2a4243a52ab0dbe372151a9ca7dfe931 11869Author: Adrian Johnson <ajohnson@redneon.com> 11870AuthorDate: Sat Nov 3 16:53:54 2007 +1030 11871Commit: Adrian Johnson <ajohnson@redneon.com> 11872CommitDate: Sat Nov 3 16:53:54 2007 +1030 11873 11874 ROADMAP: Mark set PS level complete 11875 11876 ROADMAP | 2 +- 11877 1 file changed, 1 insertion(+), 1 deletion(-) 11878 11879commit 6d2615d449a9df6a8a7e3b5e5370b06dc14912f5 11880Author: Chris Wilson <chris@chris-wilson.co.uk> 11881AuthorDate: Fri Nov 2 09:17:59 2007 +0000 11882Commit: Chris Wilson <chris@chris-wilson.co.uk> 11883CommitDate: Fri Nov 2 09:17:59 2007 +0000 11884 11885 [test/degenerate-pen] Add missing return value. 11886 11887 Carl - he likes to test us occasionally to make sure we're paying 11888 attention. Well, that's the excuse I use... 11889 11890 test/degenerate-pen.c | 2 ++ 11891 1 file changed, 2 insertions(+) 11892 11893commit eb0b16837b7cbf63e4b49fb5c22cd392658033d8 11894Author: Chris Wilson <chris@chris-wilson.co.uk> 11895AuthorDate: Thu Nov 1 22:11:01 2007 +0000 11896Commit: Chris Wilson <chris@chris-wilson.co.uk> 11897CommitDate: Thu Nov 1 22:42:34 2007 +0000 11898 11899 [cairo-spline] Eliminate redundant _cairo_fixed_to_double(). 11900 11901 Inline and unroll PointDistanceSquaredToSegment() and eliminate the 11902 multiple conversions between fixed point and doubles. This simple 11903 transformation both shrinks the code and wins a few percent in path 11904 intensive benchmarks such as fuckhergently.swf 11905 11906 src/cairo-spline.c | 107 ++++++++++++++++++++++++++--------------------------- 11907 1 file changed, 52 insertions(+), 55 deletions(-) 11908 11909commit 2a25e226588404da2970f473bdeb0d2ce106ce58 11910Author: Chris Wilson <chris@chris-wilson.co.uk> 11911AuthorDate: Thu Nov 1 19:49:19 2007 +0000 11912Commit: Chris Wilson <chris@chris-wilson.co.uk> 11913CommitDate: Thu Nov 1 22:27:34 2007 +0000 11914 11915 [cairo-spline] Reduce stack requirements during recursive refinement. 11916 11917 By splitting out the knot vectors into a smaller, separate structure, we 11918 can dramatically reduce the stack allocation for each level of recursion. 11919 Secondly we can have the storage requirements by modifying the first set 11920 of knots in-place, thus we need only allocate stack space for the knots 11921 covering the deferred half of the spline. 11922 11923 src/cairo-spline.c | 94 +++++++++++++++++++++++++++--------------------------- 11924 src/cairoint.h | 13 +++++--- 11925 2 files changed, 55 insertions(+), 52 deletions(-) 11926 11927commit b311c414a27b7374540671b3ef7153b30def0451 11928Author: Chris Wilson <chris@chris-wilson.co.uk> 11929AuthorDate: Thu Nov 1 19:40:25 2007 +0000 11930Commit: Chris Wilson <chris@chris-wilson.co.uk> 11931CommitDate: Thu Nov 1 22:27:19 2007 +0000 11932 11933 [cairo] Use NULL instead of a bare 0. 11934 11935 Silence a sparse warning. 11936 11937 src/cairo.c | 10 +++++----- 11938 1 file changed, 5 insertions(+), 5 deletions(-) 11939 11940commit fd5c5178189d2035f3e25919c7453fa4e1c5a76a 11941Author: Chris Wilson <chris@chris-wilson.co.uk> 11942AuthorDate: Thu Nov 1 19:39:02 2007 +0000 11943Commit: Chris Wilson <chris@chris-wilson.co.uk> 11944CommitDate: Thu Nov 1 22:27:04 2007 +0000 11945 11946 [cairo-scaled-font] Zero extents on early error. 11947 11948 Ensure that the output extents of cairo_scaled_font_glyph_extents(), 11949 are zeroed if we return early due to being passed by the user a 11950 cairo_scaled_font_t with an error set. 11951 11952 src/cairo-scaled-font.c | 9 ++++++++- 11953 1 file changed, 8 insertions(+), 1 deletion(-) 11954 11955commit cee6aa016b9d96d3430187d44397df2b311de8bc 11956Author: Chris Wilson <chris@chris-wilson.co.uk> 11957AuthorDate: Thu Nov 1 19:30:19 2007 +0000 11958Commit: Chris Wilson <chris@chris-wilson.co.uk> 11959CommitDate: Thu Nov 1 22:26:19 2007 +0000 11960 11961 [cairo-paginated-surface] Mark the backend static. 11962 11963 Only used within the file, so do not expose outside the library. 11964 11965 src/cairo-paginated-surface.c | 4 ++-- 11966 1 file changed, 2 insertions(+), 2 deletions(-) 11967 11968commit 6e0151df469b67ea56c36f7b0050b5d5c959c67d 11969Author: Chris Wilson <chris@chris-wilson.co.uk> 11970AuthorDate: Thu Nov 1 19:29:00 2007 +0000 11971Commit: Chris Wilson <chris@chris-wilson.co.uk> 11972CommitDate: Thu Nov 1 22:26:06 2007 +0000 11973 11974 [cairo-atomic] Rearrange code under the correct ifdefs. 11975 11976 The atomic get/set depend upon NEED_MEMORY_BARRIER which is separate 11977 from HAVE_ATOMIC_OPS. 11978 11979 src/cairo-atomic.c | 24 +++++++++++++----------- 11980 1 file changed, 13 insertions(+), 11 deletions(-) 11981 11982commit a26118cf5bf4063a4bdac2bece1bba0be776c801 11983Author: Chris Wilson <chris@chris-wilson.co.uk> 11984AuthorDate: Wed Oct 31 16:37:09 2007 +0000 11985Commit: Chris Wilson <chris@chris-wilson.co.uk> 11986CommitDate: Wed Oct 31 21:41:24 2007 +0000 11987 11988 [cairo-png] Check for feof whilst reading. 11989 11990 We need to check for both ferror() and feof() when handling short reads. 11991 11992 src/cairo-png.c | 2 +- 11993 1 file changed, 1 insertion(+), 1 deletion(-) 11994 11995commit 61143e5b21ea4c2687c1cef012eb0758a7cb378a 11996Author: Chris Wilson <chris@chris-wilson.co.uk> 11997AuthorDate: Wed Oct 31 16:34:51 2007 +0000 11998Commit: Chris Wilson <chris@chris-wilson.co.uk> 11999CommitDate: Wed Oct 31 21:41:00 2007 +0000 12000 12001 [cairo-png] Handle missing PNG_SETJMP_SUPPORTED 12002 12003 If libpng has not been compiled with jmpbuf support, then we cannot 12004 atempt to use it - in which case we fall back to png's default error 12005 handler and abort. 12006 12007 src/cairo-png.c | 16 ++++++++++++---- 12008 1 file changed, 12 insertions(+), 4 deletions(-) 12009 12010commit c37a8ace818770ce3f07c2a7147088231d559e44 12011Author: Adrian Johnson <ajohnson@redneon.com> 12012AuthorDate: Thu Nov 1 00:01:16 2007 +1030 12013Commit: Adrian Johnson <ajohnson@redneon.com> 12014CommitDate: Thu Nov 1 00:01:16 2007 +1030 12015 12016 Round floats in output-stream to 6 significant digits after decimal 12017 12018 The previous commit increased the precision of floats from 6 digits 12019 after the decimal point to 18 digits to correct rounding errors with 12020 very small numbers. However most of the time this extra precision is 12021 not required and results in increased PS/PDF output. 12022 12023 This commit makes the precision after the decimal point 6 significant 12024 digits. For example: 12025 12026 1.234567 12027 0.123456 12028 0.00123456 12029 0.00000000123456 12030 12031 src/cairo-output-stream.c | 41 +++++++++++++++++++++++++++++++++++++++-- 12032 1 file changed, 39 insertions(+), 2 deletions(-) 12033 12034commit 8297daff896ca9d803959edb3c1955977594fab9 12035Author: Behdad Esfahbod <behdad@behdad.org> 12036AuthorDate: Wed Oct 31 02:41:33 2007 -0400 12037Commit: Behdad Esfahbod <behdad@behdad.org> 12038CommitDate: Wed Oct 31 02:41:33 2007 -0400 12039 12040 [cairo-output-stream] Write out floats to 18 digits after decimal point 12041 12042 We write floats using %f as the scientific format used by smarter %g is 12043 invalid in PS/PDF. %f however by default rounds to five digits after 12044 decimal point. This was causing precision loss and making the newly 12045 added degenerate-pen test fail for PDF. We now print up to 18 digits 12046 which is as many bits doubles can accomodate. We can be smarter, but 12047 that's for another commit. 12048 12049 src/cairo-output-stream.c | 2 +- 12050 1 file changed, 1 insertion(+), 1 deletion(-) 12051 12052commit 04793175ace1312ac88570407ee28db4dde9a93c 12053Author: Carl Worth <cworth@cworth.org> 12054AuthorDate: Tue Oct 30 22:49:10 2007 -0700 12055Commit: Carl Worth <cworth@cworth.org> 12056CommitDate: Tue Oct 30 22:49:10 2007 -0700 12057 12058 Increment cairo version to 1.5.3 after the 1.5.2 snapshot 12059 12060 configure.in | 2 +- 12061 1 file changed, 1 insertion(+), 1 deletion(-) 12062 12063commit ee5dc04aaf81d6ce9c496c7966ceebfbd6ab12fb 12064Author: Carl Worth <cworth@cworth.org> 12065AuthorDate: Tue Oct 30 22:33:24 2007 -0700 12066Commit: Carl Worth <cworth@cworth.org> 12067CommitDate: Tue Oct 30 22:33:24 2007 -0700 12068 12069 Add missing images to REFERENCE_IMAGES list 12070 12071 Otherwise, these don't get included in the generated tar file 12072 and the test suite doesn't pass when run from that tar file, 12073 (like 'make distcheck' tests). 12074 12075 test/Makefile.am | 4 ++++ 12076 1 file changed, 4 insertions(+) 12077 12078commit 194029b63afa24eff8264f10a1c5a79d90e7fdd9 12079Author: Carl Worth <cworth@cworth.org> 12080AuthorDate: Tue Oct 30 22:15:55 2007 -0700 12081Commit: Carl Worth <cworth@cworth.org> 12082CommitDate: Tue Oct 30 22:15:55 2007 -0700 12083 12084 Increment cairo version to 1.5.2 and libtool versioning to 14:0:12 12085 12086 configure.in | 8 ++++---- 12087 1 file changed, 4 insertions(+), 4 deletions(-) 12088 12089commit 06af5c2891b89da28581c30afcde06c5442884db 12090Author: Keith Packard <keithp@koto.keithp.com> 12091AuthorDate: Tue Oct 30 22:00:59 2007 -0700 12092Commit: Keith Packard <keithp@koto.keithp.com> 12093CommitDate: Tue Oct 30 22:01:36 2007 -0700 12094 12095 Force non-AA text when using a bitmap strike with only scaling transform. 12096 12097 When the current font size matches one of the available fixed sizes, and 12098 the overall transform has only scaling components, FreeType will use the 12099 fixed size bitmaps by default. For glyphs which do not have bitmaps, 12100 force them to be rendered in monochrome instead of anti-aliased so 12101 that they all match nicely. 12102 12103 src/cairo-ft-font.c | 24 ++++++++++++++++++++++++ 12104 1 file changed, 24 insertions(+) 12105 12106commit f09f02a6e82df0efb66696fca857a412e7d12672 12107Author: Carl Worth <cworth@cworth.org> 12108AuthorDate: Tue Oct 30 21:57:47 2007 -0700 12109Commit: Carl Worth <cworth@cworth.org> 12110CommitDate: Tue Oct 30 21:57:47 2007 -0700 12111 12112 Add notes for 1.5.2 snapshot 12113 12114 NEWS | 252 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 12115 1 file changed, 252 insertions(+) 12116 12117commit 448c9314252bba779194d2b01950b8738b26fd13 12118Author: Carl Worth <cworth@cworth.org> 12119AuthorDate: Tue Oct 30 17:09:56 2007 -0700 12120Commit: Carl Worth <cworth@cworth.org> 12121CommitDate: Tue Oct 30 17:17:38 2007 -0700 12122 12123 Fix degenerate-pen test case by removing the triggering assertion 12124 12125 Instead we choose either the first or last pen vertex as 12126 appropriate. 12127 12128 This makes the degenerate-pen pass stop failing on an 12129 assertion, and passes for most backends. It's still failing 12130 for the PDF backend, but that looks like a new, PDF-specific 12131 bug. 12132 12133 src/cairo-pen.c | 16 +++++++++++++++- 12134 1 file changed, 15 insertions(+), 1 deletion(-) 12135 12136commit 5e76f652842d36086f500735f67cfd1d2f3e3edf 12137Author: Carl Worth <cworth@cworth.org> 12138AuthorDate: Tue Oct 30 17:00:33 2007 -0700 12139Commit: Carl Worth <cworth@cworth.org> 12140CommitDate: Tue Oct 30 17:00:33 2007 -0700 12141 12142 Add degenerate-pen test case. 12143 12144 This demonstrates the assertion failure pointed out by 12145 Benjamin Otte here: 12146 12147 [cairo] Assertion 'i < pen->num_vertices' failed in 1.4.10 12148 http://lists.cairographics.org/archives/cairo/2007-August/011282.html 12149 12150 test/.gitignore | 1 + 12151 test/Makefile.am | 1 + 12152 test/degenerate-pen-ps-argb32-ref.png | Bin 0 -> 390 bytes 12153 test/degenerate-pen-ref.png | Bin 0 -> 278 bytes 12154 test/degenerate-pen.c | 104 ++++++++++++++++++++++++++++++++++ 12155 5 files changed, 106 insertions(+) 12156 12157commit 53378301d42eabc1ebedca983092f522299bd18e 12158Author: Carl Worth <cworth@cworth.org> 12159AuthorDate: Tue Oct 30 13:13:29 2007 -0700 12160Commit: Carl Worth <cworth@cworth.org> 12161CommitDate: Tue Oct 30 13:13:29 2007 -0700 12162 12163 Update URLs for pixman to point to cairographics.org 12164 12165 README | 7 ++++--- 12166 configure.in | 2 +- 12167 2 files changed, 5 insertions(+), 4 deletions(-) 12168 12169commit 6957aa27e8df55ed3ef1e0cfc62c714ad9b644ee 12170Merge: 00d701ff7 8d8724e80 12171Author: Carl Worth <cworth@cworth.org> 12172AuthorDate: Tue Oct 30 09:45:59 2007 -0700 12173Commit: Carl Worth <cworth@cworth.org> 12174CommitDate: Tue Oct 30 09:46:59 2007 -0700 12175 12176 Merge in fix for get-path-extents test case. 12177 12178 With independent fixes on both branches, the test case now 12179 passes completely. Hurrah! 12180 12181commit 8d8724e80462593f6fee434cf972a67cb4ded282 12182Author: Carl Worth <cworth@cworth.org> 12183AuthorDate: Tue Oct 30 09:45:45 2007 -0700 12184Commit: Carl Worth <cworth@cworth.org> 12185CommitDate: Tue Oct 30 09:45:45 2007 -0700 12186 12187 Improve brace readability for multi-line conditional 12188 12189 src/cairo.c | 7 +++++-- 12190 1 file changed, 5 insertions(+), 2 deletions(-) 12191 12192commit f43f0c104045a88de87c5ebf28309a5ba728203e 12193Author: Carl Worth <cworth@cworth.org> 12194AuthorDate: Tue Oct 30 09:44:42 2007 -0700 12195Commit: Carl Worth <cworth@cworth.org> 12196CommitDate: Tue Oct 30 09:44:42 2007 -0700 12197 12198 Fix remaining two calls to _cairo_path_fixed_get_current_point 12199 12200 The previous commit failed to fix up two callers to the 12201 _cairo_path_fixed_get_current_point function, (and since 12202 C doesn't distinguish between an enum and our integer-as- 12203 Boolean, the compiler didn't complain). 12204 12205 Fortunately, though, the test suite did complain, as the 12206 bug introduced a new failure into the get-path-extents 12207 test, and git-bisect helpfully pointed to the previous 12208 commit. 12209 12210 With this fix, the new failure of get-path-extents is 12211 eliminated, (though, in this branch the arc-based failure 12212 of that test still exists). 12213 12214 src/cairo-ft-font.c | 3 +-- 12215 src/cairo-win32-font.c | 3 +-- 12216 2 files changed, 2 insertions(+), 4 deletions(-) 12217 12218commit 00d701ff7de68609aa8cec7871d93b27a108fd14 12219Author: Carl Worth <cworth@cworth.org> 12220AuthorDate: Mon Oct 29 17:55:28 2007 -0700 12221Commit: Carl Worth <cworth@cworth.org> 12222CommitDate: Tue Oct 30 08:18:57 2007 -0700 12223 12224 Limit miters for small angles 12225 12226 This fixes the current failure get-path-extents, which is a 12227 demonstration of the following bug: 12228 12229 cairo_stroke_extents() gives wrong result for arcs in some cases 12230 https://bugs.freedesktop.org/show_bug.cgi?id=7245 12231 12232 Many thanks to Michael Urman whose review of early versions of 12233 this work found a fatal mistake in my algebra. 12234 12235 src/cairo-path-stroke.c | 76 ++++++++++++++++++++++++++++++++++++++++++++++++- 12236 1 file changed, 75 insertions(+), 1 deletion(-) 12237 12238commit 9bf0a640d203a880cae5c6a8bf3602344d03cb68 12239Author: Carl Worth <cworth@cworth.org> 12240AuthorDate: Mon Oct 29 16:24:13 2007 -0700 12241Commit: Carl Worth <cworth@cworth.org> 12242CommitDate: Tue Oct 30 08:18:56 2007 -0700 12243 12244 Add figure illustrating derivation of miter limit 12245 12246 And use sin in the first place rather than the more awkward 12247 secant. 12248 12249 src/cairo-path-stroke.c | 43 ++++++++++++++++++++++++++++++++++++------- 12250 1 file changed, 36 insertions(+), 7 deletions(-) 12251 12252commit abeba1e69be3d4500107f10e50e1f0e7cae8c78f 12253Author: Carl Worth <cworth@cworth.org> 12254AuthorDate: Mon Oct 29 16:22:15 2007 -0700 12255Commit: Carl Worth <cworth@cworth.org> 12256CommitDate: Tue Oct 30 08:18:55 2007 -0700 12257 12258 Annoying churn of sgml templates 12259 12260 doc/public/tmpl/cairo-ps.sgml | 53 ++++++++++++++++++++++++++++++++++ 12261 doc/public/tmpl/cairo-surface.sgml | 19 ++++++++++++ 12262 doc/public/tmpl/cairo-win32-fonts.sgml | 10 +++++++ 12263 doc/public/tmpl/cairo-win32.sgml | 9 ++++++ 12264 4 files changed, 91 insertions(+) 12265 12266commit 0d42af2427d1de27845cb8a6b3d290a562c28fc6 12267Author: Chris Wilson <chris@chris-wilson.co.uk> 12268AuthorDate: Tue Oct 30 11:13:44 2007 +0000 12269Commit: Chris Wilson <chris@chris-wilson.co.uk> 12270CommitDate: Tue Oct 30 11:13:44 2007 +0000 12271 12272 [cairo-surface] Fix typo in doc. 12273 12274 s/INVALUE_FORMAT/INVALID_FORMAT/ 12275 12276 src/cairo-surface.c | 2 +- 12277 1 file changed, 1 insertion(+), 1 deletion(-) 12278 12279commit 39664b7cac7244ac901cb361442ca2967d74a542 12280Author: Chris Wilson <chris@chris-wilson.co.uk> 12281AuthorDate: Tue Oct 30 11:01:40 2007 +0000 12282Commit: Chris Wilson <chris@chris-wilson.co.uk> 12283CommitDate: Tue Oct 30 11:01:40 2007 +0000 12284 12285 [cairo-path] Return CAIRO_STATUS_SUCCESS. 12286 12287 If we have already returned the error status, then it is cleaner (and 12288 the common idiom) to use 'return CAIRO_STATUS_SUCCESS' rather than 12289 'return status'. 12290 12291 src/cairo-path.c | 2 +- 12292 1 file changed, 1 insertion(+), 1 deletion(-) 12293 12294commit e57df319633f8ebd0249096d76c9058f31f9835b 12295Author: Chris Wilson <chris@chris-wilson.co.uk> 12296AuthorDate: Tue Oct 30 10:58:16 2007 +0000 12297Commit: Chris Wilson <chris@chris-wilson.co.uk> 12298CommitDate: Tue Oct 30 10:58:16 2007 +0000 12299 12300 [cairo-path] Make _cairo_path_nil static. 12301 12302 _cairo_path_nil is only used within cairo-path.c, so there is no reason 12303 to expose it to the rest of the libary. 12304 12305 src/cairo-path-private.h | 2 -- 12306 src/cairo-path.c | 2 +- 12307 2 files changed, 1 insertion(+), 3 deletions(-) 12308 12309commit 6fdb7f129c8154e288ee40765fa63ffaeebaf8fd 12310Author: Chris Wilson <chris@chris-wilson.co.uk> 12311AuthorDate: Tue Oct 30 10:42:22 2007 +0000 12312Commit: Chris Wilson <chris@chris-wilson.co.uk> 12313CommitDate: Tue Oct 30 10:43:55 2007 +0000 12314 12315 Simplify return value from cairo_path_fixed_get_current_point(). 12316 12317 The only caller of cairo_path_fixed_get_current_point(), used the status 12318 return to determine whether or not the path had a current point (and did 12319 not propagate the error) - for which we had already removed the 12320 _cairo_error() markup. Now we reduce the boolean status return to a 12321 cairo_bool_t, with a net reduction in code. 12322 12323 src/cairo-path-fixed.c | 11 ++++------- 12324 src/cairo.c | 13 +++++-------- 12325 src/cairoint.h | 2 +- 12326 3 files changed, 10 insertions(+), 16 deletions(-) 12327 12328commit 4a2ab87e1a19921e2ae496f375c1144d2710d0c4 12329Author: Chris Wilson <chris@chris-wilson.co.uk> 12330AuthorDate: Mon Oct 29 12:04:33 2007 +0000 12331Commit: Chris Wilson <chris@chris-wilson.co.uk> 12332CommitDate: Mon Oct 29 12:04:33 2007 +0000 12333 12334 [cairo-surface] Add the usual guards to _cairo_surface_set_font_options(). 12335 12336 Adrian Johnson hit a SEGV after 12337 _cairo_paginaged_surface_create_image_surface() tried to set the font 12338 options on an error surface after running out of memory. So add the 12339 usual checks that the surface is not a snapshot, or in an error state or 12340 finished before modifying its font options. 12341 12342 src/cairo-surface.c | 13 +++++++++++++ 12343 1 file changed, 13 insertions(+) 12344 12345commit bb6d36561c5f50d869236b2bb4d10afd627f9a1d 12346Author: Chris Wilson <chris@chris-wilson.co.uk> 12347AuthorDate: Sat Oct 27 17:29:54 2007 +0100 12348Commit: Chris Wilson <chris@chris-wilson.co.uk> 12349CommitDate: Sat Oct 27 17:29:54 2007 +0100 12350 12351 [test/get-path-extents] Add link to bug report. 12352 12353 Add a link to the original bug report for the broken extents with arcs. 12354 [http://bugs.freedesktop.org/show_bug.cgi?id=7245] 12355 12356 test/get-path-extents.c | 1 + 12357 1 file changed, 1 insertion(+) 12358 12359commit a69d4731300b430b802222d317698c313c75a31a 12360Author: Carl Worth <cworth@cworth.org> 12361AuthorDate: Fri Oct 26 22:58:57 2007 -0700 12362Commit: Carl Worth <cworth@cworth.org> 12363CommitDate: Fri Oct 26 22:58:57 2007 -0700 12364 12365 Fix typo in _cairo_gstate_fini 12366 12367 Obrigado a Luiz Americo Pereira Camara <luizmed@oi.com.br> 12368 12369 src/cairo-gstate.c | 2 +- 12370 1 file changed, 1 insertion(+), 1 deletion(-) 12371 12372commit 0c02b998f9e8589a90b2e744392995903b94414f 12373Author: Chris Wilson <chris@chris-wilson.co.uk> 12374AuthorDate: Fri Oct 26 18:06:36 2007 +0100 12375Commit: Chris Wilson <chris@chris-wilson.co.uk> 12376CommitDate: Fri Oct 26 18:07:31 2007 +0100 12377 12378 [cairo-gstate] Allow angle==0 whilst rotating. 12379 12380 Cut'n'paste error whilst copying the NaN check from 12381 _cairo_gstate_scale() flagged the no rotation case as an error. 12382 12383 src/cairo-gstate.c | 5 ++++- 12384 1 file changed, 4 insertions(+), 1 deletion(-) 12385 12386commit ce44cd65238d38dd6958bf1f7b8ffb9d0e8723c3 12387Author: Chris Wilson <chris@chris-wilson.co.uk> 12388AuthorDate: Thu Oct 25 00:01:21 2007 +0100 12389Commit: Chris Wilson <chris@chris-wilson.co.uk> 12390CommitDate: Thu Oct 25 01:02:03 2007 +0100 12391 12392 [cairo-gstate] Add a missing _cairo_error() markup. 12393 12394 Missed calling _cairo_error() for the CAIRO_STATUS_NULL_POINTER 12395 returned by _cairo_gstate_init(). Rearrange the code to avoid the 12396 overly complicated return statement. We note that _cairo_gstate_init() 12397 is special as _cairo_gstate_fini() will always be called, even if an 12398 error is thrown, and so do not do the usual cleanup in the case of an 12399 aborted initialization. 12400 12401 src/cairo-gstate.c | 26 ++++++++++++++++++-------- 12402 1 file changed, 18 insertions(+), 8 deletions(-) 12403 12404commit 4ce785e6a9433e7c862efaa6ef9c113412bf51a5 12405Author: Chris Wilson <chris@chris-wilson.co.uk> 12406AuthorDate: Wed Oct 24 21:58:08 2007 +0100 12407Commit: Chris Wilson <chris@chris-wilson.co.uk> 12408CommitDate: Thu Oct 25 01:00:55 2007 +0100 12409 12410 [cairo-gstate] Add NaN check to rotate. 12411 12412 Check the user input to _cairo_gstate_rotate() for invalid numbers. 12413 12414 src/cairo-gstate.c | 3 +++ 12415 1 file changed, 3 insertions(+) 12416 12417commit 6295a296b0064f0959ca7f39e1d8d00fa51b6251 12418Author: Chris Wilson <chris@chris-wilson.co.uk> 12419AuthorDate: Wed Oct 24 21:29:54 2007 +0100 12420Commit: Chris Wilson <chris@chris-wilson.co.uk> 12421CommitDate: Thu Oct 25 01:00:30 2007 +0100 12422 12423 [cairo-gstate] Check scale sx * sy != 0. 12424 12425 Bill Spitzak said 12426 "If you really want to match when the determinant is non-zero in the 12427 resulting matrix, use sx*sy != 0. This appears the same as sx&&sy but 12428 may also catch when underflow makes the determinant zero." 12429 12430 Return CAIRO_STATUS_INVALID_MATRIX if we know the user input will 12431 generate a degenerate matrix. For additional paranoia we could recompute 12432 and validate the inverse each time as well. 12433 12434 src/cairo-gstate.c | 6 +++--- 12435 1 file changed, 3 insertions(+), 3 deletions(-) 12436 12437commit 483ebe866df539460861a05f5d5e8e56ab2f5430 12438Author: Chris Wilson <chris@chris-wilson.co.uk> 12439AuthorDate: Wed Oct 24 19:32:00 2007 +0100 12440Commit: Chris Wilson <chris@chris-wilson.co.uk> 12441CommitDate: Wed Oct 24 19:33:22 2007 +0100 12442 12443 [cairo-test] Remove executable flag from source files. 12444 12445 chmod a-x test/cairo-test.[ch] 12446 12447 test/cairo-test.c | 0 12448 test/cairo-test.h | 0 12449 2 files changed, 0 insertions(+), 0 deletions(-) 12450 12451commit 1651359ffbda4c14eaf4e79b6deced4f2c247686 12452Author: Chris Wilson <chris@chris-wilson.co.uk> 12453AuthorDate: Wed Oct 24 18:35:41 2007 +0100 12454Commit: Chris Wilson <chris@chris-wilson.co.uk> 12455CommitDate: Wed Oct 24 19:33:19 2007 +0100 12456 12457 [cairo-perf-diff-files] Only use a valid initializer for min_test. 12458 12459 Do not assume that the tests[0] is a valid test, but instead scan for 12460 the first test that has a name (i.e. is not a terminator). 12461 12462 perf/cairo-perf-diff-files.c | 9 +++++++-- 12463 1 file changed, 7 insertions(+), 2 deletions(-) 12464 12465commit 38c779e7d672151d25cd596149485fcc9f21c298 12466Author: Chris Wilson <chris@chris-wilson.co.uk> 12467AuthorDate: Tue Oct 23 12:57:26 2007 +0100 12468Commit: Chris Wilson <chris@chris-wilson.co.uk> 12469CommitDate: Tue Oct 23 13:03:40 2007 +0100 12470 12471 [cairo-perf-diff-files] Check for terminator before comparing tests. 12472 12473 Only the name of the terminating test is set so check that the current 12474 test is not the terminator before comparing. 12475 12476 perf/cairo-perf-diff-files.c | 23 ++++++++++++++++------- 12477 1 file changed, 16 insertions(+), 7 deletions(-) 12478 12479commit e3248a21841cfcbc285d76e2299485f9822857f1 12480Author: Chris Wilson <chris@chris-wilson.co.uk> 12481AuthorDate: Mon Oct 22 09:34:55 2007 +0100 12482Commit: Chris Wilson <chris@chris-wilson.co.uk> 12483CommitDate: Mon Oct 22 17:16:50 2007 +0100 12484 12485 [cairo-matrix] Check user input for invalid numbers. 12486 12487 Supplement the guards for scale==0 with checks that the user does not 12488 attempt to translate or scale by invalid numbers. 12489 12490 src/cairo-gstate.c | 5 +++++ 12491 1 file changed, 5 insertions(+) 12492 12493commit 8888afe9a4269e2d740d309186159fe946e57eaf 12494Author: Adrian Johnson <ajohnson@redneon.com> 12495AuthorDate: Mon Oct 22 23:05:25 2007 +0930 12496Commit: Adrian Johnson <ajohnson@redneon.com> 12497CommitDate: Mon Oct 22 23:05:25 2007 +0930 12498 12499 PDF: Fix meta surface patterns with EXTEND_REFLECT 12500 12501 src/cairo-pdf-surface.c | 34 +++++++++++++++++++++++++++++----- 12502 1 file changed, 29 insertions(+), 5 deletions(-) 12503 12504commit f073a83251e56f641a522764c5cab1d71a786a60 12505Author: Adrian Johnson <ajohnson@redneon.com> 12506AuthorDate: Mon Oct 22 00:02:23 2007 +0930 12507Commit: Adrian Johnson <ajohnson@redneon.com> 12508CommitDate: Mon Oct 22 00:02:23 2007 +0930 12509 12510 win32-printing: fix error in comment 12511 12512 boilerplate/cairo-boilerplate-win32-printing.c | 21 +++++++++++---------- 12513 1 file changed, 11 insertions(+), 10 deletions(-) 12514 12515commit fb2bf3e250b39078476d3df4bdbb81201ef00a96 12516Author: Adrian Johnson <ajohnson@redneon.com> 12517AuthorDate: Sun Oct 21 23:50:57 2007 +0930 12518Commit: Adrian Johnson <ajohnson@redneon.com> 12519CommitDate: Sun Oct 21 23:50:57 2007 +0930 12520 12521 win32-printing: remove unused code 12522 12523 src/cairo-win32-printing-surface.c | 17 ----------------- 12524 1 file changed, 17 deletions(-) 12525 12526commit b854d1e1b57680f244939b90b03911a5300f34d6 12527Author: Adrian Johnson <ajohnson@redneon.com> 12528AuthorDate: Sun Oct 21 23:50:28 2007 +0930 12529Commit: Adrian Johnson <ajohnson@redneon.com> 12530CommitDate: Sun Oct 21 23:50:28 2007 +0930 12531 12532 win32-printing: fix typo in comment 12533 12534 src/cairo-win32-printing-surface.c | 2 +- 12535 1 file changed, 1 insertion(+), 1 deletion(-) 12536 12537commit 2d68c46b779909b5cc493a62db1228ea504ff52a 12538Author: Adrian Johnson <ajohnson@redneon.com> 12539AuthorDate: Sun Oct 21 23:49:58 2007 +0930 12540Commit: Adrian Johnson <ajohnson@redneon.com> 12541CommitDate: Sun Oct 21 23:49:58 2007 +0930 12542 12543 win32-printing: fix dash-caps-joins test failure 12544 12545 src/cairo-win32-printing-surface.c | 11 ++++++----- 12546 1 file changed, 6 insertions(+), 5 deletions(-) 12547 12548commit 5fa62250456745907dd97fdb9030481bdc91a8dd 12549Author: Adrian Johnson <ajohnson@redneon.com> 12550AuthorDate: Sun Oct 21 23:49:33 2007 +0930 12551Commit: Adrian Johnson <ajohnson@redneon.com> 12552CommitDate: Sun Oct 21 23:49:33 2007 +0930 12553 12554 win32-printing: Add test boilerplate 12555 12556 Testing win32-printing requires setting the default printer to 12557 a PostScript level 3 color printer. The PostScript output is 12558 saved to a file and converted to png using ghostscript. 12559 12560 boilerplate/Makefile.am | 2 + 12561 boilerplate/cairo-boilerplate-win32-printing.c | 308 +++++++++++++++++++++++++ 12562 boilerplate/cairo-boilerplate-win32-private.h | 15 ++ 12563 boilerplate/cairo-boilerplate.c | 11 + 12564 4 files changed, 336 insertions(+) 12565 12566commit e63b5e5201a79a8af4bd1d5acb524f067b5f2794 12567Author: Adrian Johnson <ajohnson@redneon.com> 12568AuthorDate: Sun Oct 21 23:47:35 2007 +0930 12569Commit: Adrian Johnson <ajohnson@redneon.com> 12570CommitDate: Sun Oct 21 23:47:35 2007 +0930 12571 12572 win32-printing: Use the surface ctm in show_glyphs 12573 12574 show_glyphs needs to scale the font by the current CTM. 12575 12576 src/cairo-win32-printing-surface.c | 14 ++++++++++++++ 12577 1 file changed, 14 insertions(+) 12578 12579commit ac9831ea55bd62f0ed427230ad80348768415852 12580Author: Adrian Johnson <ajohnson@redneon.com> 12581AuthorDate: Sun Oct 21 23:46:52 2007 +0930 12582Commit: Adrian Johnson <ajohnson@redneon.com> 12583CommitDate: Sun Oct 21 23:46:52 2007 +0930 12584 12585 win32-printing: fix stroke rounding problems 12586 12587 The win32 CTM is changed to user space to set the stroke parameters. 12588 As win32 uses integers for stroke parameters this will cause rounding 12589 problems depending on the CTM used. 12590 12591 This is fixed by factoring out a scale from the user space CTM so that 12592 xx, xy, yx, and yy in the CTM are all < 1. This preserves the shape 12593 of the transformation while ensuring that the CTM does not cause 12594 rounding problems. The stroke parameters are multiplied by the scale 12595 value. 12596 12597 src/cairo-win32-printing-surface.c | 35 +++++++++++++++++++++++++++++------ 12598 1 file changed, 29 insertions(+), 6 deletions(-) 12599 12600commit 89fe7b2ff09d19d3bdc84a8ee871e15716ff3539 12601Author: Adrian Johnson <ajohnson@redneon.com> 12602AuthorDate: Sun Oct 21 23:45:40 2007 +0930 12603Commit: Adrian Johnson <ajohnson@redneon.com> 12604CommitDate: Sun Oct 21 23:45:40 2007 +0930 12605 12606 win32-printing: fix rounding problems when using pattern matrix 12607 12608 When using meta surface patterns, the win32 CTM is changed to the 12609 inverted pattern matrix then the meta surface is replayed to the 12610 surface. The problem with this is that win32 uses integer coordinates 12611 for GDI functions. A pattern matrix that scale the CTM up will cause 12612 rounding errors in the position of each path in the pattern. 12613 12614 This is fixed by always keeping the win32 CTM set to the identity 12615 matrix. The CTM is stored in the surface and all coordinates are 12616 transformed by the CTM before calling GDI functions. 12617 12618 src/cairo-win32-printing-surface.c | 167 ++++++++++++++++++++++++++++++------- 12619 src/cairo-win32-private.h | 2 + 12620 2 files changed, 138 insertions(+), 31 deletions(-) 12621 12622commit af01d9b8fabc2422eb7db144171d52fab95c4387 12623Author: Adrian Johnson <ajohnson@redneon.com> 12624AuthorDate: Sun Oct 21 23:43:27 2007 +0930 12625Commit: Adrian Johnson <ajohnson@redneon.com> 12626CommitDate: Sun Oct 21 23:43:27 2007 +0930 12627 12628 win32-printing: add meta surface pattern support 12629 12630 src/cairo-win32-printing-surface.c | 251 +++++++++++++++++++++++++++++-------- 12631 src/cairo-win32-private.h | 1 + 12632 2 files changed, 200 insertions(+), 52 deletions(-) 12633 12634commit dae1b352c60e6a63ec2131f788fec230fd583d3d 12635Author: Adrian Johnson <ajohnson@redneon.com> 12636AuthorDate: Sun Oct 21 23:42:54 2007 +0930 12637Commit: Adrian Johnson <ajohnson@redneon.com> 12638CommitDate: Sun Oct 21 23:42:54 2007 +0930 12639 12640 update cairo-sections.txt 12641 12642 doc/public/cairo-sections.txt | 1 + 12643 1 file changed, 1 insertion(+) 12644 12645commit c8da2a7dedb8352bb623954c3ac40244b86eeb24 12646Author: Adrian Johnson <ajohnson@redneon.com> 12647AuthorDate: Sun Oct 21 23:42:22 2007 +0930 12648Commit: Adrian Johnson <ajohnson@redneon.com> 12649CommitDate: Sun Oct 21 23:42:22 2007 +0930 12650 12651 win32-printing: check if images are opaque 12652 12653 Don't use fallback for argb32 images with all alpha == 255. 12654 12655 src/cairo-win32-printing-surface.c | 57 ++++++++++++++++++++++++++++++++++++++ 12656 1 file changed, 57 insertions(+) 12657 12658commit 9eb5747755f8c57bd6ba04925e193503fe194462 12659Author: Adrian Johnson <ajohnson@redneon.com> 12660AuthorDate: Sun Oct 21 23:41:31 2007 +0930 12661Commit: Adrian Johnson <ajohnson@redneon.com> 12662CommitDate: Sun Oct 21 23:41:31 2007 +0930 12663 12664 win32-printing: Add missing struct initializers 12665 12666 src/cairo-win32-printing-surface.c | 4 +++- 12667 1 file changed, 3 insertions(+), 1 deletion(-) 12668 12669commit 8f6abdbc26ee15451b5a386610f7d5a7a9114d63 12670Author: Brian Ewins <Brian.Ewins@gmail.com> 12671AuthorDate: Sat Oct 20 23:41:46 2007 +0100 12672Commit: Brian Ewins <Brian.Ewins@gmail.com> 12673CommitDate: Sat Oct 20 23:41:46 2007 +0100 12674 12675 [quartz] return status instead of CGPatternRef 12676 12677 Returning status improves error handling, since 12678 returning NULL doesn't let us distinguish different 12679 types of error. 12680 12681 src/cairo-quartz-surface.c | 20 +++++++++++--------- 12682 1 file changed, 11 insertions(+), 9 deletions(-) 12683 12684commit cfb26fdf0f490b4902106b50d02628cffd53a0eb 12685Author: Brian Ewins <Brian.Ewins@gmail.com> 12686AuthorDate: Sat Oct 20 23:41:32 2007 +0100 12687Commit: Brian Ewins <Brian.Ewins@gmail.com> 12688CommitDate: Sat Oct 20 23:41:32 2007 +0100 12689 12690 [quartz] return status instead of cairo_quartz_surface_t 12691 12692 Returning status improves error handling, since 12693 returning NULL doesn't let us distinguish different 12694 types of error. 12695 12696 src/cairo-quartz-surface.c | 32 ++++++++++++++++++-------------- 12697 1 file changed, 18 insertions(+), 14 deletions(-) 12698 12699commit dec3099585eeb184ed51b5c720eb891314d7ea51 12700Author: Brian Ewins <Brian.Ewins@gmail.com> 12701AuthorDate: Sat Oct 20 22:45:30 2007 +0100 12702Commit: Brian Ewins <Brian.Ewins@gmail.com> 12703CommitDate: Sat Oct 20 22:45:30 2007 +0100 12704 12705 [quartz] return status instead of CGShadingRef 12706 12707 Returning status improves error handling, since 12708 returning NULL doesn't let us distinguish different 12709 types of error. Suggested by Chris Wilson. 12710 12711 src/cairo-quartz-surface.c | 30 ++++++++++++++++-------------- 12712 1 file changed, 16 insertions(+), 14 deletions(-) 12713 12714commit 481ce2b8cb2dc376419e7d6cbdd73bd4ebcd5b5b 12715Author: Brian Ewins <Brian.Ewins@gmail.com> 12716AuthorDate: Sun Jul 1 14:37:57 2007 +0100 12717Commit: Brian Ewins <Brian.Ewins@gmail.com> 12718CommitDate: Sat Oct 20 14:06:07 2007 +0100 12719 12720 implement clipping with surface masks. 12721 12722 This implements clipping using CGContextClipToMask, which 12723 means that it will only have an effect on OS X 10.4+. 12724 No additional tests pass with this fix - mainly due to 12725 text effects and problems with the IN, OUT, DEST_IN, DEST_ATOP 12726 operators. 12727 12728 src/cairo-quartz-surface.c | 43 +++++++++++++++++++++++++++++++++++++++++++ 12729 1 file changed, 43 insertions(+) 12730 12731commit b9c065df74027b06e15e105fee5e4a4d350e0abf 12732Author: Brian Ewins <Brian.Ewins@gmail.com> 12733AuthorDate: Sun Jun 24 23:53:47 2007 +0100 12734Commit: Brian Ewins <Brian.Ewins@gmail.com> 12735CommitDate: Sat Oct 20 14:02:19 2007 +0100 12736 12737 fix dash-zero-length test 12738 12739 Quartz was failing the dash-zero-length test for odd numbers 12740 of dashes; it seems cairo wants 3 dashes to be on-off-on, 12741 off-on-off, wheras quartz uses on-off-on, on-off-on. Fixed 12742 by doubling the number of dashes used. 12743 12744 src/cairo-quartz-surface.c | 16 +++++++++++----- 12745 1 file changed, 11 insertions(+), 5 deletions(-) 12746 12747commit f334ee0397963e12c9efcb2690792aac83734661 12748Author: Brian Ewins <Brian.Ewins@gmail.com> 12749AuthorDate: Sun Jun 24 01:17:58 2007 +0100 12750Commit: Brian Ewins <Brian.Ewins@gmail.com> 12751CommitDate: Sat Oct 20 14:02:17 2007 +0100 12752 12753 Implement EXTEND_NONE for gradients. 12754 12755 Fixes linear and radial gradients, which were displaying with 12756 extend_pad when extend_none was requested. Makes the 12757 radial-gradient test pass. 12758 12759 src/cairo-quartz-surface.c | 6 ++++-- 12760 1 file changed, 4 insertions(+), 2 deletions(-) 12761 12762commit 0eeec372c0e7849d81bde8c8c5bf491919f51a6e 12763Author: Brian Ewins <Brian.Ewins@gmail.com> 12764AuthorDate: Sat Jun 23 23:36:32 2007 +0100 12765Commit: Brian Ewins <Brian.Ewins@gmail.com> 12766CommitDate: Sat Oct 20 14:02:16 2007 +0100 12767 12768 call _cairo_error on failure 12769 12770 Call _cairo_error to enable setting a breakpoint on quartz errors. 12771 12772 src/cairo-quartz-surface.c | 1 + 12773 1 file changed, 1 insertion(+) 12774 12775commit 8c8ec63903f8ad67a88394eff1359607bb93cf88 12776Author: Brian Ewins <Brian.Ewins@gmail.com> 12777AuthorDate: Sat Jun 23 12:34:24 2007 +0100 12778Commit: Brian Ewins <Brian.Ewins@gmail.com> 12779CommitDate: Sat Oct 20 14:02:15 2007 +0100 12780 12781 do not return a cairo_status_t of UNSUPPORTED 12782 12783 We had a bug which converted cairo_int_status_t to cairo_status_t, 12784 causing an assertion; reported at http://developer.imendio.com/node/128. 12785 Return the generic out of memory error instead. 12786 12787 src/cairo-quartz-surface.c | 9 +++++++-- 12788 1 file changed, 7 insertions(+), 2 deletions(-) 12789 12790commit 6fec51990e90901ebafbb872a9e618cb70d17911 12791Author: Brian Ewins <Brian.Ewins@gmail.com> 12792AuthorDate: Mon Jun 18 00:07:33 2007 +0100 12793Commit: Brian Ewins <Brian.Ewins@gmail.com> 12794CommitDate: Sat Oct 20 14:00:15 2007 +0100 12795 12796 do not ignore errors, return NULL instead (moz#874315) 12797 12798 In the quartz backend there are occasional errors where returning NULL 12799 can be used to signal that an error has occured. 12800 12801 Mozilla bug #874315. 12802 12803 src/cairo-quartz-surface.c | 37 ++++++++++++++++++++++++++++--------- 12804 1 file changed, 28 insertions(+), 9 deletions(-) 12805 12806commit 07fd091e3e6b925c588b9a16f6f10efcd46615c2 12807Author: Brian Ewins <Brian.Ewins@gmail.com> 12808AuthorDate: Mon Jun 18 00:07:33 2007 +0100 12809Commit: Brian Ewins <Brian.Ewins@gmail.com> 12810CommitDate: Sat Oct 20 13:52:09 2007 +0100 12811 12812 do not ignore errors in setup_source 12813 12814 In setup_source we were ignoring a return value, but we can't relay 12815 it to the caller. This patch treats the error as an unsupported 12816 operation. 12817 12818 src/cairo-quartz-surface.c | 6 +++++- 12819 1 file changed, 5 insertions(+), 1 deletion(-) 12820 12821commit b6b9cef7136453f97543173bcb2ade46b1c46b77 12822Author: Brian Ewins <Brian.Ewins@gmail.com> 12823AuthorDate: Tue Jun 19 21:13:39 2007 +0100 12824Commit: Brian Ewins <Brian.Ewins@gmail.com> 12825CommitDate: Sat Oct 20 13:52:08 2007 +0100 12826 12827 do not ignore errors when creating styles. 12828 12829 This fixes statuses being ignored when calling 12830 CreateSizedCopyOfStyle. As a side effect, it cleans up 12831 two other bugs - the font object was sometimes not 12832 freed, and a the scaled font mutex was aquired recursively, 12833 causing a hang in the invalid-matrix test. 12834 12835 src/cairo-atsui-font.c | 37 ++++++++++++++++++++++++++----------- 12836 1 file changed, 26 insertions(+), 11 deletions(-) 12837 12838commit 4885a12c6863321a566e7103bf6dccdd5d13a986 12839Author: Brian Ewins <Brian.Ewins@gmail.com> 12840AuthorDate: Mon Jun 18 00:07:33 2007 +0100 12841Commit: Brian Ewins <Brian.Ewins@gmail.com> 12842CommitDate: Sat Oct 20 13:52:08 2007 +0100 12843 12844 do not ignore ATSUI errors. 12845 12846 This fixes multiple instances where the return value of an ATSUI 12847 call was ignored and converts them into CAIRO_STATUS_NO_MEMORY. 12848 As a side effect it fixes a utf8 array not being freed. 12849 12850 src/cairo-atsui-font.c | 74 ++++++++++++++++++++++++++++++++++++++++++++------ 12851 1 file changed, 65 insertions(+), 9 deletions(-) 12852 12853commit b498c928be73635614596243d17a922e9d5ff008 12854Author: Brian Ewins <Brian.Ewins@gmail.com> 12855AuthorDate: Mon Jun 18 00:07:33 2007 +0100 12856Commit: Brian Ewins <Brian.Ewins@gmail.com> 12857CommitDate: Sat Oct 20 13:52:08 2007 +0100 12858 12859 do not ignore errors in glyph paths 12860 12861 When interpreting glyph paths in ATSUI callbacks we were ignoring 12862 the cairo status. We need to return this to the caller. In order 12863 to do this we introduce a custom OSStatus code in the range that 12864 Apple reccommend. 12865 12866 src/cairo-atsui-font.c | 30 ++++++++++++++++++++++++------ 12867 1 file changed, 24 insertions(+), 6 deletions(-) 12868 12869commit 95c708c717a367205845cefc81ae0afd9bd3d18f 12870Author: Brian Ewins <Brian.Ewins@gmail.com> 12871AuthorDate: Mon Jun 18 00:07:33 2007 +0100 12872Commit: Brian Ewins <Brian.Ewins@gmail.com> 12873CommitDate: Sat Oct 20 13:52:08 2007 +0100 12874 12875 propagate cairo_status_t return values 12876 12877 There are several places in the quartz surface where we ignored 12878 the returned status. This fixes the simple cases where the error 12879 can just be returned to the caller. 12880 12881 src/cairo-quartz-surface.c | 16 +++++++++++++--- 12882 1 file changed, 13 insertions(+), 3 deletions(-) 12883 12884commit 7072959e3da0e8814cfd5193f8915aeb1341cc37 12885Author: Brian Ewins <Brian.Ewins@gmail.com> 12886AuthorDate: Sat Oct 20 11:46:54 2007 +0100 12887Commit: Brian Ewins <Brian.Ewins@gmail.com> 12888CommitDate: Sat Oct 20 13:52:08 2007 +0100 12889 12890 Fix to support new similar tests. 12891 12892 The patch to repeat tests for similar surfaces changed the 12893 format of the test log files, which were parsed to produce 12894 index.html. This fixes the parser to understand those changes. 12895 12896 test/make-html.pl | 136 ++++++++++++++++++++++++++++++------------------------ 12897 1 file changed, 75 insertions(+), 61 deletions(-) 12898 12899commit ae2535e4cb7c09eda1be13079d7a23b262aaef7b 12900Author: Chris Wilson <chris@chris-wilson.co.uk> 12901AuthorDate: Fri Oct 19 23:25:57 2007 +0100 12902Commit: Chris Wilson <chris@chris-wilson.co.uk> 12903CommitDate: Sat Oct 20 00:32:00 2007 +0100 12904 12905 [cairo-perf] Run performance tests over similar surfaces as well. 12906 12907 Immediately repeat the performance test against a similar surface to 12908 ensure that they introduce no regressions. Primarily introduced to 12909 sanity check the change to use XShmPixmaps instead of XPixmaps in the 12910 xlib backend, but it should be generally useful. 12911 12912 perf/cairo-perf.c | 121 +++++++++++++++++++++++++++++++++--------------------- 12913 1 file changed, 75 insertions(+), 46 deletions(-) 12914 12915commit 081507a09e61e1e4a048e40f8ba67a76aa76bbef 12916Author: Chris Wilson <chris@chris-wilson.co.uk> 12917AuthorDate: Fri Oct 19 22:26:28 2007 +0100 12918Commit: Chris Wilson <chris@chris-wilson.co.uk> 12919CommitDate: Sat Oct 20 00:15:34 2007 +0100 12920 12921 [cairo-test] Repeat tests for similar surfaces. 12922 12923 Having noticed strange discrepancies creeping into similar surfaces 12924 whilst working on the xlib backend, I thought it wise to also run 12925 the test harness against similar targets. For consistency, only 12926 targets whose similar surface use the same backend are included. 12927 12928 This can be disabled by exporting CAIRO_TEST_IGNORE_SIMILAR=1. 12929 12930 test/cairo-test.c | 173 +++++++++++++++++++++++++++++++++++------------------- 12931 1 file changed, 113 insertions(+), 60 deletions(-) 12932 12933commit 3211d810d31a6607c8d78a50f577a8ca8eb705e6 12934Author: Chris Wilson <chris@chris-wilson.co.uk> 12935AuthorDate: Fri Oct 19 22:45:15 2007 +0100 12936Commit: Chris Wilson <chris@chris-wilson.co.uk> 12937CommitDate: Fri Oct 19 23:33:22 2007 +0100 12938 12939 [cairo-xlib] Check source for XRender support. 12940 12941 Do not rely on the assumption that if the destination has render support 12942 then the source has it as well - breaks when the boilerplate disables 12943 render support for a surface. 12944 12945 Similarly do not set the XRender attributes on the source surface 12946 unless it actually has a xrender_format. 12947 12948 src/cairo-xlib-surface.c | 17 +++++++++-------- 12949 1 file changed, 9 insertions(+), 8 deletions(-) 12950 12951commit 5c08226a0f7bc373a96fe75d15ad854910eb3265 12952Author: Chris Wilson <chris@chris-wilson.co.uk> 12953AuthorDate: Fri Oct 19 16:04:33 2007 +0100 12954Commit: Chris Wilson <chris@chris-wilson.co.uk> 12955CommitDate: Fri Oct 19 23:33:04 2007 +0100 12956 12957 [cairo-clip] Avoid work when all clipped out. 12958 12959 When the clip mask is empty we perform actions like composite 0x0 12960 surfaces, which results in a lot of unnecessary work and allocations. 12961 Avoid doing work when we know everything is clip out and take the 12962 liberty of freeing any memory associated with the clop state. 12963 12964 src/cairo-clip-private.h | 2 ++ 12965 src/cairo-clip.c | 86 +++++++++++++++++++++++++++++++++++++++++++----- 12966 2 files changed, 79 insertions(+), 9 deletions(-) 12967 12968commit c70c2cf6d6a71df54515175af0cb1651b67bdb86 12969Author: Chris Wilson <chris@chris-wilson.co.uk> 12970AuthorDate: Fri Oct 19 23:31:36 2007 +0100 12971Commit: Chris Wilson <chris@chris-wilson.co.uk> 12972CommitDate: Fri Oct 19 23:31:36 2007 +0100 12973 12974 [Makefile.am] Fix ${top_srcdir}/libtool 12975 12976 libtool exists in the top level build directory, but in a couple of 12977 places we refer to the top level source directory. 12978 12979 perf/Makefile.am | 4 ++-- 12980 test/Makefile.am | 2 +- 12981 2 files changed, 3 insertions(+), 3 deletions(-) 12982 12983commit 76e3b3cdc3dda986d420637cfc2445aca481a863 12984Author: Behdad Esfahbod <behdad@behdad.org> 12985AuthorDate: Fri Oct 19 15:02:03 2007 -0400 12986Commit: Behdad Esfahbod <behdad@behdad.org> 12987CommitDate: Fri Oct 19 15:02:03 2007 -0400 12988 12989 [cairo-xlib] Release glyph surfaces if we made them to be generated 12990 12991 The reasoning is that right now, applications render glyphs to images, 12992 upload it to the X server, and keep a local copy in the cache. The X 12993 server works hard to reuse glyph renderings, by hashing glyph images and 12994 reusing them. So we are wasting memory in cairo apps that don't use the 12995 glyph surface after uploading to the server, which is the case if you 12996 don't use the glyph in an image surface. The patch does not release the 12997 glyph surface if it already existed in the cache, so, worst case 12998 scenario is that we render the glyph twice, if you first use it with 12999 xlib, then with image surface. That effect should be negligible. 13000 13001 src/cairo-xlib-surface.c | 83 ++++++++++++++++++++++++++++++++++++------------ 13002 1 file changed, 63 insertions(+), 20 deletions(-) 13003 13004commit 8ae778273799ee9f6d3c13e9c41730daeda2c743 13005Author: Chris Wilson <chris@chris-wilson.co.uk> 13006AuthorDate: Thu Oct 18 20:07:12 2007 +0100 13007Commit: Chris Wilson <chris@chris-wilson.co.uk> 13008CommitDate: Thu Oct 18 20:09:54 2007 +0100 13009 13010 [cairo-xlib-surface] Match content to xrender_format using the channel masks. 13011 13012 _xrender_format_to_content() was using the channel offset to determine 13013 whether the format supported a content type. 13014 For example, the XRenderPictFormat for the A8 format looks like: 13015 direct.alpha = 0; direct.alphaMask = 0xff; 13016 direct.red = 0; direct.redMask = 0x00; 13017 direct.green = 0; direct.greenMask = 0x00; 13018 direct.blue = 0; direct.blueMask = 0x00; 13019 which _xrender_format_to_content() matched as CAIRO_CONTENT_COLOR. 13020 13021 Switch to using the channel masks for deducing content type. 13022 13023 src/cairo-xlib-surface.c | 8 ++++---- 13024 1 file changed, 4 insertions(+), 4 deletions(-) 13025 13026commit b7d8763c58165817f3238def4d1771ce8575139e 13027Author: Chris Wilson <chris@chris-wilson.co.uk> 13028AuthorDate: Thu Oct 18 19:42:21 2007 +0100 13029Commit: Chris Wilson <chris@chris-wilson.co.uk> 13030CommitDate: Thu Oct 18 20:09:54 2007 +0100 13031 13032 [check-plt] Use -W flag to readelf. 13033 13034 Pass -W to readelf so that the output (in particular the function name) 13035 is not clipped to fit within 80 characters. 13036 13037 src/check-plt.sh | 2 +- 13038 1 file changed, 1 insertion(+), 1 deletion(-) 13039 13040commit 01eb16977359c7953dbabb52e1f6a132d93839f3 13041Author: Chris Wilson <chris@chris-wilson.co.uk> 13042AuthorDate: Thu Oct 18 19:28:00 2007 +0100 13043Commit: Chris Wilson <chris@chris-wilson.co.uk> 13044CommitDate: Thu Oct 18 20:09:54 2007 +0100 13045 13046 [test/.gitignore] Add *.exe.so 13047 13048 Ignore these winegcc output files. 13049 13050 test/.gitignore | 1 + 13051 1 file changed, 1 insertion(+) 13052 13053commit c64335a9a846ba18411a720f6e69e511b15e2c6b 13054Author: Chris Wilson <chris@chris-wilson.co.uk> 13055AuthorDate: Wed Oct 17 23:12:49 2007 +0100 13056Commit: Chris Wilson <chris@chris-wilson.co.uk> 13057CommitDate: Thu Oct 18 19:21:35 2007 +0100 13058 13059 [cairo-scaled-font-subsets] Simplify boolean return code. 13060 13061 _cairo_sub_font_lookup_glyph() was returning either a NULL_POINTER 13062 error or success whereas its only caller was using it as a simple 13063 predicate and handled the 'error' rather than propagate it upwards. 13064 13065 src/cairo-scaled-font-subsets.c | 20 +++++++++----------- 13066 1 file changed, 9 insertions(+), 11 deletions(-) 13067 13068commit 379b9b79fa77be1bf9b5e0581b2363e80b0a8c88 13069Author: Chris Wilson <chris@chris-wilson.co.uk> 13070AuthorDate: Wed Oct 17 20:41:57 2007 +0100 13071Commit: Chris Wilson <chris@chris-wilson.co.uk> 13072CommitDate: Thu Oct 18 19:21:01 2007 +0100 13073 13074 [cairo-xlib] Move the buggy_repeat discovery to the display_t. 13075 13076 The VendorString parsing (to detect broken Xserver versions) was being 13077 performed for each surface creation, but as it is a display invariant 13078 we can save a small amount of work by storing the result on the 13079 cairo_xlib_display_t. 13080 13081 src/cairo-xlib-display.c | 9 +++++++++ 13082 src/cairo-xlib-private.h | 1 + 13083 src/cairo-xlib-surface.c | 9 +-------- 13084 3 files changed, 11 insertions(+), 8 deletions(-) 13085 13086commit 5e09653e5dca60902423938737195e38ccde1b95 13087Author: Chris Wilson <chris@chris-wilson.co.uk> 13088AuthorDate: Tue Oct 16 15:30:50 2007 +0100 13089Commit: Chris Wilson <chris@chris-wilson.co.uk> 13090CommitDate: Tue Oct 16 16:03:28 2007 +0100 13091 13092 [test/rgb24-ignore-alpha] Destroy the surface after use. 13093 13094 Destroy the surface so that valgrind doesn't complain about the memory 13095 leak. 13096 13097 test/rgb24-ignore-alpha.c | 2 ++ 13098 1 file changed, 2 insertions(+) 13099 13100commit bd3dd72262772f1b2dfd8335630163f2e3bfacac 13101Author: Chris Wilson <chris@chris-wilson.co.uk> 13102AuthorDate: Tue Oct 16 15:29:59 2007 +0100 13103Commit: Chris Wilson <chris@chris-wilson.co.uk> 13104CommitDate: Tue Oct 16 16:03:03 2007 +0100 13105 13106 [pdiff] Reorganise the inner loops of the convolution. 13107 13108 Reorder the indices and introduce a couple of temporary accumulators to 13109 improve cache access. 13110 13111 test/pdiff/lpyramid.c | 27 +++++++++++++++------------ 13112 1 file changed, 15 insertions(+), 12 deletions(-) 13113 13114commit fa9201b9c98b18ea18fbee1e5608f20335a02131 13115Author: Chris Wilson <chris@chris-wilson.co.uk> 13116AuthorDate: Tue Oct 16 15:27:33 2007 +0100 13117Commit: Chris Wilson <chris@chris-wilson.co.uk> 13118CommitDate: Tue Oct 16 15:57:44 2007 +0100 13119 13120 [pdiff] Check for too small images. 13121 13122 The Laplacian pyramid can only work on images larger than 3x3 due to the 13123 size of its convolution kernel. So if the image is too small return an 13124 error (-1) before attempting to construction the pyramid. 13125 13126 test/pdiff/pdiff.c | 3 +++ 13127 1 file changed, 3 insertions(+) 13128 13129commit 3b1cc128dc4223ac88f7824dca223ed0f84df5d9 13130Author: Chris Wilson <chris@chris-wilson.co.uk> 13131AuthorDate: Tue Oct 16 10:55:04 2007 +0100 13132Commit: Chris Wilson <chris@chris-wilson.co.uk> 13133CommitDate: Tue Oct 16 10:56:24 2007 +0100 13134 13135 [cairo-ft-font] Add paranoid error checking to Fc* operations. 13136 13137 Check the return status when using Fc*() functions to modify the pattern 13138 and propagate the failure (if necessary). 13139 13140 src/cairo-ft-font.c | 178 ++++++++++++++++++++++++++++++------------------- 13141 src/cairo-ft-private.h | 1 - 13142 2 files changed, 108 insertions(+), 71 deletions(-) 13143 13144commit a55f1abf7cdc0276fe1eb85db969f33d0df4fe75 13145Author: Chris Wilson <chris@chris-wilson.co.uk> 13146AuthorDate: Tue Oct 16 10:29:45 2007 +0100 13147Commit: Chris Wilson <chris@chris-wilson.co.uk> 13148CommitDate: Tue Oct 16 10:42:37 2007 +0100 13149 13150 [cairo-clip] Pass the local pattern to create_similar_solid(). 13151 13152 Avoid the short-lived pattern allocation within 13153 _cairo_surface_create_similar_solid() by providing the local solid 13154 pattern to use as the source. 13155 13156 src/cairo-clip.c | 12 +++++++----- 13157 1 file changed, 7 insertions(+), 5 deletions(-) 13158 13159commit 7ff80234e3823547395819f96d7f7673df9ce9df 13160Author: Chris Wilson <chris@chris-wilson.co.uk> 13161AuthorDate: Tue Oct 16 10:37:45 2007 +0100 13162Commit: Chris Wilson <chris@chris-wilson.co.uk> 13163CommitDate: Tue Oct 16 10:42:15 2007 +0100 13164 13165 [cairo-path-fixed] Drop the _cairo_error() markup. 13166 13167 Do not use _cairo_error(CAIRO_STATUS_NO_CURRENT_POINT) within 13168 _cairo_path_fixed_get_current_point() as the only caller, 13169 cairo_get_current_point(), expects and handles that status. 13170 13171 src/cairo-path-fixed.c | 7 +++++-- 13172 1 file changed, 5 insertions(+), 2 deletions(-) 13173 13174commit 189feaf352f59b0a049202552024578715ef8cc7 13175Author: Chris Heath <chris@heathens.co.nz> 13176AuthorDate: Mon Oct 15 17:31:50 2007 -0400 13177Commit: Behdad Esfahbod <behdad@behdad.org> 13178CommitDate: Mon Oct 15 17:31:50 2007 -0400 13179 13180 [autogen.sh] Tolerate tput failure (#12757) 13181 13182 autogen.sh | 4 ++-- 13183 1 file changed, 2 insertions(+), 2 deletions(-) 13184 13185commit 4660561cb548ab8d1eca724fda4d3658c95d4c04 13186Author: Adrian Johnson <ajohnson@redneon.com> 13187AuthorDate: Sun Oct 14 19:05:06 2007 +0930 13188Commit: Adrian Johnson <ajohnson@redneon.com> 13189CommitDate: Sun Oct 14 19:05:06 2007 +0930 13190 13191 PDF: Add support for CAIRO_FORMAT_A1 images 13192 13193 src/cairo-pdf-surface.c | 43 ++++++++++++++++++++++++++++++++++++------- 13194 1 file changed, 36 insertions(+), 7 deletions(-) 13195 13196commit 39044157da03d598b816a459979f3d0e6285e023 13197Author: Adrian Johnson <ajohnson@redneon.com> 13198AuthorDate: Sun Oct 14 19:04:33 2007 +0930 13199Commit: Adrian Johnson <ajohnson@redneon.com> 13200CommitDate: Sun Oct 14 19:04:33 2007 +0930 13201 13202 PDF: Add support for linear gradients with REPEAT and REFLECT 13203 13204 src/cairo-pdf-surface.c | 228 +++++++++++++++++++++++++++++++++++++++--------- 13205 1 file changed, 189 insertions(+), 39 deletions(-) 13206 13207commit 5af1b2280b2cf952624d587496158a98df0ee504 13208Author: Adrian Johnson <ajohnson@redneon.com> 13209AuthorDate: Sun Oct 14 00:04:21 2007 +0930 13210Commit: Adrian Johnson <ajohnson@redneon.com> 13211CommitDate: Sun Oct 14 00:11:57 2007 +0930 13212 13213 Make PostScript output text selectable 13214 13215 The glyph names used in the Type42 and Type1 fallback fonts are now of 13216 the form "/uniXXXX" where XXXX is the unicode character for each 13217 glyph. When converted to pdf (eg using ps2pdf), pdf viewers are now 13218 able to correctly extract the text. 13219 13220 src/cairo-ps-surface.c | 36 ++++++-- 13221 src/cairo-scaled-font-subsets-private.h | 15 +++ 13222 src/cairo-scaled-font-subsets.c | 159 ++++++++++++++++++++++++++++++++ 13223 src/cairo-type1-fallback.c | 18 +++- 13224 src/cairoint.h | 1 + 13225 5 files changed, 219 insertions(+), 10 deletions(-) 13226 13227commit e347a7a7c394fc2638faa2ff52e4b96545ac1ee3 13228Author: Adrian Johnson <ajohnson@redneon.com> 13229AuthorDate: Sat Oct 13 22:59:20 2007 +0930 13230Commit: Adrian Johnson <ajohnson@redneon.com> 13231CommitDate: Sat Oct 13 22:59:20 2007 +0930 13232 13233 PS: Add support for images with bilevel alpha 13234 13235 This patch eliminates two sources of fallback images. The alpha value 13236 of each pixel in argb32 images are checked. If all alpha values are 13237 255 the image is treated the same as rgb24 images. If all alpha values 13238 are either 0 or 255 and the PS level is 3, a Type 3 image (image + 13239 mask) is emitted. 13240 13241 src/cairo-ps-surface.c | 519 ++++++++++++++++++++++++++++++++++++------------- 13242 1 file changed, 388 insertions(+), 131 deletions(-) 13243 13244commit af5cdde34d003b7d5943b169c160b91b8f7d10f3 13245Author: Adrian Johnson <ajohnson@redneon.com> 13246AuthorDate: Sat Oct 13 22:15:48 2007 +0930 13247Commit: Adrian Johnson <ajohnson@redneon.com> 13248CommitDate: Sat Oct 13 22:15:48 2007 +0930 13249 13250 PS/Win32-printing: remove redundant checks from _analyze_operation 13251 13252 The check for supported operators is performed earlier in this 13253 functions so these two checks in not required. 13254 13255 src/cairo-ps-surface.c | 6 ------ 13256 src/cairo-win32-printing-surface.c | 6 ------ 13257 2 files changed, 12 deletions(-) 13258 13259commit ff35ffd2a7baa775e2ef73b844e783434c149057 13260Author: Adrian Johnson <ajohnson@redneon.com> 13261AuthorDate: Sat Oct 13 22:09:04 2007 +0930 13262Commit: Adrian Johnson <ajohnson@redneon.com> 13263CommitDate: Sat Oct 13 22:09:04 2007 +0930 13264 13265 Add meta-surface-pattern test 13266 13267 test/.gitignore | 1 + 13268 test/Makefile.am | 1 + 13269 test/meta-surface-pattern-ref.png | Bin 0 -> 3072 bytes 13270 test/meta-surface-pattern-rgb24-ref.png | Bin 0 -> 3162 bytes 13271 test/meta-surface-pattern.c | 131 ++++++++++++++++++++++++++++++++ 13272 5 files changed, 133 insertions(+) 13273 13274commit 0b3f530973049737f942219452d991d76b65b724 13275Author: Adrian Johnson <ajohnson@redneon.com> 13276AuthorDate: Sat Oct 13 21:49:50 2007 +0930 13277Commit: Adrian Johnson <ajohnson@redneon.com> 13278CommitDate: Sat Oct 13 21:49:50 2007 +0930 13279 13280 Add PS reference images for tests using gradients 13281 13282 test/clip-operator-ps-argb32-ref.png | Bin 0 -> 8594 bytes 13283 test/gradient-alpha-ps-argb32-ref.png | Bin 0 -> 187 bytes 13284 test/gradient-alpha-ps-rgb24-ref.png | Bin 0 -> 184 bytes 13285 test/linear-gradient-ps-argb32-ref.png | Bin 0 -> 613 bytes 13286 test/linear-gradient-ps-rgb24-ref.png | Bin 0 -> 613 bytes 13287 test/operator-source-ps-argb32-ref.png | Bin 0 -> 3885 bytes 13288 test/operator-source-ps-rgb24-ref.png | Bin 0 -> 3548 bytes 13289 test/text-pattern-ps-argb32-ref.png | Bin 0 -> 997 bytes 13290 test/text-pattern-ps-rgb24-ref.png | Bin 0 -> 969 bytes 13291 test/trap-clip-ps-argb32-ref.png | Bin 5810 -> 5700 bytes 13292 test/trap-clip-ps-rgb24-ref.png | Bin 0 -> 5616 bytes 13293 11 files changed, 0 insertions(+), 0 deletions(-) 13294 13295commit e66ce8cbc6e53b4b07a9af6bb7d2294ada0782c0 13296Author: Adrian Johnson <ajohnson@redneon.com> 13297AuthorDate: Sat Oct 13 21:28:19 2007 +0930 13298Commit: Adrian Johnson <ajohnson@redneon.com> 13299CommitDate: Sat Oct 13 21:28:19 2007 +0930 13300 13301 PS: Add linear and radial gradient support 13302 13303 src/cairo-ps-surface.c | 321 ++++++++++++++++++++++++++++++++++++++++++++----- 13304 1 file changed, 291 insertions(+), 30 deletions(-) 13305 13306commit 583059e4a3e86c937de13c07a50486f7ca77b335 13307Author: Adrian Johnson <ajohnson@redneon.com> 13308AuthorDate: Sat Oct 13 21:16:49 2007 +0930 13309Commit: Adrian Johnson <ajohnson@redneon.com> 13310CommitDate: Sat Oct 13 21:16:49 2007 +0930 13311 13312 Fix bug in _gradient_is_opaque() 13313 13314 src/cairo-pattern.c | 2 +- 13315 1 file changed, 1 insertion(+), 1 deletion(-) 13316 13317commit b5c36010edc92ca129a0498cf04592f8f692f800 13318Author: Adrian Johnson <ajohnson@redneon.com> 13319AuthorDate: Sat Oct 13 21:14:28 2007 +0930 13320Commit: Adrian Johnson <ajohnson@redneon.com> 13321CommitDate: Sat Oct 13 21:14:28 2007 +0930 13322 13323 Add cairo_ps_surface_restrict_to_level() API 13324 13325 doc/public/cairo-sections.txt | 4 ++ 13326 src/cairo-ps-surface-private.h | 2 + 13327 src/cairo-ps-surface.c | 99 +++++++++++++++++++++++++++++++++++++++++- 13328 src/cairo-ps.h | 25 +++++++++++ 13329 4 files changed, 129 insertions(+), 1 deletion(-) 13330 13331commit b5fa273c9a4f730882c6edade785236e72b2b4db 13332Author: Adrian Johnson <ajohnson@redneon.com> 13333AuthorDate: Sat Oct 13 21:04:51 2007 +0930 13334Commit: Adrian Johnson <ajohnson@redneon.com> 13335CommitDate: Sat Oct 13 21:04:51 2007 +0930 13336 13337 Add PS reference images for tests using create_similar 13338 13339 before the PS meta surface pattern patch these tests 13340 had image fallacks in the PS output and did not require 13341 a PS reference image. 13342 13343 test/clip-fill-rule-ps-rgb24-ref.png | Bin 0 -> 309 bytes 13344 test/clip-nesting-ps-rgb24-ref.png | Bin 0 -> 636 bytes 13345 test/clip-push-group-ps-argb32-ref.png | Bin 0 -> 179 bytes 13346 test/clip-push-group-ps-rgb24-ref.png | Bin 0 -> 179 bytes 13347 test/clip-twice-ps-rgb24-ref.png | Bin 0 -> 541 bytes 13348 test/copy-path-ps-rgb24-ref.png | Bin 0 -> 440 bytes 13349 test/dash-caps-joins-ps-rgb24-ref.png | Bin 0 -> 3852 bytes 13350 test/dash-scale-ps-rgb24-ref.png | Bin 0 -> 6316 bytes 13351 test/dash-state-ps-rgb24-ref.png | Bin 0 -> 8650 bytes 13352 test/degenerate-path-ps-rgb24-ref.png | Bin 0 -> 358 bytes 13353 test/fill-and-stroke-ps-rgb24-ref.png | Bin 0 -> 319 bytes 13354 test/fill-missed-stop-ps-rgb24-ref.png | Bin 0 -> 531 bytes 13355 test/fill-rule-ps-rgb24-ref.png | Bin 0 -> 2031 bytes 13356 test/font-matrix-translation-ps-rgb24-ref.png | Bin 0 -> 783 bytes 13357 test/leaky-dash-ps-rgb24-ref.png | Bin 0 -> 284 bytes 13358 test/line-width-scale-ps-rgb24-ref.png | Bin 0 -> 3901 bytes 13359 test/new-sub-path-ps-rgb24-ref.png | Bin 0 -> 423 bytes 13360 test/pixman-rotate-ps-argb32-ref.png | Bin 0 -> 411 bytes 13361 test/pixman-rotate-ps-rgb24-ref.png | Bin 0 -> 392 bytes 13362 test/random-intersections-ps-rgb24-ref.png | Bin 0 -> 89414 bytes 13363 test/rel-path-ps-rgb24-ref.png | Bin 0 -> 243 bytes 13364 test/rotate-image-surface-paint-ps-rgb24-ref.png | Bin 0 -> 274 bytes 13365 test/source-clip-scale-ps-argb32-ref.png | Bin 0 -> 183 bytes 13366 test/source-clip-scale-ps-rgb24-ref.png | Bin 0 -> 183 bytes 13367 test/text-rotate-ps-rgb24-ref.png | Bin 0 -> 7196 bytes 13368 25 files changed, 0 insertions(+), 0 deletions(-) 13369 13370commit 8520ce31be13bc939357cd45bd1b4c1967d7ff53 13371Author: Adrian Johnson <ajohnson@redneon.com> 13372AuthorDate: Sat Oct 13 20:17:43 2007 +0930 13373Commit: Adrian Johnson <ajohnson@redneon.com> 13374CommitDate: Sat Oct 13 20:17:43 2007 +0930 13375 13376 PS: Add meta surface pattern support 13377 13378 boilerplate/cairo-boilerplate.c | 11 +- 13379 src/cairo-ps-surface-private.h | 2 +- 13380 src/cairo-ps-surface.c | 257 +++++++++++++++++++++++++++------------- 13381 3 files changed, 177 insertions(+), 93 deletions(-) 13382 13383commit e5b01e67975578797b4f7875a9ba02121ff935b5 13384Author: Chris Wilson <chris@chris-wilson.co.uk> 13385AuthorDate: Thu Oct 11 17:54:55 2007 +0100 13386Commit: Chris Wilson <chris@chris-wilson.co.uk> 13387CommitDate: Thu Oct 11 18:05:46 2007 +0100 13388 13389 [Makefile.am] Add missing headers and reference images. 13390 13391 Andrew Jorgensen spotted that make dist was missing a few headers needed 13392 for compilation and running make distcheck had spurious failures. Add 13393 the missing files to the distribution and a silly one-liner to check for 13394 missing reference images. 13395 13396 src/Makefile.am | 2 ++ 13397 test/Makefile.am | 25 ++++++++++++++++++++++++- 13398 2 files changed, 26 insertions(+), 1 deletion(-) 13399 13400commit b7adcf67f8c640c146bada1fbeaa1cda1cfa825a 13401Author: Chris Wilson <chris@chris-wilson.co.uk> 13402AuthorDate: Thu Oct 11 14:11:06 2007 +0100 13403Commit: Chris Wilson <chris@chris-wilson.co.uk> 13404CommitDate: Thu Oct 11 15:01:14 2007 +0100 13405 13406 [cairo-path-stroke] Jump to cleanup after error. 13407 13408 Incorrect early return in _cairo_stroker_curve_to() after 13409 _cairo_stroker_join() resulted in leaking the local spline and pen. 13410 13411 src/cairo-path-stroke.c | 2 +- 13412 1 file changed, 1 insertion(+), 1 deletion(-) 13413 13414commit 0222c02d9525dc8ff1ad5a2bea46e623d9db1e43 13415Author: Chris Wilson <chris@chris-wilson.co.uk> 13416AuthorDate: Thu Oct 11 14:01:20 2007 +0100 13417Commit: Chris Wilson <chris@chris-wilson.co.uk> 13418CommitDate: Thu Oct 11 15:00:59 2007 +0100 13419 13420 [cairo-pdf-surface] Return UNSUPPORTED from _to_unicode_stream(). 13421 13422 Distinguish the UNSUPPORTED case where the font backend does not 13423 support conversion to unicode from other fatal errors by returning a 13424 status value rather than using stream.id == 0 to indicate any error. 13425 13426 src/cairo-pdf-surface.c | 71 +++++++++++++++++++++++++++---------------------- 13427 1 file changed, 39 insertions(+), 32 deletions(-) 13428 13429commit 981bc12e5b9b91ce1c5abe343ace837561059658 13430Author: Chris Wilson <chris@chris-wilson.co.uk> 13431AuthorDate: Wed Oct 10 23:58:43 2007 +0100 13432Commit: Chris Wilson <chris@chris-wilson.co.uk> 13433CommitDate: Thu Oct 11 15:00:47 2007 +0100 13434 13435 [cairo-ps-surface] Close a couple of memory leaks. 13436 13437 Adjust error paths to free local resources. 13438 13439 src/cairo-ps-surface.c | 18 +++++++++++------- 13440 1 file changed, 11 insertions(+), 7 deletions(-) 13441 13442commit c1db44b26501cd905fb9ca858f41632c148b6b07 13443Author: Chris Wilson <chris@chris-wilson.co.uk> 13444AuthorDate: Wed Oct 10 15:15:55 2007 +0100 13445Commit: Chris Wilson <chris@chris-wilson.co.uk> 13446CommitDate: Thu Oct 11 15:00:35 2007 +0100 13447 13448 [cairo-png] Clean up volatile warning. 13449 13450 gcc warns that 'rows' is missing a volatile qualifier - so add it. 13451 13452 src/cairo-png.c | 2 +- 13453 1 file changed, 1 insertion(+), 1 deletion(-) 13454 13455commit 05702b8b6ea73fecd04dc5cc4b26ad1d46fa8850 13456Author: Chris Wilson <chris@chris-wilson.co.uk> 13457AuthorDate: Tue Oct 9 23:37:34 2007 +0100 13458Commit: Chris Wilson <chris@chris-wilson.co.uk> 13459CommitDate: Thu Oct 11 15:00:22 2007 +0100 13460 13461 [cairo-pdf-surface] Free the clip path on error. 13462 13463 If we fail to add the clip path to the current group, destroy it. 13464 13465 src/cairo-pdf-surface.c | 14 +++++++++++--- 13466 1 file changed, 11 insertions(+), 3 deletions(-) 13467 13468commit 8fa5f638a5f8eee4f9efe267ede20344fc7bd4e2 13469Author: Chris Wilson <chris@chris-wilson.co.uk> 13470AuthorDate: Tue Oct 9 23:36:52 2007 +0100 13471Commit: Chris Wilson <chris@chris-wilson.co.uk> 13472CommitDate: Thu Oct 11 15:00:13 2007 +0100 13473 13474 [cairo-pdf-surface] Restore old_group for failed emit_meta_surface(). 13475 13476 Ensure we restore the surface->current_group if we encounter an error 13477 during _cairo_pdf_surface_emit_meta_surface() lest we leak the 13478 current_group array. 13479 13480 src/cairo-pdf-surface.c | 27 ++++++++++++++++----------- 13481 1 file changed, 16 insertions(+), 11 deletions(-) 13482 13483commit 8eb9fcf67336a8e4f95366956ae6f1880af4a93e 13484Author: Vladimir Vukicevic <vladimir@pobox.com> 13485AuthorDate: Wed Oct 10 14:05:22 2007 -0700 13486Commit: Vladimir Vukicevic <vladimir@pobox.com> 13487CommitDate: Wed Oct 10 14:05:39 2007 -0700 13488 13489 [win32] mask win32 printing vertex colors with 0xff00 per docs 13490 13491 The range for the vertex color structures is 0x0000 .. 0xff00; I 13492 think that this is an error in the docs, but strip out the low bits 13493 just in case. 13494 13495 src/cairo-win32-printing-surface.c | 11 +++++++---- 13496 1 file changed, 7 insertions(+), 4 deletions(-) 13497 13498commit 3545ebc1357969616e2f4fa6b36565f211ea36b3 13499Author: Vladimir Vukicevic <vladimir@pobox.com> 13500AuthorDate: Wed Oct 10 14:01:30 2007 -0700 13501Commit: Vladimir Vukicevic <vladimir@pobox.com> 13502CommitDate: Wed Oct 10 14:05:39 2007 -0700 13503 13504 Fix win32 printing surface copyright notice 13505 13506 Bad copy-and-paste of license. 13507 13508 src/cairo-win32-printing-surface.c | 4 ++-- 13509 1 file changed, 2 insertions(+), 2 deletions(-) 13510 13511commit 0b65c301a72836f46cdcda8b8fa1e995100c7727 13512Author: Chris Wilson <chris@chris-wilson.co.uk> 13513AuthorDate: Tue Oct 9 23:17:42 2007 +0100 13514Commit: Chris Wilson <chris@chris-wilson.co.uk> 13515CommitDate: Wed Oct 10 14:56:52 2007 +0100 13516 13517 [Makefile.am] Change lcov-clean to use more portable constructs. 13518 13519 Replace xargs and rm with the binaries found by configure and drop the 13520 passing of NUL-terminated strings as that is a GNU extension. 13521 13522 Makefile.am | 6 +++--- 13523 1 file changed, 3 insertions(+), 3 deletions(-) 13524 13525commit b8d7d62b08576364c8c402490b6f5e4a1472d5d8 13526Author: Chris Wilson <chris@chris-wilson.co.uk> 13527AuthorDate: Tue Oct 9 23:12:52 2007 +0100 13528Commit: Chris Wilson <chris@chris-wilson.co.uk> 13529CommitDate: Wed Oct 10 14:56:52 2007 +0100 13530 13531 Fix some trivial syntax warnings for -ansi. 13532 13533 gcc -ansi -pedantic gives a few syntax warnings, principally for use of 13534 '//' comments and a comma at the end of enumerators. Apply these 13535 corrections as they are trivial. 13536 13537 configure.in | 2 +- 13538 src/cairo-directfb-surface.c | 16 ++++++++-------- 13539 src/cairo-meta-surface-private.h | 2 +- 13540 src/cairo-type1-fallback.c | 2 +- 13541 src/cairo-types-private.h | 7 +++---- 13542 src/cairoint.h | 5 +++++ 13543 6 files changed, 19 insertions(+), 15 deletions(-) 13544 13545commit 7e6ac74de17cf82f224d9f5fad3ad60e92d7690b 13546Author: Chris Wilson <chris@chris-wilson.co.uk> 13547AuthorDate: Wed Oct 10 14:00:56 2007 +0100 13548Commit: Chris Wilson <chris@chris-wilson.co.uk> 13549CommitDate: Wed Oct 10 14:24:24 2007 +0100 13550 13551 [win32] Clean up compiler warnings. 13552 13553 Fix up a few instances of unused status returns. 13554 13555 src/cairo-win32-font.c | 89 +++++++++++++++++++++----------------- 13556 src/cairo-win32-printing-surface.c | 26 +++++++---- 13557 src/cairo-win32-surface.c | 24 +++++----- 13558 3 files changed, 76 insertions(+), 63 deletions(-) 13559 13560commit bee05467a5f398eaaaa8d79b3ff0a8b119856143 13561Author: Chris Wilson <chris@chris-wilson.co.uk> 13562AuthorDate: Wed Oct 10 12:32:16 2007 +0100 13563Commit: Chris Wilson <chris@chris-wilson.co.uk> 13564CommitDate: Wed Oct 10 14:24:12 2007 +0100 13565 13566 [configure.in] Initialise test_svg. 13567 13568 Set test_svg to no prior for checking for SVG availability so that the 13569 printed summary is correct if the user explicitly disables the SVG 13570 surface on the configure command line. 13571 13572 configure.in | 1 + 13573 1 file changed, 1 insertion(+) 13574 13575commit 785cb5b7e11a2786b60a995c43e9ee411ec5ec2d 13576Author: Chris Wilson <chris@chris-wilson.co.uk> 13577AuthorDate: Tue Oct 9 16:58:46 2007 +0100 13578Commit: Chris Wilson <chris@chris-wilson.co.uk> 13579CommitDate: Wed Oct 10 14:23:34 2007 +0100 13580 13581 [cairo-image-surface] Dead code elimination. 13582 13583 Remove an unreachable return and unused variable - tidy up after 13584 a bad merge. 13585 13586 src/cairo-image-surface.c | 3 --- 13587 1 file changed, 3 deletions(-) 13588 13589commit 2268c5907ce80fe40d54ccfac8435ee5e22d36de 13590Author: Chris Wilson <chris@chris-wilson.co.uk> 13591AuthorDate: Tue Oct 9 13:23:34 2007 +0100 13592Commit: Chris Wilson <chris@chris-wilson.co.uk> 13593CommitDate: Wed Oct 10 14:23:10 2007 +0100 13594 13595 [cairo-glitz-surface] Propagate errors from set_image(). 13596 13597 Propagate errors from _cairo_glitz_surface_set_image(). 13598 13599 src/cairo-glitz-surface.c | 28 ++++++++++++++++++++-------- 13600 1 file changed, 20 insertions(+), 8 deletions(-) 13601 13602commit 4958789b9e8bf531259b3d1ea27887a8319f7696 13603Author: Chris Wilson <chris@chris-wilson.co.uk> 13604AuthorDate: Tue Oct 9 12:49:08 2007 +0100 13605Commit: Chris Wilson <chris@chris-wilson.co.uk> 13606CommitDate: Wed Oct 10 14:22:49 2007 +0100 13607 13608 [cairo-xlib-surface] Propagate error from _draw_image_surface() to surface. 13609 13610 Instead of simply ignoring the error that may occur when we upload the 13611 destination image to the xlib surface (via XPutImage) record the error 13612 on the xlib surface. 13613 13614 src/cairo-xlib-surface.c | 8 +++++--- 13615 1 file changed, 5 insertions(+), 3 deletions(-) 13616 13617commit 9c65efeeb108c39e6f55c9247e7d11bfea35cb66 13618Author: Chris Wilson <chris@chris-wilson.co.uk> 13619AuthorDate: Tue Oct 9 11:51:48 2007 +0100 13620Commit: Chris Wilson <chris@chris-wilson.co.uk> 13621CommitDate: Wed Oct 10 14:22:25 2007 +0100 13622 13623 [boilerplate-test-surfaces] Check show page for errors. 13624 13625 Check that cairo_surface_show_page() did not generate any errors before 13626 reading back the image buffer and saving it as a png. 13627 13628 boilerplate/cairo-boilerplate-test-surfaces.c | 3 +++ 13629 1 file changed, 3 insertions(+) 13630 13631commit caf04b1bb89c1a7668e36d5f334765a2323bd564 13632Author: Chris Wilson <chris@chris-wilson.co.uk> 13633AuthorDate: Tue Oct 9 11:22:46 2007 +0100 13634Commit: Chris Wilson <chris@chris-wilson.co.uk> 13635CommitDate: Wed Oct 10 14:22:13 2007 +0100 13636 13637 [cairo-cff-subset] Propagate error status from failed append_copy(). 13638 13639 Add a couple of missing status checks for the result of 13640 cff_index_append_copy(). 13641 13642 src/cairo-cff-subset.c | 16 ++++++++++------ 13643 1 file changed, 10 insertions(+), 6 deletions(-) 13644 13645commit ef275cd65a9f20a8a3b1fb3883aff0cc8a3bf401 13646Author: Chris Wilson <chris@chris-wilson.co.uk> 13647AuthorDate: Tue Oct 9 11:19:45 2007 +0100 13648Commit: Chris Wilson <chris@chris-wilson.co.uk> 13649CommitDate: Wed Oct 10 14:22:00 2007 +0100 13650 13651 [test-meta-surface] Propagate error from show_page(). 13652 13653 Add a missing error propagation for _test_meta_surface_show_page(). 13654 13655 src/test-meta-surface.c | 8 ++++++-- 13656 1 file changed, 6 insertions(+), 2 deletions(-) 13657 13658commit 7758e56d0c96fd113a12b2adc92c783e962feebf 13659Author: Chris Wilson <chris@chris-wilson.co.uk> 13660AuthorDate: Tue Oct 9 11:16:40 2007 +0100 13661Commit: Chris Wilson <chris@chris-wilson.co.uk> 13662CommitDate: Wed Oct 10 14:21:51 2007 +0100 13663 13664 [cairo-hull] Remove a couple of redundant status returns. 13665 13666 Those two functions unconditionally returned success, so change the 13667 return to void. 13668 13669 src/cairo-hull.c | 10 +++------- 13670 1 file changed, 3 insertions(+), 7 deletions(-) 13671 13672commit 1dabfc2b271a57b4eaa13922a031ccd38a586dd1 13673Author: Chris Wilson <chris@chris-wilson.co.uk> 13674AuthorDate: Tue Oct 9 11:15:27 2007 +0100 13675Commit: Chris Wilson <chris@chris-wilson.co.uk> 13676CommitDate: Wed Oct 10 14:21:39 2007 +0100 13677 13678 [cairo-clip] Propagate error status from clip_intersect_path(). 13679 13680 Propagate the error status (filtering out UNSUPPORTED) from 13681 intersect_path() when reapplying the clip path during a deep copy. 13682 13683 src/cairo-clip.c | 51 +++++++++++++++++++++++++++++++-------------------- 13684 1 file changed, 31 insertions(+), 20 deletions(-) 13685 13686commit 32b78fffc3b8441029ee6b48762a7d0c06bb44a8 13687Author: Chris Wilson <chris@chris-wilson.co.uk> 13688AuthorDate: Tue Oct 9 11:08:58 2007 +0100 13689Commit: Chris Wilson <chris@chris-wilson.co.uk> 13690CommitDate: Wed Oct 10 14:21:25 2007 +0100 13691 13692 [cairo-traps] Simplify the status interaction of traps_grow(). 13693 13694 Simply return the error status from the traps_grow() function rather 13695 than having an assignment in the return function and then immediately 13696 another assignment of the error to the status member at its callsite. 13697 13698 src/cairo-traps.c | 11 +++-------- 13699 1 file changed, 3 insertions(+), 8 deletions(-) 13700 13701commit 66563eddd8ba2610fa59341b9337a30533e70d56 13702Author: Chris Wilson <chris@chris-wilson.co.uk> 13703AuthorDate: Tue Oct 9 09:28:35 2007 +0100 13704Commit: Chris Wilson <chris@chris-wilson.co.uk> 13705CommitDate: Wed Oct 10 14:20:19 2007 +0100 13706 13707 [cairo-pdf-surface] Check status return after emit_meta_pattern(). 13708 13709 Add the missing status propagation. 13710 13711 src/cairo-pdf-surface.c | 8 ++++++-- 13712 1 file changed, 6 insertions(+), 2 deletions(-) 13713 13714commit be7d1f0f8f84ddac9e8c7dda4aa39f88806a5e39 13715Author: Vladimir Vukicevic <vladimir@pobox.com> 13716AuthorDate: Tue Oct 9 14:27:53 2007 -0700 13717Commit: Vladimir Vukicevic <vladimir@pobox.com> 13718CommitDate: Tue Oct 9 14:27:53 2007 -0700 13719 13720 Simplify CAIRO_REFERENCE_COUNT_INVALID macro 13721 13722 MSVC doesn't like the previous anonymous structure/cast, so simplify 13723 to just a bare {} structure for use as an initializer. 13724 13725 src/cairo-reference-count-private.h | 2 +- 13726 1 file changed, 1 insertion(+), 1 deletion(-) 13727 13728commit 712c3cda44d7023316b93a1241e66aabde15d668 13729Author: Vladimir Vukicevic <vladimir@pobox.com> 13730AuthorDate: Tue Oct 9 13:56:51 2007 -0700 13731Commit: Vladimir Vukicevic <vladimir@pobox.com> 13732CommitDate: Tue Oct 9 14:12:07 2007 -0700 13733 13734 [win32] reduce GDI object usage 13735 13736 Only create region objects if they're necessary; this significantly reduces 13737 the number of GDI objects in use by cairo surfaces. 13738 13739 src/cairo-win32-surface.c | 159 ++++++++++++++++++++++++++-------------------- 13740 1 file changed, 89 insertions(+), 70 deletions(-) 13741 13742commit c99d33b10e84883ade1402c3c1d1efdb4b46f66e 13743Author: Vladimir Vukicevic <vladimir@pobox.com> 13744AuthorDate: Tue Oct 2 10:54:44 2007 -0700 13745Commit: Vladimir Vukicevic <vladimir@pobox.com> 13746CommitDate: Tue Oct 9 13:57:00 2007 -0700 13747 13748 [win32] return a nil surface, not NULL 13749 13750 Missed an error return 13751 13752 src/cairo-win32-surface.c | 2 +- 13753 1 file changed, 1 insertion(+), 1 deletion(-) 13754 13755commit 4dbf495515d6de933de7f567b935c5fdceed5f6f 13756Author: Vladimir Vukicevic <vladimir@pobox.com> 13757AuthorDate: Tue Oct 2 10:48:59 2007 -0700 13758Commit: Vladimir Vukicevic <vladimir@pobox.com> 13759CommitDate: Tue Oct 9 13:57:00 2007 -0700 13760 13761 [win32] report error correctly if CreateCompatibleBitmap fails 13762 13763 These errors were being dropped on the floor, leading to 13764 rendering errors in out of video memory conditions. 13765 13766 src/cairo-win32-surface.c | 20 +++++++++++++++++++- 13767 1 file changed, 19 insertions(+), 1 deletion(-) 13768 13769commit 61ba63f3a0947bc89310f04e9bc1694fb6451c11 13770Author: Vladimir Vukicevic <vladimir@pobox.com> 13771AuthorDate: Fri Sep 21 11:18:17 2007 -0700 13772Commit: Vladimir Vukicevic <vladimir@pobox.com> 13773CommitDate: Tue Oct 9 13:56:59 2007 -0700 13774 13775 [win32] remove ignore_operators flag from win32 printing surface 13776 13777 Remove the ignore_operators fallback-avoiding workaround; if apps 13778 want that same behaviour, they'll have to implement it themselves 13779 by taking care when calling cairo_set_operator(). 13780 13781 src/cairo-win32-printing-surface.c | 16 ++++------------ 13782 src/cairo-win32-private.h | 5 ----- 13783 src/cairo-win32.h | 3 ++- 13784 3 files changed, 6 insertions(+), 18 deletions(-) 13785 13786commit b12ed375cf7ad02a30324616e121a1e9ab8998cb 13787Author: Behdad Esfahbod <behdad@behdad.org> 13788AuthorDate: Tue Oct 9 15:54:58 2007 -0400 13789Commit: Behdad Esfahbod <behdad@behdad.org> 13790CommitDate: Tue Oct 9 15:54:58 2007 -0400 13791 13792 [ChangeLog.mk] Fix changelog generation rules 13793 13794 Previously it was trying to get logs of 1.2.0..1.4 while I really meant 13795 was 1.2.0..1.4.0. It was a simple typo. 13796 13797 ChangeLog.mk | 2 +- 13798 1 file changed, 1 insertion(+), 1 deletion(-) 13799 13800commit cbc4087a40aa7c6039ddadfca2a9876cb14e1bc6 13801Author: Adrian Johnson <ajohnson@redneon.com> 13802AuthorDate: Sat Oct 6 19:18:31 2007 +0930 13803Commit: Adrian Johnson <ajohnson@redneon.com> 13804CommitDate: Sat Oct 6 19:18:31 2007 +0930 13805 13806 Type1 subset: Add check for CFF fonts 13807 13808 src/cairo-type1-subset.c | 8 ++++++++ 13809 1 file changed, 8 insertions(+) 13810 13811commit a1633df6eebd9b1252d832c7a70cea6150c818d3 13812Author: Chris Wilson <chris@chris-wilson.co.uk> 13813AuthorDate: Fri Oct 5 17:21:00 2007 +0100 13814Commit: Chris Wilson <chris@chris-wilson.co.uk> 13815CommitDate: Fri Oct 5 18:47:24 2007 +0100 13816 13817 [cairo-scaled-font-subsets] Increment the sub_font counter after insertion. 13818 13819 Do not modify the parent subsets->num_sub_font until after we have 13820 successfully created the sub_font and inserted it into the hash table. 13821 13822 src/cairo-scaled-font-subsets.c | 24 +++++++++++++++--------- 13823 1 file changed, 15 insertions(+), 9 deletions(-) 13824 13825commit cf2f994a319da1230c5d53f3dd81e7715e44a162 13826Author: Chris Wilson <chris@chris-wilson.co.uk> 13827AuthorDate: Fri Oct 5 17:15:29 2007 +0100 13828Commit: Chris Wilson <chris@chris-wilson.co.uk> 13829CommitDate: Fri Oct 5 18:35:12 2007 +0100 13830 13831 [cairo-paginated-surface] Propagate backend errors to the surface. 13832 13833 If we call a srface backend function directly, then it our 13834 responsibility to propagate any fatal errors to the surface. 13835 13836 src/cairo-paginated-surface.c | 57 ++++++++++++++++++++++++++----------------- 13837 1 file changed, 34 insertions(+), 23 deletions(-) 13838 13839commit 3da62fdd2848bd9d06b83534adfee2afa17828ba 13840Author: Chris Wilson <chris@chris-wilson.co.uk> 13841AuthorDate: Fri Oct 5 13:41:39 2007 +0100 13842Commit: Chris Wilson <chris@chris-wilson.co.uk> 13843CommitDate: Fri Oct 5 18:34:58 2007 +0100 13844 13845 [cairo-xlib-display] Rescan the displays list during shutdown. 13846 13847 As we drop the list mutex whilst calling the hooks during the 13848 XCloseDisplay callback, we must rescan the list when we reacquire the 13849 mutex in order to remove the display from the list. 13850 13851 src/cairo-xlib-display.c | 48 +++++++++++++++++++++++++++--------------------- 13852 1 file changed, 27 insertions(+), 21 deletions(-) 13853 13854commit 737cbd25a6cb0bec87563926ad644da019fc9800 13855Author: Chris Wilson <chris@chris-wilson.co.uk> 13856AuthorDate: Fri Oct 5 13:03:47 2007 +0100 13857Commit: Chris Wilson <chris@chris-wilson.co.uk> 13858CommitDate: Fri Oct 5 18:34:44 2007 +0100 13859 13860 [cairo-ps-surface] Cleanup ps surface after creation failure. 13861 13862 If we fail to create the paginated wrapper for the ps surface, cleanup 13863 the resources allocated for the surface. 13864 13865 src/cairo-ps-surface.c | 17 +++++++++++------ 13866 1 file changed, 11 insertions(+), 6 deletions(-) 13867 13868commit 31b52779bad4122d101cdffdb03153baf6cd011e 13869Author: Chris Wilson <chris@chris-wilson.co.uk> 13870AuthorDate: Fri Oct 5 12:55:13 2007 +0100 13871Commit: Chris Wilson <chris@chris-wilson.co.uk> 13872CommitDate: Fri Oct 5 18:34:32 2007 +0100 13873 13874 [cairo-boilerplate-xlib] Cleanup fallback after creation failure. 13875 13876 Cleanup the local resource if we fail to create the X window and 13877 surface for the xlib fallback test target. 13878 13879 boilerplate/cairo-boilerplate-xlib.c | 9 +++++++-- 13880 1 file changed, 7 insertions(+), 2 deletions(-) 13881 13882commit b210bea6c1867ef9d5c344747d17ca216f6071bd 13883Author: Chris Wilson <chris@chris-wilson.co.uk> 13884AuthorDate: Fri Oct 5 12:45:36 2007 +0100 13885Commit: Chris Wilson <chris@chris-wilson.co.uk> 13886CommitDate: Fri Oct 5 18:34:11 2007 +0100 13887 13888 [cairo-pdf-surface] Check for pdf_resource_t allocation failure. 13889 13890 Check that the resources are actually allocated or propagate the error. 13891 13892 src/cairo-pdf-surface.c | 12 ++++++++++++ 13893 1 file changed, 12 insertions(+) 13894 13895commit 5ac7ba9821cba076d7f53f6b8836a8619661018c 13896Author: Chris Wilson <chris@chris-wilson.co.uk> 13897AuthorDate: Fri Oct 5 12:16:23 2007 +0100 13898Commit: Chris Wilson <chris@chris-wilson.co.uk> 13899CommitDate: Fri Oct 5 18:34:01 2007 +0100 13900 13901 [cairo-pdf-surface] Destroy local resources on failed surface creation. 13902 13903 During _cairo_pdf_surface_create_for_stream_internal() destroy all 13904 locally allocated resources and the output stream if we fail to create 13905 the pdf surface or its paginated wrapper. 13906 13907 src/cairo-pdf-surface.c | 27 +++++++++++++++++++-------- 13908 1 file changed, 19 insertions(+), 8 deletions(-) 13909 13910commit 63ddfa077c498780d46f752ec7f255b143c9f692 13911Author: Chris Wilson <chris@chris-wilson.co.uk> 13912AuthorDate: Fri Oct 5 12:08:40 2007 +0100 13913Commit: Chris Wilson <chris@chris-wilson.co.uk> 13914CommitDate: Fri Oct 5 18:33:48 2007 +0100 13915 13916 [cairo-pdf-surface] Propagate error status. 13917 13918 Add a few missing propagations of error status. 13919 13920 src/cairo-pdf-surface.c | 45 ++++++++++++++++++++++++++++++++++----------- 13921 1 file changed, 34 insertions(+), 11 deletions(-) 13922 13923commit f1b6e2735c48d5a54190068c038047942f40f1d1 13924Author: Chris Wilson <chris@chris-wilson.co.uk> 13925AuthorDate: Fri Oct 5 11:59:13 2007 +0100 13926Commit: Chris Wilson <chris@chris-wilson.co.uk> 13927CommitDate: Fri Oct 5 18:33:38 2007 +0100 13928 13929 [cairo-ps-surface] Propagate errors from emit_pattern(). 13930 13931 Do not discard the error status from _cairo_ps_surface_emit_pattern(), 13932 but propagate it back to the caller. 13933 13934 src/cairo-ps-surface.c | 21 ++++++++++++++++----- 13935 1 file changed, 16 insertions(+), 5 deletions(-) 13936 13937commit 709f3160368417d9a9a78974b16d93ec3e5e3c14 13938Author: Chris Wilson <chris@chris-wilson.co.uk> 13939AuthorDate: Fri Oct 5 17:37:05 2007 +0100 13940Commit: Chris Wilson <chris@chris-wilson.co.uk> 13941CommitDate: Fri Oct 5 17:37:05 2007 +0100 13942 13943 Cleanup a couple of warnings for use of uninitialized statuses. 13944 13945 The compiler spotted a couple of potential uses of an uninitialized 13946 status variable - apply the obvious fixes. 13947 13948 src/cairo-svg-surface.c | 2 +- 13949 src/cairo-type1-subset.c | 4 +++- 13950 2 files changed, 4 insertions(+), 2 deletions(-) 13951 13952commit 2f22510e22237283869fb2e23585504077566adf 13953Author: Chris Wilson <chris@chris-wilson.co.uk> 13954AuthorDate: Fri Oct 5 16:23:12 2007 +0100 13955Commit: Chris Wilson <chris@chris-wilson.co.uk> 13956CommitDate: Fri Oct 5 16:25:02 2007 +0100 13957 13958 [cairo-xlib] Initialize the global mutexes. 13959 13960 The xlib surface creation routines will eventually attempt to lock the 13961 global _cairo_xlib_display_mutex. Under the default environment this is 13962 a non-issue as the CAIRO_MUTEX_INITIALIZE/FINALIZE become no-ops under 13963 pthreads. However, for the sake of correctness (i.e. to silence the 13964 lockdep debugger!) insert a call to initialize the global mutexes at the 13965 start of the public entry points. 13966 13967 src/cairo-xlib-surface.c | 6 ++++++ 13968 1 file changed, 6 insertions(+) 13969 13970commit d2557cd5eec7e51496d6b1b57899b2a028898a7c 13971Author: Chris Wilson <chris@chris-wilson.co.uk> 13972AuthorDate: Fri Oct 5 00:57:38 2007 +0100 13973Commit: Chris Wilson <chris@chris-wilson.co.uk> 13974CommitDate: Fri Oct 5 16:16:36 2007 +0100 13975 13976 [test-paginated] Free resources if fail to create the test surface. 13977 13978 Ensure that all the locally allocated resources are freed if we fail 13979 to allocate the paginated test surface. 13980 13981 src/test-paginated-surface.c | 12 ++++++++++-- 13982 1 file changed, 10 insertions(+), 2 deletions(-) 13983 13984commit 60ffeecd4888fdf824b4095c945e1b27e05c0e1d 13985Author: Chris Wilson <chris@chris-wilson.co.uk> 13986AuthorDate: Fri Oct 5 00:56:11 2007 +0100 13987Commit: Chris Wilson <chris@chris-wilson.co.uk> 13988CommitDate: Fri Oct 5 16:16:36 2007 +0100 13989 13990 [test-surfaces] Mark the test backend as static. 13991 13992 There is no need to export the test surface backends, so mark them 13993 static. 13994 13995 src/test-fallback-surface.c | 4 ++-- 13996 src/test-meta-surface.c | 4 ++-- 13997 2 files changed, 4 insertions(+), 4 deletions(-) 13998 13999commit 6598973661490ce90b9f42155d8397af491b90c9 14000Author: Chris Wilson <chris@chris-wilson.co.uk> 14001AuthorDate: Fri Oct 5 10:23:13 2007 +0100 14002Commit: Chris Wilson <chris@chris-wilson.co.uk> 14003CommitDate: Fri Oct 5 15:26:30 2007 +0100 14004 14005 [cairo-scaled-font-subset] Propagate errors during collection. 14006 14007 Propagate the errors encountered whilst iterating over the scaled font 14008 subsets ie _cairo_scaled_font_subsets_foreach_scaled() and co. 14009 14010 src/cairo-pdf-surface.c | 20 ++++++++++++-------- 14011 src/cairo-ps-surface.c | 27 +++++++++++++++++++-------- 14012 src/cairo-scaled-font-subsets-private.h | 2 +- 14013 src/cairo-scaled-font-subsets.c | 20 ++++++++++++++++---- 14014 src/cairo-svg-surface.c | 4 +++- 14015 5 files changed, 51 insertions(+), 22 deletions(-) 14016 14017commit 3a2dd9d33686d6a6d1549965cacf48a7f401c086 14018Author: Chris Wilson <chris@chris-wilson.co.uk> 14019AuthorDate: Fri Oct 5 10:10:16 2007 +0100 14020Commit: Chris Wilson <chris@chris-wilson.co.uk> 14021CommitDate: Fri Oct 5 15:26:14 2007 +0100 14022 14023 [cairo-png] Markup a couple of original error sites with _cairo_error(). 14024 14025 Add the _cairo_error() markup to the original error sites within the png 14026 read/write functions. 14027 14028 src/cairo-png.c | 6 +++--- 14029 1 file changed, 3 insertions(+), 3 deletions(-) 14030 14031commit 81243ee7ef1c3fdf3d571778c414adb64e05fa9d 14032Author: Chris Wilson <chris@chris-wilson.co.uk> 14033AuthorDate: Fri Oct 5 09:57:56 2007 +0100 14034Commit: Chris Wilson <chris@chris-wilson.co.uk> 14035CommitDate: Fri Oct 5 15:26:03 2007 +0100 14036 14037 [cairo-scaled-font] Mask cannot be NULL so remove redundant check. 14038 14039 We either generate a mask for the glyphs or throw an error and bypass 14040 the check, so at that point mask can never be NULL and we do not need 14041 the test. 14042 14043 src/cairo-scaled-font.c | 21 +++++++++------------ 14044 1 file changed, 9 insertions(+), 12 deletions(-) 14045 14046commit f3d921baca02af4db5f8f1743f32e800d2f492bc 14047Author: Chris Wilson <chris@chris-wilson.co.uk> 14048AuthorDate: Fri Oct 5 09:53:36 2007 +0100 14049Commit: Chris Wilson <chris@chris-wilson.co.uk> 14050CommitDate: Fri Oct 5 15:25:47 2007 +0100 14051 14052 [cairo-scaled-font] Destroy the zombie font. 14053 14054 If we do not transfer the font to the holdovers array (because it has 14055 been removed from the cache and left in a zombie state), destroy it. 14056 14057 src/cairo-scaled-font.c | 46 ++++++++++++++++++++++++---------------------- 14058 1 file changed, 24 insertions(+), 22 deletions(-) 14059 14060commit 41aab58f3ae044f1baf668363376532381270ff4 14061Author: Chris Wilson <chris@chris-wilson.co.uk> 14062AuthorDate: Fri Oct 5 09:44:29 2007 +0100 14063Commit: Chris Wilson <chris@chris-wilson.co.uk> 14064CommitDate: Fri Oct 5 15:25:32 2007 +0100 14065 14066 [cairo-surface] Add the usual guards to the API entry point. 14067 14068 Add the checks for unmodifiable surfaces (snapshots, finished and error) to 14069 cairo_surface_set_fallback_resolution. 14070 14071 src/cairo-surface.c | 12 ++++++++++++ 14072 1 file changed, 12 insertions(+) 14073 14074commit f3ae783c9c81106bdb3aa2d15b848d131c39cd93 14075Author: Chris Wilson <chris@chris-wilson.co.uk> 14076AuthorDate: Fri Oct 5 09:42:23 2007 +0100 14077Commit: Chris Wilson <chris@chris-wilson.co.uk> 14078CommitDate: Fri Oct 5 15:25:08 2007 +0100 14079 14080 [cairo-surface-fallback] Release the acquired image on error. 14081 14082 Add _cairo_surface_release_source_image() to the error paths. 14083 14084 src/cairo-surface-fallback.c | 11 +++++++---- 14085 1 file changed, 7 insertions(+), 4 deletions(-) 14086 14087commit 29a5aae958fd9c6a8ec71326c7dad679c0bf5938 14088Author: Chris Wilson <chris@chris-wilson.co.uk> 14089AuthorDate: Fri Oct 5 09:39:20 2007 +0100 14090Commit: Chris Wilson <chris@chris-wilson.co.uk> 14091CommitDate: Fri Oct 5 15:24:25 2007 +0100 14092 14093 [cairo-type1-fallback] Propagate error from closing the stream. 14094 14095 Propagate the error from destroying the font and closing the output stream. 14096 14097 src/cairo-type1-fallback.c | 3 +-- 14098 1 file changed, 1 insertion(+), 2 deletions(-) 14099 14100commit dd0f2d851cd4c4b2bab05668800e5379712f8ac6 14101Author: Chris Wilson <chris@chris-wilson.co.uk> 14102AuthorDate: Fri Oct 5 15:22:13 2007 +0100 14103Commit: Chris Wilson <chris@chris-wilson.co.uk> 14104CommitDate: Fri Oct 5 15:23:15 2007 +0100 14105 14106 [cairo-atomic] Hide compiler warnings for _cairo_status_set_error(). 14107 14108 gcc treats cairo_status_t as an unsigned integer and so generates a 14109 warning when passing it address as signed integer pointer to 14110 _cairo_atomic_int_cmpxchg(). Use an ugly cast to hide the warning and 14111 similarly to hide the warning about the unused result. 14112 14113 src/cairo-atomic-private.h | 8 ++++++-- 14114 1 file changed, 6 insertions(+), 2 deletions(-) 14115 14116commit 91d18eefe7be6ad3d1fa951c7424d5843e4718f9 14117Author: Chris Wilson <chris@chris-wilson.co.uk> 14118AuthorDate: Fri Oct 5 15:16:28 2007 +0100 14119Commit: Chris Wilson <chris@chris-wilson.co.uk> 14120CommitDate: Fri Oct 5 15:23:06 2007 +0100 14121 14122 [cairo-type1-subset] Propagate error status (correctly!) 14123 14124 Adrian Johnson pointed out a couple of mistakes in my previous attempt, 14125 535e7c161b907292eac098b6b4305373558948df, to ensure propagation of errors 14126 throughout the generation of the type1 subset. 14127 14128 This time the status member of the cairo_type1_font_subset_t is removed 14129 in favour of simply return the error status from each function. This 14130 completely avoids the issue of whether we overwrite a pre-existing error 14131 status and confustion of status returns and the status member. The 14132 removal of the status from the structure is possible due to its 14133 short-lived nature - it is not exposed outside of the 14134 _cairo_type1_subset_init() function, and is not shared by any other 14135 piece of code. 14136 14137 src/cairo-type1-subset.c | 293 +++++++++++++++++++++++------------------------ 14138 1 file changed, 146 insertions(+), 147 deletions(-) 14139 14140commit bd2245f8b87d85f5ea61200838c10de70e776cf5 14141Author: Chris Wilson <chris@chris-wilson.co.uk> 14142AuthorDate: Fri Oct 5 00:45:00 2007 +0100 14143Commit: Chris Wilson <chris@chris-wilson.co.uk> 14144CommitDate: Fri Oct 5 00:45:00 2007 +0100 14145 14146 [cairo-svg-surface] Review error propagation. 14147 14148 Ensure that the error status is propagated and all local resources 14149 are freed on the error path. 14150 14151 src/cairo-svg-surface.c | 374 +++++++++++++++++++++++++++++++++++------------- 14152 1 file changed, 271 insertions(+), 103 deletions(-) 14153 14154commit 853b29c56fdb50c627b27fc3a767300c7551dba0 14155Author: Chris Wilson <chris@chris-wilson.co.uk> 14156AuthorDate: Thu Oct 4 23:30:21 2007 +0100 14157Commit: Chris Wilson <chris@chris-wilson.co.uk> 14158CommitDate: Thu Oct 4 23:39:21 2007 +0100 14159 14160 [cairo-pdf-surface] Add some missing error propagation. 14161 14162 Add a couple of returns where the status was being assigned but not 14163 checked. 14164 14165 src/cairo-pdf-surface.c | 18 ++++++++++++++---- 14166 1 file changed, 14 insertions(+), 4 deletions(-) 14167 14168commit 323511088d0c9057c1b0fa5e7aacda5e44e2e139 14169Author: Chris Wilson <chris@chris-wilson.co.uk> 14170AuthorDate: Thu Oct 4 23:22:49 2007 +0100 14171Commit: Chris Wilson <chris@chris-wilson.co.uk> 14172CommitDate: Thu Oct 4 23:23:44 2007 +0100 14173 14174 [cairo-pdf-surface] Propagate errors from close_stream. 14175 14176 Propagate the status return from _cairo_pdf_surface_close_stream(). 14177 14178 src/cairo-pdf-surface.c | 13 +++++++++---- 14179 1 file changed, 9 insertions(+), 4 deletions(-) 14180 14181commit 0e3f5caf9f0bbdb5acf34ae1b92eab32bf08acbf 14182Author: Chris Wilson <chris@chris-wilson.co.uk> 14183AuthorDate: Thu Oct 4 23:18:33 2007 +0100 14184Commit: Chris Wilson <chris@chris-wilson.co.uk> 14185CommitDate: Thu Oct 4 23:18:33 2007 +0100 14186 14187 [cairo-pdf-surface] Propagate errors during pattern selection. 14188 14189 Propagate error from _cairo_pdf_surface_select_pattern (). 14190 14191 src/cairo-pdf-surface.c | 34 ++++++++++++++++++++++++++-------- 14192 1 file changed, 26 insertions(+), 8 deletions(-) 14193 14194commit 7940e39c1820b87c5b96dec6bc59eab97be4a793 14195Author: Chris Wilson <chris@chris-wilson.co.uk> 14196AuthorDate: Thu Oct 4 23:15:21 2007 +0100 14197Commit: Chris Wilson <chris@chris-wilson.co.uk> 14198CommitDate: Thu Oct 4 23:15:21 2007 +0100 14199 14200 [cairo-pdf-surface] Propagate errors from opening/closing groups. 14201 14202 Propagate the any error encountered during _cairo_pdf_surface_open_group 14203 and friends. 14204 14205 src/cairo-pdf-surface.c | 193 ++++++++++++++++++++++++++++++++++++++---------- 14206 1 file changed, 152 insertions(+), 41 deletions(-) 14207 14208commit 7601939a6524ad97a333fef910f3b5e69c46776c 14209Author: Chris Wilson <chris@chris-wilson.co.uk> 14210AuthorDate: Thu Oct 4 23:07:36 2007 +0100 14211Commit: Chris Wilson <chris@chris-wilson.co.uk> 14212CommitDate: Thu Oct 4 23:07:36 2007 +0100 14213 14214 [cairo-deflate-stream] Return the nil stream if creating from an error stream. 14215 14216 If _cairo_deflate_stream_create() is passed a stream in the error state, 14217 return a stream also in the error state, namely the _cairo_output_stream_nil. 14218 14219 src/cairo-deflate-stream.c | 6 ++++++ 14220 1 file changed, 6 insertions(+) 14221 14222commit dbbcb5c26fba77d2a828b253c97e4770b81cf90b 14223Author: Chris Wilson <chris@chris-wilson.co.uk> 14224AuthorDate: Thu Oct 4 21:18:47 2007 +0100 14225Commit: Chris Wilson <chris@chris-wilson.co.uk> 14226CommitDate: Thu Oct 4 21:18:47 2007 +0100 14227 14228 [Makefile] Correct parameters to lcov reset. 14229 14230 lcov uses -z to zero its counters, not --reset. 14231 14232 Makefile.am | 2 +- 14233 1 file changed, 1 insertion(+), 1 deletion(-) 14234 14235commit 717dcd1a2c109f48f0a419a5178fc58d5d4f9a2d 14236Author: Chris Wilson <chris@chris-wilson.co.uk> 14237AuthorDate: Thu Oct 4 21:17:31 2007 +0100 14238Commit: Chris Wilson <chris@chris-wilson.co.uk> 14239CommitDate: Thu Oct 4 21:17:31 2007 +0100 14240 14241 [cairo-pdf-surface] Propagate resource allocation failure. 14242 14243 Propagate failure of _cairo_pdf_surface_new_object(). 14244 14245 src/cairo-pdf-surface.c | 163 ++++++++++++++++++++++++++++++++++++++++++++++-- 14246 1 file changed, 159 insertions(+), 4 deletions(-) 14247 14248commit 8fb40aee97fdb3ae2cbbfa5c6a350c7b8b030005 14249Author: Chris Wilson <chris@chris-wilson.co.uk> 14250AuthorDate: Thu Oct 4 19:20:35 2007 +0100 14251Commit: Chris Wilson <chris@chris-wilson.co.uk> 14252CommitDate: Thu Oct 4 20:08:22 2007 +0100 14253 14254 [cairo-image-surface] Check for errors whilst cloning. 14255 14256 After attempting to clone an image, check the context status and return 14257 the nil surface if there was an error. 14258 14259 src/cairo-image-surface.c | 7 +++++++ 14260 1 file changed, 7 insertions(+) 14261 14262commit b61931640d384707a6fc48f9ba4a4f2ddf675c32 14263Author: Chris Wilson <chris@chris-wilson.co.uk> 14264AuthorDate: Thu Oct 4 19:12:10 2007 +0100 14265Commit: Chris Wilson <chris@chris-wilson.co.uk> 14266CommitDate: Thu Oct 4 20:08:10 2007 +0100 14267 14268 [cairo-ps-surface] Check the creation of output streams. 14269 14270 Check for allocation errors during the creation of the output streams. 14271 14272 src/cairo-ps-surface.c | 18 ++++++++++++++++-- 14273 1 file changed, 16 insertions(+), 2 deletions(-) 14274 14275commit 353c2ab5c0e10f267a1adf3957b5d6af4e6a2e29 14276Author: Chris Wilson <chris@chris-wilson.co.uk> 14277AuthorDate: Thu Oct 4 19:10:42 2007 +0100 14278Commit: Chris Wilson <chris@chris-wilson.co.uk> 14279CommitDate: Thu Oct 4 20:07:58 2007 +0100 14280 14281 [cairo-output-stream] Guard against destroying the nil streams. 14282 14283 Add a guard to return early if we attempt to call 14284 _cairo_output_stream_destroy() on the nil cairo_output_stream_t streams. 14285 14286 src/cairo-output-stream.c | 6 ++++++ 14287 1 file changed, 6 insertions(+) 14288 14289commit 7cc7bf09c1a61f407fdb054640ebf24039f985db 14290Author: Chris Wilson <chris@chris-wilson.co.uk> 14291AuthorDate: Thu Oct 4 18:52:50 2007 +0100 14292Commit: Chris Wilson <chris@chris-wilson.co.uk> 14293CommitDate: Thu Oct 4 20:07:43 2007 +0100 14294 14295 [cairo-meta-surface] Propagate errors during replay to the surface. 14296 14297 Store any fatal errors raised during the replay on the surface object. 14298 14299 src/cairo-meta-surface.c | 5 ++++- 14300 1 file changed, 4 insertions(+), 1 deletion(-) 14301 14302commit 042821b566daf4aa17d662e7422d1b98858954d7 14303Author: Chris Wilson <chris@chris-wilson.co.uk> 14304AuthorDate: Thu Oct 4 20:05:58 2007 +0100 14305Commit: Chris Wilson <chris@chris-wilson.co.uk> 14306CommitDate: Thu Oct 4 20:07:36 2007 +0100 14307 14308 [cairo-surface] Propagate fatal errors to the surface. 14309 14310 Store errors raised by the backend on the surface. 14311 14312 src/cairo-surface.c | 131 +++++++++++++++++++++++++++++----------------------- 14313 1 file changed, 72 insertions(+), 59 deletions(-) 14314 14315commit 535e7c161b907292eac098b6b4305373558948df 14316Author: Chris Wilson <chris@chris-wilson.co.uk> 14317AuthorDate: Thu Oct 4 18:45:17 2007 +0100 14318Commit: Chris Wilson <chris@chris-wilson.co.uk> 14319CommitDate: Thu Oct 4 18:45:17 2007 +0100 14320 14321 [cairo-type1-subset] Do not mask error returns. 14322 14323 When propagating errors, check that we do not overwrite a pre-existing 14324 error. 14325 14326 src/cairo-type1-subset.c | 123 +++++++++++++++++++++++++++++++---------------- 14327 1 file changed, 81 insertions(+), 42 deletions(-) 14328 14329commit bb8d4c0b14ec175637f57a3b51c4997c0be12a0f 14330Author: Chris Wilson <chris@chris-wilson.co.uk> 14331AuthorDate: Thu Oct 4 18:33:24 2007 +0100 14332Commit: Chris Wilson <chris@chris-wilson.co.uk> 14333CommitDate: Thu Oct 4 18:33:24 2007 +0100 14334 14335 [cairo-truetype-subset] Do mask error status returns. 14336 14337 Be careful not to overwrite existing the error status when propagating 14338 errors and to not blindly return INT_STATUS_UNSUPPORTED from 14339 load_truetype_table() as this will mask fatal errors. 14340 14341 src/cairo-truetype-subset.c | 363 ++++++++++++++++++++++++++------------------ 14342 1 file changed, 219 insertions(+), 144 deletions(-) 14343 14344commit 37fd0d8967df21695d6536af1d7aedbeef2d2449 14345Author: Chris Wilson <chris@chris-wilson.co.uk> 14346AuthorDate: Thu Oct 4 17:12:26 2007 +0100 14347Commit: Chris Wilson <chris@chris-wilson.co.uk> 14348CommitDate: Thu Oct 4 17:18:25 2007 +0100 14349 14350 [cairo-cff-subset] Propagate errors and review error paths. 14351 14352 Ensure that errors get duly propagated back to the caller and all 14353 locally allocated resources are freed along error paths. 14354 14355 src/cairo-cff-subset.c | 291 +++++++++++++++++++++++++++++++++++-------------- 14356 1 file changed, 209 insertions(+), 82 deletions(-) 14357 14358commit add0959328117e2023db0ba2432ed29ecb93275e 14359Author: Chris Wilson <chris@chris-wilson.co.uk> 14360AuthorDate: Thu Oct 4 17:00:26 2007 +0100 14361Commit: Chris Wilson <chris@chris-wilson.co.uk> 14362CommitDate: Thu Oct 4 17:00:26 2007 +0100 14363 14364 [cairo-debug] Finalize mutexes along with other static data. 14365 14366 Initialize (so repeated calls of cairo_debug_reset_static_data() is 14367 safe) and finalize the mutexes with the reset of the static data. 14368 14369 src/cairo-debug.c | 4 ++++ 14370 1 file changed, 4 insertions(+) 14371 14372commit a4f20610afd18d58a964dbe84cc90c5723b2996d 14373Author: Chris Wilson <chris@chris-wilson.co.uk> 14374AuthorDate: Thu Oct 4 16:37:44 2007 +0100 14375Commit: Chris Wilson <chris@chris-wilson.co.uk> 14376CommitDate: Thu Oct 4 16:44:27 2007 +0100 14377 14378 [cairo] Protect the getters when operating on the nil object. 14379 14380 Put a guard that checks the context's status at the start of each 14381 getter that prevents the function from trying to dereference NULL state. 14382 Use the status, as opposed to the invalid reference count, for 14383 consistency with the existing guards on some of the getters. 14384 14385 src/cairo.c | 51 +++++++++++++++++++++++++++++++++++++++++++++++++-- 14386 1 file changed, 49 insertions(+), 2 deletions(-) 14387 14388commit 80c06f4539962231df771b38e64834a238f410dd 14389Author: Chris Wilson <chris@chris-wilson.co.uk> 14390AuthorDate: Thu Oct 4 16:16:41 2007 +0100 14391Commit: Chris Wilson <chris@chris-wilson.co.uk> 14392CommitDate: Thu Oct 4 16:16:58 2007 +0100 14393 14394 [cairo-scaled-font] Don't hold onto to a dropped font. 14395 14396 Mark fonts that have been removed from the cache due to an error on a 14397 shared object and do not put them into the holdovers array. 14398 14399 src/cairo-scaled-font.c | 8 ++++++-- 14400 1 file changed, 6 insertions(+), 2 deletions(-) 14401 14402commit 6e93941a7605a3958269de195dc16f255dda7bfd 14403Author: Chris Wilson <chris@chris-wilson.co.uk> 14404AuthorDate: Thu Oct 4 16:04:49 2007 +0100 14405Commit: Chris Wilson <chris@chris-wilson.co.uk> 14406CommitDate: Thu Oct 4 16:04:49 2007 +0100 14407 14408 [cairo-scaled-font] Acquire mutex around _cairo_scaled_font_glyph_path(). 14409 14410 All calls that manipulate the scaled_font->cache must hold its mutex. 14411 14412 src/cairo-gstate.c | 2 ++ 14413 1 file changed, 2 insertions(+) 14414 14415commit 261971a3fb9c10c267cced53a440161f1acb4b5d 14416Author: Chris Wilson <chris@chris-wilson.co.uk> 14417AuthorDate: Thu Oct 4 16:03:12 2007 +0100 14418Commit: Chris Wilson <chris@chris-wilson.co.uk> 14419CommitDate: Thu Oct 4 16:03:12 2007 +0100 14420 14421 [cairo-gstate] Fix resource leaks on error paths. 14422 14423 Ensure that all locally allocated (or referenced) resources are freed 14424 if we later encounter an error. 14425 14426 src/cairo-gstate.c | 22 ++++++++++++++-------- 14427 1 file changed, 14 insertions(+), 8 deletions(-) 14428 14429commit 4e44d54f3e99b65f5e80485b22d31890ea3d6561 14430Author: Chris Wilson <chris@chris-wilson.co.uk> 14431AuthorDate: Thu Oct 4 15:58:21 2007 +0100 14432Commit: Chris Wilson <chris@chris-wilson.co.uk> 14433CommitDate: Thu Oct 4 16:00:22 2007 +0100 14434 14435 [cairo-matrix] Check whether a matrix is invertible before use. 14436 14437 Provide an early check as to whether the font matrix is invertible. 14438 14439 src/cairo-gstate.c | 3 +++ 14440 src/cairo-matrix.c | 10 ++++++++++ 14441 src/cairo-scaled-font.c | 3 +++ 14442 src/cairoint.h | 3 +++ 14443 4 files changed, 19 insertions(+) 14444 14445commit 528da4e5e131fe385a60431eb6656a542b27c70f 14446Author: Chris Wilson <chris@chris-wilson.co.uk> 14447AuthorDate: Thu Oct 4 15:50:40 2007 +0100 14448Commit: Chris Wilson <chris@chris-wilson.co.uk> 14449CommitDate: Thu Oct 4 15:50:40 2007 +0100 14450 14451 [cairo-scaled-font] Freeze the font cache whilst iterating over glyphs. 14452 14453 Prevent glyph cache removal whilst iterating over a glyph string. 14454 14455 src/cairo-scaled-font.c | 6 ++++++ 14456 1 file changed, 6 insertions(+) 14457 14458commit 4b81eeb20ebe070692ef8099c00de3829da8bf69 14459Author: Chris Wilson <chris@chris-wilson.co.uk> 14460AuthorDate: Thu Oct 4 15:46:13 2007 +0100 14461Commit: Chris Wilson <chris@chris-wilson.co.uk> 14462CommitDate: Thu Oct 4 15:46:13 2007 +0100 14463 14464 [cairo-scaled-font] Destroy the mask on the error path. 14465 14466 Do not leak the mask if we encounter an error whilst tracing. 14467 14468 src/cairo-scaled-font.c | 17 ++++++++++------- 14469 1 file changed, 10 insertions(+), 7 deletions(-) 14470 14471commit d0b1308cd73a6b3602e5414abf03a3bdf8d2d001 14472Author: Chris Wilson <chris@chris-wilson.co.uk> 14473AuthorDate: Thu Oct 4 15:43:09 2007 +0100 14474Commit: Chris Wilson <chris@chris-wilson.co.uk> 14475CommitDate: Thu Oct 4 15:44:10 2007 +0100 14476 14477 [cairo-scaled-font] Store fatal errors on the cairo_scaled_font_t. 14478 14479 Ensure that all fatal errors raised whilst using the font are stored on 14480 the font. 14481 14482 src/cairo-scaled-font.c | 35 +++++++++++++++++++++++------------ 14483 1 file changed, 23 insertions(+), 12 deletions(-) 14484 14485commit 4c32e6bfde5d613e0eeef407b9b50c557b1878e3 14486Author: Chris Wilson <chris@chris-wilson.co.uk> 14487AuthorDate: Thu Oct 4 15:31:25 2007 +0100 14488Commit: Chris Wilson <chris@chris-wilson.co.uk> 14489CommitDate: Thu Oct 4 15:31:25 2007 +0100 14490 14491 [cairo-scaled-font] Return the error status from _cairo_scaled_font_set_error() 14492 14493 Similar to the other _cairo_*_set_error() return the error status. 14494 14495 src/cairo-ft-font.c | 4 ++-- 14496 src/cairo-scaled-font.c | 18 +++++++++--------- 14497 src/cairoint.h | 2 +- 14498 3 files changed, 12 insertions(+), 12 deletions(-) 14499 14500commit 06ae5f1ba3bb679c145d2f7e9ed8c244abf7ff17 14501Author: Chris Wilson <chris@chris-wilson.co.uk> 14502AuthorDate: Thu Oct 4 15:26:09 2007 +0100 14503Commit: Chris Wilson <chris@chris-wilson.co.uk> 14504CommitDate: Thu Oct 4 15:26:09 2007 +0100 14505 14506 [cairo-font-face] Set the error on the font. 14507 14508 Similar to the other shared objects, store fatal errors on the shared 14509 font_face. And do not return a cached reference to an object in an 14510 error state. 14511 14512 src/cairo-font-face.c | 46 +++++++++++++++++++++++++++++++++++++--------- 14513 src/cairo-scaled-font.c | 1 + 14514 src/cairoint.h | 4 ++++ 14515 3 files changed, 42 insertions(+), 9 deletions(-) 14516 14517commit 4cffdf2681ba254587bd774ea49718e71535b067 14518Author: Chris Wilson <chris@chris-wilson.co.uk> 14519AuthorDate: Thu Oct 4 14:59:55 2007 +0100 14520Commit: Chris Wilson <chris@chris-wilson.co.uk> 14521CommitDate: Thu Oct 4 14:59:55 2007 +0100 14522 14523 [cairo-ft-font] Always call _cairo_ft_unscaled_font_fini (). 14524 14525 The _cairo_ft_unscaled_font_fini() was skipped during the destroy for 14526 fonts generated by cairo_ft_font_face_create_for_ft_face(). However 14527 this causes a mutex to be 'leaked' for each font. 14528 14529 src/cairo-ft-font.c | 4 +++- 14530 1 file changed, 3 insertions(+), 1 deletion(-) 14531 14532commit de1f92ae14bfc4d74d8df88ae81d7b90dd6739f0 14533Author: Chris Wilson <chris@chris-wilson.co.uk> 14534AuthorDate: Thu Oct 4 14:51:16 2007 +0100 14535Commit: Chris Wilson <chris@chris-wilson.co.uk> 14536CommitDate: Thu Oct 4 14:51:16 2007 +0100 14537 14538 [cairo-output-stream] Propagate error status when copying streams. 14539 14540 During _cairo_memory_stream_copy(), if set, copy the incoming error over 14541 to the destination stream and return early. 14542 14543 src/cairo-output-stream.c | 12 ++++++++++-- 14544 1 file changed, 10 insertions(+), 2 deletions(-) 14545 14546commit 2c256f292fc4a9fd8414e29c4df32d347e360900 14547Author: Chris Wilson <chris@chris-wilson.co.uk> 14548AuthorDate: Thu Oct 4 14:35:08 2007 +0100 14549Commit: Chris Wilson <chris@chris-wilson.co.uk> 14550CommitDate: Thu Oct 4 14:35:08 2007 +0100 14551 14552 [cairo-error] Another _cairo_error (CAIRO_STATUS_SUCCESS)! 14553 14554 Despite double checking, I still ended up converting one too many 14555 status values. 14556 14557 src/cairo-truetype-subset.c | 2 +- 14558 1 file changed, 1 insertion(+), 1 deletion(-) 14559 14560commit bed8239f03773ad1584c8ba48ceb0b34bbe69453 14561Author: Chris Wilson <chris@chris-wilson.co.uk> 14562AuthorDate: Thu Oct 4 13:15:46 2007 +0100 14563Commit: Chris Wilson <chris@chris-wilson.co.uk> 14564CommitDate: Thu Oct 4 13:31:44 2007 +0100 14565 14566 [cairo-error] Clean up all the warnings and missing _cairo_error() calls. 14567 14568 Every time we assign or return a hard-coded error status wrap that value 14569 with a call to _cairo_error(). So the idiom becomes: 14570 status = _cairo_error (CAIRO_STATUS_NO_MEMORY); 14571 or 14572 return _cairo_error (CAIRO_STATUS_INVALID_DASH); 14573 14574 This ensures that a breakpoint placed on _cairo_error() will trigger 14575 immediately cairo detects the error. 14576 14577 src/cairo-analysis-surface.c | 4 +- 14578 src/cairo-array.c | 9 +-- 14579 src/cairo-atsui-font.c | 18 +++--- 14580 src/cairo-base85-stream.c | 2 +- 14581 src/cairo-bentley-ottmann.c | 22 +++----- 14582 src/cairo-cache.c | 4 +- 14583 src/cairo-cff-subset.c | 122 +++++++++++++++------------------------- 14584 src/cairo-clip.c | 18 +++--- 14585 src/cairo-deflate-stream.c | 2 +- 14586 src/cairo-directfb-surface.c | 49 ++++++++-------- 14587 src/cairo-font-face.c | 6 +- 14588 src/cairo-font-options.c | 4 +- 14589 src/cairo-ft-font.c | 111 +++++++++++++++--------------------- 14590 src/cairo-glitz-surface.c | 89 +++++++++++++---------------- 14591 src/cairo-gstate.c | 37 +++++------- 14592 src/cairo-hash.c | 10 ++-- 14593 src/cairo-hull.c | 2 +- 14594 src/cairo-image-surface.c | 47 +++++++--------- 14595 src/cairo-lzw.c | 6 +- 14596 src/cairo-matrix.c | 4 +- 14597 src/cairo-meta-surface.c | 48 ++++++---------- 14598 src/cairo-os2-surface.c | 24 ++++---- 14599 src/cairo-output-stream.c | 18 +++--- 14600 src/cairo-paginated-surface.c | 8 +-- 14601 src/cairo-path-fixed.c | 14 ++--- 14602 src/cairo-path-stroke.c | 6 +- 14603 src/cairo-path.c | 16 +++--- 14604 src/cairo-pattern.c | 65 ++++++++++----------- 14605 src/cairo-pdf-surface.c | 62 +++++++++----------- 14606 src/cairo-pen.c | 19 +++---- 14607 src/cairo-png.c | 24 ++++---- 14608 src/cairo-polygon.c | 6 +- 14609 src/cairo-ps-surface.c | 63 +++++++++------------ 14610 src/cairo-quartz-surface.c | 15 ++--- 14611 src/cairo-region.c | 22 +++----- 14612 src/cairo-scaled-font-subsets.c | 20 +++---- 14613 src/cairo-scaled-font.c | 16 +++--- 14614 src/cairo-skiplist.c | 2 +- 14615 src/cairo-spline.c | 6 +- 14616 src/cairo-stroke-style.c | 6 +- 14617 src/cairo-surface-fallback.c | 10 ++-- 14618 src/cairo-surface.c | 82 ++++++++++++++------------- 14619 src/cairo-svg-surface.c | 24 +++----- 14620 src/cairo-traps.c | 9 +-- 14621 src/cairo-truetype-subset.c | 43 ++++++-------- 14622 src/cairo-type1-fallback.c | 27 ++++----- 14623 src/cairo-type1-subset.c | 30 +++++----- 14624 src/cairo-unicode.c | 20 +++---- 14625 src/cairo-win32-font.c | 40 ++++++------- 14626 src/cairo-win32-surface.c | 23 ++++---- 14627 src/cairo-xcb-surface.c | 50 +++++++--------- 14628 src/cairo-xlib-display.c | 2 +- 14629 src/cairo-xlib-surface.c | 88 ++++++++++++++--------------- 14630 src/cairo.c | 8 +-- 14631 src/cairoint.h | 8 ++- 14632 src/test-fallback-surface.c | 2 +- 14633 src/test-meta-surface.c | 6 +- 14634 src/test-paginated-surface.c | 6 +- 14635 58 files changed, 648 insertions(+), 856 deletions(-) 14636 14637commit d90d4bb6b99e0a912650234e28d097ea76c1cecc 14638Author: Chris Wilson <chris@chris-wilson.co.uk> 14639AuthorDate: Thu Oct 4 11:30:13 2007 +0100 14640Commit: Chris Wilson <chris@chris-wilson.co.uk> 14641CommitDate: Thu Oct 4 13:30:11 2007 +0100 14642 14643 [cairo-error] Make _cairo_error() return the error status. 14644 14645 As pointed out by Jeff Muizelaar, this allows for more concise code, as 14646 _cairo_error(CAIRO_STATUS_NO_MEMORY) 14647 return CAIRO_STATUS_NO_MEMORY 14648 can become 14649 return _cairo_error(CAIRO_STATUS_NO_MEMORY); 14650 14651 src/cairo.c | 6 +++++- 14652 src/cairoint.h | 2 +- 14653 2 files changed, 6 insertions(+), 2 deletions(-) 14654 14655commit 71120727e190dfaf3ccbe63b3d91d90e36cff6f6 14656Author: Chris Wilson <chris@chris-wilson.co.uk> 14657AuthorDate: Thu Oct 4 11:13:33 2007 +0100 14658Commit: Chris Wilson <chris@chris-wilson.co.uk> 14659CommitDate: Thu Oct 4 11:26:44 2007 +0100 14660 14661 [cairo-atomic] Use an atomic operation to set the status on a shared resource. 14662 14663 Since the objects can be shared and may be in use simultaneously across 14664 multiple threads, setting the status needs to be atomic. We use a 14665 locked compare and exchange in order to avoid overwriting an existing 14666 error - that is we use an atomic operation that only sets the new status 14667 value if the current value is CAIRO_STATUS_SUCCESS. 14668 14669 src/cairo-atomic-private.h | 8 ++++++++ 14670 src/cairo-atomic.c | 15 +++++++++++++++ 14671 src/cairo-pattern.c | 17 ++++++++--------- 14672 src/cairo-scaled-font.c | 13 ++++++------- 14673 src/cairo-surface.c | 13 ++++++------- 14674 src/cairo.c | 12 +++++------- 14675 6 files changed, 48 insertions(+), 30 deletions(-) 14676 14677commit f4356efb64a043e7a459fe77616f3b7c92b25c49 14678Author: Chris Wilson <chris@chris-wilson.co.uk> 14679AuthorDate: Thu Oct 4 09:30:32 2007 +0100 14680Commit: Chris Wilson <chris@chris-wilson.co.uk> 14681CommitDate: Thu Oct 4 09:30:32 2007 +0100 14682 14683 [malloc/error] Fixup _cairo_error (CAIRO_STATUS_SUCCESS)! 14684 14685 At some point during the blitz, I accidentally wrote 14686 _cairo_error (CAIRO_STATUS_SUCCESS) and then proceeded to paste it into 14687 the next 30 error sites! s/CAIRO_STATUS_SUCCESS/CAIRO_STATUS_NO_MEMORY/ 14688 14689 src/cairo-glitz-surface.c | 24 ++++++++++++------------ 14690 src/cairo-gstate.c | 8 ++++---- 14691 src/cairo-hash.c | 6 +++--- 14692 src/cairo-hull.c | 2 +- 14693 src/cairo-image-surface.c | 12 +++++++----- 14694 src/cairo-lzw.c | 4 ++-- 14695 src/cairo-meta-surface.c | 10 +++++----- 14696 7 files changed, 34 insertions(+), 32 deletions(-) 14697 14698commit ef5f460eb1f86a73e016c1150723ae1e70b3b037 14699Author: Chris Wilson <chris@chris-wilson.co.uk> 14700AuthorDate: Thu Oct 4 09:08:46 2007 +0100 14701Commit: Chris Wilson <chris@chris-wilson.co.uk> 14702CommitDate: Thu Oct 4 09:18:36 2007 +0100 14703 14704 [cairo-path] Check for an empty path in cairo_append_path(). 14705 14706 As we now generate empty paths, we must be able to handle empty paths 14707 in the user facing API. cairo_append_path() has an explicit check, and 14708 raises an error, for a NULL path->data, so we need to check the 14709 path->num_data first for empty paths. 14710 14711 src/cairo.c | 3 +++ 14712 test/copy-path.c | 15 +++++++++++++++ 14713 2 files changed, 18 insertions(+) 14714 14715commit 8ad56b308ae8bbecfe9873c21551a6d4b2302420 14716Author: Chris Wilson <chris@chris-wilson.co.uk> 14717AuthorDate: Thu Oct 4 00:38:12 2007 +0100 14718Commit: Chris Wilson <chris@chris-wilson.co.uk> 14719CommitDate: Thu Oct 4 00:42:30 2007 +0100 14720 14721 [malloc/error] Add call to _cairo_error() after a failed malloc. 14722 14723 Blitz all allocations to ensure that they raise a 14724 _cairo_error(CAIRO_STATUS_NO_MEMORY) on failure. 14725 14726 src/cairo-array.c | 6 +++- 14727 src/cairo-atsui-font.c | 1 + 14728 src/cairo-base85-stream.c | 4 ++- 14729 src/cairo-bentley-ottmann.c | 12 +++++-- 14730 src/cairo-cache.c | 4 ++- 14731 src/cairo-cff-subset.c | 72 +++++++++++++++++++++++++++++++---------- 14732 src/cairo-clip.c | 4 ++- 14733 src/cairo-deflate-stream.c | 4 ++- 14734 src/cairo-directfb-surface.c | 32 ++++++++++++------ 14735 src/cairo-font-face.c | 4 ++- 14736 src/cairo-font-options.c | 11 +++++-- 14737 src/cairo-ft-font.c | 13 +++++--- 14738 src/cairo-glitz-surface.c | 33 +++++++++++++++---- 14739 src/cairo-gstate.c | 13 ++++++-- 14740 src/cairo-hash.c | 9 ++++-- 14741 src/cairo-hull.c | 4 ++- 14742 src/cairo-image-surface.c | 10 ++++-- 14743 src/cairo-lzw.c | 2 ++ 14744 src/cairo-meta-surface.c | 26 +++++++++++---- 14745 src/cairo-output-stream.c | 21 +++++++++--- 14746 src/cairo-paginated-surface.c | 4 ++- 14747 src/cairo-path-fixed.c | 8 +++-- 14748 src/cairo-path-stroke.c | 5 ++- 14749 src/cairo-pattern.c | 5 ++- 14750 src/cairo-pdf-surface.c | 10 ++++-- 14751 src/cairo-ps-surface.c | 19 ++++++++--- 14752 src/cairo-quartz-surface.c | 14 ++++++++ 14753 src/cairo-region.c | 4 ++- 14754 src/cairo-scaled-font-subsets.c | 18 ++++++++--- 14755 src/cairo-scaled-font.c | 3 ++ 14756 src/cairo-skiplist.c | 5 ++- 14757 src/cairo-spline.c | 1 + 14758 src/cairo-stroke-style.c | 4 ++- 14759 src/cairo-surface-fallback.c | 2 ++ 14760 src/cairo-surface.c | 1 + 14761 src/cairo-traps.c | 5 ++- 14762 src/cairo-truetype-subset.c | 13 ++++++-- 14763 src/cairo-type1-fallback.c | 7 +++- 14764 src/cairo-type1-subset.c | 26 +++++++++++---- 14765 src/cairo-unicode.c | 8 +++-- 14766 src/cairo-win32-font.c | 9 ++++-- 14767 src/cairo-win32-surface.c | 5 ++- 14768 src/cairo-xcb-surface.c | 23 ++++++++++--- 14769 src/cairo-xlib-display.c | 4 ++- 14770 src/cairo-xlib-surface.c | 19 ++++++++--- 14771 src/cairo.c | 9 ++++-- 14772 src/test-meta-surface.c | 4 ++- 14773 47 files changed, 404 insertions(+), 116 deletions(-) 14774 14775commit 66664596559c55913fb0b9c8784fe8ab862c217b 14776Author: Chris Wilson <chris@chris-wilson.co.uk> 14777AuthorDate: Wed Oct 3 23:25:10 2007 +0100 14778Commit: Chris Wilson <chris@chris-wilson.co.uk> 14779CommitDate: Thu Oct 4 00:42:30 2007 +0100 14780 14781 [malloc] Take advantage of calloc() argument checking. 14782 14783 calloc() will check its arguments for integer overflows so it is safer 14784 not to pre-multiply them. 14785 14786 src/cairo-ft-font.c | 4 ++-- 14787 src/cairo-glitz-surface.c | 2 +- 14788 src/cairo-image-surface.c | 2 +- 14789 3 files changed, 4 insertions(+), 4 deletions(-) 14790 14791commit e49bcde27f88e21d5b8037a0089a226096f6514b 14792Author: Chris Wilson <chris@chris-wilson.co.uk> 14793AuthorDate: Wed Oct 3 23:19:10 2007 +0100 14794Commit: Chris Wilson <chris@chris-wilson.co.uk> 14795CommitDate: Thu Oct 4 00:42:29 2007 +0100 14796 14797 [malloc] Check for integer overflow when realloc'ing. 14798 14799 Perform similar sanity checks to Vlad's _cairo_malloc_ab() but on the 14800 arguments to realloc instead. 14801 14802 src/cairo-array.c | 4 ++-- 14803 src/cairo-lzw.c | 6 +++++- 14804 src/cairo-malloc-private.h | 30 ++++++++++++++++++++++++++---- 14805 src/cairo-path-stroke.c | 3 ++- 14806 src/cairo-pattern.c | 4 +++- 14807 src/cairo-pen.c | 3 ++- 14808 src/cairo-polygon.c | 3 ++- 14809 src/cairo-spline.c | 3 ++- 14810 src/cairo-traps.c | 3 ++- 14811 9 files changed, 46 insertions(+), 13 deletions(-) 14812 14813commit 8cba73a36c4ec42601388bb9374f3182651bfe60 14814Author: Chris Wilson <chris@chris-wilson.co.uk> 14815AuthorDate: Wed Oct 3 22:27:09 2007 +0100 14816Commit: Chris Wilson <chris@chris-wilson.co.uk> 14817CommitDate: Thu Oct 4 00:42:29 2007 +0100 14818 14819 [cairo-polygon] Add a _cairo_error(). 14820 14821 Add a _cairo_error() to an originating error site. 14822 14823 src/cairo-polygon.c | 1 + 14824 1 file changed, 1 insertion(+) 14825 14826commit e767c8b50af578209f1dac3b8f2ae22835e1fee7 14827Author: Chris Wilson <chris@chris-wilson.co.uk> 14828AuthorDate: Wed Oct 3 22:26:03 2007 +0100 14829Commit: Chris Wilson <chris@chris-wilson.co.uk> 14830CommitDate: Thu Oct 4 00:42:29 2007 +0100 14831 14832 [cairo-pen] Add _cairo_error(). 14833 14834 Markup a couple of originating error sites with _cairo_error(). 14835 14836 src/cairo-pen.c | 12 +++++++++--- 14837 1 file changed, 9 insertions(+), 3 deletions(-) 14838 14839commit 7047a091748577754845a6ed7f35837e41e7d5fb 14840Author: Adrian Johnson <ajohnson@redneon.com> 14841AuthorDate: Wed Oct 3 23:10:15 2007 +0930 14842Commit: Adrian Johnson <ajohnson@redneon.com> 14843CommitDate: Wed Oct 3 23:10:15 2007 +0930 14844 14845 TODO: Remove PDF encoding issues 14846 14847 All PDF font encoding issues are fixed now that TrueType fonts are 14848 embedded in PDF as CIDFontType2. 14849 14850 TODO | 2 -- 14851 1 file changed, 2 deletions(-) 14852 14853commit 3e70b0a388c04c61816078de058c323774edeb96 14854Author: Adrian Johnson <ajohnson@redneon.com> 14855AuthorDate: Wed Oct 3 23:01:59 2007 +0930 14856Commit: Adrian Johnson <ajohnson@redneon.com> 14857CommitDate: Wed Oct 3 23:01:59 2007 +0930 14858 14859 ROADMAP: Mark EPS support done 14860 14861 ROADMAP | 2 +- 14862 1 file changed, 1 insertion(+), 1 deletion(-) 14863 14864commit a4627177663beacd3d15699fee072f7ad2eff4a9 14865Author: Adrian Johnson <ajohnson@redneon.com> 14866AuthorDate: Wed Oct 3 19:55:05 2007 +0930 14867Commit: Adrian Johnson <ajohnson@redneon.com> 14868CommitDate: Wed Oct 3 19:55:05 2007 +0930 14869 14870 PDF: Fix bug in font resources 14871 14872 src/cairo-pdf-surface.c | 2 +- 14873 1 file changed, 1 insertion(+), 1 deletion(-) 14874 14875commit c9a9f1299c2bd5b6a8e53fdb264c233a43e0c44a 14876Author: Chris Wilson <chris@chris-wilson.co.uk> 14877AuthorDate: Mon Oct 1 17:00:38 2007 +0100 14878Commit: Chris Wilson <chris@chris-wilson.co.uk> 14879CommitDate: Mon Oct 1 19:50:07 2007 +0100 14880 14881 [cairo-image-surface] Avoid trying to create surfaces with invalid strides. 14882 14883 pixman does not (yet?) support arbitrary strides and will fail to 14884 generate an image for the data. We misinterpret that failure as a 14885 CAIRO_STATUS_NO_MEMORY, so instead return CAIRO_STATUS_INVALID_FORMAT 14886 before attempting to create the pixman image. 14887 14888 src/cairo-image-surface.c | 5 ++++- 14889 1 file changed, 4 insertions(+), 1 deletion(-) 14890 14891commit e241205f0c6d823150cf018c0deb6652dd8b8d02 14892Author: Chris Wilson <chris@chris-wilson.co.uk> 14893AuthorDate: Mon Oct 1 16:54:16 2007 +0100 14894Commit: Chris Wilson <chris@chris-wilson.co.uk> 14895CommitDate: Mon Oct 1 19:50:00 2007 +0100 14896 14897 [cairo-image-surface] Return correct error surfaces. 14898 14899 Avoid returning the "generic" _cairo_surface_nil (which corresponds to 14900 CAIRO_STATUS_NO_MEMORY) when the user asks us to create a surface with 14901 an invalid format or content. 14902 14903 src/cairo-image-surface.c | 65 ++++++++++++++++++++++++++++++++++++++++++----- 14904 1 file changed, 59 insertions(+), 6 deletions(-) 14905 14906commit b4f86638cc4b87bfaf10568ae9beb89626e26613 14907Author: Chris Wilson <chris@chris-wilson.co.uk> 14908AuthorDate: Mon Oct 1 17:59:57 2007 +0100 14909Commit: Chris Wilson <chris@chris-wilson.co.uk> 14910CommitDate: Mon Oct 1 17:59:57 2007 +0100 14911 14912 [cairo-path] Don't raise an error when attempting to create an empty path. 14913 14914 Generate a real empty path structure instead of returning 14915 _cairo_path_nil, if we have been asked to create an empty path. 14916 14917 (Also add a couple of missing _cairo_error()s and an appropriate test 14918 case.) 14919 14920 Spotted by Fred Kiefer. 14921 14922 src/cairo-path.c | 36 ++++++++++++++++++++++++------------ 14923 test/copy-path.c | 17 +++++++++++++++++ 14924 2 files changed, 41 insertions(+), 12 deletions(-) 14925 14926commit 042c382c094d1ea6f9a5a162d4d1d9ac83413233 14927Author: Adrian Johnson <ajohnson@redneon.com> 14928AuthorDate: Sat Sep 29 07:55:48 2007 +0930 14929Commit: Adrian Johnson <ajohnson@redneon.com> 14930CommitDate: Sat Sep 29 07:55:48 2007 +0930 14931 14932 CFF Subetting: Fix for #10849 14933 14934 This fixes the problem Apple Preview has with viewing PDFs with CFF 14935 font subsets. 14936 14937 src/cairo-cff-subset.c | 2 +- 14938 1 file changed, 1 insertion(+), 1 deletion(-) 14939 14940commit d837a458b95c0e1866eecaf3688dfa36e7dafe8e 14941Author: Chris Wilson <chris@chris-wilson.co.uk> 14942AuthorDate: Thu Sep 27 17:45:51 2007 +0100 14943Commit: Chris Wilson <chris@chris-wilson.co.uk> 14944CommitDate: Thu Sep 27 17:46:15 2007 +0100 14945 14946 [configure] Work-around bad interaction of libtool and lcov 14947 14948 libtool causes the .gcda files to be generated in the .libs/ directory, 14949 separate from the .c source file. lcov expects them to be in the same 14950 directory - so massage the lcov.info file to remove the reference to the 14951 .libs/. 14952 14953 Also separate the target for generating the lcov output, so that it can 14954 be run independently from triggering the tests. And improve convenience 14955 of using the other lcov targets. 14956 14957 Makefile.am | 29 ++++++++++++++++++++--------- 14958 1 file changed, 20 insertions(+), 9 deletions(-) 14959 14960commit abe1b89da4a2aa255a218103c7a05711d0f73b1c 14961Author: Chris Wilson <chris@chris-wilson.co.uk> 14962AuthorDate: Thu Sep 27 14:49:30 2007 +0100 14963Commit: Chris Wilson <chris@chris-wilson.co.uk> 14964CommitDate: Thu Sep 27 16:14:02 2007 +0100 14965 14966 [test/get-path-extents] Test extents of cairo_text_path(). 14967 14968 Check that the text path extents match the computed metrics. 14969 14970 test/get-path-extents.c | 38 ++++++++++++++++++++++++++++---------- 14971 1 file changed, 28 insertions(+), 10 deletions(-) 14972 14973commit 0618818f7a4a323d2c2d0dd122e08aeaa025b3f3 14974Author: Chris Wilson <chris@chris-wilson.co.uk> 14975AuthorDate: Wed Sep 26 14:40:36 2007 +0100 14976Commit: Chris Wilson <chris@chris-wilson.co.uk> 14977CommitDate: Wed Sep 26 14:40:36 2007 +0100 14978 14979 [test/get-path-extents] Test extents of an arc. 14980 14981 Add the test case from bug 7245, 14982 https://bugs.freedesktop.org/show_bug.cgi?id=7245. 14983 14984 test/get-path-extents.c | 24 +++++++++++++++++++----- 14985 1 file changed, 19 insertions(+), 5 deletions(-) 14986 14987commit 54d5dccffa402835db57231f7a6cd98d71688359 14988Author: Adrian Johnson <ajohnson@redneon.com> 14989AuthorDate: Wed Sep 26 22:21:26 2007 +0930 14990Commit: Adrian Johnson <ajohnson@redneon.com> 14991CommitDate: Wed Sep 26 22:21:26 2007 +0930 14992 14993 PDF: Compress pattern and group streams 14994 14995 src/cairo-pdf-surface.c | 16 +++++++++++----- 14996 1 file changed, 11 insertions(+), 5 deletions(-) 14997 14998commit a0a51977f48cc14c442357f472ed20e43c42829c 14999Author: Adrian Johnson <ajohnson@redneon.com> 15000AuthorDate: Wed Sep 26 22:21:07 2007 +0930 15001Commit: Adrian Johnson <ajohnson@redneon.com> 15002CommitDate: Wed Sep 26 22:21:07 2007 +0930 15003 15004 PDF: Fix bug in font resources when same font is in multiple groups 15005 15006 src/cairo-pdf-surface.c | 16 +++++++++++----- 15007 1 file changed, 11 insertions(+), 5 deletions(-) 15008 15009commit 76b9b1819251c8f3df0a5ada92a501ad83baa5a1 15010Author: Chris Wilson <chris@chris-wilson.co.uk> 15011AuthorDate: Wed Sep 26 00:41:31 2007 +0100 15012Commit: Chris Wilson <chris@chris-wilson.co.uk> 15013CommitDate: Wed Sep 26 00:41:31 2007 +0100 15014 15015 [test/create-for-stream] Add the missing cairo_surface_finish(). 15016 15017 Moments after pushing the new test case did I realise the issue... 15018 We do not attempt to write out the surface to the user stream until 15019 we perform the cairo_surface_destroy() by which point we have lost 15020 the ability to interrogate the error status. We can avoid this by 15021 explicitly calling cairo_surface_finish() and then checking the 15022 error status - and we see that the error is indeed reported 15023 correctly. 15024 15025 No bug. Nothing to see here. Please move along. (Apart from the 15026 request for the status to be return from cairo_surface_destroy!) 15027 15028 test/create-for-stream.c | 1 + 15029 1 file changed, 1 insertion(+) 15030 15031commit 1e7f0bd4d5148940fe963eb20782bffe5ee735bd 15032Author: Chris Wilson <chris@chris-wilson.co.uk> 15033AuthorDate: Wed Sep 26 00:28:47 2007 +0100 15034Commit: Chris Wilson <chris@chris-wilson.co.uk> 15035CommitDate: Wed Sep 26 00:31:08 2007 +0100 15036 15037 [test/create-for-stream] Add test case for user error propagation. 15038 15039 From bug https://bugs.freedesktop.org/show_bug.cgi?id=7049, we find 15040 that the error status from the user supplied write function to 15041 cairo_*_surface_create_for_stream is ignored and not propagated back 15042 to the surface/context - leading to silent data loss. Incorporate 15043 the suggested test case, a write function that simply returns 15044 CAIRO_STATUS_WRITE_ERROR, into create-for-stream.c. 15045 15046 test/create-for-stream.c | 57 +++++++++++++++++++++++++++++++++++++----------- 15047 1 file changed, 44 insertions(+), 13 deletions(-) 15048 15049commit 1469de5211e84e40490fa612538986768748bd55 15050Author: Chris Wilson <chris@chris-wilson.co.uk> 15051AuthorDate: Tue Sep 25 23:35:25 2007 +0100 15052Commit: Chris Wilson <chris@chris-wilson.co.uk> 15053CommitDate: Tue Sep 25 23:45:39 2007 +0100 15054 15055 [cairo-png] Propagate error from read and write funcs. 15056 15057 Use the png_struct->error_ptr to propagate the error status from the 15058 user/stdio read and write functions through the png_error() to the 15059 cairo_surface_write_to_png*() and cairo_surface_read_from_png*() 15060 functions. From there the error is returned back to the user either 15061 directly or as the most appropriate error surface. 15062 15063 (Fixes https://bugs.freedesktop.org/show_bug.cgi?id=6909) 15064 15065 src/cairo-png.c | 57 ++++++++++++++++++++++------------ 15066 test/create-from-png.c | 84 ++++++++++++++++++++++++++++++++++++++++++++------ 15067 2 files changed, 113 insertions(+), 28 deletions(-) 15068 15069commit f1d84271d363cc80cdef92ec9cac2cf29783bfe0 15070Author: Chris Wilson <chris@chris-wilson.co.uk> 15071AuthorDate: Tue Sep 25 21:58:24 2007 +0100 15072Commit: Chris Wilson <chris@chris-wilson.co.uk> 15073CommitDate: Tue Sep 25 22:19:22 2007 +0100 15074 15075 [cairo-atomic] Do not use Intel atomic primitives on i386. 15076 15077 When limiting the target instruction set for compatibility with older 15078 processors, e.g. -march=i386, the Intel atomic primitives generate a 15079 call to a non-existent function, __sync_fetch_and_add_4(). To detect 15080 this scenario change the configure test from AC_TRY_COMPILE to 15081 AC_TRY_LINK which will then cause Cairo to fall back to using mutexes 15082 for its atomic operations. 15083 15084 configure.in | 2 +- 15085 1 file changed, 1 insertion(+), 1 deletion(-) 15086 15087commit 03be41151d06d48d55bc1e172535829ec45a10cf 15088Author: Chris Wilson <chris@chris-wilson.co.uk> 15089AuthorDate: Sun Sep 23 21:08:09 2007 +0100 15090Commit: Chris Wilson <chris@chris-wilson.co.uk> 15091CommitDate: Tue Sep 25 16:29:54 2007 +0100 15092 15093 [cairo-atomic] Rewrite reference counting using atomic ops. 15094 15095 Introduce an opaque cairo_reference_count_t and define operations on it 15096 in terms of atomic ops. Update all users of reference counters to use 15097 the new opaque type. 15098 15099 src/Makefile.am | 1 + 15100 src/cairo-clip-private.h | 12 +++--- 15101 src/cairo-clip.c | 11 ++++-- 15102 src/cairo-font-face.c | 49 +++++++++++------------ 15103 src/cairo-ft-font.c | 2 +- 15104 src/cairo-image-surface.c | 2 +- 15105 src/cairo-pattern.c | 50 ++++++++++++------------ 15106 src/cairo-private.h | 3 +- 15107 src/cairo-reference-count-private.h | 66 +++++++++++++++++++++++++++++++ 15108 src/cairo-scaled-font-private.h | 3 +- 15109 src/cairo-scaled-font.c | 77 ++++++++++++++++++------------------- 15110 src/cairo-surface-private.h | 3 +- 15111 src/cairo-surface.c | 33 ++++++++-------- 15112 src/cairo-xlib-display.c | 42 +++++++++----------- 15113 src/cairo-xlib-private.h | 5 ++- 15114 src/cairo-xlib-screen.c | 12 +++--- 15115 src/cairo.c | 23 ++++++----- 15116 src/cairoint.h | 27 +++++++------ 15117 18 files changed, 244 insertions(+), 177 deletions(-) 15118 15119commit 8b6c871c9084739460f1320cd36560a09477a83e 15120Author: Chris Wilson <chris@chris-wilson.co.uk> 15121AuthorDate: Fri Sep 21 10:45:55 2007 +0100 15122Commit: Chris Wilson <chris@chris-wilson.co.uk> 15123CommitDate: Tue Sep 25 16:29:54 2007 +0100 15124 15125 [cairo-atomic] Introduce atomic ops. 15126 15127 Test for the availability of the Intel __sync_* atomic primitives and 15128 use them to define a few operations useful for reference counting - 15129 providing a generic interface that may be targeted at more architectures 15130 in the future. If no atomic primitives are available, use a mutex based 15131 variant. If the contention on that mutex is too high, we can consider 15132 using an array of mutexes using the address of the atomic variable as 15133 the hash. 15134 15135 configure.in | 16 +++++++++ 15136 src/Makefile.am | 2 ++ 15137 src/cairo-atomic-private.h | 81 ++++++++++++++++++++++++++++++++++++++++++ 15138 src/cairo-atomic.c | 79 ++++++++++++++++++++++++++++++++++++++++ 15139 src/cairo-mutex-list-private.h | 3 ++ 15140 5 files changed, 181 insertions(+) 15141 15142commit 42de1a0a7f5cc10c2bad98ef69da302ed2a1ca84 15143Author: Chris Wilson <chris@chris-wilson.co.uk> 15144AuthorDate: Sun Sep 23 21:00:23 2007 +0100 15145Commit: Chris Wilson <chris@chris-wilson.co.uk> 15146CommitDate: Tue Sep 25 16:29:54 2007 +0100 15147 15148 Move GCC attributes wrapping into a separate header. 15149 15150 The wrapping of GCC attributes (such as cairo_private) needs to be 15151 visible to any header file, including those that avoid cairoint.h such 15152 as cairo-boilerplate. To achieve this we move the pre-processor magic to 15153 its own header file and include it as required. 15154 15155 src/Makefile.am | 1 + 15156 src/cairo-cache-private.h | 1 + 15157 src/cairo-clip-private.h | 1 + 15158 src/cairo-compiler-private.h | 115 ++++++++++++++++++++++++++++++++++++++ 15159 src/cairo-hash-private.h | 1 + 15160 src/cairo-mutex-private.h | 1 + 15161 src/cairo-output-stream-private.h | 1 + 15162 src/cairo-region-private.h | 2 + 15163 src/cairo-wideint-private.h | 2 + 15164 src/cairo-xlib-private.h | 5 +- 15165 src/cairoint.h | 71 +---------------------- 15166 11 files changed, 131 insertions(+), 70 deletions(-) 15167 15168commit be327a7b49a62c684e133aad5d5d6adec30b60e6 15169Author: Adrian Johnson <ajohnson@redneon.com> 15170AuthorDate: Tue Sep 25 23:04:03 2007 +0930 15171Commit: Adrian Johnson <ajohnson@redneon.com> 15172CommitDate: Tue Sep 25 23:04:03 2007 +0930 15173 15174 PDF: Compress the content stream 15175 15176 The content stream compression that was previously implemented was 15177 inadvertently bypassed when the new stream handling for meta surface 15178 patterns was implemented. 15179 15180 src/cairo-pdf-surface-private.h | 4 +++ 15181 src/cairo-pdf-surface.c | 65 ++++++++++++++++++++++++++++++++++------- 15182 2 files changed, 58 insertions(+), 11 deletions(-) 15183 15184commit 99fd9449c24055fd7b3623157397fe61282e2de0 15185Author: Adrian Johnson <ajohnson@redneon.com> 15186AuthorDate: Tue Sep 25 21:57:46 2007 +0930 15187Commit: Adrian Johnson <ajohnson@redneon.com> 15188CommitDate: Tue Sep 25 21:57:46 2007 +0930 15189 15190 PDF: Remove duplication from the resource dictionary 15191 15192 The same font identifer was being added the resources every time it 15193 was referenced. 15194 15195 src/cairo-pdf-surface.c | 4 +--- 15196 1 file changed, 1 insertion(+), 3 deletions(-) 15197 15198commit dc23ecb6198f1e28b6096cbef931e15407cc20a8 15199Author: Chris Wilson <chris@chris-wilson.co.uk> 15200AuthorDate: Sun Sep 23 21:02:31 2007 +0100 15201Commit: Chris Wilson <chris@chris-wilson.co.uk> 15202CommitDate: Sun Sep 23 21:35:59 2007 +0100 15203 15204 [cairo-boilerplate] Do not throw an error if an exclude target is not found. 15205 15206 If we fail to exclude a target because it was not in the list of 15207 targets - job done and no need to throw a tantrum. 15208 15209 boilerplate/cairo-boilerplate.c | 5 ----- 15210 1 file changed, 5 deletions(-) 15211 15212commit 4f7c5a5033f41de94a7ea284a64f4afa0900fff1 15213Author: Chris Wilson <chris@chris-wilson.co.uk> 15214AuthorDate: Sun Sep 23 21:04:36 2007 +0100 15215Commit: Chris Wilson <chris@chris-wilson.co.uk> 15216CommitDate: Sun Sep 23 21:35:49 2007 +0100 15217 15218 [cairo-region] Call _cairo_error() at original error site. 15219 15220 Before returning a fresh CAIRO_STATUS_NO_MEMORY, remember to call 15221 cairo_error(). 15222 15223 src/cairo-region.c | 4 +++- 15224 1 file changed, 3 insertions(+), 1 deletion(-) 15225 15226commit 45feb13c2689a8f5813e60fb0c2d17e9e02fd4b5 15227Author: Chris Wilson <chris@chris-wilson.co.uk> 15228AuthorDate: Sun Sep 23 21:34:50 2007 +0100 15229Commit: Chris Wilson <chris@chris-wilson.co.uk> 15230CommitDate: Sun Sep 23 21:35:25 2007 +0100 15231 15232 [cairo-clip] Avoid a malloc(0). 15233 15234 Avoid a potential allocation of 0 bytes, and a potential NULL leading to an 15235 incorrect CAIRO_STATUS_NO_MEMORY, when copying an empty clip region. 15236 15237 src/cairo-clip.c | 36 +++++++++++++++++++++--------------- 15238 1 file changed, 21 insertions(+), 15 deletions(-) 15239 15240commit 77f1aa78872aa108199afd41247cf21827f7e33a 15241Author: Adrian Johnson <ajohnson@redneon.com> 15242AuthorDate: Sun Sep 23 17:43:44 2007 +0930 15243Commit: Adrian Johnson <ajohnson@redneon.com> 15244CommitDate: Sun Sep 23 17:43:44 2007 +0930 15245 15246 Add Encapsulated PostScript support 15247 15248 The analysis surface will calculated the tight bounding box for each 15249 page. A new paginated-surface backend function set_bounding_box() has 15250 been added for passing the page bounding box to the target surface at 15251 the end of the analysis phase. 15252 15253 The changes to the PS file when EPS is enabled are: 15254 - Add EPS header 15255 - Use tight bounding box instead of page size 15256 - Use save/restore to ensure PS interpreter is left in the same state 15257 15258 src/cairo-analysis-surface-private.h | 10 ++- 15259 src/cairo-analysis-surface.c | 32 ++++++++ 15260 src/cairo-paginated-private.h | 19 ++++- 15261 src/cairo-paginated-surface.c | 15 +++- 15262 src/cairo-ps-surface-private.h | 3 +- 15263 src/cairo-ps-surface.c | 151 ++++++++++++++++++++++++----------- 15264 6 files changed, 171 insertions(+), 59 deletions(-) 15265 15266commit beefbdd63864d10924360f41b244de7edf7b5f5b 15267Author: Adrian Johnson <ajohnson@redneon.com> 15268AuthorDate: Sun Sep 23 14:23:33 2007 +0930 15269Commit: Adrian Johnson <ajohnson@redneon.com> 15270CommitDate: Sun Sep 23 14:23:33 2007 +0930 15271 15272 Add Encapsulated PostScript API 15273 15274 doc/public/cairo-sections.txt | 2 ++ 15275 src/cairo-ps-surface-private.h | 2 ++ 15276 src/cairo-ps-surface.c | 57 ++++++++++++++++++++++++++++++++++++++++++ 15277 src/cairo-ps.h | 7 ++++++ 15278 4 files changed, 68 insertions(+) 15279 15280commit b20e08999e2f6e7a72ee75a7c3fd865bf0368794 15281Author: Adrian Johnson <ajohnson@redneon.com> 15282AuthorDate: Sun Sep 23 11:37:02 2007 +0930 15283Commit: Adrian Johnson <ajohnson@redneon.com> 15284CommitDate: Sun Sep 23 11:37:02 2007 +0930 15285 15286 Truetype Subsetting: Avoid failing when fonts are missing optional tables 15287 15288 Previously, the TrueType subsetting would fail if any of the "cvt", 15289 "fpgm", or "prep" tables were missing from the source font. However 15290 these tables are optional and not required in the subsetted font if 15291 they do not appear in the source font. 15292 15293 The "name" table has been removed from the subsetted font as the 15294 Type42 specification does not require this table. 15295 15296 src/cairo-truetype-subset.c | 153 +++++++++++++++++++++++++++++++------------- 15297 1 file changed, 110 insertions(+), 43 deletions(-) 15298 15299commit 8132b8b417c75388ce4c4671fffddaa44a5d1be0 15300Author: Brian Ewins <Brian.Ewins@gmail.com> 15301AuthorDate: Sun Sep 23 02:52:01 2007 +0100 15302Commit: Brian Ewins <Brian.Ewins@gmail.com> 15303CommitDate: Sun Sep 23 02:52:01 2007 +0100 15304 15305 [type1-subset] only subset ft fonts 15306 15307 If atsui and ft were both enabled, the code crashed trying to subset 15308 type-1 fonts; fixed by checking if fonts really are ft before using 15309 them as ft fonts. This is a temporary fix until we support subsetting 15310 across all font backends. 15311 15312 src/cairo-type1-subset.c | 2 ++ 15313 1 file changed, 2 insertions(+) 15314 15315commit 6020f67f1a49cfe3844c4938d4af24c63c8424cc 15316Author: Vladimir Vukicevic <vladimir@pobox.com> 15317AuthorDate: Fri Sep 21 11:02:42 2007 -0700 15318Commit: Vladimir Vukicevic <vladimir@pobox.com> 15319CommitDate: Fri Sep 21 11:02:42 2007 -0700 15320 15321 Avoid divide-by-zero when trying to allocate a 0-sized array 15322 15323 Fix up the _cairo_malloc_* wrappers to avoid blindly dividing by zero; 15324 any attempt to allocate a zero-sized chunk of memory will result in 15325 NULL. 15326 15327 src/cairo-malloc-private.h | 35 +++++++++++++++++++++++++---------- 15328 1 file changed, 25 insertions(+), 10 deletions(-) 15329 15330commit c79fc9af334fd6f2d1078071d64178125561b187 15331Author: Carl Worth <cworth@cworth.org> 15332AuthorDate: Thu Sep 20 16:01:43 2007 -0700 15333Commit: Carl Worth <cworth@cworth.org> 15334CommitDate: Thu Sep 20 16:01:43 2007 -0700 15335 15336 Add rgb24-specific reference imag for mask-alpha test 15337 15338 test/mask-alpha-rgb24-ref.png | Bin 0 -> 599 bytes 15339 1 file changed, 0 insertions(+), 0 deletions(-) 15340 15341commit 59dd59ce8d4c2a35788f3f0baf3409d3a8555744 15342Author: Adrian Johnson <ajohnson@redneon.com> 15343AuthorDate: Sun Sep 9 22:32:36 2007 +0930 15344Commit: Carl Worth <cworth@cworth.org> 15345CommitDate: Thu Sep 20 16:00:34 2007 -0700 15346 15347 Add mask-alpha test 15348 15349 test/.gitignore | 1 + 15350 test/Makefile.am | 1 + 15351 test/mask-alpha-ref.png | Bin 0 -> 640 bytes 15352 test/mask-alpha.c | 90 ++++++++++++++++++++++++++++++++++++++++++++++++ 15353 4 files changed, 92 insertions(+) 15354 15355commit 12b2ab630c2343c7bd7d885cc0e773023e3d8fa8 15356Author: Adrian Johnson <ajohnson@redneon.com> 15357AuthorDate: Thu Sep 20 22:51:39 2007 +0930 15358Commit: Adrian Johnson <ajohnson@redneon.com> 15359CommitDate: Thu Sep 20 22:51:39 2007 +0930 15360 15361 PDF: Add support for CAIRO_FORMAT_A8 images 15362 15363 src/cairo-pdf-surface.c | 44 ++++++++++++++++++++++++++++++++------------ 15364 1 file changed, 32 insertions(+), 12 deletions(-) 15365 15366commit 8a4adcf5f3c893505a53882a0532a220f79f4409 15367Author: Adrian Johnson <ajohnson@redneon.com> 15368AuthorDate: Thu Sep 20 08:57:19 2007 +0930 15369Commit: Adrian Johnson <ajohnson@redneon.com> 15370CommitDate: Thu Sep 20 08:57:19 2007 +0930 15371 15372 ROADMAP: Add metadata API 15373 15374 ROADMAP | 7 +++++++ 15375 1 file changed, 7 insertions(+) 15376 15377commit 6e78c6589d4af6291158b7cd9d94e3a80139e279 15378Author: Behdad Esfahbod <behdad@behdad.org> 15379AuthorDate: Tue Sep 18 19:50:16 2007 -0400 15380Commit: Behdad Esfahbod <behdad@behdad.org> 15381CommitDate: Tue Sep 18 19:50:50 2007 -0400 15382 15383 [ROADMAP] Mark xlib IncludeInferior support done 15384 15385 ROADMAP | 5 ++--- 15386 1 file changed, 2 insertions(+), 3 deletions(-) 15387 15388commit d8b0de01d67cdf73d8266a73f54ba1ac42fee3c9 15389Author: Vladimir Vukicevic <vladimir@pobox.com> 15390AuthorDate: Tue Sep 18 09:26:05 2007 -0700 15391Commit: Vladimir Vukicevic <vladimir@pobox.com> 15392CommitDate: Tue Sep 18 09:28:30 2007 -0700 15393 15394 fix trailing whitespace 15395 15396 src/cairo-surface.c | 4 ++-- 15397 1 file changed, 2 insertions(+), 2 deletions(-) 15398 15399commit 4fd9acc1b321d75623a66d37c0ff299ae06fb98b 15400Author: Vladimir Vukicevic <vladimir@pobox.com> 15401AuthorDate: Tue Sep 4 10:30:08 2007 -0700 15402Commit: Vladimir Vukicevic <vladimir@pobox.com> 15403CommitDate: Tue Sep 18 09:28:30 2007 -0700 15404 15405 [win32] add new win32 printing surface 15406 15407 src/Makefile.win32 | 3 ++- 15408 1 file changed, 2 insertions(+), 1 deletion(-) 15409 15410commit e3c16e15e39d98f96e2ce20e397d88214f5a821e 15411Author: Vladimir Vukicevic <vladimir@pobox.com> 15412AuthorDate: Wed Aug 29 16:30:49 2007 -0700 15413Commit: Vladimir Vukicevic <vladimir@pobox.com> 15414CommitDate: Tue Sep 18 09:28:30 2007 -0700 15415 15416 Make NO_MUTEX really mean no mutexes 15417 15418 src/cairo-mutex-type-private.h | 6 +++--- 15419 1 file changed, 3 insertions(+), 3 deletions(-) 15420 15421commit ffc16c4be2fb5a0d214cb186dee52e74dbd584cf 15422Author: Vladimir Vukicevic <vladimir@pobox.com> 15423AuthorDate: Wed Aug 29 16:25:58 2007 -0700 15424Commit: Vladimir Vukicevic <vladimir@pobox.com> 15425CommitDate: Tue Sep 18 09:28:29 2007 -0700 15426 15427 [win32] Add win32 printing surface 15428 15429 Add win32 surface intended for use with printer DCs; GDI will be used 15430 as much as possible, and the surface will be a paginated surface 15431 that supports fine-grained fallback. 15432 15433 (Original work from Adrian Johnson; additional fixes by me.) 15434 15435 src/Makefile.am | 2 +- 15436 src/cairo-paginated-surface.c | 37 +- 15437 src/cairo-win32-font.c | 7 +- 15438 src/cairo-win32-printing-surface.c | 1220 ++++++++++++++++++++++++++++++++++++ 15439 src/cairo-win32-private.h | 66 +- 15440 src/cairo-win32-surface.c | 78 ++- 15441 src/cairo-win32.h | 3 + 15442 src/cairo.h | 4 +- 15443 8 files changed, 1376 insertions(+), 41 deletions(-) 15444 15445commit 284ed91ee4418baf6dd1a437a904980a2156fa48 15446Author: Vladimir Vukicevic <vladimir@pobox.com> 15447AuthorDate: Wed Aug 29 15:34:04 2007 -0700 15448Commit: Vladimir Vukicevic <vladimir@pobox.com> 15449CommitDate: Tue Sep 18 09:28:29 2007 -0700 15450 15451 Let surfaces specify their native resolution, for fallback purposes 15452 15453 src/cairo-image-surface.c | 2 ++ 15454 src/cairo-paginated-surface.c | 4 ++-- 15455 src/cairo-surface-private.h | 8 ++++++++ 15456 src/cairo-surface.c | 24 ++++++++++++++++++++++++ 15457 src/cairoint.h | 6 ++++++ 15458 5 files changed, 42 insertions(+), 2 deletions(-) 15459 15460commit 79d975f84bcc32e91db517d71a7312e2e1d653d4 15461Author: Behdad Esfahbod <behdad@behdad.org> 15462AuthorDate: Wed Sep 12 17:45:11 2007 -0400 15463Commit: Behdad Esfahbod <behdad@behdad.org> 15464CommitDate: Mon Sep 17 20:55:42 2007 -0400 15465 15466 [cairo-ft-font] Ignore FT_Load_Glyph errors other than out-of-memory 15467 Same for FT_Render_Glyph. 15468 15469 When the user asks us to render a glyph that is not available in the font, 15470 it's mostly an unavoidable kind of error for them, as in, they can't 15471 avoid such a call. So it's not nice to put cairo_t in an error state and 15472 refuse any further drawying. 15473 15474 Many PDF files are created using buggy software and cause such glpyh-not-found 15475 errors for CID 0 for example. 15476 15477 Eventually we should propagate these kind of errors up and return it from 15478 the function call causing it, but that needs API change to add return value 15479 to all text functions, so for now we just ignore these errors. 15480 15481 src/cairo-ft-font.c | 14 +++++++++----- 15482 1 file changed, 9 insertions(+), 5 deletions(-) 15483 15484commit 21ab44f11d3d20eead5d988c7a6cf48eebff08c7 15485Author: Behdad Esfahbod <behdad@behdad.org> 15486AuthorDate: Mon Sep 17 16:41:52 2007 -0400 15487Commit: Behdad Esfahbod <behdad@behdad.org> 15488CommitDate: Mon Sep 17 16:41:52 2007 -0400 15489 15490 [ChangeLog.mk] Make make rule depend on .git/HEAD, not .git 15491 That is exactly what we want. Kristian Høgsberg suggested it. 15492 15493 ChangeLog.mk | 2 +- 15494 1 file changed, 1 insertion(+), 1 deletion(-) 15495 15496commit 3f4875dbe20e1d093d70f49c32f7ddf6a6e6ef61 15497Author: Adrian Johnson <ajohnson@redneon.com> 15498AuthorDate: Sun Sep 16 20:26:33 2007 +0930 15499Commit: Adrian Johnson <ajohnson@redneon.com> 15500CommitDate: Sun Sep 16 20:26:33 2007 +0930 15501 15502 Analysis-surface: Use pattern extents to limit show_glyphs extents 15503 15504 src/cairo-analysis-surface.c | 12 +++++++++++- 15505 1 file changed, 11 insertions(+), 1 deletion(-) 15506 15507commit 14786385b40aa0ae83e3b077a82e3f34aba63f22 15508Author: Adrian Johnson <ajohnson@redneon.com> 15509AuthorDate: Sun Sep 16 19:43:28 2007 +0930 15510Commit: Adrian Johnson <ajohnson@redneon.com> 15511CommitDate: Sun Sep 16 19:43:28 2007 +0930 15512 15513 Change paginated surface size when PS/PDF _set_size() called 15514 15515 The finer-grained fallbacks would not work correctly if the page 15516 was set to a larger size. 15517 15518 Add _cairo_paginated_surface_set_size() function that is called 15519 from cairo_ps_surface_set_size() and cairo_pdf_surface_set_size(). 15520 15521 src/cairo-paginated-private.h | 5 +++++ 15522 src/cairo-paginated-surface.c | 23 +++++++++++++++++++++++ 15523 src/cairo-pdf-surface-private.h | 2 ++ 15524 src/cairo-pdf-surface.c | 14 ++++++++++---- 15525 src/cairo-ps-surface-private.h | 2 ++ 15526 src/cairo-ps-surface.c | 14 ++++++++++---- 15527 6 files changed, 52 insertions(+), 8 deletions(-) 15528 15529commit 46cb7e69526e8b5663077e7409dc232a0f56800b 15530Author: Adrian Johnson <ajohnson@redneon.com> 15531AuthorDate: Sun Sep 16 16:32:54 2007 +0930 15532Commit: Adrian Johnson <ajohnson@redneon.com> 15533CommitDate: Sun Sep 16 16:32:54 2007 +0930 15534 15535 PS: Remove initclip operator 15536 15537 The DSC and EPS specifications do not allow the use of initclip. 15538 Instead each page is wrapped in a gsave/restore pair and a 15539 "grestore gsave" is emitted when the clip path is reset. 15540 15541 src/cairo-ps-surface.c | 6 +++--- 15542 1 file changed, 3 insertions(+), 3 deletions(-) 15543 15544commit e9d85235f9cceed92af428e0ab43503fe0850636 15545Author: Adrian Johnson <ajohnson@redneon.com> 15546AuthorDate: Sun Sep 16 16:21:10 2007 +0930 15547Commit: Adrian Johnson <ajohnson@redneon.com> 15548CommitDate: Sun Sep 16 16:21:10 2007 +0930 15549 15550 PDF: Fix copy_page() bug 15551 15552 src/cairo-pdf-surface.c | 2 ++ 15553 1 file changed, 2 insertions(+) 15554 15555commit a5cb48fcf269c16dd138c0ee31b138b1f13e623d 15556Author: Adrian Johnson <ajohnson@redneon.com> 15557AuthorDate: Sun Sep 16 16:15:10 2007 +0930 15558Commit: Adrian Johnson <ajohnson@redneon.com> 15559CommitDate: Sun Sep 16 16:15:10 2007 +0930 15560 15561 PS: Remove copy_page() 15562 15563 The DSC specification recommends not using the copypage operator as it 15564 breaks page independence. 15565 15566 src/cairo-paginated-surface.c | 3 +-- 15567 src/cairo-ps-surface.c | 14 +------------- 15568 2 files changed, 2 insertions(+), 15 deletions(-) 15569 15570commit 03f7a51f47717af45afbc439ce2178789449ab32 15571Author: Ken Herron <kherron+cairo@fmailbox.com> 15572AuthorDate: Sun Sep 16 15:56:16 2007 +0930 15573Commit: Adrian Johnson <ajohnson@redneon.com> 15574CommitDate: Sun Sep 16 15:56:16 2007 +0930 15575 15576 PS output optimizations (#11442) 15577 15578 This patches cairo-ps-surface.c to use the aliases for moveto, lineto, curveto, 15579 and closepath. It also uses selectfont to select fonts. 15580 15581 src/cairo-ps-surface.c | 13 ++++++------- 15582 1 file changed, 6 insertions(+), 7 deletions(-) 15583 15584commit 1274147ce3ec855488fe4e437838b1134c494413 15585Author: Behdad Esfahbod <behdad@behdad.org> 15586AuthorDate: Sat Sep 15 04:03:08 2007 -0400 15587Commit: Behdad Esfahbod <behdad@behdad.org> 15588CommitDate: Sat Sep 15 04:03:08 2007 -0400 15589 15590 [cairo-gstate] Fix comment about font_matrix having zero translation 15591 15592 src/cairo-gstate.c | 9 +++++---- 15593 1 file changed, 5 insertions(+), 4 deletions(-) 15594 15595commit 6fbe2432c6072522b9003a1e46180392010a7aad 15596Author: Behdad Esfahbod <behdad@behdad.org> 15597AuthorDate: Sat Sep 15 04:02:39 2007 -0400 15598Commit: Behdad Esfahbod <behdad@behdad.org> 15599CommitDate: Sat Sep 15 04:02:39 2007 -0400 15600 15601 [PDF] Fix typo in comments 15602 15603 src/cairo-pdf-surface.c | 2 +- 15604 1 file changed, 1 insertion(+), 1 deletion(-) 15605 15606commit dca93eb76d64194f1325d7b941fa523da7801634 15607Author: Jeff Muizelaar <jeff@freiheit.infidigm.net> 15608AuthorDate: Wed Sep 12 23:12:59 2007 -0400 15609Commit: Jeff Muizelaar <jeff@freiheit.infidigm.net> 15610CommitDate: Wed Sep 12 23:12:59 2007 -0400 15611 15612 Fix theoretical NULL return from cairo_pop_group() 15613 15614 This also makes the code more consistent as group_pattern always holds a valid 15615 pattern. 15616 15617 src/cairo.c | 6 +++--- 15618 1 file changed, 3 insertions(+), 3 deletions(-) 15619 15620commit 5eae45c55b3cd240945cd225631c9c782f69b50f 15621Author: Jonathan Gramain <jonathan.gramain@gmail.com> 15622AuthorDate: Wed Sep 12 17:43:55 2007 -0400 15623Commit: Behdad Esfahbod <behdad@behdad.org> 15624CommitDate: Wed Sep 12 17:45:21 2007 -0400 15625 15626 [cairo-gstate] Fix order of matrices in _cairo_gstate_backend_to_user_rectangle() 15627 15628 The cairo_matrix_multiply(out,a,b) docs say that it is equivalent to applying 15629 matrix a first, followed by b. Looking at _cairo_gstate_backend_to_user() we should 15630 apply device_transform_inverse followed by ctm_inverse. That's what we do now. 15631 15632 src/cairo-gstate.c | 5 +++-- 15633 1 file changed, 3 insertions(+), 2 deletions(-) 15634 15635commit f2910ad3e9bfd279af7f9f43013489a32b5c1747 15636Author: Vladimir Vukicevic <vladimir@pobox.com> 15637AuthorDate: Tue Sep 11 13:32:26 2007 -0700 15638Commit: Vladimir Vukicevic <vladimir@pobox.com> 15639CommitDate: Tue Sep 11 13:32:26 2007 -0700 15640 15641 Update cairo-sections.txt 15642 15643 doc/public/cairo-sections.txt | 3 +++ 15644 1 file changed, 3 insertions(+) 15645 15646commit 9e975757a2820303d67e8497ab6cef9368237eb5 15647Author: Vladimir Vukicevic <vladimir@pobox.com> 15648AuthorDate: Tue Sep 11 13:30:35 2007 -0700 15649Commit: Vladimir Vukicevic <vladimir@pobox.com> 15650CommitDate: Tue Sep 11 13:30:35 2007 -0700 15651 15652 Export cairo_surface_{copy,show}_page 15653 15654 This patch adds cairo_surface_copy_page and cairo_surface_show_page 15655 as public methods, leaving the previous cairo_show_page variants as 15656 shorthands. copy_page/show_page are specific to the surface, not 15657 to the context, so they need to be surface methods. 15658 15659 TODO | 5 ----- 15660 boilerplate/Makefile.win32 | 4 ++++ 15661 boilerplate/cairo-boilerplate-test-surfaces.c | 5 +---- 15662 src/cairo-gstate.c | 4 ++-- 15663 src/cairo-paginated-surface.c | 6 +++--- 15664 src/cairo-surface.c | 27 +++++++++++++++++++++++++-- 15665 src/cairo-svg-surface.c | 2 +- 15666 src/cairo.c | 6 ++++++ 15667 src/cairo.h | 6 ++++++ 15668 src/cairoint.h | 8 ++------ 15669 10 files changed, 50 insertions(+), 23 deletions(-) 15670 15671commit 7dd05b7f86da6a465bb979c2ba955655ddcf66ed 15672Author: Vladimir Vukicevic <vladimir@pobox.com> 15673AuthorDate: Tue Sep 11 11:27:35 2007 -0700 15674Commit: Vladimir Vukicevic <vladimir@pobox.com> 15675CommitDate: Tue Sep 11 11:27:47 2007 -0700 15676 15677 [mlk] Free boxes in copy_rectangle_list on success 15678 15679 Fix memory leak when copy_rectangle_list is used. 15680 15681 src/cairo-clip.c | 2 ++ 15682 1 file changed, 2 insertions(+) 15683 15684commit 897350c6c5cba29b8bd7890a33ecc4d7fa9b7795 15685Author: Adrian Johnson <ajohnson@redneon.com> 15686AuthorDate: Sun Sep 9 19:11:12 2007 +0930 15687Commit: Adrian Johnson <ajohnson@redneon.com> 15688CommitDate: Sun Sep 9 19:11:12 2007 +0930 15689 15690 PDF: Remove BC entry from Smask dictionary 15691 15692 The BC (background color) in the smask of the recently added 15693 cairo_mask() support was causing Ghostscript to crash due to the wrong 15694 number of BC values. The BC entry has been removed as BC default color 15695 is already what we want. 15696 15697 src/cairo-pdf-surface.c | 2 -- 15698 1 file changed, 2 deletions(-) 15699 15700commit 909e0be2416aa6833639439279583d1ae61777fc 15701Author: Adrian Johnson <ajohnson@redneon.com> 15702AuthorDate: Sun Sep 9 11:20:02 2007 +0930 15703Commit: Adrian Johnson <ajohnson@redneon.com> 15704CommitDate: Sun Sep 9 11:20:02 2007 +0930 15705 15706 Add PDF support for cairo_mask() 15707 15708 src/cairo-pdf-surface.c | 129 ++++++++++++++++++++++++++++++++++++++++++++++-- 15709 1 file changed, 125 insertions(+), 4 deletions(-) 15710 15711commit d62f8861689d8b9a9a837043fb78813f0407abd4 15712Author: Chris Wilson <chris@chris-wilson.co.uk> 15713AuthorDate: Wed Sep 5 08:07:41 2007 +0100 15714Commit: Chris Wilson <chris@chris-wilson.co.uk> 15715CommitDate: Fri Sep 7 12:40:28 2007 +0100 15716 15717 [cairo-ft-font] Early detection of a zero sized bitmap. 15718 15719 Under rare circumstances we may need to extract a surface that 15720 represents a bitmap with width==0 and rows==0. Detect this case at the 15721 start and simply return a zero-sized surface. 15722 15723 Fixes https://bugs.freedesktop.org/show_bug.cgi?id=12284. 15724 15725 src/cairo-ft-font.c | 6 ++++++ 15726 1 file changed, 6 insertions(+) 15727 15728commit d635e0103346f22e578d17c59153d292820e00d2 15729Author: Vladimir Vukicevic <vladimir@pobox.com> 15730AuthorDate: Thu Sep 6 12:56:59 2007 -0700 15731Commit: Vladimir Vukicevic <vladimir@pobox.com> 15732CommitDate: Thu Sep 6 12:56:59 2007 -0700 15733 15734 Add b8g8r8 formats to cairo-image-surface 15735 15736 Add recognition code for x8b8g8r8 and a8b8g8r8 to cairo-image-surface. 15737 (Used as the default for 24bpp by some older VNC servers.) 15738 15739 src/cairo-image-surface.c | 22 ++++++++++++++++++++++ 15740 1 file changed, 22 insertions(+) 15741 15742commit 3c01efb0ee0c8911fba7627d056ec3b53dfab6e3 15743Merge: 0682b9a9c 1e21220f0 15744Author: Carl Worth <cworth@cworth.org> 15745AuthorDate: Wed Sep 5 14:38:40 2007 -0700 15746Commit: Carl Worth <cworth@cworth.org> 15747CommitDate: Wed Sep 5 14:41:01 2007 -0700 15748 15749 Merge branch adrianj/pdf-meta-surface-pattern into cairo 15750 15751 This does introduce some reported failures from the cairo-pdf backend 15752 into the test suite. However, in all cases the output PDF files look 15753 fine when viewed with acroread. It looks like all of the problems 15754 could be fixed by using cairo_rectangle;cairo_fill along with 15755 CAIRO_EXTEND_PAD when drawing images with cairo inside poppler. 15756 15757 However, I'm not yet filing a bug against poppler and disabling these 15758 tests because we need to _implement_ CAIRO_EXTEND_PAD before we can 15759 tell poppler to start using it. 15760 15761commit 0682b9a9c18640c284c7cc8ba8792a329414998e 15762Author: Carl Worth <cworth@cworth.org> 15763AuthorDate: Tue Sep 4 16:47:49 2007 -0700 15764Commit: Carl Worth <cworth@cworth.org> 15765CommitDate: Wed Sep 5 14:38:21 2007 -0700 15766 15767 Add rgb24-ignore-alpha test 15768 15769 This test demonstrates a bug when compositing an rgb24 image over an argb32 15770 image, (the implementation appears to be examining the alpha channel 15771 rather than ignoring it). 15772 15773 test/.gitignore | 1 + 15774 test/Makefile.am | 1 + 15775 test/rgb24-ignore-alpha-ref.png | Bin 0 -> 116 bytes 15776 test/rgb24-ignore-alpha.c | 65 ++++++++++++++++++++++++++++++++++++++++ 15777 4 files changed, 67 insertions(+) 15778 15779commit 84a2c8968a57ed7593db1515718115218072bc0d 15780Author: Behdad Esfahbod <behdad@behdad.org> 15781AuthorDate: Wed Sep 5 12:38:27 2007 -0400 15782Commit: Behdad Esfahbod <behdad@behdad.org> 15783CommitDate: Wed Sep 5 12:38:27 2007 -0400 15784 15785 [test,perf] Support TARGETS_EXCLUDE make variable 15786 15787 perf/Makefile.am | 6 ++++-- 15788 test/Makefile.am | 5 +++-- 15789 2 files changed, 7 insertions(+), 4 deletions(-) 15790 15791commit 1e21220f0e2540e3befa66e4764f75589d0eef82 15792Author: Adrian Johnson <ajohnson@redneon.com> 15793AuthorDate: Wed Sep 5 22:53:43 2007 +0930 15794Commit: Adrian Johnson <ajohnson@redneon.com> 15795CommitDate: Wed Sep 5 22:53:43 2007 +0930 15796 15797 Create meta-surface source image with same content type as the 15798 meta-surface 15799 15800 src/cairo-meta-surface.c | 6 +++--- 15801 1 file changed, 3 insertions(+), 3 deletions(-) 15802 15803commit 875e32178e5d990a09f3c41262d890888035f04f 15804Author: Adrian Johnson <ajohnson@redneon.com> 15805AuthorDate: Wed Sep 5 22:51:13 2007 +0930 15806Commit: Adrian Johnson <ajohnson@redneon.com> 15807CommitDate: Wed Sep 5 22:51:13 2007 +0930 15808 15809 Eliminate unclipped CLEAR from meta-surface playback 15810 15811 The optimization that avoids replaying commands prior to an unclipped 15812 CLEAR operation now starts playback from the first command after the 15813 CLEAR. This avoids the need to handle the unclipped CLEAR in the PDF 15814 surface. 15815 15816 src/cairo-meta-surface.c | 12 ++++++------ 15817 1 file changed, 6 insertions(+), 6 deletions(-) 15818 15819commit d24f019101dd014983aeb0bf186fe2011694e2ed 15820Author: Adrian Johnson <ajohnson@redneon.com> 15821AuthorDate: Wed Sep 5 22:26:16 2007 +0930 15822Commit: Adrian Johnson <ajohnson@redneon.com> 15823CommitDate: Wed Sep 5 22:26:16 2007 +0930 15824 15825 Add support for PDF meta-surface patterns 15826 15827 boilerplate/cairo-boilerplate.c | 11 +- 15828 src/cairo-analysis-surface.c | 66 +++++++++ 15829 src/cairo-meta-surface-private.h | 4 + 15830 src/cairo-meta-surface.c | 43 +++++- 15831 src/cairo-pdf-surface.c | 282 ++++++++++++++++++++++++++++----------- 15832 src/cairo-types-private.h | 3 +- 15833 6 files changed, 317 insertions(+), 92 deletions(-) 15834 15835commit b85032584b32af968dc8d8a0fcfc9f3e1d2770a0 15836Author: Behdad Esfahbod <behdad@behdad.org> 15837AuthorDate: Wed Sep 5 00:26:56 2007 -0400 15838Commit: Behdad Esfahbod <behdad@behdad.org> 15839CommitDate: Wed Sep 5 00:26:56 2007 -0400 15840 15841 [configure.in] Fix non-pkgconfig Xrender detection path (#4724) 15842 15843 configure.in | 6 +++++- 15844 1 file changed, 5 insertions(+), 1 deletion(-) 15845 15846commit 1d788da5175dac34ed0298204753bf1b40dfc2b0 15847Merge: 49ae37684 e1819a24f 15848Author: Behdad Esfahbod <behdad@behdad.org> 15849AuthorDate: Tue Sep 4 19:12:48 2007 -0400 15850Commit: Behdad Esfahbod <behdad@behdad.org> 15851CommitDate: Tue Sep 4 19:12:48 2007 -0400 15852 15853 Merge branch 'no-xrender.h' into cairo 15854 15855commit e1819a24fb0196218c4045616c2ba458819b7d31 15856Author: Behdad Esfahbod <behdad@behdad.org> 15857AuthorDate: Tue Sep 4 19:12:14 2007 -0400 15858Commit: Behdad Esfahbod <behdad@behdad.org> 15859CommitDate: Tue Sep 4 19:12:14 2007 -0400 15860 15861 [cairo-xlib-xrender-private] Remove some protocol-specific macros 15862 15863 src/cairo-xlib-xrender-private.h | 48 ---------------------------------------- 15864 1 file changed, 48 deletions(-) 15865 15866commit 5e09126ce13c72222719b73ed3a8f504cf352583 15867Author: Behdad Esfahbod <behdad@behdad.org> 15868AuthorDate: Tue Sep 4 18:40:54 2007 -0400 15869Commit: Behdad Esfahbod <behdad@behdad.org> 15870CommitDate: Tue Sep 4 18:40:54 2007 -0400 15871 15872 [cairo-xlib-xrender-private] Add copyright/license info for copied files 15873 15874 src/cairo-xlib-xrender-private.h | 163 +++++++++++++++++++++++---------------- 15875 1 file changed, 95 insertions(+), 68 deletions(-) 15876 15877commit 49ae376840a5851bf4cc281a0562acdfe03337df 15878Author: Carl Worth <cworth@cworth.org> 15879AuthorDate: Tue Sep 4 11:35:40 2007 -0700 15880Commit: Carl Worth <cworth@cworth.org> 15881CommitDate: Tue Sep 4 11:37:46 2007 -0700 15882 15883 Fix error in description of cairo version numbers 15884 15885 And eliminate a bit of redundant text. 15886 15887 configure.in | 8 ++++---- 15888 1 file changed, 4 insertions(+), 4 deletions(-) 15889 15890commit b60c0a672f1711c20f898ac76c15b6b65a63d46e 15891Author: Chris Wilson <chris@chris-wilson.co.uk> 15892AuthorDate: Mon Sep 3 14:33:11 2007 +0100 15893Commit: Chris Wilson <chris@chris-wilson.co.uk> 15894CommitDate: Mon Sep 3 14:37:16 2007 +0100 15895 15896 [cairo-boilerplate] Introduce CAIRO_TEST_TARGET_EXCLUDE. 15897 15898 As opposed to the CAIRO_TEST_TARGET env var which lists the exact 15899 targets to test, CAIRO_TEST_TARGET_EXCLUDE instead supplies a list of 15900 targets to filter from the testing set. This is useful under 15901 circumstances where the build environment prevents testing of a target, 15902 for example no DirectFB support or the glitz library is broken, but where 15903 you still want to perform the minimal check that the code compiles. 15904 15905 boilerplate/cairo-boilerplate.c | 39 ++++++++++++++++++++++++++++++++++++++- 15906 1 file changed, 38 insertions(+), 1 deletion(-) 15907 15908commit 740fed62d236224fdfbfccf8c49a199851189107 15909Author: Behdad Esfahbod <behdad@behdad.org> 15910AuthorDate: Fri Aug 31 20:52:43 2007 -0400 15911Commit: Behdad Esfahbod <behdad@behdad.org> 15912CommitDate: Fri Aug 31 20:52:43 2007 -0400 15913 15914 [xlib] Make it compile without Xrender available at compile time (#12210) 15915 15916 src/Makefile.am | 3 +- 15917 src/cairo-xlib-display.c | 1 - 15918 src/cairo-xlib-private.h | 10 +- 15919 src/cairo-xlib-screen.c | 2 - 15920 src/cairo-xlib-surface.c | 7 +- 15921 src/cairo-xlib-xrender-private.h | 1102 ++++++++++++++++++++++++++++++++++++++ 15922 6 files changed, 1110 insertions(+), 15 deletions(-) 15923 15924commit c8ed3e1827dd1e6e85f2a40de67c4013432ba3bf 15925Author: Jody Goldberg <jody@gnome.org> 15926AuthorDate: Fri Aug 31 17:00:36 2007 -0400 15927Commit: Behdad Esfahbod <behdad@behdad.org> 15928CommitDate: Fri Aug 31 17:00:36 2007 -0400 15929 15930 [PDF] The symbol 'GROUP' is already used on some win32 systems; add a prefix 15931 15932 src/cairo-pdf-surface.c | 14 +++++++------- 15933 1 file changed, 7 insertions(+), 7 deletions(-) 15934 15935commit c14cf02f61105b755b380bd0a5d5b9e83a97d2c9 15936Author: Chris Wilson <chris@chris-wilson.co.uk> 15937AuthorDate: Fri Aug 31 17:20:54 2007 +0100 15938Commit: Chris Wilson <chris@chris-wilson.co.uk> 15939CommitDate: Fri Aug 31 17:21:02 2007 +0100 15940 15941 [cairo-surface] Add a comment about why the glyph array is not const. 15942 15943 As penance for attempting to make the glyph array constant, add a 15944 comment block to explain that the backends rely on being able to modify 15945 the array. 15946 15947 src/cairo-surface.c | 8 ++++++++ 15948 1 file changed, 8 insertions(+) 15949 15950commit e8e3bfc1308aa30ea08ec530b6a5ddf532fd3088 15951Author: Chris Wilson <chris@chris-wilson.co.uk> 15952AuthorDate: Fri Aug 31 16:53:21 2007 +0100 15953Commit: Chris Wilson <chris@chris-wilson.co.uk> 15954CommitDate: Fri Aug 31 16:53:21 2007 +0100 15955 15956 Revert "[cairo-gstate] Avoid copying untransformed glyphs." 15957 15958 This reverts commit 919bea6dbb32746f11781cd3a94eb44f5c4a32e6. 15959 15960 Sadly as Behdad points out some backends do modify the glyph array and, 15961 for example cairo-xlib-surface, hide this from the compiler with some 15962 evil casts. 15963 15964 src/cairo-analysis-surface.c | 2 +- 15965 src/cairo-directfb-surface.c | 2 +- 15966 src/cairo-glitz-surface.c | 2 +- 15967 src/cairo-gstate.c | 41 +++++++++--------------------------- 15968 src/cairo-meta-surface.c | 2 +- 15969 src/cairo-paginated-surface.c | 2 +- 15970 src/cairo-pdf-surface.c | 2 +- 15971 src/cairo-ps-surface.c | 2 +- 15972 src/cairo-quartz-surface.c | 2 +- 15973 src/cairo-scaled-font.c | 2 +- 15974 src/cairo-surface-fallback-private.h | 2 +- 15975 src/cairo-surface-fallback.c | 4 ++-- 15976 src/cairo-surface.c | 4 ++-- 15977 src/cairo-svg-surface.c | 2 +- 15978 src/cairo-win32-font.c | 2 +- 15979 src/cairo-win32-surface.c | 2 +- 15980 src/cairo-xcb-surface.c | 20 +++++++++--------- 15981 src/cairo-xlib-surface.c | 4 ++-- 15982 src/cairoint.h | 12 +++++------ 15983 src/test-meta-surface.c | 2 +- 15984 src/test-paginated-surface.c | 2 +- 15985 21 files changed, 47 insertions(+), 68 deletions(-) 15986 15987commit 919bea6dbb32746f11781cd3a94eb44f5c4a32e6 15988Author: Chris Wilson <chris@chris-wilson.co.uk> 15989AuthorDate: Fri Aug 31 11:24:06 2007 +0100 15990Commit: Chris Wilson <chris@chris-wilson.co.uk> 15991CommitDate: Fri Aug 31 16:28:06 2007 +0100 15992 15993 [cairo-gstate] Avoid copying untransformed glyphs. 15994 15995 Skip the memory duplication of the incoming glyphs if we do not need 15996 to transform them into the backend coordinate system. 15997 15998 As a consequence we need to constify the glyphs passed to the backend 15999 functions. 16000 16001 src/cairo-analysis-surface.c | 2 +- 16002 src/cairo-directfb-surface.c | 2 +- 16003 src/cairo-glitz-surface.c | 2 +- 16004 src/cairo-gstate.c | 41 +++++++++++++++++++++++++++--------- 16005 src/cairo-meta-surface.c | 2 +- 16006 src/cairo-paginated-surface.c | 2 +- 16007 src/cairo-pdf-surface.c | 2 +- 16008 src/cairo-ps-surface.c | 2 +- 16009 src/cairo-quartz-surface.c | 2 +- 16010 src/cairo-scaled-font.c | 2 +- 16011 src/cairo-surface-fallback-private.h | 2 +- 16012 src/cairo-surface-fallback.c | 4 ++-- 16013 src/cairo-surface.c | 4 ++-- 16014 src/cairo-svg-surface.c | 2 +- 16015 src/cairo-win32-font.c | 2 +- 16016 src/cairo-win32-surface.c | 2 +- 16017 src/cairo-xcb-surface.c | 20 +++++++++--------- 16018 src/cairo-xlib-surface.c | 4 ++-- 16019 src/cairoint.h | 12 +++++------ 16020 src/test-meta-surface.c | 2 +- 16021 src/test-paginated-surface.c | 2 +- 16022 21 files changed, 68 insertions(+), 47 deletions(-) 16023 16024commit 62377cbac17779fd51ec108e9704be8d3eed4935 16025Author: Behdad Esfahbod <behdad@behdad.org> 16026AuthorDate: Thu Aug 30 19:45:44 2007 -0400 16027Commit: Behdad Esfahbod <behdad@behdad.org> 16028CommitDate: Thu Aug 30 19:45:44 2007 -0400 16029 16030 [cairo-path-fixed] Remove leftover typedef keyword 16031 16032 Oops! 16033 16034 src/cairo-path-fixed-private.h | 2 +- 16035 1 file changed, 1 insertion(+), 1 deletion(-) 16036 16037commit dd406b1ffa411b100950c0156d842e3022e4029d 16038Author: Behdad Esfahbod <behdad@behdad.org> 16039AuthorDate: Thu Aug 30 18:45:26 2007 -0400 16040Commit: Behdad Esfahbod <behdad@behdad.org> 16041CommitDate: Thu Aug 30 18:45:47 2007 -0400 16042 16043 [cairo-path-fixed] typedef char cairo_path_fixed_op_t 16044 16045 So it consumes one byte only, instead of the previous enum with 16046 the __attribute__((packed)) that didn't do anything on non-gcc systems. 16047 16048 src/cairo-path-fixed-private.h | 5 +++-- 16049 1 file changed, 3 insertions(+), 2 deletions(-) 16050 16051commit e7324454a06e1f090d4e654c9cdcb774f9fb39ab 16052Author: Carl Worth <cworth@cworth.org> 16053AuthorDate: Wed Aug 29 15:26:41 2007 -0700 16054Commit: Carl Worth <cworth@cworth.org> 16055CommitDate: Wed Aug 29 15:26:41 2007 -0700 16056 16057 Disable radial-gradient and unbounded-operator tests for pdf 16058 16059 These are failing due to (already reported) poppler bugs. 16060 16061 There were also problems with the gradients in the PDF 16062 files previously, but these have recently been fixed. 16063 16064 boilerplate/cairo-boilerplate-pdf.c | 4 +++- 16065 1 file changed, 3 insertions(+), 1 deletion(-) 16066 16067commit f72078fb7660b3c8a369e7bca19628416176a55e 16068Author: Adrian Johnson <ajohnson@redneon.com> 16069AuthorDate: Wed Aug 29 20:18:09 2007 +0930 16070Commit: Carl Worth <cworth@cworth.org> 16071CommitDate: Wed Aug 29 14:58:48 2007 -0700 16072 16073 Fix unbounded operator bug in analysis surface 16074 16075 src/cairo-analysis-surface.c | 117 ++++++++++++++++++++++++------------------- 16076 1 file changed, 65 insertions(+), 52 deletions(-) 16077 16078commit 3216275fd9a9cd8d51b1c3a8671393912d50d899 16079Author: Adrian Johnson <ajohnson@redneon.com> 16080AuthorDate: Tue Aug 28 23:40:18 2007 +0930 16081Commit: Carl Worth <cworth@cworth.org> 16082CommitDate: Wed Aug 29 14:58:36 2007 -0700 16083 16084 Fix PDF gradients bug 16085 16086 The PDF surface was adding extra stops at the 0.0 and 1.0 offset when 16087 there was not already stops at these offsets. This has been replaced 16088 with code to move the coordinates of the linear gradient line in to 16089 the position of the first and last offset. 16090 16091 src/cairo-pdf-surface.c | 63 ++++++++++++++++++++++++++++++++----------------- 16092 1 file changed, 41 insertions(+), 22 deletions(-) 16093 16094commit bdc70d1fc2a31aa829571244c54f98210e97a2cf 16095Author: Vladimir Vukicevic <vladimir@pobox.com> 16096AuthorDate: Wed Aug 29 12:52:00 2007 -0700 16097Commit: Vladimir Vukicevic <vladimir@pobox.com> 16098CommitDate: Wed Aug 29 12:52:00 2007 -0700 16099 16100 [win32] call scaled_font_fini in create before returning NULL 16101 16102 src/cairo-win32-font.c | 13 +++++++++---- 16103 1 file changed, 9 insertions(+), 4 deletions(-) 16104 16105commit 114b07881e8b09f97394dd4fe8f2900ee9f4c348 16106Author: Behdad Esfahbod <behdad@behdad.org> 16107AuthorDate: Wed Aug 29 12:18:16 2007 -0400 16108Commit: Behdad Esfahbod <behdad@behdad.org> 16109CommitDate: Wed Aug 29 12:19:05 2007 -0400 16110 16111 [configure.in] Make PS backend require zlib too (#12210) 16112 16113 The PS backend uses zlib these days. Make it depend on zlib being available 16114 like PDF has been doing. 16115 16116 configure.in | 7 ++++++- 16117 1 file changed, 6 insertions(+), 1 deletion(-) 16118 16119commit 7f726e57546dba4cdd96086515a372d18c1ee2a9 16120Author: Behdad Esfahbod <behdad@behdad.org> 16121AuthorDate: Wed Aug 29 12:15:36 2007 -0400 16122Commit: Behdad Esfahbod <behdad@behdad.org> 16123CommitDate: Wed Aug 29 12:19:05 2007 -0400 16124 16125 [configure.in] Document version scheme 16126 16127 configure.in | 4 +++- 16128 1 file changed, 3 insertions(+), 1 deletion(-) 16129 16130commit 93aee43690c329f43be9e7b840851267ceb17956 16131Author: Vladimir Vukicevic <vladimir@pobox.com> 16132AuthorDate: Tue Aug 28 16:47:24 2007 -0700 16133Commit: Vladimir Vukicevic <vladimir@feisty.(none)> 16134CommitDate: Tue Aug 28 16:47:24 2007 -0700 16135 16136 Fix previous create_similar fallback patch 16137 16138 We can't use composite, as some backends don't implement it. 16139 Use paint() instead. 16140 16141 src/cairo-pattern.c | 32 -------------------------- 16142 src/cairo-surface-fallback.c | 28 ++++++++++++---------- 16143 src/cairo-surface.c | 55 +++++++++++++++++++++++--------------------- 16144 3 files changed, 45 insertions(+), 70 deletions(-) 16145 16146commit 6525d4debb6df67126b04609bb04d23d9c9bd7a6 16147Author: Vladimir Vukicevic <vladimir@pobox.com> 16148AuthorDate: Tue Aug 28 10:47:52 2007 -0700 16149Commit: Vladimir Vukicevic <vladimir@pobox.com> 16150CommitDate: Tue Aug 28 10:54:20 2007 -0700 16151 16152 [win32] call free() and not scaled_font_destroy() if scaled init fails 16153 16154 If scaled_font_destroy() is called, a deadlock can result; there's no 16155 reason to call destroy since the initialization failed (and, indeed, 16156 it might not be valid to do so anyway). 16157 16158 src/cairo-win32-font.c | 2 +- 16159 1 file changed, 1 insertion(+), 1 deletion(-) 16160 16161commit ae19b1c9911f95f64657f6ddaa0c924ca7a34b88 16162Author: Vladimir Vukicevic <vladimir@pobox.com> 16163AuthorDate: Tue Aug 28 10:40:33 2007 -0700 16164Commit: Vladimir Vukicevic <vladimir@pobox.com> 16165CommitDate: Tue Aug 28 10:54:20 2007 -0700 16166 16167 [win32] Add cairo_win32_font_face_create_for_logfontw_hfont 16168 16169 Patch from: Robert O'Callahan <roc@ocallahans.org> 16170 16171 Add cairo_win32_font_face_create_for_logfontw_hfont, allow win32 16172 scaled_fonts to rescale themselves properly to the required CTM and 16173 only use the font_face's hfont if we're sure it's appropriate. 16174 16175 src/cairo-win32-font.c | 107 +++++++++++++++++++++++++++++++++++++++---------- 16176 src/cairo-win32.h | 3 ++ 16177 2 files changed, 88 insertions(+), 22 deletions(-) 16178 16179commit 69dae7ee4ace8a92226140ce5ccb690e7f62e35c 16180Author: Vladimir Vukicevic <vladimir@pobox.com> 16181AuthorDate: Mon Aug 27 16:30:52 2007 -0700 16182Commit: Vladimir Vukicevic <vladimir@pobox.com> 16183CommitDate: Tue Aug 28 10:54:19 2007 -0700 16184 16185 Implement fallback for clone_similar 16186 16187 src/cairo-surface-fallback-private.h | 10 +++++++++ 16188 src/cairo-surface-fallback.c | 41 ++++++++++++++++++++++++++++++++++++ 16189 src/cairo-surface.c | 6 +++++- 16190 3 files changed, 56 insertions(+), 1 deletion(-) 16191 16192commit 19fa097f515e72c195d10ddd64920ec71fa903ec 16193Author: Vladimir Vukicevic <vladimir@pobox.com> 16194AuthorDate: Mon Aug 27 15:29:24 2007 -0700 16195Commit: Vladimir Vukicevic <vladimir@pobox.com> 16196CommitDate: Tue Aug 28 10:54:18 2007 -0700 16197 16198 [win32] Update win32 Makefiles 16199 16200 Happy building with msys, one location for CFLAGS/etc changes (toplevel), 16201 new pdiff makefile. 16202 16203 Makefile.win32 | 45 +++++++++++++++++++++++++++++++++++++++------ 16204 boilerplate/Makefile.win32 | 13 +++++++------ 16205 src/Makefile.win32 | 18 ++++++------------ 16206 test/Makefile.win32 | 18 +++++++++++++----- 16207 test/pdiff/Makefile.win32 | 18 ++++++++++++++++++ 16208 5 files changed, 83 insertions(+), 29 deletions(-) 16209 16210commit f4a8633fce5262c09b323eef212fd6efe57d8f10 16211Author: Vladimir Vukicevic <vladimir@pobox.com> 16212AuthorDate: Mon Aug 27 14:26:19 2007 -0700 16213Commit: Vladimir Vukicevic <vladimir@pobox.com> 16214CommitDate: Tue Aug 28 10:54:18 2007 -0700 16215 16216 [win32] check correct surface for BitBlt support in get_subimage 16217 16218 src/cairo-win32-surface.c | 5 ++++- 16219 1 file changed, 4 insertions(+), 1 deletion(-) 16220 16221commit 9aad6efd2b2ee14b0a8960a8e4de91b330ad0c4c 16222Author: Vladimir Vukicevic <vladimir@pobox.com> 16223AuthorDate: Mon Aug 27 14:17:50 2007 -0700 16224Commit: Vladimir Vukicevic <vladimir@pobox.com> 16225CommitDate: Tue Aug 28 10:54:17 2007 -0700 16226 16227 Fix image_extra arg in call to _cairo_release_source_image 16228 16229 src/cairo-surface-fallback.c | 2 +- 16230 1 file changed, 1 insertion(+), 1 deletion(-) 16231 16232commit 7ccae2de6d859fcac93cedbd3ecd1121e0d0a72b 16233Author: Behdad Esfahbod <behdad@behdad.org> 16234AuthorDate: Tue Aug 28 13:45:02 2007 -0400 16235Commit: Behdad Esfahbod <behdad@behdad.org> 16236CommitDate: Tue Aug 28 13:46:28 2007 -0400 16237 16238 [perf] Make cairo-perf-diff build cairo-perf-diff-files 16239 16240 perf/cairo-perf-diff | 10 ++++++++-- 16241 1 file changed, 8 insertions(+), 2 deletions(-) 16242 16243commit 766346aa5cffb699206cc17114221ba7a0323565 16244Author: Adrian Johnson <ajohnson@redneon.com> 16245AuthorDate: Tue Aug 28 20:35:49 2007 +0930 16246Commit: Adrian Johnson <ajohnson@redneon.com> 16247CommitDate: Tue Aug 28 20:35:49 2007 +0930 16248 16249 PDF: Remove unused code 16250 16251 src/cairo-pdf-surface-private.h | 1 - 16252 src/cairo-pdf-surface.c | 18 ------------------ 16253 2 files changed, 19 deletions(-) 16254 16255commit ad43b7fe6bba3ba597b28b6f6668ee98cdc04a88 16256Author: Adrian Johnson <ajohnson@redneon.com> 16257AuthorDate: Tue Aug 28 20:35:23 2007 +0930 16258Commit: Adrian Johnson <ajohnson@redneon.com> 16259CommitDate: Tue Aug 28 20:35:23 2007 +0930 16260 16261 PDF: Clean up comments 16262 16263 src/cairo-pdf-surface.c | 20 ++++++++++---------- 16264 1 file changed, 10 insertions(+), 10 deletions(-) 16265 16266commit a60beb2eef46b03bcb81f5204dcde49cbc090928 16267Author: Adrian Johnson <ajohnson@redneon.com> 16268AuthorDate: Tue Aug 28 20:34:55 2007 +0930 16269Commit: Adrian Johnson <ajohnson@redneon.com> 16270CommitDate: Tue Aug 28 20:34:55 2007 +0930 16271 16272 Fix PDF regression with multipage documents 16273 16274 src/cairo-pdf-surface.c | 7 +++++++ 16275 1 file changed, 7 insertions(+) 16276 16277commit 1a6b62e5995aac27527c37fd5cb6ec5e36a3f890 16278Author: Carl Worth <cworth@cworth.org> 16279AuthorDate: Mon Aug 27 14:45:51 2007 -0700 16280Commit: Carl Worth <cworth@cworth.org> 16281CommitDate: Mon Aug 27 14:45:51 2007 -0700 16282 16283 Disable 7 cairo-pdf tests due to poppler knockout-group bug 16284 16285 The following 7 tests currently fail with poppler due to: 16286 16287 Poppler does not correctly handle knockout groups 16288 https://bugs.freedesktop.org/show_bug.cgi?id=12185 16289 16290 and we've verified with acroread that the cairo-pdf output 16291 does render as intended there. The disabled tests are 16292 clip-operator, operator-clear, operator-source, over-above-source, 16293 over-around-source, over-below-source, and over-between-source. 16294 16295 boilerplate/cairo-boilerplate-pdf.c | 25 ++++++++++++++++++------- 16296 1 file changed, 18 insertions(+), 7 deletions(-) 16297 16298commit 1cdd11873b18ec55521ffd744ad12c619cf9b227 16299Author: Adrian Johnson <ajohnson@redneon.com> 16300AuthorDate: Sat Aug 25 06:44:08 2007 +0930 16301Commit: Carl Worth <cworth@cworth.org> 16302CommitDate: Mon Aug 27 14:21:36 2007 -0700 16303 16304 Add finer-grained fallback support to the PDF surface 16305 16306 The stream handling has been changed to support writing the content to 16307 one or more group objects. Each page has a top level knockout 16308 group. The first operation in the knockout group paints another group 16309 containing the content. Fallback images are painted from the knockout 16310 group. This ensures that fallback images do not composite with any 16311 content under the image. 16312 16313 src/cairo-paginated-surface.c | 6 +- 16314 src/cairo-pdf-surface-private.h | 55 +- 16315 src/cairo-pdf-surface.c | 1402 ++++++++++++++++++++++++++------------- 16316 3 files changed, 980 insertions(+), 483 deletions(-) 16317 16318commit 1e8446609b01a3a60c3cc5b69d95d26cc9df460b 16319Author: Carl Worth <cworth@cworth.org> 16320AuthorDate: Mon Aug 27 14:02:55 2007 -0700 16321Commit: Carl Worth <cworth@cworth.org> 16322CommitDate: Mon Aug 27 14:02:55 2007 -0700 16323 16324 Add explanation of pdf_ignored_tests with links to upstream poppler bug reports 16325 16326 boilerplate/cairo-boilerplate-pdf.c | 29 +++++++++++++++++++++++++++++ 16327 1 file changed, 29 insertions(+) 16328 16329commit 463493af73a644c7031df0e396c722cf2cb227b1 16330Author: Carl Worth <cworth@cworth.org> 16331AuthorDate: Mon Aug 27 10:39:14 2007 -0700 16332Commit: Carl Worth <cworth@cworth.org> 16333CommitDate: Mon Aug 27 10:40:06 2007 -0700 16334 16335 Remove svg2pdf and pdf2svg programs from test directory 16336 16337 These are useful programs, but they don't belong in test/. 16338 They are never used in the test suite at all. Instead, these 16339 should exist in some demo package, or as applications in their 16340 own right. 16341 16342 (The motivation for the removal is that someone just encountered 16343 a build error with one of these. And I'm not interested in debugging 16344 build errors for unused components.) 16345 16346 test/.gitignore | 1 - 16347 test/Makefile.am | 12 ------- 16348 test/pdf2svg.c | 101 ------------------------------------------------------- 16349 test/svg2pdf.c | 85 ---------------------------------------------- 16350 4 files changed, 199 deletions(-) 16351 16352commit 495c9d19bf27150783b563ed8a7a9b2e6e8c2115 16353Author: Carl Worth <cworth@cworth.org> 16354AuthorDate: Sat Aug 25 23:39:28 2007 -0700 16355Commit: Carl Worth <cworth@cworth.org> 16356CommitDate: Sat Aug 25 23:39:28 2007 -0700 16357 16358 One more PS-specific reference image (for over-between-source) 16359 16360 A pixman bug had kept this from being correct earlier. It 16361 works now as long as pixman includes the following fix: 16362 16363 8ff7213f39edc1b2b8b60d6b0cc5d5f14ca1928d 16364 rasterize traps that extend outside of the image bounds correctly 16365 16366 test/over-between-source-ps-argb32-ref.png | Bin 0 -> 678 bytes 16367 1 file changed, 0 insertions(+), 0 deletions(-) 16368 16369commit a3c3fe2296a7e8f1fdffc9f922fb647237504818 16370Author: Carl Worth <cworth@cworth.org> 16371AuthorDate: Sat Aug 25 19:23:13 2007 -0700 16372Commit: Carl Worth <cworth@cworth.org> 16373CommitDate: Sat Aug 25 19:24:07 2007 -0700 16374 16375 Modify ps-specific reference images for ft-text-vertical tests 16376 16377 I've been seeing failures with the PS backend for these tests 16378 for a while. This is in spite of the face that we've had a PS- 16379 specific reference image for each of these tests. I'm not sure 16380 what the difference is between my current system and the 16381 system used to generate the original ps-specific reference 16382 images. 16383 16384 One thing we definitely need to do is to bundle fonts with the 16385 test suite to avoid problems like this. Another is to start 16386 documenting the systems used to generate reference images. 16387 I get very confused with ghostscript versioning, but I can 16388 at least say that "gs --version" reports 8.15.3 here, (though 16389 the package appears to have an 8.56 version). 16390 16391 test/ft-text-vertical-layout-type1-ps-argb32-ref.png | Bin 1877 -> 1879 bytes 16392 test/ft-text-vertical-layout-type3-ps-argb32-ref.png | Bin 1879 -> 1882 bytes 16393 2 files changed, 0 insertions(+), 0 deletions(-) 16394 16395commit 71cc245d5a99eb6593e104b5e6727a7db13a4503 16396Author: Carl Worth <cworth@cworth.org> 16397AuthorDate: Sat Aug 25 19:18:44 2007 -0700 16398Commit: Carl Worth <cworth@cworth.org> 16399CommitDate: Sat Aug 25 19:24:07 2007 -0700 16400 16401 Add PS-specific reference images for 4 tests 16402 16403 The following 4 tests recently started drawing with native operations 16404 in the place of image fallbacks, so we need ps-specific reference images 16405 to account for minor rasterization differences: over-above-source, 16406 over-around-source, over-below-source, and trap-clip. 16407 16408 test/over-above-source-ps-argb32-ref.png | Bin 0 -> 636 bytes 16409 test/over-around-source-ps-argb32-ref.png | Bin 0 -> 637 bytes 16410 test/over-below-source-ps-argb32-ref.png | Bin 0 -> 503 bytes 16411 test/trap-clip-ps-argb32-ref.png | Bin 0 -> 5810 bytes 16412 4 files changed, 0 insertions(+), 0 deletions(-) 16413 16414commit ae185f803a95248bcb6a8232cabedbc992b66502 16415Author: Carl Worth <cworth@cworth.org> 16416AuthorDate: Sat Aug 25 18:57:46 2007 -0700 16417Commit: Carl Worth <cworth@cworth.org> 16418CommitDate: Sat Aug 25 19:24:07 2007 -0700 16419 16420 Add four new test to exercise interactions of native and fallback objects 16421 16422 The new tests are: over-above-source, over-around-source, over-below-source, 16423 and over-between-source 16424 16425 test/.gitignore | 4 ++ 16426 test/Makefile.am | 4 ++ 16427 test/over-above-source-ref.png | Bin 0 -> 538 bytes 16428 test/over-above-source-rgb24-ref.png | Bin 0 -> 461 bytes 16429 test/over-above-source.c | 80 +++++++++++++++++++++++++++++ 16430 test/over-around-source-ref.png | Bin 0 -> 614 bytes 16431 test/over-around-source-rgb24-ref.png | Bin 0 -> 503 bytes 16432 test/over-around-source.c | 91 +++++++++++++++++++++++++++++++++ 16433 test/over-below-source-ref.png | Bin 0 -> 434 bytes 16434 test/over-below-source-rgb24-ref.png | Bin 0 -> 392 bytes 16435 test/over-below-source.c | 80 +++++++++++++++++++++++++++++ 16436 test/over-between-source-ref.png | Bin 0 -> 575 bytes 16437 test/over-between-source-rgb24-ref.png | Bin 0 -> 473 bytes 16438 test/over-between-source.c | 91 +++++++++++++++++++++++++++++++++ 16439 14 files changed, 350 insertions(+) 16440 16441commit 5929a1defbc9816a6faa6dca94ae6dc3a2dbf3df 16442Author: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 16443AuthorDate: Sat Aug 25 21:28:33 2007 +0200 16444Commit: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 16445CommitDate: Sat Aug 25 21:28:33 2007 +0200 16446 16447 [SVG] Suppress code duplication by using _cairo_svg_surface_emit_stroke_style 16448 from _cairo_svg_surface_stroke. 16449 16450 src/cairo-svg-surface.c | 65 +++---------------------------------------------- 16451 1 file changed, 3 insertions(+), 62 deletions(-) 16452 16453commit 726ed304018915815d232822cd9efb83ee1339bc 16454Author: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 16455AuthorDate: Sun Jul 29 16:46:21 2007 +0200 16456Commit: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 16457CommitDate: Sat Aug 25 20:50:36 2007 +0200 16458 16459 [SVG] Don't emit transform property when matrix is identity. 16460 16461 src/cairo-svg-surface.c | 44 +++++++++++++++++++++++++------------------- 16462 1 file changed, 25 insertions(+), 19 deletions(-) 16463 16464commit 89881187f22b40b4afd15eed0b2c19edcba2ca09 16465Author: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 16466AuthorDate: Sun Jul 29 13:33:50 2007 +0200 16467Commit: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 16468CommitDate: Sat Aug 25 20:50:20 2007 +0200 16469 16470 [SVG] Implement fill_stroke method. 16471 16472 src/cairo-svg-surface.c | 132 +++++++++++++++++++++++++++++++++++++++++++++--- 16473 1 file changed, 124 insertions(+), 8 deletions(-) 16474 16475commit ac51fff0db73c5917a38af3f610d4751b8fec626 16476Author: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 16477AuthorDate: Sat Aug 25 20:49:50 2007 +0200 16478Commit: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 16479CommitDate: Sat Aug 25 20:49:50 2007 +0200 16480 16481 Add a new fill_stroke surface backend method. 16482 16483 This method is for use in vector backends, where fill immediatly followed by 16484 stroke command with the same path can be emited in the same backend command. 16485 This commit also factorize the detection of such cases in the meta surface 16486 backend and automatically call the fill_stroke method on replay. 16487 16488 src/cairo-meta-surface.c | 54 ++++++++++++++++++++++++++++++++++++++------ 16489 src/cairo-path-fixed.c | 27 ++++++++++++++++++++++ 16490 src/cairo-surface.c | 59 ++++++++++++++++++++++++++++++++++++++++++++++++ 16491 src/cairoint.h | 36 +++++++++++++++++++++++++++++ 16492 4 files changed, 169 insertions(+), 7 deletions(-) 16493 16494commit 43d35e01106659ac689846a8d5875d235b0d3c9f 16495Author: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 16496AuthorDate: Sat Jul 28 17:37:24 2007 +0200 16497Commit: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 16498CommitDate: Sat Aug 25 20:45:16 2007 +0200 16499 16500 [SVG] fix modeline for vim. 16501 16502 src/cairo-svg-surface.c | 2 +- 16503 1 file changed, 1 insertion(+), 1 deletion(-) 16504 16505commit 3ceaa6e74e4bd3f5935016c3639411b26d7f576f 16506Merge: e3b5a6502 24075f1bd 16507Author: Carl Worth <cworth@cworth.org> 16508AuthorDate: Fri Aug 24 08:03:44 2007 -0700 16509Commit: Carl Worth <cworth@cworth.org> 16510CommitDate: Fri Aug 24 08:03:44 2007 -0700 16511 16512 Merge branch 'cairo-origin' into cairo 16513 16514commit e3b5a650213b98c3514a850cdb86f1178fe06833 16515Author: Carl Worth <cworth@cworth.org> 16516AuthorDate: Fri Aug 24 08:03:03 2007 -0700 16517Commit: Carl Worth <cworth@cworth.org> 16518CommitDate: Fri Aug 24 08:03:03 2007 -0700 16519 16520 Remove build-breaking debugging helper. 16521 16522 Sorry! Totally my fault on this one. 16523 16524 src/cairoint.h | 2 -- 16525 1 file changed, 2 deletions(-) 16526 16527commit 24075f1bddbda1d90dfd6f041b8d6bdaf9c786dc 16528Author: Chris Wilson <chris@chris-wilson.co.uk> 16529AuthorDate: Fri Aug 24 14:16:43 2007 +0100 16530Commit: Chris Wilson <chris@chris-wilson.co.uk> 16531CommitDate: Fri Aug 24 14:30:19 2007 +0100 16532 16533 [cairo-perf] Blacklist xlib-fallback. 16534 16535 Do not try and create non-Render xlib surfaces as they explicitly do 16536 not support performance testing. 16537 16538 perf/cairo-perf.c | 8 ++++++++ 16539 1 file changed, 8 insertions(+) 16540 16541commit 8894894d9d34d169efa39d6d86ebefcb2ba69fe1 16542Author: Chris Wilson <chris@chris-wilson.co.uk> 16543AuthorDate: Fri Aug 24 13:40:26 2007 +0100 16544Commit: Chris Wilson <chris@chris-wilson.co.uk> 16545CommitDate: Fri Aug 24 14:14:10 2007 +0100 16546 16547 [cairo-boilerplate-xlib] Check that the surface will fit in the screen. 16548 16549 Whilst testing the fallback surface, the resultant image was being 16550 clipped to the screen size. Be conservative and refuse to create 16551 windows (for CAIRO_CONTENT_COLOR surfaces) that are larger than the 16552 screen. 16553 16554 boilerplate/cairo-boilerplate-xlib.c | 25 +++++++++++++++++++++++++ 16555 1 file changed, 25 insertions(+) 16556 16557commit a29544a0b6f150384fd652aad950d1cae9809c42 16558Author: Chris Wilson <chris@chris-wilson.co.uk> 16559AuthorDate: Fri Aug 24 12:24:20 2007 +0100 16560Commit: Chris Wilson <chris@chris-wilson.co.uk> 16561CommitDate: Fri Aug 24 12:27:15 2007 +0100 16562 16563 [cairo-boilerplate-xlib] Clear Render data for the non-Render fallback. 16564 16565 As well as marking the XRender extension unavailable in 16566 _cairo_boiler_player_xlib_disable_render(), we need to clear any 16567 XRender derived information stored during the surface creation. 16568 16569 boilerplate/cairo-boilerplate-xlib.c | 5 +++++ 16570 1 file changed, 5 insertions(+) 16571 16572commit 177a3b8a32f13ce92d45899367fb7758600f7b93 16573Author: Carl Worth <cworth@cworth.org> 16574AuthorDate: Thu Aug 23 16:13:04 2007 -0700 16575Commit: Carl Worth <cworth@cworth.org> 16576CommitDate: Thu Aug 23 16:13:04 2007 -0700 16577 16578 Remove include of cairoint.h from *-private.h header files. 16579 16580 These were recently added, (as part of sparse integration?), but they 16581 break boilerplate which reaches into at least cairo-types-private.h 16582 and cairo-scaled-font-private.h. But boilerplate cannot see cairoint.h 16583 or else it gets the internal sybol renaming, (with the INT_ prefix), 16584 and then all the test suite tests refuse to link. 16585 16586 If this change reverts some recently-added functionality, (or 16587 cleanliness), then we'll just need to find some other way to add that 16588 back again without the breakage. 16589 16590 src/cairo-cache-private.h | 1 - 16591 src/cairo-clip-private.h | 1 - 16592 src/cairo-fixed-private.h | 1 - 16593 src/cairo-ft-private.h | 1 - 16594 src/cairo-gstate-private.h | 1 - 16595 src/cairo-hash-private.h | 1 - 16596 src/cairo-malloc-private.h | 1 - 16597 src/cairo-mutex-private.h | 4 +++- 16598 src/cairo-mutex-type-private.h | 4 +++- 16599 src/cairo-os2-private.h | 3 +-- 16600 src/cairo-output-stream-private.h | 1 - 16601 src/cairo-paginated-surface-private.h | 2 +- 16602 src/cairo-path-fixed-private.h | 2 -- 16603 src/cairo-pdf-surface-private.h | 2 -- 16604 src/cairo-private.h | 1 - 16605 src/cairo-ps-surface-private.h | 2 -- 16606 src/cairo-region-private.h | 2 -- 16607 src/cairo-scaled-font-private.h | 2 +- 16608 src/cairo-surface-private.h | 2 +- 16609 src/cairo-svg-surface-private.h | 2 -- 16610 src/cairo-type1-private.h | 2 -- 16611 src/cairo-wideint-private.h | 2 -- 16612 src/cairo-xlib-surface-private.h | 2 -- 16613 src/cairoint.h | 2 ++ 16614 24 files changed, 12 insertions(+), 32 deletions(-) 16615 16616commit fa41ebfb7c074a6ffa6a8fe7c43207e594c6534c 16617Author: Behdad Esfahbod <behdad@behdad.org> 16618AuthorDate: Thu Aug 23 13:55:19 2007 -0400 16619Commit: Behdad Esfahbod <behdad@behdad.org> 16620CommitDate: Thu Aug 23 14:00:12 2007 -0400 16621 16622 Fix header inclusion order 16623 16624 Enough for now, until I figure out the right way to break cairoint.h. 16625 16626 src/cairo-types-private.h | 105 +++++++++++++++++++++++++++------------------- 16627 src/cairoint.h | 23 +--------- 16628 2 files changed, 64 insertions(+), 64 deletions(-) 16629 16630commit d66f1ee82a10de325ee4e7579bbbaa1d301292e4 16631Author: Behdad Esfahbod <behdad@behdad.org> 16632AuthorDate: Thu Aug 23 13:54:37 2007 -0400 16633Commit: Behdad Esfahbod <behdad@behdad.org> 16634CommitDate: Thu Aug 23 14:00:12 2007 -0400 16635 16636 [boilerplate] Build libcairoboilerplate.la in make check and make test 16637 16638 boilerplate/Makefile.am | 2 ++ 16639 boilerplate/cairo-boilerplate.c | 15 --------------- 16640 2 files changed, 2 insertions(+), 15 deletions(-) 16641 16642commit 5594f8b0356fc209749d01e2043559fccd3966d0 16643Author: Behdad Esfahbod <behdad@behdad.org> 16644AuthorDate: Thu Aug 23 00:38:00 2007 -0400 16645Commit: Behdad Esfahbod <behdad@behdad.org> 16646CommitDate: Thu Aug 23 14:00:12 2007 -0400 16647 16648 [Makefile.am] Run sparse and splint once per source file 16649 16650 Also skip .h files for splint as it causes lots of unused-function warnings. 16651 16652 src/Makefile.am | 13 +++++++++++-- 16653 1 file changed, 11 insertions(+), 2 deletions(-) 16654 16655commit 503ab85e44bfa02ef8391f7849826cbe07ff15d2 16656Author: Chris Wilson <chris@chris-wilson.co.uk> 16657AuthorDate: Thu Aug 23 15:01:02 2007 +0100 16658Commit: Chris Wilson <chris@chris-wilson.co.uk> 16659CommitDate: Thu Aug 23 15:01:02 2007 +0100 16660 16661 Fix inadvertent executable mode flip. 16662 16663 Clear the executable bit for cairo-scaled-font.c 16664 16665 src/cairo-scaled-font.c | 0 16666 1 file changed, 0 insertions(+), 0 deletions(-) 16667 16668commit 735757a17a7c72f8598c8958b600daad941a0431 16669Author: Behdad Esfahbod <behdad@behdad.org> 16670AuthorDate: Wed Aug 22 02:58:37 2007 -0400 16671Commit: Behdad Esfahbod <behdad@behdad.org> 16672CommitDate: Wed Aug 22 02:58:37 2007 -0400 16673 16674 [Makefile.am] Add target sparse to run sparse static source code analyzer 16675 16676 There are still some bits not quite working. 16677 16678 src/Makefile.am | 23 ++++++++++++++++++----- 16679 src/cairo-cache-private.h | 1 + 16680 src/cairo-clip-private.h | 1 + 16681 src/cairo-fixed-private.h | 1 + 16682 src/cairo-ft-private.h | 1 + 16683 src/cairo-gstate-private.h | 1 + 16684 src/cairo-hash-private.h | 1 + 16685 src/cairo-malloc-private.h | 1 + 16686 src/cairo-mutex-private.h | 4 +--- 16687 src/cairo-mutex-type-private.h | 4 +--- 16688 src/cairo-os2-private.h | 3 ++- 16689 src/cairo-output-stream-private.h | 1 + 16690 src/cairo-paginated-surface-private.h | 2 +- 16691 src/cairo-path-fixed-private.h | 2 ++ 16692 src/cairo-pdf-surface-private.h | 2 ++ 16693 src/cairo-private.h | 1 + 16694 src/cairo-ps-surface-private.h | 2 ++ 16695 src/cairo-quartz-private.h | 2 +- 16696 src/cairo-region-private.h | 2 ++ 16697 src/cairo-scaled-font-private.h | 2 +- 16698 src/cairo-surface-private.h | 2 +- 16699 src/cairo-svg-surface-private.h | 2 ++ 16700 src/cairo-type1-private.h | 2 ++ 16701 src/cairo-types-private.h | 2 ++ 16702 src/cairo-wideint-private.h | 2 ++ 16703 src/cairo-xlib-surface-private.h | 2 ++ 16704 src/cairoint.h | 12 ++++++------ 16705 27 files changed, 59 insertions(+), 22 deletions(-) 16706 16707commit bfdc3b6642a36a7728f82ae87de83244d86ba29e 16708Author: Behdad Esfahbod <behdad@behdad.org> 16709AuthorDate: Wed Aug 22 01:16:50 2007 -0400 16710Commit: Behdad Esfahbod <behdad@behdad.org> 16711CommitDate: Wed Aug 22 01:16:50 2007 -0400 16712 16713 [Makefile.am] Move -DHAVE_CONFIG_H to the right place 16714 16715 src/Makefile.am | 2 +- 16716 1 file changed, 1 insertion(+), 1 deletion(-) 16717 16718commit af6a123e95b359234d70f7a766457ff3a427c3cc 16719Author: Behdad Esfahbod <behdad@behdad.org> 16720AuthorDate: Wed Aug 22 01:09:21 2007 -0400 16721Commit: Behdad Esfahbod <behdad@behdad.org> 16722CommitDate: Wed Aug 22 01:09:21 2007 -0400 16723 16724 [Makefile.am] Inhibit unrecognized options to splint 16725 16726 src/Makefile.am | 2 +- 16727 1 file changed, 1 insertion(+), 1 deletion(-) 16728 16729commit e9d709b5caf4bc3c48259d6b40e6b95f730aa348 16730Author: Behdad Esfahbod <behdad@behdad.org> 16731AuthorDate: Wed Aug 22 01:07:59 2007 -0400 16732Commit: Behdad Esfahbod <behdad@behdad.org> 16733CommitDate: Wed Aug 22 01:07:59 2007 -0400 16734 16735 [cairo-image-surface] Fix comment syntax 16736 Found by splint. 16737 16738 src/cairo-image-surface.c | 6 +++--- 16739 1 file changed, 3 insertions(+), 3 deletions(-) 16740 16741commit ef878345c87c57a79eda079fa5e765aba5ddf163 16742Author: Behdad Esfahbod <behdad@behdad.org> 16743AuthorDate: Wed Aug 22 01:07:38 2007 -0400 16744Commit: Behdad Esfahbod <behdad@behdad.org> 16745CommitDate: Wed Aug 22 01:07:38 2007 -0400 16746 16747 [Makefile.am] Add target splint to run splint static source code analyzer 16748 16749 src/Makefile.am | 3 +++ 16750 1 file changed, 3 insertions(+) 16751 16752commit f015091bb5361552eebfafc007bcf9e77ba5bfbf 16753Author: Behdad Esfahbod <behdad@behdad.org> 16754AuthorDate: Wed Aug 22 01:03:50 2007 -0400 16755Commit: Behdad Esfahbod <behdad@behdad.org> 16756CommitDate: Wed Aug 22 01:03:50 2007 -0400 16757 16758 [Makefile.am] Use libcairo_la_CFLAGS instead of INCLUDES 16759 for clarity. 16760 16761 src/Makefile.am | 2 +- 16762 1 file changed, 1 insertion(+), 1 deletion(-) 16763 16764commit 3e5859c58f8749eaae16149577d52399a2fcf952 16765Author: Behdad Esfahbod <behdad@behdad.org> 16766AuthorDate: Tue Aug 21 23:02:03 2007 -0400 16767Commit: Behdad Esfahbod <behdad@behdad.org> 16768CommitDate: Tue Aug 21 23:02:03 2007 -0400 16769 16770 [ROADMAP] Mark fine-grained fallbacks done 16771 16772 ROADMAP | 7 +++++++ 16773 TODO | 7 ------- 16774 2 files changed, 7 insertions(+), 7 deletions(-) 16775 16776commit 333b96f0e0a7d775b96014b91c6887cdcda3e93a 16777Author: Carl Worth <cworth@cworth.org> 16778AuthorDate: Fri Aug 17 10:41:03 2007 -0700 16779Commit: Carl Worth <cworth@cworth.org> 16780CommitDate: Tue Aug 21 17:10:49 2007 -0700 16781 16782 Add support for image fallbacks for X servers with 555 visuals 16783 16784 This fixes bugzilla #9993: 16785 16786 Cairo fails with 555 X server visual 16787 https://bugs.freedesktop.org/show_bug.cgi?id=9993 16788 16789 ROADMAP | 2 +- 16790 src/cairo-image-surface.c | 14 ++++++++++++++ 16791 2 files changed, 15 insertions(+), 1 deletion(-) 16792 16793commit f00fb10f87d1341b91f025bb068d935355c68c70 16794Author: Carl Worth <cworth@cworth.org> 16795AuthorDate: Fri Aug 17 10:36:14 2007 -0700 16796Commit: Carl Worth <cworth@cworth.org> 16797CommitDate: Tue Aug 21 17:10:49 2007 -0700 16798 16799 Add support for image fallbacks for X servers with 565 visuals 16800 16801 This fixes bugzilla #10461: 16802 16803 Cairo doesn't support 565 xlib visual 16804 https://bugs.freedesktop.org/show_bug.cgi?id=1046 16805 16806 ROADMAP | 2 +- 16807 src/cairo-image-surface.c | 16 ++++++++++++++++ 16808 2 files changed, 17 insertions(+), 1 deletion(-) 16809 16810commit ddb78df4c92fc8e51ca18202b59bcef7d1e1d66d 16811Author: Carl Worth <cworth@cworth.org> 16812AuthorDate: Fri Aug 17 10:33:25 2007 -0700 16813Commit: Carl Worth <cworth@cworth.org> 16814CommitDate: Tue Aug 21 17:10:49 2007 -0700 16815 16816 Restore the error message for unsupported X server visuals 16817 16818 Apparently, our much-beloved error message, (just look at how many people 16819 love to quote it in bugzilla entries), was removed during the switch to 16820 the new pixman. It was replaced with an obscure failure of a nil surface 16821 being returned, (leading to obscure failures or false "out of memory" 16822 errors). 16823 16824 So we're putting this back now, (even though we _really_ want to ensure 16825 that this message never gets printed in practice). 16826 16827 src/cairo-image-surface.c | 12 ++++++++++++ 16828 1 file changed, 12 insertions(+) 16829 16830commit 72fab3675c46a773dac315fffff72cd7f887f79f 16831Author: Carl Worth <cworth@cworth.org> 16832AuthorDate: Fri Aug 17 10:29:37 2007 -0700 16833Commit: Carl Worth <cworth@cworth.org> 16834CommitDate: Tue Aug 21 17:10:49 2007 -0700 16835 16836 Use a pixman_format_code to describe the image surface used for xlib fallbacks 16837 16838 Previously, the code was just using cairo_format_t which is much more limited 16839 than the formats supported by pixman, (so many "odd" X server visuals would 16840 just fall over). 16841 16842 src/cairo-image-surface.c | 87 ++++++++++++++++++++++------------ 16843 src/cairo-xlib-surface.c | 117 +++++----------------------------------------- 16844 src/cairoint.h | 19 +++++++- 16845 3 files changed, 87 insertions(+), 136 deletions(-) 16846 16847commit a9662d0aaed8685292ffe13c458182046a644fa7 16848Author: Carl Worth <cworth@cworth.org> 16849AuthorDate: Fri Aug 17 08:15:50 2007 -0700 16850Commit: Carl Worth <cworth@cworth.org> 16851CommitDate: Tue Aug 21 17:10:49 2007 -0700 16852 16853 Eliminate fragile cairo_internal_format_t 16854 16855 Instead we take advantage of the pixman_format_code_t 16856 that now exists in the public interface of the new, external 16857 pixman library. 16858 16859 src/cairo-image-surface.c | 152 +++++++++++++++++++++++++++++++++------------- 16860 src/cairo-pattern.c | 2 +- 16861 src/cairoint.h | 44 +------------- 16862 3 files changed, 113 insertions(+), 85 deletions(-) 16863 16864commit 9f4e6436496fe561aa124bb2b89e1c6711684d98 16865Author: Carl Worth <cworth@cworth.org> 16866AuthorDate: Tue Aug 21 10:03:00 2007 -0700 16867Commit: Carl Worth <cworth@cworth.org> 16868CommitDate: Tue Aug 21 16:46:58 2007 -0700 16869 16870 Ensure the Render extension is initialized before calling XESetCloseDisplay 16871 16872 This avoids a potential crash from the Render extension being cleaned 16873 up during XCloseDisplay before the cairo CloseDisplay hook goes on to 16874 call into XRenderFreePicture. 16875 16876 src/cairo-xlib-display.c | 9 +++++++++ 16877 1 file changed, 9 insertions(+) 16878 16879commit d05593a5fb9fef586171cb9973a9942a105d50d7 16880Author: Carl Worth <cworth@cworth.org> 16881AuthorDate: Mon Aug 20 14:50:02 2007 -0700 16882Commit: Carl Worth <cworth@cworth.org> 16883CommitDate: Tue Aug 21 16:46:40 2007 -0700 16884 16885 Add a new xlib-fallback target to test xlib using image fallbacks instead of the Render extension 16886 16887 boilerplate/cairo-boilerplate-xlib-private.h | 8 ++++ 16888 boilerplate/cairo-boilerplate-xlib.c | 72 ++++++++++++++++++++++++++++ 16889 boilerplate/cairo-boilerplate.c | 9 ++++ 16890 test/fill-rule.c | 2 +- 16891 4 files changed, 90 insertions(+), 1 deletion(-) 16892 16893commit 590717f03b4a396600734c4dac1dd0a9f140283c 16894Author: Adrian Johnson <ajohnson@redneon.com> 16895AuthorDate: Wed Aug 22 07:58:14 2007 +0930 16896Commit: Adrian Johnson <ajohnson@redneon.com> 16897CommitDate: Wed Aug 22 07:58:14 2007 +0930 16898 16899 PS: Remove debug info from PS output 16900 16901 The debug code is now conditionally compiled. 16902 16903 src/cairo-ps-surface.c | 22 ++++++++++++++++++++++ 16904 1 file changed, 22 insertions(+) 16905 16906commit e66b2b68ab456d779524d9b4ab34acf5d38362b5 16907Author: Carl Worth <cworth@cworth.org> 16908AuthorDate: Tue Aug 21 14:52:54 2007 -0700 16909Commit: Carl Worth <cworth@cworth.org> 16910CommitDate: Tue Aug 21 14:52:54 2007 -0700 16911 16912 Use 8-bit math to flatten color when emitting a solid pattern to PostScript 16913 16914 This isn't necessarily more correct than the old code using the doubles, 16915 but it does result in bit-for-bit color equivalence when comparing the 16916 results against the image backend. So that's both good consistency, and 16917 more ease is using the test suite to verify things. 16918 16919 src/cairo-ps-surface.c | 26 +++++++++++++++----------- 16920 1 file changed, 15 insertions(+), 11 deletions(-) 16921 16922commit bf92255edd20595a6eb220c6ee9d6aa40b244eef 16923Author: Adrian Johnson <ajohnson@redneon.com> 16924AuthorDate: Tue Aug 21 22:27:57 2007 +0930 16925Commit: Adrian Johnson <ajohnson@redneon.com> 16926CommitDate: Tue Aug 21 22:27:57 2007 +0930 16927 16928 PS: Add finer-grained image fallback support 16929 16930 The analysis surface now keeps track of two regions: supported 16931 operations, and unsupported operations. If the target surface returns 16932 CAIRO_INT_STATUS_FLATTEN_TRANSPARENCY, the analysis surface will check 16933 if any previous operation intersects with this operation. If there is 16934 nothing previously drawn under the operation, the status is changed to 16935 supported. 16936 16937 The meta surface has two new functions: 16938 _cairo_meta_surface_replay_region() 16939 _cairo_meta_surface_replay_and_create_regions() 16940 16941 During the analysis stage, the paginated surface replays the meta 16942 surface using _cairo_meta_surface_replay_and_create_regions(). The 16943 return status from each analyzed operation is saved in the meta 16944 surface. The _cairo_meta_surface_replay_region() function allows only 16945 operations from either the supported or unsupported region to be 16946 replayed. This allows the paginated surface to replay only the 16947 supported operations before emitting a fallback image for each 16948 rectangle in the unsupported region. 16949 16950 src/cairo-analysis-surface-private.h | 3 + 16951 src/cairo-analysis-surface.c | 358 ++++++++++++++++++++++++++++++----- 16952 src/cairo-meta-surface-private.h | 34 +++- 16953 src/cairo-meta-surface.c | 78 ++++++-- 16954 src/cairo-paginated-surface.c | 131 ++++++++++--- 16955 src/cairo-ps-surface.c | 93 +++++---- 16956 src/cairo-region-private.h | 4 + 16957 src/cairo-region.c | 13 ++ 16958 src/cairoint.h | 4 +- 16959 9 files changed, 585 insertions(+), 133 deletions(-) 16960 16961commit bf4bdbb6076dbe3b74534bc4308dbc9213bf628d 16962Author: Behdad Esfahbod <behdad@behdad.org> 16963AuthorDate: Mon Aug 20 20:29:51 2007 -0400 16964Commit: Behdad Esfahbod <behdad@behdad.org> 16965CommitDate: Mon Aug 20 21:01:55 2007 -0400 16966 16967 [cairo-scaled-font] Document how glyph surfaces use device offsets 16968 16969 src/cairo-scaled-font.c | 106 ++++++++++++++++++++++++++++++++++++++++++++++++ 16970 1 file changed, 106 insertions(+) 16971 16972commit 31f5aafa36015ee6ea8ff769c2e1d5841f62642f 16973Author: Behdad Esfahbod <behdad@behdad.org> 16974AuthorDate: Mon Feb 5 20:46:48 2007 -0500 16975Commit: Behdad Esfahbod <behdad@behdad.org> 16976CommitDate: Mon Aug 20 21:01:55 2007 -0400 16977 16978 Fix device_offset misuse in all glyph surface uses 16979 16980 Seems like all over the code, we have been using negated device_offset 16981 values for glyph surfaces. Here is all the math(!): 16982 16983 A device_transform converts from device space (a conceptual space) to 16984 surface space. For simple cases of translation only, it's called a 16985 device_offset and is public API (cairo_surface_[gs]et_device_offset). 16986 A possibly better name for those functions could have been 16987 cairo_surface_[gs]et_origing. So, that's what they do: they set where 16988 the device-space origin (0,0) is in the surface. If the origin is inside 16989 the surface, device_offset values are positive. It may look like this: 16990 16991 Device space: 16992 (-x,-y) <-- negative numbers 16993 +----------------+ 16994 | . | 16995 | . | 16996 |......(0,0) <---|-- device-space origin 16997 | | 16998 | | 16999 +----------------+ 17000 (width-x,height-y) 17001 17002 Surface space: 17003 (0,0) <-- surface-space origin 17004 +---------------+ 17005 | . | 17006 | . | 17007 |......(x,y) <--|-- device_offset 17008 | | 17009 | | 17010 +---------------+ 17011 (width,height) 17012 17013 In other words: device_offset is the coordinates of the device-space 17014 origin relative to the top-left of the surface. 17015 17016 We use device offsets in a couple of places: 17017 17018 - Public API: To let toolkits like Gtk+ give user a surface that 17019 only represents part of the final destination (say, the expose 17020 area), but has the same device space as the destination. In these 17021 cases device_offset is typically negative. Example: 17022 17023 application window 17024 +---------------+ 17025 | . | 17026 | (x,y). | 17027 |......+---+ | 17028 | | | <--|-- expose area 17029 | +---+ | 17030 +---------------+ 17031 17032 In this case, the user of cairo API can set the device_space on 17033 the expose area to (-x,-y) to move the device space origin to that 17034 of the application window, such that drawing in the expose area 17035 surface and painting it in the application window has the same 17036 effect as drawing in the application window directly. Gtk+ has 17037 been using this feature. 17038 17039 - Glyph surfaces: In most font rendering systems, glyph surfaces 17040 have an origin at (0,0) and a bounding box that is typically 17041 represented as (x_bearing,y_bearing,width,height). Depending on 17042 which way y progresses in the system, y_bearing may typically be 17043 negative (for systems similar to cairo, with origin at top left), 17044 or be positive (in systems like PDF with origin at bottom left). 17045 No matter which is the case, it is important to note that 17046 (x_bearing,y_bearing) is the coordinates of top-left of the glyph 17047 relative to the glyph origin. That is, for example: 17048 17049 Scaled-glyph space: 17050 17051 (x_bearing,y_bearing) <-- negative numbers 17052 +----------------+ 17053 | . | 17054 | . | 17055 |......(0,0) <---|-- glyph origin 17056 | | 17057 | | 17058 +----------------+ 17059 (width+x_bearing,height+y_bearing) 17060 17061 Note the similarity of the origin to the device space. That is 17062 exactly how we use the device_offset to represent scaled glyphs: 17063 to use the device-space origin as the glyph origin. 17064 17065 Now compare the scaled-glyph space to device-space and surface-space 17066 and convince yourself that: 17067 17068 (x_bearing,y_bearing) = (-x,-y) = - device_offset 17069 17070 That's right. If you are not convinced yet, contrast the definition 17071 of the two: 17072 17073 "(x_bearing,y_bearing) is the coordinates of top-left of the 17074 glyph relative to the glyph origin." 17075 17076 "In other words: device_offset is the coordinates of the 17077 device-space origin relative to the top-left of the surface." 17078 17079 and note that glyph origin = device-space origin. 17080 17081 So, that was the bug. Fixing it removed lots of wonders and magic 17082 negation signs. 17083 17084 The way I discovered the bug was that in the user-font API, to make 17085 rendering the glyph from meta-surface to an image-surface work I had 17086 to do: 17087 17088 cairo_surface_set_device_offset (surface, -x_bearing, -y_bearing); 17089 _cairo_meta_surface_replay (meta_surface, surface); 17090 cairo_surface_set_device_offset (surface, x_bearing, y_bearing); 17091 17092 This suggested that the use of device_offset for glyph origin is 17093 different from its use for rendering with meta-surface. This reminded 17094 me of the large comment in the xlib backend blaming XRender for having 17095 weird glyph space, and of a similar problem I had in the PS backend 17096 for bitmap glyph positioning (see d47388ad759b0a1a0869655a87d9b5eb6ae2445d) 17097 17098 ...those are all fixed now. 17099 17100 src/cairo-atsui-font.c | 4 ++-- 17101 src/cairo-directfb-surface.c | 4 ++-- 17102 src/cairo-ft-font.c | 46 +++++++++++++++++++++++--------------------- 17103 src/cairo-glitz-surface.c | 8 ++++---- 17104 src/cairo-ps-surface.c | 12 ++++++------ 17105 src/cairo-scaled-font.c | 8 +++----- 17106 src/cairo-svg-surface.c | 2 +- 17107 src/cairo-xcb-surface.c | 40 ++------------------------------------ 17108 src/cairo-xlib-surface.c | 40 ++------------------------------------ 17109 9 files changed, 46 insertions(+), 118 deletions(-) 17110 17111commit d55da1aa621d76b1411300932be5d37883b25dfa 17112Author: Behdad Esfahbod <behdad@behdad.org> 17113AuthorDate: Wed Feb 7 00:20:29 2007 -0800 17114Commit: Behdad Esfahbod <behdad@behdad.org> 17115CommitDate: Mon Aug 20 21:01:55 2007 -0400 17116 17117 [scaled-font] Really ignore ctm translation 17118 17119 Previously we were ignoring ctm translation in scaled fonts when hashing, but 17120 still storing it into the scaled font. Now we zero the translation components 17121 when storing. 17122 17123 src/cairo-scaled-font.c | 8 +++++--- 17124 1 file changed, 5 insertions(+), 3 deletions(-) 17125 17126commit a394e5870e2c5ccedfd9d116b4a42c58b459334d 17127Author: Behdad Esfahbod <behdad@behdad.org> 17128AuthorDate: Mon Feb 5 16:53:18 2007 -0500 17129Commit: Behdad Esfahbod <behdad@behdad.org> 17130CommitDate: Mon Aug 20 21:01:55 2007 -0400 17131 17132 [cairo-image-surface] Simplify device-offset usage 17133 17134 src/cairo-image-surface.c | 10 +++++----- 17135 1 file changed, 5 insertions(+), 5 deletions(-) 17136 17137commit 61f736d0d1166b050ee948ce2738feab0327ece9 17138Author: Behdad Esfahbod <behdad@behdad.org> 17139AuthorDate: Mon Feb 5 15:51:30 2007 -0500 17140Commit: Behdad Esfahbod <behdad@behdad.org> 17141CommitDate: Mon Aug 20 21:01:55 2007 -0400 17142 17143 [cairo-paginated-surface] Add XXX mark to integer width,height arguments 17144 17145 src/cairo-paginated-surface.c | 1 + 17146 1 file changed, 1 insertion(+) 17147 17148commit f97bb5613a7fb3d92f2d730460f9c721ee13a41a 17149Author: Vladimir Vukicevic <vladimir@pobox.com> 17150AuthorDate: Mon Aug 20 17:32:05 2007 -0700 17151Commit: Vladimir Vukicevic <vladimir@binky.(none)> 17152CommitDate: Mon Aug 20 17:32:05 2007 -0700 17153 17154 Fix path_fixed_offset_and_scale to apply scale and offset in right order 17155 17156 src/cairo-path-fixed.c | 24 +++++++++--------------- 17157 1 file changed, 9 insertions(+), 15 deletions(-) 17158 17159commit 51b6cca8de3181d7b42b612ff491451c765d5811 17160Author: Chris Wilson <chris@chris-wilson.co.uk> 17161AuthorDate: Sat Aug 18 00:54:30 2007 +0100 17162Commit: Chris Wilson <chris@chris-wilson.co.uk> 17163CommitDate: Sat Aug 18 00:54:30 2007 +0100 17164 17165 [cairo-perf-diff] Remove reference to pixman. 17166 17167 Remove the use of pixman as part of the perf id as pixman is no longer 17168 an integral component of cairo. 17169 17170 perf/cairo-perf-diff | 3 +-- 17171 1 file changed, 1 insertion(+), 2 deletions(-) 17172 17173commit 39367b26120b6e1ad0f556911a49f28ef370115b 17174Author: Martin Ejdestig <marejde@gmail.com> 17175AuthorDate: Fri Aug 17 02:28:35 2007 +0200 17176Commit: Chris Wilson <chris@chris-wilson.co.uk> 17177CommitDate: Fri Aug 17 14:12:13 2007 +0100 17178 17179 Plug possible leak of pixman_traps in _cairo_image_surface_composite_trapezoids. 17180 17181 If width and height are 0 and pixman_traps is allocated on the heap, 17182 it would leak. Fix by simply checking width and height prior to 17183 allocating pixman_traps. 17184 17185 src/cairo-image-surface.c | 6 +++--- 17186 1 file changed, 3 insertions(+), 3 deletions(-) 17187 17188commit 507d7ee09951a35df8b80f0e1507ba17dbd9bfa9 17189Author: Chris Wilson <chris@chris-wilson.co.uk> 17190AuthorDate: Wed Jun 27 12:34:35 2007 +0100 17191Commit: Chris Wilson <chris@chris-wilson.co.uk> 17192CommitDate: Thu Aug 16 15:37:13 2007 +0100 17193 17194 [cairo-xlib-surface] Avoid a malloc(0). 17195 17196 Avoid a zero byte allocation (potentially returning NULL) for an array 17197 of 0 trapezoids. 17198 17199 src/cairo-xlib-surface.c | 9 +++++++-- 17200 1 file changed, 7 insertions(+), 2 deletions(-) 17201 17202commit 85d911d86c9f1dd55d79b7c429ad2b617ec345d1 17203Author: Chris Wilson <chris@chris-wilson.co.uk> 17204AuthorDate: Wed Jun 27 08:05:35 2007 +0100 17205Commit: Chris Wilson <chris@chris-wilson.co.uk> 17206CommitDate: Thu Aug 16 15:36:25 2007 +0100 17207 17208 [cairo-image-surface] Avoid malloc(0) 17209 17210 Special case width==0, height==0 to avoid allocating a 0 byte image. 17211 17212 src/cairo-image-surface.c | 3 +++ 17213 1 file changed, 3 insertions(+) 17214 17215commit 7332a5e9949ca19869b003fe5a0a777adac41307 17216Author: Chris Wilson <chris@chris-wilson.co.uk> 17217AuthorDate: Wed Jun 27 11:32:50 2007 +0100 17218Commit: Chris Wilson <chris@chris-wilson.co.uk> 17219CommitDate: Thu Aug 16 15:36:05 2007 +0100 17220 17221 [boilerplate/xmalloc] Special case malloc(0) and friends. 17222 17223 malloc(0) can return NULL so double check the requested size before 17224 exiting with an out-of-memory error. 17225 17226 boilerplate/xmalloc.c | 6 +++--- 17227 src/cairo-image-surface.c | 2 +- 17228 2 files changed, 4 insertions(+), 4 deletions(-) 17229 17230commit 56e505298c0f5de360380ca7e968baa0e60ac828 17231Author: Chris Wilson <chris@chris-wilson.co.uk> 17232AuthorDate: Wed Jun 27 23:01:44 2007 +0100 17233Commit: Chris Wilson <chris@chris-wilson.co.uk> 17234CommitDate: Thu Aug 16 15:33:54 2007 +0100 17235 17236 [cairo-truetype-subset] Avoid malloc(0). 17237 17238 Avoid attempting to allocate a zero length subset as malloc(0) may return 17239 NULL. 17240 17241 src/cairo-truetype-subset.c | 15 +++++++++------ 17242 1 file changed, 9 insertions(+), 6 deletions(-) 17243 17244commit 7bd1d5ba3d081ae188fe7f8bc346071d0b8d2278 17245Author: Chris Wilson <chris@chris-wilson.co.uk> 17246AuthorDate: Tue Jul 3 14:14:56 2007 +0100 17247Commit: Chris Wilson <chris@chris-wilson.co.uk> 17248CommitDate: Thu Aug 16 15:32:02 2007 +0100 17249 17250 [cairo-png] Protect against malloc(0). 17251 17252 Avoid calling malloc(0) for an empty image. 17253 17254 src/cairo-png.c | 21 ++++++++++++--------- 17255 1 file changed, 12 insertions(+), 9 deletions(-) 17256 17257commit 06134df0d0670a7d00d58ebd7a20ba7174f56d16 17258Author: Chris Wilson <chris@chris-wilson.co.uk> 17259AuthorDate: Wed Jul 4 19:11:29 2007 +0100 17260Commit: Chris Wilson <chris@chris-wilson.co.uk> 17261CommitDate: Thu Aug 16 15:29:47 2007 +0100 17262 17263 [cairo-pdf-surface] Check for errors during compression. 17264 17265 Check status return from zlib's compress(). 17266 17267 src/cairo-pdf-surface.c | 5 ++++- 17268 1 file changed, 4 insertions(+), 1 deletion(-) 17269 17270commit 76b871d710cd81bee5fe7c2f6175f8d678ebeea5 17271Author: Chris Wilson <chris@chris-wilson.co.uk> 17272AuthorDate: Thu Aug 16 15:29:11 2007 +0100 17273Commit: Chris Wilson <chris@chris-wilson.co.uk> 17274CommitDate: Thu Aug 16 15:29:11 2007 +0100 17275 17276 [cairo-image-surface] Remove status return for hard-coded CAIRO_STATUS_SUCCESS. 17277 17278 Remove the status return if the function can only return 17279 CAIRO_STATUS_SUCCESS, and remove the then surplus conditionals. 17280 17281 src/cairo-image-surface.c | 13 +++++-------- 17282 1 file changed, 5 insertions(+), 8 deletions(-) 17283 17284commit 4e39e30d83fc1866a44f0b746c406ee2efb3bf6a 17285Author: Chris Wilson <chris@chris-wilson.co.uk> 17286AuthorDate: Mon Jul 16 09:25:38 2007 +0100 17287Commit: Chris Wilson <chris@chris-wilson.co.uk> 17288CommitDate: Thu Aug 16 15:20:25 2007 +0100 17289 17290 [cairo-pen] Remove status from _cairo_pen_find_active_vertex_*() 17291 17292 This pair of functions unconditionally return SUCCESS, so remove the 17293 status return and supporting tests from their callers. 17294 17295 src/cairo-path-stroke.c | 24 ++++++------------------ 17296 src/cairo-pen.c | 16 +++++----------- 17297 src/cairoint.h | 4 ++-- 17298 3 files changed, 13 insertions(+), 31 deletions(-) 17299 17300commit b72b06cc222d88015ce78a5cddf061e903d032b5 17301Author: Chris Wilson <chris@chris-wilson.co.uk> 17302AuthorDate: Mon Jul 16 09:40:47 2007 +0100 17303Commit: Chris Wilson <chris@chris-wilson.co.uk> 17304CommitDate: Thu Aug 16 15:20:06 2007 +0100 17305 17306 [cairo-pen] Remove hard-coded CAIRO_STATUS_SUCCESS from _stroke_spline_half() 17307 17308 Remove the status return and update callers as 17309 _cairo_pen_stroke_spline_half() unconditionally returned SUCCESS. 17310 17311 src/cairo-pen.c | 15 ++++----------- 17312 1 file changed, 4 insertions(+), 11 deletions(-) 17313 17314commit e24969a94ac5670a13c2737db435ac7b5bebb19c 17315Author: Chris Wilson <chris@chris-wilson.co.uk> 17316AuthorDate: Mon Jul 16 09:36:54 2007 +0100 17317Commit: Chris Wilson <chris@chris-wilson.co.uk> 17318CommitDate: Thu Aug 16 15:15:54 2007 +0100 17319 17320 [cairo-pdf-surface] cairo_pattern_set_matrix guarantees invertibility. 17321 17322 Be consistent in asserting that the pattern matrix is inverted 17323 successfully and remove a couple of redundant checks. 17324 17325 src/cairo-pdf-surface.c | 8 ++++---- 17326 1 file changed, 4 insertions(+), 4 deletions(-) 17327 17328commit 50ebdda3a97334e5411749cd0c309843ba8cdf44 17329Author: Chris Wilson <chris@chris-wilson.co.uk> 17330AuthorDate: Thu Jul 19 10:26:37 2007 +0100 17331Commit: Chris Wilson <chris@chris-wilson.co.uk> 17332CommitDate: Thu Aug 16 15:12:00 2007 +0100 17333 17334 [cairo-pattern] Assert that the pattern->matrix is invertible. 17335 17336 We guarantee when setting the pattern->matrix that it is invertible, so 17337 merely assert that it is so when we attempt to use its inverse. 17338 17339 src/cairo-pattern.c | 4 ++-- 17340 1 file changed, 2 insertions(+), 2 deletions(-) 17341 17342commit 7d853bcabcc1c55b79a05280a0eb35828b93163d 17343Author: Chris Wilson <chris@chris-wilson.co.uk> 17344AuthorDate: Thu Aug 16 14:34:07 2007 +0100 17345Commit: Chris Wilson <chris@chris-wilson.co.uk> 17346CommitDate: Thu Aug 16 14:56:27 2007 +0100 17347 17348 [cairo-boilerplate-xlib] Check for NULL xrender_format before use. 17349 17350 Testing for XRender support (xrender_format != NULL) after 17351 dereferencing said format doesn't work as intended. 17352 17353 boilerplate/cairo-boilerplate-xlib.c | 16 ++++++++++++---- 17354 1 file changed, 12 insertions(+), 4 deletions(-) 17355 17356commit bc635da45a32eb9b7aff6fa5f7f560ebf99092a8 17357Author: Chris Wilson <chris@chris-wilson.co.uk> 17358AuthorDate: Thu Aug 16 12:21:49 2007 +0100 17359Commit: Chris Wilson <chris@chris-wilson.co.uk> 17360CommitDate: Thu Aug 16 12:24:34 2007 +0100 17361 17362 [cairo-ft-font] Decrement lock count on error. 17363 17364 As noted in http://bugs.freedesktop.org/show_bug.cgi?id=12026 the error 17365 path of _cairo_ft_unscaled_font_lock_face() failed to reset the 17366 unscaled->lock_count before releasing the mutex and returning NULL. 17367 17368 src/cairo-ft-font.c | 1 + 17369 1 file changed, 1 insertion(+) 17370 17371commit 8881265cca73790a49068b3bab5362cb73f8deb6 17372Author: Adrian Johnson <ajohnson@redneon.com> 17373AuthorDate: Fri Aug 10 20:10:29 2007 +0930 17374Commit: Adrian Johnson <ajohnson@redneon.com> 17375CommitDate: Fri Aug 10 20:10:29 2007 +0930 17376 17377 PDF: Fix regression in pdf_surface_set_size() 17378 17379 src/cairo-pdf-surface.c | 1 + 17380 1 file changed, 1 insertion(+) 17381 17382commit 4ca0ca153a847337452bbb237d42f6d7b0a163d0 17383Author: Søren Sandmann Pedersen <sandmann@redhat.com> 17384AuthorDate: Mon Aug 6 19:24:31 2007 -0400 17385Commit: Søren Sandmann Pedersen <sandmann@redhat.com> 17386CommitDate: Mon Aug 6 19:24:31 2007 -0400 17387 17388 Bump pixman dependency to 0.9.4 17389 17390 Also print the download location if the library wasn't found. 17391 17392 configure.in | 11 +++++++---- 17393 src/cairo-region-private.h | 2 +- 17394 src/cairoint.h | 2 +- 17395 test/buffer-diff.c | 2 +- 17396 4 files changed, 10 insertions(+), 7 deletions(-) 17397 17398commit 13cae8b5e6d3fc93c4eb1853b91ba356b572b551 17399Author: Carl Worth <cworth@cworth.org> 17400AuthorDate: Mon Aug 6 11:06:47 2007 -0700 17401Commit: Carl Worth <cworth@cworth.org> 17402CommitDate: Mon Aug 6 11:06:47 2007 -0700 17403 17404 Ensure that a copied pattern gets its own user_data array 17405 17406 This fixes the bug reported here: 17407 17408 Segfault with cairo_pattern_set_user_data 17409 https://bugs.freedesktop.org/show_bug.cgi?id=11855 17410 17411 src/cairo-pattern.c | 2 ++ 17412 1 file changed, 2 insertions(+) 17413 17414commit 027915717df6e203826d10da7bfdf8e26af13ee1 17415Author: Nis Martensen <nis.martensen@web.de> 17416AuthorDate: Wed Jul 4 07:09:00 2007 -0700 17417Commit: Carl Worth <cworth@cworth.org> 17418CommitDate: Mon Aug 6 10:38:38 2007 -0700 17419 17420 Typo fixes in README files 17421 17422 README | 4 ++-- 17423 perf/README | 6 +++--- 17424 test/README | 6 +++--- 17425 3 files changed, 8 insertions(+), 8 deletions(-) 17426 17427commit 72c1f5d802c32f97ae5c0cbf899dc3a12fc28222 17428Author: Adrian Johnson <ajohnson@redneon.com> 17429AuthorDate: Sun Aug 5 00:50:23 2007 +0930 17430Commit: Adrian Johnson <ajohnson@redneon.com> 17431CommitDate: Sun Aug 5 00:50:23 2007 +0930 17432 17433 PDF: Fix gradients regression 17434 17435 src/cairo-pdf-surface.c | 8 ++++---- 17436 1 file changed, 4 insertions(+), 4 deletions(-) 17437 17438commit 9bcedd3d6f0de8c380e7ab4981d32377e3c5a778 17439Author: Vladimir Vukicevic <vladimir@pobox.com> 17440AuthorDate: Fri Aug 3 14:18:40 2007 -0700 17441Commit: Vladimir Vukicevic <vladimir@hailstone.vlad1.com> 17442CommitDate: Fri Aug 3 14:20:14 2007 -0700 17443 17444 [win32] compilation fix for win32 17445 17446 src/cairo-win32-surface.c | 10 +++++----- 17447 1 file changed, 5 insertions(+), 5 deletions(-) 17448 17449commit f52aa4c13e91339e575ca2c52c9e3a1f4d95b106 17450Author: Adrian Johnson <ajohnson@redneon.com> 17451AuthorDate: Thu Aug 2 21:25:46 2007 +0930 17452Commit: Adrian Johnson <ajohnson@redneon.com> 17453CommitDate: Thu Aug 2 21:25:46 2007 +0930 17454 17455 CFF Subsetting: fix integer encoding bug 17456 17457 Bug report at https://bugzilla.mozilla.org/show_bug.cgi?id=368668 17458 17459 src/cairo-cff-subset.c | 2 +- 17460 1 file changed, 1 insertion(+), 1 deletion(-) 17461 17462commit ef93f1897c0703c3284c85206cb1c70e23ff3fe5 17463Author: Behdad Esfahbod <behdad@behdad.org> 17464AuthorDate: Tue Jul 31 17:52:13 2007 -0400 17465Commit: Behdad Esfahbod <behdad@behdad.org> 17466CommitDate: Tue Jul 31 17:52:13 2007 -0400 17467 17468 [configure.in] Cleanup after pixman removal and correctly check for pixman 17469 17470 configure.in | 24 ++++-------------------- 17471 1 file changed, 4 insertions(+), 20 deletions(-) 17472 17473commit 4cce3135e0e50d5edb3a7cc54cf413fc2242a521 17474Author: Behdad Esfahbod <behdad@behdad.org> 17475AuthorDate: Thu Jul 26 18:04:39 2007 -0400 17476Commit: Behdad Esfahbod <behdad@behdad.org> 17477CommitDate: Thu Jul 26 18:04:39 2007 -0400 17478 17479 Clear executable flag off .c file 17480 17481 util/malloc-stats.c | 0 17482 1 file changed, 0 insertions(+), 0 deletions(-) 17483 17484commit 5b0e2e3e2b6823580bbc40dd1be415b7461bcbf0 17485Author: Chris Wilson <chris@chris-wilson.co.uk> 17486AuthorDate: Mon Jul 23 13:05:13 2007 +0100 17487Commit: Chris Wilson <chris@chris-wilson.co.uk> 17488CommitDate: Mon Jul 23 13:05:13 2007 +0100 17489 17490 [cairo-glitz-surface] Compile fix. 17491 17492 Minor corrections to reflect updated structures. 17493 17494 src/cairo-glitz-surface.c | 19 +++++++++---------- 17495 1 file changed, 9 insertions(+), 10 deletions(-) 17496 17497commit c0a7d33ac6c81dd74ee2a9daaa3749a346ef4897 17498Author: Vladimir Vukicevic <vladimir@pobox.com> 17499AuthorDate: Wed Jul 4 13:54:03 2007 +0200 17500Commit: Vladimir Vukicevic <vladimir@binky.(none)> 17501CommitDate: Wed Jul 18 22:46:46 2007 +0200 17502 17503 [fixpt] Fixup malloc usage to use _cairo_malloc_* 17504 17505 Fix some introduced mallocs as a result of the fixed point patches. 17506 17507 src/cairo-clip.c | 2 +- 17508 src/cairo-glitz-surface.c | 2 +- 17509 src/cairo-image-surface.c | 2 +- 17510 src/cairo-pattern.c | 2 +- 17511 src/cairo-xcb-surface.c | 4 ++-- 17512 src/cairo-xlib-surface.c | 4 ++-- 17513 6 files changed, 8 insertions(+), 8 deletions(-) 17514 17515commit b719592428907d2010645303fb65d38dcb8b30c0 17516Author: Vladimir Vukicevic <vladimir@pobox.com> 17517AuthorDate: Wed Jul 4 12:16:27 2007 +0200 17518Commit: Vladimir Vukicevic <vladimir@binky.(none)> 17519CommitDate: Wed Jul 18 22:46:46 2007 +0200 17520 17521 [fixpt] Fix up compilation post pixman merge 17522 17523 src/cairo-pattern.c | 1 - 17524 src/cairo-region-private.h | 2 +- 17525 src/cairo-region.c | 9 +++++---- 17526 src/cairo-svg-surface.c | 6 +++--- 17527 4 files changed, 9 insertions(+), 9 deletions(-) 17528 17529commit 866b485314bfd5d8bbf865d19f6a589d08292e2a 17530Author: Vladimir Vukicevic <vladimir@pobox.com> 17531AuthorDate: Mon Jun 18 18:38:54 2007 -0700 17532Commit: Vladimir Vukicevic <vladimir@binky.(none)> 17533CommitDate: Wed Jul 18 22:46:46 2007 +0200 17534 17535 [fixpt] Let the compiler calculate the magic double-to-fixed value 17536 17537 src/cairo-fixed-private.h | 14 ++------------ 17538 1 file changed, 2 insertions(+), 12 deletions(-) 17539 17540commit 0abe5324a5b03149630a5b6496c980f83be4fd75 17541Author: Vladimir Vukicevic <vladimir@pobox.com> 17542AuthorDate: Mon Jun 18 18:33:29 2007 -0700 17543Commit: Vladimir Vukicevic <vladimir@binky.(none)> 17544CommitDate: Wed Jul 18 22:46:46 2007 +0200 17545 17546 [fixpt] Create cairo_region wrapper around pixman_region16_t 17547 17548 Insulate region-using code from implementation details; 17549 at some point we'll want to switch to using 32-bit regions. 17550 17551 src/cairo-analysis-surface-private.h | 4 +- 17552 src/cairo-analysis-surface.c | 4 +- 17553 src/cairo-clip-private.h | 4 +- 17554 src/cairo-clip.c | 182 ++++++++++++++++++----------------- 17555 src/cairo-directfb-surface.c | 25 +++-- 17556 src/cairo-glitz-surface.c | 65 +++++++++++-- 17557 src/cairo-image-surface.c | 4 +- 17558 src/cairo-pattern.c | 16 +-- 17559 src/cairo-region-private.h | 105 ++++++++++++++++++++ 17560 src/cairo-region.c | 173 +++++++++++++++++++++++++++++++-- 17561 src/cairo-surface-fallback.c | 29 +++--- 17562 src/cairo-surface.c | 63 ++++++------ 17563 src/cairo-traps.c | 50 +++++----- 17564 src/cairo-win32-surface.c | 28 ++++-- 17565 src/cairo-xcb-surface.c | 26 ++--- 17566 src/cairo-xlib-surface.c | 28 +++--- 17567 src/cairoint.h | 38 ++++++-- 17568 src/test-paginated-surface.c | 2 +- 17569 18 files changed, 598 insertions(+), 248 deletions(-) 17570 17571commit dc035fecda0070e18a68e06f567f268fc39483f1 17572Author: Vladimir Vukicevic <vladimir@pobox.com> 17573AuthorDate: Mon Jun 18 17:34:36 2007 -0700 17574Commit: Vladimir Vukicevic <vladimir@binky.(none)> 17575CommitDate: Wed Jul 18 22:45:22 2007 +0200 17576 17577 [fixpt] Fix xcb surface to handle conversion to 16.16 17578 17579 src/cairo-xcb-surface.c | 87 +++++++++++++++++++++++++++++++++++++------------ 17580 1 file changed, 66 insertions(+), 21 deletions(-) 17581 17582commit 58d9664702308639ead888c7167e71ca605a8fe3 17583Author: Vladimir Vukicevic <vladimir@pobox.com> 17584AuthorDate: Mon Jun 18 17:33:44 2007 -0700 17585Commit: Vladimir Vukicevic <vladimir@binky.(none)> 17586CommitDate: Wed Jul 18 22:45:22 2007 +0200 17587 17588 [fixpt] Fix xlib surface to handle conversion to 16.16 17589 17590 src/cairo-xlib-surface.c | 87 ++++++++++++++++++++++++++++++++++++------------ 17591 1 file changed, 66 insertions(+), 21 deletions(-) 17592 17593commit aaf94ef6c4656d7e836e52c2a71db214a1c01b57 17594Author: Vladimir Vukicevic <vladimir@pobox.com> 17595AuthorDate: Mon Jun 18 17:29:04 2007 -0700 17596Commit: Vladimir Vukicevic <vladimir@binky.(none)> 17597CommitDate: Wed Jul 18 22:45:21 2007 +0200 17598 17599 [fixpt] remove dependency on some pixman types 17600 17601 Introduce cairo_gradient_stop_t, and remove pixman dependency 17602 for core pattern types. Perform conversion from cairo types 17603 to pixman types as necessary in fallback code. 17604 17605 src/cairo-matrix.c | 12 +++--- 17606 src/cairo-pattern.c | 97 ++++++++++++++++++++++++++++++++------------ 17607 src/cairo-pdf-surface.c | 8 ++-- 17608 src/cairo-scaled-font.c | 6 +-- 17609 src/cairo-surface-fallback.c | 10 ++++- 17610 src/cairo-svg-surface.c | 87 +++++++++++++++++++-------------------- 17611 src/cairoint.h | 27 ++++++------ 17612 7 files changed, 150 insertions(+), 97 deletions(-) 17613 17614commit e5fdacae1c5b7005b95db8f9065cce51ef19bf20 17615Author: Vladimir Vukicevic <vladimir@pobox.com> 17616AuthorDate: Mon Jun 18 17:05:34 2007 -0700 17617Commit: Vladimir Vukicevic <vladimir@binky.(none)> 17618CommitDate: Wed Jul 18 22:45:21 2007 +0200 17619 17620 [fixpt] fix up image surface to translate to 16.16 for pixman 17621 17622 src/cairo-image-surface.c | 76 ++++++++++++++++++++++++++++++++++++++++------- 17623 1 file changed, 65 insertions(+), 11 deletions(-) 17624 17625commit be3516335cda8587d9baf5bd0097d3ce1cb64ab1 17626Author: Vladimir Vukicevic <vladimir@pobox.com> 17627AuthorDate: Mon Jun 18 16:56:24 2007 -0700 17628Commit: Vladimir Vukicevic <vladimir@binky.(none)> 17629CommitDate: Wed Jul 18 22:45:21 2007 +0200 17630 17631 [fixpt] Replace cairo_rectangle_int16_t with cairo_rectangle_int_t 17632 17633 Mostly s/cairo_rectangle_int16_t/cairo_rectangle_int_t/, 17634 as well as definitions to pick cairo_rectangle_int_t. 17635 17636 src/cairo-analysis-surface.c | 2 +- 17637 src/cairo-clip-private.h | 6 ++--- 17638 src/cairo-clip.c | 12 ++++----- 17639 src/cairo-directfb-surface.c | 16 +++++------ 17640 src/cairo-glitz-surface.c | 20 +++++++------- 17641 src/cairo-gstate.c | 2 +- 17642 src/cairo-image-surface.c | 12 ++++----- 17643 src/cairo-meta-surface.c | 2 +- 17644 src/cairo-os2-surface.c | 10 +++---- 17645 src/cairo-paginated-surface.c | 6 ++--- 17646 src/cairo-pattern.c | 12 ++++----- 17647 src/cairo-pdf-surface.c | 4 +-- 17648 src/cairo-ps-surface.c | 4 +-- 17649 src/cairo-quartz-private.h | 2 +- 17650 src/cairo-quartz-surface.c | 24 ++++++++--------- 17651 src/cairo-rectangle.c | 10 +++---- 17652 src/cairo-region.c | 2 +- 17653 src/cairo-scaled-font.c | 2 +- 17654 src/cairo-surface-fallback-private.h | 2 +- 17655 src/cairo-surface-fallback.c | 52 ++++++++++++++++++------------------ 17656 src/cairo-surface.c | 40 +++++++++++++-------------- 17657 src/cairo-svg-surface.c | 4 +-- 17658 src/cairo-win32-private.h | 4 +-- 17659 src/cairo-win32-surface.c | 16 +++++------ 17660 src/cairo-xcb-surface.c | 18 ++++++------- 17661 src/cairo-xlib-surface.c | 18 ++++++------- 17662 src/cairo.c | 2 +- 17663 src/cairoint.h | 48 ++++++++++++++++++++------------- 17664 src/test-fallback-surface.c | 12 ++++----- 17665 src/test-meta-surface.c | 4 +-- 17666 src/test-paginated-surface.c | 2 +- 17667 31 files changed, 191 insertions(+), 179 deletions(-) 17668 17669commit 9c38aa3b96a1e926ef422837fc3102e902a796fc 17670Author: Vladimir Vukicevic <vladimir@pobox.com> 17671AuthorDate: Mon Jun 18 16:30:09 2007 -0700 17672Commit: Vladimir Vukicevic <vladimir@binky.(none)> 17673CommitDate: Wed Jul 18 22:45:21 2007 +0200 17674 17675 [fixpt] Use _cairo_fixed_mul insted of manual multiplication 17676 17677 src/cairo-fixed-private.h | 1 - 17678 src/cairo-path-fixed.c | 11 +++-------- 17679 src/cairo-traps.c | 26 +++++++++++--------------- 17680 3 files changed, 14 insertions(+), 24 deletions(-) 17681 17682commit 0048a26a4477d3acb5dd0231756cfaae92d240a9 17683Author: Vladimir Vukicevic <vladimir@pobox.com> 17684AuthorDate: Mon Jun 18 16:26:14 2007 -0700 17685Commit: Vladimir Vukicevic <vladimir@binky.(none)> 17686CommitDate: Wed Jul 18 22:45:21 2007 +0200 17687 17688 [fixpt] Make fixed point methods static inline and generic 17689 17690 Move the fixed point methods to static inline versions in 17691 cairo-fixed-private.h, and don't hardcode fixed to be 16.16. 17692 17693 src/cairo-fixed-private.h | 256 +++++++++++++++++++++++++++++++++++++++++++++ 17694 src/cairo-fixed.c | 100 +----------------- 17695 src/cairo-quartz-surface.c | 2 +- 17696 src/cairoint.h | 37 +------ 17697 4 files changed, 259 insertions(+), 136 deletions(-) 17698 17699commit 76c32f899af63649bf911533a2ed6b42e617da41 17700Author: Vladimir Vukicevic <vladimir@frankenmac.mshome.net> 17701AuthorDate: Mon Jul 2 15:09:21 2007 +0200 17702Commit: Vladimir Vukicevic <vladimir@h-234.office.mozilla.org> 17703CommitDate: Wed Jul 18 13:08:39 2007 -0700 17704 17705 [fixpt] Update quartz surface for new types 17706 17707 src/cairo-quartz-surface.c | 20 ++++++++++---------- 17708 1 file changed, 10 insertions(+), 10 deletions(-) 17709 17710commit 290daee4ce26a931a15425f380ed4f495a4bd3c1 17711Author: Søren Sandmann <sandmann@redhat.com> 17712AuthorDate: Tue Jul 10 10:31:23 2007 -0400 17713Commit: Søren Sandmann <sandmann@redhat.com> 17714CommitDate: Tue Jul 10 10:31:23 2007 -0400 17715 17716 Add note about pixman dependency in README 17717 17718 README | 2 +- 17719 1 file changed, 1 insertion(+), 1 deletion(-) 17720 17721commit 1fac791537d2333b084e3fbabc1a6a890433e9ed 17722Author: Jinghua Luo <sunmoon1997@gmail.com> 17723AuthorDate: Tue Jul 10 15:09:04 2007 +0800 17724Commit: Jinghua Luo <sunmoon1997@gmail.com> 17725CommitDate: Tue Jul 10 15:09:04 2007 +0800 17726 17727 [Glitz] fix compilation. 17728 17729 Separating pixman broke the compilation if glitz backend is enabled, 17730 fix it and all compiler warning as well. 17731 17732 src/cairo-glitz-surface.c | 104 ++++++++++++++++++++++++++++------------------ 17733 1 file changed, 64 insertions(+), 40 deletions(-) 17734 17735commit 5819be398c4eada9a6cfc8e37a532991751b4a51 17736Author: Chris Wilson <chris@chris-wilson.co.uk> 17737AuthorDate: Thu Jul 5 18:59:31 2007 +0100 17738Commit: Chris Wilson <chris@chris-wilson.co.uk> 17739CommitDate: Thu Jul 5 19:15:10 2007 +0100 17740 17741 [check-plt] Ignore entries for pixman. 17742 17743 pixman is now an external library, so we now expect PLT entries. 17744 17745 src/check-plt.sh | 2 +- 17746 1 file changed, 1 insertion(+), 1 deletion(-) 17747 17748commit 35ef8419a981929b65157407485ec001b69b3391 17749Author: Chris Wilson <chris@chris-wilson.co.uk> 17750AuthorDate: Thu Jul 5 18:52:21 2007 +0100 17751Commit: Chris Wilson <chris@chris-wilson.co.uk> 17752CommitDate: Thu Jul 5 19:15:07 2007 +0100 17753 17754 [cairo-matrix] Check determinant for invalid numbers. 17755 17756 By checking matrices for invalid determinants, we can prevent the 17757 setting and application of invalid matrices. 17758 17759 The trick used here is that NaNs, as specified by IEE754, always 17760 return FALSE in comparisons. Since we know that the square of the 17761 determinant must be positive definite, then if the comparison is 17762 FALSE the computation must have resulted in a NaN. 17763 17764 src/cairo-matrix.c | 4 +++ 17765 test/invalid-matrix.c | 94 ++++++++++++++++++++++++++++++++++++++++++++------- 17766 2 files changed, 86 insertions(+), 12 deletions(-) 17767 17768commit 7eaba5d5fbf83f66b39db42a89db3e7a892c2ea0 17769Author: Chris Wilson <chris@chris-wilson.co.uk> 17770AuthorDate: Thu Jul 5 15:24:11 2007 +0100 17771Commit: Chris Wilson <chris@chris-wilson.co.uk> 17772CommitDate: Thu Jul 5 19:02:11 2007 +0100 17773 17774 [configure] Only run PostScript tests if we have ghostscript. 17775 17776 During configure check for the ghostscript command line tool (gs) before 17777 enabling the PostScript surface tests for make check. 17778 17779 boilerplate/cairo-boilerplate.c | 2 +- 17780 configure.in | 14 ++++++++++++++ 17781 2 files changed, 15 insertions(+), 1 deletion(-) 17782 17783commit ef967be630dd8d0bf81ad5889d6264bebe7631d4 17784Merge: 0c42dbb19 5c7d2d14d 17785Author: Søren Sandmann Pedersen <sandmann@annarchy.freedesktop.org> 17786AuthorDate: Mon Jul 2 08:33:29 2007 -0700 17787Commit: Søren Sandmann Pedersen <sandmann@annarchy.freedesktop.org> 17788CommitDate: Mon Jul 2 08:33:29 2007 -0700 17789 17790 Merge branch 'master' of git+ssh://sandmann@git.freedesktop.org/git/cairo 17791 17792 Conflicts: 17793 17794 pixman/src/fbcompose.c 17795 pixman/src/icimage.c 17796 pixman/src/pixmanint.h 17797 pixman/src/pixregionint.h 17798 src/cairo-clip.c 17799 17800commit 5c7d2d14d78e4dfb1ef6d2c40f0910f177e07360 17801Author: Vladimir Vukicevic <vladimir@pobox.com> 17802AuthorDate: Tue Jun 19 13:15:21 2007 -0700 17803Commit: Vladimir Vukicevic <vladimir@feisty.(none)> 17804CommitDate: Fri Jun 29 09:46:08 2007 -0700 17805 17806 [fix] Avoid int overflow when allocating large buffers 17807 17808 This patch introduces three macros: _cairo_malloc_ab, 17809 _cairo_malloc_abc, _cairo_malloc_ab_plus_c and replaces various calls 17810 to malloc(a*b), malloc(a*b*c), and malloc(a*b+c) with them. The macros 17811 return NULL if int overflow would occur during the allocation. See 17812 CODING_STYLE for more information. 17813 17814 CODING_STYLE | 25 ++++++++++ 17815 pixman/src/fbcompose.c | 4 +- 17816 pixman/src/icimage.c | 8 ++-- 17817 pixman/src/pixman.h | 7 +++ 17818 pixman/src/pixmanint.h | 17 +++++++ 17819 pixman/src/pixregion.c | 59 ++++++++++++++++++----- 17820 pixman/src/pixregionint.h | 1 - 17821 src/cairo-atsui-font.c | 2 +- 17822 src/cairo-bentley-ottmann.c | 6 +-- 17823 src/cairo-beos-surface.cpp | 4 +- 17824 src/cairo-clip.c | 10 ++-- 17825 src/cairo-directfb-surface.c | 2 +- 17826 src/cairo-ft-font.c | 4 +- 17827 src/cairo-glitz-surface.c | 34 +++++++++++-- 17828 src/cairo-gstate.c | 6 +-- 17829 src/cairo-hull.c | 2 +- 17830 src/cairo-malloc-private.h | 104 ++++++++++++++++++++++++++++++++++++++++ 17831 src/cairo-meta-surface.c | 4 +- 17832 src/cairo-os2-surface.c | 9 ++-- 17833 src/cairo-path.c | 2 +- 17834 src/cairo-pattern.c | 6 +-- 17835 src/cairo-pdf-surface.c | 6 +-- 17836 src/cairo-pen.c | 4 +- 17837 src/cairo-png.c | 6 +-- 17838 src/cairo-polygon.c | 2 +- 17839 src/cairo-ps-surface.c | 4 +- 17840 src/cairo-quartz-surface.c | 8 ++-- 17841 src/cairo-scaled-font-subsets.c | 4 +- 17842 src/cairo-scaled-font.c | 2 +- 17843 src/cairo-spline.c | 2 +- 17844 src/cairo-stroke-style.c | 2 +- 17845 src/cairo-surface-fallback.c | 4 +- 17846 src/cairo-surface.c | 2 +- 17847 src/cairo-svg-surface.c | 2 +- 17848 src/cairo-traps.c | 2 +- 17849 src/cairo-unicode.c | 4 +- 17850 src/cairo-win32-font.c | 6 +-- 17851 src/cairo-win32-surface.c | 6 +-- 17852 src/cairo-xcb-surface.c | 8 ++-- 17853 src/cairo-xlib-surface.c | 6 +-- 17854 src/cairoint.h | 1 + 17855 41 files changed, 308 insertions(+), 89 deletions(-) 17856 17857commit fc34073464c487405b6e2e0a5fa269a1ae15a02a 17858Author: Carl Worth <cworth@cworth.org> 17859AuthorDate: Wed Jun 27 14:38:41 2007 -0700 17860Commit: Carl Worth <cworth@cworth.org> 17861CommitDate: Wed Jun 27 14:38:41 2007 -0700 17862 17863 Increment version to 1.5.1 after the 1.4.10 release 17864 17865 configure.in | 4 ++-- 17866 1 file changed, 2 insertions(+), 2 deletions(-) 17867 17868commit 107a74885a25e585b467c7841c6929a12aa62565 17869Author: Carl Worth <cworth@cworth.org> 17870AuthorDate: Wed Jun 27 14:05:56 2007 -0700 17871Commit: Carl Worth <cworth@cworth.org> 17872CommitDate: Wed Jun 27 14:05:56 2007 -0700 17873 17874 Increment cairo version to 1.4.10 (and libtool versioning to 13:5:11) 17875 17876 configure.in | 4 ++-- 17877 1 file changed, 2 insertions(+), 2 deletions(-) 17878 17879commit f595ad2348dbd97b57d22471fdec7664f8ca7bf6 17880Author: Carl Worth <cworth@cworth.org> 17881AuthorDate: Wed Jun 27 14:04:27 2007 -0700 17882Commit: Carl Worth <cworth@cworth.org> 17883CommitDate: Wed Jun 27 14:04:27 2007 -0700 17884 17885 Add notes to NEWS for 1.4.10 17886 17887 NEWS | 45 +++++++++++++++++++++++++++++++++++++++++++++ 17888 1 file changed, 45 insertions(+) 17889 17890commit 2bf3e31da99f34328973a0866346af40748097f6 17891Author: Carl Worth <cworth@cworth.org> 17892AuthorDate: Wed Jun 27 11:11:36 2007 -0700 17893Commit: Carl Worth <cworth@cworth.org> 17894CommitDate: Wed Jun 27 11:11:36 2007 -0700 17895 17896 Prefer local dpy variable instead of display->display 17897 17898 This was a tiny piece of cleanup that had been erroneously included 17899 with some earlier functional changes, (so it went through a cycle 17900 of being applied and reverted). It's back now in its own commit. 17901 17902 src/cairo-xlib-display.c | 6 +++--- 17903 1 file changed, 3 insertions(+), 3 deletions(-) 17904 17905commit eebb0df512da50f883a417bb5e8e368dc81e35a9 17906Author: Carl Worth <cworth@cworth.org> 17907AuthorDate: Wed Jun 27 11:08:53 2007 -0700 17908Commit: Carl Worth <cworth@cworth.org> 17909CommitDate: Wed Jun 27 11:08:53 2007 -0700 17910 17911 Revert "[cairo-xlib-display] Hide XErrors during processing of the work queue." 17912 17913 This reverts commit 285b702ef6f73e7eb4ca0da235a287ad1e1f412f. 17914 17915 The recent commit of 0791f342b93225849d9171aac8b738014b18bdf5 fixes 17916 the same bug that 285b702e was fixing, but without introducing any 17917 performance-killing calls to XSync. So we can drop those now. 17918 17919 src/cairo-xlib-display.c | 17 +++-------------- 17920 1 file changed, 3 insertions(+), 14 deletions(-) 17921 17922commit b019cb8a7a910879c7af304edbd06fd105c9d89e 17923Author: Carl Worth <cworth@cworth.org> 17924AuthorDate: Wed Jun 27 11:07:07 2007 -0700 17925Commit: Carl Worth <cworth@cworth.org> 17926CommitDate: Wed Jun 27 11:07:07 2007 -0700 17927 17928 Revert "[cairo-xlib-surface] Check for errors before installing a NOOP error handler." 17929 17930 This reverts commit 7016614dd90798247524f0c118f462aa2e7ef673. 17931 17932 We want to avoid any negative performance impacts due to extra calls 17933 to XSync. The fact that X errors can be missed with this appraoch is 17934 undesirable of course---a proper fix will likely involve moving to 17935 XCB which will hopefully allow us to do the error-checking the way 17936 we want without any performance penalty. 17937 17938 src/cairo-xlib-surface.c | 2 -- 17939 1 file changed, 2 deletions(-) 17940 17941commit 6d021eb4b6e319dd2bb3e5e126de07c6844d5c07 17942Merge: 9109946a1 0791f342b 17943Author: Carl Worth <cworth@cworth.org> 17944AuthorDate: Wed Jun 27 11:01:00 2007 -0700 17945Commit: Carl Worth <cworth@cworth.org> 17946CommitDate: Wed Jun 27 11:01:00 2007 -0700 17947 17948 Merge branch 'ooo-fix' into cairo 17949 17950commit 0791f342b93225849d9171aac8b738014b18bdf5 17951Author: Chris Wilson <chris@chris-wilson.co.uk> 17952AuthorDate: Wed Jun 27 10:53:29 2007 -0700 17953Commit: Carl Worth <cworth@cworth.org> 17954CommitDate: Wed Jun 27 10:53:29 2007 -0700 17955 17956 Avoid deferring resource cleanup for application drawables 17957 17958 This eliminates X errors propagated from cairo due to cleaning up 17959 Render Pictures after the application had already destroyed the 17960 Drawable they reference. (It would be nice if the X server wouldn't 17961 complain that some cleanup work is already done, but there you 17962 have it.) 17963 17964 This fix has been verified to fix the bug causing OpenOffice.org to 17965 crash as described here: 17966 17967 XError on right click menus in OOo. 17968 https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=243811 17969 17970 And unlike other proposed fixes for this bug, this fix does not 17971 introduce any new calls to XSync, (and thereby avoids performance 17972 concerns from those). 17973 17974 src/cairo-xlib-surface.c | 47 ++++++++++++++++++++++++++--------------------- 17975 1 file changed, 26 insertions(+), 21 deletions(-) 17976 17977commit 0c42dbb1925efb8228fb5246e0715bee0a5ded28 17978Author: Søren Sandmann <sandmann@redhat.com> 17979AuthorDate: Fri Jun 15 00:39:27 2007 -0400 17980Commit: Søren Sandmann Pedersen <sandmann@annarchy.freedesktop.org> 17981CommitDate: Thu Jun 21 22:21:11 2007 -0700 17982 17983 pixman_image_set_transform() returns FALSE on failure 17984 17985 src/cairo-pattern.c | 2 +- 17986 1 file changed, 1 insertion(+), 1 deletion(-) 17987 17988commit e0cff78b34558f0eed29aff5d818d1591c7bf966 17989Author: Søren Sandmann <sandmann@redhat.com> 17990AuthorDate: Thu Jun 14 13:42:08 2007 -0400 17991Commit: Søren Sandmann Pedersen <sandmann@annarchy.freedesktop.org> 17992CommitDate: Thu Jun 21 22:21:11 2007 -0700 17993 17994 Fix bug where _cairo_image_surface_composite_trapezoids() computed the wrong stride for aliased masks 17995 17996 src/cairo-image-surface.c | 2 +- 17997 1 file changed, 1 insertion(+), 1 deletion(-) 17998 17999commit ca5760a289f287a7fafe36e69c6bdf47710c17e7 18000Author: Søren Sandmann <sandmann@redhat.com> 18001AuthorDate: Thu Jun 14 13:12:01 2007 -0400 18002Commit: Søren Sandmann Pedersen <sandmann@annarchy.freedesktop.org> 18003CommitDate: Thu Jun 21 22:21:11 2007 -0700 18004 18005 Fix initialization of radial patterns 18006 18007 src/cairo-pattern.c | 2 +- 18008 1 file changed, 1 insertion(+), 1 deletion(-) 18009 18010commit 12cc32b674d3f1b705ef1a66bbce1ef8c4488daf 18011Author: Søren Sandmann <sandmann@redhat.com> 18012AuthorDate: Wed Jun 13 00:15:34 2007 -0400 18013Commit: Søren Sandmann Pedersen <sandmann@annarchy.freedesktop.org> 18014CommitDate: Thu Jun 21 22:21:11 2007 -0700 18015 18016 [pixman] Initial port to standalone pixman library. 18017 18018 Makefile.am | 4 +- 18019 configure.in | 14 +- 18020 pixman/.gitignore | 20 - 18021 pixman/AUTHORS | 19 - 18022 pixman/COPYING | 92 - 18023 pixman/ChangeLog | 1534 ------------- 18024 pixman/ChangeLog.libic | 300 --- 18025 pixman/ChangeLog.libpixregion | 47 - 18026 pixman/ChangeLog.slim | 39 - 18027 pixman/INSTALL | 9 - 18028 pixman/Makefile.am | 7 - 18029 pixman/NEWS | 135 -- 18030 pixman/README | 47 - 18031 pixman/RELEASING | 81 - 18032 pixman/TODO | 10 - 18033 pixman/autogen.sh | 53 - 18034 pixman/configure.in | 92 - 18035 pixman/libpixman.pc.in | 10 - 18036 pixman/src/.gitignore | 13 - 18037 pixman/src/Makefile.am | 46 - 18038 pixman/src/Makefile.win32 | 37 - 18039 pixman/src/check-config.sh | 17 - 18040 pixman/src/check-pixmanint.sh | 17 - 18041 pixman/src/fbcompose.c | 4354 ------------------------------------ 18042 pixman/src/fbedge.c | 303 --- 18043 pixman/src/fbedgeimp.h | 136 -- 18044 pixman/src/fbmmx.c | 2821 ----------------------- 18045 pixman/src/fbmmx.h | 298 --- 18046 pixman/src/fbpict.c | 2181 ------------------ 18047 pixman/src/fbpict.h | 355 --- 18048 pixman/src/fbtrap.c | 236 -- 18049 pixman/src/icblt.c | 951 -------- 18050 pixman/src/icbltone.c | 743 ------ 18051 pixman/src/iccolor.c | 83 - 18052 pixman/src/icformat.c | 220 -- 18053 pixman/src/icimage.c | 744 ------ 18054 pixman/src/icimage.h | 384 ---- 18055 pixman/src/icint.h | 1070 --------- 18056 pixman/src/icpixels.c | 116 - 18057 pixman/src/icrect.c | 404 ---- 18058 pixman/src/icrop.h | 137 -- 18059 pixman/src/icstipple.c | 81 - 18060 pixman/src/ictransform.c | 63 - 18061 pixman/src/ictrap.c | 200 -- 18062 pixman/src/ictri.c | 293 --- 18063 pixman/src/icutil.c | 287 --- 18064 pixman/src/pixman-xserver-compat.h | 125 -- 18065 pixman/src/pixmanint.h | 1076 --------- 18066 pixman/src/pixregionint.h | 75 - 18067 pixman/src/renderedge.c | 196 -- 18068 pixman/src/renderedge.h | 157 -- 18069 pixman/update.pl | 159 -- 18070 src/Makefile.am | 6 +- 18071 src/cairo-clip.c | 36 +- 18072 src/cairo-glitz-surface.c | 126 +- 18073 src/cairo-image-surface.c | 314 ++- 18074 src/cairo-pattern.c | 82 +- 18075 src/cairo-pdf-surface.c | 40 +- 18076 src/cairo-ps-surface.c | 2 +- 18077 src/cairo-surface-fallback.c | 5 +- 18078 src/cairo-surface.c | 9 +- 18079 src/cairo-svg-surface.c | 31 +- 18080 src/cairo-traps.c | 4 +- 18081 src/cairo-xlib-surface.c | 43 +- 18082 src/cairoint.h | 14 +- 18083 test/buffer-diff.c | 16 +- 18084 66 files changed, 398 insertions(+), 21221 deletions(-) 18085 18086commit 9109946a1a7f9341e60da7358da6535c5fac52db 18087Author: Chris Wilson <chris@chris-wilson.co.uk> 18088AuthorDate: Thu Jun 21 15:40:23 2007 +0100 18089Commit: Chris Wilson <chris@chris-wilson.co.uk> 18090CommitDate: Thu Jun 21 15:40:23 2007 +0100 18091 18092 [cairo-directfb] Correct minor typo. 18093 18094 Correct the reference to _cairo_directfb_surface_is_similar. 18095 18096 src/cairo-directfb-surface.c | 2 +- 18097 1 file changed, 1 insertion(+), 1 deletion(-) 18098 18099commit 1e76aa66b23aa7b3fd7b9f7de2b563b4db814517 18100Author: Nis Martensen <nis.martensen@web.de> 18101AuthorDate: Tue Jun 19 17:04:48 2007 +0200 18102Commit: Carl Worth <cworth@cworth.org> 18103CommitDate: Tue Jun 19 11:48:43 2007 -0700 18104 18105 Update INSTALL about status of backends 18106 18107 INSTALL | 6 ++++-- 18108 1 file changed, 4 insertions(+), 2 deletions(-) 18109 18110commit 02f753c23ad0db7d677ae41f8d69dc566c8aaa0b 18111Author: Carl Worth <cworth@cworth.org> 18112AuthorDate: Mon Jun 18 18:23:06 2007 -0700 18113Commit: Carl Worth <cworth@cworth.org> 18114CommitDate: Mon Jun 18 18:24:09 2007 -0700 18115 18116 Fix cairo-perf-diff to compile cairo-perf explicitly 18117 18118 perf/cairo-perf-diff | 2 +- 18119 1 file changed, 1 insertion(+), 1 deletion(-) 18120 18121commit 2477e57de532fb3ebd1f6113cf51619b84b303d9 18122Author: Vladimir Vukicevic <vladimir@pobox.com> 18123AuthorDate: Mon Jun 18 13:58:15 2007 -0700 18124Commit: Vladimir Vukicevic <vladimir@feisty.(none)> 18125CommitDate: Mon Jun 18 14:02:41 2007 -0700 18126 18127 [perf] Add pixman_region_init_rects and use in extract_region 18128 18129 Avoid O(N*N) loop in traps_extract_region by letting us hand pixman 18130 an array of rects all at once. 18131 18132 perf/Makefile.am | 3 ++- 18133 perf/cairo-perf.c | 1 + 18134 perf/cairo-perf.h | 1 + 18135 perf/long-dashed-lines.c | 67 +++++++++++++++++++++++++++++++++++++++++++++++ 18136 pixman/src/pixman-remap.h | 1 + 18137 pixman/src/pixman.h | 2 ++ 18138 pixman/src/pixregion.c | 29 ++++++++++++++++++++ 18139 src/cairo-traps.c | 58 ++++++++++++++++++++++++++++------------ 18140 8 files changed, 144 insertions(+), 18 deletions(-) 18141 18142commit 285b702ef6f73e7eb4ca0da235a287ad1e1f412f 18143Author: Chris Wilson <chris@chris-wilson.co.uk> 18144AuthorDate: Fri Jun 15 20:38:01 2007 +0100 18145Commit: Chris Wilson <chris@chris-wilson.co.uk> 18146CommitDate: Fri Jun 15 21:16:49 2007 +0100 18147 18148 [cairo-xlib-display] Hide XErrors during processing of the work queue. 18149 18150 It is possible for the resources that we defer freeing to be already 18151 destroyed and trigger an XError whilst processing the work queue. For 18152 example, the application renders to a Window and then destroys the 18153 Drawable before proceeding with more rendering. This will trigger an 18154 invalid Picture from RenderFreePicture whilst attempting to free the 18155 resources. 18156 18157 By ignoring the possibility that the application could allocate a fresh 18158 resource with the same ID, we can simply hide the XErrors... 18159 18160 Fixes: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=243811 18161 18162 src/cairo-xlib-display.c | 17 ++++++++++++++--- 18163 1 file changed, 14 insertions(+), 3 deletions(-) 18164 18165commit 7016614dd90798247524f0c118f462aa2e7ef673 18166Author: Chris Wilson <chris@chris-wilson.co.uk> 18167AuthorDate: Fri Jun 15 20:45:53 2007 +0100 18168Commit: Chris Wilson <chris@chris-wilson.co.uk> 18169CommitDate: Fri Jun 15 21:00:50 2007 +0100 18170 18171 [cairo-xlib-surface] Check for errors before installing a NOOP error handler. 18172 18173 Call XSync before ignoring errors from XGetImage to avoid hiding 18174 unassociated errors. Similarly, call XSync before reinstalling the old 18175 error handler to ensure no errors creep out of the ignored section. 18176 18177 src/cairo-xlib-surface.c | 2 ++ 18178 1 file changed, 2 insertions(+) 18179 18180commit 0c5d28a4e5ce5e4dd72c0f416ce5e960e92b808b 18181Author: Ryan Lortie <desrt@desrt.ca> 18182AuthorDate: Wed Jun 13 18:59:22 2007 -0400 18183Commit: Behdad Esfahbod <behdad@behdad.org> 18184CommitDate: Wed Jun 13 18:59:22 2007 -0400 18185 18186 [xlib] Create source xrender Picture with IncludeInferiors 18187 18188 When an xlib surface is used as the source of a draw operation this 18189 will cause the contents of child windows to be included in the source 18190 data. The semantics of drawing to xlib surfaces are unchanged (ie: 18191 draws are still clipped by child windows overlapping the destination 18192 window). 18193 18194 src/cairo-xlib-surface.c | 15 ++++++++++++++- 18195 1 file changed, 14 insertions(+), 1 deletion(-) 18196 18197commit 817d4b0c9a354526389290c6d5a7662713d67cd8 18198Author: Brian Ewins <Brian.Ewins@gmail.com> 18199AuthorDate: Sat Jun 9 19:14:05 2007 +0100 18200Commit: Brian Ewins <Brian.Ewins@gmail.com> 18201CommitDate: Wed Jun 13 01:27:37 2007 +0100 18202 18203 [atsui] Document ATSUI 18204 18205 Add cairo_atsui_font_face_create_for_atsu_font_id 18206 and ATSUI to the documentation. Don't enable it yet, 18207 since this is still unsupported. 18208 18209 doc/public/tmpl/cairo-atsui.sgml | 2 +- 18210 src/cairo-atsui-font.c | 13 +++++++++++++ 18211 2 files changed, 14 insertions(+), 1 deletion(-) 18212 18213commit fd1edaa5d386f15edacfd5596b550593ed45d627 18214Author: Brian Ewins <Brian.Ewins@gmail.com> 18215AuthorDate: Wed Jun 13 01:27:36 2007 +0100 18216Commit: Brian Ewins <Brian.Ewins@gmail.com> 18217CommitDate: Wed Jun 13 01:27:36 2007 +0100 18218 18219 [quartz] remove unused code 18220 18221 clean up warnings about unused code: removing 18222 _cairo_quartz_cairo_path_to_quartz_path and the functions 18223 it calls. 18224 18225 src/cairo-quartz-surface.c | 47 ---------------------------------------------- 18226 1 file changed, 47 deletions(-) 18227 18228commit d7a0816ec3d750939dd935f34b217980ee27af3f 18229Author: Brian Ewins <Brian.Ewins@gmail.com> 18230AuthorDate: Wed Jun 13 01:27:36 2007 +0100 18231Commit: Brian Ewins <Brian.Ewins@gmail.com> 18232CommitDate: Wed Jun 13 01:27:36 2007 +0100 18233 18234 [quartz] move glyph array declarations 18235 18236 Move declarations causing a warning. A separate patch from 18237 the other warning cleanups because it moves where the allocation 18238 happens. 18239 18240 src/cairo-quartz-surface.c | 20 ++++++++++---------- 18241 1 file changed, 10 insertions(+), 10 deletions(-) 18242 18243commit bf39b28b77a83160e5aa037031d82f8c0843f387 18244Author: Brian Ewins <Brian.Ewins@gmail.com> 18245AuthorDate: Wed Jun 13 01:04:54 2007 +0100 18246Commit: Brian Ewins <Brian.Ewins@gmail.com> 18247CommitDate: Wed Jun 13 01:27:36 2007 +0100 18248 18249 commit 75be87b4093aaa7f477d587d5a68308cade1b29c 18250 18251 [quartz] move glyph array declarations 18252 18253 Move declarations causing a warning. A separate patch from 18254 the other warning cleanups because it moves where the allocation 18255 happens. 18256 18257 src/cairo-quartz-surface.c | 27 +++++++++++++++------------ 18258 1 file changed, 15 insertions(+), 12 deletions(-) 18259 18260commit 2034d1dbd5888c393c57f0feeb707b0411fa4480 18261Author: Brian Ewins <Brian.Ewins@gmail.com> 18262AuthorDate: Wed Jun 13 01:27:36 2007 +0100 18263Commit: Brian Ewins <Brian.Ewins@gmail.com> 18264CommitDate: Wed Jun 13 01:27:36 2007 +0100 18265 18266 [quartz] pass quartz_stroke_t not CGContextRef 18267 18268 Fix a typo where an incompatible pointer was being passed. 18269 18270 src/cairo-quartz-surface.c | 4 ++-- 18271 1 file changed, 2 insertions(+), 2 deletions(-) 18272 18273commit 54bbe44b08b37041c8982634837dbc79b19e6c18 18274Author: Behdad Esfahbod <behdad@behdad.org> 18275AuthorDate: Mon Jun 11 17:51:37 2007 -0400 18276Commit: Behdad Esfahbod <behdad@behdad.org> 18277CommitDate: Mon Jun 11 17:51:37 2007 -0400 18278 18279 [TODO] Add link to Adrian's finer-grain fallback thread 18280 18281 TODO | 2 ++ 18282 1 file changed, 2 insertions(+) 18283 18284commit ef3c64fd13d66648f4e00affb304e8b404249f92 18285Author: Vladimir Vukicevic <vladimir@pobox.com> 18286AuthorDate: Mon Jun 11 09:27:11 2007 -0700 18287Commit: Vladimir Vukicevic <vladimir@feisty.(none)> 18288CommitDate: Mon Jun 11 09:27:11 2007 -0700 18289 18290 [misc] Blow away last remaining $Id$ directives in sources 18291 18292 pixman/src/fbtrap.c | 2 -- 18293 src/cairo-analysis-surface-private.h | 3 +-- 18294 test/rel-path.c | 2 -- 18295 3 files changed, 1 insertion(+), 6 deletions(-) 18296 18297commit 853f23e18c28548bce4647d4e54a5cfb317ac3dc 18298Author: Behdad Esfahbod <behdad@behdad.org> 18299AuthorDate: Mon Jun 11 02:42:04 2007 -0400 18300Commit: Behdad Esfahbod <behdad@behdad.org> 18301CommitDate: Mon Jun 11 02:42:04 2007 -0400 18302 18303 [test] Use check_PROGRAMS instead of custom made SUPPORT_PROGS 18304 18305 It better handles $(EXEEXT) and is exactly made for this purpose. 18306 18307 test/Makefile.am | 14 ++++++-------- 18308 1 file changed, 6 insertions(+), 8 deletions(-) 18309 18310commit 1d86c7fa888918c32eb13adb084de78883e17c84 18311Author: Behdad Esfahbod <behdad@behdad.org> 18312AuthorDate: Sat Jun 9 13:48:13 2007 -0400 18313Commit: Behdad Esfahbod <behdad@behdad.org> 18314CommitDate: Sat Jun 9 13:48:32 2007 -0400 18315 18316 [perf] Link to librt if available 18317 18318 This is needed on Solaris, but also works on Linux. 18319 18320 configure.in | 4 ++++ 18321 perf/Makefile.am | 3 ++- 18322 2 files changed, 6 insertions(+), 1 deletion(-) 18323 18324commit 85d045f2675cf191ea1d1af66ad4cd9e57d58e67 18325Author: Carl Worth <cworth@cworth.org> 18326AuthorDate: Fri Jun 8 16:08:44 2007 -0700 18327Commit: Carl Worth <cworth@cworth.org> 18328CommitDate: Fri Jun 8 16:08:44 2007 -0700 18329 18330 Update version to 1.4.9 after the 1.4.8 release. 18331 18332 configure.in | 2 +- 18333 1 file changed, 1 insertion(+), 1 deletion(-) 18334 18335commit fea4f344c46cf5f85c6af3102333008768c55063 18336Author: Carl Worth <cworth@cworth.org> 18337AuthorDate: Fri Jun 8 15:49:12 2007 -0700 18338Commit: Carl Worth <cworth@cworth.org> 18339CommitDate: Fri Jun 8 15:49:12 2007 -0700 18340 18341 Update version to 1.4.8 (and libtool info to 13:4:11) 18342 18343 configure.in | 4 ++-- 18344 1 file changed, 2 insertions(+), 2 deletions(-) 18345 18346commit 0b19ff1d3f493067fa5484151e71dfcedcd14fd1 18347Author: Carl Worth <cworth@cworth.org> 18348AuthorDate: Fri Jun 8 15:34:35 2007 -0700 18349Commit: Carl Worth <cworth@cworth.org> 18350CommitDate: Fri Jun 8 15:36:05 2007 -0700 18351 18352 Add include of X11/Xlib.h to cairo-xlib-xrender.h 18353 18354 This makes this header file self-sufficient. Thanks to 18355 Sam Sirlin <samuel.w.sirlin@jpl.nasa.gov> for pointing 18356 this out. 18357 18358 src/cairo-xlib-xrender.h | 1 + 18359 1 file changed, 1 insertion(+) 18360 18361commit 8223c976d54319b58906de03fcb8fb1967105e53 18362Author: Brian Ewins <Brian.Ewins@gmail.com> 18363AuthorDate: Fri Jun 8 01:56:10 2007 +0100 18364Commit: Brian Ewins <Brian.Ewins@gmail.com> 18365CommitDate: Fri Jun 8 01:56:10 2007 +0100 18366 18367 [NEWS] add note about quartz fixes 18368 18369 We've got 11 less failures in the quartz tests this time around, 18370 worth a mention. 18371 18372 NEWS | 3 +++ 18373 1 file changed, 3 insertions(+) 18374 18375commit 00063a65f758265f3ad5c0caa374d9c7d5e89932 18376Author: Vladimir Vukicevic <vladimir@pobox.com> 18377AuthorDate: Fri Jun 8 01:17:09 2007 +0100 18378Commit: Brian Ewins <Brian.Ewins@gmail.com> 18379CommitDate: Fri Jun 8 01:46:27 2007 +0100 18380 18381 [quartz] fix DO_IMAGE 18382 18383 The implementation of DO_IMAGE leaks memory via a referenced surface, 18384 and wasn't applied for strokes and glyphs. This patch corrects those 18385 issues. 18386 18387 src/cairo-quartz-private.h | 5 ++- 18388 src/cairo-quartz-surface.c | 83 ++++++++++++++++++++++++++++------------------ 18389 2 files changed, 55 insertions(+), 33 deletions(-) 18390 18391commit 39e6a0090faa4e73a658c1ca0ead3040309b84a2 18392Author: Brian Ewins <Brian.Ewins@gmail.com> 18393AuthorDate: Fri Jun 8 01:12:24 2007 +0100 18394Commit: Brian Ewins <Brian.Ewins@gmail.com> 18395CommitDate: Fri Jun 8 01:46:27 2007 +0100 18396 18397 [quartz] fall back on extended gradients 18398 18399 A temporary fix for mozilla bug 379321, use an image fallback for 18400 gradients that use EXTEND_REPEAT or EXTEND_REFLECT. 18401 18402 src/cairo-quartz-surface.c | 7 +++++++ 18403 1 file changed, 7 insertions(+) 18404 18405commit 7c1afdcd597331c14f256f406a3e95743f7fdad6 18406Author: Brian Ewins <Brian.Ewins@gmail.com> 18407AuthorDate: Mon Mar 26 00:06:23 2007 +0100 18408Commit: Brian Ewins <Brian.Ewins@gmail.com> 18409CommitDate: Fri Jun 8 01:46:26 2007 +0100 18410 18411 [quartz] fixes the offsets in the font-matrix test 18412 18413 Apply the font matrix offset to text on the quartz surface, if necessary. 18414 18415 src/cairo-quartz-surface.c | 6 +++++- 18416 1 file changed, 5 insertions(+), 1 deletion(-) 18417 18418commit 55f1dbd0fbcbc587823ef8fa291a0af08441c775 18419Author: Brian Ewins <Brian.Ewins@gmail.com> 18420AuthorDate: Sun Apr 1 00:04:24 2007 +0100 18421Commit: Brian Ewins <Brian.Ewins@gmail.com> 18422CommitDate: Fri Jun 8 01:46:25 2007 +0100 18423 18424 [quartz] ensure that line widths are scaled. 18425 18426 cairo-gstate applies the ctm to the coordinates used in paths, 18427 but not to the line width. In quartz this ends up drawing unscaled 18428 lines. This is a minimal fix - it undoes the scaling applied to the 18429 points and then draws the path scaled correctly. 18430 18431 src/cairo-quartz-surface.c | 72 ++++++++++++++++++++++++++++++++++++---------- 18432 1 file changed, 57 insertions(+), 15 deletions(-) 18433 18434commit 5a9de1b5c9f6cc445f9f6230937c2254ee49e7cb 18435Author: Brian Ewins <Brian.Ewins@gmail.com> 18436AuthorDate: Thu Jun 7 23:22:30 2007 +0100 18437Commit: Brian Ewins <Brian.Ewins@gmail.com> 18438CommitDate: Fri Jun 8 01:46:25 2007 +0100 18439 18440 [atsui] remove unused code 18441 18442 Remove CGAffineTransformMakeWithCairoFontScale. 18443 18444 src/cairo-atsui-font.c | 8 -------- 18445 1 file changed, 8 deletions(-) 18446 18447commit 807c5ab613e7df60be452d6683c4f9f045ef62a0 18448Author: Brian Ewins <Brian.Ewins@gmail.com> 18449AuthorDate: Thu Jun 7 23:22:29 2007 +0100 18450Commit: Brian Ewins <Brian.Ewins@gmail.com> 18451CommitDate: Fri Jun 8 01:46:24 2007 +0100 18452 18453 [atsui] clean up warnings 18454 18455 Refactor code to get rid of compiler warnings. 18456 18457 src/cairo-atsui-font.c | 11 +++++++---- 18458 1 file changed, 7 insertions(+), 4 deletions(-) 18459 18460commit b210b09e2de2f048debad6e8881f0226b6b17060 18461Author: Brian Ewins <Brian.Ewins@gmail.com> 18462AuthorDate: Thu Jun 7 23:22:27 2007 +0100 18463Commit: Brian Ewins <Brian.Ewins@gmail.com> 18464CommitDate: Fri Jun 8 01:46:24 2007 +0100 18465 18466 [quartz] implement CAIRO_EXTEND_REFLECT 18467 18468 Implement extend-reflect by tiling a larger 2x2 grid of reflected 18469 images. 18470 18471 src/cairo-quartz-surface.c | 64 ++++++++++++++++++++++------------------------ 18472 1 file changed, 30 insertions(+), 34 deletions(-) 18473 18474commit fa5dd548b0dd2dfe523501bd40cafe7916240be1 18475Author: Brian Ewins <Brian.Ewins@gmail.com> 18476AuthorDate: Tue May 29 23:11:49 2007 +0100 18477Commit: Brian Ewins <Brian.Ewins@gmail.com> 18478CommitDate: Fri Jun 8 01:46:23 2007 +0100 18479 18480 [quartz] implement CAIRO_EXTEND_NONE 18481 18482 Implement extend-none for surface patterns, by using a single 18483 DrawImage where possible. There is some code duplication in this 18484 patch, to make it easier to edit this patch series without conflicts. 18485 A patch to remove duplicate code will be required later.. 18486 18487 src/cairo-quartz-surface.c | 61 ++++++++++++++++++++++++++++++++++++++++++++-- 18488 1 file changed, 59 insertions(+), 2 deletions(-) 18489 18490commit 147288864c8c512f3ae17c8117d3c36dbbc6d5f8 18491Author: Brian Ewins <Brian.Ewins@gmail.com> 18492AuthorDate: Thu Jun 7 23:22:05 2007 +0100 18493Commit: Brian Ewins <Brian.Ewins@gmail.com> 18494CommitDate: Fri Jun 8 01:46:23 2007 +0100 18495 18496 [quartz] Refactor code to create a CGImageRef from a pattern 18497 18498 In order to implement CAIRO_EXTEND_NONE we will need to create 18499 a CGImageRef without also creating a CGPattern. Separate the two 18500 pieces of code. 18501 18502 src/cairo-quartz-surface.c | 40 +++++++++++++++++++++------------------- 18503 1 file changed, 21 insertions(+), 19 deletions(-) 18504 18505commit a5ee983e1cb97aff63b0c9c3a57125b37d0e3f74 18506Author: Carl Worth <cworth@cworth.org> 18507AuthorDate: Thu Jun 7 15:03:43 2007 -0700 18508Commit: Carl Worth <cworth@cworth.org> 18509CommitDate: Thu Jun 7 15:03:43 2007 -0700 18510 18511 Update release notes for 1.4.8 18512 18513 NEWS | 75 +++++++++++++++++++++++++++++++++++++++++++------------------------- 18514 1 file changed, 48 insertions(+), 27 deletions(-) 18515 18516commit e19c49269d0b236de91a5a9b5230bed7d76282ed 18517Author: Carl Worth <cworth@cworth.org> 18518AuthorDate: Thu Jun 7 12:19:46 2007 -0700 18519Commit: Carl Worth <cworth@cworth.org> 18520CommitDate: Thu Jun 7 12:19:46 2007 -0700 18521 18522 Remove stale reference to cairo-xlib-test.h 18523 18524 src/Makefile.am | 3 +-- 18525 1 file changed, 1 insertion(+), 2 deletions(-) 18526 18527commit 5ded4479d6ddbbe16c631144ef987c4c02e706a6 18528Author: Carl Worth <cworth@cworth.org> 18529AuthorDate: Thu May 31 15:35:14 2007 -0700 18530Commit: Carl Worth <cworth@cworth.org> 18531CommitDate: Thu Jun 7 10:45:40 2007 -0700 18532 18533 Fix return value of cairo_surface_write_to_png for unsupported formats 18534 18535 For some reason this was returning CAIRO_STATUS_NULL_POINTER. 18536 Now fixed to return CAIRO_STATUS_INVALID_FORMAT. 18537 18538 src/cairo-png.c | 2 +- 18539 1 file changed, 1 insertion(+), 1 deletion(-) 18540 18541commit ec63a7839457e2d14c7b1a5b64d1a79daf044222 18542Author: Carl Worth <cworth@cworth.org> 18543AuthorDate: Thu May 31 14:28:50 2007 -0700 18544Commit: Carl Worth <cworth@cworth.org> 18545CommitDate: Thu Jun 7 10:45:40 2007 -0700 18546 18547 Add CAIRO_INTERNAL_FORMAT_RGB16_565 and prefer it over deprecated CAIRO_FORMAT_RGB16_565 18548 18549 Also clarify the documentation for cairo_internal_format_t 18550 18551 src/cairo-image-surface.c | 6 +++--- 18552 src/cairoint.h | 52 ++++++++++++++++++++++++++++------------------- 18553 2 files changed, 34 insertions(+), 24 deletions(-) 18554 18555commit b6ee6c531c41adb57512fe0eaf21558e5d03f04b 18556Author: Behdad Esfahbod <behdad@behdad.org> 18557AuthorDate: Thu Jun 7 12:22:20 2007 -0400 18558Commit: Behdad Esfahbod <behdad@behdad.org> 18559CommitDate: Thu Jun 7 12:24:21 2007 -0400 18560 18561 [NEWS] Add par about Chris 'ickle' Wilson's error-handling improvements work 18562 18563 NEWS | 14 ++++++++++++++ 18564 1 file changed, 14 insertions(+) 18565 18566commit 2399f923d504fba6b3dcbd0a185cd3d4b29b4dcf 18567Author: Chris Wilson <chris@chris-wilson.co.uk> 18568AuthorDate: Mon Jun 4 19:55:23 2007 +0100 18569Commit: Chris Wilson <chris@chris-wilson.co.uk> 18570CommitDate: Wed Jun 6 08:35:50 2007 +0100 18571 18572 [cairo-bentley-ottmann] Malloc reduction. 18573 18574 Attempt to allocate the edges during tessellate_polygon() from the stack, 18575 if the polygon size is sufficiently small and amalgamate the separate 18576 allocations for the list of events and their sorted index into a single 18577 block. 18578 18579 src/cairo-bentley-ottmann.c | 28 +++++++++++++++------------- 18580 1 file changed, 15 insertions(+), 13 deletions(-) 18581 18582commit ecf6f7f5147195276b3b479879cbd3db402df688 18583Author: Chris Wilson <chris@chris-wilson.co.uk> 18584AuthorDate: Mon Jun 4 16:35:15 2007 +0100 18585Commit: Chris Wilson <chris@chris-wilson.co.uk> 18586CommitDate: Wed Jun 6 08:35:38 2007 +0100 18587 18588 [cairo-scaled-font] Skip the mask composition onto the surface on error. 18589 18590 If we fail to composite the glyph onto the mask, skip compositing the 18591 mask onto the surface. 18592 18593 src/cairo-scaled-font.c | 2 +- 18594 1 file changed, 1 insertion(+), 1 deletion(-) 18595 18596commit 2e60029392bca904f7035a8f403de0593193b6b9 18597Author: Chris Wilson <chris@chris-wilson.co.uk> 18598AuthorDate: Tue Jun 5 09:08:51 2007 +0100 18599Commit: Chris Wilson <chris@chris-wilson.co.uk> 18600CommitDate: Tue Jun 5 12:23:03 2007 +0100 18601 18602 [cairo-ft-font] Markup error paths with _cairo_error(). 18603 18604 Behdad Esfahbod noted that in ff5af0f540ec4 I had introduce new error 18605 paths without the appropriate _cairo_error(). So review cairo-ft-font 18606 to ensure that _cairo_error() is called at the start of every error path, 18607 as close to the originating error as possible. 18608 18609 src/cairo-ft-font.c | 58 +++++++++++++++++++++++++++++++++++++---------------- 18610 1 file changed, 41 insertions(+), 17 deletions(-) 18611 18612commit a5e12cd9f212b12a32230263188be38c175dc0a1 18613Author: Behdad Esfahbod <behdad@behdad.org> 18614AuthorDate: Thu May 31 19:21:30 2007 -0400 18615Commit: Behdad Esfahbod <behdad@behdad.org> 18616CommitDate: Thu May 31 19:21:30 2007 -0400 18617 18618 [ROADMAP] Add link for a8mask patch 18619 18620 ROADMAP | 4 +++- 18621 1 file changed, 3 insertions(+), 1 deletion(-) 18622 18623commit ff5af0f540ec407beb3d2a105b22f041cd770ce4 18624Author: Chris Wilson <chris@chris-wilson.co.uk> 18625AuthorDate: Wed May 30 15:44:59 2007 +0100 18626Commit: Chris Wilson <chris@chris-wilson.co.uk> 18627CommitDate: Wed May 30 15:57:29 2007 +0100 18628 18629 [cairo-ft-font] Propagate error rather than asserting. 18630 18631 FT_Set_Char_Size can fail due to an out-of-memory condition, so 18632 propagate the error status instead of asserting that it never fails. 18633 18634 src/cairo-ft-font.c | 41 ++++++++++++++++++++++++++++++----------- 18635 1 file changed, 30 insertions(+), 11 deletions(-) 18636 18637commit de4dd4263cb5183b128a8fc80576ed7ddb239319 18638Author: Chris Wilson <chris@chris-wilson.co.uk> 18639AuthorDate: Fri May 11 15:15:11 2007 +0100 18640Commit: Chris Wilson <chris@chris-wilson.co.uk> 18641CommitDate: Wed May 30 14:11:04 2007 +0100 18642 18643 [cairo] Propagate surface->status on cairo_t creation. 18644 18645 Set the cairo_t status to be the surface->status when the context is 18646 created, and special case the NO_MEMORY status in order to avoid a 18647 redundant allocation. 18648 18649 src/cairo-gstate.c | 2 +- 18650 src/cairo.c | 12 +++++------- 18651 2 files changed, 6 insertions(+), 8 deletions(-) 18652 18653commit 9f4efa8a3ae6cbc194d89012286990582a6c8f5d 18654Author: Chris Wilson <chris@chris-wilson.co.uk> 18655AuthorDate: Fri May 11 09:48:47 2007 +0100 18656Commit: Chris Wilson <chris@chris-wilson.co.uk> 18657CommitDate: Wed May 30 13:51:24 2007 +0100 18658 18659 [cairo-ps-surface] Check status of glyph_lookup. 18660 18661 Check for failure of _cairo_scaled_glyph_lookup() before preceeding to 18662 access the glyph and propagate the failure up the callstack as far as 18663 possible. 18664 18665 src/cairo-ps-surface.c | 14 ++++++++++---- 18666 1 file changed, 10 insertions(+), 4 deletions(-) 18667 18668commit 8010d46de4056e6c15b6891a06ef3d784c641b82 18669Author: Chris Wilson <chris@chris-wilson.co.uk> 18670AuthorDate: Sun May 27 11:40:47 2007 +0100 18671Commit: Chris Wilson <chris@chris-wilson.co.uk> 18672CommitDate: Wed May 30 08:47:14 2007 +0100 18673 18674 [cairo-gstate] Check scaled font status. 18675 18676 After using the public API to access the scaled font, which only sets 18677 the status field in the font, check the scaled font status. This will 18678 then correctly propagate errors during glyph loading to the context. 18679 18680 src/cairo-gstate.c | 4 ++-- 18681 1 file changed, 2 insertions(+), 2 deletions(-) 18682 18683commit faf986bb25eab34eee16415f4dab6f7d5d3460d3 18684Author: Chris Wilson <chris@chris-wilson.co.uk> 18685AuthorDate: Tue May 29 12:39:16 2007 +0100 18686Commit: Chris Wilson <chris@chris-wilson.co.uk> 18687CommitDate: Wed May 30 08:46:32 2007 +0100 18688 18689 [cairo-gstate] Check status on existing fonts. 18690 18691 Add an initial guard in _cairo_gstate_ensure_scaled_font() and 18692 _cairo_gstate_ensure_font_face() to check that there is no prior 18693 error status on the objects. 18694 18695 src/cairo-gstate.c | 41 +++++++++++++++++++++++------------------ 18696 1 file changed, 23 insertions(+), 18 deletions(-) 18697 18698commit ac4b20082dd6b2e2b280d3615eebf5387da87e2f 18699Author: Vladimir Vukicevic <vladimir@pobox.com> 18700AuthorDate: Tue May 29 20:50:02 2007 -0700 18701Commit: Vladimir Vukicevic <vladimir@feisty.(none)> 18702CommitDate: Tue May 29 20:50:02 2007 -0700 18703 18704 [misc] make _cairo_image_surface_nil_invalid static const 18705 18706 src/cairo-image-surface.c | 2 +- 18707 1 file changed, 1 insertion(+), 1 deletion(-) 18708 18709commit 0b34e958f18f0bcfb8bc9b054fb3bbb2343d2c32 18710Author: Vladimir Vukicevic <vladimir@pobox.com> 18711AuthorDate: Tue May 29 17:14:41 2007 -0700 18712Commit: Vladimir Vukicevic <vladimir@feisty.(none)> 18713CommitDate: Tue May 29 17:14:41 2007 -0700 18714 18715 [test] add XFAIL test surface-pattern-big-scale down 18716 18717 Add test for image downscaling with large images severely limiting 18718 the destination coordinate space. See the test for more information. 18719 18720 test/Makefile.am | 2 + 18721 test/surface-pattern-big-scale-down.c | 121 ++++++++++++++++++++++++++++++++++ 18722 2 files changed, 123 insertions(+) 18723 18724commit 0898411d0abdfa6a02c2fb959b3a668e728fd87c 18725Author: Kouhei Sutou <kou@cozmixng.org> 18726AuthorDate: Mon May 28 17:05:40 2007 -0400 18727Commit: Behdad Esfahbod <behdad@behdad.org> 18728CommitDate: Mon May 28 17:05:40 2007 -0400 18729 18730 [doc] Minor documentation fixes 18731 18732 src/cairo-matrix.c | 2 +- 18733 src/cairo-pattern.c | 2 +- 18734 src/cairo-scaled-font.c | 2 +- 18735 src/cairo.c | 22 +++++++++++++++------- 18736 src/cairo.h | 2 +- 18737 5 files changed, 19 insertions(+), 11 deletions(-) 18738 18739commit 4da50dfa02d7c03c32ee20c15f8304eafa0844e0 18740Author: Luo jinghua <sunmoon1997@gmail.com> 18741AuthorDate: Sun May 27 17:09:49 2007 +0800 18742Commit: Luo jinghua <sunmoon1997@gmail.com> 18743CommitDate: Sun May 27 17:09:49 2007 +0800 18744 18745 [cairo-xlib-surface]: flush work queue before sending glyphs to X server. 18746 18747 After introducing a work queue for deferred destruction of X resource 18748 my firefox crashes over and over again because XRenderFreeGlyphs is trying 18749 to free a non-exist glyph (already freed). The problematic call sequence is 18750 something like below: 18751 XRenderAddGlyphs (20990204, 20069) 18752 XRenderAddGlyphs (20990204, 20069) 18753 XRenderFreeGlyphs (20990204, 20069) 18754 XRenderFreeGlyphs (20990204, 20069) 18755 You can see the two add/free glyphs is interlaced. And obviously, we'll crash 18756 at the last one. To fix this bug, we must be ensure here's no pending work 18757 to free the glyph that we want to sent. 18758 18759 src/cairo-xlib-surface.c | 1 + 18760 1 file changed, 1 insertion(+) 18761 18762commit 69bf823db1b256f19487d2f002e7b0811859e58e 18763Author: Brian Ewins <Brian.Ewins@gmail.com> 18764AuthorDate: Fri May 25 01:35:37 2007 +0100 18765Commit: Brian Ewins <Brian.Ewins@gmail.com> 18766CommitDate: Sat May 26 00:49:30 2007 +0100 18767 18768 [atsui] use ATSGlyphGetScreenMetrics to measure glyphs. 18769 18770 I don't know how I managed to get glyph measurement so badly wrong 18771 before, but tracing paths was not necessary, and 6x slower. The fix 18772 switches to using ATSGlyphGetScreenMetrics for all metrics, and remove 18773 the old measuring code. 18774 18775 src/cairo-atsui-font.c | 88 ++++---------------------------------------------- 18776 1 file changed, 6 insertions(+), 82 deletions(-) 18777 18778commit 5b2b008048d2bcbb0b558a6c02aee1093311db39 18779Author: Chris Wilson <chris@chris-wilson.co.uk> 18780AuthorDate: Fri May 11 10:14:57 2007 +0100 18781Commit: Chris Wilson <chris@chris-wilson.co.uk> 18782CommitDate: Fri May 25 12:39:37 2007 +0100 18783 18784 [cairo-scaled-font-subsets] Shortcut empty subset. 18785 18786 If the font_subset if empty, avoid allocating zero bytes and iterating 18787 over the empty hash table. 18788 18789 src/cairo-scaled-font-subsets.c | 4 ++++ 18790 1 file changed, 4 insertions(+) 18791 18792commit c175cf7b833b03c38c8ddea183333ce84c6fdfec 18793Author: Chris Wilson <chris@chris-wilson.co.uk> 18794AuthorDate: Thu May 17 17:04:14 2007 +0100 18795Commit: Chris Wilson <chris@chris-wilson.co.uk> 18796CommitDate: Fri May 25 12:25:31 2007 +0100 18797 18798 [cairo-ft-font] Remove erroneous cached font faces. 18799 18800 Only return a font face from the cache if it is not in an error condition. 18801 Otherwise unlink the bad font face from the cache and construct a new one. 18802 18803 src/cairo-ft-font.c | 15 +++++++++++---- 18804 1 file changed, 11 insertions(+), 4 deletions(-) 18805 18806commit f382c3e110f8078e83cbb9d73cfbb43b1506a11b 18807Author: Chris Wilson <chris@chris-wilson.co.uk> 18808AuthorDate: Fri May 11 15:31:33 2007 +0100 18809Commit: Chris Wilson <chris@chris-wilson.co.uk> 18810CommitDate: Fri May 25 12:15:48 2007 +0100 18811 18812 [cairo-pattern] Fully initialise the error pattern. 18813 18814 _cairo_pattern_fini depends on the pattern being correctly initialised, 18815 for example when calling _cairo_user_data_array_fini(), so we need to 18816 initialize the whole pattern and not just set the type to SOLID when 18817 creating a pattern for a surface in error. 18818 18819 src/cairo-pattern.c | 2 +- 18820 1 file changed, 1 insertion(+), 1 deletion(-) 18821 18822commit fcdfda83655faf0eecbb2b5af09a05340fe422e6 18823Author: Boris Zbarsky <bzbarsky@MIT.EDU> 18824AuthorDate: Mon May 14 23:46:14 2007 -0500 18825Commit: Brian Ewins <Brian.Ewins@gmail.com> 18826CommitDate: Thu May 24 23:48:01 2007 +0100 18827 18828 [quartz] implementing release_source_image (#11059) 18829 18830 The image surface that _cairo_quartz_surface_acquire_source_image creates never 18831 seems to be released, probably because there is no release_source_image callback 18832 in the quartz code. 18833 18834 The attached patch fixes that problem, at least insofar as the image surface 18835 itself is no longer leaking. I'm not sure whether any other cleanup needs to 18836 happen here. 18837 18838 -Boris 18839 18840 src/cairo-quartz-surface.c | 11 ++++++++++- 18841 1 file changed, 10 insertions(+), 1 deletion(-) 18842 18843commit 2c8598aafb4a8779ce94940ce91033a8c5a62ea4 18844Author: Carl Worth <cworth@cworth.org> 18845AuthorDate: Fri May 18 13:23:04 2007 -0700 18846Commit: Carl Worth <cworth@cworth.org> 18847CommitDate: Fri May 18 13:23:04 2007 -0700 18848 18849 Fix typo in comment. 18850 18851 src/cairo-pattern.c | 2 +- 18852 1 file changed, 1 insertion(+), 1 deletion(-) 18853 18854commit 3cb67435f805a8ea39f38194379f216ea4a69ed6 18855Author: Carl Worth <cworth@cworth.org> 18856AuthorDate: Fri May 18 13:22:36 2007 -0700 18857Commit: Carl Worth <cworth@cworth.org> 18858CommitDate: Fri May 18 13:22:36 2007 -0700 18859 18860 Document behavior of color stops added with identical offsets. 18861 18862 src/cairo-pattern.c | 13 +++++++++++++ 18863 1 file changed, 13 insertions(+) 18864 18865commit 1cf4ed989473e2468ea2d64bb7759084c9f6a1e4 18866Author: Carl Worth <cworth@cworth.org> 18867AuthorDate: Fri May 18 13:16:23 2007 -0700 18868Commit: Carl Worth <cworth@cworth.org> 18869CommitDate: Fri May 18 13:16:36 2007 -0700 18870 18871 ROADMAP: Add bugs for 565 and 655 Visuals to the list 18872 18873 ROADMAP | 8 +++++--- 18874 1 file changed, 5 insertions(+), 3 deletions(-) 18875 18876commit 7260ee23ecb08e72a938a194e70dfb5e7a48c599 18877Author: Behdad Esfahbod <behdad@behdad.org> 18878AuthorDate: Fri May 18 11:55:37 2007 -0400 18879Commit: Behdad Esfahbod <behdad@behdad.org> 18880CommitDate: Fri May 18 11:55:56 2007 -0400 18881 18882 [Type1] #include <ctype.h> (#10989) 18883 18884 src/cairo-type1-subset.c | 2 ++ 18885 1 file changed, 2 insertions(+) 18886 18887commit 6a42ddf0f9e9e4b8dc5fa6a98ef4448f1c149789 18888Author: Adrian Johnson <ajohnson@redneon.com> 18889AuthorDate: Thu May 17 12:45:22 2007 +0930 18890Commit: Adrian Johnson <ajohnson@redneon.com> 18891CommitDate: Thu May 17 12:45:22 2007 +0930 18892 18893 TrueType Subsetting: Remove post table 18894 18895 The post table is not used now that TrueType fonts are embedded 18896 in PDF as CID fonts. 18897 18898 src/cairo-truetype-subset.c | 34 +--------------------------------- 18899 1 file changed, 1 insertion(+), 33 deletions(-) 18900 18901commit 67e752f75fdc561aca419f798a1650feb22e59a4 18902Author: Adrian Johnson <ajohnson@redneon.com> 18903AuthorDate: Thu May 17 11:48:25 2007 +0930 18904Commit: Adrian Johnson <ajohnson@redneon.com> 18905CommitDate: Thu May 17 11:48:25 2007 +0930 18906 18907 CFF Subsetting: Filter out Unique ID from subset 18908 18909 The subsetted font is not the same as the original font so it should not 18910 have the same XUID and UniqueID. 18911 18912 src/cairo-cff-subset.c | 7 +++++++ 18913 1 file changed, 7 insertions(+) 18914 18915commit 99a6983017e1cd27f8a598487f8a72cfa6d411f1 18916Author: Adrian Johnson <ajohnson@redneon.com> 18917AuthorDate: Thu May 17 10:17:09 2007 +0930 18918Commit: Adrian Johnson <ajohnson@redneon.com> 18919CommitDate: Thu May 17 10:17:09 2007 +0930 18920 18921 Ensure surface backend finish() is never called more than once. 18922 18923 Previously if the backend finish() function returned an error status, 18924 surface->finished was not set true. This would result in the backend 18925 finish() function being called twice which in the case of the PostScript 18926 backend caused a seg fault. 18927 18928 src/cairo-surface.c | 4 +--- 18929 1 file changed, 1 insertion(+), 3 deletions(-) 18930 18931commit c5ae0f1232e8cef860bc1fc0b449ddf9d9063d22 18932Author: Chris Wilson <chris@chris-wilson.co.uk> 18933AuthorDate: Fri May 11 16:11:02 2007 +0100 18934Commit: Chris Wilson <chris@chris-wilson.co.uk> 18935CommitDate: Wed May 16 16:18:46 2007 +0100 18936 18937 [cairo-truetype-subset] Avoid a potential 0 byte allocation. 18938 18939 During _cairo_truetype_subset_init skip copying the string_offsets if 18940 the vector is empty. 18941 18942 src/cairo-truetype-subset.c | 21 +++++++++++++-------- 18943 1 file changed, 13 insertions(+), 8 deletions(-) 18944 18945commit e37bee3f52282a042251f2dfc8e051943fd8f1d7 18946Author: Chris Wilson <chris@chris-wilson.co.uk> 18947AuthorDate: Wed May 16 14:47:33 2007 +0100 18948Commit: Chris Wilson <chris@chris-wilson.co.uk> 18949CommitDate: Wed May 16 16:06:26 2007 +0100 18950 18951 [cairo-pdf-surface] emit_pattern_stops() array overrun. 18952 18953 _cairo_pdf_surface_emit_pattern_stops() tried to set the last element 18954 to have an offset of exactly 1.0, but missed and set the next element 18955 after the end of the array. 18956 18957 src/cairo-pdf-surface.c | 2 +- 18958 1 file changed, 1 insertion(+), 1 deletion(-) 18959 18960commit 27de1869f5a837b79812cd4b04e17621ec0f848c 18961Author: Chris Wilson <chris@chris-wilson.co.uk> 18962AuthorDate: Wed May 16 13:10:58 2007 +0100 18963Commit: Chris Wilson <chris@chris-wilson.co.uk> 18964CommitDate: Wed May 16 16:06:26 2007 +0100 18965 18966 [cairo-pdf-surface] Free allstops on error. 18967 18968 Ensure the locally allocated resources are freed on the error paths. 18969 18970 src/cairo-pdf-surface.c | 18 +++++++++--------- 18971 1 file changed, 9 insertions(+), 9 deletions(-) 18972 18973commit 79e6c0207cb65b6bc1f38537f42632d623a1bc9a 18974Author: Chris Wilson <chris@chris-wilson.co.uk> 18975AuthorDate: Sat May 12 18:27:58 2007 +0100 18976Commit: Chris Wilson <chris@chris-wilson.co.uk> 18977CommitDate: Wed May 16 16:06:26 2007 +0100 18978 18979 [cairo-pattern] Check for the nil surface. 18980 18981 cairo_surface_create_similar() does not return NULL as was being checked 18982 for, but the nil surface on error. Also ensure that the returned surface 18983 is destroyed if we encounter an error whilst compositing. 18984 18985 src/cairo-pattern.c | 26 ++++++++++++++++++++++---- 18986 1 file changed, 22 insertions(+), 4 deletions(-) 18987 18988commit 32c0ef9f145cec8b997c011b13208362eaf03004 18989Author: Chris Wilson <chris@chris-wilson.co.uk> 18990AuthorDate: Sat May 12 16:20:00 2007 +0100 18991Commit: Chris Wilson <chris@chris-wilson.co.uk> 18992CommitDate: Wed May 16 16:06:26 2007 +0100 18993 18994 [cairo-gstate] Remove a redundant conditional. 18995 18996 Simplify _cairo_gstate_text_to_glyphs() with a tail call. 18997 18998 src/cairo-gstate.c | 9 ++------- 18999 1 file changed, 2 insertions(+), 7 deletions(-) 19000 19001commit 37d8c18b3fc489d6336131bae6ec219cafc35718 19002Author: Chris Wilson <chris@chris-wilson.co.uk> 19003AuthorDate: Sat May 12 15:42:59 2007 +0100 19004Commit: Chris Wilson <chris@chris-wilson.co.uk> 19005CommitDate: Wed May 16 16:06:26 2007 +0100 19006 19007 [cairo-scaled-font-subsets] Destroy the glyph if we fail to cache it. 19008 19009 If we fail to insert the glyph into the sub_font glyph cache then we 19010 must destroy it before propagating the error. 19011 19012 src/cairo-scaled-font-subsets.c | 4 +++- 19013 1 file changed, 3 insertions(+), 1 deletion(-) 19014 19015commit 76e758df5b99fd4dee64481b9039b0d44dd01587 19016Author: Chris Wilson <chris@chris-wilson.co.uk> 19017AuthorDate: Sat May 12 15:40:39 2007 +0100 19018Commit: Chris Wilson <chris@chris-wilson.co.uk> 19019CommitDate: Wed May 16 16:06:25 2007 +0100 19020 19021 [cairo-truetype-subset] Destroy the arrays on error. 19022 19023 Growing the arrays may successfully allocate the indirect pointer, but 19024 fail whilst allocating the actual array - so always call 19025 _cairo_array_fini after _cairo_array_grow_by(). 19026 19027 src/cairo-truetype-subset.c | 22 +++++++++++----------- 19028 1 file changed, 11 insertions(+), 11 deletions(-) 19029 19030commit b63b32958e690409448ddc14e19b1856b9ef555a 19031Author: Chris Wilson <chris@chris-wilson.co.uk> 19032AuthorDate: Sat May 12 15:32:34 2007 +0100 19033Commit: Chris Wilson <chris@chris-wilson.co.uk> 19034CommitDate: Wed May 16 16:06:25 2007 +0100 19035 19036 [cairo-scaled-font-subsets] Destroy the parent and subfont on error. 19037 19038 If we fail to create the sub font destroy the local reference to the 19039 parent font and if we fail to insert the sub font into the hash table, 19040 destroy the newly create sub font. 19041 19042 src/cairo-scaled-font-subsets.c | 16 ++++++++++++---- 19043 1 file changed, 12 insertions(+), 4 deletions(-) 19044 19045commit fcd1076bcffa20b7770a1b447a46232760972e2f 19046Author: Chris Wilson <chris@chris-wilson.co.uk> 19047AuthorDate: Sat May 12 14:36:11 2007 +0100 19048Commit: Chris Wilson <chris@chris-wilson.co.uk> 19049CommitDate: Wed May 16 16:06:25 2007 +0100 19050 19051 [cairo-ft-font] Destroy the path on error. 19052 19053 During _decompose_glyph_outline() destroy the fixed path if we 19054 encounter an error. 19055 19056 src/cairo-ft-font.c | 22 ++++++++++++---------- 19057 1 file changed, 12 insertions(+), 10 deletions(-) 19058 19059commit abb19e61cf076c62c7626094c70de0530bd9fd00 19060Author: Chris Wilson <chris@chris-wilson.co.uk> 19061AuthorDate: Sat May 12 14:32:52 2007 +0100 19062Commit: Chris Wilson <chris@chris-wilson.co.uk> 19063CommitDate: Wed May 16 16:06:25 2007 +0100 19064 19065 [cairo-ft-font] Destroy the unscaled reference on error. 19066 19067 Release the reference to the unscaled font if we encounter an error 19068 whilst initialising the cairo_ft_scaled_font_t. 19069 19070 src/cairo-ft-font.c | 1 + 19071 1 file changed, 1 insertion(+) 19072 19073commit e4055f02a1f5a3d7942c7c2bb4f460ce0a8b5481 19074Author: Chris Wilson <chris@chris-wilson.co.uk> 19075AuthorDate: Sat May 12 14:29:28 2007 +0100 19076Commit: Chris Wilson <chris@chris-wilson.co.uk> 19077CommitDate: Wed May 16 16:06:25 2007 +0100 19078 19079 [cairo-ft-font] Race between unscaled removal from hash table and creation 19080 19081 Small window of opportunity for the unscaled font to be destroyed and 19082 removed from the hash table before 19083 _cairo_ft_unscaled_font_create_for_pattern() takes a reference on behalf 19084 of its cairo. Close the window by taking the reference with the font 19085 map lock held. 19086 19087 src/cairo-ft-font.c | 2 +- 19088 1 file changed, 1 insertion(+), 1 deletion(-) 19089 19090commit f239308ef1014174d554ccaeab1fe7c2d84e26dc 19091Author: Chris Wilson <chris@chris-wilson.co.uk> 19092AuthorDate: Sat May 12 13:27:09 2007 +0100 19093Commit: Chris Wilson <chris@chris-wilson.co.uk> 19094CommitDate: Wed May 16 16:06:25 2007 +0100 19095 19096 [cairo-deflate-stream] Free the stream on error. 19097 19098 Before returning the nil output stream, free the locally allocated 19099 stream when encountering an error during _cairo_deflate_stream_Create(). 19100 19101 src/cairo-deflate-stream.c | 4 +++- 19102 1 file changed, 3 insertions(+), 1 deletion(-) 19103 19104commit 35a2ed03352a1abc42e441ce5f52f2704de9be85 19105Author: Chris Wilson <chris@chris-wilson.co.uk> 19106AuthorDate: Sat May 12 12:36:47 2007 +0100 19107Commit: Chris Wilson <chris@chris-wilson.co.uk> 19108CommitDate: Wed May 16 16:06:25 2007 +0100 19109 19110 [cairo-ft-font] Destroy surface if glyph transformation fails. 19111 19112 As we allocated the surface we need to destroy it if we encounter an 19113 error. 19114 19115 src/cairo-ft-font.c | 5 ++++- 19116 1 file changed, 4 insertions(+), 1 deletion(-) 19117 19118commit 6a43c027238d2302f9e01ee7a780370d330def6c 19119Author: Chris Wilson <chris@chris-wilson.co.uk> 19120AuthorDate: Sat May 12 09:43:30 2007 +0100 19121Commit: Chris Wilson <chris@chris-wilson.co.uk> 19122CommitDate: Wed May 16 16:06:25 2007 +0100 19123 19124 [cairo-xlib-screen] Increase number of GC depths. 19125 19126 Add support for depths 12 and 30, and a separate unknown. 19127 19128 src/cairo-xlib-private.h | 2 +- 19129 src/cairo-xlib-screen.c | 14 ++++++++------ 19130 2 files changed, 9 insertions(+), 7 deletions(-) 19131 19132commit 70611846ded98ffa0f085f5a704979384b37e84c 19133Author: Chris Wilson <chris@chris-wilson.co.uk> 19134AuthorDate: Sat May 12 09:40:13 2007 +0100 19135Commit: Chris Wilson <chris@chris-wilson.co.uk> 19136CommitDate: Wed May 16 16:06:25 2007 +0100 19137 19138 [cairo-xlib-surface] Always nullify GC after pushing to screen. 19139 19140 The status return from _cairo_xlib_screen_put_gc() indicates the failure 19141 to queue a job to free an old GC - the current GC is always transferred 19142 away from the caller, so always nullify it in the surface. 19143 19144 src/cairo-xlib-surface.c | 11 +++++------ 19145 1 file changed, 5 insertions(+), 6 deletions(-) 19146 19147commit 58c35e6d7b2e153dc9cd6ff89fa91497c507afaf 19148Author: Chris Wilson <chris@chris-wilson.co.uk> 19149AuthorDate: Sat May 12 00:10:26 2007 +0100 19150Commit: Chris Wilson <chris@chris-wilson.co.uk> 19151CommitDate: Wed May 16 16:06:25 2007 +0100 19152 19153 [cairo-paginated-surface] Check surface status during finish. 19154 19155 Propagate children status during finish. 19156 19157 src/cairo-paginated-surface.c | 11 +++++++++-- 19158 1 file changed, 9 insertions(+), 2 deletions(-) 19159 19160commit 9ffd8154e2ec2ccbeeefd3e4a34b2aa16844c1ce 19161Author: Chris Wilson <chris@chris-wilson.co.uk> 19162AuthorDate: Fri May 11 23:43:53 2007 +0100 19163Commit: Chris Wilson <chris@chris-wilson.co.uk> 19164CommitDate: Wed May 16 16:06:25 2007 +0100 19165 19166 [cairo-scaled-font-subsets] Correctly destroy the hash table. 19167 19168 After an allocation failure in 19169 _cairo_scaled_font_subsets_create_internal() call 19170 _cairo_hash_table_destroy() instead of a mere free(). 19171 19172 src/cairo-scaled-font-subsets.c | 2 +- 19173 1 file changed, 1 insertion(+), 1 deletion(-) 19174 19175commit bcfc5f0bdbd4c1eedc22bde5eed464a8bd18211e 19176Author: Chris Wilson <chris@chris-wilson.co.uk> 19177AuthorDate: Fri May 11 20:57:12 2007 +0100 19178Commit: Chris Wilson <chris@chris-wilson.co.uk> 19179CommitDate: Wed May 16 16:06:24 2007 +0100 19180 19181 [pixman] Propagate allocation failure. 19182 19183 pixman_op() failed to propagate the failure from 19184 pixman_region_appendNonO() and the generic op. 19185 19186 pixman/src/pixregion.c | 24 +++++++++++++++++------- 19187 1 file changed, 17 insertions(+), 7 deletions(-) 19188 19189commit 9e99f0611c834f80903e3554663f71682ef59ef3 19190Author: Chris Wilson <chris@chris-wilson.co.uk> 19191AuthorDate: Fri May 11 20:38:24 2007 +0100 19192Commit: Chris Wilson <chris@chris-wilson.co.uk> 19193CommitDate: Wed May 16 16:06:12 2007 +0100 19194 19195 [cairo-traps] Initialize traps to use embedded buffer. 19196 19197 Set the traps to use the embedded buffer during initialization which will 19198 save one redundant _cairo_traps_grow() 19199 19200 src/cairo-traps.c | 26 ++++++-------------------- 19201 1 file changed, 6 insertions(+), 20 deletions(-) 19202 19203commit 35eb65b7772459266e2f954fb370bfdca12b5b64 19204Author: Chris Wilson <chris@chris-wilson.co.uk> 19205AuthorDate: Fri May 11 18:25:13 2007 +0100 19206Commit: Chris Wilson <chris@chris-wilson.co.uk> 19207CommitDate: Wed May 16 15:28:57 2007 +0100 19208 19209 [cairo-path] Check for errors during the count. 19210 19211 Return the nil object if we encounter any error whilst trying to 19212 generate the path. 19213 19214 Also special case the NO_MEMORY error object to return the nil object. 19215 19216 src/cairo-path.c | 10 +++++++++- 19217 1 file changed, 9 insertions(+), 1 deletion(-) 19218 19219commit a60afb0e78ab42498158ef852fcea35c8f71e8ec 19220Author: Chris Wilson <chris@chris-wilson.co.uk> 19221AuthorDate: Fri May 11 16:01:26 2007 +0100 19222Commit: Chris Wilson <chris@chris-wilson.co.uk> 19223CommitDate: Wed May 16 15:21:02 2007 +0100 19224 19225 [cairo-scaled-font] Return status of _cairo_scaled_font_glyph_path() 19226 19227 The status return of _cairo_path_fixed_interpret() was being ignored, 19228 propagate it. 19229 19230 src/cairo-scaled-font.c | 3 +++ 19231 1 file changed, 3 insertions(+) 19232 19233commit d46f6872a5fe601862e2f63455c97a15c4667cf2 19234Author: Behdad Esfahbod <behdad@behdad.org> 19235AuthorDate: Sun May 13 21:52:52 2007 -0400 19236Commit: Behdad Esfahbod <behdad@behdad.org> 19237CommitDate: Sun May 13 21:52:52 2007 -0400 19238 19239 [docs] Update to latest source changes and kill warnings 19240 19241 doc/public/Headers.mk | 1 + 19242 doc/public/Makefile.am | 2 -- 19243 doc/public/cairo-docs.xml | 6 +++--- 19244 3 files changed, 4 insertions(+), 5 deletions(-) 19245 19246commit 40558cb15e5f7276a29847b00c9dae08b9d9380e 19247Author: Chris Wilson <chris@chris-wilson.co.uk> 19248AuthorDate: Sat May 12 10:10:49 2007 +0100 19249Commit: Chris Wilson <chris@chris-wilson.co.uk> 19250CommitDate: Sat May 12 10:11:46 2007 +0100 19251 19252 [cairo-xlib-screen] Clear the gc_needs_clip_reset after use. 19253 19254 After consuming the GC we need to unset the clip reset flag, so that 19255 if we try and get a new GC without first putting a fresh one we do not 19256 try to call XSetClipMask on a NULL GC. 19257 19258 (Fixes http://bugs.freedesktop.org/show_bug.cgi?id=10921) 19259 19260 src/cairo-xlib-screen.c | 4 +++- 19261 1 file changed, 3 insertions(+), 1 deletion(-) 19262 19263commit abba3f2375c58401b7722837b3be37c3de9beca4 19264Author: Chris Wilson <chris@chris-wilson.co.uk> 19265AuthorDate: Thu May 10 23:05:46 2007 +0100 19266Commit: Chris Wilson <chris@chris-wilson.co.uk> 19267CommitDate: Thu May 10 23:05:46 2007 +0100 19268 19269 [valgrind-suppressions] Update to cover XrmGetStringDatabase 19270 19271 By dropping the top frame from suppression, the XrmGetFileDatabase 19272 suppressions will also match XrmGetStringDatabase leaks which are 19273 starting to occur. 19274 19275 test/.valgrind-suppressions | 42 ++++++++++++++---------------------------- 19276 1 file changed, 14 insertions(+), 28 deletions(-) 19277 19278commit c4abc3a0e3ebb27bc0aa178651e496c514eb1fae 19279Author: Chris Wilson <chris@chris-wilson.co.uk> 19280AuthorDate: Thu May 10 21:28:48 2007 +0100 19281Commit: Chris Wilson <chris@chris-wilson.co.uk> 19282CommitDate: Thu May 10 21:29:03 2007 +0100 19283 19284 [cairo-truetype-subset] Set CAIRO_STATUS_NO_MEMORY on malloc failure. 19285 19286 _cairo_truetype_font_create() failed to update the status before 19287 returning after detecting an allocation failure, leaving its callers 19288 none the wishing - and eventually triggering a segmentation fault when 19289 the font was used in anger. 19290 19291 src/cairo-truetype-subset.c | 16 ++++++++++++---- 19292 1 file changed, 12 insertions(+), 4 deletions(-) 19293 19294commit ebababc0cf83f828d48200b8e316f57912fb0128 19295Author: Chris Wilson <chris@chris-wilson.co.uk> 19296AuthorDate: Thu May 10 19:24:54 2007 +0100 19297Commit: Chris Wilson <chris@chris-wilson.co.uk> 19298CommitDate: Thu May 10 21:03:03 2007 +0100 19299 19300 [cairo-pattern] Return the nil cairo_pattern_t for CAIRO_STATUS_NO_MEMORY. 19301 19302 If we asked to create a pattern after encountering an allocation failure, 19303 we can avoid another allocation by returning the nil pattern object. 19304 19305 src/cairo-pattern.c | 3 +++ 19306 1 file changed, 3 insertions(+) 19307 19308commit e8e5f93ffec8321c029c0b95abcb3cd8cadcff31 19309Author: Chris Wilson <chris@chris-wilson.co.uk> 19310AuthorDate: Thu May 10 20:50:58 2007 +0100 19311Commit: Chris Wilson <chris@chris-wilson.co.uk> 19312CommitDate: Thu May 10 20:53:37 2007 +0100 19313 19314 [cairo-meta-surface] Add a surface->status guard to meta_surface_replay() 19315 19316 Before attempting to access the cairo_meta_surface_t specific members, 19317 we need to ensure that _cairo_meta_surface_replay() has received a true 19318 meta surface rather than an error surface (e.g. _cairo_surface_nil). 19319 19320 src/cairo-meta-surface.c | 3 +++ 19321 1 file changed, 3 insertions(+) 19322 19323commit 195112697fac77e70ef36e00a2d557eda1e0e145 19324Author: elaine <elaine.xiong@sun.com> 19325AuthorDate: Thu May 10 13:58:44 2007 -0400 19326Commit: Behdad Esfahbod <behdad@behdad.org> 19327CommitDate: Thu May 10 13:58:44 2007 -0400 19328 19329 [xlib] The buggy_repeat path should be removed for Xsun now 19330 19331 Sun never released a version of Solaris with Xorg with the buggy repeat 19332 problem. This patch was only needed for development versions of Solaris 19333 Nevada (roughly builds 25-30). The latest S10U release and Nevada releases 19334 have a fixed Xorg. So no users should ever encounter this bug. 19335 19336 We need to remove this test because Xsun has the same VendorString and a lower 19337 VendorRelease number so it falsely triggers buggy_repeat to be turned on. 19338 They just added Xrender support recently to Xsun, so this wasn't an issue 19339 before recently. 19340 19341 src/cairo-xlib-surface.c | 3 --- 19342 1 file changed, 3 deletions(-) 19343 19344commit ab6a767cf476c98b466c62dd410d0f61f8dd6bbb 19345Author: Chris Wilson <chris@chris-wilson.co.uk> 19346AuthorDate: Thu May 10 17:17:30 2007 +0100 19347Commit: Chris Wilson <chris@chris-wilson.co.uk> 19348CommitDate: Thu May 10 17:18:27 2007 +0100 19349 19350 [cairo-scaled-font] Check for allocation failure. 19351 19352 cairo_scaled_font_create() returns a nil object on failure whereas a few 19353 callers were checking for NULL. 19354 19355 Secondly review the public entry points for cairo_scaled_font_*() to 19356 ensure that all check that they will not attempt to overwrite the 19357 read-only nil object. 19358 19359 src/cairo-gstate.c | 7 +++---- 19360 src/cairo-scaled-font-subsets.c | 2 ++ 19361 src/cairo-scaled-font.c | 10 ++++++++-- 19362 src/cairo-type1-fallback.c | 2 +- 19363 4 files changed, 14 insertions(+), 7 deletions(-) 19364 19365commit aec92188f1cf4ca34e890b0a4266425532f669d4 19366Author: Chris Wilson <chris@chris-wilson.co.uk> 19367AuthorDate: Thu May 10 09:29:24 2007 +0100 19368Commit: Chris Wilson <chris@chris-wilson.co.uk> 19369CommitDate: Thu May 10 09:30:14 2007 +0100 19370 19371 [cairo-clip] Correctly report allocation failure 19372 19373 Distinguish between the unrepresentable clip and the failure to allocate 19374 the clip extents. 19375 19376 src/cairo-clip.c | 7 +++++-- 19377 1 file changed, 5 insertions(+), 2 deletions(-) 19378 19379commit 1a719d1189243a76120b98371f84e074c8cd611e 19380Author: Chris Wilson <chris@chris-wilson.co.uk> 19381AuthorDate: Thu May 10 09:28:20 2007 +0100 19382Commit: Chris Wilson <chris@chris-wilson.co.uk> 19383CommitDate: Thu May 10 09:30:06 2007 +0100 19384 19385 [cairo] Use _cairo_clip_nil for CAIRO_STATUS_NO_MEMORY 19386 19387 When creating a error clip list for CAIRO_STATUS_NO_MEMORY, simply 19388 reuse the nil object rather than allocate a fresh list. 19389 19390 src/cairo.c | 3 +++ 19391 1 file changed, 3 insertions(+) 19392 19393commit 3fbc4bb5ae27809f417ec2627fa515375e63a0e7 19394Author: Chris Wilson <chris@chris-wilson.co.uk> 19395AuthorDate: Wed May 9 21:41:17 2007 +0100 19396Commit: Chris Wilson <chris@chris-wilson.co.uk> 19397CommitDate: Wed May 9 21:42:15 2007 +0100 19398 19399 [cairo-clip] Add missing error status for _cairo__clip_intersect_region() 19400 19401 An out-of-memory error path missed setting CAIRO_STATUS_NO_MEMORY. 19402 19403 src/cairo-clip.c | 2 ++ 19404 1 file changed, 2 insertions(+) 19405 19406commit b5d25068796d572b4b0c6e33eecc5f0736fb8f78 19407Author: Chris Wilson <chris@chris-wilson.co.uk> 19408AuthorDate: Wed May 9 16:27:42 2007 +0100 19409Commit: Chris Wilson <chris@chris-wilson.co.uk> 19410CommitDate: Wed May 9 16:29:39 2007 +0100 19411 19412 [cairo] cairo_pop_group() returns a NULL pattern 19413 19414 cairo_pop_group() checks for a NULL return from 19415 cairo_pattern_create_for_surface() instead of the nil cairo_pattern_t, 19416 and then returns a NULL pattern instead of the nil object. 19417 19418 src/cairo.c | 6 +++--- 19419 1 file changed, 3 insertions(+), 3 deletions(-) 19420 19421commit 6f09e93ad7ac4c941ba6c72b21ea4536d248f8d5 19422Author: Chris Wilson <chris@chris-wilson.co.uk> 19423AuthorDate: Wed May 9 13:39:08 2007 +0100 19424Commit: Chris Wilson <chris@chris-wilson.co.uk> 19425CommitDate: Wed May 9 16:29:04 2007 +0100 19426 19427 [ciro-surface-fallback] Propagate status for _clip_and_composite_trapezoids 19428 19429 The result of _clip_and_composite_trapezoids() was ignored by 2/3 of 19430 its callers - simply propagate the status. 19431 19432 src/cairo-surface-fallback.c | 28 ++++++++++++++-------------- 19433 1 file changed, 14 insertions(+), 14 deletions(-) 19434 19435commit ae5d4a1c17a46c0a6ea2e4c825ecce7a5cbbe28b 19436Author: Chris Wilson <chris@chris-wilson.co.uk> 19437AuthorDate: Wed May 9 13:19:54 2007 +0100 19438Commit: Chris Wilson <chris@chris-wilson.co.uk> 19439CommitDate: Wed May 9 16:28:52 2007 +0100 19440 19441 [cairo] Return after detecting the invalid font-options. 19442 19443 Do not continue to copy the contents of the nil cairo_font_options_t, 19444 but set the error on the context and return. 19445 19446 src/cairo.c | 4 +++- 19447 1 file changed, 3 insertions(+), 1 deletion(-) 19448 19449commit dfd4d41ac99dbe5d8ea16aa4ce4809b66308c803 19450Author: Chris Wilson <chris@chris-wilson.co.uk> 19451AuthorDate: Wed May 9 12:30:40 2007 +0100 19452Commit: Chris Wilson <chris@chris-wilson.co.uk> 19453CommitDate: Wed May 9 12:56:49 2007 +0100 19454 19455 [cairo-xlib-surface] Free the allocation if we fail to queue the work. 19456 19457 Avoid the leak of the allocated argument if we fail to queue the work to 19458 free the glyph. 19459 19460 src/cairo-xlib-surface.c | 5 ++++- 19461 1 file changed, 4 insertions(+), 1 deletion(-) 19462 19463commit 8ddfc1b2e4aeefb704e05e64661b5c9985788e99 19464Author: Chris Wilson <chris@chris-wilson.co.uk> 19465AuthorDate: Tue May 8 16:13:08 2007 +0100 19466Commit: Chris Wilson <chris@chris-wilson.co.uk> 19467CommitDate: Wed May 9 10:14:20 2007 +0100 19468 19469 [cairo-pattern] Return status from _cairo_pattern_init_copy() 19470 19471 During the copy, allocation of the gradient may fail and so the callers 19472 need to check for a pattern that returned in an error state. No callers 19473 did so and in order to force all callers to check the error status, 19474 the status return was added to _cairo_pattern_init_copy(). The early 19475 error checking may appear redundant for an object with an embedded 19476 structure, however it does fix an error where an uninitialised pattern 19477 was being used: 19478 19479 ==1922== Process terminating with default action of signal 11 (SIGSEGV) 19480 ==1922== Access not within mapped region at address 0x55555555 19481 ==1922== at 0x402CF6F: _cairo_array_index (cairo-array.c:208) 19482 ==1922== by 0x402D4F3: _cairo_user_data_array_fini (cairo-array.c:370) 19483 ==1922== by 0x4046464: _cairo_pattern_fini (cairo-pattern.c:188) 19484 ==1922== by 0x404992A: _cairo_meta_surface_paint (cairo-meta-surface.c:266) 19485 ==1922== by 0x403FCE0: _cairo_surface_paint (cairo-surface.c:1331) 19486 ==1922== by 0x405CB5E: _test_meta_surface_paint (test-meta-surface.c:195) 19487 ==1922== by 0x403FCE0: _cairo_surface_paint (cairo-surface.c:1331) 19488 ==1922== by 0x4032A60: _cairo_gstate_paint (cairo-gstate.c:822) 19489 ==1922== by 0x402B2D1: cairo_paint (cairo.c:1879) 19490 ==1922== by 0x804A4F7: draw (radial-gradient.c:73) 19491 ==1922== by 0x804AFA4: cairo_test_expecting (cairo-test.c:326) 19492 ==1922== by 0x804A57C: main (radial-gradient.c:109) 19493 ==1922== Injected fault at: 19494 ==1922== at 0x4020EA5: malloc (vg_replace_malloc.c:207) 19495 ==1922== by 0x404475C: _cairo_pattern_init_copy (cairo-pattern.c:136) 19496 ==1922== by 0x403F779: _cairo_surface_copy_pattern_for_destination (cairo-surface.c:2153) 19497 ==1922== by 0x403FCC1: _cairo_surface_paint (cairo-surface.c:1328) 19498 ==1922== by 0x405CB5E: _test_meta_surface_paint (test-meta-surface.c:195) 19499 ==1922== by 0x403FCE0: _cairo_surface_paint (cairo-surface.c:1331) 19500 ==1922== by 0x4032A60: _cairo_gstate_paint (cairo-gstate.c:822) 19501 ==1922== by 0x402B2D1: cairo_paint (cairo.c:1879) 19502 ==1922== by 0x804A4F7: draw (radial-gradient.c:73) 19503 ==1922== by 0x804AFA4: cairo_test_expecting (cairo-test.c:326) 19504 ==1922== by 0x804A57C: main (radial-gradient.c:109) 19505 19506 src/cairo-glitz-surface.c | 12 +++++++--- 19507 src/cairo-gstate.c | 55 ++++++++++++++++++++++++++++++++-------------- 19508 src/cairo-meta-surface.c | 6 ++++- 19509 src/cairo-pattern.c | 30 ++++++++++++++++++------- 19510 src/cairo-quartz-surface.c | 6 ++++- 19511 src/cairo-surface.c | 47 +++++++++++++++++++++++++++------------ 19512 src/cairoint.h | 2 +- 19513 7 files changed, 113 insertions(+), 45 deletions(-) 19514 19515commit dbdaf0690e1121d0f810dfb035e7a9f0dae17248 19516Author: Chris Wilson <chris@chris-wilson.co.uk> 19517AuthorDate: Wed May 9 09:22:31 2007 +0100 19518Commit: Chris Wilson <chris@chris-wilson.co.uk> 19519CommitDate: Wed May 9 09:23:57 2007 +0100 19520 19521 [cairo-scaled-font] Check _cairo_scaled_glyph_loop() status 19522 19523 In _cairo_scaled_font_glyph_path() we forgot to check the status return 19524 of _cairo_scaled_glyph_loop() - propagate any failures. 19525 19526 src/cairo-scaled-font.c | 2 ++ 19527 1 file changed, 2 insertions(+) 19528 19529commit b744c2705184c24845423d661258b39bbb17749b 19530Author: James Cloos <cloos@jhcloos.com> 19531AuthorDate: Wed May 9 02:50:59 2007 -0400 19532Commit: Chris Wilson <chris@chris-wilson.co.uk> 19533CommitDate: Wed May 9 09:03:21 2007 +0100 19534 19535 [cairo-directfb-surface] Fix typo from commit a8c8e17d 19536 Fix typo in name of _cairo_directfb_surface_is_similar(). 19537 19538 src/cairo-directfb-surface.c | 2 +- 19539 1 file changed, 1 insertion(+), 1 deletion(-) 19540 19541commit cbc9218cd3f664682bcb5095c602adf9615535d0 19542Author: Chris Wilson <chris@chris-wilson.co.uk> 19543AuthorDate: Wed May 9 09:03:04 2007 +0100 19544Commit: Chris Wilson <chris@chris-wilson.co.uk> 19545CommitDate: Wed May 9 09:03:04 2007 +0100 19546 19547 [cairo-xcb-surface] Fix compilation 19548 19549 As spotted by James Cloos <cloos@jbcloos.com>, I broke the compilation... 19550 This is a minimal fix with no claims of completeness. 19551 19552 src/cairo-xcb-surface.c | 6 +++--- 19553 1 file changed, 3 insertions(+), 3 deletions(-) 19554 19555commit 069514a10ff2ca9ac86cc3dc1703aa19caa538e2 19556Author: Chris Wilson <chris@chris-wilson.co.uk> 19557AuthorDate: Tue May 8 18:19:56 2007 +0100 19558Commit: Chris Wilson <chris@chris-wilson.co.uk> 19559CommitDate: Tue May 8 22:04:51 2007 +0100 19560 19561 [test/in-fill-empty-trapezoid] Cleanup after test failure. 19562 19563 Ensure that the failure path also calls cairo_test_fini(). 19564 19565 test/in-fill-empty-trapezoid.c | 8 +++++--- 19566 1 file changed, 5 insertions(+), 3 deletions(-) 19567 19568commit 43645eb486da1af91b3264af6c84ac18a1eddcaa 19569Author: Chris Wilson <chris@chris-wilson.co.uk> 19570AuthorDate: Tue May 8 20:25:21 2007 +0100 19571Commit: Chris Wilson <chris@chris-wilson.co.uk> 19572CommitDate: Tue May 8 22:04:41 2007 +0100 19573 19574 [test/fallback-resolution] Cleanup after test failure 19575 19576 Be valgrind clean even for test failures. 19577 19578 test/fallback-resolution.c | 6 ++++-- 19579 1 file changed, 4 insertions(+), 2 deletions(-) 19580 19581commit 21c6643b09c771454f913b444b6b040aaaacd3a8 19582Author: Chris Wilson <chris@chris-wilson.co.uk> 19583AuthorDate: Tue May 8 21:28:48 2007 +0100 19584Commit: Chris Wilson <chris@chris-wilson.co.uk> 19585CommitDate: Tue May 8 22:00:54 2007 +0100 19586 19587 [cairo-surface] Check for errors when generating the scaled font. 19588 19589 cairo_surface_show_glyphs() attempts to generate a device specific 19590 scaled font and so needs to check for failure before attempting to use 19591 it. 19592 19593 src/cairo-surface.c | 5 +++++ 19594 1 file changed, 5 insertions(+) 19595 19596commit ede76a97ea5b68c3bd042dc6a93ecb1aa7c9761c 19597Author: Chris Wilson <chris@chris-wilson.co.uk> 19598AuthorDate: Tue May 8 17:26:22 2007 +0100 19599Commit: Chris Wilson <chris@chris-wilson.co.uk> 19600CommitDate: Tue May 8 22:00:46 2007 +0100 19601 19602 [cairo-font-options] Check for the nil-object. 19603 19604 The design is for the user to create a cairo_font_options_t object with 19605 cairo_font_options_create() and then is free to use it with any Cairo 19606 operation. This requires us to check when we may be about to overwrite 19607 the read-only nil object. 19608 19609 src/cairo-font-face.c | 5 +++++ 19610 src/cairo-font-options.c | 7 ++++++- 19611 src/cairo-gstate.c | 4 +--- 19612 src/cairo-scaled-font.c | 10 ++++++++++ 19613 src/cairo-surface.c | 3 +++ 19614 src/cairo.c | 12 ++++++++---- 19615 src/cairoint.h | 3 ++- 19616 7 files changed, 35 insertions(+), 9 deletions(-) 19617 19618commit c441938569ed78123a57662a70ef5a74dcf73851 19619Author: Chris Wilson <chris@chris-wilson.co.uk> 19620AuthorDate: Tue May 8 21:40:26 2007 +0100 19621Commit: Chris Wilson <chris@chris-wilson.co.uk> 19622CommitDate: Tue May 8 21:41:09 2007 +0100 19623 19624 [cairo-pattern] Cleanly handle an invalid pattern in cairo_pattern_transform() 19625 19626 Simply return without writing to potentially read-only members of an 19627 invalid pattern rather than assert. This is cleaner than tracking down 19628 all the error paths that may call into cairo_pattern_transform()... 19629 19630 src/cairo-pattern.c | 3 ++- 19631 1 file changed, 2 insertions(+), 1 deletion(-) 19632 19633commit 409f9734297be250de5e462e2d52e653bd893125 19634Author: Behdad Esfahbod <behdad@behdad.org> 19635AuthorDate: Tue May 8 14:18:42 2007 -0400 19636Commit: Behdad Esfahbod <behdad@behdad.org> 19637CommitDate: Tue May 8 14:18:42 2007 -0400 19638 19639 [test] If a test target fails, end the test 19640 otherwise cairo is left in a dirty state and further tests are 19641 unreliable. 19642 19643 test/cairo-test.c | 6 ++++-- 19644 1 file changed, 4 insertions(+), 2 deletions(-) 19645 19646commit aad66d05fd0f310564e80c9ff59526028871751c 19647Author: Chris Wilson <chris@chris-wilson.co.uk> 19648AuthorDate: Tue May 8 16:40:24 2007 +0100 19649Commit: Chris Wilson <chris@chris-wilson.co.uk> 19650CommitDate: Tue May 8 16:48:47 2007 +0100 19651 19652 [test/nil-surface] Destroy the auxiliary context on failure paths. 19653 19654 Just to be tidy, and aim to be valgrind-clean. 19655 19656 test/nil-surface.c | 5 +++++ 19657 1 file changed, 5 insertions(+) 19658 19659commit e3acacc096d7db947e7c8f2167a6d97f04c403b1 19660Author: Chris Wilson <chris@chris-wilson.co.uk> 19661AuthorDate: Tue May 8 16:35:14 2007 +0100 19662Commit: Chris Wilson <chris@chris-wilson.co.uk> 19663CommitDate: Tue May 8 16:48:34 2007 +0100 19664 19665 [cairo-boilerplate-ps] Destroy the target on creation failure 19666 19667 Remember to destroy the ptc->target as well as the ordinary surface, if 19668 we need to. 19669 19670 boilerplate/cairo-boilerplate-ps.c | 2 ++ 19671 1 file changed, 2 insertions(+) 19672 19673commit efd212bfa25cb44b9499b89f93aa7167a9544ccb 19674Author: Chris Wilson <chris@chris-wilson.co.uk> 19675AuthorDate: Tue May 8 16:23:07 2007 +0100 19676Commit: Chris Wilson <chris@chris-wilson.co.uk> 19677CommitDate: Tue May 8 16:48:21 2007 +0100 19678 19679 [cairo-boilerplate] Protect against the nil cairo_scaled_font_t 19680 19681 Beware the NULL pointer deference when trying to adjust the max glyph 19682 cache size... 19683 19684 boilerplate/cairo-boilerplate.c | 3 +++ 19685 1 file changed, 3 insertions(+) 19686 19687commit b85920684f8feaba8d2d5b0262c60b4960c223b8 19688Author: Chris Wilson <chris@chris-wilson.co.uk> 19689AuthorDate: Tue May 8 14:01:00 2007 +0100 19690Commit: Chris Wilson <chris@chris-wilson.co.uk> 19691CommitDate: Tue May 8 16:47:40 2007 +0100 19692 19693 [cairo-test] Destroy the check image on failure 19694 19695 If drawing the checker pattern should fail, we need to free the 19696 resources allocated locally. 19697 19698 test/cairo-test.c | 4 +++- 19699 1 file changed, 3 insertions(+), 1 deletion(-) 19700 19701commit 0bf3ffacda5dbfc4fd8a5a0d5fd37d9630f5bcdb 19702Author: Chris Wilson <chris@chris-wilson.co.uk> 19703AuthorDate: Tue May 8 13:55:04 2007 +0100 19704Commit: Chris Wilson <chris@chris-wilson.co.uk> 19705CommitDate: Tue May 8 16:47:29 2007 +0100 19706 19707 [test-fallback-surface] Destroy the backing image on malloc failure. 19708 19709 Ensure we free all local resource should we encounter an allocation 19710 failure during _cairo_test_fallback_surface_create(). 19711 19712 src/test-fallback-surface.c | 1 + 19713 1 file changed, 1 insertion(+) 19714 19715commit eac18d44c7559fe393abf6706b52e5a8edbfd5e9 19716Author: Chris Wilson <chris@chris-wilson.co.uk> 19717AuthorDate: Tue May 8 12:46:42 2007 +0100 19718Commit: Chris Wilson <chris@chris-wilson.co.uk> 19719CommitDate: Tue May 8 16:46:54 2007 +0100 19720 19721 [cairo-paginated-surface] Propagate malloc failure 19722 19723 Check for an allocation failure during _cairo_analysis_surface_create() 19724 and propagate to caller - where we discover that the callers themselves 19725 missed the status checks... 19726 19727 src/cairo-paginated-surface.c | 10 ++++++++-- 19728 1 file changed, 8 insertions(+), 2 deletions(-) 19729 19730commit 0d8a1540ec53ecc309a10e77ea7788fcd16d8345 19731Author: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 19732AuthorDate: Tue May 8 09:11:57 2007 +0200 19733Commit: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 19734CommitDate: Tue May 8 09:11:57 2007 +0200 19735 19736 SVG: Don't clip SVG element, as clipping region is implicit. 19737 19738 That makes editing of produced SVG easier. 19739 19740 src/cairo-svg-surface-private.h | 1 + 19741 src/cairo-svg-surface.c | 53 ++++++++++++++++++++--------------------- 19742 2 files changed, 27 insertions(+), 27 deletions(-) 19743 19744commit 936c965777c867bd4de7fd2278335837cc24eb22 19745Author: Jinghua Luo <sunmoon1997@gmail.com> 19746AuthorDate: Tue May 8 13:24:40 2007 +0800 19747Commit: Jinghua Luo <sunmoon1997@gmail.com> 19748CommitDate: Tue May 8 13:24:40 2007 +0800 19749 19750 glitz: kill some compiler warnings. 19751 19752 src/cairo-glitz-surface.c | 11 +++++++++-- 19753 1 file changed, 9 insertions(+), 2 deletions(-) 19754 19755commit 413705872e321288bff1368c62eacad11805c2fc 19756Author: Jinghua Luo <sunmoon1997@gmail.com> 19757AuthorDate: Tue May 8 13:19:35 2007 +0800 19758Commit: Jinghua Luo <sunmoon1997@gmail.com> 19759CommitDate: Tue May 8 13:19:35 2007 +0800 19760 19761 glitz: fix a typo preventing build glitz backend from succeeding. 19762 19763 src/cairo-glitz-surface.c | 2 +- 19764 1 file changed, 1 insertion(+), 1 deletion(-) 19765 19766commit d81907734e18fb9302e78eccb1e25a838223b726 19767Author: Chris Wilson <chris@chris-wilson.co.uk> 19768AuthorDate: Sat May 5 12:33:29 2007 +0100 19769Commit: Chris Wilson <chris@chris-wilson.co.uk> 19770CommitDate: Sat May 5 12:33:29 2007 +0100 19771 19772 [cairo-color] Only compare the shorts for equality. 19773 19774 By only checking the premultiplied shorts inside the cairo_color_t we 19775 only have to compare at most 8 bytes instead of the full 24 bytes. 19776 19777 src/cairo-color.c | 5 ++++- 19778 1 file changed, 4 insertions(+), 1 deletion(-) 19779 19780commit 966a39396eb75d9d4ecc9997bb21d62fba176f78 19781Author: Chris Wilson <chris@chris-wilson.co.uk> 19782AuthorDate: Fri May 4 15:25:18 2007 +0100 19783Commit: Chris Wilson <chris@chris-wilson.co.uk> 19784CommitDate: Fri May 4 15:25:18 2007 +0100 19785 19786 [NEWS] Surface cache for solid patterns 19787 19788 Add an entry describing the surface cache to NEWS. 19789 19790 NEWS | 21 +++++++++++++++++++++ 19791 1 file changed, 21 insertions(+) 19792 19793commit 056d149212ce4999f8984db62b880ff2eb998ab3 19794Author: Chris Wilson <chris@chris-wilson.co.uk> 19795AuthorDate: Wed May 2 12:54:49 2007 +0100 19796Commit: Chris Wilson <chris@chris-wilson.co.uk> 19797CommitDate: Fri May 4 14:29:48 2007 +0100 19798 19799 [cairo-pattern] Don't cache fallback surfaces 19800 19801 _cairo_surface_create_similar_solid() may return an image surface, 19802 should the backend not support the required content or should it 19803 encounter an error whilst creating the surface. In those circumstances 19804 we choose not to cache the fallback surface. 19805 19806 src/cairo-pattern.c | 8 +++++++- 19807 1 file changed, 7 insertions(+), 1 deletion(-) 19808 19809commit a8c8e17d845c7060286dac58b553fb717b270788 19810Author: Chris Wilson <chris@chris-wilson.co.uk> 19811AuthorDate: Wed May 2 10:00:22 2007 +0100 19812Commit: Chris Wilson <chris@chris-wilson.co.uk> 19813CommitDate: Fri May 4 14:29:38 2007 +0100 19814 19815 [cairo-pattern] Cache surface for solid patterns 19816 19817 Original work by Jorn Baayen <jorn@openedhand.com>, 19818 2715f2098127d04d2f9e304580a26cd0842c0e64 19819 19820 We use a small cache of size 16 for surfaces created for solid patterns. 19821 This mainly helps with the X backends where we don't have to create a 19822 pattern for every operation, so we save a lot on X traffic. Xft uses a 19823 similar cache, so cairo's text rendering traffic with the xlib backend 19824 now completely matches that of Xft. 19825 19826 The cache uses an static index variable, which itself acts like a cache of 19827 size 1, remembering the most recently used solid pattern. So repeated 19828 lookups for the same pattern hit immediately. If that fails, the cache is 19829 searched linearly, and if that fails too, a new surface is created and a 19830 random member of the cache is evicted. 19831 19832 A cached surface can only be reused if it is similar to the destination. 19833 In order to check for similar surfaces a new test is introduced for the 19834 backends to determine that the cached surface is as would be returned by 19835 a _create_similar() call for the destination and content. 19836 19837 As surfaces are in general complex encapsulation of graphics state we 19838 only return unshared cached surfaces and reset them (to clear any error 19839 conditions and graphics state). In practice this makes little difference 19840 to the efficacy of the cache during various benchmarks. However, in order 19841 to transparently share solid surfaces it would be possible to implement a 19842 COW scheme. 19843 19844 Cache hit rates: (hit same index + hit in cache) / lookups 19845 cairo-perf: (42346 + 28480) / 159600 = 44.38% 19846 gtk-theme-torturer: (3023 + 3502) / 6528 = 99.95% 19847 gtk-perf: (8270 + 3190) / 21504 = 53.29% 19848 19849 This translates into a reduction of about 25% of the XRENDER traffic during 19850 cairo-perf. 19851 19852 src/cairo-directfb-surface.c | 15 ++++- 19853 src/cairo-glitz-surface.c | 40 +++++++++++- 19854 src/cairo-image-surface.c | 29 ++++++++- 19855 src/cairo-mutex-list-private.h | 3 +- 19856 src/cairo-pattern.c | 135 ++++++++++++++++++++++++++++++++++++----- 19857 src/cairo-pdf-surface.c | 3 + 19858 src/cairo-surface.c | 57 +++++++++++++++++ 19859 src/cairo-win32-surface.c | 29 ++++++++- 19860 src/cairo-xcb-surface.c | 39 +++++++++++- 19861 src/cairo-xlib-surface.c | 45 +++++++++++++- 19862 src/cairoint.h | 16 +++++ 19863 11 files changed, 388 insertions(+), 23 deletions(-) 19864 19865commit 52472b740e821dee444ede1fff041a99d344daab 19866Author: Chris Wilson <chris@chris-wilson.co.uk> 19867AuthorDate: Tue May 1 18:34:47 2007 +0100 19868Commit: Chris Wilson <chris@chris-wilson.co.uk> 19869CommitDate: Fri May 4 14:19:57 2007 +0100 19870 19871 [cairo-xlib-surface] Defer application of clip mask until required. 19872 19873 By deferring the issuing of the X requests to set the clip mask we can 19874 theoretically avoid some redundant requests, but primarily we remove 19875 another path where X requests are emitted. 19876 19877 src/cairo-xlib-surface-private.h | 7 ++++ 19878 src/cairo-xlib-surface.c | 72 +++++++++++++++++++--------------------- 19879 2 files changed, 41 insertions(+), 38 deletions(-) 19880 19881commit a81823cdf9a147d02bb2365558ba667ab52fb3c9 19882Author: Chris Wilson <chris@chris-wilson.co.uk> 19883AuthorDate: Fri Apr 20 17:32:25 2007 +0100 19884Commit: Chris Wilson <chris@chris-wilson.co.uk> 19885CommitDate: Fri May 4 14:17:27 2007 +0100 19886 19887 [cairo-xlib-display] Allocate the close_display hooks from a freelist. 19888 19889 Similar to job allocation, but only useful for toolkits like GTK+ which 19890 recreate a new xlib surface for each expose. 19891 19892 src/cairo-xlib-display.c | 105 +++++++++++++++++++++++++---------------------- 19893 src/cairo-xlib-private.h | 1 + 19894 2 files changed, 57 insertions(+), 49 deletions(-) 19895 19896commit c29ffc64ca341623d21a7861f1b5f131b420d20f 19897Author: Chris Wilson <chris@chris-wilson.co.uk> 19898AuthorDate: Fri Apr 20 16:33:56 2007 +0100 19899Commit: Chris Wilson <chris@chris-wilson.co.uk> 19900CommitDate: Fri May 4 14:14:17 2007 +0100 19901 19902 [cairo-xlib-display] Cache the screen_info for the lifetime of the display. 19903 19904 Hold an extra reference to the screen_info and explicitly destroy the 19905 list of screens on CloseDisplay. 19906 19907 src/cairo-xlib-display.c | 19 +++++++++++++++++++ 19908 src/cairo-xlib-screen.c | 3 +-- 19909 2 files changed, 20 insertions(+), 2 deletions(-) 19910 19911commit 1d6f7b7a0282d1b24bec82d9ad113b0d0a0cde98 19912Author: Chris Wilson <chris@chris-wilson.co.uk> 19913AuthorDate: Thu Apr 19 13:01:52 2007 +0100 19914Commit: Chris Wilson <chris@chris-wilson.co.uk> 19915CommitDate: Fri May 4 14:11:25 2007 +0100 19916 19917 [cairo-xlib] Cache freed GCs 19918 19919 Maintain a cache of freed GCs, one for each used depth. 19920 19921 src/cairo-xlib-display.c | 6 ++++- 19922 src/cairo-xlib-private.h | 10 +++++++ 19923 src/cairo-xlib-screen.c | 70 ++++++++++++++++++++++++++++++++++++++++++++++++ 19924 src/cairo-xlib-surface.c | 22 ++++++++------- 19925 4 files changed, 98 insertions(+), 10 deletions(-) 19926 19927commit 88c6d25d4e53ddad6f3d465b2f5249c76a421b82 19928Author: Chris Wilson <chris@chris-wilson.co.uk> 19929AuthorDate: Tue Apr 17 12:03:07 2007 +0100 19930Commit: Chris Wilson <chris@chris-wilson.co.uk> 19931CommitDate: Fri May 4 14:08:20 2007 +0100 19932 19933 [cairo-xlib-surface] Defer xlib resource cleanup. 19934 19935 Due to caching, destruction of X11 resources may occur outside of a 19936 usable X11 context. To avoid this, we defer the destruction onto a work 19937 queue which will be run the next time we try to use the X11 connection 19938 on behalf of the user (at which point we must have a usable X11 context!) 19939 or we are closing the Display. 19940 19941 src/cairo-xlib-surface.c | 180 ++++++++++++++++++++++++++++++++++++++++------- 19942 1 file changed, 156 insertions(+), 24 deletions(-) 19943 19944commit 8ad30ccdb0a00701b15003edb2fe0cd4a8a9dfb7 19945Author: Chris Wilson <chris@chris-wilson.co.uk> 19946AuthorDate: Thu Apr 19 12:15:04 2007 +0100 19947Commit: Chris Wilson <chris@chris-wilson.co.uk> 19948CommitDate: Fri May 4 14:06:01 2007 +0100 19949 19950 [cairo-xlib] Introduce a workqueue for deferred destruction of X resources. 19951 19952 Due to the nature of the reference counting, an X resource may be 19953 destroyed later than anticipated and possibly from a different thread 19954 than the original context. This becomes an issue for applications that 19955 carefully manage their single X connection from a single thread and do 19956 not use locking and are then suprised when cairo triggers X traffic when 19957 performing work for a different part of the application in another thread. 19958 19959 src/cairo-xlib-display.c | 171 ++++++++++++++++++++++++++++++++++++++++++++++- 19960 src/cairo-xlib-private.h | 18 +++++ 19961 src/cairo-xlib-screen.c | 1 - 19962 src/cairo-xlib-surface.c | 21 +++++- 19963 4 files changed, 205 insertions(+), 6 deletions(-) 19964 19965commit dd8681b76b088bab45c99510258920f027490f70 19966Author: Chris Wilson <chris@chris-wilson.co.uk> 19967AuthorDate: Mon Apr 16 15:04:08 2007 +0100 19968Commit: Chris Wilson <chris@chris-wilson.co.uk> 19969CommitDate: Fri May 4 14:02:28 2007 +0100 19970 19971 [cairo-xlib] Split per-display attributes from per-screen. 19972 19973 Previously, we stored the per-display attributes inside a special 19974 screen=NULL _cairo_xlib_screen_info_t. Now we keep track of known X 19975 displays and store the screen information beneath the display structure 19976 alongside the per-display hooks. 19977 19978 src/Makefile.am | 8 +- 19979 src/cairo-debug.c | 4 - 19980 src/cairo-mutex-list-private.h | 2 +- 19981 src/cairo-xlib-display.c | 258 ++++++++++++++++++++++++++++++++++ 19982 src/cairo-xlib-private.h | 37 +++-- 19983 src/cairo-xlib-screen.c | 309 +++++++++-------------------------------- 19984 src/cairo-xlib-surface.c | 2 +- 19985 src/cairoint.h | 6 - 19986 8 files changed, 359 insertions(+), 267 deletions(-) 19987 19988commit 9919f1ed9ccbec637252e06dd1de5f4665c873b4 19989Author: Behdad Esfahbod <behdad@behdad.org> 19990AuthorDate: Thu May 3 19:54:31 2007 -0400 19991Commit: Behdad Esfahbod <behdad@behdad.org> 19992CommitDate: Thu May 3 19:54:31 2007 -0400 19993 19994 [TODO] Add link to cairo_copy_clip() proposal 19995 19996 TODO | 1 + 19997 1 file changed, 1 insertion(+) 19998 19999commit e5d9d51e55eb45704de6d98ac9265743af56711f 20000Author: Behdad Esfahbod <behdad@behdad.org> 20001AuthorDate: Thu May 3 19:04:21 2007 -0400 20002Commit: Behdad Esfahbod <behdad@behdad.org> 20003CommitDate: Thu May 3 19:04:21 2007 -0400 20004 20005 [cairo-mutex] Fix typo. 20006 20007 src/cairo-mutex.c | 8 ++++---- 20008 1 file changed, 4 insertions(+), 4 deletions(-) 20009 20010commit 5ec27eef9566faa22fb1cbaf1a103a57ba5296c8 20011Author: Chris Wilson <chris@chris-wilson.co.uk> 20012AuthorDate: Thu May 3 13:46:25 2007 +0100 20013Commit: Chris Wilson <chris@chris-wilson.co.uk> 20014CommitDate: Thu May 3 13:46:25 2007 +0100 20015 20016 [pixman] Free the old rects if we fail to allocate new. 20017 20018 During the pixman_op, a complicated dance is performed to handle 20019 enlarging the rectangle array to accommodate the op. One consequence 20020 of this is to, under certain circumstances, replace the current 20021 rectangle array with emptyData and track the old array with oldData. 20022 Hence if we fail to realloc the enlarged array we need to free oldData. 20023 20024 pixman/src/pixregion.c | 8 ++++++-- 20025 1 file changed, 6 insertions(+), 2 deletions(-) 20026 20027commit ef3070821713c33fab78abb191e27a62e165f6c6 20028Author: Behdad Esfahbod <behdad@behdad.org> 20029AuthorDate: Wed May 2 16:22:13 2007 -0400 20030Commit: Behdad Esfahbod <behdad@behdad.org> 20031CommitDate: Wed May 2 16:22:44 2007 -0400 20032 20033 [boilerplate] Fix typo 20034 20035 boilerplate/xmalloc.h | 2 +- 20036 1 file changed, 1 insertion(+), 1 deletion(-) 20037 20038commit c412e42c72c0ff53c678119638357ed95897ed78 20039Author: Chris Wilson <chris@chris-wilson.co.uk> 20040AuthorDate: Wed May 2 21:17:39 2007 +0100 20041Commit: Chris Wilson <chris@chris-wilson.co.uk> 20042CommitDate: Wed May 2 21:17:39 2007 +0100 20043 20044 [cairo-xlib-surface] Check that the acquire surfaces are xlib surfaces 20045 20046 _cairo_pattern_acquire_surfaces() may substitute an image surface for 20047 either the source or the mask should the backend not support creation 20048 of similar scratch surfaces or an error occurs during creation. For 20049 composition we require xlib surfaces and so we must trigger the 20050 fallback path if this happens. 20051 20052 src/cairo-xlib-surface.c | 10 ++++++++++ 20053 1 file changed, 10 insertions(+) 20054 20055commit f3153091b742daffa853f2c31b76aa9689c5165a 20056Author: Behdad Esfahbod <behdad@behdad.org> 20057AuthorDate: Tue May 1 20:10:39 2007 -0400 20058Commit: Behdad Esfahbod <behdad@behdad.org> 20059CommitDate: Tue May 1 20:10:39 2007 -0400 20060 20061 [cairo-mutex] Document the API for adding cairo_mutex_t implementations 20062 20063 src/cairo-mutex-type-private.h | 83 ++++++++++++++++++++++++++++++++++++++++++ 20064 1 file changed, 83 insertions(+) 20065 20066commit 5bfd6553fd028f1429d72c60d04788de4a3c0d58 20067Author: Behdad Esfahbod <behdad@behdad.org> 20068AuthorDate: Tue May 1 19:48:33 2007 -0400 20069Commit: Behdad Esfahbod <behdad@behdad.org> 20070CommitDate: Tue May 1 19:48:33 2007 -0400 20071 20072 [cairo-mutex] Define a NOOP CAIRO_MUTEX_FINALIZE() for pthread 20073 as now the mutex layer will define a generic CAIRO_MUTEX_FINALIZE() 20074 whenever the implementation defines CAIRO_MUTEX_FINI(). In the 20075 case of pthread however we don't need finalization as we don't 20076 have any place to call it, and pthread_mutex_destroy() doesn't 20077 do much anyway. 20078 20079 src/cairo-mutex-type-private.h | 1 + 20080 1 file changed, 1 insertion(+) 20081 20082commit c4e0a059feb9c2e0c32966dcb168861e75a244b7 20083Author: Behdad Esfahbod <behdad@behdad.org> 20084AuthorDate: Tue May 1 19:46:51 2007 -0400 20085Commit: Behdad Esfahbod <behdad@behdad.org> 20086CommitDate: Tue May 1 19:46:51 2007 -0400 20087 20088 [cairo-mutex] Remove NOOP definition of CAIRO_MUTEX_INITIALIZE 20089 as now the mutex layer will use a NOOP CAIRO_MUTEX_INITIALIZE 20090 by default if the implementation does not define CAIRO_MUTEX_INIT. 20091 20092 src/cairo-mutex-type-private.h | 1 - 20093 1 file changed, 1 deletion(-) 20094 20095commit 06cc74d974a99526829df558606174b41b0ee6e1 20096Author: Behdad Esfahbod <behdad@behdad.org> 20097AuthorDate: Tue May 1 19:45:29 2007 -0400 20098Commit: Behdad Esfahbod <behdad@behdad.org> 20099CommitDate: Tue May 1 19:45:29 2007 -0400 20100 20101 [cairo-mutex] Rewrite defaults for CAIRO_MUTEX macros not defined by the implementation 20102 to make them better match the design I have in mind, that I will 20103 document in a minute. They are a lot more readable and understandable 20104 now. 20105 20106 src/cairo-mutex-private.h | 93 ++++++++++++++++++++++++++++++++++------------- 20107 src/cairo-mutex.c | 18 +++++++-- 20108 2 files changed, 82 insertions(+), 29 deletions(-) 20109 20110commit e87a25dc7c73a44b0cdfc4ef368736e7f77fb522 20111Author: Behdad Esfahbod <behdad@behdad.org> 20112AuthorDate: Tue May 1 19:24:26 2007 -0400 20113Commit: Behdad Esfahbod <behdad@behdad.org> 20114CommitDate: Tue May 1 19:24:26 2007 -0400 20115 20116 [cairo-mutex] Fix usage of CAIRO_MUTEX_DECLARE() 20117 20118 Previously cairo-mutex.c was abusing cairo-mutex-private.h by 20119 defining CAIRO_MUTEX_DECLARE before including it, and 20120 cairo-mutex-private.h was simply not overriding any available 20121 CAIRO_MUTEX_DECLARE. This is not the way it should be. 20122 cairo-mutex.c should instead define CAIRO_MUTEX_DECLARE and 20123 include cairo-mutex-list-private.h for itself. 20124 20125 src/cairo-mutex-private.h | 4 +--- 20126 src/cairo-mutex.c | 9 +++++---- 20127 2 files changed, 6 insertions(+), 7 deletions(-) 20128 20129commit 1a33e44aa5d73f568c4164c41f9595964e9f1bbb 20130Author: Behdad Esfahbod <behdad@behdad.org> 20131AuthorDate: Tue May 1 18:13:19 2007 -0400 20132Commit: Behdad Esfahbod <behdad@behdad.org> 20133CommitDate: Tue May 1 19:20:06 2007 -0400 20134 20135 [RELEASING] Update GNOME URL to point to 2.19 planning page 20136 20137 RELEASING | 2 +- 20138 1 file changed, 1 insertion(+), 1 deletion(-) 20139 20140commit 4764e6222bf4d5223fc2fbb139bb31a24819b2b5 20141Author: Behdad Esfahbod <behdad@behdad.org> 20142AuthorDate: Tue May 1 00:50:03 2007 -0400 20143Commit: Behdad Esfahbod <behdad@behdad.org> 20144CommitDate: Tue May 1 19:20:06 2007 -0400 20145 20146 [cairo-mutex] Improve error message if no thread implementation found 20147 20148 to put back Carl's "acknowledge and accept" clause (!) before suggesting 20149 use of CAIRO_NO_MUTEX. 20150 20151 src/cairo-mutex-type-private.h | 4 ++-- 20152 1 file changed, 2 insertions(+), 2 deletions(-) 20153 20154commit b5f015f21f3c800919a85f03a081a3ec1648a794 20155Author: Behdad Esfahbod <behdad@behdad.org> 20156AuthorDate: Tue May 1 00:48:33 2007 -0400 20157Commit: Behdad Esfahbod <behdad@behdad.org> 20158CommitDate: Tue May 1 19:20:06 2007 -0400 20159 20160 [cairo-mutex] Make sure mutex implementation declares enough macros 20161 20162 We have defaults for the rest. 20163 20164 src/cairo-mutex-private.h | 11 +++++++++++ 20165 1 file changed, 11 insertions(+) 20166 20167commit b0a0a1779dc5cc16423473b6d80ee5099793a47f 20168Author: Behdad Esfahbod <behdad@behdad.org> 20169AuthorDate: Tue May 1 00:47:02 2007 -0400 20170Commit: Behdad Esfahbod <behdad@behdad.org> 20171CommitDate: Tue May 1 19:20:05 2007 -0400 20172 20173 [cairo-mutex] Make CAIRO_MUTEX_INIT/FINI take mutex object, not pointer to it 20174 20175 This is more consistent with CAIRO_MUTEX_LOCK/UNLOCK. 20176 20177 src/cairo-ft-font.c | 4 ++-- 20178 src/cairo-mutex-private.h | 2 +- 20179 src/cairo-mutex-type-private.h | 19 +++++++------------ 20180 src/cairo-mutex.c | 4 ++-- 20181 src/cairo-scaled-font.c | 4 ++-- 20182 5 files changed, 14 insertions(+), 19 deletions(-) 20183 20184commit f9154f7eda4272ff99cc8a894082cc5aa1b008ef 20185Author: Behdad Esfahbod <behdad@behdad.org> 20186AuthorDate: Tue May 1 00:44:42 2007 -0400 20187Commit: Behdad Esfahbod <behdad@behdad.org> 20188CommitDate: Tue May 1 19:20:05 2007 -0400 20189 20190 [cairo-mutex] Make sure CAIRO_MUTEX_FINI() evaluates its argument once 20191 20192 src/cairo-mutex-private.h | 2 +- 20193 src/cairo-mutex-type-private.h | 3 ++- 20194 2 files changed, 3 insertions(+), 2 deletions(-) 20195 20196commit a8d47d0c001a36ddd6c9f09247e6eada408edb24 20197Author: Behdad Esfahbod <behdad@behdad.org> 20198AuthorDate: Tue May 1 00:43:15 2007 -0400 20199Commit: Behdad Esfahbod <behdad@behdad.org> 20200CommitDate: Tue May 1 19:20:05 2007 -0400 20201 20202 [cairo-mutex] Rename macro arguments from "name" to "mutex" 20203 20204 src/cairo-mutex-private.h | 6 +++--- 20205 src/cairo-mutex-type-private.h | 20 ++++++++++---------- 20206 src/cairo-mutex.c | 4 ++-- 20207 3 files changed, 15 insertions(+), 15 deletions(-) 20208 20209commit f57a536fceec73435bb13c44275717792b9b3a8c 20210Author: Carl Worth <cworth@cworth.org> 20211AuthorDate: Tue May 1 13:45:58 2007 -0700 20212Commit: Carl Worth <cworth@cworth.org> 20213CommitDate: Tue May 1 13:45:58 2007 -0700 20214 20215 Increment version to 1.4.7 after the 1.4.6 release 20216 20217 configure.in | 2 +- 20218 1 file changed, 1 insertion(+), 1 deletion(-) 20219 20220commit ddca8fec07ff95caeda6e4ce9efc3239b146bd2d 20221Author: Carl Worth <cworth@cworth.org> 20222AuthorDate: Tue May 1 13:37:16 2007 -0700 20223Commit: Carl Worth <cworth@cworth.org> 20224CommitDate: Tue May 1 13:37:16 2007 -0700 20225 20226 perf: Add $(EXTRA_PROGRAMS) to CLEANFILES 20227 20228 Otherwise these programs stick around and break distclean, 20229 distcheck, and hence release-publish targets. 20230 20231 perf/Makefile.am | 1 + 20232 1 file changed, 1 insertion(+) 20233 20234commit 0390ed4f189365d595b40a45b0cf9eef5aa0c6ba 20235Author: Carl Worth <cworth@cworth.org> 20236AuthorDate: Tue May 1 13:24:43 2007 -0700 20237Commit: Carl Worth <cworth@cworth.org> 20238CommitDate: Tue May 1 13:24:43 2007 -0700 20239 20240 Increment version to 1.4.6 (and library versioning to 13:3:11) 20241 20242 configure.in | 4 ++-- 20243 1 file changed, 2 insertions(+), 2 deletions(-) 20244 20245commit c9e0bb5c79abfc50ae6a24f603c5493c3ac68e40 20246Author: Carl Worth <cworth@cworth.org> 20247AuthorDate: Tue May 1 13:20:56 2007 -0700 20248Commit: Carl Worth <cworth@cworth.org> 20249CommitDate: Tue May 1 13:20:56 2007 -0700 20250 20251 NEWS: Add notes for cairo 1.4.6 20252 20253 NEWS | 116 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 20254 1 file changed, 116 insertions(+) 20255 20256commit 7f7f4d4f35cd640733b990fcff924a090b43d360 20257Author: Chris Wilson <chris@chris-wilson.co.uk> 20258AuthorDate: Tue May 1 12:37:38 2007 +0100 20259Commit: Chris Wilson <chris@chris-wilson.co.uk> 20260CommitDate: Tue May 1 12:37:38 2007 +0100 20261 20262 [cairo-xlib-surface.c] Free the Pixmap on surface construction failure. 20263 20264 If we create the Pixmap whilst constructing a similar xlib surface, then 20265 it our responsibility to free the Pixmap should we fail to allocate the 20266 surface. 20267 20268 src/cairo-xlib-surface.c | 2 ++ 20269 1 file changed, 2 insertions(+) 20270 20271commit 3e3bd4df7e810a9acd14cd6f3717633f71691b9e 20272Author: Chris Wilson <chris@chris-wilson.co.uk> 20273AuthorDate: Tue May 1 11:28:45 2007 +0100 20274Commit: Chris Wilson <chris@chris-wilson.co.uk> 20275CommitDate: Tue May 1 11:28:45 2007 +0100 20276 20277 Minor typo in cairo_surface_destroy() documentation. 20278 20279 The type of @surface is #cairo_surface_t, not #cairo_t. 20280 20281 src/cairo-surface.c | 2 +- 20282 1 file changed, 1 insertion(+), 1 deletion(-) 20283 20284commit f7cdbd385a02d023e35357cd27dcc165ada667f2 20285Author: Behdad Esfahbod <behdad@behdad.org> 20286AuthorDate: Tue May 1 00:41:07 2007 -0400 20287Commit: Behdad Esfahbod <behdad@behdad.org> 20288CommitDate: Tue May 1 00:41:47 2007 -0400 20289 20290 [cairo-mutex-private.h] Move implementation-specific parts to cairo-mutex-type-private.h 20291 20292 This fixes the problem reported by Dave Yeo that boilerplate wasn't building: 20293 20294 In file included from ../src/cairo-scaled-font-private.h:44, 20295 from cairo-boilerplate.c:65: 20296 ../src/cairo-mutex-private.h:183: error: syntax error before "extern" 20297 ../src/cairo-mutex-private.h:184: error: syntax error before "void" 20298 ../src/cairo-mutex-private.h:185: error: syntax error before "void" 20299 make[3]: *** [cairo-boilerplate.lo] Error 1 20300 20301 src/Makefile.am | 1 + 20302 src/cairo-mutex-private.h | 81 +------------------------ 20303 src/cairo-mutex-type-private.h | 131 ++++++++++++++++++++++++++++++++++++++++ 20304 src/cairo-scaled-font-private.h | 2 +- 20305 4 files changed, 135 insertions(+), 80 deletions(-) 20306 20307commit 6de0f2d15775a451ead2cc3e80530b7dc6b321a3 20308Author: Behdad Esfahbod <behdad@behdad.org> 20309AuthorDate: Mon Apr 30 22:38:00 2007 -0400 20310Commit: Behdad Esfahbod <behdad@behdad.org> 20311CommitDate: Mon Apr 30 22:38:00 2007 -0400 20312 20313 [cairo-mutex] Fix CAIRO_MUTEX_FINALIZE definition to take parantheses 20314 This was breaking build on some systems as reported by Adrian Johnson 20315 on the list. 20316 20317 src/cairo-mutex-private.h | 2 +- 20318 1 file changed, 1 insertion(+), 1 deletion(-) 20319 20320commit 3f297a0fccb01f4e10a093ddc44a25a937364447 20321Author: Behdad Esfahbod <behdad@behdad.org> 20322AuthorDate: Mon Apr 30 22:00:31 2007 -0400 20323Commit: Behdad Esfahbod <behdad@behdad.org> 20324CommitDate: Mon Apr 30 22:00:31 2007 -0400 20325 20326 [TODO] Add various items discussed recently 20327 20328 TODO | 13 ++++++++++++- 20329 1 file changed, 12 insertions(+), 1 deletion(-) 20330 20331commit 51440ad9027bd9ccf7d987c234995470f7699043 20332Author: Behdad Esfahbod <behdad@behdad.org> 20333AuthorDate: Mon Apr 30 21:57:29 2007 -0400 20334Commit: Behdad Esfahbod <behdad@behdad.org> 20335CommitDate: Mon Apr 30 21:57:29 2007 -0400 20336 20337 [ROADMAP] Mark clipping trapezoids done 20338 20339 ROADMAP | 2 +- 20340 1 file changed, 1 insertion(+), 1 deletion(-) 20341 20342commit 8ea48710dc933cd5dd52fb7d0c29eb8994a5d160 20343Author: Behdad Esfahbod <behdad@behdad.org> 20344AuthorDate: Mon Apr 30 19:20:56 2007 -0400 20345Commit: Behdad Esfahbod <behdad@behdad.org> 20346CommitDate: Mon Apr 30 19:20:56 2007 -0400 20347 20348 [perf] Check availability before including nonstandard headers 20349 20350 configure.in | 4 ++++ 20351 perf/cairo-perf-diff-files.c | 2 ++ 20352 perf/cairo-perf.c | 6 +++++- 20353 3 files changed, 11 insertions(+), 1 deletion(-) 20354 20355commit fbc8bf05033a652d26c1defa56d12183e4009870 20356Author: Behdad Esfahbod <behdad@behdad.org> 20357AuthorDate: Mon Apr 30 19:11:31 2007 -0400 20358Commit: Behdad Esfahbod <behdad@behdad.org> 20359CommitDate: Mon Apr 30 19:11:31 2007 -0400 20360 20361 [perf] Don't build cairo-perf in "make all" 20362 20363 perf/Makefile.am | 2 +- 20364 1 file changed, 1 insertion(+), 1 deletion(-) 20365 20366commit 4be608399f0d196a792f84fe4ddfce9acd2ea943 20367Author: Adrian Johnson <ajohnson@redneon.com> 20368AuthorDate: Sun Apr 29 19:29:24 2007 +0930 20369Commit: Carl Worth <cworth@cworth.org> 20370CommitDate: Mon Apr 30 14:38:19 2007 -0700 20371 20372 Fix cygwin compile error 20373 20374 The WINVER macros need to be defined before including <windows.h>. 20375 As a result of some recent include file rearranging, <windows.h> 20376 was included indirectly before WINVER was defined. 20377 20378 src/cairo-mutex-private.h | 12 ------------ 20379 src/cairo-win32-surface.c | 11 ++++++----- 20380 2 files changed, 6 insertions(+), 17 deletions(-) 20381 20382commit a5d1fc923fdef354ceed8478c93e8b7cb734158a 20383Author: Chris Wilson <chris@chris-wilson.co.uk> 20384AuthorDate: Mon Apr 30 16:05:36 2007 +0100 20385Commit: Chris Wilson <chris@chris-wilson.co.uk> 20386CommitDate: Mon Apr 30 16:06:47 2007 +0100 20387 20388 Free all memory when cairo-perf exits. 20389 20390 Similar to cairo-test, we free any global memory used by cairo for its 20391 caches through the debug interfaces. We do this so that valgrind does 20392 not unnecessary warn about memory leaks for the cached data and any true 20393 leak is then not lost in the noise. 20394 20395 perf/cairo-perf.c | 19 +++++++++++++++++++ 20396 1 file changed, 19 insertions(+) 20397 20398commit 7e6ab5461c2eb75c948bcb4725613ebe826c697a 20399Author: Carl Worth <cworth@cworth.org> 20400AuthorDate: Sat Apr 28 07:46:56 2007 -0700 20401Commit: Carl Worth <cworth@cworth.org> 20402CommitDate: Sat Apr 28 07:46:56 2007 -0700 20403 20404 Add missing prototypes for getline and strndup 20405 20406 This is needed to prevent breaking the build for non-GNU systems. 20407 20408 perf/cairo-perf-diff-files.c | 12 ++++++++++-- 20409 1 file changed, 10 insertions(+), 2 deletions(-) 20410 20411commit 422798db1d73c1a8ecc5877133b0325023f38e61 20412Author: Carl Worth <cworth@cworth.org> 20413AuthorDate: Sat Apr 28 07:46:15 2007 -0700 20414Commit: Carl Worth <cworth@cworth.org> 20415CommitDate: Sat Apr 28 07:46:15 2007 -0700 20416 20417 cairo-perf-diff-files: Add missing include of libgen.h for basename 20418 20419 perf/cairo-perf-diff-files.c | 1 + 20420 1 file changed, 1 insertion(+) 20421 20422commit d89d8e6b45b7c13b77aa7c2f1c480f58429b08af 20423Author: Carl Worth <cworth@cworth.org> 20424AuthorDate: Sat Apr 28 07:45:26 2007 -0700 20425Commit: Carl Worth <cworth@cworth.org> 20426CommitDate: Sat Apr 28 07:45:26 2007 -0700 20427 20428 pixman.h: Add missing definition of WARN_UNUSED_RESULT 20429 20430 This was breaking the build on systems without support for the 20431 __warn_unused_result__ attribute. 20432 20433 pixman/src/pixman.h | 3 +++ 20434 1 file changed, 3 insertions(+) 20435 20436commit cb6fcdae92503964448144413e48ac388861d95f 20437Author: Carl Worth <cworth@cworth.org> 20438AuthorDate: Sat Apr 28 07:38:56 2007 -0700 20439Commit: Carl Worth <cworth@cworth.org> 20440CommitDate: Sat Apr 28 07:38:56 2007 -0700 20441 20442 Fix typo in Makefile preventing builds from succeeding 20443 20444 The cairo-ps-surface-private.h file was not getting included in the 20445 distribution. 20446 20447 src/Makefile.am | 2 +- 20448 1 file changed, 1 insertion(+), 1 deletion(-) 20449 20450commit a392cc85081dd1e0fa3342c313af94a1e0c289b1 20451Author: Carl Worth <cworth@cworth.org> 20452AuthorDate: Fri Apr 27 22:46:47 2007 -0700 20453Commit: Carl Worth <cworth@cworth.org> 20454CommitDate: Fri Apr 27 22:46:47 2007 -0700 20455 20456 Clarify documentation of cairo_in_stroke and cairo_in_fill 20457 20458 Like cairo_stroke_extents and cairo_fill_extents, these functions 20459 work without regard to the surface dimensions or the current clip 20460 region. 20461 20462 src/cairo.c | 6 ++++-- 20463 1 file changed, 4 insertions(+), 2 deletions(-) 20464 20465commit 8286b8741675ae163fc40187cd04e84395954c6e 20466Author: Carl Worth <cworth@cworth.org> 20467AuthorDate: Fri Apr 27 17:23:08 2007 -0700 20468Commit: Carl Worth <cworth@cworth.org> 20469CommitDate: Fri Apr 27 22:44:27 2007 -0700 20470 20471 Clip trapezoids that are partially (or wholly) outside the clip region. 20472 20473 It's quite simple to add a new _cairo_traps_limit call which installs 20474 a box into the cairo_traps_t structure. Then at the time of 20475 _cairo_traps_add we can discard any trapezoid that is wholly outside 20476 the box and also clip any trapezoid that is partially outside the box. 20477 20478 We take advantage of this for both cairo_stroke and cairo_fill, (when 20479 cairo is computing the trapezoids in cairo-surface-fallback.c). Note 20480 that we explicitly do not do any clipping for cairo_stroke_extents, 20481 cairo_fill_extents, cairo_in_stroke, or cairo_in_fill which are 20482 defined to ignore clipping. 20483 20484 As seen by the long-lines perf case, this fix successfully works 20485 around the bug in the X server where it creates overly large masks for 20486 partially-outside-the-destination-surface trapezoids: 20487 20488 xlib-rgba long-lines-uncropped-100 545.84 -> 5.83: 93.09x speedup 20489 ██████████████████████████████████████████████ 20490 xlib-rgb long-lines-uncropped-100 554.74 -> 8.10: 69.04x speedup 20491 ██████████████████████████████████ 20492 20493 src/cairo-surface-fallback.c | 52 +++++++++++++++++++++++++++++++++ 20494 src/cairo-traps.c | 68 +++++++++++++++++++++++++++++++++++++++++++- 20495 src/cairoint.h | 7 +++++ 20496 3 files changed, 126 insertions(+), 1 deletion(-) 20497 20498commit 2dcfb944b044172640a3784246d6b3129b686b60 20499Author: Carl Worth <cworth@cworth.org> 20500AuthorDate: Fri Apr 27 16:41:17 2007 -0700 20501Commit: Carl Worth <cworth@cworth.org> 20502CommitDate: Fri Apr 27 16:41:17 2007 -0700 20503 20504 Don't test PDF tests known to fail due to poppler limitations 20505 20506 The following four tests are disabled: 20507 20508 gradient-alpha, linear-gradient, text-pattern, trap-clip 20509 20510 We don't use XFAIL as that would disable all backends, (but 20511 we can still usefully use these tests on backends other than 20512 PDF). 20513 20514 boilerplate/cairo-boilerplate-pdf.c | 15 +++++++++++++++ 20515 test/gradient-alpha.c | 3 ++- 20516 test/linear-gradient.c | 3 ++- 20517 test/text-pattern.c | 3 ++- 20518 test/trap-clip.c | 3 ++- 20519 5 files changed, 23 insertions(+), 4 deletions(-) 20520 20521commit 179e3399101b5a0daa907dcfe1f9f11ae8fe691e 20522Author: Adrian Johnson <ajohnson@redneon.com> 20523AuthorDate: Fri Apr 27 16:01:56 2007 -0700 20524Commit: Carl Worth <cworth@cworth.org> 20525CommitDate: Fri Apr 27 16:13:01 2007 -0700 20526 20527 PDF: Change CTM to identity 20528 20529 Some PDF viewers forget the CTM when drawing gradient patterns 20530 with SMasks. This patch works around these bugs by using the default 20531 identity matrix for the CTM. All paths are transformed from 20532 cairo to pdf coordinates before writing to the pdf file. 20533 20534 src/cairo-pdf-surface-private.h | 1 + 20535 src/cairo-pdf-surface.c | 135 ++++++++++++++++++++-------------------- 20536 2 files changed, 67 insertions(+), 69 deletions(-) 20537 20538commit 1816d7c590ae4d423f9314a8a7794e2cae854da3 20539Author: Adrian Johnson <ajohnson@redneon.com> 20540AuthorDate: Fri Apr 27 09:49:45 2007 -0700 20541Commit: Carl Worth <cworth@cworth.org> 20542CommitDate: Fri Apr 27 16:12:55 2007 -0700 20543 20544 Add support for transparent gradients 20545 20546 This is based on the gradient patch written by Miklós Erdélyi at 20547 http://lists.freedesktop.org/archives/cairo/2006-August/007648.html 20548 20549 Currently only EXTEND_NONE and EXTEND_PAD are supported. Other extend 20550 types will go through the image fallback path. 20551 20552 src/cairo-pdf-surface-private.h | 13 + 20553 src/cairo-pdf-surface.c | 950 +++++++++++++++++++++++++++++++--------- 20554 2 files changed, 752 insertions(+), 211 deletions(-) 20555 20556commit 050dad71734739f1eaf8976ca5bb88e47c76409c 20557Author: Carl Worth <cworth@cworth.org> 20558AuthorDate: Thu Apr 26 11:30:27 2007 -0700 20559Commit: Carl Worth <cworth@cworth.org> 20560CommitDate: Thu Apr 26 11:30:27 2007 -0700 20561 20562 cairo-perf-diff-files: Always print old and new configuration names 20563 20564 Previously, if the change in the first test case was small enough 20565 to be considered insignificant, then the header lines showing the 20566 names of the old and new configurations would be omitted. This 20567 commit fixes that bug. 20568 20569 perf/cairo-perf-diff-files.c | 12 ++++++------ 20570 1 file changed, 6 insertions(+), 6 deletions(-) 20571 20572commit 6035d3b47e635f53b361dc7924e161a214e038b3 20573Author: Carl Worth <cworth@cworth.org> 20574AuthorDate: Wed Apr 25 16:28:14 2007 -0700 20575Commit: Carl Worth <cworth@cworth.org> 20576CommitDate: Wed Apr 25 16:28:14 2007 -0700 20577 20578 cairo-perf-diff: Repair command-line option parsing. 20579 20580 Apparently --force and --html have been broken since the attempt 20581 to address --help in ef5611df6c6bc8d9c6877af3a59c66fa6fc5c13a . 20582 20583 perf/cairo-perf-diff | 14 +++++++++----- 20584 1 file changed, 9 insertions(+), 5 deletions(-) 20585 20586commit 0a1d2070e252921e097fec89537537675f8b7161 20587Author: Jeff Muizelaar <jeff@infidigm.net> 20588AuthorDate: Wed Apr 25 16:01:29 2007 -0700 20589Commit: Carl Worth <cworth@cworth.org> 20590CommitDate: Wed Apr 25 16:27:04 2007 -0700 20591 20592 Fix bugs in fbCompositeSrc_8888x8x8888mmx and fbCompositeSrc_x888x8x8888mmx 20593 20594 And re-enable fbCompositeSrc_8888x8x8888mmx now that it should work. 20595 20596 This gives another little boost to the paint-with-alpha perf test: 20597 20598 image-rgba paint-with-alpha_image_rgba_over-512 11.76 -> 5.20: 1.85x speedup 20599 ▉ 20600 image-rgb paint-with-alpha_image_rgba_over-512 11.76 -> 5.26: 1.84x speedup 20601 ▉ 20602 20603 pixman/src/fbmmx.c | 20 +++++++++----------- 20604 pixman/src/fbpict.c | 8 +++----- 20605 2 files changed, 12 insertions(+), 16 deletions(-) 20606 20607commit 342de46eb4033e1cccfec8b905c0002cc880c9fb 20608Author: Carl Worth <cworth@cworth.org> 20609AuthorDate: Wed Apr 25 10:25:57 2007 -0700 20610Commit: Carl Worth <cworth@cworth.org> 20611CommitDate: Wed Apr 25 11:27:33 2007 -0700 20612 20613 Make the traditional speedup vs. slowdown report style available again 20614 20615 Now, if you pass exactly two performance reports on the command line 20616 you'll get the traditional report style again, (so the tool remains 20617 backwards compatible). If you really want the new style with two 20618 reports you can get it by adding /dev/null as a third argument. 20619 20620 perf/cairo-perf-diff-files.c | 112 +++++++++++++++++++++++++++++++++++++++---- 20621 1 file changed, 103 insertions(+), 9 deletions(-) 20622 20623commit db2a761ae7055a61d3705a76526cbd0b71fcc95d 20624Author: Carl Worth <cworth@cworth.org> 20625AuthorDate: Wed Apr 25 08:53:46 2007 -0700 20626Commit: Carl Worth <cworth@cworth.org> 20627CommitDate: Wed Apr 25 11:27:33 2007 -0700 20628 20629 Implement support for generating a report from more than two files 20630 20631 This support is intended to compare the identical backends across multiple 20632 reports from several different configurations, (of one sort or another). 20633 The configuration names used in the report are taken from the filenames 20634 of the report files, (which will format most nicely if 8 characters or 20635 less). 20636 20637 The traditional two-input report mode, (showing one line perdiff with 20638 all speedups before all slowdowns), is removed with this commit, but 20639 is intended to return again shortly. 20640 20641 perf/cairo-perf-diff-files.c | 270 +++++++++++++++++++++++++------------------ 20642 1 file changed, 157 insertions(+), 113 deletions(-) 20643 20644commit 5030cfce5df507a0338e1070a5dab3851ed9df7c 20645Author: Carl Worth <cworth@cworth.org> 20646AuthorDate: Thu Apr 19 16:32:57 2007 -0700 20647Commit: Carl Worth <cworth@cworth.org> 20648CommitDate: Wed Apr 25 11:27:33 2007 -0700 20649 20650 cairo-perf-diff-files: Use pointers instead of indexing to iterate over reports 20651 20652 We terminate the iteration by adding a final report with a NULL 20653 name. This will simplify future code that iterates over more than 20654 two reports simultaneously. 20655 20656 perf/cairo-perf-diff-files.c | 31 ++++++++++++++++++------------- 20657 1 file changed, 18 insertions(+), 13 deletions(-) 20658 20659commit 6121f4fccfe8d98fb09c096402da05d29d10b9e8 20660Author: Carl Worth <cworth@cworth.org> 20661AuthorDate: Thu Apr 19 16:21:39 2007 -0700 20662Commit: Carl Worth <cworth@cworth.org> 20663CommitDate: Wed Apr 25 11:27:33 2007 -0700 20664 20665 cairo-perf-diff-files: Simplify code to grow report->tests 20666 20667 perf/cairo-perf-diff-files.c | 14 +++++--------- 20668 1 file changed, 5 insertions(+), 9 deletions(-) 20669 20670commit cc03f0499e7b133a2e5c14e55207259ea000b8c2 20671Author: Carl Worth <cworth@cworth.org> 20672AuthorDate: Thu Apr 19 16:09:06 2007 -0700 20673Commit: Carl Worth <cworth@cworth.org> 20674CommitDate: Wed Apr 25 11:27:33 2007 -0700 20675 20676 cairo-perf-diff-files: Sort and compute stats at the time of loading a report 20677 20678 perf/cairo-perf-diff-files.c | 150 +++++++++++++++++++++---------------------- 20679 1 file changed, 75 insertions(+), 75 deletions(-) 20680 20681commit 228c83c9d2d1fdb6fa3af8a650640a47c8e21e36 20682Author: Carl Worth <cworth@cworth.org> 20683AuthorDate: Thu Apr 19 14:35:51 2007 -0700 20684Commit: Carl Worth <cworth@cworth.org> 20685CommitDate: Wed Apr 25 11:27:33 2007 -0700 20686 20687 cairo-perf-diff: Separate command-line options within the args structure 20688 20689 A function like cairo_perf_report_diff wants the options, but really 20690 doesn't want/need to see the filenames for example, 20691 20692 perf/cairo-perf-diff-files.c | 44 +++++++++++++++++++++++++------------------- 20693 1 file changed, 25 insertions(+), 19 deletions(-) 20694 20695commit 876786b3f7316b99a51ba8225e34581be13a883d 20696Author: Carl Worth <cworth@cworth.org> 20697AuthorDate: Thu Apr 19 13:54:50 2007 -0700 20698Commit: Carl Worth <cworth@cworth.org> 20699CommitDate: Wed Apr 25 11:27:33 2007 -0700 20700 20701 Move implementation of getline and strndup 20702 20703 These kept getting in my way as I looked for structure declarations 20704 at the top of the file. 20705 20706 perf/cairo-perf-diff-files.c | 108 +++++++++++++++++++++---------------------- 20707 1 file changed, 53 insertions(+), 55 deletions(-) 20708 20709commit 90d532e08f25644c4e621b0b7e592f4531a39d88 20710Author: Carl Worth <cworth@cworth.org> 20711AuthorDate: Thu Apr 19 13:52:03 2007 -0700 20712Commit: Carl Worth <cworth@cworth.org> 20713CommitDate: Wed Apr 25 11:27:33 2007 -0700 20714 20715 Replace old and new reports with reports array 20716 20717 Another baby step toward allowing comparison of more than two reports. 20718 20719 perf/cairo-perf-diff-files.c | 11 +++++++---- 20720 1 file changed, 7 insertions(+), 4 deletions(-) 20721 20722commit c6c17633e40f549ede5761095a0652c08adeee08 20723Author: Carl Worth <cworth@cworth.org> 20724AuthorDate: Thu Apr 19 13:31:37 2007 -0700 20725Commit: Carl Worth <cworth@cworth.org> 20726CommitDate: Wed Apr 25 11:27:33 2007 -0700 20727 20728 Replace old_filename and new_filename with a filenames array 20729 20730 More preparation for comparing more than two perf reports. 20731 20732 perf/cairo-perf-diff-files.c | 30 +++++++++++++----------------- 20733 1 file changed, 13 insertions(+), 17 deletions(-) 20734 20735commit 1849a7a8bededb281fbb07ec0939f8d1f4954771 20736Author: Carl Worth <cworth@cworth.org> 20737AuthorDate: Thu Apr 19 12:55:04 2007 -0700 20738Commit: Carl Worth <cworth@cworth.org> 20739CommitDate: Wed Apr 25 11:27:32 2007 -0700 20740 20741 cairo-perf-diff-files: Add new --min-change option, (replacing third positional argument) 20742 20743 An upcoming change will allow cairo-perf-diff-files to generate 20744 a report based on more than two files. This prepares for that by 20745 moving the minimum-change support from the 3rd positional argument 20746 to a new --min-change option. 20747 20748 perf/cairo-perf-diff-files.c | 39 +++++++++++++++++++++++---------------- 20749 1 file changed, 23 insertions(+), 16 deletions(-) 20750 20751commit ef5611df6c6bc8d9c6877af3a59c66fa6fc5c13a 20752Author: Carl Worth <cworth@cworth.org> 20753AuthorDate: Thu Apr 19 11:26:47 2007 -0700 20754Commit: Carl Worth <cworth@cworth.org> 20755CommitDate: Wed Apr 25 11:27:32 2007 -0700 20756 20757 cairo-perf-diff: Fix implementation of --help 20758 20759 Previously only "--" would givethe usage, and not "--help" 20760 as intended. The new approach has been tested with ash, bash, 20761 and dash, (hopefully that's good enough). 20762 20763 perf/cairo-perf-diff | 2 +- 20764 1 file changed, 1 insertion(+), 1 deletion(-) 20765 20766commit a8d4fed67a32c6040c27615e063466d654b55a3a 20767Author: Carl Worth <cworth@cworth.org> 20768AuthorDate: Thu Apr 19 10:02:22 2007 -0700 20769Commit: Carl Worth <cworth@cworth.org> 20770CommitDate: Wed Apr 25 11:27:32 2007 -0700 20771 20772 cairo-perf-diff-files: Remove some overzealous option parsing. 20773 20774 The code was complicated and confusing, and only existed to implement 20775 undocumented and unneeded command-line options. 20776 20777 perf/cairo-perf-diff-files.c | 13 ++++++------- 20778 1 file changed, 6 insertions(+), 7 deletions(-) 20779 20780commit fe9dd719561048af1f2c3c8c43e46f7d97575053 20781Author: Carl Worth <cworth@cworth.org> 20782AuthorDate: Wed Apr 18 17:01:36 2007 -0700 20783Commit: Carl Worth <cworth@cworth.org> 20784CommitDate: Wed Apr 25 11:27:32 2007 -0700 20785 20786 Correct misattribution of Mathias' work to Chris 20787 20788 NEWS | 2 +- 20789 1 file changed, 1 insertion(+), 1 deletion(-) 20790 20791commit 29670d37665d184d78d568070cb409acf98ee797 20792Author: Carl Worth <cworth@cworth.org> 20793AuthorDate: Mon Apr 23 10:24:03 2007 -0700 20794Commit: Carl Worth <cworth@cworth.org> 20795CommitDate: Wed Apr 25 11:09:31 2007 -0700 20796 20797 Add a content value to solid patterns 20798 20799 This allows for the surface acquired from the pattern to have the 20800 same content. In particular, in a case such as cairo_paint_with_alpha 20801 we can now acquire an A8 mask surface instead of an ARGB32 mask 20802 surface which can be rendered much more efficiently. This results 20803 in a 4x speedup when using the OVER operator with the recently 20804 added paint-with-alpha test: 20805 20806 Speedups 20807 ======== 20808 image-rgb paint-with-alpha_image_rgb_over-256 2.25 -> 0.60: 4.45x speedup 20809 ███▌ 20810 20811 It does slowdown the same test when using the SOURCE operator, but 20812 I don't think we care. Performing SOURCE with a mask is already a very 20813 slow operation, (hitting compositeGeneral), so the slowdown here is 20814 likely from having to convert from A8 back to ARGB32 before the 20815 generalized compositing. So if someone cares about this slowdown, 20816 (though SOURCE with cairo_paint_with_alpha doesn't seem extremely 20817 useful), they will probably be motivated enough to contribute a 20818 customized compositing function to replace compositeGeneral in which 20819 case this slowdown should go away: 20820 20821 image-rgba paint-with-alpha_image_rgb_source-256 3.84 -> 8.86%: 1.94x slowdown 20822 █ 20823 20824 src/cairo-clip.c | 3 ++- 20825 src/cairo-glitz-surface.c | 5 ++++- 20826 src/cairo-gstate.c | 3 ++- 20827 src/cairo-pattern.c | 41 ++++++++++++++++++++++++++--------------- 20828 src/cairo-surface-fallback.c | 12 ++++++++---- 20829 src/cairo-surface.c | 2 +- 20830 src/cairo-xcb-surface.c | 3 ++- 20831 src/cairo-xlib-surface.c | 3 ++- 20832 src/cairo.c | 2 +- 20833 src/cairoint.h | 9 ++++++--- 20834 10 files changed, 54 insertions(+), 29 deletions(-) 20835 20836commit fea5336e2db201be69256ef1bafd418fee98a21e 20837Author: Carl Worth <cworth@cworth.org> 20838AuthorDate: Wed Apr 25 10:36:12 2007 -0700 20839Commit: Carl Worth <cworth@cworth.org> 20840CommitDate: Wed Apr 25 10:39:19 2007 -0700 20841 20842 Allow fbCompositeSrc_x888x8x8888mmx when destination has alpha 20843 20844 Previously the check for this optimized function would only allow 20845 the function to be called if the source and destination had 20846 identical formats. But the function doesn't read the destination 20847 alpha (if any) so can be used when it exists as well. 20848 20849 (Thanks to Jeff Muizelaar for pointing out this problem.) 20850 20851 pixman/src/fbpict.c | 8 +++++++- 20852 1 file changed, 7 insertions(+), 1 deletion(-) 20853 20854commit 72b812be8c69108c46334841823a2e9103b69516 20855Author: Carl Worth <cworth@cworth.org> 20856AuthorDate: Mon Apr 23 09:35:35 2007 -0700 20857Commit: Carl Worth <cworth@cworth.org> 20858CommitDate: Wed Apr 25 07:24:23 2007 -0700 20859 20860 perf: Add new paint-with-alpha test 20861 20862 MacSlow noticed that cairo_paint_with_alpha is much slower than 20863 it should be, (and jrmuizel has a nice plan for fixing the 20864 performance bug). 20865 20866 perf/Makefile.am | 1 + 20867 perf/cairo-perf.c | 1 + 20868 perf/cairo-perf.h | 1 + 20869 perf/paint-with-alpha.c | 45 +++++++++++++++++++++++++++++++++++++++++++++ 20870 4 files changed, 48 insertions(+) 20871 20872commit 302f1146da5b179e5016e2d523e891437c1a256b 20873Author: Carl Worth <cworth@cworth.org> 20874AuthorDate: Mon Apr 23 09:26:32 2007 -0700 20875Commit: Carl Worth <cworth@cworth.org> 20876CommitDate: Wed Apr 25 07:24:23 2007 -0700 20877 20878 Fix two bugs in documentation code sample of cairo_arc 20879 20880 The sample code for drawing an ellipse had width and height 20881 reversed in the call to cairo_scale, and also had both 20882 incorrectly inverted. 20883 20884 src/cairo.c | 2 +- 20885 1 file changed, 1 insertion(+), 1 deletion(-) 20886 20887commit e37c9edac02ccd9fbcbc4622a2f421f4be0d597e 20888Author: Behdad Esfahbod <behdad@behdad.org> 20889AuthorDate: Tue Apr 24 17:33:37 2007 -0400 20890Commit: Behdad Esfahbod <behdad@behdad.org> 20891CommitDate: Tue Apr 24 17:33:37 2007 -0400 20892 20893 [ROADMAP] Add cairo_xlib_surface_get_xrender_format() 20894 20895 ROADMAP | 5 +++++ 20896 1 file changed, 5 insertions(+) 20897 20898commit ac0ef0302e68ba17ec5a59c689579f1854c7386c 20899Merge: d3cf2144d 260dcb316 20900Author: Peter Weilbacher <mozilla@weilbacher.org> 20901AuthorDate: Mon Apr 23 23:18:05 2007 +0200 20902Commit: Peter Weilbacher <mozilla@weilbacher.org> 20903CommitDate: Mon Apr 23 23:18:05 2007 +0200 20904 20905 Merge branch 'master' of git+ssh://pmw@git.freedesktop.org/git/cairo 20906 20907commit 260dcb316e14945e7600406954e4876e8827a777 20908Author: Chris Wilson <chris@chris-wilson.co.uk> 20909AuthorDate: Mon Apr 23 13:54:37 2007 +0100 20910Commit: Chris Wilson <chris@chris-wilson.co.uk> 20911CommitDate: Mon Apr 23 13:54:37 2007 +0100 20912 20913 Add a _cairo_error() to png_simple_error_callback() 20914 20915 With the introduction of the error callbacks for PNG, we have the 20916 opportunity for the user to set a breakpoint (via _cairo_error) at the 20917 point the error is first rasied. 20918 20919 src/cairo-png.c | 1 + 20920 1 file changed, 1 insertion(+) 20921 20922commit 0fce7e85a1c853216866ddf6a40725e7ce57fe93 20923Author: Chris Wilson <chris@chris-wilson.co.uk> 20924AuthorDate: Mon Apr 23 13:00:40 2007 +0100 20925Commit: Chris Wilson <chris@chris-wilson.co.uk> 20926CommitDate: Mon Apr 23 13:10:15 2007 +0100 20927 20928 Do not print out libpng error messages to stderr. 20929 20930 We wish to avoid writing to file descriptors (and streams) that are 20931 outside cairo's control. In this case, the messages are superfluous as 20932 the errors are propagated via the cairo_status_t returns. 20933 20934 src/cairo-png.c | 31 +++++++++++++++++++++++++------ 20935 1 file changed, 25 insertions(+), 6 deletions(-) 20936 20937commit 59670dd5d3854af1f7cbdef984df7802c338330b 20938Author: Behdad Esfahbod <behdad@behdad.org> 20939AuthorDate: Mon Apr 23 05:19:56 2007 -0400 20940Commit: Behdad Esfahbod <behdad@behdad.org> 20941CommitDate: Mon Apr 23 05:19:56 2007 -0400 20942 20943 [ROADMAP] Add URL to David Turner's patchset 20944 20945 ROADMAP | 1 + 20946 1 file changed, 1 insertion(+) 20947 20948commit ce91a176489f4cb8f40c5ec29f23881d1e013a9f 20949Author: Behdad Esfahbod <behdad@behdad.org> 20950AuthorDate: Sun Apr 22 16:13:22 2007 -0400 20951Commit: Behdad Esfahbod <behdad@behdad.org> 20952CommitDate: Sun Apr 22 16:13:33 2007 -0400 20953 20954 [cairo-mutex] Add a poor man's mutex implementation in case of CAIRO_NO_MUTEX 20955 just for fun. 20956 20957 src/cairo-mutex-private.h | 13 ++++++++----- 20958 1 file changed, 8 insertions(+), 5 deletions(-) 20959 20960commit 97b50e99bfa785d77b4900d3070f22a22827db22 20961Author: Behdad Esfahbod <behdad@behdad.org> 20962AuthorDate: Sun Apr 22 16:05:25 2007 -0400 20963Commit: Behdad Esfahbod <behdad@behdad.org> 20964CommitDate: Sun Apr 22 16:05:25 2007 -0400 20965 20966 [BeOS] Remove old-style mutex initialization cruft 20967 20968 src/cairo-beos-surface.cpp | 34 ---------------------------------- 20969 1 file changed, 34 deletions(-) 20970 20971commit 0fd13a3db00e7e11915b5a7bbe81bf8f43f1941f 20972Author: Behdad Esfahbod <behdad@behdad.org> 20973AuthorDate: Sun Apr 22 16:04:49 2007 -0400 20974Commit: Behdad Esfahbod <behdad@behdad.org> 20975CommitDate: Sun Apr 22 16:04:49 2007 -0400 20976 20977 [BeOS] Add mutex implementation 20978 20979 src/cairo-mutex-private.h | 17 ++++++----------- 20980 1 file changed, 6 insertions(+), 11 deletions(-) 20981 20982commit fc83784525d3f2bb3e09d931cc9c83261c0b73ae 20983Author: Behdad Esfahbod <behdad@behdad.org> 20984AuthorDate: Sun Apr 22 15:56:18 2007 -0400 20985Commit: Behdad Esfahbod <behdad@behdad.org> 20986CommitDate: Sun Apr 22 15:56:18 2007 -0400 20987 20988 [cairo-mutex] Properly paranthesize macro arguments 20989 20990 src/cairo-mutex-private.h | 12 ++++++------ 20991 1 file changed, 6 insertions(+), 6 deletions(-) 20992 20993commit 406fc63b68203e86c9236d06448e2ffa2c259669 20994Author: Behdad Esfahbod <behdad@behdad.org> 20995AuthorDate: Sun Apr 22 07:11:47 2007 -0400 20996Commit: Behdad Esfahbod <behdad@behdad.org> 20997CommitDate: Sun Apr 22 07:11:47 2007 -0400 20998 20999 [util] Change make target from "tools" to "util" 21000 to match targets like "test", "perf", and "doc", that match 21001 their directory names. 21002 21003 util/Makefile.am | 2 +- 21004 1 file changed, 1 insertion(+), 1 deletion(-) 21005 21006commit 5bc1f3365d0002f2864bc30638df85c392a495f5 21007Author: Peter Weilbacher <pmw@avila.aip.de> 21008AuthorDate: Sun Apr 22 07:11:00 2007 -0400 21009Commit: Behdad Esfahbod <behdad@behdad.org> 21010CommitDate: Sun Apr 22 07:11:00 2007 -0400 21011 21012 [perf] Add OS/2 implementation for timer routines 21013 21014 perf/Makefile.am | 4 +++ 21015 perf/cairo-perf-os2.c | 95 +++++++++++++++++++++++++++++++++++++++++++++++++++ 21016 2 files changed, 99 insertions(+) 21017 21018commit 3b46e105bd781d7a4081068a14668334a7c82986 21019Author: Behdad Esfahbod <behdad@behdad.org> 21020AuthorDate: Sat Apr 21 08:21:01 2007 -0400 21021Commit: Behdad Esfahbod <behdad@behdad.org> 21022CommitDate: Sat Apr 21 08:23:15 2007 -0400 21023 21024 [util] Import my malloc wrapper that prints simple statistics 21025 21026 To build, do: 21027 21028 make malloc-stats.so 21029 21030 inside util/, and to use, run: 21031 21032 LD_PRELOAD=malloc-stats.so some-program 21033 21034 For binaries managed by libtool, eg, cairo-perf, do: 21035 21036 ../libtool --mode=execute /bin/true ./cairo-perf 21037 LD_PRELOAD="../util/malloc-stats.so" .libs/lt-cairo-perf 21038 21039 The code also includes Jeff Muizelaar's libbacktracesymbols that 21040 is a much better implementation of backtrace_symbols() than what 21041 is provided by glibc. That can be built by: 21042 21043 make backtrace-symbols.so 21044 21045 util/.gitignore | 17 +++ 21046 util/Makefile.am | 22 +++ 21047 util/backtrace-symbols.c | 361 +++++++++++++++++++++++++++++++++++++++++++++++ 21048 util/malloc-stats.c | 301 +++++++++++++++++++++++++++++++++++++++ 21049 4 files changed, 701 insertions(+) 21050 21051commit d3cf2144dbd42737d5e2c45908fbca082dd54022 21052Merge: 6c1296114 abdcbf896 21053Author: Peter Weilbacher <mozilla@weilbacher.org> 21054AuthorDate: Sat Apr 21 13:50:30 2007 +0200 21055Commit: Peter Weilbacher <mozilla@weilbacher.org> 21056CommitDate: Sat Apr 21 13:50:30 2007 +0200 21057 21058 Merge branch 'master' of git+ssh://pmw@git.freedesktop.org/git/cairo 21059 21060commit 6c129611408ddb5cf0a9a821b30bbb8148af08d9 21061Author: Peter Weilbacher <mozilla@weilbacher.org> 21062AuthorDate: Sat Apr 21 13:49:04 2007 +0200 21063Commit: Peter Weilbacher <mozilla@weilbacher.org> 21064CommitDate: Sat Apr 21 13:49:04 2007 +0200 21065 21066 Use deprecated png symbol only when compiling against old version 21067 21068 png_set_gray_1_2_4_to_8 is deprecated in libpng >= 1.2.9, the identical 21069 substitute for it is png_set_expand_gray_1_2_4_to_8 21070 21071 src/cairo-png.c | 4 ++++ 21072 1 file changed, 4 insertions(+) 21073 21074commit 515491334cc32d8be856f25b7d2e36e63cb72246 21075Author: Behdad Esfahbod <behdad@behdad.org> 21076AuthorDate: Sat Apr 21 07:48:10 2007 -0400 21077Commit: Behdad Esfahbod <behdad@behdad.org> 21078CommitDate: Sat Apr 21 07:48:10 2007 -0400 21079 21080 Add util/ to distribution 21081 We already reference an script in util/ in PORTING_GUIDE, but was 21082 not shipping it! 21083 21084 Makefile.am | 2 +- 21085 configure.in | 1 + 21086 util/Makefile.am | 4 ++++ 21087 3 files changed, 6 insertions(+), 1 deletion(-) 21088 21089commit abdcbf896af69677058490d1d08ba58672c429ec 21090Author: Behdad Esfahbod <behdad@behdad.org> 21091AuthorDate: Sat Apr 21 07:23:30 2007 -0400 21092Commit: Behdad Esfahbod <behdad@behdad.org> 21093CommitDate: Sat Apr 21 07:23:30 2007 -0400 21094 21095 [boilerplate] Add missing headers. Oops! 21096 I blame git for it... 21097 21098 boilerplate/cairo-boilerplate-pdf.h | 33 +++++++++++++++++++++++++++++++++ 21099 boilerplate/cairo-boilerplate-xlib.h | 33 +++++++++++++++++++++++++++++++++ 21100 2 files changed, 66 insertions(+) 21101 21102commit 781f2533a32d84ca43a1bdf646bb69b7adab7a77 21103Author: Behdad Esfahbod <behdad@behdad.org> 21104AuthorDate: Sat Apr 21 07:21:38 2007 -0400 21105Commit: Behdad Esfahbod <behdad@behdad.org> 21106CommitDate: Sat Apr 21 07:21:38 2007 -0400 21107 21108 [.gitignore] Add cairo-*.*.* 21109 21110 .gitignore | 1 + 21111 1 file changed, 1 insertion(+) 21112 21113commit febcd689e7a4b277bbebffd8ebdc0970a04f68eb 21114Author: Behdad Esfahbod <behdad@behdad.org> 21115AuthorDate: Sat Apr 21 07:19:47 2007 -0400 21116Commit: Behdad Esfahbod <behdad@behdad.org> 21117CommitDate: Sat Apr 21 07:19:47 2007 -0400 21118 21119 Update .gitignore to ignore .perf 21120 21121 .gitignore | 3 ++- 21122 1 file changed, 2 insertions(+), 1 deletion(-) 21123 21124commit de425ada871c71277a53687dcd8a93a607d4faab 21125Author: Behdad Esfahbod <behdad@behdad.org> 21126AuthorDate: Sat Apr 21 03:46:18 2007 -0400 21127Commit: Behdad Esfahbod <behdad@behdad.org> 21128CommitDate: Sat Apr 21 03:46:18 2007 -0400 21129 21130 [doc/public/Headers.mk] Update. 21131 21132 doc/public/Headers.mk | 13 ++++++++----- 21133 1 file changed, 8 insertions(+), 5 deletions(-) 21134 21135commit 519b722747d606170741ccc520d6ec7332b2481f 21136Author: Behdad Esfahbod <behdad@behdad.org> 21137AuthorDate: Sat Apr 21 03:45:51 2007 -0400 21138Commit: Behdad Esfahbod <behdad@behdad.org> 21139CommitDate: Sat Apr 21 03:45:51 2007 -0400 21140 21141 [RELEASING] Remove *-test.h from instructions 21142 as they are all removed now. 21143 21144 RELEASING | 2 +- 21145 1 file changed, 1 insertion(+), 1 deletion(-) 21146 21147commit 0108f9c69f2f5391ff6b1066ae6b58fe3f71255a 21148Author: Behdad Esfahbod <behdad@behdad.org> 21149AuthorDate: Sat Apr 21 03:44:53 2007 -0400 21150Commit: Behdad Esfahbod <behdad@behdad.org> 21151CommitDate: Sat Apr 21 03:44:53 2007 -0400 21152 21153 [check-def.sh] Do not allow _cairo_.*_test_ symbols anymore 21154 as all are removed now. 21155 21156 src/check-def.sh | 2 +- 21157 1 file changed, 1 insertion(+), 1 deletion(-) 21158 21159commit 79098c037043f45df0a18265417e96d6214d68e1 21160Author: Behdad Esfahbod <behdad@behdad.org> 21161AuthorDate: Sat Apr 21 03:43:04 2007 -0400 21162Commit: Behdad Esfahbod <behdad@behdad.org> 21163CommitDate: Sat Apr 21 03:43:04 2007 -0400 21164 21165 [scaled-font] Get rid of _cairo_scaled_font_test_set_max_glyphs_cached_per_font 21166 in favor of cairo_boilerplate_scaled_font_set_max_glyphs_cached. 21167 21168 boilerplate/Makefile.am | 1 + 21169 boilerplate/cairo-boilerplate-scaled-font.h | 34 ++++++++++++++++++++ 21170 boilerplate/cairo-boilerplate.c | 11 +++++++ 21171 src/Makefile.am | 1 - 21172 src/cairo-scaled-font-private.h | 1 + 21173 src/cairo-scaled-font-test.h | 49 ----------------------------- 21174 src/cairo-scaled-font.c | 14 ++------- 21175 test/glyph-cache-pressure.c | 6 ++-- 21176 8 files changed, 53 insertions(+), 64 deletions(-) 21177 21178commit 44563161de82a5ee7bbf8f100213ea1a3af6d5db 21179Author: Behdad Esfahbod <behdad@behdad.org> 21180AuthorDate: Sat Apr 21 03:38:24 2007 -0400 21181Commit: Behdad Esfahbod <behdad@behdad.org> 21182CommitDate: Sat Apr 21 03:38:24 2007 -0400 21183 21184 Move a couple typedefs to cairo-types-private.h 21185 21186 src/cairo-types-private.h | 2 ++ 21187 src/cairoint.h | 2 -- 21188 2 files changed, 2 insertions(+), 2 deletions(-) 21189 21190commit 737d20a5702a18a1480c3b45f876e886b82b065c 21191Author: Behdad Esfahbod <behdad@behdad.org> 21192AuthorDate: Sat Apr 21 03:35:07 2007 -0400 21193Commit: Behdad Esfahbod <behdad@behdad.org> 21194CommitDate: Sat Apr 21 03:35:07 2007 -0400 21195 21196 Move cairo_hash_entry_t to cairo-types-private.h 21197 21198 src/cairo-hash-private.h | 38 -------------------------------------- 21199 src/cairo-scaled-font-private.h | 2 ++ 21200 src/cairo-types-private.h | 38 ++++++++++++++++++++++++++++++++++++++ 21201 3 files changed, 40 insertions(+), 38 deletions(-) 21202 21203commit 51ce92c3db093c8d26c8002ddbc105b11e7607bf 21204Author: Behdad Esfahbod <behdad@behdad.org> 21205AuthorDate: Sat Apr 21 03:24:31 2007 -0400 21206Commit: Behdad Esfahbod <behdad@behdad.org> 21207CommitDate: Sat Apr 21 03:24:31 2007 -0400 21208 21209 [scaled-font] Move cairo_scaled_font_t to cairo-scaled-font-private.h 21210 21211 src/Makefile.am | 1 + 21212 src/cairo-scaled-font-private.h | 109 ++++++++++++++++++++++++++++++++++++++++ 21213 src/cairo-scaled-font.c | 1 + 21214 src/cairoint.h | 66 +----------------------- 21215 4 files changed, 112 insertions(+), 65 deletions(-) 21216 21217commit 91f1056caf46d71c99eb044afbc943b92fb5550c 21218Author: Behdad Esfahbod <behdad@behdad.org> 21219AuthorDate: Sat Apr 21 03:18:30 2007 -0400 21220Commit: Behdad Esfahbod <behdad@behdad.org> 21221CommitDate: Sat Apr 21 03:18:30 2007 -0400 21222 21223 Move cairo_cache_t to cairo-types-private.h 21224 21225 src/cairo-cache-private.h | 2 +- 21226 src/cairo-cache.c | 11 ----------- 21227 src/cairo-hash-private.h | 4 ++-- 21228 src/cairo-types-private.h | 14 ++++++++++++++ 21229 4 files changed, 17 insertions(+), 14 deletions(-) 21230 21231commit d2bb5f30079badf1029fa71faab9d6781092a271 21232Author: Behdad Esfahbod <behdad@behdad.org> 21233AuthorDate: Sat Apr 21 03:08:26 2007 -0400 21234Commit: Behdad Esfahbod <behdad@behdad.org> 21235CommitDate: Sat Apr 21 03:08:26 2007 -0400 21236 21237 [svg] Get rid of _cairo_svg_test_force_fallbacks 21238 in favor of cairo_boilerplate_svg_surface_force_fallbacks. 21239 21240 boilerplate/Makefile.am | 1 + 21241 boilerplate/cairo-boilerplate-svg.c | 19 +++++++++++++ 21242 boilerplate/cairo-boilerplate-svg.h | 33 +++++++++++++++++++++++ 21243 src/Makefile.am | 4 +-- 21244 src/cairo-svg-surface-private.h | 2 ++ 21245 src/cairo-svg-surface.c | 20 +------------- 21246 src/cairo-svg-test.h | 54 ------------------------------------- 21247 test/fallback-resolution.c | 4 +-- 21248 8 files changed, 60 insertions(+), 77 deletions(-) 21249 21250commit ea1b7c2d8a55d694d575c0bb711e60f70a33ff77 21251Author: Behdad Esfahbod <behdad@behdad.org> 21252AuthorDate: Sat Apr 21 03:04:03 2007 -0400 21253Commit: Behdad Esfahbod <behdad@behdad.org> 21254CommitDate: Sat Apr 21 03:04:03 2007 -0400 21255 21256 [paginated] Include cairo-surface-private.h 21257 21258 src/cairo-paginated-surface-private.h | 2 ++ 21259 1 file changed, 2 insertions(+) 21260 21261commit 7e0ae8bd43dfd8b052d021601912b46956b2921e 21262Author: Behdad Esfahbod <behdad@behdad.org> 21263AuthorDate: Sat Apr 21 02:57:55 2007 -0400 21264Commit: Behdad Esfahbod <behdad@behdad.org> 21265CommitDate: Sat Apr 21 02:57:55 2007 -0400 21266 21267 [svg] Move cairo_svg_surface_t to cairo-svg-surface-private.h 21268 21269 boilerplate/cairo-boilerplate-ps.c | 6 +++- 21270 src/Makefile.am | 2 +- 21271 src/cairo-svg-surface-private.h | 71 ++++++++++++++++++++++++++++++++++++++ 21272 src/cairo-svg-surface.c | 24 +------------ 21273 4 files changed, 78 insertions(+), 25 deletions(-) 21274 21275commit 3885fff3e6215023e801dd2c72fc39560a4e22fd 21276Author: Behdad Esfahbod <behdad@behdad.org> 21277AuthorDate: Fri Apr 20 03:33:58 2007 -0400 21278Commit: Behdad Esfahbod <behdad@behdad.org> 21279CommitDate: Sat Apr 21 02:51:22 2007 -0400 21280 21281 [ps] Get rid of _cairo_ps_test_force_fallbacks 21282 21283 in favor of cairo_boilerplate_ps_surface_force_fallbacks. 21284 21285 boilerplate/Makefile.am | 1 + 21286 boilerplate/cairo-boilerplate-ps.c | 15 +++++++++++ 21287 boilerplate/cairo-boilerplate-ps.h | 33 +++++++++++++++++++++++ 21288 src/Makefile.am | 2 +- 21289 src/cairo-ps-surface-private.h | 3 ++- 21290 src/cairo-ps-surface.c | 24 ++--------------- 21291 src/cairo-ps-test.h | 54 -------------------------------------- 21292 test/fallback-resolution.c | 4 +-- 21293 8 files changed, 56 insertions(+), 80 deletions(-) 21294 21295commit 57dc972d6e5fe715a83cbcaad9c6cc3d38bf8129 21296Author: Behdad Esfahbod <behdad@behdad.org> 21297AuthorDate: Fri Apr 20 03:02:48 2007 -0400 21298Commit: Behdad Esfahbod <behdad@behdad.org> 21299CommitDate: Sat Apr 21 02:51:17 2007 -0400 21300 21301 [ps] Move cairo_ps_surface_t to cairo-ps-surface-private.h 21302 21303 src/Makefile.am | 2 +- 21304 src/cairo-ps-surface-private.h | 79 ++++++++++++++++++++++++++++++++++++++++++ 21305 src/cairo-ps-surface.c | 33 +----------------- 21306 3 files changed, 81 insertions(+), 33 deletions(-) 21307 21308commit 3e69fbca6233e9f568935dbb69bf14bc34812d77 21309Author: Behdad Esfahbod <behdad@behdad.org> 21310AuthorDate: Fri Apr 20 03:00:21 2007 -0400 21311Commit: Behdad Esfahbod <behdad@behdad.org> 21312CommitDate: Sat Apr 21 02:51:10 2007 -0400 21313 21314 [pdf] Fix header file header! 21315 21316 src/cairo-pdf-surface-private.h | 12 +++++++++--- 21317 1 file changed, 9 insertions(+), 3 deletions(-) 21318 21319commit 29247e5010632f0453367b64a38c865076605681 21320Author: Behdad Esfahbod <behdad@behdad.org> 21321AuthorDate: Fri Apr 20 02:57:12 2007 -0400 21322Commit: Behdad Esfahbod <behdad@behdad.org> 21323CommitDate: Sat Apr 21 02:51:04 2007 -0400 21324 21325 [ps/pdf/svg] Fix minor coding style issue 21326 21327 src/cairo-pdf-surface.c | 12 ++++++------ 21328 src/cairo-ps-surface.c | 2 +- 21329 src/cairo-svg-surface.c | 14 +++++++------- 21330 3 files changed, 14 insertions(+), 14 deletions(-) 21331 21332commit 20ce190e71f838dea598cbd5267f047b75945cee 21333Author: Behdad Esfahbod <behdad@behdad.org> 21334AuthorDate: Sat Apr 21 02:50:53 2007 -0400 21335Commit: Behdad Esfahbod <behdad@behdad.org> 21336CommitDate: Sat Apr 21 02:50:53 2007 -0400 21337 21338 [pdf] Get rid of _cairo_pdf_test_force_fallbacks 21339 in favor of cairo_boilerplate_pdf_surface_force_fallbacks. 21340 21341 boilerplate/Makefile.am | 1 + 21342 boilerplate/cairo-boilerplate-pdf.c | 19 +++++++++++++ 21343 src/cairo-pdf-surface-private.h | 2 ++ 21344 src/cairo-pdf-surface.c | 25 +++-------------- 21345 src/cairo-pdf-test.h | 54 ------------------------------------- 21346 test/fallback-resolution.c | 4 +-- 21347 6 files changed, 27 insertions(+), 78 deletions(-) 21348 21349commit 03477064fa639ab1c735467d1889bde7c99313c4 21350Author: Behdad Esfahbod <behdad@behdad.org> 21351AuthorDate: Sat Apr 21 02:25:51 2007 -0400 21352Commit: Behdad Esfahbod <behdad@behdad.org> 21353CommitDate: Sat Apr 21 02:43:28 2007 -0400 21354 21355 [paginated] Move cairo_paginated_surface_t to cairo-paginated-surface-private.h 21356 The old cairo-paginated-surface-private.h is cairo-paginated-private.h now. 21357 21358 src/Makefile.am | 1 + 21359 src/cairo-analysis-surface.c | 2 +- 21360 src/cairo-paginated-private.h | 136 ++++++++++++++++++++++++++++++++++ 21361 src/cairo-paginated-surface-private.h | 116 +++++++---------------------- 21362 src/cairo-paginated-surface.c | 32 +------- 21363 src/cairo-pdf-surface.c | 2 +- 21364 src/cairo-ps-surface.c | 2 +- 21365 src/cairo-svg-surface.c | 2 +- 21366 src/cairo-types-private.h | 1 + 21367 src/test-paginated-surface.c | 2 +- 21368 10 files changed, 170 insertions(+), 126 deletions(-) 21369 21370commit 21a7de61c26faaaa1ce96cddab6d777dbb37d0bb 21371Author: Behdad Esfahbod <behdad@behdad.org> 21372AuthorDate: Fri Apr 20 02:52:53 2007 -0400 21373Commit: Behdad Esfahbod <behdad@behdad.org> 21374CommitDate: Sat Apr 21 02:10:34 2007 -0400 21375 21376 [boilerplate] Add cairo-boilerplate-xlib.h to Makefile.am 21377 21378 boilerplate/Makefile.am | 1 + 21379 1 file changed, 1 insertion(+) 21380 21381commit 68e2158aaeacefcff8e6df11c25bb61ab0e89606 21382Author: Behdad Esfahbod <behdad@behdad.org> 21383AuthorDate: Fri Apr 20 02:37:15 2007 -0400 21384Commit: Behdad Esfahbod <behdad@behdad.org> 21385CommitDate: Sat Apr 21 02:10:34 2007 -0400 21386 21387 [pdf] Move cairo_pdf_surface_t to cairo-pdf-surface-private.h 21388 21389 src/Makefile.am | 3 +- 21390 src/cairo-output-stream-private.h | 2 +- 21391 src/cairo-pdf-surface-private.h | 83 +++++++++++++++++++++++++++++++++ 21392 src/cairo-pdf-surface.c | 42 +---------------- 21393 src/cairo-scaled-font-subsets-private.h | 2 - 21394 src/cairo-types-private.h | 3 ++ 21395 6 files changed, 90 insertions(+), 45 deletions(-) 21396 21397commit 183c6af4f1730861a604a912a0609e315da65ecc 21398Author: Behdad Esfahbod <behdad@behdad.org> 21399AuthorDate: Fri Apr 20 02:30:46 2007 -0400 21400Commit: Behdad Esfahbod <behdad@behdad.org> 21401CommitDate: Sat Apr 21 02:08:38 2007 -0400 21402 21403 [paginated] Move cairo_paginated_mode_t to cairo-types-private.h 21404 21405 as it is used in surface structs for PS/PDF/SVG and we will need 21406 it. 21407 21408 src/cairo-paginated-surface-private.h | 5 ----- 21409 src/cairo-types-private.h | 5 +++++ 21410 2 files changed, 5 insertions(+), 5 deletions(-) 21411 21412commit cd72167ede50b44aa3559ee63b95e12e4b51d80f 21413Author: Behdad Esfahbod <behdad@behdad.org> 21414AuthorDate: Fri Apr 20 02:27:19 2007 -0400 21415Commit: Behdad Esfahbod <behdad@behdad.org> 21416CommitDate: Sat Apr 21 02:08:38 2007 -0400 21417 21418 [xlib] Get rid of _cairo_xlib_test_disable_render 21419 21420 in favor of cairo_boilerplate_xlib_surface_disable_render. 21421 21422 boilerplate/cairo-boilerplate-xlib.c | 15 ++++++++++ 21423 src/Makefile.am | 2 +- 21424 src/cairo-xlib-surface.c | 23 +-------------- 21425 src/cairo-xlib-test.h | 54 ------------------------------------ 21426 test/xlib-surface.c | 8 ++++-- 21427 5 files changed, 22 insertions(+), 80 deletions(-) 21428 21429commit 908418cb4d43e387d06698a43626ac9a663d6c2a 21430Author: Behdad Esfahbod <behdad@behdad.org> 21431AuthorDate: Fri Apr 20 02:25:55 2007 -0400 21432Commit: Behdad Esfahbod <behdad@behdad.org> 21433CommitDate: Sat Apr 21 02:08:37 2007 -0400 21434 21435 [cairo-surface] Move cairo_surface_t struct in cairo-surface-private.h 21436 21437 src/Makefile.am | 2 + 21438 src/cairo-surface-private.h | 96 ++++++++++++++++++++++++++++++++++++++++ 21439 src/cairo-types-private.h | 65 +++++++++++++++++++++++++++ 21440 src/cairo-xlib-private.h | 1 - 21441 src/cairo-xlib-surface-private.h | 2 + 21442 src/cairoint.h | 74 +------------------------------ 21443 6 files changed, 167 insertions(+), 73 deletions(-) 21444 21445commit 8ae02fa470eace1b449c09b6cd0f86cc09b81ec2 21446Author: Behdad Esfahbod <behdad@behdad.org> 21447AuthorDate: Fri Apr 20 01:54:35 2007 -0400 21448Commit: Behdad Esfahbod <behdad@behdad.org> 21449CommitDate: Sat Apr 21 02:08:37 2007 -0400 21450 21451 [boilerplate] Minor indentation fix 21452 21453 boilerplate/cairo-boilerplate-xlib-private.h | 12 ++++++------ 21454 1 file changed, 6 insertions(+), 6 deletions(-) 21455 21456commit 1345552ac24099900acdb968f905d6e75cc20593 21457Author: Behdad Esfahbod <behdad@behdad.org> 21458AuthorDate: Fri Apr 20 01:46:23 2007 -0400 21459Commit: Behdad Esfahbod <behdad@behdad.org> 21460CommitDate: Sat Apr 21 02:08:37 2007 -0400 21461 21462 [xlib] Move cairo_xlib_surface_t definition into cairo-xlib-surface-private.h 21463 21464 src/Makefile.am | 3 +- 21465 src/cairo-xlib-surface-private.h | 91 ++++++++++++++++++++++++++++++++++++++++ 21466 src/cairo-xlib-surface.c | 54 +----------------------- 21467 3 files changed, 94 insertions(+), 54 deletions(-) 21468 21469commit 735be3f09d1d150909305ff3232fda42efcb87bd 21470Author: Peter Weilbacher <pmw@avila.aip.de> 21471AuthorDate: Fri Apr 20 20:46:55 2007 +0200 21472Commit: Peter Weilbacher <pmw@avila.aip.de> 21473CommitDate: Fri Apr 20 20:46:55 2007 +0200 21474 21475 Fix build break related to mutexes on OS/2 21476 21477 cairo_mutex_t is HTMX which is ULONG on OS/2, so we have to set the 21478 mutex itself to 0 and not the address... 21479 21480 src/cairo-mutex-private.h | 2 +- 21481 1 file changed, 1 insertion(+), 1 deletion(-) 21482 21483commit 5135bcf414abc91e7777e2c024c9b6e10bf6115c 21484Author: Chris Wilson <chris@chris-wilson.co.uk> 21485AuthorDate: Fri Apr 20 19:08:07 2007 +0100 21486Commit: Chris Wilson <chris@chris-wilson.co.uk> 21487CommitDate: Fri Apr 20 19:08:07 2007 +0100 21488 21489 cairo-boilerplate - use xmalloc and friends 21490 21491 Prefer to abort gracefully if we run out of memory (or simply to protect 21492 them from memfault). 21493 21494 boilerplate/cairo-boilerplate.c | 4 ++-- 21495 1 file changed, 2 insertions(+), 2 deletions(-) 21496 21497commit b6be361d0ef3b81ef5cbc28852f323a671e3d030 21498Author: Chris Wilson <chris@chris-wilson.co.uk> 21499AuthorDate: Fri Apr 20 17:49:10 2007 +0100 21500Commit: Chris Wilson <chris@chris-wilson.co.uk> 21501CommitDate: Fri Apr 20 17:49:10 2007 +0100 21502 21503 Clean up compiler warnings from cairo-png 21504 21505 I introduced some compiler warnings into read_png() with the superfluous 21506 introduction of a couple of volatile qualifiers. I'm sure at the time, 21507 the reason was that gcc suggested adding them - however, ATM gcc issues 21508 no warnings without them. 21509 21510 src/cairo-png.c | 4 ++-- 21511 1 file changed, 2 insertions(+), 2 deletions(-) 21512 21513commit fc455c53ecb0aa496915b1eae68dc0275af78e09 21514Author: Adrian Johnson <ajohnson@redneon.com> 21515AuthorDate: Sat Apr 21 00:26:25 2007 +0930 21516Commit: Adrian Johnson <ajohnson@redneon.com> 21517CommitDate: Sat Apr 21 00:26:25 2007 +0930 21518 21519 Ensure _cairo_scaled_font_subsets_map_glyph() returns correct values 21520 21521 The CID font subsetting exposed a bug where the subset_glyph->is_scaled 21522 return argument of _cairo_scaled_font_subsets_map_glyph() is sometimes 21523 not assigned a value. 21524 21525 src/cairo-scaled-font-subsets.c | 55 ++++++++++++++++------------------------- 21526 1 file changed, 21 insertions(+), 34 deletions(-) 21527 21528commit 9d8eb42c013d197b3365af88e372d1c2c1617173 21529Author: Adrian Johnson <ajohnson@redneon.com> 21530AuthorDate: Fri Apr 20 22:45:12 2007 +0930 21531Commit: Adrian Johnson <ajohnson@redneon.com> 21532CommitDate: Fri Apr 20 22:45:12 2007 +0930 21533 21534 Exclude Type1 fonts from CID subsets 21535 21536 Make cairo-scaled-font-subsets.c limit Type1 font subsets to 21537 256 glyphs. This allows Type1 subsetting to be enabled again 21538 with type1-fallback as the fallback option for Type1 fonts. 21539 21540 src/cairo-pdf-surface.c | 42 ++++++++++++++++----------------- 21541 src/cairo-scaled-font-subsets-private.h | 11 ++++++++- 21542 src/cairo-scaled-font-subsets.c | 36 ++++++++++++++++++---------- 21543 src/cairo-type1-subset.c | 27 +++++++++++++++++++++ 21544 src/cairoint.h | 1 + 21545 5 files changed, 82 insertions(+), 35 deletions(-) 21546 21547commit 56ad56263b86a9678387fe8dd994e77c183c6328 21548Author: Adrian Johnson <ajohnson@redneon.com> 21549AuthorDate: Fri Apr 20 22:44:04 2007 +0930 21550Commit: Adrian Johnson <ajohnson@redneon.com> 21551CommitDate: Fri Apr 20 22:44:04 2007 +0930 21552 21553 Enable embedding of CID fonts in PDF 21554 21555 Update cairo-pdf-surface.c to embed CFF and TrueType fonts 21556 as CID fonts. Update the ToUnicode CMap to handle CID fonts. 21557 21558 src/cairo-pdf-surface.c | 285 ++++++++++++++++++++++++++++++------------------ 21559 1 file changed, 177 insertions(+), 108 deletions(-) 21560 21561commit ca3662d6fc630e5390b3a8f8dbaa1d65aebc3fe8 21562Author: Adrian Johnson <ajohnson@redneon.com> 21563AuthorDate: Fri Apr 20 22:43:37 2007 +0930 21564Commit: Adrian Johnson <ajohnson@redneon.com> 21565CommitDate: Fri Apr 20 22:43:37 2007 +0930 21566 21567 Make cairo-output-stream.c accept variable width printf fields 21568 21569 src/cairo-output-stream.c | 27 +++++++++++++++++++++++---- 21570 1 file changed, 23 insertions(+), 4 deletions(-) 21571 21572commit 0c2a653033e0b631a1cb6591263cbd6125ccc00c 21573Author: Adrian Johnson <ajohnson@redneon.com> 21574AuthorDate: Fri Apr 20 22:30:55 2007 +0930 21575Commit: Adrian Johnson <ajohnson@redneon.com> 21576CommitDate: Fri Apr 20 22:30:55 2007 +0930 21577 21578 Add CFF CID Fallback 21579 21580 Switching to CID font embedding requires a fallback font for 21581 the case where CFF CID or TrueType CID subsetting fails. 21582 21583 The new function _cairo_type2_charstrings_init() added to 21584 cairo-type1-fallback.c creates Type2 charstrings from glyph 21585 paths. _cairo_cff_fallback_init() in cairo-cff-subset.c 21586 wraps these charstrings in a CFF CID font. 21587 21588 src/cairo-cff-subset.c | 212 ++++++++++++++++++++++++++++++++ 21589 src/cairo-scaled-font-subsets-private.h | 68 ++++++++++ 21590 src/cairo-type1-fallback.c | 211 ++++++++++++++++++++++--------- 21591 3 files changed, 432 insertions(+), 59 deletions(-) 21592 21593commit c68a2389f51880b0fa9df6750abdd840258666fc 21594Author: Adrian Johnson <ajohnson@redneon.com> 21595AuthorDate: Fri Apr 20 22:30:05 2007 +0930 21596Commit: Adrian Johnson <ajohnson@redneon.com> 21597CommitDate: Fri Apr 20 22:30:05 2007 +0930 21598 21599 Make CFF Subsetting create CID subsets 21600 21601 OpenType/CFF fonts come in two types: CID and non CID. 21602 CFF CID font subsetting was previously disabled in cairo 21603 due 1) to the need to embed CFF CID fonts in PDF as a CID fonts 21604 and 2) there is no easy way to convert CFF CID to CFF non CID. 21605 21606 With the switch to CID fonts cairo-cff-subset.c has been 21607 updated to subset CID fonts and to covert non CID fonts to 21608 CID. A further advantage of converting non CID CFF fonts 21609 to CID is the reduction in size due to not embedding the 21610 name of each glyph in the font subset. 21611 21612 src/cairo-cff-subset.c | 858 +++++++++++++++++++++++++++++++----------------- 21613 src/cairo-pdf-surface.c | 2 + 21614 2 files changed, 561 insertions(+), 299 deletions(-) 21615 21616commit 073fce5a85ab90b1bc6915e41d6a420a47e540e6 21617Author: Adrian Johnson <ajohnson@redneon.com> 21618AuthorDate: Fri Apr 20 22:29:41 2007 +0930 21619Commit: Adrian Johnson <ajohnson@redneon.com> 21620CommitDate: Fri Apr 20 22:29:41 2007 +0930 21621 21622 Add support for creating CID/composite font subsets 21623 21624 cairo-scaled-font-subsets.c now provides three functions for creating subsets: 21625 21626 _cairo_scaled_font_subsets_create_scaled() 21627 Create a subset for each scaled font with maximum size INT_MAX. 21628 21629 _cairo_scaled_font_subsets_create_simple() 21630 Create subsets suitable for embedding as simple fonts in PS/PDF. 21631 21632 _cairo_scaled_font_subsets_create_composite() 21633 Create subsets suitable for embedding as composite fonts in PS/PDF. 21634 21635 The _create_simple() and _create_composite() functions both merge 21636 scaled fonts with the same face and an outline path available into 21637 the same subset. _create_composite() has a maximum subset size of 21638 65536 for outline fonts. Bitmap fonts have a separate subset for 21639 each scale with a maximum subset size of 256. 21640 21641 The _create_simple() and _create_composite() functions both reserve 21642 the first glyph in the subset for the .notdef glyph. CID fonts require 21643 CID 0 to be .notdef. 21644 21645 Update Type1, TrueType and CFF subsetting to expect glyph 0 of each 21646 subset to be the .notdef. 21647 21648 src/cairo-cff-subset.c | 9 +-- 21649 src/cairo-pdf-surface.c | 5 +- 21650 src/cairo-ps-surface.c | 13 ++-- 21651 src/cairo-scaled-font-subsets-private.h | 61 +++++++++++---- 21652 src/cairo-scaled-font-subsets.c | 127 +++++++++++++++++++++++--------- 21653 src/cairo-svg-surface.c | 2 +- 21654 src/cairo-truetype-subset.c | 21 ++---- 21655 src/cairo-type1-fallback.c | 2 +- 21656 src/cairo-type1-subset.c | 3 - 21657 9 files changed, 156 insertions(+), 87 deletions(-) 21658 21659commit bf957ee0f29ff49970b4791718eccdb92f3d6886 21660Author: Chris Wilson <chris@chris-wilson.co.uk> 21661AuthorDate: Fri Mar 23 12:59:38 2007 +0000 21662Commit: Chris Wilson <chris@chris-wilson.co.uk> 21663CommitDate: Fri Apr 20 09:52:49 2007 +0100 21664 21665 cairo-png - handle short reads 21666 21667 During MT cairo testing we get the error "libpng: Read Error" which is 21668 emitted should the fread return fewer bytes than asked. However, this is 21669 not necessarily an error, so double-check the ferror() status before 21670 raising a png_error(). 21671 21672 src/cairo-png.c | 24 +++++++++++++++++------- 21673 1 file changed, 17 insertions(+), 7 deletions(-) 21674 21675commit d00aa44206f474e11c66c585d09bfd55e747cc5b 21676Author: Behdad Esfahbod <behdad@behdad.org> 21677AuthorDate: Fri Apr 20 01:28:56 2007 -0400 21678Commit: Behdad Esfahbod <behdad@behdad.org> 21679CommitDate: Fri Apr 20 01:28:56 2007 -0400 21680 21681 [Makefile.am] Add a "make snapshot" target 21682 that creates a tarball named with version, date, and git hash of 21683 the tree. Like cairo-1.4.5-20070420-2a0389.tar.gz. 21684 21685 Makefile.am | 11 ++++++++++- 21686 1 file changed, 10 insertions(+), 1 deletion(-) 21687 21688commit 2a038956635e27f61fb2147527d2262eebf9bb26 21689Author: Behdad Esfahbod <behdad@behdad.org> 21690AuthorDate: Fri Apr 20 00:55:03 2007 -0400 21691Commit: Behdad Esfahbod <behdad@behdad.org> 21692CommitDate: Fri Apr 20 00:55:03 2007 -0400 21693 21694 [pixman] Fix typo in Makefile.am 21695 21696 pixman/src/Makefile.am | 2 +- 21697 1 file changed, 1 insertion(+), 1 deletion(-) 21698 21699commit abcd929c57459f95e93504e0ef07b012b497a363 21700Author: Behdad Esfahbod <behdad@behdad.org> 21701AuthorDate: Fri Apr 20 00:50:48 2007 -0400 21702Commit: Behdad Esfahbod <behdad@behdad.org> 21703CommitDate: Fri Apr 20 00:52:04 2007 -0400 21704 21705 [boilerplate] Add cairo_boilerplate_format_from_content 21706 21707 boilerplate/cairo-boilerplate-quartz.c | 9 +-------- 21708 boilerplate/cairo-boilerplate-test-surfaces.c | 13 +------------ 21709 boilerplate/cairo-boilerplate-win32.c | 8 ++------ 21710 boilerplate/cairo-boilerplate.c | 18 ++++++++++++++++++ 21711 boilerplate/cairo-boilerplate.h | 3 +++ 21712 5 files changed, 25 insertions(+), 26 deletions(-) 21713 21714commit 97624dc488b41eb83d70b2c44a595daa5d833e7f 21715Author: Behdad Esfahbod <behdad@behdad.org> 21716AuthorDate: Fri Apr 20 00:45:42 2007 -0400 21717Commit: Behdad Esfahbod <behdad@behdad.org> 21718CommitDate: Fri Apr 20 00:52:04 2007 -0400 21719 21720 [boilerplate] Strip test-surfaces boilerplate into cairo-boilerplate-test-surfaces* 21721 21722 boilerplate/Makefile.am | 5 + 21723 .../cairo-boilerplate-test-surfaces-private.h | 63 ++++++++ 21724 boilerplate/cairo-boilerplate-test-surfaces.c | 170 +++++++++++++++++++++ 21725 boilerplate/cairo-boilerplate.c | 146 +----------------- 21726 4 files changed, 241 insertions(+), 143 deletions(-) 21727 21728commit 2e709321d858a048731eeaaca4a13a96de739e3f 21729Author: Behdad Esfahbod <behdad@behdad.org> 21730AuthorDate: Fri Apr 20 00:34:51 2007 -0400 21731Commit: Behdad Esfahbod <behdad@behdad.org> 21732CommitDate: Fri Apr 20 00:52:03 2007 -0400 21733 21734 [boilerplate] Move xasprintf to xmalloc.c 21735 21736 boilerplate/cairo-boilerplate.c | 45 ------------------------------------- 21737 boilerplate/cairo-boilerplate.h | 32 +++++++++++++------------- 21738 boilerplate/xmalloc.c | 50 ++++++++++++++++++++++++++++++++++++++--- 21739 boilerplate/xmalloc.h | 9 +++++++- 21740 test/cairo-test.h | 2 +- 21741 5 files changed, 71 insertions(+), 67 deletions(-) 21742 21743commit 5331445c12756293a915420a26ab5553fc7db3fc 21744Author: Behdad Esfahbod <behdad@behdad.org> 21745AuthorDate: Fri Apr 20 00:26:17 2007 -0400 21746Commit: Behdad Esfahbod <behdad@behdad.org> 21747CommitDate: Fri Apr 20 00:52:03 2007 -0400 21748 21749 [boilerplate] Cleanup includes in cairo-boilerplate-beos.cpp 21750 21751 boilerplate/cairo-boilerplate-beos.cpp | 20 ++++++++++---------- 21752 1 file changed, 10 insertions(+), 10 deletions(-) 21753 21754commit 56e916d40cf2a5f061347254657592f7bfc90d02 21755Author: Behdad Esfahbod <behdad@behdad.org> 21756AuthorDate: Fri Apr 20 00:25:44 2007 -0400 21757Commit: Behdad Esfahbod <behdad@behdad.org> 21758CommitDate: Fri Apr 20 00:52:03 2007 -0400 21759 21760 [boilerplate] Fix typos in cairo-boilerplate-glitz.c 21761 21762 boilerplate/cairo-boilerplate-glitz.c | 4 ++-- 21763 1 file changed, 2 insertions(+), 2 deletions(-) 21764 21765commit 06718b0da642d39b7b4dbfc009f08acb24e5e802 21766Author: Behdad Esfahbod <behdad@behdad.org> 21767AuthorDate: Fri Apr 20 00:15:19 2007 -0400 21768Commit: Behdad Esfahbod <behdad@behdad.org> 21769CommitDate: Fri Apr 20 00:52:03 2007 -0400 21770 21771 [boilerplate] Remove leftover call to cairo_test_log 21772 21773 boilerplate/cairo-boilerplate.c | 2 +- 21774 1 file changed, 1 insertion(+), 1 deletion(-) 21775 21776commit 99737a60cb8cae1643b84782768e8c6d50ac7d0a 21777Author: Behdad Esfahbod <behdad@behdad.org> 21778AuthorDate: Fri Apr 20 00:13:25 2007 -0400 21779Commit: Behdad Esfahbod <behdad@behdad.org> 21780CommitDate: Fri Apr 20 00:52:03 2007 -0400 21781 21782 [boilerplate] Clean up includes and remove unnecessary ones 21783 21784 boilerplate/cairo-boilerplate-directfb.c | 9 +++++---- 21785 boilerplate/cairo-boilerplate-pdf.c | 2 +- 21786 boilerplate/cairo-boilerplate-svg.c | 2 +- 21787 boilerplate/cairo-boilerplate-xcb.c | 2 +- 21788 boilerplate/cairo-boilerplate.c | 30 +++++++++--------------------- 21789 5 files changed, 17 insertions(+), 28 deletions(-) 21790 21791commit 4b569f13d758015f33ad258a70ad4f472da771ed 21792Author: Behdad Esfahbod <behdad@behdad.org> 21793AuthorDate: Fri Apr 20 00:08:44 2007 -0400 21794Commit: Behdad Esfahbod <behdad@behdad.org> 21795CommitDate: Fri Apr 20 00:52:03 2007 -0400 21796 21797 [boilerplate] Strip win32 boilerplate into cairo-boilerplate-win32* 21798 21799 boilerplate/Makefile.am | 5 +++ 21800 boilerplate/cairo-boilerplate-win32-private.h | 38 ++++++++++++++++++++ 21801 boilerplate/cairo-boilerplate-win32.c | 51 +++++++++++++++++++++++++++ 21802 boilerplate/cairo-boilerplate.c | 31 +++------------- 21803 4 files changed, 99 insertions(+), 26 deletions(-) 21804 21805commit 0a03d66fffe7388d8fb4ffdb7bb5501a214c6342 21806Author: Behdad Esfahbod <behdad@behdad.org> 21807AuthorDate: Thu Apr 19 23:58:51 2007 -0400 21808Commit: Behdad Esfahbod <behdad@behdad.org> 21809CommitDate: Fri Apr 20 00:52:03 2007 -0400 21810 21811 [boilerplate] Rename create_win32_surface to _cairo_boilerplate_win32_create_surface 21812 21813 boilerplate/cairo-boilerplate.c | 22 +++++++++++----------- 21814 1 file changed, 11 insertions(+), 11 deletions(-) 21815 21816commit 5ee882d3941a9df61d539e056933564a758a6bbc 21817Author: Behdad Esfahbod <behdad@behdad.org> 21818AuthorDate: Thu Apr 19 23:53:34 2007 -0400 21819Commit: Behdad Esfahbod <behdad@behdad.org> 21820CommitDate: Fri Apr 20 00:52:03 2007 -0400 21821 21822 [boilerplate] Remove empty cleanup_win32 21823 21824 boilerplate/cairo-boilerplate.c | 11 ++--------- 21825 1 file changed, 2 insertions(+), 9 deletions(-) 21826 21827commit a684fd80e750bea5661262e29a59c4f8c4d9cee3 21828Author: Behdad Esfahbod <behdad@behdad.org> 21829AuthorDate: Thu Apr 19 23:36:00 2007 -0400 21830Commit: Behdad Esfahbod <behdad@behdad.org> 21831CommitDate: Fri Apr 20 00:52:03 2007 -0400 21832 21833 [directfb] Silence compiler warning 21834 21835 src/cairo-directfb-surface.c | 2 +- 21836 1 file changed, 1 insertion(+), 1 deletion(-) 21837 21838commit 23e6abc3fc01e3d722adfc48cd1df9c8db73adc1 21839Author: Behdad Esfahbod <behdad@behdad.org> 21840AuthorDate: Thu Apr 19 22:40:52 2007 -0400 21841Commit: Behdad Esfahbod <behdad@behdad.org> 21842CommitDate: Fri Apr 20 00:52:03 2007 -0400 21843 21844 [boilerplate] Strip glitz boilerplate into cairo-boilerplate-glitz* 21845 21846 boilerplate/Makefile.am | 30 +- 21847 boilerplate/cairo-boilerplate-glitz-private.h | 73 ++++ 21848 boilerplate/cairo-boilerplate-glitz.c | 477 +++++++++++++++++++++++++ 21849 boilerplate/cairo-boilerplate.c | 480 +------------------------- 21850 4 files changed, 582 insertions(+), 478 deletions(-) 21851 21852commit 7d576a376706aad427915b4872429f5605104886 21853Author: Behdad Esfahbod <behdad@behdad.org> 21854AuthorDate: Thu Apr 19 22:25:28 2007 -0400 21855Commit: Behdad Esfahbod <behdad@behdad.org> 21856CommitDate: Fri Apr 20 00:52:03 2007 -0400 21857 21858 [boilerplate] Minor indentation fix 21859 21860 boilerplate/cairo-boilerplate.c | 4 ++-- 21861 1 file changed, 2 insertions(+), 2 deletions(-) 21862 21863commit 06b657ccf129f6f154c0db7886e5cca6191f93ca 21864Author: Behdad Esfahbod <behdad@behdad.org> 21865AuthorDate: Thu Apr 19 22:20:38 2007 -0400 21866Commit: Behdad Esfahbod <behdad@behdad.org> 21867CommitDate: Fri Apr 20 00:52:02 2007 -0400 21868 21869 [boilerplate] Strip xcb boilerplate into cairo-boilerplate-xcb* 21870 21871 boilerplate/Makefile.am | 5 ++ 21872 boilerplate/cairo-boilerplate-xcb-private.h | 44 +++++++++++ 21873 boilerplate/cairo-boilerplate-xcb.c | 115 ++++++++++++++++++++++++++++ 21874 boilerplate/cairo-boilerplate.c | 90 +--------------------- 21875 4 files changed, 167 insertions(+), 87 deletions(-) 21876 21877commit 65f636649d54348722354b2400c3a191309da0e1 21878Author: Behdad Esfahbod <behdad@behdad.org> 21879AuthorDate: Thu Apr 19 22:13:08 2007 -0400 21880Commit: Behdad Esfahbod <behdad@behdad.org> 21881CommitDate: Fri Apr 20 00:52:02 2007 -0400 21882 21883 [boilerplate] Strip svg boilerplate into cairo-boilerplate-svg* 21884 21885 boilerplate/Makefile.am | 5 ++ 21886 boilerplate/cairo-boilerplate-svg-private.h | 44 ++++++++++ 21887 boilerplate/cairo-boilerplate-svg.c | 129 ++++++++++++++++++++++++++++ 21888 boilerplate/cairo-boilerplate.c | 106 +---------------------- 21889 4 files changed, 181 insertions(+), 103 deletions(-) 21890 21891commit 8c9960675b82978acbd5a85ef358c674c3407ee3 21892Author: Behdad Esfahbod <behdad@behdad.org> 21893AuthorDate: Thu Apr 19 22:10:09 2007 -0400 21894Commit: Behdad Esfahbod <behdad@behdad.org> 21895CommitDate: Fri Apr 20 00:52:02 2007 -0400 21896 21897 [boilerplate] Strip pdf boilerplate into cairo-boilerplate-pdf* 21898 21899 boilerplate/Makefile.am | 5 ++ 21900 boilerplate/cairo-boilerplate-pdf-private.h | 44 +++++++++ 21901 boilerplate/cairo-boilerplate-pdf.c | 134 ++++++++++++++++++++++++++++ 21902 boilerplate/cairo-boilerplate.c | 111 +---------------------- 21903 4 files changed, 186 insertions(+), 108 deletions(-) 21904 21905commit d9ce7de57514710f425bdee613edc4ea79ac0f0a 21906Author: Behdad Esfahbod <behdad@behdad.org> 21907AuthorDate: Thu Apr 19 22:08:24 2007 -0400 21908Commit: Behdad Esfahbod <behdad@behdad.org> 21909CommitDate: Fri Apr 20 00:52:02 2007 -0400 21910 21911 [boilerplate] Rename xcairo_surface_set_user_data to cairo_boilerplate_surface_set_user_data 21912 21913 and make it public. 21914 21915 boilerplate/cairo-boilerplate.c | 48 ++++++++++++++++++++++------------------- 21916 boilerplate/cairo-boilerplate.h | 6 ++++++ 21917 2 files changed, 32 insertions(+), 22 deletions(-) 21918 21919commit df6b8ecc8963518c897648d82aab1aa090b4721a 21920Author: Behdad Esfahbod <behdad@behdad.org> 21921AuthorDate: Thu Apr 19 21:46:51 2007 -0400 21922Commit: Behdad Esfahbod <behdad@behdad.org> 21923CommitDate: Fri Apr 20 00:52:02 2007 -0400 21924 21925 [boilerplate] Strip ps boilerplate into cairo-boilerplate-ps* 21926 21927 boilerplate/Makefile.am | 5 ++ 21928 boilerplate/cairo-boilerplate-ps-private.h | 44 +++++++++ 21929 boilerplate/cairo-boilerplate-ps.c | 138 +++++++++++++++++++++++++++++ 21930 boilerplate/cairo-boilerplate.c | 115 +----------------------- 21931 4 files changed, 190 insertions(+), 112 deletions(-) 21932 21933commit 6461f0d120bf5fabd08b7621233229b223b3de89 21934Author: Behdad Esfahbod <behdad@behdad.org> 21935AuthorDate: Thu Apr 19 20:45:10 2007 -0400 21936Commit: Behdad Esfahbod <behdad@behdad.org> 21937CommitDate: Fri Apr 20 00:52:02 2007 -0400 21938 21939 [boilerplate] Remove unused variables 21940 21941 boilerplate/cairo-boilerplate.c | 3 --- 21942 1 file changed, 3 deletions(-) 21943 21944commit f2d6275352142df631e00e27456d7e6ceb83804c 21945Author: Behdad Esfahbod <behdad@behdad.org> 21946AuthorDate: Thu Apr 19 20:41:34 2007 -0400 21947Commit: Behdad Esfahbod <behdad@behdad.org> 21948CommitDate: Fri Apr 20 00:52:02 2007 -0400 21949 21950 [boilerplate] Fix renaming typo 21951 21952 boilerplate/cairo-boilerplate.c | 2 +- 21953 1 file changed, 1 insertion(+), 1 deletion(-) 21954 21955commit d5535c993b5cde5df29a7a29339aa500992128bf 21956Author: Behdad Esfahbod <behdad@behdad.org> 21957AuthorDate: Thu Apr 19 20:36:14 2007 -0400 21958Commit: Behdad Esfahbod <behdad@behdad.org> 21959CommitDate: Fri Apr 20 00:52:02 2007 -0400 21960 21961 [boilerplate/test] Move vector_ignored_tests from boilerplate/ to test/ 21962 21963 boilerplate/cairo-boilerplate.c | 28 ------------------- 21964 test/cairo-test.c | 62 ++++++++++++++++++++++++++++++----------- 21965 2 files changed, 45 insertions(+), 45 deletions(-) 21966 21967commit d6dc4f978364d287367d239e5594c7ffe50a2571 21968Author: Behdad Esfahbod <behdad@behdad.org> 21969AuthorDate: Thu Apr 19 20:28:22 2007 -0400 21970Commit: Behdad Esfahbod <behdad@behdad.org> 21971CommitDate: Fri Apr 20 00:52:02 2007 -0400 21972 21973 [boilerplate] Add a boolean is_vector to boilerplate target type 21974 21975 This is used to move the skip-these-tests-for-vector code into 21976 cairo-test which it belongs. 21977 21978 boilerplate/cairo-boilerplate.c | 18 ++++++++++++------ 21979 boilerplate/cairo-boilerplate.h | 1 + 21980 2 files changed, 13 insertions(+), 6 deletions(-) 21981 21982commit 0b5e2dbaa84225452a0935f61d2348bce88a3e69 21983Author: Behdad Esfahbod <behdad@behdad.org> 21984AuthorDate: Thu Apr 19 20:23:55 2007 -0400 21985Commit: Behdad Esfahbod <behdad@behdad.org> 21986CommitDate: Fri Apr 20 00:52:02 2007 -0400 21987 21988 [boilerplate] Sort backend entries in Makefile.am alphabetically 21989 21990 boilerplate/Makefile.am | 10 +++++----- 21991 1 file changed, 5 insertions(+), 5 deletions(-) 21992 21993commit be0320c4f8082a9274899959dc82297a04aa7800 21994Author: Behdad Esfahbod <behdad@behdad.org> 21995AuthorDate: Thu Apr 19 20:17:26 2007 -0400 21996Commit: Behdad Esfahbod <behdad@behdad.org> 21997CommitDate: Fri Apr 20 00:52:02 2007 -0400 21998 21999 [boilerplate] Properly namespace boilerplate methods 22000 22001 in preparation for ripping them into per-backend files. 22002 22003 boilerplate/cairo-boilerplate-beos.cpp | 24 +-- 22004 boilerplate/cairo-boilerplate-directfb.c | 33 ++-- 22005 boilerplate/cairo-boilerplate-quartz.c | 12 +- 22006 boilerplate/cairo-boilerplate-xlib.c | 24 +-- 22007 boilerplate/cairo-boilerplate.c | 328 ++++++++++++++++++------------- 22008 5 files changed, 236 insertions(+), 185 deletions(-) 22009 22010commit 9b660a3d54940c68eb48f2afeca7e87e1d2bffa6 22011Author: Behdad Esfahbod <behdad@behdad.org> 22012AuthorDate: Thu Apr 19 19:56:05 2007 -0400 22013Commit: Behdad Esfahbod <behdad@behdad.org> 22014CommitDate: Fri Apr 20 00:52:02 2007 -0400 22015 22016 [boilerplate] Strip xlib boilerplate into cairo-boilerplate-xlib* 22017 22018 boilerplate/Makefile.am | 5 + 22019 boilerplate/cairo-boilerplate-xlib-private.h | 44 ++++++ 22020 boilerplate/cairo-boilerplate-xlib.c | 196 +++++++++++++++++++++++++++ 22021 boilerplate/cairo-boilerplate.c | 183 ++----------------------- 22022 4 files changed, 254 insertions(+), 174 deletions(-) 22023 22024commit d945f6434643ac35f0e86352cfe3ccf021f568de 22025Author: Behdad Esfahbod <behdad@behdad.org> 22026AuthorDate: Thu Apr 19 19:44:57 2007 -0400 22027Commit: Behdad Esfahbod <behdad@behdad.org> 22028CommitDate: Fri Apr 20 00:52:01 2007 -0400 22029 22030 [boilerplate] Move includes around 22031 22032 boilerplate/cairo-boilerplate.c | 23 ++++++++++------------- 22033 1 file changed, 10 insertions(+), 13 deletions(-) 22034 22035commit 0130cca6924f5c0969ca285585c68a458301a882 22036Author: Behdad Esfahbod <behdad@behdad.org> 22037AuthorDate: Thu Apr 19 19:39:58 2007 -0400 22038Commit: Behdad Esfahbod <behdad@behdad.org> 22039CommitDate: Fri Apr 20 00:52:01 2007 -0400 22040 22041 [boilerplate] Rename test-directfb to boilerplate-directfb 22042 22043 boilerplate/Makefile.am | 3 ++- 22044 boilerplate/cairo-boilerplate-directfb-private.h | 23 ++++++++++++++++++++++ 22045 ...est-directfb.c => cairo-boilerplate-directfb.c} | 10 +++++----- 22046 boilerplate/cairo-boilerplate.c | 6 +++--- 22047 boilerplate/cairo-test-directfb.h | 23 ---------------------- 22048 5 files changed, 33 insertions(+), 32 deletions(-) 22049 22050commit fb2c0daa09af083278024c3da6f7e9e3f851984f 22051Author: Behdad Esfahbod <behdad@behdad.org> 22052AuthorDate: Thu Apr 19 19:38:20 2007 -0400 22053Commit: Behdad Esfahbod <behdad@behdad.org> 22054CommitDate: Fri Apr 20 00:52:01 2007 -0400 22055 22056 [boilerplate] Rename test-beos to boilerplate-beos 22057 22058 boilerplate/Makefile.am | 3 +- 22059 boilerplate/cairo-boilerplate-beos-private.h | 34 ++++++++++++++++++++++ 22060 ...ro-test-beos.cpp => cairo-boilerplate-beos.cpp} | 20 ++++++------- 22061 boilerplate/cairo-boilerplate.c | 8 ++--- 22062 boilerplate/cairo-test-beos.h | 34 ---------------------- 22063 5 files changed, 50 insertions(+), 49 deletions(-) 22064 22065commit 01760286b388870e5bebf3851b4bef1350d89852 22066Author: Behdad Esfahbod <behdad@behdad.org> 22067AuthorDate: Thu Apr 19 19:32:52 2007 -0400 22068Commit: Behdad Esfahbod <behdad@behdad.org> 22069CommitDate: Fri Apr 20 00:52:01 2007 -0400 22070 22071 [boilerplate] Rename quartz-boilerplate to boilerplate-quartz 22072 22073 boilerplate/Makefile.am | 4 ++-- 22074 ...oilerplate-private.h => cairo-boilerplate-quartz-private.h} | 8 ++++---- 22075 .../{cairo-quartz-boilerplate.c => cairo-boilerplate-quartz.c} | 6 +++--- 22076 boilerplate/cairo-boilerplate.c | 10 +++++----- 22077 4 files changed, 14 insertions(+), 14 deletions(-) 22078 22079commit d64ef355217db7a555da0029187d19c80ec12609 22080Author: Chris Wilson <chris@chris-wilson.co.uk> 22081AuthorDate: Thu Apr 19 23:12:09 2007 +0100 22082Commit: Chris Wilson <chris@chris-wilson.co.uk> 22083CommitDate: Thu Apr 19 23:12:09 2007 +0100 22084 22085 Include cairo-perf in make check 22086 22087 Although cairo-perf is not written to perform explicit failure testing of 22088 cairo, it does generate long sequences of cairo operations which often 22089 trigger unexpected errors. By including it with make check, it becomes 22090 even easier for the programmer to check that one has not broken cairo in 22091 terms of expected behaviour or performance. 22092 22093 Makefile.am | 3 ++- 22094 perf/Makefile.am | 30 +++++++++++++++++++----------- 22095 2 files changed, 21 insertions(+), 12 deletions(-) 22096 22097commit 0ffb021e9b0cc2ec9afc3eaa360b4518327afa6c 22098Author: Behdad Esfahbod <behdad@behdad.org> 22099AuthorDate: Thu Apr 19 16:52:51 2007 -0400 22100Commit: Behdad Esfahbod <behdad@behdad.org> 22101CommitDate: Thu Apr 19 16:53:24 2007 -0400 22102 22103 [cairo-mutex] If no mutex implementation is found, should #error instead of #warning 22104 22105 otherwise we will cause compile errors before the sanity check macros get 22106 a chance to err. 22107 22108 src/cairo-mutex-private.h | 4 ++-- 22109 1 file changed, 2 insertions(+), 2 deletions(-) 22110 22111commit 813cdd71503ca2d77da011c91368e55cf20ad657 22112Author: Behdad Esfahbod <behdad@behdad.org> 22113AuthorDate: Thu Apr 19 16:49:35 2007 -0400 22114Commit: Behdad Esfahbod <behdad@behdad.org> 22115CommitDate: Thu Apr 19 16:53:24 2007 -0400 22116 22117 [configure.in] Support --disable-pthread 22118 22119 Also allows for --enable-pthread=yes which will make configure abort 22120 if pthread is not found (as opposed to silently disabling it). 22121 22122 configure.in | 13 ++++++++++++- 22123 1 file changed, 12 insertions(+), 1 deletion(-) 22124 22125commit 6d01e89988ea89ae21f3461825583d89b6eef55e 22126Author: Chris Wilson <chris@chris-wilson.co.uk> 22127AuthorDate: Thu Apr 19 21:46:00 2007 +0100 22128Commit: Chris Wilson <chris@chris-wilson.co.uk> 22129CommitDate: Thu Apr 19 21:46:00 2007 +0100 22130 22131 Add callgrind output files to CLEANFILES and .gitignore. 22132 22133 perf/.gitignore | 2 ++ 22134 perf/Makefile.am | 1 + 22135 2 files changed, 3 insertions(+) 22136 22137commit 2c79f8b75bd5bb0bb3bf054fb2b3cae6de382a7c 22138Author: Chris Wilson <chris@chris-wilson.co.uk> 22139AuthorDate: Thu Apr 19 21:41:43 2007 +0100 22140Commit: Chris Wilson <chris@chris-wilson.co.uk> 22141CommitDate: Thu Apr 19 21:42:13 2007 +0100 22142 22143 Fix command line for running cairo-perf under valgrind. 22144 22145 The CAIRO_PERF_ENVIRONMENT slipped into the middle of the command line 22146 instead of at the start. 22147 22148 perf/Makefile.am | 8 ++++---- 22149 1 file changed, 4 insertions(+), 4 deletions(-) 22150 22151commit 3631c11eb4ab49f2bb3b9ef0478e5516793f221f 22152Author: Behdad Esfahbod <behdad@behdad.org> 22153AuthorDate: Thu Apr 19 16:38:23 2007 -0400 22154Commit: Behdad Esfahbod <behdad@behdad.org> 22155CommitDate: Thu Apr 19 16:38:23 2007 -0400 22156 22157 [cairo-mutex] Switch to HAVE_WINDOWS_H to use Win32 mutexes 22158 22159 src/cairo-mutex-private.h | 2 +- 22160 1 file changed, 1 insertion(+), 1 deletion(-) 22161 22162commit d2a824a191e6b0d10a1f495d970b0406e37e0a39 22163Author: Behdad Esfahbod <behdad@behdad.org> 22164AuthorDate: Thu Apr 19 16:37:36 2007 -0400 22165Commit: Behdad Esfahbod <behdad@behdad.org> 22166CommitDate: Thu Apr 19 16:37:36 2007 -0400 22167 22168 [cairo-commit] Update attribution headers in cairo-mutex-private.h 22169 22170 src/cairo-mutex-private.h | 3 ++- 22171 1 file changed, 2 insertions(+), 1 deletion(-) 22172 22173commit 12dfd8bb4bf72483c835e169003fa00b114beb13 22174Author: Behdad Esfahbod <behdad@behdad.org> 22175AuthorDate: Thu Apr 19 16:36:43 2007 -0400 22176Commit: Behdad Esfahbod <behdad@behdad.org> 22177CommitDate: Thu Apr 19 16:36:43 2007 -0400 22178 22179 [cairo-mutex] Warn if no mutex definition found and let sanity macros err 22180 about undefined CAIRO_MUTEX macros. 22181 22182 src/cairo-mutex-private.h | 8 +++++--- 22183 1 file changed, 5 insertions(+), 3 deletions(-) 22184 22185commit 6aa823841d6c1d59d4d972f0236f0e6a43199970 22186Author: Behdad Esfahbod <behdad@behdad.org> 22187AuthorDate: Thu Apr 19 16:36:10 2007 -0400 22188Commit: Behdad Esfahbod <behdad@behdad.org> 22189CommitDate: Thu Apr 19 16:36:10 2007 -0400 22190 22191 [cairo-mutex] Support non-reentrant compilation if CAIRO_NO_MUTEX defined 22192 to 1. 22193 22194 src/cairo-mutex-private.h | 10 +++++++++- 22195 1 file changed, 9 insertions(+), 1 deletion(-) 22196 22197commit e5980f69ad2d59ee305fe9aae62070a74d2df58b 22198Author: Behdad Esfahbod <behdad@behdad.org> 22199AuthorDate: Thu Apr 19 16:31:47 2007 -0400 22200Commit: Behdad Esfahbod <behdad@behdad.org> 22201CommitDate: Thu Apr 19 16:31:47 2007 -0400 22202 22203 [cairo-commit] Just warn for BeOS and let the sanity check macros err 22204 about undefined CAIRO_MUTEX macros. 22205 22206 src/cairo-mutex-private.h | 10 +++------- 22207 1 file changed, 3 insertions(+), 7 deletions(-) 22208 22209commit 8ebb054ff9d2fe12faa7b1807aef24b2bf916e64 22210Author: Behdad Esfahbod <behdad@behdad.org> 22211AuthorDate: Thu Apr 19 16:28:44 2007 -0400 22212Commit: Behdad Esfahbod <behdad@behdad.org> 22213CommitDate: Thu Apr 19 16:30:21 2007 -0400 22214 22215 [cairo-mutex] Prefer "#if CAIRO_SOMETHING" over "#if defined CAIRO_SOMETHING" 22216 22217 src/cairo-mutex-private.h | 4 ++-- 22218 1 file changed, 2 insertions(+), 2 deletions(-) 22219 22220commit 97c197478023ceb5477a203d058eaec2cb18f987 22221Author: Behdad Esfahbod <behdad@behdad.org> 22222AuthorDate: Thu Apr 19 16:26:21 2007 -0400 22223Commit: Behdad Esfahbod <behdad@behdad.org> 22224CommitDate: Thu Apr 19 16:26:21 2007 -0400 22225 22226 [cairo-mutex] Add default implementation for CAIRO_MUTEX_INIT 22227 that uses CAIRO_MUTEX_NIL_INITIALIZER. This used to be the 22228 implementation for pthread because pthread_mutex_init() is 22229 broken. See d48bb4fbe876a93199ba48fcf5f32734fbe18ba9. 22230 22231 src/cairo-mutex-private.h | 11 +++++++---- 22232 1 file changed, 7 insertions(+), 4 deletions(-) 22233 22234commit 6d2a2dd6d9190c62b209e47c083b7df72e7134fb 22235Author: Behdad Esfahbod <behdad@behdad.org> 22236AuthorDate: Thu Apr 19 16:24:16 2007 -0400 22237Commit: Behdad Esfahbod <behdad@behdad.org> 22238CommitDate: Thu Apr 19 16:24:16 2007 -0400 22239 22240 [cairo-mutex] Add default no-op implementation for CAIRO_MUTEX_FINI 22241 22242 src/cairo-mutex-private.h | 6 ++++++ 22243 1 file changed, 6 insertions(+) 22244 22245commit 2067d6fa90dae80aa666fb7328d51e2f92bec5bd 22246Author: Behdad Esfahbod <behdad@behdad.org> 22247AuthorDate: Thu Apr 19 16:23:14 2007 -0400 22248Commit: Behdad Esfahbod <behdad@behdad.org> 22249CommitDate: Thu Apr 19 16:23:14 2007 -0400 22250 22251 [cairo-mutex] Use CAIRO_MUTEX_NOOP when applicable 22252 22253 src/cairo-mutex-private.h | 2 +- 22254 1 file changed, 1 insertion(+), 1 deletion(-) 22255 22256commit 5dda76c90f8886b6017ca8bbdf81be2b97201962 22257Author: Behdad Esfahbod <behdad@behdad.org> 22258AuthorDate: Thu Apr 19 16:22:02 2007 -0400 22259Commit: Behdad Esfahbod <behdad@behdad.org> 22260CommitDate: Thu Apr 19 16:22:02 2007 -0400 22261 22262 [cairo-mutex] Err if at least one of mutex macros are not defined 22263 22264 src/cairo-mutex-private.h | 23 +++++++++++++++++++++++ 22265 1 file changed, 23 insertions(+) 22266 22267commit f771b9157c26430949f4dd1412c7a7b35367f81a 22268Author: Behdad Esfahbod <behdad@behdad.org> 22269AuthorDate: Thu Apr 19 16:21:13 2007 -0400 22270Commit: Behdad Esfahbod <behdad@behdad.org> 22271CommitDate: Thu Apr 19 16:21:13 2007 -0400 22272 22273 [cairo-mutex] Define and use CAIRO_MUTEX_USE_GENERIC_INITIALIZATION 22274 We use the generic initialization if CAIRO_MUTEX_INITIALIZE is not 22275 defined. 22276 22277 src/cairo-mutex-private.h | 9 +++++++++ 22278 src/cairo-mutex.c | 2 +- 22279 2 files changed, 10 insertions(+), 1 deletion(-) 22280 22281commit 4fc52e2d49c1299f8f175e22472ebe08baa41fa4 22282Author: Behdad Esfahbod <behdad@behdad.org> 22283AuthorDate: Thu Apr 19 16:19:48 2007 -0400 22284Commit: Behdad Esfahbod <behdad@behdad.org> 22285CommitDate: Thu Apr 19 16:19:48 2007 -0400 22286 22287 [cairo-mutex] Define CAIRO_MUTEX_NOOP 22288 22289 src/cairo-mutex-private.h | 6 ++++++ 22290 1 file changed, 6 insertions(+) 22291 22292commit f9dd8fd0ef0ad95921723155b951cd113ccb2d0b 22293Author: Behdad Esfahbod <behdad@behdad.org> 22294AuthorDate: Thu Apr 19 16:19:25 2007 -0400 22295Commit: Behdad Esfahbod <behdad@behdad.org> 22296CommitDate: Thu Apr 19 16:19:25 2007 -0400 22297 22298 [cairo-mutex] Inlucde cairo-features.h and config.h 22299 Previously we were lucky enough to have them included before us 22300 22301 src/cairo-mutex-private.h | 6 ++++++ 22302 1 file changed, 6 insertions(+) 22303 22304commit 4e754cf3df9855c1d442578e555b7fb17c3dd4a1 22305Author: Behdad Esfahbod <behdad@behdad.org> 22306AuthorDate: Thu Apr 19 15:31:24 2007 -0400 22307Commit: Behdad Esfahbod <behdad@behdad.org> 22308CommitDate: Thu Apr 19 16:07:15 2007 -0400 22309 22310 [cairo-truetype-subset] Shut gcc warning up 22311 22312 src/cairo-truetype-subset.c | 2 +- 22313 1 file changed, 1 insertion(+), 1 deletion(-) 22314 22315commit 4141e752e2eb0f40f2eb298bad398e6390e00ef8 22316Author: Behdad Esfahbod <behdad@behdad.org> 22317AuthorDate: Thu Apr 19 15:04:11 2007 -0400 22318Commit: Behdad Esfahbod <behdad@behdad.org> 22319CommitDate: Thu Apr 19 16:07:15 2007 -0400 22320 22321 [cairo-freelist] Remove redundant struct declarations 22322 22323 src/cairo-freelist-private.h | 2 -- 22324 1 file changed, 2 deletions(-) 22325 22326commit ea817c560c429f445e4c450b60d499dae27f6024 22327Author: Behdad Esfahbod <behdad@behdad.org> 22328AuthorDate: Thu Apr 19 14:50:38 2007 -0400 22329Commit: Behdad Esfahbod <behdad@behdad.org> 22330CommitDate: Thu Apr 19 16:07:15 2007 -0400 22331 22332 [cairo-mutex] Remove unneeded #undef CAIRO_MUTEX_EXTERNAL 22333 22334 src/cairo-mutex-private.h | 8 -------- 22335 1 file changed, 8 deletions(-) 22336 22337commit 0b281085b55aae70876c6ef022266b73461800ab 22338Author: Behdad Esfahbod <behdad@behdad.org> 22339AuthorDate: Thu Apr 19 14:45:41 2007 -0400 22340Commit: Behdad Esfahbod <behdad@behdad.org> 22341CommitDate: Thu Apr 19 16:07:15 2007 -0400 22342 22343 [cairo-mutex] Err on unintended inclusion of cairo-mutex-list-private.h 22344 22345 src/cairo-mutex-list-private.h | 3 +++ 22346 1 file changed, 3 insertions(+) 22347 22348commit 47be7280bfe751c9f635f1e17c158f04b2927ae3 22349Author: Behdad Esfahbod <behdad@behdad.org> 22350AuthorDate: Thu Apr 19 14:42:55 2007 -0400 22351Commit: Behdad Esfahbod <behdad@behdad.org> 22352CommitDate: Thu Apr 19 16:07:15 2007 -0400 22353 22354 [cairo-mutex] Remove multiple-inclusion guards from cairo-mutex-list-private.h 22355 22356 This is a list header file. We should not prevent it from multiple 22357 inclusions. 22358 22359 src/cairo-mutex-list-private.h | 3 --- 22360 src/cairo-mutex.c | 2 -- 22361 2 files changed, 5 deletions(-) 22362 22363commit 55ea0466e25de2c60171a9d6c96536bc2e7fb9e3 22364Author: Chris Wilson <chris@chris-wilson.co.uk> 22365AuthorDate: Thu Apr 19 20:24:27 2007 +0100 22366Commit: Chris Wilson <chris@chris-wilson.co.uk> 22367CommitDate: Thu Apr 19 20:37:06 2007 +0100 22368 22369 Embed simple clip XRectangles in cairo_xlib_surface_t 22370 22371 Toolkits like GTK+ almost always set a simple rectangular clip mask before 22372 any cairo operation, so avoid the allocation for this simple case by 22373 embedding a small number of XRectangles into the surface structure. 22374 22375 src/cairo-xlib-surface.c | 18 +++++++++++------- 22376 1 file changed, 11 insertions(+), 7 deletions(-) 22377 22378commit 7906a993403e75aa34b32d2d9338ec179896d765 22379Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 22380AuthorDate: Thu Apr 19 14:54:30 2007 +0200 22381Commit: Mathias Hasselmann <mathias.hasselmann@gmx.de> 22382CommitDate: Thu Apr 19 14:54:30 2007 +0200 22383 22384 Define INT32 limits on MSVC as noticed by Hans-Jürgen Schäler 22385 22386 src/cairo-wideint-private.h | 6 ++++++ 22387 1 file changed, 6 insertions(+) 22388 22389commit cc8841645cd7aa06ae48cbad804b31b3c0c2146b 22390Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 22391AuthorDate: Thu Apr 19 13:47:45 2007 +0200 22392Commit: Mathias Hasselmann <mathias.hasselmann@gmx.de> 22393CommitDate: Thu Apr 19 13:47:45 2007 +0200 22394 22395 Properly use CAIRO_MUTEX_{INIT,FINI} and remove CAIRO_MUTEX_LIST_PRIVATE_H sentinal before explicitly including the mutex list. 22396 22397 src/cairo-mutex.c | 10 ++++++---- 22398 1 file changed, 6 insertions(+), 4 deletions(-) 22399 22400commit 39a633a8f3618f3b1adb3eefdf36e2fc6d896054 22401Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 22402AuthorDate: Thu Apr 19 13:15:08 2007 +0200 22403Commit: Mathias Hasselmann <mathias.hasselmann@gmx.de> 22404CommitDate: Thu Apr 19 13:38:26 2007 +0200 22405 22406 Reintroduce DllMain as deterministic mutex initialization path 22407 22408 src/cairo-win32-surface.c | 30 ++++++++++++++++++++++++++++++ 22409 1 file changed, 30 insertions(+) 22410 22411commit 9b348929b51fb45f5985914350a10955d6df17ae 22412Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 22413AuthorDate: Thu Apr 19 13:13:42 2007 +0200 22414Commit: Mathias Hasselmann <mathias.hasselmann@gmx.de> 22415CommitDate: Thu Apr 19 13:38:26 2007 +0200 22416 22417 Introduce CAIRO_MUTEX_FINALIZE as counter-part for CAIRO_MUTEX_INITIALIZE 22418 22419 src/cairo-mutex-private.h | 8 +++++++- 22420 src/cairo-mutex.c | 12 ++++++++++++ 22421 src/cairo-os2-surface.c | 6 +++--- 22422 3 files changed, 22 insertions(+), 4 deletions(-) 22423 22424commit 67767afa09e3622988b9ac67b754114ea9f84105 22425Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 22426AuthorDate: Thu Apr 19 12:35:10 2007 +0200 22427Commit: Mathias Hasselmann <mathias.hasselmann@gmx.de> 22428CommitDate: Thu Apr 19 13:38:25 2007 +0200 22429 22430 Update _cairo_mutex_initialized during initialization. 22431 22432 src/cairo-mutex.c | 2 ++ 22433 1 file changed, 2 insertions(+) 22434 22435commit 41c6eebcd1fab94fd3a91d09f1ef6ee0d8c7a044 22436Author: Chris Wilson <chris@chris-wilson.co.uk> 22437AuthorDate: Thu Apr 19 11:56:15 2007 +0100 22438Commit: Chris Wilson <chris@chris-wilson.co.uk> 22439CommitDate: Thu Apr 19 11:56:15 2007 +0100 22440 22441 Optionally provide a pattern to use for creating a similar solid surface. 22442 22443 _cairo_surface_create_similar_solid() creates a fresh pattern to wrap 22444 color, however sometimes the caller already has that pattern available. 22445 In those circumstances we can pass the pattern as well as the color and 22446 avoid the extra allocation. 22447 22448 src/cairo-clip.c | 3 ++- 22449 src/cairo-glitz-surface.c | 3 ++- 22450 src/cairo-pattern.c | 3 ++- 22451 src/cairo-surface.c | 24 +++++++++++++++--------- 22452 src/cairoint.h | 6 +++++- 22453 5 files changed, 26 insertions(+), 13 deletions(-) 22454 22455commit ef60e7c65144edd1aa14757b269f2c196df732a2 22456Author: Chris Wilson <chris@chris-wilson.co.uk> 22457AuthorDate: Wed Apr 18 18:08:45 2007 +0100 22458Commit: Chris Wilson <chris@chris-wilson.co.uk> 22459CommitDate: Thu Apr 19 10:54:02 2007 +0100 22460 22461 cairo-xlib-surface - track picture properties. 22462 22463 By tracking picture properties we can dramatically reduce the amount of 22464 X11 traffic by avoiding redundant changes. 22465 22466 src/cairo-xlib-surface.c | 35 ++++++++++++++++++++++++----------- 22467 1 file changed, 24 insertions(+), 11 deletions(-) 22468 22469commit 9cf09556339e64bdf1273e95938b657112df07b6 22470Author: Chris Wilson <chris@chris-wilson.co.uk> 22471AuthorDate: Thu Apr 19 09:27:51 2007 +0100 22472Commit: Chris Wilson <chris@chris-wilson.co.uk> 22473CommitDate: Thu Apr 19 09:30:28 2007 +0100 22474 22475 Create opaque similar solid surfaces when possible. 22476 22477 For opaque surfaces the backends may use simpler code paths - for 22478 example, the xlib backend may be able to use the Core protocol rather 22479 than Render. So we only generate a surface with an alpha component if 22480 the color is not opaque. 22481 22482 src/cairo-pattern.c | 8 +++++--- 22483 1 file changed, 5 insertions(+), 3 deletions(-) 22484 22485commit f7b6fc474651311356f116b7d8d7a5ef1cbab570 22486Author: Chris Wilson <chris@chris-wilson.co.uk> 22487AuthorDate: Thu Apr 19 09:22:08 2007 +0100 22488Commit: Chris Wilson <chris@chris-wilson.co.uk> 22489CommitDate: Thu Apr 19 09:30:15 2007 +0100 22490 22491 Define a CAIRO_ALPHA_IS_OPAQUE variant that operates on uint16. 22492 22493 Introducing this variant also fixed a bug in _gradient_is_opaque() 22494 which was using the fractional test on a uint16. 22495 22496 src/cairo-pattern.c | 6 +++--- 22497 src/cairoint.h | 3 +++ 22498 2 files changed, 6 insertions(+), 3 deletions(-) 22499 22500commit 157074c794903f1dbe68c1ba5b129b4176dc7975 22501Author: Behdad Esfahbod <behdad@behdad.org> 22502AuthorDate: Wed Apr 18 19:46:30 2007 -0400 22503Commit: Behdad Esfahbod <behdad@behdad.org> 22504CommitDate: Wed Apr 18 19:46:30 2007 -0400 22505 22506 [boilerplate] Add cairo_boilerplate_get/free_targets 22507 This means, test and perf suites now share the same target handling 22508 code, including parsing CAIRO_TEST_TARGET. 22509 22510 boilerplate/cairo-boilerplate.c | 73 +++++++++++++++++++++++++++++++++++++++-- 22511 boilerplate/cairo-boilerplate.h | 6 +++- 22512 perf/cairo-perf.c | 20 +++++------ 22513 test/cairo-test.c | 54 ++++-------------------------- 22514 4 files changed, 92 insertions(+), 61 deletions(-) 22515 22516commit 47c02a6bd67e8b7e50977cc87d5e35358d5c4c2e 22517Author: Behdad Esfahbod <behdad@behdad.org> 22518AuthorDate: Wed Apr 18 19:15:16 2007 -0400 22519Commit: Behdad Esfahbod <behdad@behdad.org> 22520CommitDate: Wed Apr 18 19:15:16 2007 -0400 22521 22522 [boilerplate] s/_cairo_test_content_name/cairo_boilerplate_content_name/g 22523 22524 boilerplate/cairo-boilerplate.c | 8 ++++---- 22525 boilerplate/cairo-boilerplate.h | 2 +- 22526 test/cairo-test.c | 10 +++++----- 22527 3 files changed, 10 insertions(+), 10 deletions(-) 22528 22529commit b9026d0b137520247b4a93287bd518fc79774e93 22530Author: Behdad Esfahbod <behdad@behdad.org> 22531AuthorDate: Wed Apr 18 19:09:53 2007 -0400 22532Commit: Behdad Esfahbod <behdad@behdad.org> 22533CommitDate: Wed Apr 18 19:09:53 2007 -0400 22534 22535 [perf] Make targets more consistent with the test suite 22536 That is: 22537 1) no VALGRING vs VG abbreviations 22538 2) setting TARGETS and ITERS on the make command line works now 22539 22540 perf/Makefile.am | 26 +++++++++++++++++--------- 22541 perf/cairo-perf.c | 8 ++++++-- 22542 2 files changed, 23 insertions(+), 11 deletions(-) 22543 22544commit 9f3e0694e644d2279c7f4835f8035d4ecccb5711 22545Author: Behdad Esfahbod <behdad@behdad.org> 22546AuthorDate: Wed Apr 18 19:08:54 2007 -0400 22547Commit: Behdad Esfahbod <behdad@behdad.org> 22548CommitDate: Wed Apr 18 19:08:54 2007 -0400 22549 22550 [test] Allow bypassing all test targets by setting CAIRO_TEST_TARGET=" " 22551 22552 test/cairo-test.c | 5 +++++ 22553 1 file changed, 5 insertions(+) 22554 22555commit 52d4e0f3191440e8ebe366b593c2e9c955328258 22556Author: Behdad Esfahbod <behdad@behdad.org> 22557AuthorDate: Wed Apr 18 18:27:28 2007 -0400 22558Commit: Behdad Esfahbod <behdad@behdad.org> 22559CommitDate: Wed Apr 18 18:28:43 2007 -0400 22560 22561 [doc] Make section title capitalization more consistent 22562 22563 doc/public/cairo-sections.txt | 2 +- 22564 doc/public/language-bindings.xml | 2 +- 22565 2 files changed, 2 insertions(+), 2 deletions(-) 22566 22567commit beadcdf9bd7c1dde48c8c751ba8af75c60b93a5f 22568Author: Behdad Esfahbod <behdad@behdad.org> 22569AuthorDate: Wed Apr 18 18:24:09 2007 -0400 22570Commit: Behdad Esfahbod <behdad@behdad.org> 22571CommitDate: Wed Apr 18 18:24:09 2007 -0400 22572 22573 Rename cairo-font.c to cairo-font-face.c 22574 22575 src/Makefile.am | 2 +- 22576 src/Makefile.win32 | 2 +- 22577 src/{cairo-font.c => cairo-font-face.c} | 0 22578 src/cairoint.h | 2 +- 22579 4 files changed, 3 insertions(+), 3 deletions(-) 22580 22581commit f56582ef06bbf56edcc6ecc26698abaeba1306b0 22582Author: Behdad Esfahbod <behdad@behdad.org> 22583AuthorDate: Wed Apr 18 17:50:36 2007 -0400 22584Commit: Behdad Esfahbod <behdad@behdad.org> 22585CommitDate: Wed Apr 18 17:55:05 2007 -0400 22586 22587 Put back __inline definition for MSC compilers, in both cairo and pixman 22588 Apparently it's too much to expect people compiling on windows to fill 22589 in sensible values for config.h... /sigh 22590 22591 pixman/src/pixmanint.h | 10 ++++++++-- 22592 src/cairoint.h | 2 ++ 22593 2 files changed, 10 insertions(+), 2 deletions(-) 22594 22595commit a54b6ed0784dd00375424e581bc7349dd8a2a2d9 22596Author: Behdad Esfahbod <behdad@behdad.org> 22597AuthorDate: Wed Apr 18 17:45:31 2007 -0400 22598Commit: Behdad Esfahbod <behdad@behdad.org> 22599CommitDate: Wed Apr 18 17:54:57 2007 -0400 22600 22601 [pixman] Rename icint.h to pixmanint.h 22602 22603 pixman/src/Makefile.am | 4 +- 22604 pixman/src/check-pixmanint.sh | 17 + 22605 pixman/src/fbcompose.c | 4 +- 22606 pixman/src/fbedge.c | 4 +- 22607 pixman/src/fbmmx.c | 4 +- 22608 pixman/src/fbpict.c | 4 +- 22609 pixman/src/fbtrap.c | 4 +- 22610 pixman/src/icblt.c | 4 +- 22611 pixman/src/icbltone.c | 4 +- 22612 pixman/src/iccolor.c | 6 +- 22613 pixman/src/icformat.c | 6 +- 22614 pixman/src/icimage.c | 4 +- 22615 pixman/src/icpixels.c | 4 +- 22616 pixman/src/icrect.c | 6 +- 22617 pixman/src/icstipple.c | 4 +- 22618 pixman/src/ictransform.c | 6 +- 22619 pixman/src/ictrap.c | 5 +- 22620 pixman/src/ictri.c | 5 +- 22621 pixman/src/icutil.c | 4 +- 22622 pixman/src/pixman-xserver-compat.h | 4 +- 22623 pixman/src/pixman.h | 4 - 22624 pixman/src/pixmanint.h | 1070 ++++++++++++++++++++++++++++++++++++ 22625 pixman/src/pixregion.c | 4 +- 22626 pixman/src/renderedge.c | 4 +- 22627 24 files changed, 1110 insertions(+), 75 deletions(-) 22628 22629commit 48121e97ac4f0114a0d5bc35aec76d2aba23a783 22630Author: Behdad Esfahbod <behdad@behdad.org> 22631AuthorDate: Wed Apr 18 17:04:07 2007 -0400 22632Commit: Behdad Esfahbod <behdad@behdad.org> 22633CommitDate: Wed Apr 18 17:06:48 2007 -0400 22634 22635 [cairoint.h] Define WARN_UNUSED_RESULT if undefined 22636 22637 src/cairoint.h | 3 +++ 22638 1 file changed, 3 insertions(+) 22639 22640commit a396e0b05731db3acbf1e8d82ab77592b697e417 22641Author: Chris Wilson <chris@chris-wilson.co.uk> 22642AuthorDate: Wed Apr 18 14:24:10 2007 +0100 22643Commit: Chris Wilson <chris@chris-wilson.co.uk> 22644CommitDate: Wed Apr 18 14:24:10 2007 +0100 22645 22646 cairo-perf - add the missing newline. 22647 22648 Oops, missed out the newline for the fprintf in the previous commit. 22649 22650 perf/cairo-perf.c | 2 +- 22651 1 file changed, 1 insertion(+), 1 deletion(-) 22652 22653commit 383e9d5368706168498a87d1b7f023f2b59c2f92 22654Author: Chris Wilson <chris@chris-wilson.co.uk> 22655AuthorDate: Wed Apr 18 14:12:20 2007 +0100 22656Commit: Chris Wilson <chris@chris-wilson.co.uk> 22657CommitDate: Wed Apr 18 14:13:42 2007 +0100 22658 22659 cairo-perf - Check that the surface is created. 22660 22661 Exit(1) if we fail to create the target surface. 22662 22663 perf/cairo-perf.c | 7 +++++++ 22664 1 file changed, 7 insertions(+) 22665 22666commit 7131f4e6aea11d94e38375a6be71887825008e48 22667Author: Dave Yeo <daveryeo@telus.net> 22668AuthorDate: Tue Apr 17 15:30:20 2007 -0400 22669Commit: Behdad Esfahbod <behdad@behdad.org> 22670CommitDate: Tue Apr 17 15:30:20 2007 -0400 22671 22672 [OS2] Fix #include "cairo-mutex-list-private.h" 22673 22674 src/cairo-os2-surface.c | 2 +- 22675 1 file changed, 1 insertion(+), 1 deletion(-) 22676 22677commit f7a2787685d640dd35ef7ef1314c4e754771c512 22678Merge: 2efaf3a7a cab4d41ca 22679Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 22680AuthorDate: Mon Apr 16 23:05:10 2007 +0200 22681Commit: Mathias Hasselmann <mathias.hasselmann@gmx.de> 22682CommitDate: Mon Apr 16 23:05:10 2007 +0200 22683 22684 Merge branch 'master' of git+ssh://hasselmm@git.freedesktop.org/git/cairo 22685 22686commit cab4d41cae4463841bca297a7e16c970633c8c21 22687Author: Chris Wilson <chris@chris-wilson.co.uk> 22688AuthorDate: Mon Apr 16 16:57:24 2007 +0100 22689Commit: Chris Wilson <chris@chris-wilson.co.uk> 22690CommitDate: Mon Apr 16 16:57:24 2007 +0100 22691 22692 create-for-stream - free resources after test failure. 22693 22694 create-for-stream often fails whilst running under valgrind due to the 22695 postscript output containing a CreationDate with seconds resolution, 22696 hence the visibility of the resource leaks during failure. 22697 22698 test/create-for-stream.c | 37 ++++++++++++++++++++----------------- 22699 1 file changed, 20 insertions(+), 17 deletions(-) 22700 22701commit 9d435d5fbfae0f64053f6596f73410bc352cd2de 22702Author: Chris Wilson <chris@chris-wilson.co.uk> 22703AuthorDate: Mon Apr 16 15:42:07 2007 +0100 22704Commit: Chris Wilson <chris@chris-wilson.co.uk> 22705CommitDate: Mon Apr 16 15:44:28 2007 +0100 22706 22707 Add suppression for leak from XauFileName. 22708 22709 The string is statically allocated by XauFileName() and so ignore the fact 22710 that is not freed upon termination. 22711 22712 test/.valgrind-suppressions | 7 ++++++- 22713 1 file changed, 6 insertions(+), 1 deletion(-) 22714 22715commit 3a3fb0031decec26260cd94e60f1b0bf06541a6d 22716Author: Chris Wilson <chris@chris-wilson.co.uk> 22717AuthorDate: Mon Apr 16 15:08:54 2007 +0100 22718Commit: Chris Wilson <chris@chris-wilson.co.uk> 22719CommitDate: Mon Apr 16 15:08:54 2007 +0100 22720 22721 Update .gitignore 22722 22723 Add .*.sw? (vim swapfiles). 22724 Add *~ (backup files). 22725 Add *.gcno and *.gcda (gcov intermediates). 22726 22727 .gitignore | 1 + 22728 boilerplate/.gitignore | 4 ++++ 22729 perf/.gitignore | 4 ++++ 22730 src/.gitignore | 1 + 22731 test/.gitignore | 3 +++ 22732 5 files changed, 13 insertions(+) 22733 22734commit 7ff95c7230471be3ffa231ebc71e1d63ba4621b0 22735Author: Kouhei Sutou <kou@cozmixng.org> 22736AuthorDate: Mon Apr 16 02:48:14 2007 -0400 22737Commit: Behdad Esfahbod <behdad@behdad.org> 22738CommitDate: Mon Apr 16 02:48:14 2007 -0400 22739 22740 Support MinGW DLL compilation 22741 22742 configure.in | 1 + 22743 src/cairo-win32-surface.c | 4 ++++ 22744 2 files changed, 5 insertions(+) 22745 22746commit ca9df759b4eda8f19a92b2e0b1092fa7b618d25b 22747Author: Chris Wilson <chris@chris-wilson.co.uk> 22748AuthorDate: Sat Apr 14 15:28:29 2007 +0100 22749Commit: Chris Wilson <chris@chris-wilson.co.uk> 22750CommitDate: Sat Apr 14 15:28:29 2007 +0100 22751 22752 Change of email address. 22753 22754 Update to my new email address and drop my old work one. 22755 22756 AUTHORS | 2 +- 22757 1 file changed, 1 insertion(+), 1 deletion(-) 22758 22759commit 96ee8d5ebe6c6494a140c5424137f26de5fd5d85 22760Author: Carl Worth <cworth@cworth.org> 22761AuthorDate: Fri Apr 13 17:47:25 2007 -0700 22762Commit: Carl Worth <cworth@cworth.org> 22763CommitDate: Fri Apr 13 17:47:25 2007 -0700 22764 22765 Update version to 1.4.5 after the 1.4.4 release 22766 22767 configure.in | 2 +- 22768 1 file changed, 1 insertion(+), 1 deletion(-) 22769 22770commit ebba4a6d1467a8e5db5cc43eb08e8fc98c39b30a 22771Author: Carl Worth <cworth@cworth.org> 22772AuthorDate: Fri Apr 13 17:37:14 2007 -0700 22773Commit: Carl Worth <cworth@cworth.org> 22774CommitDate: Fri Apr 13 17:37:14 2007 -0700 22775 22776 Increment version to 1.4.4 (and library versioning to 13:2:11) 22777 22778 configure.in | 4 ++-- 22779 1 file changed, 2 insertions(+), 2 deletions(-) 22780 22781commit e21a58ce4c2f550198de9ed35f7a37df764e7cdf 22782Author: Carl Worth <cworth@cworth.org> 22783AuthorDate: Fri Apr 13 17:36:31 2007 -0700 22784Commit: Carl Worth <cworth@cworth.org> 22785CommitDate: Fri Apr 13 17:36:31 2007 -0700 22786 22787 NEWS: Add notes for cairo 1.4.4 22788 22789 NEWS | 91 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 22790 1 file changed, 91 insertions(+) 22791 22792commit e1a1f6ff251582b2293098a55953f81a13bb9cc0 22793Author: Carl Worth <cworth@cworth.org> 22794AuthorDate: Fri Apr 13 16:37:52 2007 -0700 22795Commit: Carl Worth <cworth@cworth.org> 22796CommitDate: Fri Apr 13 16:37:52 2007 -0700 22797 22798 AUTHORS: Update descriptions for Mathias Hasselmann and Chris Wilson 22799 22800 Both have contributed a tremendous amount of effort to cairo 1.4.4. 22801 Well done! 22802 22803 AUTHORS | 4 ++-- 22804 1 file changed, 2 insertions(+), 2 deletions(-) 22805 22806commit ef3e13337e513cf470801cff5cd2b8fdcff1b6eb 22807Author: Carl Worth <cworth@cworth.org> 22808AuthorDate: Fri Apr 13 13:34:20 2007 -0700 22809Commit: Carl Worth <cworth@cworth.org> 22810CommitDate: Fri Apr 13 13:36:49 2007 -0700 22811 22812 cairo-perf-diff: Use median not minimum to report differences 22813 22814 Ideally, the minimum value would indicate the best possible performance, 22815 but I've encountered situations where a bogus minimum value gets lodged 22816 into the cached results for some reason, (and yet doesn't also get 22817 discarded as an outlier). The downside of that situation is that running 22818 more iterations never changes the result, so it's hard to fix the problem, 22819 (resulting in cairo-perf-diff feeling just plain broken as more runs 22820 change nothing). 22821 22822 So let's try using the median time instead. 22823 22824 perf/cairo-perf-diff-files.c | 10 +++++----- 22825 1 file changed, 5 insertions(+), 5 deletions(-) 22826 22827commit 7ead3e64f17fe302398ec60c61eaeaae4e9b18cf 22828Author: Behdad Esfahbod <behdad@behdad.org> 22829AuthorDate: Fri Apr 13 16:34:31 2007 -0400 22830Commit: Behdad Esfahbod <behdad@behdad.org> 22831CommitDate: Fri Apr 13 16:34:31 2007 -0400 22832 22833 [ROADMAP] Put back bug 10508 into 1.4.4 roadmap and mark it fixed 22834 22835 Yay! 22836 22837 ROADMAP | 6 +++--- 22838 1 file changed, 3 insertions(+), 3 deletions(-) 22839 22840commit 84c10a79ffd233a953434bd787dcfe57787552f8 22841Author: Behdad Esfahbod <behdad@behdad.org> 22842AuthorDate: Fri Apr 13 16:33:07 2007 -0400 22843Commit: Behdad Esfahbod <behdad@behdad.org> 22844CommitDate: Fri Apr 13 16:33:33 2007 -0400 22845 22846 [cairo-pattern] Slightly hackish fix for bug #10508 22847 22848 The so-attributed-to-X-server bug was that cairo maps the drawing 22849 region to the pattern space, rounds the box, and uploads only that 22850 part of the source surface to the X server. Well, this only works for 22851 NEAREST filter as any more sophisticated filter needs to sneak a peek 22852 at the neighboring pixels around the edges too. 22853 22854 The right fix involves taking into account the filter used, and the 22855 pattern matrix, but for most cases, a single pixel should be enough. 22856 Not sure about scaling down... 22857 22858 Anyway, this is just a workaround to get 1.4.4 out of the door. I'll 22859 commit a proper fix soon. 22860 22861 src/cairo-pattern.c | 15 ++++++++++----- 22862 1 file changed, 10 insertions(+), 5 deletions(-) 22863 22864commit fcf49a56130ede8c6aa9f84a8c59ecef54714b7b 22865Author: Carl Worth <cworth@cworth.org> 22866AuthorDate: Fri Apr 13 12:02:11 2007 -0700 22867Commit: Carl Worth <cworth@cworth.org> 22868CommitDate: Fri Apr 13 12:02:11 2007 -0700 22869 22870 boilerplate: Cleanup conditional compilation ofcairo-quartz-boilerplate.c 22871 22872 It's much nicer to use automake to conditionally compile a file, 22873 instead of always compiling it and conditionally having the compiler 22874 see an empty file. 22875 22876 boilerplate/Makefile.am | 6 +++++- 22877 boilerplate/cairo-boilerplate.c | 5 ++++- 22878 ...o-boilerplate-private.h => cairo-quartz-boilerplate-private.h} | 8 ++------ 22879 boilerplate/cairo-quartz-boilerplate.c | 6 +----- 22880 4 files changed, 12 insertions(+), 13 deletions(-) 22881 22882commit cea107c9800a4414f57a874dd52924efdff725ec 22883Author: Carl Worth <cworth@cworth.org> 22884AuthorDate: Fri Apr 13 11:28:21 2007 -0700 22885Commit: Carl Worth <cworth@cworth.org> 22886CommitDate: Fri Apr 13 11:29:09 2007 -0700 22887 22888 Punt bug #10508 off of 1.4.4 22889 22890 It looks like this is an X server bug, and we don't have an 22891 imminent fix. Meanwhile, the bug is avoidable by preferring 22892 to use xlib surface sources for transformed rendering to xlib 22893 instead of using image surface sources. 22894 22895 ROADMAP | 5 +++-- 22896 1 file changed, 3 insertions(+), 2 deletions(-) 22897 22898commit 4e3be548615f8ce8a45f0e887f19eb39ba21f8a4 22899Author: Behdad Esfahbod <behdad@behdad.org> 22900AuthorDate: Thu Apr 12 21:34:49 2007 -0400 22901Commit: Behdad Esfahbod <behdad@behdad.org> 22902CommitDate: Thu Apr 12 21:38:25 2007 -0400 22903 22904 [cairo-pattern] Add a TODO item to code 22905 22906 src/cairo-pattern.c | 7 +++++++ 22907 1 file changed, 7 insertions(+) 22908 22909commit ec639449de9b630cdb4e7bca4ba8487b3a263184 22910Author: Carl Worth <cworth@cworth.org> 22911AuthorDate: Thu Apr 12 18:16:52 2007 -0700 22912Commit: Carl Worth <cworth@cworth.org> 22913CommitDate: Thu Apr 12 18:16:52 2007 -0700 22914 22915 Fix typo in loop control for computation of std. deviation 22916 22917 Thanks to Chris Wilson for pointing out this problem. 22918 22919 perf/cairo-stats.c | 2 +- 22920 1 file changed, 1 insertion(+), 1 deletion(-) 22921 22922commit 537a795b3b5698d4aa02f2f14e479e9bfd27fe0d 22923Author: Carl Worth <cworth@cworth.org> 22924AuthorDate: Thu Apr 12 17:01:41 2007 -0700 22925Commit: Carl Worth <cworth@cworth.org> 22926CommitDate: Thu Apr 12 18:13:50 2007 -0700 22927 22928 Remove ft-text-vertical-layout-type1 22929 22930 This test can fail if the wrong font is loaded, but that's no 22931 different than many other text tests---so it doesn't really 22932 deserve special XFAIL treatment because of that. 22933 22934 test/Makefile.am | 1 - 22935 1 file changed, 1 deletion(-) 22936 22937commit 04164c996cad242a25c2af596ffcd3b07ba19289 22938Author: Behdad Esfahbod <behdad@behdad.org> 22939AuthorDate: Thu Apr 12 20:14:23 2007 -0400 22940Commit: Behdad Esfahbod <behdad@behdad.org> 22941CommitDate: Thu Apr 12 20:14:23 2007 -0400 22942 22943 [cairo-surface] Make sure cairo_surface_get_font_options() fully initializes 22944 the font_options passed in. 22945 22946 src/cairo-surface.c | 4 ++-- 22947 1 file changed, 2 insertions(+), 2 deletions(-) 22948 22949commit 7224e1a6e6eb474a3809d07f9540c959b3da10b2 22950Author: Behdad Esfahbod <behdad@behdad.org> 22951AuthorDate: Thu Apr 12 17:54:32 2007 -0400 22952Commit: Behdad Esfahbod <behdad@behdad.org> 22953CommitDate: Thu Apr 12 18:49:38 2007 -0400 22954 22955 [image] Set hint-metrics on in default font options 22956 22957 src/cairo-image-surface.c | 12 +++++++++++- 22958 1 file changed, 11 insertions(+), 1 deletion(-) 22959 22960commit 57434e249aba93f3b478a3c701e260093711d13f 22961Author: Behdad Esfahbod <behdad@behdad.org> 22962AuthorDate: Thu Apr 12 17:45:33 2007 -0400 22963Commit: Behdad Esfahbod <behdad@behdad.org> 22964CommitDate: Thu Apr 12 18:49:38 2007 -0400 22965 22966 [xlib] Turn metrics-hinting on by default 22967 22968 src/cairo-xlib-screen.c | 1 + 22969 1 file changed, 1 insertion(+) 22970 22971commit 8a4c108a4be6c4650cefe80e68d4c9974ccc27ba 22972Author: Chris Wilson <chris@chris-wilson.co.uk> 22973AuthorDate: Thu Apr 12 22:19:03 2007 +0100 22974Commit: Chris Wilson <chris@chris-wilson.co.uk> 22975CommitDate: Thu Apr 12 23:31:37 2007 +0100 22976 22977 Add a reference count to cairo_xlib_screen_info_t 22978 22979 Due to the interaction between multiple threads showing glyphs and 22980 asynchronous CloseDisplays, it is possible for a font to maintain a 22981 cairo_xlib_screen_info_t beyond the CloseDisplay. The simple solution 22982 is to add a reference count in order to track the lifetime of the 22983 cairo_xlib_screen_info_t correctly. 22984 22985 src/cairo-xlib-private.h | 6 ++++ 22986 src/cairo-xlib-screen.c | 77 +++++++++++++++++++++++++++++++++++++----------- 22987 src/cairo-xlib-surface.c | 4 +++ 22988 3 files changed, 70 insertions(+), 17 deletions(-) 22989 22990commit 50ef5bcf7b5e6cc903f9247256fbd4439887ab5e 22991Author: Carl Worth <cworth@cworth.org> 22992AuthorDate: Thu Apr 12 13:44:32 2007 -0700 22993Commit: Carl Worth <cworth@cworth.org> 22994CommitDate: Thu Apr 12 13:46:03 2007 -0700 22995 22996 Revert cairo_public_warn addition to cairo.h 22997 22998 This new feature isn't appropriate for a minor cairo release, 22999 (we're between 1.4.2 and 1.4.4 right now), but will make a 23000 lot of sense during 1.5. 23001 23002 The code being reverted here was originally added with the 23003 following commit: 23004 23005 46eab95698e101e41407778eda22089b508a8984 23006 23007 but this change reverts only the public-facing parts of it. 23008 23009 configure.in | 11 ----------- 23010 src/cairo.h | 40 ++++++++++++++++++++-------------------- 23011 2 files changed, 20 insertions(+), 31 deletions(-) 23012 23013commit 35bb2152c06ef2621b14a8b2153cc327be8b43a1 23014Author: Chris Wilson <chris@chris-wilson.co.uk> 23015AuthorDate: Thu Apr 12 21:30:39 2007 +0100 23016Commit: Chris Wilson <chris@chris-wilson.co.uk> 23017CommitDate: Thu Apr 12 21:44:08 2007 +0100 23018 23019 Hold the scaled_font->mutex whilst operating on the shared members. 23020 23021 Obey the locking rules whilst resetting the scaled_font after a 23022 CloseDisplay. 23023 23024 src/cairo-xlib-surface.c | 10 ++++++---- 23025 1 file changed, 6 insertions(+), 4 deletions(-) 23026 23027commit 97d897a7475f540ad901cb2a2cd6885e885ee02a 23028Author: Chris Wilson <chris@chris-wilson.co.uk> 23029AuthorDate: Thu Apr 12 21:17:42 2007 +0100 23030Commit: Chris Wilson <chris@chris-wilson.co.uk> 23031CommitDate: Thu Apr 12 21:43:47 2007 +0100 23032 23033 cairo_xlib_close_display - drop the mutex whilst calling the hooks 23034 23035 In order to avoid recursive dead-locks where whilst one thread holds the 23036 scaled font lock and is waiting on the XLockDisplay() another thread catches 23037 the CloseDisplay and then tries to acquire the scaled font lock, we drop 23038 the list mutex whilst processing the callbacks. 23039 23040 src/cairo-xlib-screen.c | 33 ++++++++++++++++++++++++--------- 23041 1 file changed, 24 insertions(+), 9 deletions(-) 23042 23043commit 13b0aa669fd9ce6abc930730a941782e2baba215 23044Author: Carl Worth <cworth@cworth.org> 23045AuthorDate: Thu Apr 12 13:29:56 2007 -0700 23046Commit: Carl Worth <cworth@cworth.org> 23047CommitDate: Thu Apr 12 13:29:56 2007 -0700 23048 23049 Rebuild doc/public/Headers.mk 23050 23051 Add a sort so that future update changes will be more legible. 23052 23053 doc/public/Headers.mk | 47 ++++++++++++++++++++++++----------------------- 23054 doc/public/Makefile.am | 3 ++- 23055 2 files changed, 26 insertions(+), 24 deletions(-) 23056 23057commit ae80d375f829b076a8d1450c54b00b3750428366 23058Author: Carl Worth <cworth@cworth.org> 23059AuthorDate: Thu Apr 12 13:02:26 2007 -0700 23060Commit: Carl Worth <cworth@cworth.org> 23061CommitDate: Thu Apr 12 13:22:36 2007 -0700 23062 23063 Rename cairo-mutex-list.h to cairo-mutex-list-private.h 23064 23065 Also add it (and cairo-mutex-private.h) to Makefile.am 23066 where they should have been. 23067 23068 src/Makefile.am | 2 ++ 23069 src/{cairo-mutex-list.h => cairo-mutex-list-private.h} | 4 ++-- 23070 src/cairo-mutex-private.h | 2 +- 23071 src/cairo-mutex.c | 2 +- 23072 4 files changed, 6 insertions(+), 4 deletions(-) 23073 23074commit 29adf591b7026092a809e9a27878b5b4e35051fb 23075Author: Carl Worth <cworth@cworth.org> 23076AuthorDate: Thu Apr 12 12:47:27 2007 -0700 23077Commit: Carl Worth <cworth@cworth.org> 23078CommitDate: Thu Apr 12 12:47:27 2007 -0700 23079 23080 move show-glyphs-many to the DISABLED_TESTS list 23081 23082 And add a detailed comment explaining the reasons for disabling each 23083 test in the list. 23084 23085 test/Makefile.am | 62 +++++++++++++++++++++++++++++++++++++++----------------- 23086 1 file changed, 43 insertions(+), 19 deletions(-) 23087 23088commit c5b2f9d5c22c2259a11f0cbfbca8128cd3ac5794 23089Author: Chris Wilson <chris@chris-wilson.co.uk> 23090AuthorDate: Thu Apr 12 01:22:49 2007 +0100 23091Commit: Carl Worth <cworth@cworth.org> 23092CommitDate: Thu Apr 12 12:34:53 2007 -0700 23093 23094 cairo_xlib_screen_info_t - always perform an exact match 23095 23096 This ensures that only one cairo_xlib_screen_info_t holds the 23097 close_display_hooks, an assumption used later. 23098 23099 src/cairo-xlib-screen.c | 2 +- 23100 1 file changed, 1 insertion(+), 1 deletion(-) 23101 23102commit 8c9f0f607b992c47b555b5eaff3c599a8c1eac57 23103Author: Chris Wilson <chris@chris-wilson.co.uk> 23104AuthorDate: Thu Apr 12 01:21:03 2007 +0100 23105Commit: Carl Worth <cworth@cworth.org> 23106CommitDate: Thu Apr 12 12:34:53 2007 -0700 23107 23108 cairo-xlib-screen - avoid dereferencing a NULL screen. 23109 23110 Do not initialize font options when setting up the 23111 cairo_xlib_screen_info_t corresponding to the display itself and not 23112 associated with any screen. This avoids a potential NULL dereferences. 23113 23114 (Fixes https://bugs.freedesktop.org/show_bug.cgi?id=10517) 23115 23116 src/cairo-xlib-screen.c | 12 +++++++----- 23117 1 file changed, 7 insertions(+), 5 deletions(-) 23118 23119commit dc1de86680b59def00ce1e9f11997cf554cdfec1 23120Author: Behdad Esfahbod <behdad@behdad.org> 23121AuthorDate: Thu Apr 12 15:06:37 2007 -0400 23122Commit: Behdad Esfahbod <behdad@behdad.org> 23123CommitDate: Thu Apr 12 15:06:37 2007 -0400 23124 23125 [ROADMAP] Add cairo_object_t 23126 23127 ROADMAP | 2 ++ 23128 1 file changed, 2 insertions(+) 23129 23130commit 12b962d648d307d7a6b94035b6c4ffdeaadd68e2 23131Author: Behdad Esfahbod <behdad@behdad.org> 23132AuthorDate: Thu Apr 12 14:56:36 2007 -0400 23133Commit: Behdad Esfahbod <behdad@behdad.org> 23134CommitDate: Thu Apr 12 14:56:36 2007 -0400 23135 23136 [ROADMAP] Mark bug #5777 as fixed 23137 23138 ROADMAP | 2 +- 23139 1 file changed, 1 insertion(+), 1 deletion(-) 23140 23141commit e391d3eaee65d65f267f86d1ef1e1fd8898e6556 23142Author: Behdad Esfahbod <behdad@behdad.org> 23143AuthorDate: Thu Apr 12 14:42:41 2007 -0400 23144Commit: Behdad Esfahbod <behdad@behdad.org> 23145CommitDate: Thu Apr 12 14:44:32 2007 -0400 23146 23147 [test] Disable text-glyph-range that was crashing 23148 23149 Disabled tests are defined in DISABLED_TESTS. This has the benefit 23150 that they will still be buildable and be shipped. Just not run by 23151 default. 23152 23153 test/Makefile.am | 10 ++++++---- 23154 1 file changed, 6 insertions(+), 4 deletions(-) 23155 23156commit d3c7942fb271fe8d1df7ca3205b41601abdcb5c8 23157Author: Behdad Esfahbod <behdad@behdad.org> 23158AuthorDate: Thu Apr 12 14:22:02 2007 -0400 23159Commit: Behdad Esfahbod <behdad@behdad.org> 23160CommitDate: Thu Apr 12 14:44:32 2007 -0400 23161 23162 [pixman] Mark some small functions that are called per-pixel inline 23163 23164 These uses were introduced in the previous commit. 23165 23166 pixman/src/fbcompose.c | 6 +++--- 23167 1 file changed, 3 insertions(+), 3 deletions(-) 23168 23169commit e3b3d22999a130f7017e8e20a432a0d8a7f48f3b 23170Author: David Reveman <davidr@novell.com> 23171AuthorDate: Thu Apr 12 14:14:12 2007 -0400 23172Commit: Behdad Esfahbod <behdad@behdad.org> 23173CommitDate: Thu Apr 12 14:44:32 2007 -0400 23174 23175 [pixman] Fix fbcompose.c that was broken for some composite operations (#5777) 23176 23177 pixman/src/fbcompose.c | 244 ++++++++++++++++++++++++++++++------------------- 23178 1 file changed, 151 insertions(+), 93 deletions(-) 23179 23180commit c8d2d1e8764c7ba754e46a3af68af2b4460d2e04 23181Author: Vladimir Vukicevic <vladimir@pobox.com> 23182AuthorDate: Thu Apr 12 10:51:17 2007 -0700 23183Commit: Vladimir Vukicevic <vladimir@feisty.(none)> 23184CommitDate: Thu Apr 12 10:51:17 2007 -0700 23185 23186 add licenses to test files 23187 23188 test/composite-integer-translate-over-repeat.c | 26 ++++++++++++++++++++++++++ 23189 test/composite-integer-translate-source.c | 26 ++++++++++++++++++++++++++ 23190 2 files changed, 52 insertions(+) 23191 23192commit e240048a14333d5c61a0d4ae5c30acd12bcb5805 23193Merge: 29a1fe12c 977a8982a 23194Author: Michael Emmel <memmel@debian.localdomain> 23195AuthorDate: Wed Apr 11 21:43:15 2007 -0700 23196Commit: Michael Emmel <memmel@debian.localdomain> 23197CommitDate: Wed Apr 11 21:43:15 2007 -0700 23198 23199 Merge branch 'master' of ssh+git://git.cairographics.org/git/cairo 23200 23201commit 29a1fe12cf33a68713a4ddf7f59217fd40f6e967 23202Author: Michael Emmel <memmel@debian.localdomain> 23203AuthorDate: Wed Apr 11 21:42:57 2007 -0700 23204Commit: Michael Emmel <memmel@debian.localdomain> 23205CommitDate: Wed Apr 11 21:42:57 2007 -0700 23206 23207 Fixed compile error from missing directfb.h include 23208 23209 src/cairo-directfb.h | 2 ++ 23210 1 file changed, 2 insertions(+) 23211 23212commit 977a8982ab17760af0d69cb2e018ed50f4c7b992 23213Author: Kristian Høgsberg <krh@redhat.com> 23214AuthorDate: Wed Apr 11 23:49:01 2007 -0400 23215Commit: Kristian Høgsberg <krh@redhat.com> 23216CommitDate: Wed Apr 11 23:49:01 2007 -0400 23217 23218 Add missing copyright notice. 23219 23220 test/pixman-rotate.c | 26 ++++++++++++++++++++++++++ 23221 1 file changed, 26 insertions(+) 23222 23223commit 9193b29645ef1625a599471e3b0cb5279d2c05cb 23224Author: Behdad Esfahbod <behdad@behdad.org> 23225AuthorDate: Wed Apr 11 23:30:31 2007 -0400 23226Commit: Behdad Esfahbod <behdad@behdad.org> 23227CommitDate: Wed Apr 11 23:30:31 2007 -0400 23228 23229 [ROADMAP] Mark done items 23230 23231 ROADMAP | 4 ++-- 23232 1 file changed, 2 insertions(+), 2 deletions(-) 23233 23234commit 284edb86484de8ccf3adf35d5cb9ff6ba64759ec 23235Author: Chris Wilson <chris@chris-wilson.co.uk> 23236AuthorDate: Thu Apr 12 03:01:31 2007 +0100 23237Commit: Chris Wilson <chris@chris-wilson.co.uk> 23238CommitDate: Thu Apr 12 03:01:31 2007 +0100 23239 23240 Do not raise an error if we fail to locate 'find' or 'xargs' 23241 23242 Whilst not being able to delete all of the test output is messy it is 23243 however not fatal, so do not abort configuration simply because we 23244 cannot find either program. 23245 23246 configure.in | 6 ++---- 23247 test/Makefile.am | 15 +++++++++------ 23248 2 files changed, 11 insertions(+), 10 deletions(-) 23249 23250commit a8974223dc6376a11588c6ecf1e54da5329b9c72 23251Author: Chris Wilson <chris@chris-wilson.co.uk> 23252AuthorDate: Thu Apr 12 02:29:33 2007 +0100 23253Commit: Chris Wilson <chris@chris-wilson.co.uk> 23254CommitDate: Thu Apr 12 02:31:03 2007 +0100 23255 23256 Check for find and xargs during configure 23257 23258 Replace hard-coded find, xargs and rm with the paths determined during 23259 configure. This also gives us an opportunity to detect missing programs 23260 and inform the developer. 23261 23262 configure.in | 9 +++++++++ 23263 test/Makefile.am | 12 ++++++------ 23264 2 files changed, 15 insertions(+), 6 deletions(-) 23265 23266commit 632ec8088cef5e9d4c2ff2886cfd550d706433e4 23267Author: Behdad Esfahbod <behdad@behdad.org> 23268AuthorDate: Wed Apr 11 20:18:11 2007 -0400 23269Commit: Behdad Esfahbod <behdad@behdad.org> 23270CommitDate: Wed Apr 11 20:18:11 2007 -0400 23271 23272 [test] Add copyright headers for my tests 23273 23274 test/extend-pad.c | 26 ++++++++++++++++++++++++++ 23275 test/surface-pattern-scale-down.c | 26 ++++++++++++++++++++++++++ 23276 test/surface-pattern-scale-up.c | 26 ++++++++++++++++++++++++++ 23277 test/surface-pattern.c | 26 ++++++++++++++++++++++++++ 23278 4 files changed, 104 insertions(+) 23279 23280commit 82397a631410af343f14cafdb31f48de9373f4a7 23281Author: Chris Wilson <chris@chris-wilson.co.uk> 23282AuthorDate: Thu Apr 12 00:55:04 2007 +0100 23283Commit: Chris Wilson <chris@chris-wilson.co.uk> 23284CommitDate: Thu Apr 12 00:55:04 2007 +0100 23285 23286 Avoid using GNU find extensions. 23287 23288 Replace the complex single find with a series of simple but POSIX correct 23289 equivalents. 23290 23291 test/Makefile.am | 14 ++++++-------- 23292 1 file changed, 6 insertions(+), 8 deletions(-) 23293 23294commit 06382092e5e911ad2648f26e8ba5a6f8f7953e1b 23295Author: Behdad Esfahbod <behdad@behdad.org> 23296AuthorDate: Wed Apr 11 19:42:34 2007 -0400 23297Commit: Behdad Esfahbod <behdad@behdad.org> 23298CommitDate: Wed Apr 11 19:43:01 2007 -0400 23299 23300 [pdiff] Ship gpl.txt 23301 23302 test/pdiff/Makefile.am | 1 + 23303 1 file changed, 1 insertion(+) 23304 23305commit c8645c85de94b83fe2fd60a4d881cb639eb79b46 23306Merge: be98123b2 52435e99f 23307Author: Carl Worth <cworth@cworth.org> 23308AuthorDate: Wed Apr 11 16:38:46 2007 -0700 23309Commit: Carl Worth <cworth@cworth.org> 23310CommitDate: Wed Apr 11 16:38:46 2007 -0700 23311 23312 Merge branch 'master' of git.cairographics.org:/git/cairo into cairo 23313 23314commit 52435e99f31f06c18273a5a7351a2c21f7c0ecf6 23315Author: Chris Wilson <chris@chris-wilson.co.uk> 23316AuthorDate: Wed Apr 11 23:34:24 2007 +0100 23317Commit: Chris Wilson <chris@chris-wilson.co.uk> 23318CommitDate: Thu Apr 12 00:28:03 2007 +0100 23319 23320 Move pixman_format_t from heap to stack allocations. 23321 23322 pixman_format_t is a simple structure used in short-term allocations and 23323 suitable for on-stack allocation. 23324 23325 Killing the pixman_format_create()/pixman_format_destroy() pairs avoid 23326 around 6% of the allocations during cairo-perf (e.g. 426,158 allocs out 23327 of a total of 7,063,469). 23328 23329 pixman/src/icformat.c | 118 ++++++++++++++------------- 23330 pixman/src/icint.h | 12 +-- 23331 pixman/src/icrect.c | 2 +- 23332 pixman/src/ictrap.c | 36 +++------ 23333 pixman/src/ictri.c | 199 +++++++++++++++------------------------------- 23334 pixman/src/pixman.h | 27 ++++--- 23335 src/cairo-image-surface.c | 103 ++++++++++-------------- 23336 7 files changed, 202 insertions(+), 295 deletions(-) 23337 23338commit be98123b2c30a3102629afff74b9233c18e0535d 23339Merge: efedf57f4 a6506c67f 23340Author: Carl Worth <cworth@cworth.org> 23341AuthorDate: Wed Apr 11 16:02:08 2007 -0700 23342Commit: Carl Worth <cworth@cworth.org> 23343CommitDate: Wed Apr 11 16:02:08 2007 -0700 23344 23345 Merge cached-scaled-font-in-error into cairo 23346 23347 Conflicts: 23348 23349 src/cairo-scaled-font.c 23350 23351commit a6506c67f24331c703dd56502a1bc4504b7b2311 23352Author: Chris Wilson <chris@chris-wilson.co.uk> 23353AuthorDate: Sun Apr 8 23:27:52 2007 +0100 23354Commit: Carl Worth <cworth@cworth.org> 23355CommitDate: Wed Apr 11 15:57:03 2007 -0700 23356 23357 Don't return scaled fonts in the error state from the cache. 23358 23359 It is possible for a scaled_font to be flagged as in error, though only 23360 through a "true error" e.g. a malloc failure. However, when returning a font 23361 from the cache it should not be in error. So if we find a error font in the 23362 cache we remove it and return a new font. 23363 23364 src/cairo-scaled-font.c | 55 ++++++++++++++++++++++++++++--------------------- 23365 1 file changed, 32 insertions(+), 23 deletions(-) 23366 23367commit efedf57f43540ad79eddcc5ee79dc0d86846891e 23368Author: Carl Worth <cworth@cworth.org> 23369AuthorDate: Wed Apr 11 15:25:18 2007 -0700 23370Commit: Carl Worth <cworth@cworth.org> 23371CommitDate: Wed Apr 11 15:25:18 2007 -0700 23372 23373 cairo-truetype-subset.c: Add missing error checks and propagation 23374 23375 These are all to satisfy new warnings caused by the preceding commit, 23376 (which added cairo_warn to various function tables). While fixing the 23377 propoagation, fix functions to declare a return type of cairo_status_t 23378 instead of int. 23379 23380 src/cairo-truetype-subset.c | 178 +++++++++++++++++++++++++++++--------------- 23381 1 file changed, 120 insertions(+), 58 deletions(-) 23382 23383commit e6ca34e718859b40dc8eb75a6c68b056751a6deb 23384Author: Chris Wilson <chris@chris-wilson.co.uk> 23385AuthorDate: Sun Apr 8 22:59:10 2007 +0100 23386Commit: Carl Worth <cworth@cworth.org> 23387CommitDate: Wed Apr 11 14:44:54 2007 -0700 23388 23389 Mark function tables with attribute(warn_unused_result) 23390 23391 src/cairo-paginated-surface-private.h | 2 +- 23392 src/cairoint.h | 52 +++++++++++++++++------------------ 23393 2 files changed, 27 insertions(+), 27 deletions(-) 23394 23395commit 3bc413343a0b846c9501ee870db0424412aea701 23396Author: Chris Wilson <chris@chris-wilson.co.uk> 23397AuthorDate: Wed Apr 11 01:08:17 2007 +0100 23398Commit: Carl Worth <cworth@cworth.org> 23399CommitDate: Wed Apr 11 14:39:56 2007 -0700 23400 23401 Define cairo_public_warn in terms of cairo_public. 23402 23403 By defining cairo_public_warn as an extension of cairo_public, the 23404 programmer need only to override cairo_public in order to export the 23405 complete API for different architectures i.e. existing configurations 23406 will continue to work with no alterations. 23407 23408 configure.in | 2 +- 23409 1 file changed, 1 insertion(+), 1 deletion(-) 23410 23411commit 54134dd901d6dc94aa56d45486223e7d4f6ba569 23412Author: Chris Wilson <chris@chris-wilson.co.uk> 23413AuthorDate: Tue Apr 10 23:09:13 2007 +0100 23414Commit: Carl Worth <cworth@cworth.org> 23415CommitDate: Wed Apr 11 14:39:50 2007 -0700 23416 23417 Only enable warn-unused-result for recent gcc 23418 23419 The attribute was introduced with gcc-3.4, but the ability to suppress 23420 warnings from misapplied attributes (-Wno-attributes) was only introduced 23421 later. Without the supression, gcc will emit tens of warnings for each 23422 compilation completely drowning the real errors that the programmer 23423 must see. 23424 23425 configure.in | 19 +++++++++++++++++-- 23426 pixman/src/pixman.h | 10 +++++++--- 23427 src/cairoint.h | 13 ++++++------- 23428 3 files changed, 30 insertions(+), 12 deletions(-) 23429 23430commit f53c2b418cb4a36fbc1c30cdb1bf0ba9dba77bd0 23431Author: Chris Wilson <chris@chris-wilson.co.uk> 23432AuthorDate: Mon Apr 9 16:24:11 2007 +0100 23433Commit: Carl Worth <cworth@cworth.org> 23434CommitDate: Wed Apr 11 14:33:53 2007 -0700 23435 23436 _pixman_create_source_image() - check for malloc failure 23437 23438 Fix an unchecked malloc by propagating the NULL pointer up to its callers, 23439 which were already checking for failures. 23440 23441 pixman/src/icimage.c | 2 ++ 23442 1 file changed, 2 insertions(+) 23443 23444commit d0745c08b782d79fc7ccfd59cab0ae841a56c428 23445Author: Adrian Johnson <ajohnson@redneon.com> 23446AuthorDate: Thu Apr 12 06:32:29 2007 +0930 23447Commit: Adrian Johnson <ajohnson@redneon.com> 23448CommitDate: Thu Apr 12 06:32:29 2007 +0930 23449 23450 PDF: Fix glyph positioning bug when glyphs are not horizontal 23451 23452 Bug reported in 23453 http://lists.freedesktop.org/archives/cairo/2007-April/010337.html 23454 23455 src/cairo-pdf-surface.c | 2 +- 23456 1 file changed, 1 insertion(+), 1 deletion(-) 23457 23458commit e36794ad34282a4d671d7cc5527e9c650c2736fe 23459Merge: b6924722b b745126a0 23460Author: Carl Worth <cworth@cworth.org> 23461AuthorDate: Wed Apr 11 13:15:57 2007 -0700 23462Commit: Carl Worth <cworth@cworth.org> 23463CommitDate: Wed Apr 11 13:15:57 2007 -0700 23464 23465 Merge branch 'warn-unused-result' into cairo 23466 23467commit b745126a04c126acc695e8abb6372c1890b03f07 23468Author: Chris Wilson <chris@chris-wilson.co.uk> 23469AuthorDate: Wed Apr 11 12:26:21 2007 +0100 23470Commit: Carl Worth <cworth@cworth.org> 23471CommitDate: Wed Apr 11 13:07:06 2007 -0700 23472 23473 Use find | xargs to overcome shell command line limit. 23474 23475 Once again we have hit the command line limit with the sheer volume of 23476 generated test output. So replace the glob with a find which has the 23477 additional advantage of only needing to walk the tree once to generate 23478 the file lists - this begins to be noticeable with such large directories. 23479 23480 test/Makefile.am | 16 +++++++++------- 23481 1 file changed, 9 insertions(+), 7 deletions(-) 23482 23483commit 61b8e346135f8b61b22257541c97b9f262c17826 23484Author: Chris Wilson <chris@chris-wilson.co.uk> 23485AuthorDate: Wed Apr 11 11:59:27 2007 +0100 23486Commit: Carl Worth <cworth@cworth.org> 23487CommitDate: Wed Apr 11 13:06:29 2007 -0700 23488 23489 Unexport fbSolidFillmmx and fbCopyAreammx. 23490 23491 By unexporting these function we have exact control over their call sites 23492 and so can convert the initial guards into asserts which transforms the 23493 two functions to return unconditional success and hence conversion to 23494 void. 23495 23496 pixman/src/fbmmx.c | 215 ++++++++++++++++++++++------------------------ 23497 pixman/src/fbmmx.h | 19 ---- 23498 pixman/src/pixman-remap.h | 1 - 23499 3 files changed, 101 insertions(+), 134 deletions(-) 23500 23501commit efee2087387ba49e36d8d6104c4e2dd3ffeba081 23502Author: Chris Wilson <chris@chris-wilson.co.uk> 23503AuthorDate: Wed Apr 11 11:26:27 2007 +0100 23504Commit: Carl Worth <cworth@cworth.org> 23505CommitDate: Wed Apr 11 13:05:31 2007 -0700 23506 23507 Propagate errors up through pixman_composite_trapezoids() 23508 23509 Change the return type to indicate errors detected during 23510 pixman_composite_trapezoids() and add checking for failures during 23511 region ops. 23512 23513 pixman/src/ictrap.c | 37 +++++++++++++++++++++---------------- 23514 pixman/src/pixman.h | 2 +- 23515 2 files changed, 22 insertions(+), 17 deletions(-) 23516 23517commit bec097b5e281fcf2453de53946e89c13b37ecd1a 23518Author: Chris Wilson <chris@chris-wilson.co.uk> 23519AuthorDate: Wed Apr 11 11:13:30 2007 +0100 23520Commit: Carl Worth <cworth@cworth.org> 23521CommitDate: Wed Apr 11 13:04:53 2007 -0700 23522 23523 Propagate region errors from pixman_color_rects(). 23524 23525 Region operations within pixman_color_rects can fail, so cleanup and 23526 propagate. 23527 23528 pixman/src/icrect.c | 74 +++++++++++++++++++++++++++++++++++------------ 23529 pixman/src/pixman.h | 4 +-- 23530 src/cairo-image-surface.c | 6 ++-- 23531 3 files changed, 61 insertions(+), 23 deletions(-) 23532 23533commit 909334ee00701e18b2f2033b1c3a27714ce988fb 23534Author: Chris Wilson <chris@chris-wilson.co.uk> 23535AuthorDate: Wed Apr 11 10:45:55 2007 +0100 23536Commit: Carl Worth <cworth@cworth.org> 23537CommitDate: Wed Apr 11 13:03:38 2007 -0700 23538 23539 FbClipImage* should check for errors during region operations. 23540 23541 Propagate the error from pixman_region_intersect(). 23542 23543 pixman/src/icimage.c | 18 ++++++++++++++---- 23544 1 file changed, 14 insertions(+), 4 deletions(-) 23545 23546commit 5b67efcbd8acad60080129e0a8a307671b18b4fc 23547Author: Chris Wilson <chris@chris-wilson.co.uk> 23548AuthorDate: Wed Apr 11 10:38:09 2007 +0100 23549Commit: Carl Worth <cworth@cworth.org> 23550CommitDate: Wed Apr 11 13:02:56 2007 -0700 23551 23552 Propagate region failures during pixman_image_set_clip_region(). 23553 23554 Operating on regions can fail so check the status and return an error, 23555 after any necessary cleanup. 23556 23557 pixman/src/icimage.c | 15 ++++++++++++--- 23558 1 file changed, 12 insertions(+), 3 deletions(-) 23559 23560commit e1abc3c26dd797ba9a888362713c5e5c1257867b 23561Author: Chris Wilson <chris@chris-wilson.co.uk> 23562AuthorDate: Wed Apr 11 09:51:58 2007 +0100 23563Commit: Carl Worth <cworth@cworth.org> 23564CommitDate: Wed Apr 11 13:02:23 2007 -0700 23565 23566 Provide a private entry point for cairo_scaled_font_status(). 23567 23568 Add slim_hidden* markup for cairo_scaled_font_status() as we now use 23569 it internally. 23570 23571 src/cairo-scaled-font.c | 1 + 23572 src/cairoint.h | 1 + 23573 2 files changed, 2 insertions(+) 23574 23575commit 054c28a09de2c8ec2dc7111d786bca41a94f5a83 23576Author: Carl Worth <cworth@cworth.org> 23577AuthorDate: Wed Apr 11 02:26:08 2007 -0700 23578Commit: Carl Worth <cworth@cworth.org> 23579CommitDate: Wed Apr 11 02:50:49 2007 -0700 23580 23581 boilerplate: Add error checking for cairo_surface_write_to_png 23582 23583 boilerplate/cairo-boilerplate.c | 9 ++++++++- 23584 1 file changed, 8 insertions(+), 1 deletion(-) 23585 23586commit 0a54ca2d2340c55896ee6951efe6917322813431 23587Author: Carl Worth <cworth@cworth.org> 23588AuthorDate: Wed Apr 11 02:22:22 2007 -0700 23589Commit: Carl Worth <cworth@cworth.org> 23590CommitDate: Wed Apr 11 02:50:42 2007 -0700 23591 23592 boilerplate: Add error checking for cairo_surface_set_user_data 23593 23594 boilerplate/cairo-boilerplate.c | 26 ++++++++++++++++++++++---- 23595 1 file changed, 22 insertions(+), 4 deletions(-) 23596 23597commit 5661de9e1c93bd548b400de2619b6de6133d6483 23598Author: Carl Worth <cworth@cworth.org> 23599AuthorDate: Wed Apr 11 02:08:36 2007 -0700 23600Commit: Carl Worth <cworth@cworth.org> 23601CommitDate: Wed Apr 11 02:08:36 2007 -0700 23602 23603 SVG: Add missing error checking for calls to _cairo_output_stream_destroy 23604 23605 src/cairo-svg-surface.c | 28 +++++++++++++++++++++------- 23606 1 file changed, 21 insertions(+), 7 deletions(-) 23607 23608commit 8d5aa0fb8d3ac6302dd5e832425f3285ad84280a 23609Author: Carl Worth <cworth@cworth.org> 23610AuthorDate: Wed Apr 11 02:03:10 2007 -0700 23611Commit: Carl Worth <cworth@cworth.org> 23612CommitDate: Wed Apr 11 02:03:10 2007 -0700 23613 23614 SVG: Add missing error checks and propagation 23615 23616 The function calls that get the new treatment here are: 23617 23618 _cairo_meta_surface_replay 23619 _cairo_surface_show_page 23620 _cairo_array_append 23621 23622 all within _cairo_svg_surface_emit_meta_surface 23623 23624 src/cairo-svg-surface.c | 39 +++++++++++++++++++++++++++++---------- 23625 1 file changed, 29 insertions(+), 10 deletions(-) 23626 23627commit 9c810625e796704e32e76caae18d2129219f46db 23628Author: Carl Worth <cworth@cworth.org> 23629AuthorDate: Wed Apr 11 01:55:59 2007 -0700 23630Commit: Carl Worth <cworth@cworth.org> 23631CommitDate: Wed Apr 11 01:55:59 2007 -0700 23632 23633 PDF: Added error checking and propagation for _cairo_array_append 23634 23635 src/cairo-pdf-surface.c | 89 +++++++++++++++++++++++++++++++------------------ 23636 1 file changed, 56 insertions(+), 33 deletions(-) 23637 23638commit 5ae82deb6942fae1515740551c71e9eb24750a7c 23639Author: Carl Worth <cworth@cworth.org> 23640AuthorDate: Wed Apr 11 01:47:21 2007 -0700 23641Commit: Carl Worth <cworth@cworth.org> 23642CommitDate: Wed Apr 11 01:47:21 2007 -0700 23643 23644 PS: Add missing check for return value of _cairo_meta_surface_replay 23645 23646 Here we have to change the return type of a couple of functions in 23647 order to propagate the error condition. 23648 23649 src/cairo-ps-surface.c | 25 ++++++++++++++++++++----- 23650 1 file changed, 20 insertions(+), 5 deletions(-) 23651 23652commit 8c31cca2af11c544a6028bf42c2187625b978f56 23653Author: Carl Worth <cworth@cworth.org> 23654AuthorDate: Wed Apr 11 01:42:02 2007 -0700 23655Commit: Carl Worth <cworth@cworth.org> 23656CommitDate: Wed Apr 11 01:42:02 2007 -0700 23657 23658 PS: Add missing checks for return value of _cairo_pattern_get_extents 23659 23660 Propagation is extremely straightforward in this case. 23661 23662 src/cairo-ps-surface.c | 11 +++++++++-- 23663 1 file changed, 9 insertions(+), 2 deletions(-) 23664 23665commit 01ac5f1aea298434b617d935512e2e72033989fd 23666Author: Carl Worth <cworth@cworth.org> 23667AuthorDate: Wed Apr 11 01:35:11 2007 -0700 23668Commit: Carl Worth <cworth@cworth.org> 23669CommitDate: Wed Apr 11 01:35:11 2007 -0700 23670 23671 Assert that cairo_matrix_invert succeeds rather than ignoring tis return value 23672 23673 This assertion is safe as an internal consistency check thanks to 23674 the recent checks added to cairo_pattern_set_matrix. 23675 23676 src/cairo-pdf-surface.c | 4 +++- 23677 src/cairo-ps-surface.c | 5 ++++- 23678 2 files changed, 7 insertions(+), 2 deletions(-) 23679 23680commit bd0b328f7e07b3a292190aef6f82622800230f6f 23681Author: Carl Worth <cworth@cworth.org> 23682AuthorDate: Tue Apr 10 22:55:00 2007 -0700 23683Commit: Carl Worth <cworth@cworth.org> 23684CommitDate: Wed Apr 11 01:21:10 2007 -0700 23685 23686 test/invalid-matrix: Add new test to exercise CAIRO_STATUS_INVALID_MATRIX paths 23687 23688 This new test exercises every path where the user might possibly 23689 pass in an invalid matrix. Currently the test fails if no error 23690 is reported. Also, if an incorrect error is reported, (such as 23691 CAIRO_STATUS_NO_MEMORY instead of CAIRO_STATUS_INVALID_MATRIX), 23692 this is logged as a warning in invalid-matrix.log, but the test 23693 still passes. 23694 23695 It would still be worthwhile to follow up quickly and fix those 23696 cases to propagate the correct error value. 23697 23698 test/.gitignore | 1 + 23699 test/Makefile.am | 1 + 23700 test/invalid-matrix.c | 142 ++++++++++++++++++++++++++++++++++++++++++++++++++ 23701 3 files changed, 144 insertions(+) 23702 23703commit a6186604f794f2746089abc9c1716384c23aafc4 23704Author: Carl Worth <cworth@cworth.org> 23705AuthorDate: Tue Apr 10 22:52:37 2007 -0700 23706Commit: Carl Worth <cworth@cworth.org> 23707CommitDate: Wed Apr 11 01:21:10 2007 -0700 23708 23709 cairo_pattern_set_matrix: Validate that matrix is invertible 23710 23711 If not, set an error in the pattern. 23712 23713 src/cairo-pattern.c | 8 ++++++++ 23714 1 file changed, 8 insertions(+) 23715 23716commit 8e72852f0b9f2cd8558eb6c11acb326e73fceb12 23717Author: Carl Worth <cworth@cworth.org> 23718AuthorDate: Tue Apr 10 22:51:44 2007 -0700 23719Commit: Carl Worth <cworth@cworth.org> 23720CommitDate: Wed Apr 11 01:21:09 2007 -0700 23721 23722 _cairo_gstate_ensure_scaled_font: Add missing propagation for error hiding inside the scaled_font 23723 23724 src/cairo-gstate.c | 3 +++ 23725 1 file changed, 3 insertions(+) 23726 23727commit 2f1221e0f225f305c3f9c8e7311fe8f3fecab34b 23728Author: Carl Worth <cworth@cworth.org> 23729AuthorDate: Tue Apr 10 22:50:46 2007 -0700 23730Commit: Carl Worth <cworth@cworth.org> 23731CommitDate: Wed Apr 11 01:21:09 2007 -0700 23732 23733 _cairo_gstate_ensure_scaled_font: Prefer to treat a pointer as a pointer, not a Boolean value 23734 23735 src/cairo-gstate.c | 3 +-- 23736 1 file changed, 1 insertion(+), 2 deletions(-) 23737 23738commit dca69f73e3a11d397a701f82331d5aaa7194bd7f 23739Author: Carl Worth <cworth@cworth.org> 23740AuthorDate: Tue Apr 10 17:16:39 2007 -0700 23741Commit: Carl Worth <cworth@cworth.org> 23742CommitDate: Wed Apr 11 01:21:09 2007 -0700 23743 23744 Check (and assert) return values of cairo_matrix_invert 23745 23746 Now that we have matrix validation at the time of _cairo_scaled_font_init 23747 we know that it is safe to invert this matrix. 23748 23749 src/cairo-pdf-surface.c | 5 ++++- 23750 src/cairo-ps-surface.c | 5 ++++- 23751 2 files changed, 8 insertions(+), 2 deletions(-) 23752 23753commit 4ce2b62bcea49eccc0a4ee3781a115e4a34d3ad4 23754Author: Carl Worth <cworth@cworth.org> 23755AuthorDate: Tue Apr 10 17:12:51 2007 -0700 23756Commit: Carl Worth <cworth@cworth.org> 23757CommitDate: Wed Apr 11 01:18:08 2007 -0700 23758 23759 _cairo_scaled_font_init: Detect an invalid matrix and return an error. 23760 23761 Also fix all callers to notice and propagate the error, (though 23762 some paths will still lose the CAIRO_STATUS_INVALID_MATRIX value 23763 due to a return value of NULL at one point). 23764 23765 src/cairo-atsui-font.c | 9 +++++++-- 23766 src/cairo-scaled-font.c | 24 +++++++++++++++++------- 23767 src/cairo-win32-font.c | 10 ++++++---- 23768 3 files changed, 30 insertions(+), 13 deletions(-) 23769 23770commit fd8c1e4dc851dd4ce8f84a3e47abdc4906c83b0f 23771Author: Carl Worth <cworth@cworth.org> 23772AuthorDate: Tue Apr 10 16:43:50 2007 -0700 23773Commit: Carl Worth <cworth@cworth.org> 23774CommitDate: Tue Apr 10 23:06:57 2007 -0700 23775 23776 Fix cairo_scaled_font_create to return a nil scaled font, not NULL 23777 23778 src/cairo-scaled-font.c | 6 +++--- 23779 1 file changed, 3 insertions(+), 3 deletions(-) 23780 23781commit 0f0ed88ee26f22c1b0e0ec7c95b8a258d137dde4 23782Author: Carl Worth <cworth@cworth.org> 23783AuthorDate: Tue Apr 10 23:01:55 2007 -0700 23784Commit: Carl Worth <cworth@cworth.org> 23785CommitDate: Tue Apr 10 23:01:55 2007 -0700 23786 23787 paginated: Add missing error check for _cairo_surface_show_page 23788 23789 Fixing this uncovered a leak of a CAIRO_INT_STATUS_UNSUPPORTED value 23790 up to cairo_show_page, (and similarly to cairo_copy_page). There was 23791 really no good reason for _cairo_surface_show_page and 23792 _cairo_surface_copy_page to be returning cairo_int_status_t. Fix 23793 this by simply handling the UNSUPPORTED return at the surface layer 23794 instead of the gstate layer. 23795 23796 src/cairo-gstate.c | 20 ++------------------ 23797 src/cairo-paginated-surface.c | 4 +++- 23798 src/cairo-surface.c | 16 ++++++---------- 23799 src/cairoint.h | 4 ++-- 23800 4 files changed, 13 insertions(+), 31 deletions(-) 23801 23802commit 381f0bcafc86cefa665368cbbe2026adda1d98c9 23803Author: Carl Worth <cworth@cworth.org> 23804AuthorDate: Tue Apr 10 16:33:34 2007 -0700 23805Commit: Carl Worth <cworth@cworth.org> 23806CommitDate: Tue Apr 10 22:59:36 2007 -0700 23807 23808 paginated: Add missing error check for _cairo_surface_get_extents 23809 23810 src/cairo-paginated-surface.c | 4 +++- 23811 1 file changed, 3 insertions(+), 1 deletion(-) 23812 23813commit 41911002d754f187618ab310ab93c85c4b038943 23814Author: Carl Worth <cworth@cworth.org> 23815AuthorDate: Tue Apr 10 16:32:09 2007 -0700 23816Commit: Carl Worth <cworth@cworth.org> 23817CommitDate: Tue Apr 10 16:32:09 2007 -0700 23818 23819 test-meta-surface.c: Fix memory leak on error recovery path. 23820 23821 src/test-meta-surface.c | 6 ++++-- 23822 1 file changed, 4 insertions(+), 2 deletions(-) 23823 23824commit d954e4c1488c6478852dcc02641e66df1d4e9317 23825Author: Carl Worth <cworth@cworth.org> 23826AuthorDate: Tue Apr 10 16:31:21 2007 -0700 23827Commit: Carl Worth <cworth@cworth.org> 23828CommitDate: Tue Apr 10 16:31:21 2007 -0700 23829 23830 Fix indentation of CLEANUP_IMAGE label. 23831 23832 src/cairo-paginated-surface.c | 2 +- 23833 1 file changed, 1 insertion(+), 1 deletion(-) 23834 23835commit c011c37ba086f0c8d0dac6437318822927543955 23836Author: Carl Worth <cworth@cworth.org> 23837AuthorDate: Tue Apr 10 16:30:43 2007 -0700 23838Commit: Carl Worth <cworth@cworth.org> 23839CommitDate: Tue Apr 10 16:30:43 2007 -0700 23840 23841 paginated: Fix missing errors checks for _cairo_meta_surface_replay 23842 23843 src/cairo-paginated-surface.c | 14 ++++++++++---- 23844 1 file changed, 10 insertions(+), 4 deletions(-) 23845 23846commit e73a55ad3cc30b0ea69379b12283515523015751 23847Author: Carl Worth <cworth@cworth.org> 23848AuthorDate: Tue Apr 10 14:17:42 2007 -0700 23849Commit: Carl Worth <cworth@cworth.org> 23850CommitDate: Tue Apr 10 14:26:39 2007 -0700 23851 23852 cairo-truetype-subset: Fix missing error propagation 23853 23854 src/cairo-truetype-subset.c | 5 ++++- 23855 1 file changed, 4 insertions(+), 1 deletion(-) 23856 23857commit 97b8fd8117160cfea9864c81cbb8a06b321618f1 23858Author: Carl Worth <cworth@cworth.org> 23859AuthorDate: Tue Apr 10 14:16:01 2007 -0700 23860Commit: Carl Worth <cworth@cworth.org> 23861CommitDate: Tue Apr 10 14:26:31 2007 -0700 23862 23863 cairo-truetype-subset: Check resturn value from _cairo_array_append and propagate 23864 23865 src/cairo-truetype-subset.c | 28 ++++++++++++++++++++++++---- 23866 1 file changed, 24 insertions(+), 4 deletions(-) 23867 23868commit 84639e563ddfbd70ca48dcde4d3631418fd1cd82 23869Author: Carl Worth <cworth@cworth.org> 23870AuthorDate: Tue Apr 10 14:11:43 2007 -0700 23871Commit: Carl Worth <cworth@cworth.org> 23872CommitDate: Tue Apr 10 14:11:43 2007 -0700 23873 23874 test-meta-surface: Add missing check for error from _cairo_surface_get_extents 23875 23876 src/test-meta-surface.c | 4 +++- 23877 1 file changed, 3 insertions(+), 1 deletion(-) 23878 23879commit 866b2296b4a8b347011f1c8ae2e0f3a987a29d0c 23880Author: Carl Worth <cworth@cworth.org> 23881AuthorDate: Tue Apr 10 14:09:56 2007 -0700 23882Commit: Carl Worth <cworth@cworth.org> 23883CommitDate: Tue Apr 10 14:09:56 2007 -0700 23884 23885 test-meta-surface: Add missing checks for errors from _cairo_meta_surface_replay 23886 23887 src/test-meta-surface.c | 10 ++++++++-- 23888 1 file changed, 8 insertions(+), 2 deletions(-) 23889 23890commit ec1fc931257ff90fe190c52ed0a3bed9f218c350 23891Author: Carl Worth <cworth@cworth.org> 23892AuthorDate: Tue Apr 10 13:59:42 2007 -0700 23893Commit: Carl Worth <cworth@cworth.org> 23894CommitDate: Tue Apr 10 13:59:42 2007 -0700 23895 23896 Add missing error check of return value of _cairo_path_fixed_close_path 23897 23898 src/cairo-ft-font.c | 6 ++++-- 23899 1 file changed, 4 insertions(+), 2 deletions(-) 23900 23901commit 3d21037a8fb69bde0765871f53fe461ac397367e 23902Author: Carl Worth <cworth@cworth.org> 23903AuthorDate: Tue Apr 10 13:57:41 2007 -0700 23904Commit: Carl Worth <cworth@cworth.org> 23905CommitDate: Tue Apr 10 13:57:41 2007 -0700 23906 23907 Add assertion check to quiet warn_unused_result warning. 23908 23909 This is a somewhat useful internal consistency check. 23910 23911 src/cairo-xlib-surface.c | 6 +++++- 23912 1 file changed, 5 insertions(+), 1 deletion(-) 23913 23914commit 2f468677160080e9dd1db52a2ad7ca4adbf48149 23915Author: Carl Worth <cworth@cworth.org> 23916AuthorDate: Tue Apr 10 13:53:58 2007 -0700 23917Commit: Carl Worth <cworth@cworth.org> 23918CommitDate: Tue Apr 10 13:53:58 2007 -0700 23919 23920 Rename _cairo_pdf_surface_emit_toUnicode_stream to eliminate StudlyCaps 23921 23922 Obviously, the new name is _cairo_pdf_surface_emit_to_unicode_stream which 23923 is consistent with the to_unicode_stream identifiers already existing in 23924 the implementation. 23925 23926 src/cairo-pdf-surface.c | 12 ++++++------ 23927 1 file changed, 6 insertions(+), 6 deletions(-) 23928 23929commit cc6c115e3c5b931be4ab0210ce7f8cecaccf6241 23930Author: Carl Worth <cworth@cworth.org> 23931AuthorDate: Tue Apr 10 13:51:46 2007 -0700 23932Commit: Carl Worth <cworth@cworth.org> 23933CommitDate: Tue Apr 10 13:51:46 2007 -0700 23934 23935 PDF: Check return value of _cairo_output_stream_destroy and propagate 23936 23937 src/cairo-pdf-surface.c | 56 ++++++++++++++++++++++++++++++------------------- 23938 1 file changed, 35 insertions(+), 21 deletions(-) 23939 23940commit 8873928f09a78d3e6e8e57d5d4e0b94cf1f78ab7 23941Author: Carl Worth <cworth@cworth.org> 23942AuthorDate: Tue Apr 10 13:40:04 2007 -0700 23943Commit: Carl Worth <cworth@cworth.org> 23944CommitDate: Tue Apr 10 13:40:04 2007 -0700 23945 23946 PS: Add missing error checks for _cairo_output_stream_destroy 23947 23948 src/cairo-ps-surface.c | 14 ++++++++++---- 23949 1 file changed, 10 insertions(+), 4 deletions(-) 23950 23951commit ab5eccbbf6cc361e864e0d75c0299cf7b5d6122d 23952Author: Carl Worth <cworth@cworth.org> 23953AuthorDate: Tue Apr 10 13:28:48 2007 -0700 23954Commit: Carl Worth <cworth@cworth.org> 23955CommitDate: Tue Apr 10 13:28:48 2007 -0700 23956 23957 Make _cairo_clip_reset void 23958 23959 Yet another unconditionally successful function---so it's easier to return nothing. 23960 23961 src/cairo-clip-private.h | 2 +- 23962 src/cairo-clip.c | 4 +--- 23963 src/cairo-gstate.c | 4 +++- 23964 src/cairo-meta-surface.c | 2 +- 23965 4 files changed, 6 insertions(+), 6 deletions(-) 23966 23967commit 7a0ae5b7057798106b5e1a82431178f6c5f148e7 23968Author: Chris Wilson <chris@chris-wilson.co.uk> 23969AuthorDate: Tue Apr 10 21:09:36 2007 +0100 23970Commit: Carl Worth <cworth@cworth.org> 23971CommitDate: Tue Apr 10 13:21:19 2007 -0700 23972 23973 Disable warnings for cairo_*_reference functions. 23974 23975 This class of functions modify their argument and return it as a 23976 *convenience* for the caller. For example, within cairo a common idiom is: 23977 23978 cairo_object_reference (new); 23979 cairo_object_unreference (this->obj); 23980 this->obj = new; 23981 23982 which updates the member to the new object irrespective of whether the 23983 new object is the same as the one being replaced. Other issues arise 23984 with subtypes, as the return type is the parent's and so require more 23985 complicated handling to compile cleanly. 23986 23987 Disabling the warning is therefore preferred over adding code which 23988 decreases readibility and reduces maintainability. We need to make the 23989 compiler work for us, not against us... 23990 23991 src/cairoint.h | 26 +++++++++++++++----------- 23992 1 file changed, 15 insertions(+), 11 deletions(-) 23993 23994commit b82e595449e6eebbe6024454aaaaee31e6c43c73 23995Author: Chris Wilson <chris@chris-wilson.co.uk> 23996AuthorDate: Mon Apr 9 15:31:28 2007 +0100 23997Commit: Carl Worth <cworth@cworth.org> 23998CommitDate: Tue Apr 10 13:18:02 2007 -0700 23999 24000 pixman region operations can fail, propagate the error. 24001 24002 Copying the clip region could fail, add error returns and propagate up 24003 the call stack. 24004 24005 src/cairo-clip-private.h | 4 ++-- 24006 src/cairo-clip.c | 53 ++++++++++++++++++++++++++++++++++-------------- 24007 src/cairo-gstate.c | 14 ++++++++++--- 24008 src/cairo.c | 2 +- 24009 src/cairoint.h | 2 +- 24010 5 files changed, 53 insertions(+), 22 deletions(-) 24011 24012commit b0a256aaf3f0fd4491a28fca797aef1ef4b1251d 24013Author: Carl Worth <cworth@cworth.org> 24014AuthorDate: Tue Apr 10 13:07:09 2007 -0700 24015Commit: Carl Worth <cworth@cworth.org> 24016CommitDate: Tue Apr 10 13:07:09 2007 -0700 24017 24018 Change _cairo_dtostr to have a void return type 24019 24020 As previously implemented, there's no essential information in the 24021 return value from _cairo_dotostr, (the caller can simply use strlen 24022 to recompute the same value, which is what the only caller is already 24023 doing). 24024 24025 There would be real information in a return value which would return 24026 the result from the call to snprintf for the case where the buffer is 24027 not large enough for the number being printed. 24028 24029 src/cairo-output-stream-private.h | 2 +- 24030 src/cairo-output-stream.c | 5 +---- 24031 src/cairoint.h | 3 --- 24032 3 files changed, 2 insertions(+), 8 deletions(-) 24033 24034commit 5303980f82431a9d084177998a68527b60610241 24035Author: Carl Worth <cworth@cworth.org> 24036AuthorDate: Tue Apr 10 12:56:56 2007 -0700 24037Commit: Carl Worth <cworth@cworth.org> 24038CommitDate: Tue Apr 10 13:03:37 2007 -0700 24039 24040 _cairo_output_stream_vprintf: Add assertion to detect internal inconsitency 24041 24042 This will catch any inconsistency between the length of a single 24043 format specifier and the fixed size of the single_fmt buffer. 24044 24045 src/cairo-output-stream.c | 14 +++++++++++--- 24046 1 file changed, 11 insertions(+), 3 deletions(-) 24047 24048commit 97a69bc82e023d139d997ef69c7eba50d2708686 24049Author: Carl Worth <cworth@cworth.org> 24050AuthorDate: Tue Apr 10 12:13:27 2007 -0700 24051Commit: Carl Worth <cworth@cworth.org> 24052CommitDate: Tue Apr 10 12:13:27 2007 -0700 24053 24054 Fix mis-indented _cairo_dtostr 24055 24056 src/cairo-output-stream.c | 64 +++++++++++++++++++++++------------------------ 24057 1 file changed, 32 insertions(+), 32 deletions(-) 24058 24059commit 5c95800cded4e906baf8ddd10bfb4abc59151b13 24060Author: Carl Worth <cworth@cworth.org> 24061AuthorDate: Tue Apr 10 12:13:10 2007 -0700 24062Commit: Carl Worth <cworth@cworth.org> 24063CommitDate: Tue Apr 10 12:13:10 2007 -0700 24064 24065 Fix mis-indented _cairo_traps_init_box 24066 24067 src/cairo-traps.c | 30 +++++++++++++++--------------- 24068 1 file changed, 15 insertions(+), 15 deletions(-) 24069 24070commit 57188b4dcbcc2625dfc1817f8fe3b8ffeade5dc5 24071Author: Carl Worth <cworth@cworth.org> 24072AuthorDate: Tue Apr 10 12:06:09 2007 -0700 24073Commit: Carl Worth <cworth@cworth.org> 24074CommitDate: Tue Apr 10 12:06:09 2007 -0700 24075 24076 Fix cairo_traps_t status handling 24077 24078 Add a _cairo_traps_status function and use it instead of adding 24079 error checks to callers of _cairo_traps_add_trap and 24080 _cairo_traps_add_trap_from_points, (both of which are now given 24081 a void return type). 24082 24083 src/cairo-bentley-ottmann.c | 14 +++++++------- 24084 src/cairo-traps.c | 24 ++++++++++++++---------- 24085 src/cairoint.h | 5 ++++- 24086 3 files changed, 25 insertions(+), 18 deletions(-) 24087 24088commit 67bc608603b9baf8de8bcd2fedcf8ec315432a37 24089Author: Carl Worth <cworth@cworth.org> 24090AuthorDate: Tue Apr 10 11:11:32 2007 -0700 24091Commit: Carl Worth <cworth@cworth.org> 24092CommitDate: Tue Apr 10 11:19:54 2007 -0700 24093 24094 Add missing error checking to _trace_mask_to_path 24095 24096 Note: It looks like it would be convenient to shove a status value 24097 into cairo_path_fixed_t to reduce this sequence of error checks. 24098 But I tried that first, and it actually makes things worse overall 24099 due to many things like _cairo_path_fixed_move_to called by 24100 cairo_move_to where the result must be immediately checked anyway. 24101 So I've already rejected that approach. 24102 24103 src/cairo-scaled-font.c | 54 +++++++++++++++++++++++++++++++++++++------------ 24104 1 file changed, 41 insertions(+), 13 deletions(-) 24105 24106commit b1086caf3b108b0df19f70a2b6df161ad51bb280 24107Author: Carl Worth <cworth@cworth.org> 24108AuthorDate: Tue Apr 10 10:45:15 2007 -0700 24109Commit: Carl Worth <cworth@cworth.org> 24110CommitDate: Tue Apr 10 10:45:15 2007 -0700 24111 24112 Add a status field to cairo_polygon_t 24113 24114 Now, the functions to add new data to a polygon all become void, 24115 and there's a new _cairo_polygon_status call to query the status 24116 at the end of a sequence of operations. 24117 24118 With this change, we fix many callerswhich were previously not 24119 checking the return values of _cairo_polygon functions by adding 24120 only a single call to _cairo_polygon_status rathern than several 24121 new checks. 24122 24123 src/cairo-path-fill.c | 36 +++++++++-------------------- 24124 src/cairo-path-stroke.c | 8 ++++++- 24125 src/cairo-pen.c | 9 ++++---- 24126 src/cairo-polygon.c | 60 +++++++++++++++++++++++++++---------------------- 24127 src/cairoint.h | 11 ++++++--- 24128 5 files changed, 64 insertions(+), 60 deletions(-) 24129 24130commit bff45ec9f90b5949a8ffa19cb03c140a08119e4d 24131Author: Carl Worth <cworth@cworth.org> 24132AuthorDate: Mon Apr 9 17:44:12 2007 -0700 24133Commit: Carl Worth <cworth@cworth.org> 24134CommitDate: Tue Apr 10 10:14:49 2007 -0700 24135 24136 Invert condition to more intuitive form. 24137 24138 The idiom for checking the return value of malloc is: 24139 24140 if (pointer == NULL) { ... } 24141 24142 rather than: 24143 24144 if (pointer != NULL) { ... } 24145 24146 src/cairo-pattern.c | 7 ++++--- 24147 1 file changed, 4 insertions(+), 3 deletions(-) 24148 24149commit 01955a6e82ee28dd1377a3f2242aa2ddeebadac9 24150Author: Carl Worth <cworth@cworth.org> 24151AuthorDate: Mon Apr 9 17:42:04 2007 -0700 24152Commit: Carl Worth <cworth@cworth.org> 24153CommitDate: Tue Apr 10 10:14:49 2007 -0700 24154 24155 Rename ARRAY_LEN to ARRAY_LENGTH 24156 24157 Yet another victim in my hunt against abbreviations within cairo's implementation. 24158 24159 src/cairo-arc.c | 2 +- 24160 src/cairo-atsui-font.c | 4 ++-- 24161 src/cairo-bentley-ottmann.c | 2 +- 24162 src/cairo-cff-subset.c | 6 +++--- 24163 src/cairo-hash.c | 2 +- 24164 src/cairo-pattern.c | 8 ++++---- 24165 src/cairo-polygon.c | 2 +- 24166 src/cairo-spline.c | 4 ++-- 24167 src/cairo-surface.c | 2 +- 24168 src/cairo-svg-surface.c | 2 +- 24169 src/cairo-traps.c | 2 +- 24170 src/cairo-truetype-subset.c | 6 +++--- 24171 src/cairoint.h | 4 ++-- 24172 13 files changed, 23 insertions(+), 23 deletions(-) 24173 24174commit d317e8175de04c73c4a1f84db4a7e5354411ca06 24175Author: Carl Worth <cworth@cworth.org> 24176AuthorDate: Mon Apr 9 17:38:17 2007 -0700 24177Commit: Carl Worth <cworth@cworth.org> 24178CommitDate: Tue Apr 10 10:14:49 2007 -0700 24179 24180 Prefer FALSE over 0 for initializing a cairo_bool_t value 24181 24182 src/cairo.c | 4 ++-- 24183 1 file changed, 2 insertions(+), 2 deletions(-) 24184 24185commit 9a33dab96988b94940a917921accc1bf19960a53 24186Author: Carl Worth <cworth@cworth.org> 24187AuthorDate: Mon Apr 9 17:37:30 2007 -0700 24188Commit: Carl Worth <cworth@cworth.org> 24189CommitDate: Tue Apr 10 10:14:49 2007 -0700 24190 24191 Fix an incorrectly indented condition 24192 24193 src/cairo-xlib-surface.c | 4 ++-- 24194 1 file changed, 2 insertions(+), 2 deletions(-) 24195 24196commit 4bfc8c98ccf29fc11d11ee35996be9aab5a63f36 24197Author: Carl Worth <cworth@cworth.org> 24198AuthorDate: Mon Apr 9 17:36:41 2007 -0700 24199Commit: Carl Worth <cworth@cworth.org> 24200CommitDate: Tue Apr 10 10:14:49 2007 -0700 24201 24202 ATSUI: Fix broken error checks for NULL surface 24203 24204 The cairo_image_surface_create function never returns NULL so 24205 the previous error checks would never have triggered. The correct 24206 approach is to check the result of cairo_surface_status(). 24207 24208 src/cairo-atsui-font.c | 9 +++++---- 24209 1 file changed, 5 insertions(+), 4 deletions(-) 24210 24211commit bd98295100ce84a9dfffd16bc6e50ef0ced4d4bc 24212Author: Carl Worth <cworth@cworth.org> 24213AuthorDate: Mon Apr 9 17:30:06 2007 -0700 24214Commit: Carl Worth <cworth@cworth.org> 24215CommitDate: Tue Apr 10 10:14:48 2007 -0700 24216 24217 Add a couple of missing newline characters 24218 24219 A return statement that's not at the end of a function really needs 24220 a line of whitespace after it. 24221 24222 src/cairo-bentley-ottmann.c | 1 + 24223 src/cairo-type1-fallback.c | 1 + 24224 2 files changed, 2 insertions(+) 24225 24226commit a7d8e52cc4be2376429f567abc2be853da7d5fbc 24227Author: Carl Worth <cworth@cworth.org> 24228AuthorDate: Mon Apr 9 17:24:18 2007 -0700 24229Commit: Carl Worth <cworth@cworth.org> 24230CommitDate: Tue Apr 10 10:14:48 2007 -0700 24231 24232 Cleanup multi-line if condition 24233 24234 The standard idiom of assigning to a local status variable looks much, 24235 much nicer here. 24236 24237 src/cairo-path.c | 20 +++++++++++--------- 24238 1 file changed, 11 insertions(+), 9 deletions(-) 24239 24240commit 7c97696af98a6dab9e0c5cdc72ff08c19892c95f 24241Author: Carl Worth <cworth@cworth.org> 24242AuthorDate: Mon Apr 9 17:16:30 2007 -0700 24243Commit: Carl Worth <cworth@cworth.org> 24244CommitDate: Mon Apr 9 17:16:30 2007 -0700 24245 24246 Make _cairo_path_bounder_add_point void 24247 24248 Yet another function that cannot fail under any circumstances. 24249 24250 src/cairo-path-bounds.c | 6 ++---- 24251 1 file changed, 2 insertions(+), 4 deletions(-) 24252 24253commit 93776772edbadeab90ea199a115750310be91e4e 24254Author: Carl Worth <cworth@cworth.org> 24255AuthorDate: Mon Apr 9 17:15:33 2007 -0700 24256Commit: Carl Worth <cworth@cworth.org> 24257CommitDate: Mon Apr 9 17:15:33 2007 -0700 24258 24259 Make _cairo_matrix_compute_scale_factors void 24260 24261 Yet another function that cannot fail under any circumstances. 24262 24263 src/cairo-matrix.c | 4 +--- 24264 src/cairoint.h | 2 +- 24265 2 files changed, 2 insertions(+), 4 deletions(-) 24266 24267commit d5b35d7d7666634f1f98d6c0141a2a29976e7e2f 24268Author: Carl Worth <cworth@cworth.org> 24269AuthorDate: Mon Apr 9 17:12:11 2007 -0700 24270Commit: Carl Worth <cworth@cworth.org> 24271CommitDate: Mon Apr 9 17:12:11 2007 -0700 24272 24273 Make _cairo_pen_init_empty void 24274 24275 Yet another function that cannot fail under any circumstances. 24276 24277 src/cairo-pen.c | 4 +--- 24278 src/cairoint.h | 2 +- 24279 2 files changed, 2 insertions(+), 4 deletions(-) 24280 24281commit 9077da99abd163ebd0c52e8375e6f40ce60cf7d2 24282Author: Carl Worth <cworth@cworth.org> 24283AuthorDate: Mon Apr 9 17:09:51 2007 -0700 24284Commit: Carl Worth <cworth@cworth.org> 24285CommitDate: Mon Apr 9 17:09:51 2007 -0700 24286 24287 Make _cairo_gstate_user_to_device (and friends) void. 24288 24289 This is just multiplication after all, so there's nothing that can fail. 24290 And we can get rid of a lot of useless error-checking code this way. 24291 The corrected functions are: 24292 24293 _cairo_gstate_user_to_device 24294 _cairo_gstate_user_to_device_distance 24295 _cairo_gstate_device_to_user 24296 _cairo_gstate_device_to_user_distance 24297 24298 src/cairo-gstate.c | 16 ++++---------- 24299 src/cairo.c | 62 ++++++++++++++++-------------------------------------- 24300 src/cairoint.h | 8 +++---- 24301 3 files changed, 26 insertions(+), 60 deletions(-) 24302 24303commit 628ec8eb91fb246b8a44be3451163a5d8592a860 24304Author: Carl Worth <cworth@cworth.org> 24305AuthorDate: Mon Apr 9 17:03:29 2007 -0700 24306Commit: Carl Worth <cworth@cworth.org> 24307CommitDate: Mon Apr 9 17:03:29 2007 -0700 24308 24309 Make _cairo_gstate_identity_matrix void 24310 24311 Now that we have the warn_unused_result attribute enabled, (thanks 24312 Chris!), it's actually harmful to have a function return an 24313 uncoditional value of CAIRO_STATUS_SUCCESS. The harm is that 24314 it would force lots of unnecessary error-checking paths that 24315 just add clutter. 24316 24317 It is much better to simply give a function that cannot fail 24318 a return type of void. 24319 24320 src/cairo-gstate.c | 9 ++------- 24321 src/cairo.c | 6 +----- 24322 src/cairoint.h | 2 +- 24323 3 files changed, 4 insertions(+), 13 deletions(-) 24324 24325commit 90803eca0fa8d49c54c465580707009aae382d28 24326Author: Chris Wilson <chris@chris-wilson.co.uk> 24327AuthorDate: Wed Apr 4 11:17:23 2007 +0100 24328Commit: Carl Worth <cworth@cworth.org> 24329CommitDate: Mon Apr 9 16:50:20 2007 -0700 24330 24331 Implement clone_surface for test-fallback-surface. 24332 24333 A few tests were failing due to clip_init_deep_copy() not being able to 24334 clone the target surface. Before propagating the failure, this was being 24335 silently ignored. 24336 24337 Copy the simple implementation from cairo-image-surface. 24338 24339 src/test-fallback-surface.c | 22 +++++++++++++++++++++- 24340 1 file changed, 21 insertions(+), 1 deletion(-) 24341 24342commit 4456ecbf2694f0b71a431353e0dea0515b72926b 24343Author: Chris Wilson <chris@chris-wilson.co.uk> 24344AuthorDate: Sun Apr 8 23:40:31 2007 +0100 24345Commit: Carl Worth <cworth@cworth.org> 24346CommitDate: Mon Apr 9 16:49:58 2007 -0700 24347 24348 Fix detection of FcFini(). 24349 24350 It is customary to check for a FontConfig function in the FontConfig 24351 library rather than the FreeType library. 24352 24353 configure.in | 2 +- 24354 1 file changed, 1 insertion(+), 1 deletion(-) 24355 24356commit cd2394c076e2f6b14a9a3281461026b811692f2e 24357Author: Chris Wilson <chris@chris-wilson.co.uk> 24358AuthorDate: Tue Apr 3 21:50:15 2007 +0100 24359Commit: Carl Worth <cworth@cworth.org> 24360CommitDate: Mon Apr 9 16:48:02 2007 -0700 24361 24362 Free the bitmap->buffer on failure 24363 24364 Currently if the ownership of the bitmap->buffer is passed to 24365 _get_bitmap_surface() then the status of the buffer is inconsistent 24366 should the function detect an error (i.e. CAIRO_STATUS_NO_MEMORY). 24367 Fix it up that should we encounter an error and we own the buffer then 24368 we always free it on behalf of the caller. 24369 24370 src/cairo-ft-font.c | 7 ++++++- 24371 1 file changed, 6 insertions(+), 1 deletion(-) 24372 24373commit ac33953a81114dddc25ceb57f6df57e01d4d937b 24374Author: Chris Wilson <chris@chris-wilson.co.uk> 24375AuthorDate: Sun Apr 8 23:37:29 2007 +0100 24376Commit: Carl Worth <cworth@cworth.org> 24377CommitDate: Mon Apr 9 16:47:38 2007 -0700 24378 24379 Correct handling of a malloc failure during pattern_create_in_error() 24380 24381 Confusion had been introduced as to who provided the fixup after 24382 the malloc failed which resulted in a NULL deference whilst checking for 24383 an erroneous pattern in _cairo_pattern_create_in_error. 24384 24385 src/cairo-pattern.c | 24 ++++++------------------ 24386 1 file changed, 6 insertions(+), 18 deletions(-) 24387 24388commit b6924722b8c8e5f4356d3c8ba438a702ffb8a5ed 24389Author: Behdad Esfahbod <behdad@behdad.org> 24390AuthorDate: Sun Apr 8 23:35:01 2007 -0400 24391Commit: Behdad Esfahbod <behdad@behdad.org> 24392CommitDate: Mon Apr 9 19:39:50 2007 -0400 24393 24394 [cairo-skiplist] Use one random number per insertion, instead of two 24395 24396 src/cairo-skiplist-private.h | 3 +++ 24397 src/cairo-skiplist.c | 7 +++++-- 24398 2 files changed, 8 insertions(+), 2 deletions(-) 24399 24400commit ce1651f1ea57b53ad91f5115524d33f6424d5797 24401Author: Chris Wilson <chris@chris-wilson.co.uk> 24402AuthorDate: Tue Apr 3 16:53:17 2007 +0100 24403Commit: Carl Worth <cworth@cworth.org> 24404CommitDate: Mon Apr 9 16:39:05 2007 -0700 24405 24406 Free the pixman_image if we fail to wrap it with a surface. 24407 24408 src/cairo-image-surface.c | 9 +++++++++ 24409 1 file changed, 9 insertions(+) 24410 24411commit bd99507f15dd8a2d162f13e691cc5f8d71795577 24412Author: Chris Wilson <chris@chris-wilson.co.uk> 24413AuthorDate: Fri Mar 30 14:00:50 2007 +0100 24414Commit: Carl Worth <cworth@cworth.org> 24415CommitDate: Mon Apr 9 16:38:29 2007 -0700 24416 24417 Initialise cairo_spline_t to use its embedded buffer. 24418 24419 Currently the code defaults to setting its points to NULL and fixing it up 24420 on the first add_point() to use the embedded buffer. Skip this extra step 24421 by initialising points to the embedded buffer. 24422 24423 src/cairo-spline.c | 24 +++++++----------------- 24424 1 file changed, 7 insertions(+), 17 deletions(-) 24425 24426commit 6daaf8a89d24fb3022687fe8d52c8001dc270265 24427Author: Behdad Esfahbod <behdad@behdad.org> 24428AuthorDate: Sun Apr 8 23:32:27 2007 -0400 24429Commit: Behdad Esfahbod <behdad@behdad.org> 24430CommitDate: Mon Apr 9 19:38:22 2007 -0400 24431 24432 [cairo-skiplist] Reduce MAX_LEVEL from 31 to 15 24433 24434 The probability that a node of level L is generated is 24435 0.25^(L-1) * 0.75. It means, a node of level 15 or 24436 more will be used with a probability of about 3 * 10^-9. 24437 That's really rare... 24438 24439 Actually that's not still true, because the level of a new 24440 node is capped by current max-level plus one. So to really 24441 get a node with a level of 15 one should first get a node 24442 of level 2, then 3, then 4, ..., finally 15. Now that's 24443 REALLY rare. 24444 24445 And guess what, the skiplist only start behaving bad with a 24446 max level cap of MAX_LEVEL when having on the order of 24447 4**MAX_LEVEL items in it. I really hope we don't get there. 24448 24449 src/cairo-skiplist-private.h | 2 +- 24450 1 file changed, 1 insertion(+), 1 deletion(-) 24451 24452commit a7de9501f6d0f3a574c5246b81d78aa749b64e67 24453Author: Behdad Esfahbod <behdad@behdad.org> 24454AuthorDate: Sun Apr 8 23:24:50 2007 -0400 24455Commit: Behdad Esfahbod <behdad@behdad.org> 24456CommitDate: Mon Apr 9 19:38:08 2007 -0400 24457 24458 [cairo-skiplist] Group levels two-by-two in freelists 24459 24460 Most memory allocators allocate in multiples of twice the size of 24461 a pointer. So there is no point in keeping freelists for both 24462 even and odd levels. We now round odd levels up to the next 24463 even level for freelist computations. This reduces the number of 24464 node mallocations. 24465 24466 src/cairo-skiplist-private.h | 10 +++++++++- 24467 src/cairo-skiplist.c | 21 ++++++++++++++------- 24468 2 files changed, 23 insertions(+), 8 deletions(-) 24469 24470commit b2280c5ac25e752c4462acdc8d2ded916fce7c34 24471Author: Chris Wilson <chris@chris-wilson.co.uk> 24472AuthorDate: Fri Mar 30 11:24:18 2007 +0100 24473Commit: Carl Worth <cworth@cworth.org> 24474CommitDate: Mon Apr 9 16:36:59 2007 -0700 24475 24476 Do not overwrite cr->status 24477 24478 The idiom for cairo.c is to do 24479 cr->status = _cairo_op (); 24480 if (cr->status) _cairo_set_error (cr, cr->status); 24481 24482 Unfortunately a trivial mistake for a _cairo_op () is to call a cairo_op () 24483 and forget to check cr->status but return CAIRO_STATUS_SUCCESS which will 24484 mask the earlier error. 24485 24486 Obviously this is a bug in the lower level but the impact can be reduced 24487 by chaning cairo.c to use a local status variable for its return: 24488 cairo_status_t status = _cairo_op (); 24489 if (status) _cairo_set_error (cr, cr->status); 24490 24491 src/cairo.c | 537 ++++++++++++++++++++++++++++++++++++------------------------ 24492 1 file changed, 319 insertions(+), 218 deletions(-) 24493 24494commit 14ac5dd78b38aaaa118e8ac39fa50f485bff516d 24495Author: Chris Wilson <chris@chris-wilson.co.uk> 24496AuthorDate: Sun Apr 8 23:11:57 2007 +0100 24497Commit: Carl Worth <cworth@cworth.org> 24498CommitDate: Mon Apr 9 16:23:36 2007 -0700 24499 24500 Return the correct status from _cairo_pen_stroke_spline(). 24501 24502 The return value is shared before the normal cleanup and error paths, 24503 so do not simply return a hard-coded CAIRO_STATUS_SUCCESS. 24504 24505 src/cairo-pen.c | 2 +- 24506 1 file changed, 1 insertion(+), 1 deletion(-) 24507 24508commit b823e2f68ff613b2c4f537aba6bbbcf413412eb2 24509Author: Chris Wilson <chris@chris-wilson.co.uk> 24510AuthorDate: Sun Apr 8 23:09:31 2007 +0100 24511Commit: Carl Worth <cworth@cworth.org> 24512CommitDate: Mon Apr 9 16:22:48 2007 -0700 24513 24514 cairo-xlib-surface - propagate status returns. 24515 24516 These were found during a cairo_static pass on an alternative branch... 24517 24518 A critical one in particular was setting the have added glyph flag to 24519 TRUE even if _cairo_xlib_surface_add_glyph() fails. This can cause an 24520 application crash due to a RenderBadGlyph error later when the scaled 24521 font is cleaned and we attempt to remove the glyph. 24522 24523 src/cairo-xlib-surface.c | 44 +++++++++++++++++++++++++++++++------------- 24524 1 file changed, 31 insertions(+), 13 deletions(-) 24525 24526commit 4a624b8e8b0a14dd03e551b28257d8a54b9ee6f6 24527Author: Chris Wilson <chris@chris-wilson.co.uk> 24528AuthorDate: Thu Mar 29 13:36:07 2007 +0100 24529Commit: Carl Worth <cworth@cworth.org> 24530CommitDate: Mon Apr 9 16:19:41 2007 -0700 24531 24532 Remove the entry if we return an error code during _cair_hash_table_insert. 24533 24534 Previously if we detected an error during resize we would report a 24535 failure to insert the entry into the hash table having already done so. 24536 24537 src/cairo-hash.c | 11 +++++++++-- 24538 1 file changed, 9 insertions(+), 2 deletions(-) 24539 24540commit 1cdb54f8835446b23769b7771445201a9b5d165e 24541Author: Chris Wilson <chris@chris-wilson.co.uk> 24542AuthorDate: Thu Mar 29 09:11:21 2007 +0100 24543Commit: Carl Worth <cworth@cworth.org> 24544CommitDate: Mon Apr 9 16:18:29 2007 -0700 24545 24546 Reorder cleanup cairo_xlib_surface_show_glyphs() 24547 24548 _cairo_pattern_release_surface() asserts that it is passed a pattern 24549 surface. This itself is bad as breaks the symmetry with 24550 _cairo_pattern_acquire_surface under() error conditions, however reorder 24551 the cleanup to avoid this assertion. 24552 24553 src/cairo-xlib-surface.c | 22 ++++++++++++---------- 24554 1 file changed, 12 insertions(+), 10 deletions(-) 24555 24556commit a1331fb043051ac10f8555b2ad2fe85183db96df 24557Author: Chris Wilson <chris@chris-wilson.co.uk> 24558AuthorDate: Wed Mar 28 19:32:25 2007 +0100 24559Commit: Carl Worth <cworth@cworth.org> 24560CommitDate: Mon Apr 9 16:13:41 2007 -0700 24561 24562 Detect failure to allocate glyphs during _cairo_scaled_font_init() 24563 24564 If _cairo_cache_create fails, return CAIRO_STATUS_NO_MEMORY. 24565 24566 src/cairo-scaled-font.c | 9 ++++++--- 24567 1 file changed, 6 insertions(+), 3 deletions(-) 24568 24569commit 1237eedff3d557b94db9c940fd8de48be9ba41ba 24570Author: Chris Wilson <chris@chris-wilson.co.uk> 24571AuthorDate: Sun Apr 8 22:56:43 2007 +0100 24572Commit: Carl Worth <cworth@cworth.org> 24573CommitDate: Mon Apr 9 16:13:16 2007 -0700 24574 24575 Check for error whilst trying to advance along a text string. 24576 24577 The text perf-case tries to fill the region with a single text string, 24578 but fails to detect when the current point does not advance due to an 24579 error. This causes the perf-case to enter an infinite loop, so we break 24580 out when the cairo_status() has been set. 24581 24582 perf/text.c | 4 ++-- 24583 1 file changed, 2 insertions(+), 2 deletions(-) 24584 24585commit ea4945850ae3ce3614bcadc0fa413eb836344430 24586Author: Chris Wilson <chris@chris-wilson.co.uk> 24587AuthorDate: Fri Mar 16 20:04:26 2007 +0000 24588Commit: Carl Worth <cworth@cworth.org> 24589CommitDate: Mon Apr 9 16:12:41 2007 -0700 24590 24591 Avoid using substituted surfaces for xlib operations. 24592 24593 Detect when a substitute image surface is returned for a solid pattern, 24594 and avoid mixed image/xlib composite operations. This can happen for example 24595 if there is a resource allocation failure during creating a similar surface. 24596 24597 src/cairo-xlib-surface.c | 7 ++++++- 24598 1 file changed, 6 insertions(+), 1 deletion(-) 24599 24600commit 751976970bb0ec9b810c1f58a05d53b7bfb7d90f 24601Author: Chris Wilson <chris@chris-wilson.co.uk> 24602AuthorDate: Fri Mar 16 19:35:02 2007 +0000 24603Commit: Carl Worth <cworth@cworth.org> 24604CommitDate: Mon Apr 9 16:11:22 2007 -0700 24605 24606 Handle failure to allocate a GC. 24607 24608 src/cairo-xlib-surface.c | 51 ++++++++++++++++++++++++++++++++---------------- 24609 1 file changed, 34 insertions(+), 17 deletions(-) 24610 24611commit c6055dc349c3f96e8d6f0e4166540871a59cb0e2 24612Author: Chris Wilson <chris@chris-wilson.co.uk> 24613AuthorDate: Sun Apr 8 22:50:44 2007 +0100 24614Commit: Carl Worth <cworth@cworth.org> 24615CommitDate: Mon Apr 9 16:08:21 2007 -0700 24616 24617 Reset cairo_scaled_font_map after freeing. 24618 24619 Along the error path the global font map was freed but not reset, 24620 causing segfaults on any subsequent use of a cairo_scaled_font_t. 24621 24622 src/cairo-scaled-font.c | 1 + 24623 1 file changed, 1 insertion(+) 24624 24625commit 65de47d8bc7865c6bf6318fd7bd861acf4e4af05 24626Author: Chris Wilson <chris@chris-wilson.co.uk> 24627AuthorDate: Sun Apr 8 22:47:19 2007 +0100 24628Commit: Carl Worth <cworth@cworth.org> 24629CommitDate: Mon Apr 9 16:08:00 2007 -0700 24630 24631 cairo-bentley-ottmann - check init for failure 24632 24633 This was found during a cairo_static pass on an alternative branch... 24634 Add the trivial error propagation for _cairo_bo_event_queue_init() 24635 24636 src/cairo-bentley-ottmann.c | 6 ++++-- 24637 1 file changed, 4 insertions(+), 2 deletions(-) 24638 24639commit b4cb0306b4415f2ddf0acd84043b72c8b8485726 24640Author: Chris Wilson <chris@chris-wilson.co.uk> 24641AuthorDate: Wed Mar 28 15:55:06 2007 +0100 24642Commit: Carl Worth <cworth@cworth.org> 24643CommitDate: Mon Apr 9 16:06:51 2007 -0700 24644 24645 cairo-type1-fallback - propagate error returns 24646 24647 Add status returns in order to propagate a matrix inversion failure 24648 up through the call stack. 24649 24650 src/cairo-type1-fallback.c | 25 ++++++++++++++++++------- 24651 1 file changed, 18 insertions(+), 7 deletions(-) 24652 24653commit b29d78dda169ee58b82cdbd04e3af2eedcc58edd 24654Author: Chris Wilson <chris@chris-wilson.co.uk> 24655AuthorDate: Wed Mar 28 15:43:37 2007 +0100 24656Commit: Carl Worth <cworth@cworth.org> 24657CommitDate: Mon Apr 9 16:05:30 2007 -0700 24658 24659 cairo-svg-surface - propagate some error returns 24660 24661 Add status returns to functions in order to propagate an error up 24662 the call stack. 24663 24664 For the emit_*_pattern we add a new status return even when when 24665 the functon return CAIRO_STATUS_SUCCESS unconditionally in order for 24666 the caller to handle all cases in a consistent manner. 24667 24668 src/cairo-svg-surface.c | 56 ++++++++++++++++++++++++++++++++----------------- 24669 1 file changed, 37 insertions(+), 19 deletions(-) 24670 24671commit 3f7ca6ef5b09263607ff2f9862950393815c5d2c 24672Author: Chris Wilson <chris@chris-wilson.co.uk> 24673AuthorDate: Wed Mar 28 14:57:44 2007 +0100 24674Commit: Carl Worth <cworth@cworth.org> 24675CommitDate: Mon Apr 9 15:51:31 2007 -0700 24676 24677 cairo-pen - cairo_pen_init() can fail propagate its error. 24678 24679 Add status returns in order to propagate an intialisation failure 24680 back up the call chain. 24681 24682 src/cairo-path-stroke.c | 23 +++++++++++++++-------- 24683 1 file changed, 15 insertions(+), 8 deletions(-) 24684 24685commit 67f13b3518c5fc98d1e3fb184bc6c2f5ea96f4c9 24686Author: Chris Wilson <chris@chris-wilson.co.uk> 24687AuthorDate: Sun Apr 8 21:54:41 2007 +0100 24688Commit: Chris Wilson <chris@chris-wilson.co.uk> 24689CommitDate: Mon Apr 9 15:12:15 2007 +0100 24690 24691 cairo-bentley-ottmann/skip-list - catch and propagate out-of-memory errors 24692 24693 The skip list inserts could return NULL indicating an out-of-memory error. 24694 In order to handle this, propagate the error up the call stack. 24695 24696 src/cairo-bentley-ottmann.c | 50 +++++++++++++++++++++++++++++++-------------- 24697 src/cairo-skiplist.c | 2 ++ 24698 2 files changed, 37 insertions(+), 15 deletions(-) 24699 24700commit 293122279fd87098a00386bb4c9310f3fc1bb373 24701Author: Chris Wilson <chris@chris-wilson.co.uk> 24702AuthorDate: Sun Apr 8 21:50:48 2007 +0100 24703Commit: Chris Wilson <chris@chris-wilson.co.uk> 24704CommitDate: Mon Apr 9 15:11:47 2007 +0100 24705 24706 cairo-path-stroke - add trivial missing status checks 24707 24708 Propagate the error status. 24709 24710 src/cairo-path-stroke.c | 33 +++++++++++++++++++++++++-------- 24711 1 file changed, 25 insertions(+), 8 deletions(-) 24712 24713commit 2f2bff038cb0e59865a0405b19da4805213d718e 24714Author: Chris Wilson <chris@chris-wilson.co.uk> 24715AuthorDate: Sun Apr 8 21:47:01 2007 +0100 24716Commit: Chris Wilson <chris@chris-wilson.co.uk> 24717CommitDate: Mon Apr 9 15:08:45 2007 +0100 24718 24719 buffer-diff - check for any errors whilst writing the png 24720 24721 Propagate any errors from writing out the png. 24722 24723 test/buffer-diff.c | 5 +++-- 24724 1 file changed, 3 insertions(+), 2 deletions(-) 24725 24726commit 79424fc64640db4b518eaf4a23477f1bbc26db5a 24727Author: Chris Wilson <chris@chris-wilson.co.uk> 24728AuthorDate: Sun Apr 8 21:45:58 2007 +0100 24729Commit: Chris Wilson <chris@chris-wilson.co.uk> 24730CommitDate: Mon Apr 9 15:08:29 2007 +0100 24731 24732 cairo - add missing status checks 24733 24734 Add a few missing status checks and set the error on the context when 24735 applicable. 24736 24737 src/cairo.c | 74 +++++++++++++++++++++++++++++++++++++++---------------------- 24738 1 file changed, 48 insertions(+), 26 deletions(-) 24739 24740commit a34a32fd99145733df9290f7c72bf7d9759e212b 24741Author: Chris Wilson <chris@chris-wilson.co.uk> 24742AuthorDate: Sun Apr 8 21:36:42 2007 +0100 24743Commit: Chris Wilson <chris@chris-wilson.co.uk> 24744CommitDate: Mon Apr 9 15:07:27 2007 +0100 24745 24746 cairo-type1-fallback - check for an error during cleanup 24747 24748 The cleanup path is shared between the error path and the true path, and 24749 so any error along it can not be ignored. 24750 24751 src/cairo-type1-fallback.c | 7 ++++--- 24752 1 file changed, 4 insertions(+), 3 deletions(-) 24753 24754commit d2efadc84d0716498cec0510916f5375fbb7acf0 24755Author: Chris Wilson <chris@chris-wilson.co.uk> 24756AuthorDate: Sun Apr 8 21:35:28 2007 +0100 24757Commit: Chris Wilson <chris@chris-wilson.co.uk> 24758CommitDate: Mon Apr 9 15:07:10 2007 +0100 24759 24760 cairo-svg-surface - propagate error returns 24761 24762 Add a couple of missing checks for error statues. 24763 24764 src/cairo-svg-surface.c | 34 ++++++++++++++++++++++++---------- 24765 1 file changed, 24 insertions(+), 10 deletions(-) 24766 24767commit 02264b40f5ab4831e52c0ad156471045c62c9e85 24768Author: Chris Wilson <chris@chris-wilson.co.uk> 24769AuthorDate: Sun Apr 8 21:34:25 2007 +0100 24770Commit: Chris Wilson <chris@chris-wilson.co.uk> 24771CommitDate: Mon Apr 9 15:06:49 2007 +0100 24772 24773 cairo-surface-fallback - propagate error returns 24774 24775 _cairo_surface_composite() can fail so check for and error return and 24776 propagate. 24777 24778 src/cairo-surface-fallback.c | 44 ++++++++++++++++++++++++++------------------ 24779 1 file changed, 26 insertions(+), 18 deletions(-) 24780 24781commit 76b27fb0e81cc557c7348f6ba98b72552d781aed 24782Author: Chris Wilson <chris@chris-wilson.co.uk> 24783AuthorDate: Sun Apr 8 21:33:00 2007 +0100 24784Commit: Chris Wilson <chris@chris-wilson.co.uk> 24785CommitDate: Mon Apr 9 15:06:25 2007 +0100 24786 24787 cairo-ps-surface - add a couple of status checks 24788 24789 Handle a couple more error returns. 24790 24791 src/cairo-ps-surface.c | 54 +++++++++++++++++++++++++++++--------------------- 24792 1 file changed, 31 insertions(+), 23 deletions(-) 24793 24794commit 619425a8b3bff79fb453f4b84e3a8e75db369b40 24795Author: Chris Wilson <chris@chris-wilson.co.uk> 24796AuthorDate: Sun Apr 8 21:29:19 2007 +0100 24797Commit: Chris Wilson <chris@chris-wilson.co.uk> 24798CommitDate: Mon Apr 9 15:06:11 2007 +0100 24799 24800 cairo-polygon - trivial propagation of error status 24801 24802 _cairo_polygon_move_to() returns an error status so use it. 24803 24804 src/cairo-polygon.c | 8 +++----- 24805 1 file changed, 3 insertions(+), 5 deletions(-) 24806 24807commit 4b195779a465f69b035e9fd6695ef5c137a6b342 24808Author: Chris Wilson <chris@chris-wilson.co.uk> 24809AuthorDate: Sun Apr 8 21:28:25 2007 +0100 24810Commit: Chris Wilson <chris@chris-wilson.co.uk> 24811CommitDate: Mon Apr 9 15:05:58 2007 +0100 24812 24813 cairo-pen - trivial propagation of error status 24814 24815 Add a couple of missing checks for error statuses and correct the 24816 error path cleanup for _cairo_pen_stroke_spline(). 24817 24818 src/cairo-pen.c | 24 +++++++++++++++++------- 24819 1 file changed, 17 insertions(+), 7 deletions(-) 24820 24821commit 66d3e252025cf7f8a624fad83bffa1488a98910d 24822Author: Chris Wilson <chris@chris-wilson.co.uk> 24823AuthorDate: Sun Apr 8 21:26:33 2007 +0100 24824Commit: Chris Wilson <chris@chris-wilson.co.uk> 24825CommitDate: Mon Apr 9 15:05:45 2007 +0100 24826 24827 cairo-pdf-surface - propagate error status 24828 24829 Catch and propagate any error status. 24830 24831 src/cairo-pdf-surface.c | 25 +++++++++++++------------ 24832 1 file changed, 13 insertions(+), 12 deletions(-) 24833 24834commit b32a5b1dc6d66a4477fb8df1461821a27192600f 24835Author: Chris Wilson <chris@chris-wilson.co.uk> 24836AuthorDate: Sun Apr 8 21:25:46 2007 +0100 24837Commit: Chris Wilson <chris@chris-wilson.co.uk> 24838CommitDate: Mon Apr 9 15:05:35 2007 +0100 24839 24840 cairo-pattern - propagate status 24841 24842 Catch, cleanup and propagate after an error return. 24843 24844 src/cairo-pattern.c | 10 ++++++++-- 24845 1 file changed, 8 insertions(+), 2 deletions(-) 24846 24847commit fd49bbb4b21b73247b4d391c2cb1b028a596f6eb 24848Author: Chris Wilson <chris@chris-wilson.co.uk> 24849AuthorDate: Sun Apr 8 21:24:59 2007 +0100 24850Commit: Chris Wilson <chris@chris-wilson.co.uk> 24851CommitDate: Mon Apr 9 15:05:24 2007 +0100 24852 24853 cairo-path - check for failure during _cairo_path_fixed_interpret 24854 24855 Catch an error return from _cairo_path_fixed_interpret() and return 24856 it. Similary check for an error code in cairo_status() before returning 24857 success. 24858 24859 src/cairo-path.c | 55 ++++++++++++++++++++++++++++++++----------------------- 24860 1 file changed, 32 insertions(+), 23 deletions(-) 24861 24862commit 814830f63b72f69198e92564c53f2683e5bda269 24863Author: Chris Wilson <chris@chris-wilson.co.uk> 24864AuthorDate: Sun Apr 8 21:22:56 2007 +0100 24865Commit: Chris Wilson <chris@chris-wilson.co.uk> 24866CommitDate: Mon Apr 9 15:05:13 2007 +0100 24867 24868 cairo-path-fill - trivial missing unused result 24869 24870 Actually assign the result that is tested on the next line... 24871 24872 src/cairo-path-fill.c | 2 +- 24873 1 file changed, 1 insertion(+), 1 deletion(-) 24874 24875commit 7ab1f62c60141d5c0e989d55f4a49537a6b52c4d 24876Author: Chris Wilson <chris@chris-wilson.co.uk> 24877AuthorDate: Sun Apr 8 21:21:49 2007 +0100 24878Commit: Chris Wilson <chris@chris-wilson.co.uk> 24879CommitDate: Mon Apr 9 15:04:58 2007 +0100 24880 24881 cairo-paginated-surface - fix up the trivial unused result 24882 24883 Check for status returns and propagate, cleaning up as necessary. 24884 24885 src/cairo-paginated-surface.c | 22 ++++++++++++++++------ 24886 1 file changed, 16 insertions(+), 6 deletions(-) 24887 24888commit 78c0d62ba7c650a6dc8137e6d1375e21f9477c2b 24889Author: Chris Wilson <chris@chris-wilson.co.uk> 24890AuthorDate: Sun Apr 8 21:20:42 2007 +0100 24891Commit: Chris Wilson <chris@chris-wilson.co.uk> 24892CommitDate: Mon Apr 9 15:04:47 2007 +0100 24893 24894 cairo-meta-surface - propagate trivial status return 24895 24896 _cairo_path_fixed_init_copy() could fail so propagate it's status. 24897 24898 src/cairo-meta-surface.c | 4 +++- 24899 1 file changed, 3 insertions(+), 1 deletion(-) 24900 24901commit 75cc5e04d5b854a1eefe116c2be4a3c2bb21d6ac 24902Author: Chris Wilson <chris@chris-wilson.co.uk> 24903AuthorDate: Sun Apr 8 21:19:49 2007 +0100 24904Commit: Chris Wilson <chris@chris-wilson.co.uk> 24905CommitDate: Mon Apr 9 15:04:30 2007 +0100 24906 24907 cairo-image-surface - propagate error returns from pixman. 24908 24909 pixman does occasionally return an error - in such circumstances we 24910 should propagate it. 24911 24912 src/cairo-image-surface.c | 6 ++++-- 24913 1 file changed, 4 insertions(+), 2 deletions(-) 24914 24915commit dee9a53029bd3e42c60a855edfb54591bf1782b5 24916Author: Chris Wilson <chris@chris-wilson.co.uk> 24917AuthorDate: Sun Apr 8 21:18:30 2007 +0100 24918Commit: Chris Wilson <chris@chris-wilson.co.uk> 24919CommitDate: Mon Apr 9 15:04:17 2007 +0100 24920 24921 cairo-gstate - fix the trivial unchecked returns 24922 24923 Check for an error return and propagate. 24924 24925 src/cairo-gstate.c | 17 +++++++++++++---- 24926 1 file changed, 13 insertions(+), 4 deletions(-) 24927 24928commit de264af2c659b32c8bc71060da85037ac7e1d44f 24929Author: Chris Wilson <chris@chris-wilson.co.uk> 24930AuthorDate: Sun Apr 8 21:17:26 2007 +0100 24931Commit: Chris Wilson <chris@chris-wilson.co.uk> 24932CommitDate: Mon Apr 9 15:03:59 2007 +0100 24933 24934 cairo-ft-font - handle trivial failures 24935 24936 Catch the status return, cleanup and propagate the error. 24937 24938 src/cairo-ft-font.c | 82 +++++++++++++++++++++++++++++++++++------------------ 24939 1 file changed, 54 insertions(+), 28 deletions(-) 24940 24941commit 14c8dfb0b9bcc26a02057e5636d8bf35c3b4ef29 24942Author: Chris Wilson <chris@chris-wilson.co.uk> 24943AuthorDate: Mon Apr 9 15:03:34 2007 +0100 24944Commit: Chris Wilson <chris@chris-wilson.co.uk> 24945CommitDate: Mon Apr 9 15:03:34 2007 +0100 24946 24947 cairo-clip - handle trivial pixman failures 24948 24949 Detect the simple cases when pixman returns an error, ie an OOM 24950 condition, and propagate the error status. 24951 24952 src/cairo-clip.c | 18 ++++++++++++------ 24953 1 file changed, 12 insertions(+), 6 deletions(-) 24954 24955commit 274c20c27a094c05afa62579cacb5749013abd60 24956Author: Chris Wilson <chris@chris-wilson.co.uk> 24957AuthorDate: Sun Apr 8 21:14:09 2007 +0100 24958Commit: Chris Wilson <chris@chris-wilson.co.uk> 24959CommitDate: Mon Apr 9 15:02:17 2007 +0100 24960 24961 cairo-boilerplate - handle failure to set user data 24962 24963 After failing to set the user data on a surface, clean up and return NULL. 24964 24965 boilerplate/cairo-boilerplate.c | 10 +++++++++- 24966 1 file changed, 9 insertions(+), 1 deletion(-) 24967 24968commit 46eab95698e101e41407778eda22089b508a8984 24969Author: Chris Wilson <chris@chris-wilson.co.uk> 24970AuthorDate: Sun Apr 8 20:50:08 2007 +0100 24971Commit: Chris Wilson <chris@chris-wilson.co.uk> 24972CommitDate: Mon Apr 9 15:01:58 2007 +0100 24973 24974 Add attribute(warn_unused_result) 24975 24976 This adds a compiler check that the function result is used by the caller 24977 and enables it by default for all cairo_private functions and for public 24978 API that returns a cairo_status_t. 24979 24980 It has been discussed that to extend the warnings to all functions, a 24981 new function type could been introduced to cover static functions: 24982 cairo_static. This has not been done at the present time in order to 24983 minimise the churn and focus on the more common errors. 24984 24985 In order to reduce the warning spew generated by gcc for invalid use of 24986 this attribute, -Wno-attributes is added to CFLAGS. This has the 24987 unfortunate side-effect of masking future warnings for all attributes - 24988 be warned! 24989 24990 configure.in | 13 ++++++++++++- 24991 pixman/configure.in | 3 ++- 24992 pixman/src/pixman.h | 2 +- 24993 src/cairo.h | 40 ++++++++++++++++++++-------------------- 24994 src/cairoint.h | 8 +++++--- 24995 src/check-headers.sh | 2 +- 24996 6 files changed, 41 insertions(+), 27 deletions(-) 24997 24998commit 9da86e4a386505288c3a933f30583abf7706c950 24999Author: Behdad Esfahbod <behdad@behdad.org> 25000AuthorDate: Sun Apr 8 22:56:30 2007 -0400 25001Commit: Behdad Esfahbod <behdad@behdad.org> 25002CommitDate: Sun Apr 8 22:56:30 2007 -0400 25003 25004 Add references to the skiplist paper 25005 25006 BIBLIOGRAPHY | 8 ++++++++ 25007 src/cairo-skiplist-private.h | 6 ++++++ 25008 2 files changed, 14 insertions(+) 25009 25010commit ad0e13805c036941a03e49215b1bb525b4666033 25011Author: Behdad Esfahbod <behdad@behdad.org> 25012AuthorDate: Sun Apr 8 22:50:51 2007 -0400 25013Commit: Behdad Esfahbod <behdad@behdad.org> 25014CommitDate: Sun Apr 8 22:51:10 2007 -0400 25015 25016 [cairo-skiplist] Clarify MAX_LEVEL in comment, and adjust accordingly 25017 25018 Reading the code, MAX_LEVEL is in fact what could have been named 25019 MAX_NUM_LEVELS. That is, it is maximum possible level plus one. 25020 All code is correct: it uses MAX_LEVEL as array size and never produces 25021 a level of MAX_LEVEL. The comment is fixed. 25022 25023 src/cairo-skiplist.c | 2 +- 25024 1 file changed, 1 insertion(+), 1 deletion(-) 25025 25026commit e8072e6e0ac86b2b0baefb54dcc551ee548164af 25027Author: Behdad Esfahbod <behdad@behdad.org> 25028AuthorDate: Sun Apr 8 22:03:46 2007 -0400 25029Commit: Behdad Esfahbod <behdad@behdad.org> 25030CommitDate: Sun Apr 8 22:03:46 2007 -0400 25031 25032 [test,perf] Make them rebuild boilerplate when src is changed 25033 25034 perf/Makefile.am | 2 +- 25035 test/Makefile.am | 2 +- 25036 2 files changed, 2 insertions(+), 2 deletions(-) 25037 25038commit 6f9309221704a799ca36917c65abfc0941119b13 25039Author: Behdad Esfahbod <behdad@behdad.org> 25040AuthorDate: Sun Apr 8 21:58:54 2007 -0400 25041Commit: Behdad Esfahbod <behdad@behdad.org> 25042CommitDate: Sun Apr 8 22:03:38 2007 -0400 25043 25044 Rename pixman_region_uninit to pixman_region_fini 25045 25046 pixman/src/fbcompose.c | 2 +- 25047 pixman/src/fbpict.c | 2 +- 25048 pixman/src/icimage.c | 8 ++++---- 25049 pixman/src/icrect.c | 4 ++-- 25050 pixman/src/ictrap.c | 4 ++-- 25051 pixman/src/pixman-remap.h | 2 +- 25052 pixman/src/pixman.h | 2 +- 25053 pixman/src/pixregion.c | 2 +- 25054 src/cairo-clip.c | 12 ++++++------ 25055 src/cairo-glitz-surface.c | 4 ++-- 25056 src/cairo-surface-fallback.c | 6 +++--- 25057 src/cairo-surface.c | 4 ++-- 25058 src/cairo-traps.c | 2 +- 25059 13 files changed, 27 insertions(+), 27 deletions(-) 25060 25061commit 4f8a04b1c93630c2556db5e3a0657076167e1ea3 25062Author: Behdad Esfahbod <behdad@behdad.org> 25063AuthorDate: Sun Apr 8 21:55:45 2007 -0400 25064Commit: Behdad Esfahbod <behdad@behdad.org> 25065CommitDate: Sun Apr 8 21:55:45 2007 -0400 25066 25067 [pixman-image] Simply initialization given that there is no clip 25068 25069 pixman/src/icimage.c | 32 +++++++++----------------------- 25070 1 file changed, 9 insertions(+), 23 deletions(-) 25071 25072commit df9ea31df5857ee7aacd6ba002881233e9c4a9b4 25073Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 25074AuthorDate: Thu Mar 15 14:42:13 2007 +0100 25075Commit: Behdad Esfahbod <behdad@behdad.org> 25076CommitDate: Sun Apr 8 21:49:46 2007 -0400 25077 25078 [pixman-region] Separate pixman_region_init 25079 25080 Most of the time pixman_region_init is called without any extents, and 25081 followed by a pixman_region_union_rect, used to used to initialize 25082 rectangular regions. pixman_region_union_rect is not that cheap, but 25083 the sequence is called quite often. So it should be worth introducing 25084 a specialized and fast function for this sequence. 25085 25086 This introduces pixman_region_init_rect. This new function makes 25087 _cairo_region_init_from_rectangle obsolete. 25088 25089 Also removes the extent argument from pixman_region_init as it was 25090 called with NULL most of the time. A pixman_region_init_with_extents 25091 is added for the general case. 25092 25093 pixman/src/fbcompose.c | 3 +-- 25094 pixman/src/fbpict.c | 3 +-- 25095 pixman/src/icimage.c | 25 +++++++++++-------------- 25096 pixman/src/icrect.c | 10 +++++----- 25097 pixman/src/ictrap.c | 6 ++---- 25098 pixman/src/pixman-remap.h | 2 ++ 25099 pixman/src/pixman.h | 7 ++++++- 25100 pixman/src/pixregion.c | 37 +++++++++++++++++++++---------------- 25101 src/cairo-clip.c | 18 ++++++++++-------- 25102 src/cairo-glitz-surface.c | 2 +- 25103 src/cairo-region.c | 25 ------------------------- 25104 src/cairo-surface-fallback.c | 7 +++---- 25105 src/cairo-surface.c | 16 ++++++---------- 25106 src/cairo-traps.c | 2 +- 25107 src/cairoint.h | 4 ---- 25108 15 files changed, 70 insertions(+), 97 deletions(-) 25109 25110commit 9436959a838412b5336279c7d5c35bf4e586f984 25111Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 25112AuthorDate: Wed Mar 14 01:37:28 2007 +0100 25113Commit: Behdad Esfahbod <behdad@behdad.org> 25114CommitDate: Sun Apr 8 21:36:34 2007 -0400 25115 25116 Update function map 25117 25118 pixman/src/pixman-remap.h | 5 ++--- 25119 1 file changed, 2 insertions(+), 3 deletions(-) 25120 25121commit 99f4bfada807aa7062051bb81fd29d4d3a87fbd1 25122Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 25123AuthorDate: Wed Mar 14 01:35:40 2007 +0100 25124Commit: Behdad Esfahbod <behdad@behdad.org> 25125CommitDate: Sun Apr 8 21:36:06 2007 -0400 25126 25127 Remove abdoned pixman_region_{create,destroy} 25128 25129 pixman/src/pixman.h | 6 ------ 25130 pixman/src/pixregion.c | 25 ------------------------- 25131 2 files changed, 31 deletions(-) 25132 25133commit 4532c023e0810c2e8d0d5928074bcae8865c5e14 25134Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 25135AuthorDate: Wed Mar 14 01:31:53 2007 +0100 25136Commit: Behdad Esfahbod <behdad@behdad.org> 25137CommitDate: Sun Apr 8 21:35:58 2007 -0400 25138 25139 Make clientClip region static, remove abdoned CT_PIXMAP code paths 25140 25141 pixman/src/icimage.c | 208 ++------------------------------------------------- 25142 pixman/src/icimage.h | 2 +- 25143 pixman/src/icint.h | 2 +- 25144 3 files changed, 9 insertions(+), 203 deletions(-) 25145 25146commit 65f269f3a4148a6cf3b2158ea893bb8452c3ad5e 25147Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 25148AuthorDate: Wed Mar 14 01:24:11 2007 +0100 25149Commit: Behdad Esfahbod <behdad@behdad.org> 25150CommitDate: Sun Apr 8 21:34:10 2007 -0400 25151 25152 Avoid pixman_region_create in pixman_composite{,General} 25153 25154 pixman/src/fbcompose.c | 32 +++++++++--------------- 25155 pixman/src/fbpict.c | 32 +++++++++--------------- 25156 pixman/src/icimage.c | 68 ++++++++++++++++++-------------------------------- 25157 3 files changed, 48 insertions(+), 84 deletions(-) 25158 25159commit 82cc451148eec1703d001f2b814d5b3712d31727 25160Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 25161AuthorDate: Wed Mar 14 01:21:18 2007 +0100 25162Commit: Behdad Esfahbod <behdad@behdad.org> 25163CommitDate: Sun Apr 8 21:32:52 2007 -0400 25164 25165 Make clip regions of pixman_image_t static 25166 25167 pixman/src/fbcompose.c | 38 ++++++++-------- 25168 pixman/src/icimage.c | 121 +++++++++++++++++++++++++++---------------------- 25169 pixman/src/icimage.h | 8 ++-- 25170 pixman/src/icrect.c | 7 ++- 25171 4 files changed, 96 insertions(+), 78 deletions(-) 25172 25173commit 041371533746d4aae3245a74459c0b0d1a4628fb 25174Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 25175AuthorDate: Wed Mar 14 00:59:36 2007 +0100 25176Commit: Behdad Esfahbod <behdad@behdad.org> 25177CommitDate: Sun Apr 8 21:27:34 2007 -0400 25178 25179 Avoid pixman_region_create in pixman_color_rects 25180 25181 pixman/src/icrect.c | 32 ++++++++++++++++---------------- 25182 1 file changed, 16 insertions(+), 16 deletions(-) 25183 25184commit 5a6ca4794bfd96026937cd8736a8bcb723b2b2ff 25185Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 25186AuthorDate: Wed Mar 14 00:55:46 2007 +0100 25187Commit: Behdad Esfahbod <behdad@behdad.org> 25188CommitDate: Sun Apr 8 21:25:25 2007 -0400 25189 25190 Replace pixman_region_create_simple by pixman_region_init 25191 25192 pixman/src/ictrap.c | 14 +++++++------- 25193 pixman/src/pixman.h | 3 --- 25194 pixman/src/pixregion.c | 13 +------------ 25195 3 files changed, 8 insertions(+), 22 deletions(-) 25196 25197commit f9057f27520842159f73dbfd6de49cb8feee1c39 25198Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 25199AuthorDate: Wed Mar 14 00:48:43 2007 +0100 25200Commit: Behdad Esfahbod <behdad@behdad.org> 25201CommitDate: Sun Apr 8 21:24:35 2007 -0400 25202 25203 Avoid pixman_create_region in glitz-surface 25204 25205 src/cairo-glitz-surface.c | 49 +++++++++++++++++++++++------------------------ 25206 1 file changed, 24 insertions(+), 25 deletions(-) 25207 25208commit 82cbb6886cf621fd6b10be5e04ce11ff05127fc6 25209Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 25210AuthorDate: Wed Mar 14 00:46:34 2007 +0100 25211Commit: Behdad Esfahbod <behdad@behdad.org> 25212CommitDate: Sun Apr 8 21:23:47 2007 -0400 25213 25214 Remove redundant _cairo_clip_fini function 25215 25216 src/cairo-clip-private.h | 3 --- 25217 src/cairo-clip.c | 17 ----------------- 25218 src/cairo-gstate.c | 4 ++-- 25219 src/cairo-meta-surface.c | 2 +- 25220 4 files changed, 3 insertions(+), 23 deletions(-) 25221 25222commit 5ae309c4561418fb057a8049f047ffcb03f3b698 25223Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 25224AuthorDate: Wed Mar 14 00:40:44 2007 +0100 25225Commit: Behdad Esfahbod <behdad@behdad.org> 25226CommitDate: Sun Apr 8 21:23:13 2007 -0400 25227 25228 Avoid pixman_region_create in _cairo_traps_extract_region 25229 25230 src/cairo-traps.c | 18 +++++++++--------- 25231 src/cairoint.h | 6 +++--- 25232 2 files changed, 12 insertions(+), 12 deletions(-) 25233 25234commit 241482b5505427d221f4aaa970e7500a78fb2da1 25235Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 25236AuthorDate: Wed Mar 14 00:28:49 2007 +0100 25237Commit: Behdad Esfahbod <behdad@behdad.org> 25238CommitDate: Sun Apr 8 21:12:02 2007 -0400 25239 25240 Avoid malloc in _cairo_region_create_from_rectangle 25241 25242 src/cairo-clip.c | 42 ++++---- 25243 src/cairo-region.c | 34 +++--- 25244 src/cairo-surface-fallback.c | 250 +++++++++++++++++++++++-------------------- 25245 src/cairo-surface.c | 52 +++++---- 25246 src/cairoint.h | 5 +- 25247 5 files changed, 199 insertions(+), 184 deletions(-) 25248 25249commit efc9775149c4c87645c58235c7626cc4f72e69c3 25250Author: Mathias Hasselmann <mathias@pergamaunz.(none)> 25251AuthorDate: Tue Mar 13 23:58:14 2007 +0100 25252Commit: Behdad Esfahbod <behdad@behdad.org> 25253CommitDate: Sun Apr 8 21:10:58 2007 -0400 25254 25255 Make sure clip->region is always initialized 25256 25257 src/cairo-clip.c | 8 ++++++++ 25258 1 file changed, 8 insertions(+) 25259 25260commit 0e7df34e07d7816b29c1ac1f67608b87c5e0efc2 25261Author: Mathias Hasselmann <mathias@pergamaunz.(none)> 25262AuthorDate: Tue Mar 13 23:38:20 2007 +0100 25263Commit: Behdad Esfahbod <behdad@behdad.org> 25264CommitDate: Sun Apr 8 21:10:12 2007 -0400 25265 25266 Make region of cairo_clip_t static 25267 25268 src/cairo-clip-private.h | 3 +- 25269 src/cairo-clip.c | 87 +++++++++++++++++++++++++----------------------- 25270 src/cairo-surface.c | 4 +-- 25271 3 files changed, 49 insertions(+), 45 deletions(-) 25272 25273commit ced7b4a4ab4b5a8d639bfca0dd5db38f1ae4825d 25274Author: Mathias Hasselmann <mathias@pergamaunz.(none)> 25275AuthorDate: Tue Mar 13 22:34:23 2007 +0100 25276Commit: Behdad Esfahbod <behdad@behdad.org> 25277CommitDate: Sun Apr 8 20:38:32 2007 -0400 25278 25279 Make pixman_region_{init,uninit} public 25280 25281 pixman/src/pixman.h | 5 +++++ 25282 pixman/src/pixregion.c | 18 ++++++------------ 25283 2 files changed, 11 insertions(+), 12 deletions(-) 25284 25285commit 4d9065fcebbaf857d8d5fe49bcbb33f270c0bf26 25286Author: Mathias Hasselmann <mathias@pergamaunz.(none)> 25287AuthorDate: Tue Mar 13 21:51:46 2007 +0100 25288Commit: Behdad Esfahbod <behdad@behdad.org> 25289CommitDate: Sun Apr 8 20:38:17 2007 -0400 25290 25291 Move struct pixman_region16 to pixman.h 25292 25293 pixman/src/pixman.h | 7 ++++++- 25294 pixman/src/pixregionint.h | 7 +------ 25295 2 files changed, 7 insertions(+), 7 deletions(-) 25296 25297commit dce3e5e6b556b817bf95182122adbf6f816b71e9 25298Author: Behdad Esfahbod <behdad@behdad.org> 25299AuthorDate: Fri Apr 6 17:20:49 2007 -0400 25300Commit: Behdad Esfahbod <behdad@behdad.org> 25301CommitDate: Fri Apr 6 17:20:49 2007 -0400 25302 25303 [TODO] Add 4945 Cairo doesn't support 8-bit pseudocolor visuals 25304 25305 ROADMAP | 1 + 25306 1 file changed, 1 insertion(+) 25307 25308commit 8bb0e5939c0694e88ea9ede4137d7306a067bd17 25309Author: Chris Wilson <chris@chris-wilson.co.uk> 25310AuthorDate: Wed Mar 28 20:27:29 2007 +0100 25311Commit: Carl Worth <cworth@cworth.org> 25312CommitDate: Fri Apr 6 12:34:17 2007 -0700 25313 25314 _get_bitmap_surface - check for calloc failure 25315 25316 src/cairo-ft-font.c | 2 ++ 25317 1 file changed, 2 insertions(+) 25318 25319commit b95577a931645b3013d5acaa5b1bd2d892c3932f 25320Author: Chris Wilson <chris@chris-wilson.co.uk> 25321AuthorDate: Wed Mar 28 17:58:31 2007 +0100 25322Commit: Carl Worth <cworth@cworth.org> 25323CommitDate: Fri Apr 6 12:18:49 2007 -0700 25324 25325 Protect boilerplate_xlib_synchronize from alloc failure. 25326 25327 Don't call XDestroyImage on a NULL image. 25328 25329 boilerplate/cairo-boilerplate.c | 3 ++- 25330 1 file changed, 2 insertions(+), 1 deletion(-) 25331 25332commit 2a74fd5c7ff21f27013f709dc626be8087cb6a10 25333Author: Chris Wilson <chris@chris-wilson.co.uk> 25334AuthorDate: Wed Mar 28 15:50:12 2007 +0100 25335Commit: Carl Worth <cworth@cworth.org> 25336CommitDate: Fri Apr 6 11:50:00 2007 -0700 25337 25338 Propagate one error return through pdf. 25339 25340 src/cairo-pdf-surface.c | 5 ++++- 25341 1 file changed, 4 insertions(+), 1 deletion(-) 25342 25343commit a2a8f2ce7a0a9bcef7a4a29624725a77c2abe95a 25344Author: Behdad Esfahbod <behdad@behdad.org> 25345AuthorDate: Thu Apr 5 20:03:51 2007 -0400 25346Commit: Behdad Esfahbod <behdad@behdad.org> 25347CommitDate: Thu Apr 5 20:03:51 2007 -0400 25348 25349 [ROADMAP] Move David Turner's cairo-ft rewrite to 1.6. 25350 25351 ROADMAP | 4 ++-- 25352 1 file changed, 2 insertions(+), 2 deletions(-) 25353 25354commit 94460a9790ece7a436d6681ab41d7b2365f0775f 25355Author: Carl Worth <cworth@cworth.org> 25356AuthorDate: Thu Apr 5 16:35:03 2007 -0700 25357Commit: Carl Worth <cworth@cworth.org> 25358CommitDate: Thu Apr 5 16:35:17 2007 -0700 25359 25360 ROADMAP/TODO: Update with 1.4.4 and 1.6 items from recent meeting 25361 25362 ROADMAP | 164 ++++++++++++++++++++++++++------------------ 25363 TODO | 236 +++++++++++++++++++++++----------------------------------------- 25364 2 files changed, 183 insertions(+), 217 deletions(-) 25365 25366commit d801aa59f84d95568e36d02a0ecf3544b9914187 25367Author: Robert O'Callahan <roc@ocallahan.org> 25368AuthorDate: Fri Apr 6 00:00:33 2007 +0100 25369Commit: Brian Ewins <Brian.Ewins@gmail.com> 25370CommitDate: Fri Apr 6 00:00:33 2007 +0100 25371 25372 [quartz] fix floating point precision issue (#10531) 25373 25374 This ensures that error due to double-to-float conversion 25375 does not accumulate; the position of any glyph will be off by 25376 at most one double-to-float conversion error. 25377 25378 src/cairo-quartz-surface.c | 14 ++++++++------ 25379 1 file changed, 8 insertions(+), 6 deletions(-) 25380 25381commit 106f8590457a7ebb5335d67f16277e8d5a6b04a8 25382Author: Carl Worth <cworth@cworth.org> 25383AuthorDate: Wed Apr 4 15:59:50 2007 -0700 25384Commit: Carl Worth <cworth@cworth.org> 25385CommitDate: Thu Apr 5 14:44:15 2007 -0700 25386 25387 Move misplaced CLEANUP_FONT label to avoid crash. 25388 25389 Previously, a failure in _cairo_win32_scaled_font_init_glyph_path leading 25390 to the CLEANUP_FONT label would set the path into the glyph, then destroy 25391 the path, and return an error status, (which in turn would cause a double 25392 free when the glyph was destroyed). 25393 25394 The double-free apparently leads to a crash in some cases, as described 25395 here: 25396 25397 SVG/Cairo related crash when opening specific webpage 25398 https://bugzilla.mozilla.org/show_bug.cgi?id=376498 25399 25400 This should eliminate the double-free, but does not address the original 25401 error case, (attempting to get a path from a bitmap font?). 25402 25403 src/cairo-win32-font.c | 4 +--- 25404 1 file changed, 1 insertion(+), 3 deletions(-) 25405 25406commit 5c24711ee65cdb8ac0fdb7419e6466e2b7cb7d9e 25407Author: Chris Wilson <chris@chris-wilson.co.uk> 25408AuthorDate: Wed Apr 4 10:13:13 2007 +0100 25409Commit: Chris Wilson <chris@chris-wilson.co.uk> 25410CommitDate: Wed Apr 4 10:13:13 2007 +0100 25411 25412 Restore gcov functionality 25413 25414 Add -lgcov to the shared library else the test programs fail to link. 25415 Add a couple of lcov convenience targets to generate the coverage reports. 25416 25417 Makefile.am | 13 ++++++++++++- 25418 boilerplate/Makefile.am | 2 +- 25419 configure.in | 14 ++++++++++++-- 25420 pixman/src/Makefile.am | 5 ++++- 25421 src/Makefile.am | 2 +- 25422 test/Makefile.am | 5 +++-- 25423 6 files changed, 33 insertions(+), 8 deletions(-) 25424 25425commit 59e5189818321c8a62ad107548facbcfce9e517a 25426Author: Behdad Esfahbod <behdad@behdad.org> 25427AuthorDate: Tue Apr 3 20:46:14 2007 -0400 25428Commit: Behdad Esfahbod <behdad@behdad.org> 25429CommitDate: Tue Apr 3 20:46:14 2007 -0400 25430 25431 [Makefile.am] Distribute BIBLIOGRAPHY 25432 Also include all automatically distributed CAPITAL files in there, 25433 to remove any doubts. 25434 25435 Makefile.am | 5 +++++ 25436 1 file changed, 5 insertions(+) 25437 25438commit a1287e483ce8efcf3f1eca97bdaaccac2393a1bf 25439Author: Behdad Esfahbod <behdad@behdad.org> 25440AuthorDate: Tue Apr 3 20:30:30 2007 -0400 25441Commit: Behdad Esfahbod <behdad@behdad.org> 25442CommitDate: Tue Apr 3 20:30:30 2007 -0400 25443 25444 [pixman/src/check-config.sh] Test that all source files #include <config.h> 25445 as their first include. 25446 25447 pixman/src/Makefile.am | 3 +++ 25448 pixman/src/check-config.sh | 17 +++++++++++++++++ 25449 src/check-cairoint.sh | 2 +- 25450 3 files changed, 21 insertions(+), 1 deletion(-) 25451 25452commit 8fbf50d31da9e13f1e55c7ee19586b7c394684ba 25453Author: Behdad Esfahbod <behdad@behdad.org> 25454AuthorDate: Tue Apr 3 20:25:30 2007 -0400 25455Commit: Behdad Esfahbod <behdad@behdad.org> 25456CommitDate: Tue Apr 3 20:28:11 2007 -0400 25457 25458 [src] Make sure all source files #include "cairoint.h" as their first include 25459 25460 This is necessary to avoid many portability problems as cairoint.h includes 25461 config.h. Without a test, we will regress again, hence add it. 25462 25463 The inclusion idiom for cairo now is: 25464 25465 #include "cairoint.h" 25466 25467 #include "cairo-something.h" 25468 #include "cairo-anotherthing-private.h" 25469 25470 #include <some-library.h> 25471 #include <other-library/other-file.h> 25472 25473 Moreover, some standard headers files are included from cairoint.h and need 25474 not be included again. 25475 25476 src/cairo-arc.c | 2 ++ 25477 src/cairo-atsui-font.c | 5 ++--- 25478 src/cairo-beos-surface.cpp | 7 ++++--- 25479 src/cairo-directfb-surface.c | 10 +++------- 25480 src/cairo-freelist.c | 5 +++-- 25481 src/cairo-ft-font.c | 4 +++- 25482 src/cairo-gstate.c | 2 -- 25483 src/cairo-matrix.c | 1 - 25484 src/cairo-os2-surface.c | 11 ++++++----- 25485 src/cairo-output-stream.c | 7 ++++--- 25486 src/cairo-path-fixed.c | 1 - 25487 src/cairo-path.c | 2 ++ 25488 src/cairo-png.c | 3 ++- 25489 src/cairo-polygon.c | 1 - 25490 src/cairo-quartz-surface.c | 4 ++-- 25491 src/cairo-region.c | 2 +- 25492 src/cairo-skiplist.c | 6 +----- 25493 src/cairo-surface-fallback.c | 2 ++ 25494 src/cairo-surface.c | 3 +-- 25495 src/cairo-truetype-subset.c | 2 +- 25496 src/cairo-unicode.c | 4 +--- 25497 src/cairo-win32-font.c | 3 +-- 25498 src/cairo-win32-surface.c | 10 +++++----- 25499 src/cairo-xlib-screen.c | 4 ++-- 25500 src/cairoint.h | 1 + 25501 src/check-cairoint.sh | 2 +- 25502 src/test-fallback-surface.c | 4 ++-- 25503 src/test-meta-surface.c | 4 ++-- 25504 src/test-paginated-surface.c | 4 ++-- 25505 29 files changed, 56 insertions(+), 60 deletions(-) 25506 25507commit ffc7d06da0f97390025a510b9532e4a64e9230f4 25508Author: Behdad Esfahbod <behdad@behdad.org> 25509AuthorDate: Tue Apr 3 20:22:44 2007 -0400 25510Commit: Behdad Esfahbod <behdad@behdad.org> 25511CommitDate: Tue Apr 3 20:27:24 2007 -0400 25512 25513 [src/check-cairoint.h] Test to check that all source files #include "cairoint.h" 25514 25515 as their first include. 25516 25517 src/Makefile.am | 2 +- 25518 src/check-cairoint.sh | 17 +++++++++++++++++ 25519 2 files changed, 18 insertions(+), 1 deletion(-) 25520 25521commit 3646839060de7ab51c805bf5614fc3d1ea8b7fc3 25522Author: Brian Ewins <Brian.Ewins@gmail.com> 25523AuthorDate: Wed Apr 4 01:16:30 2007 +0100 25524Commit: Brian Ewins <Brian.Ewins@gmail.com> 25525CommitDate: Wed Apr 4 01:16:30 2007 +0100 25526 25527 [boilerplate] split quartz out to avoid symbol clash. 25528 25529 Quartz and Xlib both define Picture and Cursor, and clashed in 25530 cairo-boilerplate.c. Splitting quartz out allows a single mac 25531 build with --enable-quartz --enable-atsui. 25532 25533 boilerplate/Makefile.am | 1 + 25534 boilerplate/cairo-boilerplate-private.h | 45 +++++++++++++++++++++++ 25535 boilerplate/cairo-boilerplate.c | 44 +++-------------------- 25536 boilerplate/cairo-quartz-boilerplate.c | 64 +++++++++++++++++++++++++++++++++ 25537 4 files changed, 115 insertions(+), 39 deletions(-) 25538 25539commit 174ebc43fe84854876d642e67fc3a442d280b59e 25540Author: Behdad Esfahbod <behdad@behdad.org> 25541AuthorDate: Tue Apr 3 20:01:32 2007 -0400 25542Commit: Behdad Esfahbod <behdad@behdad.org> 25543CommitDate: Tue Apr 3 20:02:48 2007 -0400 25544 25545 [pixman] Make sure all source files include config.h 25546 as their first include. 25547 25548 pixman/src/fbcompose.c | 2 ++ 25549 pixman/src/fbpict.c | 1 + 25550 pixman/src/fbtrap.c | 4 ++++ 25551 pixman/src/icblt.c | 4 ++++ 25552 pixman/src/icbltone.c | 4 ++++ 25553 pixman/src/iccolor.c | 4 ++++ 25554 pixman/src/icformat.c | 4 ++++ 25555 pixman/src/icpixels.c | 4 ++++ 25556 pixman/src/icrect.c | 4 ++++ 25557 pixman/src/icstipple.c | 4 ++++ 25558 pixman/src/ictransform.c | 4 ++++ 25559 pixman/src/ictrap.c | 4 ++++ 25560 pixman/src/ictri.c | 4 ++++ 25561 pixman/src/icutil.c | 4 ++++ 25562 pixman/src/renderedge.c | 4 ++++ 25563 15 files changed, 55 insertions(+) 25564 25565commit 208c32b245d7f50e1e9d71695269128b28a675fc 25566Author: Behdad Esfahbod <behdad@behdad.org> 25567AuthorDate: Tue Apr 3 19:56:29 2007 -0400 25568Commit: Behdad Esfahbod <behdad@behdad.org> 25569CommitDate: Tue Apr 3 20:02:40 2007 -0400 25570 25571 [cairoint.h] Remove inline definition for MS compilers 25572 25573 Such things should go to config.h. For one thing, cairoint.h is not 25574 included in pixman. 25575 25576 src/cairoint.h | 2 -- 25577 1 file changed, 2 deletions(-) 25578 25579commit 313a6f732112ca88fa4d590a604ce8219065655c 25580Author: Behdad Esfahbod <behdad@behdad.org> 25581AuthorDate: Tue Apr 3 19:53:28 2007 -0400 25582Commit: Behdad Esfahbod <behdad@behdad.org> 25583CommitDate: Tue Apr 3 20:02:10 2007 -0400 25584 25585 [pixman] Cleanup inline mess (#10150) 25586 25587 Simply use "inline" instead of "INLINE" or "__inline__" and let 25588 configure figure out what to use. 25589 25590 pixman/src/fbcompose.c | 8 ++++---- 25591 pixman/src/fbedge.c | 8 ++++++-- 25592 pixman/src/fbmmx.c | 45 +++++++++++++++++++++++---------------------- 25593 pixman/src/fbpict.h | 6 ------ 25594 pixman/src/icimage.c | 8 ++++++-- 25595 pixman/src/icint.h | 12 +----------- 25596 pixman/src/pixregion.c | 14 ++++++-------- 25597 7 files changed, 46 insertions(+), 55 deletions(-) 25598 25599commit 88dc0c5f19475888c19db437661b290f3a8902f8 25600Author: Behdad Esfahbod <behdad@behdad.org> 25601AuthorDate: Tue Apr 3 19:26:18 2007 -0400 25602Commit: Behdad Esfahbod <behdad@behdad.org> 25603CommitDate: Tue Apr 3 19:26:18 2007 -0400 25604 25605 Make sure all nil objects start with _cairo_ 25606 25607 Previously, the convention was that static ones started with cairo_, but 25608 renamed to start with _cairo_ when they were needed from other files and 25609 became cairo_private instead of static... 25610 25611 This is error prune indeed, and two symbols were already violating. Now 25612 all nil objects start with _cairo_. 25613 25614 src/cairo-base85-stream.c | 2 +- 25615 src/cairo-clip-private.h | 2 +- 25616 src/cairo-deflate-stream.c | 4 ++-- 25617 src/cairo-font-options.c | 22 +++++++++++----------- 25618 src/cairo-output-stream-private.h | 2 +- 25619 src/cairo-output-stream.c | 20 ++++++++++---------- 25620 src/cairo-pattern.c | 14 +++++++------- 25621 src/cairo-ps-surface.c | 4 ++-- 25622 src/cairo.c | 8 ++++---- 25623 src/cairoint.h | 2 +- 25624 10 files changed, 40 insertions(+), 40 deletions(-) 25625 25626commit 114be945db6c02aeb60cf1123b43680bd12cccdb 25627Author: Behdad Esfahbod <behdad@behdad.org> 25628AuthorDate: Tue Apr 3 16:47:39 2007 -0400 25629Commit: Behdad Esfahbod <behdad@behdad.org> 25630CommitDate: Tue Apr 3 16:47:39 2007 -0400 25631 25632 [test] Add svg2pdf 25633 25634 test/Makefile.am | 6 ++++ 25635 test/svg2pdf.c | 85 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 25636 2 files changed, 91 insertions(+) 25637 25638commit b121468f14a6a05a823e06cf7c51caaa1e342556 25639Author: Behdad Esfahbod <behdad@behdad.org> 25640AuthorDate: Tue Apr 3 16:27:50 2007 -0400 25641Commit: Behdad Esfahbod <behdad@behdad.org> 25642CommitDate: Tue Apr 3 16:27:50 2007 -0400 25643 25644 [configure.in] Bump version up to 1.4.3, oops! 25645 Supposed to be done after 1.4.2 was out, but apparently didn't happen. 25646 25647 configure.in | 2 +- 25648 1 file changed, 1 insertion(+), 1 deletion(-) 25649 25650commit 9710c48df31c66d8931a75b6578c7c861d497baa 25651Author: Behdad Esfahbod <behdad@behdad.org> 25652AuthorDate: Tue Apr 3 16:26:48 2007 -0400 25653Commit: Behdad Esfahbod <behdad@behdad.org> 25654CommitDate: Tue Apr 3 16:26:48 2007 -0400 25655 25656 [doc] Update Headers.mk 25657 25658 doc/public/Headers.mk | 1 + 25659 1 file changed, 1 insertion(+) 25660 25661commit 040c68cb2ca6c893d9ba11291c21b1cf84fec980 25662Author: Behdad Esfahbod <behdad@behdad.org> 25663AuthorDate: Tue Apr 3 16:23:35 2007 -0400 25664Commit: Behdad Esfahbod <behdad@behdad.org> 25665CommitDate: Tue Apr 3 16:23:35 2007 -0400 25666 25667 [test] Make pdf2svg build (and distributed) 25668 25669 test/Makefile.am | 9 ++++++++- 25670 1 file changed, 8 insertions(+), 1 deletion(-) 25671 25672commit 17f5706d1730662bce0cd49f60cb150773fac051 25673Author: Behdad Esfahbod <behdad@behdad.org> 25674AuthorDate: Tue Apr 3 16:04:04 2007 -0400 25675Commit: Behdad Esfahbod <behdad@behdad.org> 25676CommitDate: Tue Apr 3 16:04:04 2007 -0400 25677 25678 [pdiff] Make stdint.h inclusion portable (#10441) 25679 by copying magic bits from cairo-wideint-private.h. 25680 25681 test/pdiff/pdiff.c | 37 ++++++++++++++++++++++++++++++++++++- 25682 1 file changed, 36 insertions(+), 1 deletion(-) 25683 25684commit c2b1908f9b0d8c59abf79c3462471d1c3960b153 25685Author: Benjamin Berg <benjamin@sipsolutions.net> 25686AuthorDate: Tue Apr 3 15:46:51 2007 -0400 25687Commit: Behdad Esfahbod <behdad@behdad.org> 25688CommitDate: Tue Apr 3 15:46:51 2007 -0400 25689 25690 Fix typo in cairo_arc_negative() docs (#10497) 25691 25692 src/cairo.c | 2 +- 25693 1 file changed, 1 insertion(+), 1 deletion(-) 25694 25695commit 814295f5fad43ec1d8b18fac045e3c0d27ec7c29 25696Author: Behdad Esfahbod <behdad@behdad.org> 25697AuthorDate: Tue Apr 3 15:37:40 2007 -0400 25698Commit: Behdad Esfahbod <behdad@behdad.org> 25699CommitDate: Tue Apr 3 15:37:40 2007 -0400 25700 25701 [autogen.sh] Add --enable-test-surfaces to configure flags 25702 25703 Also remove --enable-maintainer-mode since we removed AM_MAINTAINER_MODE 25704 from configure.in in b0d05f7421c457120b9d86a83c4935c67b217fab. 25705 25706 autogen.sh | 7 ++++++- 25707 1 file changed, 6 insertions(+), 1 deletion(-) 25708 25709commit 38c9909e2948f089bbec89e2d43b0e6f930c1ab1 25710Author: Chris Wilson <chris@chris-wilson.co.uk> 25711AuthorDate: Tue Apr 3 15:34:30 2007 -0400 25712Commit: Behdad Esfahbod <behdad@behdad.org> 25713CommitDate: Tue Apr 3 15:34:30 2007 -0400 25714 25715 [autogen.sh] Borrow version comparison from GNOME autogen.sh (#9566) 25716 25717 Our previous version check code was thinking that 1.10 is older than 1.7 25718 25719 autogen.sh | 186 ++++++++++++++++++++++++++++++++----------------------------- 25720 1 file changed, 97 insertions(+), 89 deletions(-) 25721 25722commit 00cc44373705665824d53c8ebde5df397b834e41 25723Author: Brian Ewins <Brian.Ewins@gmail.com> 25724AuthorDate: Mon Mar 26 21:44:33 2007 +0100 25725Commit: Brian Ewins <Brian.Ewins@gmail.com> 25726CommitDate: Mon Mar 26 21:44:33 2007 +0100 25727 25728 [test/degenerate-path] remove quartz reference image 25729 25730 The reference image is no longer the correct size, so isn't 25731 providing a comparison at all. In the absence of a better 25732 replacement, removing it at least gives us diffs. 25733 25734 test/Makefile.am | 1 - 25735 test/degenerate-path-quartz-rgb24-ref.png | Bin 188 -> 0 bytes 25736 2 files changed, 1 deletion(-) 25737 25738commit 256f3e09a8a0d152a33df00604bf2245604b72bc 25739Author: Chris Wilson <chris@chris-wilson.co.uk> 25740AuthorDate: Mon Mar 26 10:33:32 2007 +0100 25741Commit: Chris Wilson <chris@chris-wilson.co.uk> 25742CommitDate: Mon Mar 26 20:58:14 2007 +0100 25743 25744 Destroy the current pattern before replacing with cairo_set_source(). 25745 25746 Frequently cairo_set_source_rgb[a]() is used to replace the current 25747 solid-pattern source with a new one of a different colour. The current 25748 pattern is very likely to be unshared and unmodified and so it is likely 25749 just to be immediately freed [or rather simply moved to recently freed 25750 cache]. However as the last active pattern it is likely to cache-warm and 25751 suitable to satisfy the forthcoming allocation. So by setting the current 25752 pattern to 'none' we can move the pattern to the freed list before we 25753 create the new pattern and hopefully immediately reuse it. 25754 25755 src/cairo-pattern.c | 10 ++++++++++ 25756 src/cairo.c | 9 +++++++++ 25757 src/cairoint.h | 1 + 25758 3 files changed, 20 insertions(+) 25759 25760commit 38442d4948e0a93f06cd86e6841729bc3f25ed3b 25761Author: Chris Wilson <chris@chris-wilson.co.uk> 25762AuthorDate: Mon Mar 26 10:12:46 2007 +0100 25763Commit: Chris Wilson <chris@chris-wilson.co.uk> 25764CommitDate: Mon Mar 26 20:57:53 2007 +0100 25765 25766 Back out the solid-pattern-cache from 9b53bc7c6585db7ae647bb992fb9817d7bd75b38. 25767 25768 Unfortunately one cannot cache live patterns and return a fresh reference 25769 instead of creating new ones as patterns can be modified by the user and 25770 so cannot be transparently shared between different users. However, 25771 solid colour allocation is still a frequent operation, so we maintain a 25772 small cache of recently freed patterns to reduce the malloc pressure. 25773 25774 src/cairo-pattern.c | 100 +++++++++++++++++++++++++--------------------------- 25775 1 file changed, 48 insertions(+), 52 deletions(-) 25776 25777commit c8e37af4b06fffe1aa1a1c3d2cd6481cc2cf8938 25778Author: Brian Ewins <Brian.Ewins@gmail.com> 25779AuthorDate: Sun Mar 25 23:31:40 2007 +0100 25780Commit: Brian Ewins <Brian.Ewins@gmail.com> 25781CommitDate: Sun Mar 25 23:31:40 2007 +0100 25782 25783 [quartz] fix order of fields in matrix conversion 25784 25785 There was a typo flipping the xy and yx fields when a 25786 cairo matrix was converted to a quartz matrix. 25787 25788 src/cairo-quartz-surface.c | 4 ++-- 25789 1 file changed, 2 insertions(+), 2 deletions(-) 25790 25791commit d2cdd5eba801fc5f696d1095f237ae53c54b4e2a 25792Author: Brian Ewins <Brian.Ewins@gmail.com> 25793AuthorDate: Sat Mar 24 13:25:03 2007 +0000 25794Commit: Brian Ewins <Brian.Ewins@gmail.com> 25795CommitDate: Sat Mar 24 13:25:03 2007 +0000 25796 25797 [atsui] fix scaling of glyph surfaces (#9568) 25798 25799 Atsui glyph surface were clipped incorrectly when the text is scaled, 25800 visible in the text-pattern test. 25801 25802 src/cairo-atsui-font.c | 10 ++++++++-- 25803 1 file changed, 8 insertions(+), 2 deletions(-) 25804 25805commit 2efaf3a7a47a281ca02009d371cd7a06a8a4f282 25806Merge: abac4d251 25ddc0800 25807Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 25808AuthorDate: Sat Mar 24 00:29:04 2007 +0100 25809Commit: Mathias Hasselmann <mathias.hasselmann@gmx.de> 25810CommitDate: Sat Mar 24 00:29:04 2007 +0100 25811 25812 Merge branch 'master' of git+ssh://hasselmm@git.freedesktop.org/git/cairo 25813 25814commit abac4d251dd02151dced296afa9d6e1b383868ee 25815Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 25816AuthorDate: Fri Mar 23 23:36:15 2007 +0100 25817Commit: Mathias Hasselmann <mathias.hasselmann@gmx.de> 25818CommitDate: Sat Mar 24 00:22:37 2007 +0100 25819 25820 [cairo-perf] Use full 64 bit of the clock cycle counters to avoid overflows 25821 25822 perf/cairo-perf-posix.c | 22 ++++++++++++++-------- 25823 1 file changed, 14 insertions(+), 8 deletions(-) 25824 25825commit 25ddc0800490ca0222668e389412f92ccfdab91c 25826Author: Adrian Johnson <ajohnson@redneon.com> 25827AuthorDate: Fri Mar 23 23:19:30 2007 +1030 25828Commit: Adrian Johnson <ajohnson@redneon.com> 25829CommitDate: Fri Mar 23 23:19:30 2007 +1030 25830 25831 PS: Remove unused variable 25832 25833 src/cairo-ps-surface.c | 1 - 25834 1 file changed, 1 deletion(-) 25835 25836commit e9a26966484171f94df41bd3abc83aae22682caa 25837Author: Adrian Johnson <ajohnson@redneon.com> 25838AuthorDate: Fri Mar 23 23:08:46 2007 +1030 25839Commit: Adrian Johnson <ajohnson@redneon.com> 25840CommitDate: Fri Mar 23 23:08:46 2007 +1030 25841 25842 PDF: Use the TJ operator to show glyphs 25843 25844 src/cairo-pdf-surface.c | 125 +++++++++++++++++++++++++++----- 25845 src/cairo-ps-surface.c | 11 +-- 25846 src/cairo-scaled-font-subsets-private.h | 25 ++++++- 25847 src/cairo-scaled-font-subsets.c | 83 ++++++++++++++++----- 25848 src/cairo-svg-surface.c | 7 +- 25849 5 files changed, 201 insertions(+), 50 deletions(-) 25850 25851commit 820341b4c503fbd5ca3b8f6c3e5ff6eca5562b98 25852Author: Behdad Esfahbod <behdad@behdad.org> 25853AuthorDate: Wed Mar 21 15:44:18 2007 -0400 25854Commit: Behdad Esfahbod <behdad@behdad.org> 25855CommitDate: Wed Mar 21 15:44:18 2007 -0400 25856 25857 [test/nil-surface] Test that cairo_get_target() returns non-NULL 25858 25859 test/nil-surface.c | 6 ++++++ 25860 1 file changed, 6 insertions(+) 25861 25862commit ef8515b4a6b468e589639e794a959cb37d592359 25863Author: Behdad Esfahbod <behdad@behdad.org> 25864AuthorDate: Wed Mar 21 15:29:18 2007 -0400 25865Commit: Behdad Esfahbod <behdad@behdad.org> 25866CommitDate: Wed Mar 21 15:29:18 2007 -0400 25867 25868 cairo_push/pop_group(), bail out if cairo_t is in error status 25869 25870 Fixes the new test added to test/nil-surface to not crash 25871 25872 src/cairo.c | 9 ++++++--- 25873 1 file changed, 6 insertions(+), 3 deletions(-) 25874 25875commit 52341f7e855c93fc8e58895c3a318c43c3d58474 25876Author: Behdad Esfahbod <behdad@behdad.org> 25877AuthorDate: Wed Mar 21 15:21:05 2007 -0400 25878Commit: Behdad Esfahbod <behdad@behdad.org> 25879CommitDate: Wed Mar 21 15:21:05 2007 -0400 25880 25881 [test/nil-surface] Test cairo_create(NULL). Crashing in cairo_push_group! 25882 25883 test/nil-surface.c | 19 +++++++++++++++++++ 25884 1 file changed, 19 insertions(+) 25885 25886commit 9cea8a4bb26f7de2ac56e318c72e7d048b8b6c0f 25887Author: Behdad Esfahbod <behdad@behdad.org> 25888AuthorDate: Wed Mar 21 15:03:02 2007 -0400 25889Commit: Behdad Esfahbod <behdad@behdad.org> 25890CommitDate: Wed Mar 21 15:12:58 2007 -0400 25891 25892 [cairo.c] Don't access gstate members directly 25893 25894 src/cairo-gstate.c | 18 ++++++++++++++++++ 25895 src/cairo.c | 23 +++++++++++------------ 25896 src/cairoint.h | 3 +++ 25897 3 files changed, 32 insertions(+), 12 deletions(-) 25898 25899commit 39ae64ff0391c40077b63d214727ca0c25e03e37 25900Author: Behdad Esfahbod <behdad@behdad.org> 25901AuthorDate: Wed Mar 21 14:56:34 2007 -0400 25902Commit: Behdad Esfahbod <behdad@behdad.org> 25903CommitDate: Wed Mar 21 14:56:34 2007 -0400 25904 25905 [cairo-path] Don't access gstate members directly 25906 25907 src/cairo-path.c | 7 ++++--- 25908 1 file changed, 4 insertions(+), 3 deletions(-) 25909 25910commit bd275c19782700f2cfc6905f348e4d4b3f15d311 25911Author: Behdad Esfahbod <behdad@behdad.org> 25912AuthorDate: Wed Mar 21 12:34:37 2007 -0400 25913Commit: Behdad Esfahbod <behdad@behdad.org> 25914CommitDate: Wed Mar 21 12:34:37 2007 -0400 25915 25916 [cairo-pattern] Make sure cached solid patterns are not put in error status 25917 25918 src/cairo-pattern.c | 19 +++++++++++++++---- 25919 1 file changed, 15 insertions(+), 4 deletions(-) 25920 25921commit e76d3cfa4f06ba813528a018fa77ba4d210a44e3 25922Author: Behdad Esfahbod <behdad@behdad.org> 25923AuthorDate: Wed Mar 21 12:33:31 2007 -0400 25924Commit: Behdad Esfahbod <behdad@behdad.org> 25925CommitDate: Wed Mar 21 12:33:31 2007 -0400 25926 25927 [cairo-gstate] Make sure gstate->next is initialized 25928 25929 src/cairo-gstate.c | 4 ++-- 25930 1 file changed, 2 insertions(+), 2 deletions(-) 25931 25932commit 1469ea22ba659ba7afa6892e9b6b2a3f26d0dddb 25933Author: Behdad Esfahbod <behdad@behdad.org> 25934AuthorDate: Wed Mar 21 11:22:33 2007 -0400 25935Commit: Behdad Esfahbod <behdad@behdad.org> 25936CommitDate: Wed Mar 21 11:22:33 2007 -0400 25937 25938 [cairo-gstate] Move save/restore logic into gstate instead of cairo_t 25939 by adding _cairo_gstate_save/restore(). This is in preparation for 25940 adding copy-on-write behavior to gstate. 25941 25942 src/cairo-gstate.c | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++-- 25943 src/cairo.c | 32 ++++++++++---------------------- 25944 src/cairoint.h | 8 ++++---- 25945 3 files changed, 65 insertions(+), 28 deletions(-) 25946 25947commit 5f83a1b542a1932a59299a45f36dff22268dca14 25948Author: Jeff Smith <whydoubt@yahoo.com> 25949AuthorDate: Wed Mar 21 10:41:03 2007 -0400 25950Commit: Behdad Esfahbod <behdad@behdad.org> 25951CommitDate: Wed Mar 21 10:41:03 2007 -0400 25952 25953 [cairo-output-stream] Remove use of strtol 25954 25955 src/cairo-output-stream.c | 8 +++----- 25956 1 file changed, 3 insertions(+), 5 deletions(-) 25957 25958commit bba7169805cec96b442d15241b0fdf8c38d0cd0e 25959Author: Behdad Esfahbod <behdad@behdad.org> 25960AuthorDate: Tue Mar 20 22:55:02 2007 -0400 25961Commit: Behdad Esfahbod <behdad@behdad.org> 25962CommitDate: Tue Mar 20 22:55:02 2007 -0400 25963 25964 Fix file permissions again 25965 25966 Where do these a+x attributes coming from every once in a while? 25967 25968 src/cairo-scaled-font.c | 0 25969 src/cairoint.h | 0 25970 2 files changed, 0 insertions(+), 0 deletions(-) 25971 25972commit ad51ee5aa0d1fc03c4ebe7f0454949995420a710 25973Author: Behdad Esfahbod <behdad@behdad.org> 25974AuthorDate: Tue Mar 20 18:59:19 2007 -0400 25975Commit: Behdad Esfahbod <behdad@behdad.org> 25976CommitDate: Tue Mar 20 18:59:19 2007 -0400 25977 25978 Define and use ARRAY_LEN 25979 25980 src/cairo-arc.c | 2 +- 25981 src/cairo-atsui-font.c | 6 ++---- 25982 src/cairo-bentley-ottmann.c | 2 +- 25983 src/cairo-cff-subset.c | 8 +++----- 25984 src/cairo-hash.c | 2 +- 25985 src/cairo-pattern.c | 2 +- 25986 src/cairo-polygon.c | 2 +- 25987 src/cairo-spline.c | 2 +- 25988 src/cairo-surface.c | 2 +- 25989 src/cairo-svg-surface.c | 2 +- 25990 src/cairo-traps.c | 2 +- 25991 src/cairo-truetype-subset.c | 8 +++----- 25992 src/cairoint.h | 3 +++ 25993 13 files changed, 20 insertions(+), 23 deletions(-) 25994 25995commit 1de12714a9623e66309279eb9edaf6053fd92c56 25996Author: Chris Wilson <chris at chris-wilson.co.uk> 25997AuthorDate: Wed Mar 14 01:31:58 2007 +0000 25998Commit: Behdad Esfahbod <behdad@behdad.org> 25999CommitDate: Tue Mar 20 18:48:15 2007 -0400 26000 26001 [cairo-surface] Use a stack buffer for small numbers of rectangles 26002 26003 src/cairo-surface.c | 13 +++++++++---- 26004 1 file changed, 9 insertions(+), 4 deletions(-) 26005 26006commit 9b53bc7c6585db7ae647bb992fb9817d7bd75b38 26007Author: Chris Wilson <chris at chris-wilson.co.uk> 26008AuthorDate: Tue Mar 13 22:51:12 2007 +0000 26009Commit: Behdad Esfahbod <behdad@behdad.org> 26010CommitDate: Tue Mar 20 18:21:53 2007 -0400 26011 26012 Cache solid patterns 26013 26014 We use a small cache of size 16 for patterns created from solid colors, 26015 e.g. cairo_set_source_rgb(). This helps with toolkits that draw many 26016 widgets using the same colour scheme. 26017 26018 The cache uses a static index variable, which itself acts like a cache 26019 of size 1, remembering the most recently used colour. So repeated 26020 lookups for the same colour hit immediately. If that fails, the cache 26021 is searched linearly, and if that fails too, a new pattern is created 26022 and a random member of the cache is evicted. 26023 26024 src/cairo-color.c | 7 ++++ 26025 src/cairo-debug.c | 2 + 26026 src/cairo-mutex-list.h | 2 + 26027 src/cairo-pattern.c | 63 ++++++++++++++++++++++++++++- 26028 src/cairoint.h | 7 ++++ 26029 test/Makefile.am | 1 + 26030 test/solid-pattern-cache-stress.c | 83 +++++++++++++++++++++++++++++++++++++++ 26031 7 files changed, 163 insertions(+), 2 deletions(-) 26032 26033commit 39679b1b21b07b0fbc05ee21745f384a123ba8da 26034Author: Behdad Esfahbod <behdad@behdad.org> 26035AuthorDate: Tue Mar 20 18:01:41 2007 -0400 26036Commit: Behdad Esfahbod <behdad@behdad.org> 26037CommitDate: Tue Mar 20 18:01:41 2007 -0400 26038 26039 [cairo-path-fixed] Fix "comparison between signed and unsigned" warnings 26040 26041 src/cairo-path-fixed.c | 4 ++-- 26042 1 file changed, 2 insertions(+), 2 deletions(-) 26043 26044commit c939421e16fcf098f8d6196e86705173be8e40fd 26045Author: Behdad Esfahbod <behdad@behdad.org> 26046AuthorDate: Tue Mar 20 08:54:01 2007 -0400 26047Commit: Behdad Esfahbod <behdad@behdad.org> 26048CommitDate: Tue Mar 20 08:54:01 2007 -0400 26049 26050 Oops. Remove cairo-mutex-private.h include from test surfaces 26051 as that file is included from cairoint.h now. 26052 26053 src/test-fallback-surface.c | 1 - 26054 src/test-meta-surface.c | 1 - 26055 src/test-paginated-surface.c | 1 - 26056 3 files changed, 3 deletions(-) 26057 26058commit 0d3e886b182b55b147f2ba1a298c2f5ec8a53d87 26059Author: Behdad Esfahbod <behdad@behdad.org> 26060AuthorDate: Tue Mar 20 08:49:28 2007 -0400 26061Commit: Behdad Esfahbod <behdad@behdad.org> 26062CommitDate: Tue Mar 20 08:50:38 2007 -0400 26063 26064 Include cairo-mutex-private.h in test backends 26065 26066 src/test-fallback-surface.c | 1 + 26067 src/test-meta-surface.c | 2 ++ 26068 src/test-paginated-surface.c | 1 + 26069 3 files changed, 4 insertions(+) 26070 26071commit 0263f18f843175e478bd3a14e24445e31e7b0952 26072Author: Behdad Esfahbod <behdad@behdad.org> 26073AuthorDate: Tue Mar 20 08:47:45 2007 -0400 26074Commit: Behdad Esfahbod <behdad@behdad.org> 26075CommitDate: Tue Mar 20 08:50:38 2007 -0400 26076 26077 [configure.in] Define PIXMAN_CFLAGS, to pass -fno-strict-aliasing to pixman 26078 26079 configure.in | 10 +++++++--- 26080 pixman/src/Makefile.am | 4 +--- 26081 2 files changed, 8 insertions(+), 6 deletions(-) 26082 26083commit 94c367f7d7637fc74ed6d1fbe13d73662c08246b 26084Merge: c4bd7cf6f d3177a687 26085Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 26086AuthorDate: Tue Mar 20 13:33:50 2007 +0100 26087Commit: Mathias Hasselmann <mathias.hasselmann@gmx.de> 26088CommitDate: Tue Mar 20 13:33:50 2007 +0100 26089 26090 Merge branch 'master' of git+ssh://hasselmm@git.freedesktop.org/git/cairo 26091 26092commit c4bd7cf6f85770552c0b0284db219f27ffa702f2 26093Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 26094AuthorDate: Tue Mar 20 13:32:33 2007 +0100 26095Commit: Mathias Hasselmann <mathias.hasselmann@gmx.de> 26096CommitDate: Tue Mar 20 13:32:33 2007 +0100 26097 26098 Move declaration of cairo_mutex_t to cairo-mutex-private.h 26099 26100 src/cairo-font.c | 1 - 26101 src/cairo-ft-font.c | 1 - 26102 src/cairo-mutex-private.h | 53 +++++++++++++++++++++++++++++++++++-------- 26103 src/cairo-mutex.c | 6 +++-- 26104 src/cairo-paginated-surface.c | 1 - 26105 src/cairo-pattern.c | 1 - 26106 src/cairo-scaled-font.c | 1 - 26107 src/cairo-surface.c | 1 - 26108 src/cairo-xlib-screen.c | 1 - 26109 src/cairoint.h | 37 +----------------------------- 26110 10 files changed, 49 insertions(+), 54 deletions(-) 26111 26112commit 9c52a9e7d8a70d21ecdd4fa241fa2594361dd5df 26113Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 26114AuthorDate: Tue Mar 20 13:05:48 2007 +0100 26115Commit: Mathias Hasselmann <mathias.hasselmann@gmx.de> 26116CommitDate: Tue Mar 20 13:05:48 2007 +0100 26117 26118 Remove _global_image_glyph_cache_mutex which is not used anymore. 26119 26120 src/cairo-mutex-list.h | 4 ---- 26121 1 file changed, 4 deletions(-) 26122 26123commit d3177a68752ac2c8d20b1a8a3616298f04f31078 26124Author: Behdad Esfahbod <behdad@behdad.org> 26125AuthorDate: Tue Mar 20 07:59:47 2007 -0400 26126Commit: Behdad Esfahbod <behdad@behdad.org> 26127CommitDate: Tue Mar 20 07:59:47 2007 -0400 26128 26129 [cairo-mutex] Rename _xlib_screen_mutex to _cairo_xlib_screen_mutex 26130 26131 src/cairo-mutex-list.h | 2 +- 26132 src/cairo-xlib-screen.c | 20 ++++++++++---------- 26133 2 files changed, 11 insertions(+), 11 deletions(-) 26134 26135commit be52178443ffd19fc7848dfc78c477883ccb943b 26136Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 26137AuthorDate: Tue Mar 20 10:11:14 2007 +0100 26138Commit: Mathias Hasselmann <mathias.hasselmann@gmx.de> 26139CommitDate: Tue Mar 20 10:11:14 2007 +0100 26140 26141 Initialize mutexes at central location. 26142 26143 All mutex declarations have been moved to cairo-mutex-list.h. 26144 This should avoid breaking of less frequently tested backends, 26145 when mutexes are introduced or when existing mutexes are renamed. 26146 26147 Instead of initializing mutexes on library startup, mutexes are 26148 lazily initialized within the few entry points of now by calling 26149 CAIRO_MUTEX_INITIALIZE(). Currently only the OS/2 backend takes 26150 care about releasing global mutexes. Therefore there is no counter 26151 part of that macro for finalizing all global mutexes yet - but 26152 as cairo-backend-os2.c shows such a function would be quite 26153 easy to implement. 26154 26155 src/Makefile.am | 1 + 26156 src/cairo-font.c | 7 ++- 26157 src/cairo-ft-font.c | 3 +- 26158 src/cairo-mutex-list.h | 52 ++++++++++++++++++ 26159 src/cairo-mutex-private.h | 123 ++++++++++++++++++++++++++++++++++++++++++ 26160 src/cairo-mutex.c | 51 ++++++++++++++++++ 26161 src/cairo-os2-surface.c | 45 ++-------------- 26162 src/cairo-paginated-surface.c | 1 + 26163 src/cairo-pattern.c | 3 ++ 26164 src/cairo-scaled-font.c | 3 +- 26165 src/cairo-surface.c | 5 +- 26166 src/cairo-win32-font.c | 10 ---- 26167 src/cairo-win32-private.h | 3 -- 26168 src/cairo-win32-surface.c | 65 ---------------------- 26169 src/cairo-xlib-screen.c | 3 +- 26170 src/cairoint.h | 71 +++++------------------- 26171 16 files changed, 257 insertions(+), 189 deletions(-) 26172 26173commit aba2b299db163d8a5b9d0a0214cd8a485fb87162 26174Author: Carl Worth <cworth@cworth.org> 26175AuthorDate: Mon Mar 19 23:50:13 2007 -0700 26176Commit: Carl Worth <cworth@cworth.org> 26177CommitDate: Mon Mar 19 23:50:13 2007 -0700 26178 26179 boilerplate: Add EXTRA_LTLIBRARIES to CLEANFILES to allow make distcleancheck to pass. 26180 26181 boilerplate/Makefile.am | 4 +++- 26182 1 file changed, 3 insertions(+), 1 deletion(-) 26183 26184commit 2483542b74ac71851cc766de3468d0df833cdec2 26185Author: Carl Worth <cworth@cworth.org> 26186AuthorDate: Mon Mar 19 23:37:28 2007 -0700 26187Commit: Carl Worth <cworth@cworth.org> 26188CommitDate: Mon Mar 19 23:37:28 2007 -0700 26189 26190 Add skew-extreme-ref.png to the tar file for the release. 26191 26192 test/Makefile.am | 1 + 26193 1 file changed, 1 insertion(+) 26194 26195commit b91ff39214675faea5d3627ecf86a24aeb8b178f 26196Author: Carl Worth <cworth@cworth.org> 26197AuthorDate: Mon Mar 19 23:24:26 2007 -0700 26198Commit: Carl Worth <cworth@cworth.org> 26199CommitDate: Mon Mar 19 23:24:26 2007 -0700 26200 26201 Increment cairo version to 1.4.2 (and libtool versioning to 13:1:11) 26202 26203 configure.in | 4 ++-- 26204 1 file changed, 2 insertions(+), 2 deletions(-) 26205 26206commit 04b3de48f5269cae483b4af425402679a35e7d33 26207Author: Carl Worth <cworth@cworth.org> 26208AuthorDate: Mon Mar 19 23:22:39 2007 -0700 26209Commit: Carl Worth <cworth@cworth.org> 26210CommitDate: Mon Mar 19 23:22:39 2007 -0700 26211 26212 NEWS: Add notes for cairo 1.4.2 26213 26214 NEWS | 130 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 26215 1 file changed, 130 insertions(+) 26216 26217commit 1401f20eb91f34d992612162db0c9e04bd666114 26218Author: Carl Worth <cworth@cworth.org> 26219AuthorDate: Mon Mar 19 22:39:40 2007 -0700 26220Commit: Carl Worth <cworth@cworth.org> 26221CommitDate: Mon Mar 19 22:39:40 2007 -0700 26222 26223 Temporarily remove extend-reflect from the list of tests. 26224 26225 This test is known to sometimes cause an X server to enter a near- 26226 infinite loop. That's a reall unkind thing to inflict upon our 26227 users who are being nice enough to test cairo. Let's disable 26228 this test for the 1.4.2 release. 26229 26230 test/Makefile.am | 1 - 26231 1 file changed, 1 deletion(-) 26232 26233commit 725a4de42dfaf0d9d98447c9fbefed99fbf99ac1 26234Author: Carl Worth <cworth@cworth.org> 26235AuthorDate: Mon Mar 19 16:50:55 2007 -0700 26236Commit: Carl Worth <cworth@cworth.org> 26237CommitDate: Mon Mar 19 16:50:55 2007 -0700 26238 26239 Propagate a nil surface out of _cairo_surface_create_similar_scratch 26240 26241 We detect an error in the surface before calling into private surface-modifying 26242 functions, (such as _cairo_surface_set_font_options), that don't have the 26243 nil-surface protection of public functions. 26244 26245 This should fix the problem reported (again) in this bug report: 26246 26247 cairo crashes in cairo_create_simular if nil surface returned by other->backend->create_similar 26248 https://bugs.freedesktop.org/show_bug.cgi?id=9844 26249 26250 Though I haven't succeeded in replicating the bug yet, (perhaps a system 26251 difference in allowing writes to read-only memory or not, or something 26252 like that). 26253 26254 src/cairo-surface.c | 4 ++++ 26255 1 file changed, 4 insertions(+) 26256 26257commit eb472a9d9cbaea754907a261b459693b9c27ac79 26258Author: Carl Worth <cworth@cworth.org> 26259AuthorDate: Mon Mar 19 13:13:41 2007 -0700 26260Commit: Carl Worth <cworth@cworth.org> 26261CommitDate: Mon Mar 19 15:10:33 2007 -0700 26262 26263 xlib: Prefer surface->format over surface->visual for identifying masks 26264 26265 The original test for 'if (surface->visual)' dates back to a very old 26266 assumption that if the xlib surface was created with an XRenderFormat 26267 that the surface->visual field would be set to NULL. This assumption 26268 was broken years ago with the following commit: 26269 26270 0c05b23b3165ec6908c28f56b3446cf43dff44a2 26271 26272 This fixes the crash reported here: 26273 26274 BadMatch when running gnome-terminal with the murrine-0.51 gtk engine 26275 https://bugs.freedesktop.org/show_bug.cgi?id=10250 26276 26277 src/cairo-xlib-surface.c | 27 +++++++++++++++------------ 26278 1 file changed, 15 insertions(+), 12 deletions(-) 26279 26280commit d27c42cc3fcd4376fc69aa68d997e6077c3eca90 26281Author: Behdad Esfahbod <behdad@behdad.org> 26282AuthorDate: Mon Mar 19 17:42:06 2007 -0400 26283Commit: Behdad Esfahbod <behdad@behdad.org> 26284CommitDate: Mon Mar 19 17:42:06 2007 -0400 26285 26286 [boilerplate] Don't build in make all 26287 26288 boilerplate/Makefile.am | 2 +- 26289 1 file changed, 1 insertion(+), 1 deletion(-) 26290 26291commit 12feb1f98627637bf83ba70f739bb5b2699085aa 26292Author: Brian Ewins <Brian.Ewins@gmail.com> 26293AuthorDate: Mon Mar 19 18:22:44 2007 +0000 26294Commit: Brian Ewins <Brian.Ewins@gmail.com> 26295CommitDate: Mon Mar 19 18:22:44 2007 +0000 26296 26297 [quartz] apply ctm to text (#9568) 26298 26299 Applies the ctm to text output on the quartz surface. This corrects 26300 the text-pattern test, and also corrects the size of text when the 26301 ctm includes a scale. 26302 26303 src/cairo-quartz-surface.c | 9 ++++++++- 26304 1 file changed, 8 insertions(+), 1 deletion(-) 26305 26306commit 986b0ff83813b68a19490fe8629bfdaeed68cbe2 26307Author: Brian Ewins <Brian.Ewins@gmail.com> 26308AuthorDate: Mon Mar 19 18:21:27 2007 +0000 26309Commit: Brian Ewins <Brian.Ewins@gmail.com> 26310CommitDate: Mon Mar 19 18:21:27 2007 +0000 26311 26312 [atsui] make text_to_glyphs return positions in user units. (#9568) 26313 26314 text_to_glyphs was returning positions in device units; correct this 26315 to use user units. 26316 26317 src/cairo-atsui-font.c | 14 +++++++++++++- 26318 1 file changed, 13 insertions(+), 1 deletion(-) 26319 26320commit 06a44839270354c7f74aa66352fb4234095dee4e 26321Author: Brian Ewins <Brian.Ewins@gmail.com> 26322AuthorDate: Sun Mar 18 20:20:11 2007 +0000 26323Commit: Brian Ewins <Brian.Ewins@gmail.com> 26324CommitDate: Sun Mar 18 20:20:11 2007 +0000 26325 26326 [atsui] store sizes in the atsui font 26327 26328 The ATSUStyle that we store in the font contains references to 26329 the size and font matrix; we need to store them in the font so that 26330 they are not released before the style. 26331 26332 src/cairo-atsui-font.c | 16 +++++++++------- 26333 1 file changed, 9 insertions(+), 7 deletions(-) 26334 26335commit 240479d10d3263719b0c8a4426fda088899551a2 26336Author: Brian Ewins <Brian.Ewins@gmail.com> 26337AuthorDate: Sun Mar 18 20:20:10 2007 +0000 26338Commit: Brian Ewins <Brian.Ewins@gmail.com> 26339CommitDate: Sun Mar 18 20:20:10 2007 +0000 26340 26341 [atsui] refactor CreateSizedCopyOfStyle 26342 26343 This is just to make it easier to use with passed-in matrices, 26344 which I'll make use of in a subsequent patch. 26345 26346 src/cairo-atsui-font.c | 36 ++++++++++++++++++++---------------- 26347 1 file changed, 20 insertions(+), 16 deletions(-) 26348 26349commit 43577e26b4c2285499ebfddba6cfa62cbbb15feb 26350Author: Brian Ewins <Brian.Ewins@gmail.com> 26351AuthorDate: Sun Mar 18 20:20:10 2007 +0000 26352Commit: Brian Ewins <Brian.Ewins@gmail.com> 26353CommitDate: Sun Mar 18 20:20:10 2007 +0000 26354 26355 [atsui] remove the unused old_show_glyphs function. 26356 26357 _cairo_atsui_old_show_glyphs was a relic of the old quartz 26358 surface and is no longer required. 26359 26360 src/cairo-atsui-font.c | 180 +++++-------------------------------------------- 26361 1 file changed, 15 insertions(+), 165 deletions(-) 26362 26363commit 5aaf584bf44d762af5e486f21a037eb0cc6e1197 26364Author: Carl Worth <cworth@cworth.org> 26365AuthorDate: Fri Mar 16 17:45:31 2007 -0700 26366Commit: Carl Worth <cworth@cworth.org> 26367CommitDate: Fri Mar 16 17:46:08 2007 -0700 26368 26369 XCB: Fix parameter-order confusion with xcb_create_pixmap 26370 26371 This fixes mask-based clipping with the XCB backend, (which also makes 26372 the xcb backend pass all tests that the xlib backend passes). 26373 26374 src/cairo-xcb-surface.c | 7 +++---- 26375 1 file changed, 3 insertions(+), 4 deletions(-) 26376 26377commit 6f96a5dd9954418b252ec45752dcf2c3b289fed4 26378Author: Behdad Esfahbod <behdad@behdad.org> 26379AuthorDate: Fri Mar 16 18:21:36 2007 -0400 26380Commit: Behdad Esfahbod <behdad@behdad.org> 26381CommitDate: Fri Mar 16 18:21:36 2007 -0400 26382 26383 [win32] Really return unhinted font metrics if metrics hinting is off 26384 26385 src/cairo-win32-font.c | 2 +- 26386 1 file changed, 1 insertion(+), 1 deletion(-) 26387 26388commit 47e71eef5f903fa1a96d82a79a75d89c52032913 26389Author: Behdad Esfahbod <behdad@behdad.org> 26390AuthorDate: Fri Mar 16 17:56:53 2007 -0400 26391Commit: Behdad Esfahbod <behdad@behdad.org> 26392CommitDate: Fri Mar 16 17:56:53 2007 -0400 26393 26394 [win32] Fix font descent computation 26395 26396 src/cairo-win32-font.c | 2 +- 26397 1 file changed, 1 insertion(+), 1 deletion(-) 26398 26399commit dd4601b0d03bba021b11dcf96e09584f40d1621f 26400Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 26401AuthorDate: Fri Mar 16 20:43:29 2007 +0100 26402Commit: Mathias Hasselmann <mathias.hasselmann@gmx.de> 26403CommitDate: Fri Mar 16 20:43:29 2007 +0100 26404 26405 [cairo-perf] Emit warning, if cairo-perf is not CPU bound 26406 26407 cairo-perf and the X server should be bound to CPUs (either the same 26408 or separate) on SMP systems. Not doing so causes random results when 26409 the X server is moved to or from cairo-perf's CPU during the 26410 benchmarks. 26411 26412 configure.in | 11 +++++++++++ 26413 perf/cairo-perf.c | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 26414 2 files changed, 63 insertions(+) 26415 26416commit d02aa5b23eb6243b21697de203db0a5f1b49def9 26417Author: Gilles Dauphin <dauphin@enst.fr> 26418AuthorDate: Fri Mar 16 10:35:23 2007 -0700 26419Commit: Carl Worth <cworth@cworth.org> 26420CommitDate: Fri Mar 16 10:35:23 2007 -0700 26421 26422 Don't use unsupported visibily attribute hidden on Solaris 26423 26424 Thanks to Thomas Klausner for passing the report along. 26425 This fixes the following bug report: 26426 26427 hidden attribute does not work with Solaris ld 26428 https://bugs.freedesktop.org/show_bug.cgi?id=10227 26429 26430 And as Behdad points out, an even better fix would be to 26431 move checks for supported visibility attribute to configure. 26432 26433 pixman/src/pixman.h | 2 +- 26434 src/cairoint.h | 4 ++-- 26435 2 files changed, 3 insertions(+), 3 deletions(-) 26436 26437commit 8236282c5d58320173b17659e488384e710d0ea7 26438Author: Thomas Klausner <wiz@danbala.tuwien.ac.at> 26439AuthorDate: Fri Mar 16 10:04:56 2007 -0700 26440Commit: Carl Worth <cworth@cworth.org> 26441CommitDate: Fri Mar 16 10:06:51 2007 -0700 26442 26443 Use "find !" rather than "find -not" for better portability 26444 26445 The man page for GNU find says: 26446 -not expr 26447 Same as ! expr, but not POSIX compliant. 26448 26449 And actually, on e.g. NetBSD, "-not" is not supported. 26450 26451 This resolved the following bug: 26452 26453 https://bugs.freedesktop.org/show_bug.cgi?id=10226 26454 26455 RELEASING | 2 +- 26456 src/check-headers.sh | 2 +- 26457 2 files changed, 2 insertions(+), 2 deletions(-) 26458 26459commit 332c38b6c34bde4829607e534f39522f8001acf7 26460Author: Carl Worth <cworth@cworth.org> 26461AuthorDate: Thu Mar 15 23:25:06 2007 -0700 26462Commit: Carl Worth <cworth@cworth.org> 26463CommitDate: Thu Mar 15 23:25:06 2007 -0700 26464 26465 Avoid pulling in -lz for the ps backend. 26466 26467 Quite some time ago we switched from using deflate-based compression to LZW 26468 for the ps backend, (which allows it to target PostScript Level 2 instead of 26469 PostScript Level 3). Now, we finally drop the fact that the ps backend was 26470 still requiring zlib in order to build. 26471 26472 configure.in | 6 +----- 26473 1 file changed, 1 insertion(+), 5 deletions(-) 26474 26475commit 2242550b489472d4d9b6505fd3db89541e101425 26476Author: Carl Worth <cworth@cworth.org> 26477AuthorDate: Thu Mar 15 23:17:19 2007 -0700 26478Commit: Carl Worth <cworth@cworth.org> 26479CommitDate: Thu Mar 15 23:17:19 2007 -0700 26480 26481 Make compilation of cairo-deflate-stream.c conditional on compilation of PDF backend. 26482 26483 Otherwise we risk pulling in an otherwise-unneeded dependency on zlib. 26484 26485 This fixes the bug reported here: 26486 26487 Without PDF surface backend we don't need cairo-deflate-stream 26488 https://bugs.freedesktop.org/show_bug.cgi?id=10202 26489 26490 src/Makefile.am | 3 +-- 26491 1 file changed, 1 insertion(+), 2 deletions(-) 26492 26493commit 1234064fa4aa20d0875473709d2fa74600af485b 26494Author: Carl Worth <cworth@cworth.org> 26495AuthorDate: Thu Mar 15 22:38:42 2007 -0700 26496Commit: Carl Worth <cworth@cworth.org> 26497CommitDate: Thu Mar 15 22:38:42 2007 -0700 26498 26499 Allow NULL pointers for functions that accept pointers for multiple return values. 26500 26501 When a single function accepts pointers for multiple return values, 26502 the convention is that it's legal for the user to pass NULL for 26503 those pointers in case the user is only interested in some subset 26504 of the values. 26505 26506 This was already properly implemented for functions such as 26507 cairo_pattern_get_rgba, etc. 26508 26509 Here we fix four functions to follow the same convention: 26510 26511 cairo_stroke_extents 26512 cairo_fill_extents 26513 cairo_clip_extents 26514 cairo_surface_get_device_offset 26515 26516 src/cairo-gstate.c | 44 +++++++++++++++++++++++++++++++++----------- 26517 src/cairo-surface.c | 6 ++++-- 26518 2 files changed, 37 insertions(+), 13 deletions(-) 26519 26520commit 133183d858aa632da3cec2a789dcc1e1203d778b 26521Author: Carl Worth <cworth@cworth.org> 26522AuthorDate: Thu Mar 15 22:08:55 2007 -0700 26523Commit: Carl Worth <cworth@cworth.org> 26524CommitDate: Thu Mar 15 22:09:32 2007 -0700 26525 26526 Fix cairo_stroke_extents and cairo_in_stroke to not crash with line width of 0.0 26527 26528 This fixes the line-width-zero test case and the bug reported here: 26529 26530 Crash in cairo_stroke_extents whe line width is 0 and line cap is ROUND 26531 (_cairo_pen_find_active_cw_vertex_index) 26532 https://bugs.freedesktop.org/show_bug.cgi?id=10231 26533 26534 src/cairo-gstate.c | 10 ++++++++++ 26535 1 file changed, 10 insertions(+) 26536 26537commit 23caa0f43ba199371ab178cf3e827e449ee5935f 26538Author: Carl Worth <cworth@cworth.org> 26539AuthorDate: Thu Mar 15 21:58:20 2007 -0700 26540Commit: Carl Worth <cworth@cworth.org> 26541CommitDate: Thu Mar 15 22:09:32 2007 -0700 26542 26543 Add line-width-zero test which currently crashes. 26544 26545 The crash is described in this bug report: 26546 26547 Crash in cairo_stroke_extents whe line width is 0 and line cap is ROUND 26548 (_cairo_pen_find_active_cw_vertex_index) 26549 https://bugs.freedesktop.org/show_bug.cgi?id=10231 26550 26551 test/.gitignore | 1 + 26552 test/Makefile.am | 1 + 26553 test/line-width-zero.c | 79 ++++++++++++++++++++++++++++++++++++++++++++++++++ 26554 3 files changed, 81 insertions(+) 26555 26556commit 562bd551bc5ca3f3858a66b9884a8525531153c8 26557Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 26558AuthorDate: Thu Mar 15 12:47:41 2007 +0100 26559Commit: Mathias Hasselmann <mathias.hasselmann@gmx.de> 26560CommitDate: Thu Mar 15 12:47:41 2007 +0100 26561 26562 [cairo-perf-diff] Update usage screen to mention --html. 26563 26564 perf/cairo-perf-diff | 73 ++++++++++++++++++++++++++++++---------------------- 26565 1 file changed, 42 insertions(+), 31 deletions(-) 26566 26567commit 6ff2439b33a9da9a517325bfd472e8cb1fdd4992 26568Author: Carl Worth <cworth@cworth.org> 26569AuthorDate: Wed Mar 14 16:33:01 2007 -0700 26570Commit: Carl Worth <cworth@cworth.org> 26571CommitDate: Wed Mar 14 17:20:33 2007 -0700 26572 26573 Implement _cairo_traps_tessellate_triangle with _cairo_traps_tessellate_convex_quad 26574 26575 The newly rewritten convex_quad code is actually simpler than the 26576 triangle code being replaced here. This also allows us to throw 26577 away the problematic _compute_x function which can't handle 26578 horizontal lines, (divide by zero). So the cairo world becomes a 26579 better place. 26580 26581 src/cairo-traps.c | 89 ++++++------------------------------------------------- 26582 1 file changed, 9 insertions(+), 80 deletions(-) 26583 26584commit 53ae6ea957bac141c033f41276d93bab3a25009f 26585Author: Carl Worth <cworth@cworth.org> 26586AuthorDate: Wed Mar 14 16:30:48 2007 -0700 26587Commit: Carl Worth <cworth@cworth.org> 26588CommitDate: Wed Mar 14 17:20:27 2007 -0700 26589 26590 Fix _cairo_traps_tessellate_convex_quad to handle a == b 26591 26592 This case was found in an attempt to use the convex_quad function 26593 for tessellating triangles as well. Fortunately the fix is very 26594 easy. 26595 26596 src/cairo-traps.c | 14 +++++++++++++- 26597 1 file changed, 13 insertions(+), 1 deletion(-) 26598 26599commit 96d8f58daf279238d3a1dfcd4ed3710014e2aeea 26600Author: Chris Wilson <chris@chris-wilson.co.uk> 26601AuthorDate: Tue Mar 13 20:17:22 2007 +0000 26602Commit: Carl Worth <cworth@cworth.org> 26603CommitDate: Wed Mar 14 17:20:13 2007 -0700 26604 26605 Clear the XRender data on display closure. 26606 26607 Use the new hook functions to register a callback for xlib to clear 26608 the private glyph data when the display is closed. In order to do this 26609 we need to reset the glyph cache inside the generic scaled font as well. 26610 26611 src/cairo-xlib-surface.c | 25 +++++++++++++++++++++++++ 26612 1 file changed, 25 insertions(+) 26613 26614commit 52405533b1b191ff98ef3cbc20eaf55e97c8049c 26615Author: Chris Wilson <chris@chris-wilson.co.uk> 26616AuthorDate: Tue Mar 13 20:42:09 2007 +0000 26617Commit: Carl Worth <cworth@cworth.org> 26618CommitDate: Wed Mar 14 17:20:05 2007 -0700 26619 26620 Privately export a function to reset the scaled font's glyph caches. 26621 26622 src/cairo-scaled-font.c | 9 +++++++++ 26623 src/cairoint.h | 3 +++ 26624 2 files changed, 12 insertions(+) 26625 26626commit ad7698feb5f818ba2657b01bbc04f7fb537c1297 26627Author: Chris Wilson <chris@chris-wilson.co.uk> 26628AuthorDate: Tue Mar 13 20:11:49 2007 +0000 26629Commit: Carl Worth <cworth@cworth.org> 26630CommitDate: Wed Mar 14 17:19:55 2007 -0700 26631 26632 Introduce hooks for _cairo_xlib_close_display() 26633 26634 This patch adds a simple hook data type for a notifier style callback 26635 and introduces two functions to manipulate a list of callbacks for 26636 cleaning up on display closure. 26637 26638 src/cairo-xlib-private.h | 15 +++++ 26639 src/cairo-xlib-screen.c | 153 +++++++++++++++++++++++++++++++++++++---------- 26640 2 files changed, 136 insertions(+), 32 deletions(-) 26641 26642commit 3d3173d176bc959682a35674c31d3155e8642c41 26643Author: Carl Worth <cworth@cworth.org> 26644AuthorDate: Wed Mar 14 16:56:45 2007 -0700 26645Commit: Carl Worth <cworth@cworth.org> 26646CommitDate: Wed Mar 14 17:19:48 2007 -0700 26647 26648 Add svg-specific reference image for radial-gradient test. 26649 26650 This isn't strictly needed, (pdiff allows the test to pass without the 26651 image), but it sure runs faster this way. 26652 26653 test/radial-gradient-svg-ref.png | Bin 0 -> 91039 bytes 26654 1 file changed, 0 insertions(+), 0 deletions(-) 26655 26656commit 75201c12be74055d6209d48d1d698797665a70b4 26657Author: Carl Worth <cworth@cworth.org> 26658AuthorDate: Wed Mar 14 15:48:15 2007 -0700 26659Commit: Carl Worth <cworth@cworth.org> 26660CommitDate: Wed Mar 14 15:48:15 2007 -0700 26661 26662 check-def.sh: Adjust test to exempt _cairo_test_* functions as well as _cairo_*_test_* 26663 26664 This test started failing with the recent renaming of the following 26665 three functions, (before they had no cairo in their names so they 26666 were not getting picked up at all): 26667 26668 _cairo_test_fallback_surface_create 26669 _cairo_test_meta_surface_create 26670 _cairo_test_paginated_surface_create_for_data 26671 26672 With this change, the failure now goes away again. 26673 26674 src/check-def.sh | 2 +- 26675 1 file changed, 1 insertion(+), 1 deletion(-) 26676 26677commit 5d23d0c90c31b233d5916c12eaf2a1dafc441243 26678Author: Carl Worth <cworth@cworth.org> 26679AuthorDate: Wed Mar 14 15:23:01 2007 -0700 26680Commit: Carl Worth <cworth@cworth.org> 26681CommitDate: Wed Mar 14 15:23:01 2007 -0700 26682 26683 Remove dead-code remnants of old tessellator 26684 26685 src/cairo-traps.c | 372 ------------------------------------------------------ 26686 1 file changed, 372 deletions(-) 26687 26688commit 1f3a5b4e1283cc0e55f7ea6baca6d0fe67fd14b1 26689Author: Carl Worth <cworth@cworth.org> 26690AuthorDate: Tue Mar 13 17:42:39 2007 -0700 26691Commit: Carl Worth <cworth@cworth.org> 26692CommitDate: Wed Mar 14 15:06:36 2007 -0700 26693 26694 Fix bugs in _cairo_traps_tessellate_convex_quad 26695 26696 The previous code was not handling all cases correctly, (yes, 26697 even something as simple as a quadrilateral can exhibit a 26698 remarkably large number of different cases when tessellation 26699 is attempted). 26700 26701 This fix now introduces slope comparison which handles several 26702 cases that were mis-handled with the previous implementation which 26703 only used independent sorting of the X and Y values of the 26704 coordinates. 26705 26706 This fixes the skew-extreme test case and the bug reported here: 26707 26708 Skew transforms were broken by the cairo update in December 26709 https://bugzilla.mozilla.org/show_bug.cgi?id=373632 26710 26711 src/cairo-traps.c | 101 +++++++++++++++++++++++++++++++----------------------- 26712 1 file changed, 59 insertions(+), 42 deletions(-) 26713 26714commit 0a6ae06c35d99e5e8397c58ee94291e7ee45eb4e 26715Author: Carl Worth <cworth@cworth.org> 26716AuthorDate: Tue Mar 13 17:39:48 2007 -0700 26717Commit: Carl Worth <cworth@cworth.org> 26718CommitDate: Wed Mar 14 15:06:36 2007 -0700 26719 26720 Add new skew-extreme test case. 26721 26722 This test currently fails, demonstrating the bug reported here: 26723 26724 Skew transforms were broken by the cairo update in December 26725 https://bugzilla.mozilla.org/show_bug.cgi?id=373632 26726 26727 test/.gitignore | 1 + 26728 test/Makefile.am | 1 + 26729 test/skew-extreme-ref.png | Bin 0 -> 1012 bytes 26730 test/skew-extreme.c | 126 ++++++++++++++++++++++++++++++++++++++++++++++ 26731 4 files changed, 128 insertions(+) 26732 26733commit 40b6d8842e1bcb5fbb3a7dffd0c05b7d3bf6cc6b 26734Author: Carl Worth <cworth@cworth.org> 26735AuthorDate: Tue Mar 13 13:07:42 2007 -0700 26736Commit: Carl Worth <cworth@cworth.org> 26737CommitDate: Wed Mar 14 15:06:36 2007 -0700 26738 26739 Remove radial-gradient test from XFAIL list 26740 26741 This test has not been failing since the fix in: 26742 26743 772edc9133d41dfd667ae5915dfa6ace0bcbfd0d 26744 26745 So get rid of the '1 unexpected passes' complaint. 26746 26747 test/Makefile.am | 1 - 26748 test/radial-gradient.c | 3 +-- 26749 2 files changed, 1 insertion(+), 3 deletions(-) 26750 26751commit e803e2e69ba02a1db316c97eb9a8d386709380e2 26752Author: Behdad Esfahbod <behdad@behdad.org> 26753AuthorDate: Wed Mar 14 17:23:57 2007 -0400 26754Commit: Behdad Esfahbod <behdad@behdad.org> 26755CommitDate: Wed Mar 14 17:24:54 2007 -0400 26756 26757 [cairo-pattern] Add a cache of two color stops to cairo_gradient_pattern_t 26758 26759 Most of gradients have only two color stops. This avoids 26760 calling malloc() for those cases. 26761 26762 src/cairo-pattern.c | 25 +++++++++++++++++++++---- 26763 src/cairoint.h | 1 + 26764 2 files changed, 22 insertions(+), 4 deletions(-) 26765 26766commit 4514fdca1ba0f3922c2797744f4b0d42d37f8b42 26767Author: Behdad Esfahbod <behdad@behdad.org> 26768AuthorDate: Tue Mar 13 20:49:52 2007 -0400 26769Commit: Behdad Esfahbod <behdad@behdad.org> 26770CommitDate: Wed Mar 14 17:24:54 2007 -0400 26771 26772 [cairo-pattern] Grow color-stops array exponentially 26773 26774 src/cairo-pattern.c | 61 +++++++++++++++++++++++++++++++++++++---------------- 26775 src/cairoint.h | 3 ++- 26776 2 files changed, 45 insertions(+), 19 deletions(-) 26777 26778commit e878f2259b2512f0411d698bf078fe91b7373246 26779Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 26780AuthorDate: Wed Mar 14 11:42:41 2007 +0100 26781Commit: Mathias Hasselmann <mathias.hasselmann@gmx.de> 26782CommitDate: Wed Mar 14 21:47:39 2007 +0100 26783 26784 Include pixman/src in cairo-perf hash 26785 26786 perf/cairo-perf-diff | 3 ++- 26787 1 file changed, 2 insertions(+), 1 deletion(-) 26788 26789commit 1a3f5df5ff4a80bb199e296491e3a5c9887fd4f7 26790Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 26791AuthorDate: Wed Mar 14 21:42:50 2007 +0100 26792Commit: Mathias Hasselmann <mathias.hasselmann@gmx.de> 26793CommitDate: Wed Mar 14 21:42:50 2007 +0100 26794 26795 Add index.html to .gitignore 26796 26797 perf/.gitignore | 1 + 26798 1 file changed, 1 insertion(+) 26799 26800commit c40be43aef735deba7605fde14300b7810701011 26801Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 26802AuthorDate: Wed Mar 14 21:41:40 2007 +0100 26803Commit: Mathias Hasselmann <mathias.hasselmann@gmx.de> 26804CommitDate: Wed Mar 14 21:41:40 2007 +0100 26805 26806 Transform the output of cairo-perf-diff into HTML 26807 26808 perf/Makefile.am | 8 ++++- 26809 perf/cairo-perf-diff | 20 +++++++++--- 26810 perf/make-html.py | 89 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 26811 3 files changed, 111 insertions(+), 6 deletions(-) 26812 26813commit f1dd48475a34a038ebdb6426b04fc3728a0f0782 26814Author: Mathias Hasselmann <mathias.hasselmann@gmx.de> 26815AuthorDate: Wed Mar 14 21:18:09 2007 +0100 26816Commit: Mathias Hasselmann <mathias.hasselmann@gmx.de> 26817CommitDate: Wed Mar 14 21:18:09 2007 +0100 26818 26819 Improve CPU utilization when building cairo-perf 26820 26821 perf/cairo-perf-diff | 11 +++++++++++ 26822 1 file changed, 11 insertions(+) 26823 26824commit a7595c1295ba1a58b452b1df31d02776e5c17c0f 26825Author: Behdad Esfahbod <behdad@behdad.org> 26826AuthorDate: Tue Mar 13 17:21:19 2007 -0400 26827Commit: Behdad Esfahbod <behdad@behdad.org> 26828CommitDate: Tue Mar 13 17:21:19 2007 -0400 26829 26830 [Makefile.am] Do not distribute cairo-features.h, Ouch! 26831 26832 We were accidentally doing that by not marking it noinst. 26833 Moreover, no need to mark it as BUILD_SOURCES, since it's 26834 created by configure, not make. 26835 26836 src/Makefile.am | 6 +++--- 26837 1 file changed, 3 insertions(+), 3 deletions(-) 26838 26839commit f3c8d82d6d6a759364c4228d9b0badf846debcea 26840Author: Behdad Esfahbod <behdad@behdad.org> 26841AuthorDate: Tue Mar 13 16:51:34 2007 -0400 26842Commit: Behdad Esfahbod <behdad@behdad.org> 26843CommitDate: Tue Mar 13 16:51:34 2007 -0400 26844 26845 [test] If backends are limited and all untested, pass the test 26846 This is necessary to ensure that limiting backends using 26847 CAIRO_TEST_TARGET does not increase the number of tests failing, 26848 which is a desirable invariant. 26849 26850 test/cairo-test.c | 44 +++++++++++++++++++++++++++++--------------- 26851 1 file changed, 29 insertions(+), 15 deletions(-) 26852 26853commit 30b5f1baa8cbd01ac0a3ff376e294775b600b4e4 26854Author: Behdad Esfahbod <behdad@behdad.org> 26855AuthorDate: Tue Mar 13 16:50:10 2007 -0400 26856Commit: Behdad Esfahbod <behdad@behdad.org> 26857CommitDate: Tue Mar 13 16:50:10 2007 -0400 26858 26859 [test] In pattern-getters test, log what went wrong 26860 26861 test/pattern-getters.c | 14 +++++++++++--- 26862 1 file changed, 11 insertions(+), 3 deletions(-) 26863 26864commit 9267cb042418250614db83bd3b2dcb0e7615af79 26865Author: Behdad Esfahbod <behdad@behdad.org> 26866AuthorDate: Tue Mar 13 16:49:42 2007 -0400 26867Commit: Behdad Esfahbod <behdad@behdad.org> 26868CommitDate: Tue Mar 13 16:49:42 2007 -0400 26869 26870 [cairo-pattern] Use _cairo_color_double_to_short() to fix color conversion 26871 26872 src/cairo-pattern.c | 8 ++++---- 26873 1 file changed, 4 insertions(+), 4 deletions(-) 26874 26875commit 60502ba3481ea751df6f379e1c38850172826695 26876Author: Behdad Esfahbod <behdad@behdad.org> 26877AuthorDate: Tue Mar 13 16:13:35 2007 -0400 26878Commit: Behdad Esfahbod <behdad@behdad.org> 26879CommitDate: Tue Mar 13 16:13:35 2007 -0400 26880 26881 [cairo-color] Add cairo-private _cairo_color_double_to_short() 26882 26883 src/cairo-color.c | 11 ++++++----- 26884 src/cairoint.h | 3 +++ 26885 2 files changed, 9 insertions(+), 5 deletions(-) 26886 26887commit 956fdfbb62ac82da1e6fbd467c50e449ec621937 26888Author: Behdad Esfahbod <behdad@behdad.org> 26889AuthorDate: Tue Mar 13 06:30:11 2007 -0400 26890Commit: Behdad Esfahbod <behdad@behdad.org> 26891CommitDate: Tue Mar 13 06:30:11 2007 -0400 26892 26893 [cairo-pattern] Fix color conversion from short to double 26894 We should divide by 65535.0, not 65536.0. 26895 26896 src/cairo-pattern.c | 8 ++++---- 26897 1 file changed, 4 insertions(+), 4 deletions(-) 26898 26899commit 20304908626f0af40aeda145b2967a40151728c5 26900Author: Behdad Esfahbod <behdad@behdad.org> 26901AuthorDate: Tue Mar 13 06:20:21 2007 -0400 26902Commit: Behdad Esfahbod <behdad@behdad.org> 26903CommitDate: Tue Mar 13 06:20:21 2007 -0400 26904 26905 [cairo-pattern] Add XXX note 26906 26907 src/cairo-pattern.c | 1 + 26908 1 file changed, 1 insertion(+) 26909 26910commit deed0f473400bc2e91dde8bad2537d499a5941ea 26911Author: Behdad Esfahbod <behdad@behdad.org> 26912AuthorDate: Tue Mar 13 06:09:09 2007 -0400 26913Commit: Behdad Esfahbod <behdad@behdad.org> 26914CommitDate: Tue Mar 13 06:09:09 2007 -0400 26915 26916 [polygon,spline,traps] Avoid free(NULL) 26917 26918 src/cairo-polygon.c | 2 +- 26919 src/cairo-spline.c | 2 +- 26920 src/cairo-traps.c | 2 +- 26921 3 files changed, 3 insertions(+), 3 deletions(-) 26922 26923commit b706bd9b38d505d2b09e932a8f362fac76ef64de 26924Author: Behdad Esfahbod <behdad@behdad.org> 26925AuthorDate: Tue Mar 13 06:07:03 2007 -0400 26926Commit: Behdad Esfahbod <behdad@behdad.org> 26927CommitDate: Tue Mar 13 06:07:03 2007 -0400 26928 26929 [cairo-polygon] Add a cache of eight edges to cairo_polygon_t 26930 26931 Many, if not most, of polygons have very few edges. This avoids 26932 calling malloc() for those cases. 26933 26934 src/cairo-polygon.c | 30 +++++++++++++++++++++++------- 26935 src/cairoint.h | 1 + 26936 2 files changed, 24 insertions(+), 7 deletions(-) 26937 26938commit d8165d5424718404946c3a72d59396fc604d1bce 26939Author: Behdad Esfahbod <behdad@behdad.org> 26940AuthorDate: Tue Mar 13 05:59:33 2007 -0400 26941Commit: Behdad Esfahbod <behdad@behdad.org> 26942CommitDate: Tue Mar 13 05:59:33 2007 -0400 26943 26944 [cairo-spline] Fix typo in comment 26945 26946 src/cairo-spline.c | 2 +- 26947 1 file changed, 1 insertion(+), 1 deletion(-) 26948 26949commit cca7e3fec3a3ec68f812690aa7efafa7dc237849 26950Author: Behdad Esfahbod <behdad@behdad.org> 26951AuthorDate: Tue Mar 13 05:56:38 2007 -0400 26952Commit: Behdad Esfahbod <behdad@behdad.org> 26953CommitDate: Tue Mar 13 05:56:38 2007 -0400 26954 26955 [cairo_polygon_t] Change has_current_point from int to cairo_bool_t 26956 26957 src/cairo-polygon.c | 8 ++++---- 26958 src/cairoint.h | 2 +- 26959 2 files changed, 5 insertions(+), 5 deletions(-) 26960 26961commit 81e15a454b188aa8dd03eb599d0fb4af834695f1 26962Author: Behdad Esfahbod <behdad@behdad.org> 26963AuthorDate: Tue Mar 13 05:55:45 2007 -0400 26964Commit: Behdad Esfahbod <behdad@behdad.org> 26965CommitDate: Tue Mar 13 05:55:45 2007 -0400 26966 26967 [cairo_polygon_t] Remove unused member 'closed' 26968 26969 src/cairoint.h | 2 -- 26970 1 file changed, 2 deletions(-) 26971 26972commit 2bf4ce389d05e07698e03374c3d05436f5d2b2e4 26973Author: Behdad Esfahbod <behdad@behdad.org> 26974AuthorDate: Tue Mar 13 05:53:13 2007 -0400 26975Commit: Behdad Esfahbod <behdad@behdad.org> 26976CommitDate: Tue Mar 13 05:53:13 2007 -0400 26977 26978 [cairo_polygon_t] Reorder struct members for clarity 26979 26980 src/cairoint.h | 8 ++++---- 26981 1 file changed, 4 insertions(+), 4 deletions(-) 26982 26983commit 3ce84390de8be69f369a4da80c3039b716ebb0e4 26984Author: Behdad Esfahbod <behdad@behdad.org> 26985AuthorDate: Tue Mar 13 05:51:39 2007 -0400 26986Commit: Behdad Esfahbod <behdad@behdad.org> 26987CommitDate: Tue Mar 13 05:51:39 2007 -0400 26988 26989 [cairo-polygon] Clean-up realloc algorithm for clarity 26990 26991 src/cairo-polygon.c | 18 +++++++----------- 26992 1 file changed, 7 insertions(+), 11 deletions(-) 26993 26994commit 6976ab1392e0fd07a081e6d6056510070e1d6df9 26995Author: Behdad Esfahbod <behdad@behdad.org> 26996AuthorDate: Fri Mar 9 16:23:35 2007 -0500 26997Commit: Behdad Esfahbod <behdad@behdad.org> 26998CommitDate: Tue Mar 13 05:14:20 2007 -0400 26999 27000 [cairo-slope] Make comparison stable if both vectors are zero 27001 27002 src/cairo-slope.c | 8 +++++++- 27003 1 file changed, 7 insertions(+), 1 deletion(-) 27004 27005commit 9eee167210b6cc562014652572872cf0a7ccb00e 27006Author: Behdad Esfahbod <behdad@behdad.org> 27007AuthorDate: Thu Mar 8 22:34:44 2007 -0500 27008Commit: Behdad Esfahbod <behdad@behdad.org> 27009CommitDate: Tue Mar 13 05:14:20 2007 -0400 27010 27011 [cairo-spline] Add a cache of eight points to cairo_spline_t 27012 27013 Most of the splines need not more than eight points. This avoids 27014 calling malloc() for those cases, and eight-points take only 64 bytes. 27015 27016 src/cairo-spline.c | 28 +++++++++++++++++++++++----- 27017 src/cairoint.h | 1 + 27018 2 files changed, 24 insertions(+), 5 deletions(-) 27019 27020commit 1e64ecf0758a208b469ae0a87a747b3a70c70ceb 27021Author: Behdad Esfahbod <behdad@behdad.org> 27022AuthorDate: Thu Mar 8 22:17:30 2007 -0500 27023Commit: Behdad Esfahbod <behdad@behdad.org> 27024CommitDate: Tue Mar 13 05:14:20 2007 -0400 27025 27026 [cairo-spline] Clean-up realloc algorithm for clarity 27027 27028 src/cairo-spline.c | 17 +++++++---------- 27029 1 file changed, 7 insertions(+), 10 deletions(-) 27030 27031commit cee687a33fb46b68d39bbfa64c44f0b28e10a9ee 27032Author: Behdad Esfahbod <behdad@behdad.org> 27033AuthorDate: Thu Mar 8 22:19:49 2007 -0500 27034Commit: Behdad Esfahbod <behdad@behdad.org> 27035CommitDate: Tue Mar 13 05:14:20 2007 -0400 27036 27037 [cairo_traps_t] Reorder struct members for clarity 27038 27039 src/cairoint.h | 6 +++--- 27040 1 file changed, 3 insertions(+), 3 deletions(-) 27041 27042commit 24aec99ffb9abce659146ea6ecbfb92856355855 27043Author: Behdad Esfahbod <behdad@behdad.org> 27044AuthorDate: Thu Mar 8 20:32:36 2007 -0500 27045Commit: Behdad Esfahbod <behdad@behdad.org> 27046CommitDate: Tue Mar 13 05:14:19 2007 -0400 27047 27048 [cairo-traps] Add a cache of one trapezoid to cairo_traps_t 27049 27050 Seems like half the time, we just need one trap. This avoids 27051 calling malloc() for those cases. 27052 27053 src/cairo-traps.c | 30 +++++++++++++++++++++++------- 27054 src/cairoint.h | 2 ++ 27055 2 files changed, 25 insertions(+), 7 deletions(-) 27056 27057commit 4737416c6e7829ec21230103a1b993d2bd08cc0e 27058Author: Behdad Esfahbod <behdad@behdad.org> 27059AuthorDate: Thu Mar 8 20:05:13 2007 -0500 27060Commit: Behdad Esfahbod <behdad@behdad.org> 27061CommitDate: Tue Mar 13 05:14:19 2007 -0400 27062 27063 [cairo-traps] Clean-up realloc algorithm for clarity 27064 27065 src/cairo-traps.c | 21 +++++++++------------ 27066 1 file changed, 9 insertions(+), 12 deletions(-) 27067 27068commit a9d8cb3e8aceb5831dfb3920df1502bf3b9450a6 27069Author: Behdad Esfahbod <behdad@behdad.org> 27070AuthorDate: Thu Mar 8 19:34:43 2007 -0500 27071Commit: Behdad Esfahbod <behdad@behdad.org> 27072CommitDate: Tue Mar 13 05:14:19 2007 -0400 27073 27074 [cairo-traps] Use INT32_MIN/MAX instead of INT16_MIN/MAX << 16 27075 27076 src/cairo-traps.c | 4 ++-- 27077 1 file changed, 2 insertions(+), 2 deletions(-) 27078 27079commit 5d28bf605fee84520e82818dd35cae8899ecc2ba 27080Author: Behdad Esfahbod <behdad@behdad.org> 27081AuthorDate: Thu Mar 8 19:22:57 2007 -0500 27082Commit: Behdad Esfahbod <behdad@behdad.org> 27083CommitDate: Tue Mar 13 05:14:19 2007 -0400 27084 27085 [test] Make pdiff if necessary 27086 27087 test/Makefile.am | 3 +++ 27088 1 file changed, 3 insertions(+) 27089 27090commit e765ac745e0438296d2c852fd8231bd8f1fff034 27091Author: Behdad Esfahbod <behdad@behdad.org> 27092AuthorDate: Thu Mar 8 18:13:55 2007 -0500 27093Commit: Behdad Esfahbod <behdad@behdad.org> 27094CommitDate: Tue Mar 13 05:14:19 2007 -0400 27095 27096 [skiplist] Prefix symbols with _cairo 27097 27098 src/cairo-bentley-ottmann.c | 24 ++++++++++++------------ 27099 src/cairo-skiplist-private.h | 22 +++++++++++----------- 27100 src/cairo-skiplist.c | 20 ++++++++++---------- 27101 3 files changed, 33 insertions(+), 33 deletions(-) 27102 27103commit cd78da36f663b99c67d50dcd692cd7b67677c82a 27104Author: Behdad Esfahbod <behdad@behdad.org> 27105AuthorDate: Thu Mar 8 18:08:37 2007 -0500 27106Commit: Behdad Esfahbod <behdad@behdad.org> 27107CommitDate: Tue Mar 13 05:14:19 2007 -0400 27108 27109 [test-surfaces] Prefix public symbols with _cairo 27110 27111 boilerplate/cairo-boilerplate.c | 6 +++--- 27112 src/test-fallback-surface.c | 8 ++++---- 27113 src/test-fallback-surface.h | 2 +- 27114 src/test-meta-surface.c | 2 +- 27115 src/test-meta-surface.h | 2 +- 27116 src/test-paginated-surface.c | 2 +- 27117 src/test-paginated-surface.h | 2 +- 27118 7 files changed, 12 insertions(+), 12 deletions(-) 27119 27120commit 8997b3a023b0edb8877675ce520fbb883d6fa188 27121Author: Behdad Esfahbod <behdad@behdad.org> 27122AuthorDate: Thu Mar 8 17:54:00 2007 -0500 27123Commit: Behdad Esfahbod <behdad@behdad.org> 27124CommitDate: Tue Mar 13 05:14:19 2007 -0400 27125 27126 [skiplist] Move static variable out of function 27127 27128 Part of my secrect plan to make cairo compilable with: 27129 27130 #define static 27131 27132 Useful for some weird debugging purposes. 27133 27134 src/cairo-skiplist.c | 15 ++++++++------- 27135 1 file changed, 8 insertions(+), 7 deletions(-) 27136 27137commit d40126f5aba481e4f4d9582cb5c37478f8ef37e7 27138Author: Behdad Esfahbod <behdad@behdad.org> 27139AuthorDate: Thu Mar 8 17:47:33 2007 -0500 27140Commit: Behdad Esfahbod <behdad@behdad.org> 27141CommitDate: Tue Mar 13 05:14:19 2007 -0400 27142 27143 [cairo_t] Embed a gstate into cairo_t 27144 27145 So we don't have to malloc the first gstate. 27146 27147 src/cairo-gstate.c | 44 ++------------------------------------------ 27148 src/cairo-private.h | 1 + 27149 src/cairo.c | 32 ++++++++++++++------------------ 27150 src/cairoint.h | 10 +++++++--- 27151 4 files changed, 24 insertions(+), 63 deletions(-) 27152 27153commit 01f9ee39feb6ca48b9e07fdec62d8ab1b94ab75d 27154Author: Behdad Esfahbod <behdad@behdad.org> 27155AuthorDate: Thu Mar 8 17:42:23 2007 -0500 27156Commit: Behdad Esfahbod <behdad@behdad.org> 27157CommitDate: Tue Mar 13 05:14:19 2007 -0400 27158 27159 [cairo-clip] Make _cairo_clip_init tolerate NULL target 27160 27161 (needed for upcoming patches.) 27162 27163 src/cairo-clip.c | 5 ++++- 27164 1 file changed, 4 insertions(+), 1 deletion(-) 27165 27166commit bc8987068d1849cf7c16c38132fcc3c8d3b4e12e 27167Author: Behdad Esfahbod <behdad@behdad.org> 27168AuthorDate: Thu Mar 8 17:15:35 2007 -0500 27169Commit: Behdad Esfahbod <behdad@behdad.org> 27170CommitDate: Tue Mar 13 05:14:19 2007 -0400 27171 27172 [cairo_t] Make path an array of size one 27173 27174 This is more natural since cr->path can be used as if it was a pointer. 27175 This means, for example, if we move on to making it a pointer, most of 27176 the code using it does not need any change. So we get some level of 27177 encapsulation of implementation details, if you prefer the terminology :). 27178 27179 src/cairo-private.h | 2 +- 27180 src/cairo.c | 52 ++++++++++++++++++++++++++-------------------------- 27181 2 files changed, 27 insertions(+), 27 deletions(-) 27182 27183commit 74e6a24e98baf70284b65d5f4ed41bdf7449d72d 27184Author: Behdad Esfahbod <behdad@behdad.org> 27185AuthorDate: Thu Mar 8 17:04:43 2007 -0500 27186Commit: Behdad Esfahbod <behdad@behdad.org> 27187CommitDate: Tue Mar 13 05:14:19 2007 -0400 27188 27189 [Quartz] Don't include cairo-private.h 27190 27191 src/cairo-quartz-surface.c | 1 - 27192 1 file changed, 1 deletion(-) 27193 27194commit 6bc543a0ebe4076da31bad4d3ccca4d713948587 27195Author: Behdad Esfahbod <behdad@behdad.org> 27196AuthorDate: Thu Mar 8 16:58:18 2007 -0500 27197Commit: Behdad Esfahbod <behdad@behdad.org> 27198CommitDate: Tue Mar 13 05:14:18 2007 -0400 27199 27200 [cairo_t] Move gstate pointer before cairo_path_fixed_t for better cache behavior 27201 27202 src/cairo-private.h | 4 ++-- 27203 src/cairo.c | 4 ++-- 27204 2 files changed, 4 insertions(+), 4 deletions(-) 27205 27206commit 85aff353ca38e607599282bc955e467df82fa01b 27207Author: Behdad Esfahbod <behdad@behdad.org> 27208AuthorDate: Thu Mar 8 16:52:09 2007 -0500 27209Commit: Behdad Esfahbod <behdad@behdad.org> 27210CommitDate: Tue Mar 13 05:14:18 2007 -0400 27211 27212 [cairo-path-fixed] Fine-tune size of buffer 27213 27214 such that cairo_path_fixed_t fits in 512 bytes. 27215 27216 src/cairo-path-fixed-private.h | 10 ++++++---- 27217 src/cairo.c | 4 ++-- 27218 2 files changed, 8 insertions(+), 6 deletions(-) 27219 27220commit 1bd073a1a2951bbb09fdab6637baae0172a223f0 27221Author: Behdad Esfahbod <behdad@behdad.org> 27222AuthorDate: Thu Mar 8 16:23:49 2007 -0500 27223Commit: Behdad Esfahbod <behdad@behdad.org> 27224CommitDate: Tue Mar 13 05:14:18 2007 -0400 27225 27226 [cairo-path-fixed] Merge op and arg bufs 27227 27228 This means, we have to malloc only one buffer, not two. Worst case 27229 is that one always draws curves, which fills the arg (point) buffer 27230 six times faster than op buffer. But that's not a big deal since 27231 each op takes 1 byte, while each point takes 8 bytes. So op space 27232 is cheap to spare, so to speak (about 10% memory waste at worst). 27233 27234 src/cairo-path-fill.c | 51 ++++--- 27235 src/cairo-path-fixed-private.h | 22 ++- 27236 src/cairo-path-fixed.c | 313 ++++++++++++++--------------------------- 27237 src/cairo.c | 3 +- 27238 4 files changed, 141 insertions(+), 248 deletions(-) 27239 27240commit 5750d669af24fe1d2707326b9d74dfbb18adf636 27241Author: Behdad Esfahbod <behdad@behdad.org> 27242AuthorDate: Thu Mar 8 14:30:10 2007 -0500 27243Commit: Behdad Esfahbod <behdad@behdad.org> 27244CommitDate: Tue Mar 13 05:14:18 2007 -0400 27245 27246 [cairo-path-fixed] Avoid malloc for small paths 27247 27248 We do this by including an initial op and arg buf in cairo_path_fixed_t, 27249 so for small paths we don't have to alloc those buffers. 27250 27251 The way this is done is a bit unusual. Specifically, using an array of 27252 length one instead of a normal member: 27253 27254 - cairo_path_op_buf_t *op_buf_head; 27255 + cairo_path_op_buf_t op_buf_head[1]; 27256 27257 Has the advantage that read-only use of the buffers does not need any 27258 change as arrays act like pointers syntactically. All manipulation code 27259 however needs to be updates, which the patch supposed does. Still, there 27260 seems to be bugs remaining as cairo-perf quits with a Bad X Request error 27261 with this patch. 27262 27263 src/cairo-path-fixed-private.h | 4 +-- 27264 src/cairo-path-fixed.c | 66 ++++++++++++++++++++++++------------------ 27265 src/cairo.c | 4 +-- 27266 3 files changed, 42 insertions(+), 32 deletions(-) 27267 27268commit 994dd1a134484d7a1ee246906f21f02d916014a8 27269Author: Behdad Esfahbod <behdad@behdad.org> 27270AuthorDate: Tue Mar 13 04:56:54 2007 -0400 27271Commit: Behdad Esfahbod <behdad@behdad.org> 27272CommitDate: Tue Mar 13 05:14:18 2007 -0400 27273 27274 [boilerplate] Prefer top_builddir to top_srcdir 27275 27276 This may fix some build problems the Ubuntu guys are experiencing 27277 with out-of-tree builds. 27278 27279 boilerplate/Makefile.am | 2 +- 27280 1 file changed, 1 insertion(+), 1 deletion(-) 27281 27282commit 2894ed19a3acd955a5d0e2f5a231a6f1eee8ac06 27283Author: Behdad Esfahbod <behdad@behdad.org> 27284AuthorDate: Tue Mar 13 04:55:18 2007 -0400 27285Commit: Behdad Esfahbod <behdad@behdad.org> 27286CommitDate: Tue Mar 13 05:14:18 2007 -0400 27287 27288 [directfb,os2] #error if the backend is not compiled in, like others do 27289 27290 src/cairo-directfb.h | 3 +++ 27291 src/cairo-os2.h | 2 ++ 27292 2 files changed, 5 insertions(+) 27293 27294commit 073d06d4661feb16b15ece5282a5134e3f05d8e7 27295Author: Adrian Johnson <ajohnson@redneon.com> 27296AuthorDate: Tue Mar 13 18:45:38 2007 +1030 27297Commit: Adrian Johnson <ajohnson@redneon.com> 27298CommitDate: Tue Mar 13 18:45:38 2007 +1030 27299 27300 Fix incorrect file permission in previous commit 27301 27302 src/cairo-truetype-subset.c | 0 27303 1 file changed, 0 insertions(+), 0 deletions(-) 27304 27305commit a944f42b3d58825e8def292001e3738651b7584a 27306Author: Adrian Johnson <ajohnson@redneon.com> 27307AuthorDate: Tue Mar 13 18:35:59 2007 +1030 27308Commit: Adrian Johnson <ajohnson@redneon.com> 27309CommitDate: Tue Mar 13 18:35:59 2007 +1030 27310 27311 Fix buffer overflow warning 27312 27313 src/cairo-truetype-subset.c | 2 +- 27314 1 file changed, 1 insertion(+), 1 deletion(-) 27315 27316commit 0f78eb8ccf60c60a4b66441958a7498dc9f7fa47 27317Author: Carl Worth <cworth@cworth.org> 27318AuthorDate: Mon Mar 12 16:24:58 2007 -0700 27319Commit: Carl Worth <cworth@cworth.org> 27320CommitDate: Mon Mar 12 16:24:58 2007 -0700 27321 27322 perf/README: Add notes on using cairo-perf-diff 27323 27324 perf/README | 105 +++++++++++++++++++++++++++++++++++++++++++++++++++++------- 27325 1 file changed, 93 insertions(+), 12 deletions(-) 27326 27327commit 14cab8b020f429d346561d8ab70b154b2e3f0668 27328Author: Chris Wilson <chris@chris-wilson.co.uk> 27329AuthorDate: Sun Mar 11 21:55:19 2007 +0000 27330Commit: Carl Worth <cworth@cworth.org> 27331CommitDate: Mon Mar 12 14:48:11 2007 -0700 27332 27333 Correct an off-by-one in the reflection of the convolution index. 27334 27335 Currently the convolution code uses the formula 2*(N-1)-n to reflect the index 27336 n when n is greater than or equal to N. 27337 This is wrong as n=N -> 2*(N-1)-N = N-2 instead of N-1. 27338 27339 Furthermore when the image is small, e.g. at the highest levels of the 27340 pyramid, this causes the code to index before the start of the array and 27341 causes valgrind to issue a warning. 27342 27343 test/pdiff/lpyramid.c | 4 ++-- 27344 1 file changed, 2 insertions(+), 2 deletions(-) 27345 27346commit 789aada06b52e068662f0ac0f7a424c51bcba510 27347Author: Chris Wilson <chris@chris-wilson.co.uk> 27348AuthorDate: Sun Mar 11 20:55:26 2007 +0000 27349Commit: Carl Worth <cworth@cworth.org> 27350CommitDate: Mon Mar 12 14:48:05 2007 -0700 27351 27352 Avoid the struct copy when source and destination are the same. 27353 27354 On some architectures, gcc will emit a memcpy for structure copies which will 27355 produce a valgrind warning when the source and destination pointers are the 27356 same. Workaround this issue by explicitly checking the source and destination 27357 for inequality before doing the structure assignment. 27358 27359 src/cairo-surface.c | 4 ++-- 27360 1 file changed, 2 insertions(+), 2 deletions(-) 27361 27362commit ef284a2d6bbeae8711226f1f1f2cf4936f6937eb 27363Author: Carl Worth <cworth@cworth.org> 27364AuthorDate: Fri Mar 9 13:36:03 2007 -0800 27365Commit: Carl Worth <cworth@cworth.org> 27366CommitDate: Fri Mar 9 13:36:03 2007 -0800 27367 27368 Fix a LOCK vs. UNLOCK typo, (yes, I'm that stupid). 27369 27370 Thanks to M.Drochner@fz-juelich.de for noticing the bug. 27371 27372 This fixes bug #10235: 27373 27374 locking bug in cairo_ft_scaled_font_unlock_face() 27375 http://bugs.freedesktop.org/show_bug.cgi?id=10235 27376 27377 src/cairo-ft-font.c | 2 +- 27378 1 file changed, 1 insertion(+), 1 deletion(-) 27379 27380commit 772edc9133d41dfd667ae5915dfa6ace0bcbfd0d 27381Author: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 27382AuthorDate: Thu Mar 8 21:32:59 2007 +0100 27383Commit: Emmanuel Pacaud <emmanuel.pacaud@free.fr> 27384CommitDate: Thu Mar 8 21:32:59 2007 +0100 27385 27386 SVG: fix a radial gradient failure when using CAIRO_EXTEND_REFLECT. 27387 27388 Assume from the beginning we're using a circle with a radius equal to 27389 2 * ( r1 - r0 ) when emulating CAIRO_EXTEND_REFLECT. 27390 27391 src/cairo-svg-surface.c | 14 +++++++------- 27392 1 file changed, 7 insertions(+), 7 deletions(-) 27393 27394commit c07867c545d7ab7c4a104944768f8a5b69ef9596 27395Author: Behdad Esfahbod <behdad@behdad.org> 27396AuthorDate: Wed Mar 7 15:55:02 2007 -0500 27397Commit: Behdad Esfahbod <behdad@behdad.org> 27398CommitDate: Wed Mar 7 16:02:09 2007 -0500 27399 27400 [glitz] Mark some constant static structures as const 27401 27402 src/cairo-glitz-surface.c | 8 ++++---- 27403 1 file changed, 4 insertions(+), 4 deletions(-) 27404 27405commit 88632575bfae348a63e3e6228d5ceaa64715ae5f 27406Author: Behdad Esfahbod <behdad@behdad.org> 27407AuthorDate: Wed Mar 7 15:54:20 2007 -0500 27408Commit: Behdad Esfahbod <behdad@behdad.org> 27409CommitDate: Wed Mar 7 16:02:09 2007 -0500 27410 27411 [PS/PDF/SVG] Rename internal symbols to have _cairo_*_surface prefix 27412 27413 src/cairo-pdf-surface.c | 74 +++++++++++++------------- 27414 src/cairo-ps-surface.c | 52 +++++++++--------- 27415 src/cairo-svg-surface.c | 136 ++++++++++++++++++++++++------------------------ 27416 3 files changed, 131 insertions(+), 131 deletions(-) 27417 27418commit 2cc1c73705d70f834b43996f70080860ac66e57d 27419Author: Behdad Esfahbod <behdad@behdad.org> 27420AuthorDate: Wed Mar 7 15:53:27 2007 -0500 27421Commit: Behdad Esfahbod <behdad@behdad.org> 27422CommitDate: Wed Mar 7 16:02:09 2007 -0500 27423 27424 [cairoint] Move endian-conversion routines into cairoint.h 27425 27426 src/cairo-cff-subset.c | 28 ---------------------------- 27427 src/cairo-truetype-subset.c | 37 ------------------------------------- 27428 src/cairoint.h | 35 +++++++++++++++++++++++++++++++++++ 27429 3 files changed, 35 insertions(+), 65 deletions(-) 27430 27431commit 62e864e73cd1136b3c0e889dca43a1c0cc648b21 27432Author: Behdad Esfahbod <behdad@behdad.org> 27433AuthorDate: Wed Mar 7 15:51:35 2007 -0500 27434Commit: Behdad Esfahbod <behdad@behdad.org> 27435CommitDate: Wed Mar 7 16:02:08 2007 -0500 27436 27437 [Type1] Add cairo-type1-private.h that Type1 fallback and subset code share 27438 27439 doc/public/Headers.mk | 1 + 27440 src/Makefile.am | 1 + 27441 src/cairo-type1-fallback.c | 14 +++++--------- 27442 src/cairo-type1-private.h | 45 +++++++++++++++++++++++++++++++++++++++++++++ 27443 src/cairo-type1-subset.c | 18 +++++++----------- 27444 5 files changed, 59 insertions(+), 20 deletions(-) 27445 27446commit ef9799d596600aea334707d2ff00fcca82280d83 27447Author: Behdad Esfahbod <behdad@behdad.org> 27448AuthorDate: Wed Mar 7 15:49:51 2007 -0500 27449Commit: Behdad Esfahbod <behdad@behdad.org> 27450CommitDate: Wed Mar 7 16:02:08 2007 -0500 27451 27452 [cosmetic] Remove static var from testing code in bentley-ottman. 27453 27454 src/cairo-bentley-ottmann.c | 2 +- 27455 1 file changed, 1 insertion(+), 1 deletion(-) 27456 27457commit 92d331a23407c79d83bf0b2a7d003ba3525641d4 27458Author: Chris Wilson <chris@chris-wilson.co.uk> 27459AuthorDate: Wed Mar 7 13:31:54 2007 +0000 27460Commit: Carl Worth <cworth@cworth.org> 27461CommitDate: Wed Mar 7 09:25:12 2007 -0800 27462 27463 Fix up the trivial leaks found by valgrind. 27464 27465 perf/cairo-perf.c | 4 ++++ 27466 1 file changed, 4 insertions(+) 27467 27468commit 7d972086d6ea6a6bfa47b5fb47f7a21be61e10e8 27469Author: Chris Wilson <chris@chris-wilson.co.uk> 27470AuthorDate: Wed Mar 7 12:19:44 2007 +0000 27471Commit: Carl Worth <cworth@cworth.org> 27472CommitDate: Wed Mar 7 09:24:53 2007 -0800 27473 27474 Add valgrind/callgrind targets to Makefile. 27475 27476 perf/Makefile.am | 20 ++++++++++++++++++++ 27477 1 file changed, 20 insertions(+) 27478 27479commit 734d32ed7a50284fcc8984af67734bb306735691 27480Author: Emmanuel Pacaud <emmanuel.pacaud@lapp.in2p3.fr> 27481AuthorDate: Tue Mar 6 15:49:53 2007 -0800 27482Commit: Carl Worth <cworth@cworth.org> 27483CommitDate: Tue Mar 6 15:50:11 2007 -0800 27484 27485 SVG: Fix CAIRO_EXTEND_REFLECT for radial gradients. 27486 27487 This patch also handles cases where r0 > r1, (one circle must still 27488 be wholly contained within the other as that's all SVG supports). 27489 27490 This patch should also prevent a crash when r0 == r1. 27491 27492 src/cairo-svg-surface.c | 337 +++++++++++++++++++++++++++++++++++++++--------- 27493 1 file changed, 277 insertions(+), 60 deletions(-) 27494 27495commit 32536a7b794c38ff1944b8af5e56e8962e76c311 27496Author: Brian Ewins <Brian.Ewins@gmail.com> 27497AuthorDate: Tue Mar 6 23:45:23 2007 +0000 27498Commit: Brian Ewins <Brian.Ewins@gmail.com> 27499CommitDate: Tue Mar 6 23:45:23 2007 +0000 27500 27501 [atsui] clean up warnings 27502 27503 Just tidying up warnings left behind by previous fixes. 27504 27505 src/cairo-atsui-font.c | 13 ++++++------- 27506 1 file changed, 6 insertions(+), 7 deletions(-) 27507 27508commit 9032bf4e2d3bffe84d11a771ba4072cdd8926b77 27509Author: Brian Ewins <Brian.Ewins@gmail.com> 27510AuthorDate: Tue Mar 6 23:24:33 2007 +0000 27511Commit: Brian Ewins <Brian.Ewins@gmail.com> 27512CommitDate: Tue Mar 6 23:24:33 2007 +0000 27513 27514 [quartz] rename remaining nquartz symbols to quartz. 27515 27516 Renaming any nquartz symbols and files left to quartz. 27517 27518 doc/public/Makefile.am | 1 - 27519 src/Makefile.am | 2 - 27520 src/cairo-quartz-private.h | 6 +- 27521 src/cairo-quartz-surface.c | 238 ++++++++++++++++++++++----------------------- 27522 4 files changed, 122 insertions(+), 125 deletions(-) 27523 27524commit b0d05f7421c457120b9d86a83c4935c67b217fab 27525Author: Behdad Esfahbod <behdad@behdad.org> 27526AuthorDate: Tue Mar 6 14:26:51 2007 -0500 27527Commit: Behdad Esfahbod <behdad@behdad.org> 27528CommitDate: Tue Mar 6 14:26:51 2007 -0500 27529 27530 [configure.in] Remove AM_MAINTAINER_MODE 27531 27532 Maintainer-mode is known broken behavior and discouraged. It has 27533 created headaches before when you run configure and all in a sudden 27534 editing Makefile.am's does not trigger a Makefile update... 27535 27536 configure.in | 2 -- 27537 1 file changed, 2 deletions(-) 27538 27539commit f7beb220df74fef60c102fb5cc827fb2d3962296 27540Author: Behdad Esfahbod <behdad@behdad.org> 27541AuthorDate: Tue Mar 6 10:33:09 2007 -0500 27542Commit: Behdad Esfahbod <behdad@behdad.org> 27543CommitDate: Tue Mar 6 10:33:09 2007 -0500 27544 27545 Remove extra word in docs 27546 27547 src/cairo.h | 2 +- 27548 1 file changed, 1 insertion(+), 1 deletion(-) 27549 27550commit 81b98c93b68839d20d3033170eeb5026257d52b8 27551Author: Adrian Johnson <ajohnson@redneon.com> 27552AuthorDate: Tue Mar 6 23:11:38 2007 +1030 27553Commit: Adrian Johnson <ajohnson@redneon.com> 27554CommitDate: Tue Mar 6 23:11:38 2007 +1030 27555 27556 PDF: Set page group color space to DeviceRGB 27557 27558 See http://lists.freedesktop.org/archives/cairo/2006-November/008551.html 27559 27560 src/cairo-pdf-surface.c | 9 ++++++--- 27561 1 file changed, 6 insertions(+), 3 deletions(-) 27562 27563commit 8f0ff52cf74fe4b18c46f9a62689b991645295d0 27564Author: Carl Worth <cworth@cworth.org> 27565AuthorDate: Tue Mar 6 01:39:37 2007 -0800 27566Commit: Carl Worth <cworth@cworth.org> 27567CommitDate: Tue Mar 6 01:39:37 2007 -0800 27568 27569 Increment version to 1.4.1 after making the 1.4.0 release 27570 27571 configure.in | 2 +- 27572 1 file changed, 1 insertion(+), 1 deletion(-) 27573