commit 3ad43122b21a3299dd729dc8462d6b8f7f01142d
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Tue Oct 16 09:53:18 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Fri Oct 19 13:23:16 2018 -0700

    1.16.0 release
    
    Signed-off-by: Bryce Harrington <bryce@bryceharrington.org>

 NEWS                      | 157 ++++++++++++++++++++++++++++++++++++++++++++++
 cairo-version.h           |   4 +-
 doc/public/cairo-docs.xml |   3 +
 3 files changed, 162 insertions(+), 2 deletions(-)

commit 6059f5f260935e48ad12f0865136ace63449e4bd
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Wed Oct 17 17:51:14 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Wed Oct 17 17:53:12 2018 -0700

    test: Free resources in pdf2png
    
    Patch proposed by Bofa.
    
    Fixes: https://gitlab.freedesktop.org/cairo/cairo/issues/317
    Reviewed-by: Bryce Harrington <bryce@bryceharrington.org>

 test/pdf2png.c | 2 ++
 1 file changed, 2 insertions(+)

commit 3a03c1ba4bc30492721abdb6c9ec8868663ef237
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Wed Oct 17 17:32:10 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Wed Oct 17 17:32:10 2018 -0700

    win32: Fix regression with text containing space character
    
    Converting a series of glyphs to a path triggers an out of memory error
    if there is a space glyph (bytesGlyph==0).  The regression was
    introduced by commit 19982393 in cairo-win32-font.c:107.
    
    The behavior of malloc(0) is not well defined - it can return NULL on
    some platforms, or an arbitrary (non-allocated) pointer on other
    platforms.  Commit 19982393 introduced sanity by enforcing that NULL is
    always returned in this situation, which inappropriately triggers the
    OOM check in _cairo_win32_scaled_font_init_glyph_path().  Instead,
    special case the handling for bytesGlyph==0.
    
    Patch authored by Uli Schlachter, based on fix proposed by lb90.
    
    Fixes:  https://gitlab.freedesktop.org/cairo/cairo/issues/339
    Reference:  https://gitlab.gnome.org/GNOME/pango/issues/323
    Reviewed-by: Bryce Harrington <bryce@bryceharrington.org>

 src/win32/cairo-win32-font.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 7786b8fe4e7a2c73767be3ce7ae64389d09984d9
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Tue Oct 16 10:31:48 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Wed Oct 17 17:21:03 2018 -0700

    Drop skia backend
    
    Commit 38806bc3 already disabled the backend from use, now drop the
    code.

 README                          |    6 -
 configure.ac                    |   26 -
 src/Makefile.sources            |    7 -
 src/cairo-pattern.c             |    2 +-
 src/cairo-skia-surface.cpp      | 1202 --------------------------
 src/cairo-skia.h                |   66 --
 src/cairo.h                     |    1 -
 src/skia/cairo-skia-context.cpp | 1781 ---------------------------------------
 src/skia/cairo-skia-private.h   |  127 ---
 src/skia/cairo-skia-surface.cpp |  323 -------
 10 files changed, 1 insertion(+), 3540 deletions(-)

commit f246a2144fd0de71b7f4fe7e8ad57285965d43b8
Author:     Paul Menzel <pmenzel+cairo@molgen.mpg.de>
AuthorDate: Tue Oct 16 13:46:52 2018 +0200
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Tue Oct 16 10:03:20 2018 -0700

    Use HTTPS URLs for gnome.org domains
    
    Run the command below suggested by geirha in ##sed@irc.freenode.net.
    
        git grep -l 'http://.*gnome.org' | xargs sed -i 's|http\(://\([[:alnum:].-]*\.\)\{0,1\}gnome\.org\)|https\1|g'
    
    Signed-off-by: Paul Menzel <pmenzel@molgen.mpg.de>

 NEWS                      | 6 +++---
 configure.ac              | 2 +-
 src/cairo-output-stream.c | 2 +-
 util/cairo-trace/trace.c  | 2 +-
 4 files changed, 6 insertions(+), 6 deletions(-)

commit 1c9201721d4c3ad667214cb2032e038e57395feb
Author:     Paul Menzel <pmenzel+cairo@molgen.mpg.de>
AuthorDate: Tue Oct 16 12:21:06 2018 +0200
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Tue Oct 16 10:03:07 2018 -0700

    Use HTTPS URLs for freedesktop.org domains
    
    Run the command below suggested by geirha in ##sed@irc.freenode.net.
    
        git grep -l 'http://.*freedesktop.org' | xargs sed -i 's|http\(://\([[:alnum:].-]*\.\)\{0,1\}freedesktop\.org\)|https\1|g'
    
    Signed-off-by: Paul Menzel <pmenzel@molgen.mpg.de>

 BUGS                                |   4 +-
 HACKING                             |   4 +-
 NEWS                                | 100 ++++++++++++++++++------------------
 README                              |   6 +--
 build/aclocal.pkg.m4                |   2 +-
 build/configure.ac.tools            |   2 +-
 configure.ac                        |  10 ++--
 perf/README                         |   2 +-
 src/cairo-clip-tor-scan-converter.c |   2 +-
 src/cairo-tor-scan-converter.c      |   2 +-
 src/cairo-tor22-scan-converter.c    |   2 +-
 src/cairo-xlib-private.h            |   2 +-
 test/big-trap.c                     |   2 +-
 test/clip-push-group.c              |   2 +-
 test/filter-bilinear-extents.c      |   2 +-
 test/get-path-extents.c             |   4 +-
 test/leaky-dashed-rectangle.c       |   2 +-
 test/path-stroke-twice.c            |   2 +-
 util/cairo.modules                  |   2 +-
 19 files changed, 77 insertions(+), 77 deletions(-)

commit 15ad6ca3e1ae2f34da4de1c81ac085031e1de8d1
Author:     Paul Menzel <pmenzel+cairo@molgen.mpg.de>
AuthorDate: Tue Oct 16 12:02:48 2018 +0200
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Tue Oct 16 10:03:01 2018 -0700

    Use HTTPS URLs for cairographics.org domains
    
    Run the command below suggested by geirha in ##sed@irc.freenode.net.
    
        git grep -l 'http://.*cairographics.org' | xargs sed -i 's|http\(://\([[:alnum:].-]*\.\)\{0,1\}cairographics\.org\)|https\1|g'
    
    Signed-off-by: Paul Menzel <pmenzel@molgen.mpg.de>

 BUGS                                     |  4 +--
 HACKING                                  |  8 ++---
 INSTALL                                  |  4 +--
 NEWS                                     | 50 ++++++++++++++++----------------
 README                                   | 18 ++++++------
 RELEASING                                |  8 ++---
 build/Makefile.am.releasing              |  2 +-
 configure.ac                             |  4 +--
 doc/tutorial/slides/cairo-blank.svg      |  2 +-
 doc/tutorial/slides/cairo-code.svg       |  2 +-
 doc/tutorial/slides/cairo-separator.svg  |  2 +-
 doc/tutorial/slides/cairo.svg            |  2 +-
 doc/tutorial/slides/tutorial.xml         | 12 ++++----
 doc/tutorial/src/README                  |  2 +-
 src/cairo-gl-composite.c                 |  2 +-
 src/cairo-pdf-interchange.c              |  2 +-
 src/cairo-ps-surface.c                   |  2 +-
 src/cairo.c                              |  6 ++--
 src/cairo.h                              |  2 +-
 test/api-special-cases.c                 |  2 +-
 test/culled-glyphs.c                     |  2 +-
 test/dash-infinite-loop.c                |  2 +-
 test/degenerate-arc.c                    |  2 +-
 test/degenerate-pen.c                    |  2 +-
 test/get-path-extents.c                  |  2 +-
 test/leaky-dashed-rectangle.c            |  2 +-
 test/mime-surface-api.c                  |  4 +--
 test/scale-offset-image.c                |  2 +-
 test/scale-offset-similar.c              |  2 +-
 test/surface-pattern-scale-down-extend.c |  2 +-
 30 files changed, 79 insertions(+), 79 deletions(-)

commit bf597b89288b6271f56031d5a20bfaf59f146d4c
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Tue Oct 16 09:13:23 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Tue Oct 16 09:53:00 2018 -0700

    Revert "Correctly decode Adobe CMYK JPEGs in PDF export"
    
    From further testing and investigation it appears that many PDF viewers
    already have a workaround to invert Adobe CMYK JPEGs, so our generated
    PDFs display incorrectly with those viewers due to double-inversion.
    
    Further investigation will be needed to find a better solution that
    doesn't cause regression for some PDF viewers; perhaps PDF viewers that
    lack this inversion workaround should be changed to include it.  For now
    we'll drop the patch to avoid shipping the regression in 1.16.0.
    
    This reverts commit b207a932a2d3740984319dffd58a0791580597cd.
    
    Reference: https://bugs.freedesktop.org/show_bug.cgi?id=97612
    Fixes: https://gitlab.freedesktop.org/cairo/cairo/issues/156

 src/cairo-image-info-private.h |  1 -
 src/cairo-image-info.c         | 21 ---------------------
 src/cairo-pdf-surface.c        |  2 --
 3 files changed, 24 deletions(-)

commit 868998a0f4373cef190232f5bdf817e64548023f
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Tue Oct 16 09:44:16 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Tue Oct 16 09:44:16 2018 -0700

    RELEASING: Clarify how to add the news item

 RELEASING | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 06ef6db95701f1aad2fe7109afa1457e61b48c01
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Thu Sep 20 16:28:55 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Thu Sep 20 16:28:55 2018 -0700

    Bump version for 1.15.15

 cairo-version.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d9aaea0c1e1484c632e1a6735c6ecc961c4b032b
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Wed Sep 19 14:06:21 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Thu Sep 20 13:07:03 2018 -0700

    1.15.14 release
    
    Signed-off-by: Bryce Harrington <bryce@bryceharrington.org>

 NEWS            | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 cairo-version.h |  2 +-
 2 files changed, 57 insertions(+), 1 deletion(-)

commit c1e37f4f025cebe8750764379d9e9162f5aac639
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Fri Aug 24 10:17:03 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Fri Sep 14 12:42:22 2018 -0700

    doc: Drop tmpl support
    
    Fix distcheck by dropping use of the now-obsolete gtkdoc-mktmpl.
    
    In preparation for the upcoming 1.16 release, I've made a few changes to
    get distcheck to pass.  I also updated it to run on Ubuntu 18.04, but
    found that on newer distros distcheck won't run due to missing
    gtkdoc-mktmpl, which has been deprecated upstream for some time.  The
    patch below disables everything that references it, and enables
    distcheck to finish successfully.
    
    Unfortunately, this probably regresses portions of our document
    generation, and thus will need some reimplementation work.  Anyone got
    time to investigate a better solution for this?

 build/Makefile.am.gtk-doc | 25 ++++---------------------
 doc/public/Makefile.am    |  3 ---
 2 files changed, 4 insertions(+), 24 deletions(-)

commit ad7ac7dbcae12ac26ba007ffdf1f67644cb46731
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Fri Sep 14 11:31:30 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Fri Sep 14 11:34:22 2018 -0700

    Normalize one more test image with minor gradient differences
    
    For me, with this fix, the base image test cases now pass 100%, when
    running:
    
      make test TARGETS=image FORMAT=rgba
    
    Signed-off-by: Bryce Harrington <bryce@bryceharrington.org>

 .../extended-blend-alpha-mask.argb32.ref.png         | Bin 9221 -> 10404 bytes
 test/reference/text-antialias-subpixel-vbgr.ref.png  | Bin 1075 -> 1170 bytes
 2 files changed, 0 insertions(+), 0 deletions(-)

commit 53e4775327d30014d2f1be649c745a194f2a8e87
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Fri Sep 14 10:34:24 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Fri Sep 14 11:34:22 2018 -0700

    Normalize more test reference images with minor text rendering differences
    
    The discrepancies in these tests appear to all be font rendering /
    antialiasing, probably due to algorithmic changes in Pixman.
    
    Some of these reference images were updated in Federico's recent patch,
    so the fact that they differ on my system may indicate there may be some
    system dependencies beyond just pixman, that can cause test result
    variation from person to person.  Ideally, these would be isolated and
    the tests modified to not have such dependencies.
    
    Signed-off-by: Bryce Harrington <bryce@bryceharrington.org>

 test/reference/pthread-show-text.ref.png            | Bin 37361 -> 41865 bytes
 test/reference/record-select-font-face.ref.png      | Bin 1891 -> 1972 bytes
 test/reference/record-text-transform.ref.png        | Bin 5377 -> 5446 bytes
 test/reference/record1414x-select-font-face.ref.png | Bin 2601 -> 2945 bytes
 test/reference/record1414x-text-transform.ref.png   | Bin 8395 -> 8640 bytes
 test/reference/record2x-select-font-face.ref.png    | Bin 3770 -> 4251 bytes
 test/reference/record2x-text-transform.ref.png      | Bin 13103 -> 13337 bytes
 test/reference/record90-select-font-face.ref.png    | Bin 1985 -> 2084 bytes
 test/reference/record90-text-transform.ref.png      | Bin 5631 -> 5701 bytes
 test/reference/recordflip-select-font-face.ref.png  | Bin 1811 -> 1939 bytes
 test/reference/recordflip-text-transform.ref.png    | Bin 5448 -> 5528 bytes
 .../recordflip-whole-select-font-face.ref.png       | Bin 1811 -> 1939 bytes
 .../recordflip-whole-text-transform.ref.png         | Bin 5448 -> 5528 bytes
 test/reference/smask-text.ref.png                   | Bin 1678 -> 1846 bytes
 test/reference/smask.ref.png                        | Bin 3453 -> 3457 bytes
 test/reference/text-antialias-subpixel-bgr.ref.png  | Bin 1068 -> 1118 bytes
 test/reference/text-antialias-subpixel-rgb.ref.png  | Bin 1034 -> 1104 bytes
 test/reference/text-antialias-subpixel-vrgb.ref.png | Bin 1091 -> 1182 bytes
 test/reference/text-antialias-subpixel.ref.png      | Bin 1034 -> 1104 bytes
 test/reference/text-unhinted-metrics.ref.png        | Bin 8047 -> 8431 bytes
 20 files changed, 0 insertions(+), 0 deletions(-)

commit 201791a52dab97e879e6722979cb03fbe2a89e51
Author:     Bryce Harrington <b.harrington@samsung.com>
AuthorDate: Wed Sep 5 19:12:29 2018 -0700
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Wed Sep 5 19:12:29 2018 -0700

    gstate: Minor grammar copyedit

 src/cairo-gstate.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2b1f096145d00fdeb5e0f4990408205350460130
Author:     Federico Mena Quintero <federico@gnome.org>
AuthorDate: Thu Mar 8 17:50:43 2018 -0600
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Wed Sep 5 17:00:44 2018 -0700

    Normalize test reference images with minor text rendering differences
    
    [In testing, I was able to reproduce Federico's results for most, but
    not all, of the test images.  There might be some additional
    platform-specific discrepancies that need ironed out, but this is a
    solid step forward in any case.
    
    Results for a quick run against just the image backend on my system:
    
    --bryce]
    
    Signed-off-by: Bryce Harrington <bryce@bryceharrington.org>
    Bryce Harrington <bryce@bryceharrington.org>
    Signed-off-by: Bryce Harrington <b.harrington@samsung.com>

 test/reference/clip-text.ref.png                    | Bin 912 -> 904 bytes
 test/reference/ft-text-antialias-none.ref.png       | Bin 336 -> 287 bytes
 test/reference/halo-transform.ref.png               | Bin 15265 -> 15272 bytes
 test/reference/halo.ref.png                         | Bin 8631 -> 8600 bytes
 test/reference/operator-clear.argb32.ref.png        | Bin 1061 -> 1058 bytes
 test/reference/operator-clear.rgb24.ref.png         | Bin 940 -> 947 bytes
 test/reference/operator-source.argb32.ref.png       | Bin 5619 -> 5645 bytes
 test/reference/operator-source.rgb24.ref.png        | Bin 4010 -> 4028 bytes
 test/reference/pthread-show-text.ref.png            | Bin 30199 -> 37361 bytes
 test/reference/record-select-font-face.ref.png      | Bin 1417 -> 1891 bytes
 test/reference/record-text-transform.ref.png        | Bin 5281 -> 5377 bytes
 test/reference/record1414x-select-font-face.ref.png | Bin 2018 -> 2601 bytes
 test/reference/record1414x-text-transform.ref.png   | Bin 8365 -> 8395 bytes
 test/reference/record2x-select-font-face.ref.png    | Bin 3098 -> 3770 bytes
 test/reference/record2x-text-transform.ref.png      | Bin 13072 -> 13103 bytes
 test/reference/record90-select-font-face.ref.png    | Bin 1480 -> 1985 bytes
 test/reference/record90-text-transform.ref.png      | Bin 5481 -> 5631 bytes
 test/reference/recordflip-select-font-face.ref.png  | Bin 1395 -> 1811 bytes
 test/reference/recordflip-text-transform.ref.png    | Bin 5343 -> 5448 bytes
 .../recordflip-whole-select-font-face.ref.png       | Bin 1395 -> 1811 bytes
 .../recordflip-whole-text-transform.ref.png         | Bin 5343 -> 5448 bytes
 test/reference/smask-text.ref.png                   | Bin 1661 -> 1678 bytes
 test/reference/smask.ref.png                        | Bin 3422 -> 3453 bytes
 test/reference/text-antialias-subpixel-bgr.ref.png  | Bin 1124 -> 1068 bytes
 test/reference/text-antialias-subpixel-rgb.ref.png  | Bin 1109 -> 1034 bytes
 test/reference/text-antialias-subpixel-vbgr.ref.png | Bin 1205 -> 1075 bytes
 test/reference/text-antialias-subpixel-vrgb.ref.png | Bin 1180 -> 1091 bytes
 test/reference/text-antialias-subpixel.ref.png      | Bin 1109 -> 1034 bytes
 test/reference/text-pattern.ref.png                 | Bin 3455 -> 3402 bytes
 test/reference/text-unhinted-metrics.ref.png        | Bin 4104 -> 8047 bytes
 test/reference/unbounded-operator.argb32.ref.png    | Bin 2744 -> 2786 bytes
 test/reference/unbounded-operator.rgb24.ref.png     | Bin 1308 -> 1314 bytes
 test/reference/user-font-proxy.ref.png              | Bin 16981 -> 16961 bytes
 test/reference/user-font-rescale.ref.png            | Bin 14883 -> 14875 bytes
 34 files changed, 0 insertions(+), 0 deletions(-)

commit fb24d7b737e80ed684bd8c9f4dea5e3c50d778e9
Author:     Federico Mena Quintero <federico@gnome.org>
AuthorDate: Thu Mar 8 18:23:47 2018 -0600
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Wed Sep 5 17:00:44 2018 -0700

    Normalize test images with minor gradient differences
    
    Signed-off-by: Bryce Harrington <bryce@bryceharrington.org>
    Bryce Harrington <bryce@bryceharrington.org>
    Signed-off-by: Bryce Harrington <b.harrington@samsung.com>

 test/reference/clip-operator.argb32.ref.png        | Bin 8514 -> 8507 bytes
 test/reference/clip-operator.rgb24.ref.png         | Bin 3421 -> 3417 bytes
 test/reference/coverage-rhombus.ref.png            | Bin 7053 -> 9001 bytes
 test/reference/extended-blend-alpha.argb32.ref.png | Bin 9406 -> 9638 bytes
 test/reference/extended-blend-alpha.rgb24.ref.png  | Bin 5740 -> 5517 bytes
 .../extended-blend-solid-alpha.argb32.ref.png      | Bin 9406 -> 9638 bytes
 .../extended-blend-solid-alpha.rgb24.ref.png       | Bin 5740 -> 5517 bytes
 test/reference/extended-blend-solid.rgb24.ref.png  | Bin 3784 -> 3836 bytes
 test/reference/extended-blend.rgb24.ref.png        | Bin 3784 -> 3836 bytes
 test/reference/fallback.argb32.ref.png             | Bin 4133 -> 4111 bytes
 test/reference/fallback.rgb24.ref.png              | Bin 3283 -> 3255 bytes
 .../radial-gradient-mask-source.argb32.ref.png     | Bin 145713 -> 134938 bytes
 .../radial-gradient-mask-source.rgb24.ref.png      | Bin 150945 -> 141840 bytes
 test/reference/radial-gradient-source.ref.png      | Bin 408848 -> 423689 bytes
 test/reference/radial-gradient.ref.png             | Bin 382283 -> 383391 bytes
 15 files changed, 0 insertions(+), 0 deletions(-)

commit cfc90ca91e1cd506bf6176b9db2cbcd4323bfd1a
Author:     Federico Mena Quintero <federico@gnome.org>
AuthorDate: Thu Mar 8 15:44:40 2018 -0600
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Wed Sep 5 17:00:44 2018 -0700

    Normalize extended-blend-mask.{argb32,rgb24}.ref.png
    
    I don't see how the old reference file could have been generated.
    Things I tried:
    
    * Using an old pixman (but it seems that the relevant code for Adobe
      extended blend modes has not changed?)
    
    * Using the Cairo version where the test was first introduced.
    
    * Changing the alpha value from .5 to something else.
    
    Signed-off-by: Bryce Harrington <bryce@bryceharrington.org>
    Tested-by: Bryce Harrington <bryce@bryceharrington.org>
    Signed-off-by: Bryce Harrington <b.harrington@samsung.com>

 test/reference/extended-blend-mask.argb32.ref.png | Bin 3959 -> 4069 bytes
 test/reference/extended-blend-mask.rgb24.ref.png  | Bin 3634 -> 3735 bytes
 2 files changed, 0 insertions(+), 0 deletions(-)

commit 78a5d543b65491bb34094235364fead82904d54d
Author:     Federico Mena Quintero <federico@gnome.org>
AuthorDate: Thu Mar 8 13:27:38 2018 -0600
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Wed Sep 5 17:00:44 2018 -0700

    test/extended-blend.c: Remove obsolete comments about buggy librsvg
    
    The comment said that using CAIRO_OPERATOR_SOURCE for the background
    triggered a librsvg bug, but the relevant commit message does not even
    include a link to a librsvg bug.
    
    Also, changing it from OVER to SOURCE completely breaks these
    tests (the reference images don't match at all), so this comment is
    stale.  Just remove it.
    
    Signed-off-by: Bryce Harrington <b.harrington@samsung.com>

 test/extended-blend.c | 3 ---
 1 file changed, 3 deletions(-)

commit 38fc475995afade7edfe43af4bea6345ab989ea5
Author:     Federico Mena Quintero <federico@gnome.org>
AuthorDate: Tue Feb 27 17:44:03 2018 -0600
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Wed Sep 5 17:00:44 2018 -0700

    cairo-analysis-surface: Quell invalid uninitialized variable warning
    
    Signed-off-by: Bryce Harrington <b.harrington@samsung.com>

 src/cairo-analysis-surface.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit 5de2667b76eb484e916b2b0f0ba9e85750d44026
Author:     Bryce Harrington <b.harrington@samsung.com>
AuthorDate: Fri Aug 24 09:33:50 2018 -0700
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Fri Aug 24 09:33:50 2018 -0700

    Fix sp. sheering
    
    Pointed out by keith.briggs@bt.com

 src/cairo.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ad57c6405017126f5a48d0c1146521d1fa8cf399
Author:     Bryce Harrington <b.harrington@samsung.com>
AuthorDate: Thu Aug 16 20:12:12 2018 -0700
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Thu Aug 16 20:14:57 2018 -0700

    doc: Add missing symbols to sections for recently added APIs

 doc/public/cairo-sections.txt | 8 ++++++++
 1 file changed, 8 insertions(+)

commit 3476aa9b68461bfa4304250fca1a2aa006e7515d
Author:     Bryce Harrington <b.harrington@samsung.com>
AuthorDate: Thu Aug 16 18:59:32 2018 -0700
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Thu Aug 16 20:14:57 2018 -0700

    build: Sp. fix

 build/Makefile.am.gtk-doc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2cf141f6905b5bfd02bd166ed53b745112804d33
Author:     Bryce Harrington <b.harrington@samsung.com>
AuthorDate: Thu Aug 16 18:39:40 2018 -0700
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Thu Aug 16 20:14:57 2018 -0700

    Convert 3 headers to UTF8
    
    Fix distcheck, which was failing on the copyright symbols in these
    files, because their encoding was not being detected as UTF-8.

 src/cairo-quartz-image.h | 2 +-
 src/cairo-quartz.h       | 2 +-
 src/cairo-vg.h           | 4 ++--
 3 files changed, 4 insertions(+), 4 deletions(-)

commit 3ec4aa24aa50e271f9b23dd85a77385618e82986
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Mon Jul 16 13:54:45 2018 +0200
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Mon Jul 16 13:55:20 2018 +0200

    [ft] Implement some more color conversion routines
    
    Makes new COLR/CPAL implementation in FreeType work with cairo now.
    Ie. Microsoft's Segoe UI Emoji Regular font renders (instead of
    crashing cairo.)

 src/cairo-ft-font.c | 22 +++++++++++++++-------
 1 file changed, 15 insertions(+), 7 deletions(-)

commit 61122127943dcaff41501e1b06df2a852c576e9b
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Tue Jun 12 16:04:03 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Fri Jun 15 22:15:19 2018 -0700

    scaled-font: Fix glyph and cluster count checks (CID #983386)
    
    num_glyphs and num_clusters are explicitly checked to be non-NULL at the
    beginning of this routine, and by this point in the code both have been
    deref'd multiple times, so checking them for NULL here again is
    superfluous.
    
    It looks like the intent here is to verify the glyphs and clusters
    arrays are non-NULL unless their counts are zero, so change the tests
    accordingly.
    
    Coverity ID: #983386
    
    Signed-off-by: Bryce Harrington <bryce@bryceharrington.org>

 src/cairo-scaled-font.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 9c7d5a49c6c7a983c6798daf7362775ef1711239
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Jun 12 12:34:48 2018 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Jun 13 16:17:58 2018 -0700

    gl: For glesv3 detection, use glesv2.pc + header check
    
    There is no glesv3.pc provided by mesa, perhaps because
    the glesv3 support is provided by the libGLESv2 library.
    Don't bother testing for glesv3.pc, just check for glesv2.pc
    and then search for the gl3.h header file.
    
    This fixes an issue reported by Theo Veenker, where building
    with glesv3 enabled would result in a cairo.pc file that depends
    on the non-existant glesv3.pc.

 configure.ac | 19 +++++++++++--------
 1 file changed, 11 insertions(+), 8 deletions(-)

commit 2b6b23fd8cfae768145e9a9f1f27eb0415e2a617
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Tue Jun 12 17:18:58 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Wed Jun 13 15:21:50 2018 -0700

    polygon-intersection: Clarify ptr checks for right edges (CID #1160730)
    
    The code is checking a variable is non-NULL after it's already been
    dereferenced in an assert.
    
    I'm not certain whether the assert should be conditionalized to only be
    tested when right != NULL (which would allow edges_end() to still be
    invoked), or if the function should assert right as non-NULL always.
    
    Coverity ID: #1160730
    Signed-off-by: Bryce Harrington <bryce@bryceharrington.org>
    Reviewed-By: Uli Schlachter <psychon@znc.in>

 src/cairo-polygon-intersect.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 5a4a86c27f733645a2276d0a3bd2494e73b3dc88
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Tue Jun 12 17:06:13 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Wed Jun 13 15:21:50 2018 -0700

    type1-subset: Fix incorrect null ptr check from find_token() (CID #1160662)
    
    subrs was already tested for NULL prior to this, and will never be NULL
    at this point.  Meanwhile, find_token()'s return is unchecked (it can
    return NULL and is checked in all other calls).  Quite clearly, this is
    a copy-paste error from the prior find_token call, and the intent was to
    check array_start not subrs.
    
    Coverity ID: #1160662
    Signed-off-by: Bryce Harrington <bryce@bryceharrington.org>
    Reviewed-By: Uli Schlachter <psychon@znc.in>

 src/cairo-type1-subset.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9b0355a591125a8d7fe20daa82504759e6d472e7
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Tue Jun 12 15:08:31 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Wed Jun 13 15:21:50 2018 -0700

    pdf: Fix potential null ptr deref when creating smask groups (CID #1159559)
    
    Patch 37a22669 improved performance by using bounding box extents.
    However, the code appears to be incorrect.  If extents is non-NULL it
    copies its contents to group->extents, otherwise it sets group->extents
    to sensible defaults, but then goes ahead and tries to copy the
    undefined contents.  This second copy is unnecessary if extents is
    non-NULL and will cause a crash if it is NULL.
    
    Drop the extra copy, guessing it's just a typo.
    
    Coverity ID: #1159559
    Signed-off-by: Bryce Harrington <bryce@bryceharrington.org>
    Reviewed-By: Uli Schlachter <psychon@znc.in>

 src/cairo-pdf-surface.c | 1 -
 1 file changed, 1 deletion(-)

commit 9c56502e064b7896207a80e45c519ad4847e231c
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Tue Jun 12 14:23:40 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Wed Jun 13 15:21:50 2018 -0700

    bo: Free event_y in case of error to prevent memory leak (CID ##1160682)
    
    If the call to _cairo_malloc_ab_plus_c() fails, it returns an error
    without first freeing event_y.
    
    Coverity ID: #1160682
    Signed-off-by: Bryce Harrington <bryce@bryceharrington.org>
    Reviewed-By: Uli Schlachter <psychon@znc.in>

 src/cairo-bentley-ottmann.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 1c3ecfac133e5f284934fef9af988405e24347da
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Wed Jun 6 11:06:18 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Wed Jun 13 15:21:50 2018 -0700

    snapshot: Don't use extra after it's been freed (CID #220086)
    
    Note this changes the semantics of the value of extra_out such that it
    is set to NULL instead of left undefined in case an error is returned.
    
    Coverity ID: 220086
    Signed-off-by: Bryce Harrington <bryce@bryceharrington.org>
    Reviewed-By: Uli Schlachter <psychon@znc.in>

 src/cairo-surface-snapshot.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 37655af38d320336fe00894dbc2e47d16ea58497
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Wed Jun 6 10:32:37 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Wed Jun 13 15:21:50 2018 -0700

    bo: Check null return from _cairo_malloc_ab() (CID #1159556)
    
    _cairo_malloc_ab() can return NULL under some circumstances, and all
    other callers of this routine in the Cairo codebase check its return, so
    do so here as well.
    
    Coverity ID: #1159556
    Signed-off-by: Bryce Harrington <bryce@bryceharrington.org>
    Reviewed-by: Uli Schlachter <psychon@znc.in>

 src/cairo-bentley-ottmann.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit 9d2e3646fa04c98747ae3b05a9be433eda7f2730
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Wed Jun 6 09:30:00 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Wed Jun 13 15:21:50 2018 -0700

    script-surface: Check for invalid ids (CID #1159557, 1159558)
    
    If the bitmap's min is non-zero, _bitmap_next_id() could break out of
    its loop early, before initializing the prev variable.  prev would then
    be dereferenced without a null ptr check.  This condition should never
    occur in practice, so add an assert() to assure it doesn't.
    
    Same issue is present in trace.c.
    
    Coverity IDs: #1159557, #1159558
    Reviewed-By: Uli Schlachter <psychon@znc.in>
    Signed-off-by: Bryce Harrington <bryce@bryceharrington.org>

 src/cairo-script-surface.c | 1 +
 util/cairo-trace/trace.c   | 2 ++
 2 files changed, 3 insertions(+)

commit d09d2ebfd5845de7b3fa12b76c4abead4d587016
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Wed Jun 13 15:21:06 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Wed Jun 13 15:21:06 2018 -0700

    Bump version for new development tree, 1.15.13

 cairo-version.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit dc93ea771102cd2917f20bbe4a341f77b3ac18e1
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Wed Jun 13 15:20:34 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Wed Jun 13 15:20:34 2018 -0700

    test: Use C comment syntax, not C++

 test/font-variations.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ccdb8e23073ac1e27bd5fd7ea94a6c200a3e9c72
Author:     Alexandre Bique <bique.alexandre@gmail.com>
AuthorDate: Fri May 18 11:39:33 2018 +0200
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Thu May 31 18:39:51 2018 -0700

    Fix test compilation when font-config is disabled
    
    Building cairo without font-config fails because test/font-variations.c
    was getting compiled without freetype2.
    
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 test/font-variations.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit c6e12d33bff84f26cff22a1c0cf1fc0b929eedb0
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Thu May 31 18:31:12 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Thu May 31 18:31:12 2018 -0700

    win32: Copyedit recent comments

 src/win32/cairo-win32-device.c         | 7 ++++---
 src/win32/cairo-win32-gdi-compositor.c | 3 ++-
 2 files changed, 6 insertions(+), 4 deletions(-)

commit d4355ecee26f6ca7db26874ce4dbfec599f6040e
Author:     Vasily Galkin <galkin-vv@yandex.ru>
AuthorDate: Sat Apr 28 22:27:01 2018 +0300
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Thu May 31 17:34:17 2018 -0700

    win32: Allow GDI operations for argb32 surfaces (allowed by surface flags)
    
    This finishes a patch series to speed up CAIRO_OPERATOR_SOURCE when used
    to copy data to a argb32 cairo surface corresponding to a win32 dc from
    a "backbuffer" - DibSection-based cairo surface created with
    cairo_surface_create_similar().
    
    This final patch allows the GDI compositor to be used on argb32
    surfaces.  For display surfaces, only copying is allowed with gdi (by
    BitBlt), since other operations are filtered by flags in
    implementations.
    
    But since copying pixels is the only operation used in the most common
    scenario (prepare an offscreen image and send it to the screen) - this
    is important for presenting argb32 windows with Cairo directly or with
    gtk+gdk (which nowadays always creates argb32 windows).
    
    Before this patch pixel copy worked by:
    1. mapping image to memory (by copying data from window dc to system
       memory which is very slow on windows maybe due to gpu or interprocess
       access)
    2. copying new data over that image.
    3. copying updated image from system memory back to window dc.
    
    After this patch there is only one step:
    
    2+3. Copying new data over window dc.
    
    Completely eliminating step 1 gives a very huge speedup and allows
    argb32 cairo drawing be as fast as typical dibsection-buffered gdi
    drawing.
    
    There is quick & dirty cairo-vs-gdi perf test made for this patch set:
    https://gitlab.gnome.org/galkinvv/cairo/snippets/109
    See the Cairo mailing list for April 2018 for data and discussion of
    performance improvements.
    
    End-user visible speedup does present too - it relates to the following bug
    
    https://gitlab.gnome.org/GNOME/meld/issues/133
    
    This Cairo speedup allows more simultaneous meld windows
    without eating 100% of cpu core time on spinner rendering.

 src/win32/cairo-win32-gdi-compositor.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 0cb7aad2a375f957803c5f34fb6088e330f17f85
Author:     Vasily Galkin <galkin-vv@yandex.ru>
AuthorDate: Sat Apr 28 22:27:00 2018 +0300
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Thu May 31 17:29:26 2018 -0700

    win32: CAIRO_WIN32_SURFACE_CAN_RGB_BRUSH and other argb32 flags set+check
    
    This belongs to a patch series that speeds up CAIRO_OPERATOR_SOURCE when
    used to copy data to an argb32 cairo surface corresponding to a win32 dc
    from a "backbuffer" - DibSection-based cairo surface created with
    cairo_surface_create_similar().
    
    This patch introduces checks to ensure that no solid brush GDI operations
    are attempted when using argb32 surfaces.  Doing this allows enabling
    usage of the GDI compositor when these surfaces are in use.
    
    To make these checks work, _cairo_win32_flags_for_dc disables
    STRETCHBLT, STRETCHDIB and RGB_BRUSH in the argb32 flag.
    
    _cairo_win32_flags_for_dc() is also refactored to make the distinction
    between rgb24 and argb32 more readable.  All logic & flags for rgb24
    surfaces are retained, except for the addition of
    CAIRO_WIN32_SURFACE_CAN_RGB_BRUSH.
    
    The logic of forbidding AlphaBlend on display surfaces is also
    kept as is without investigation.

 src/win32/cairo-win32-device.c         | 36 ++++++++++++++++++++++------------
 src/win32/cairo-win32-gdi-compositor.c | 18 ++++++++++++++++-
 2 files changed, 40 insertions(+), 14 deletions(-)

commit 884275c3ab6e76ec2723cc889060b2791868190d
Author:     Vasily Galkin <galkin-vv@yandex.ru>
AuthorDate: Sat Apr 28 22:26:59 2018 +0300
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Thu May 31 17:24:50 2018 -0700

    win32: Introduce new flag to mark surfaces that support solid brush drawing
    
    This is part of a patch series to speed up CAIRO_OPERATOR_SOURCE when
    used to copy data to an argb32 cairo surface corresponding to a win32 dc
    from a "backbuffer" - DibSection-based cairo surface created with
    cairo_surface_create_similar().
    
    This initial patch presents only private header changes without changing
    any implementation logic.
    
    The big problem with argb32 surfaces and GDI is that GDI is unable to
    correctly set the alpha channel when using operations other than BitBlt
    and AlphaBlend.
    
    To solve this, a CAIRO_WIN32_SURFACE_CAN_RGB_BRUSH flag is introduced in
    this commit to be mark surfaces that correctly handle such brushes
    - essentially all surface types except argb32.
    The _cairo_win32_flags_for_dc() call receives a new argument that is
    used to calculate the flag.

 src/win32/cairo-win32-device.c           | 2 +-
 src/win32/cairo-win32-display-surface.c  | 4 ++--
 src/win32/cairo-win32-printing-surface.c | 2 +-
 src/win32/cairo-win32-private.h          | 5 ++++-
 4 files changed, 8 insertions(+), 5 deletions(-)

commit 85fe4deee4bb01a211924d92263540e93cd9e5db
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Tue May 29 12:15:47 2018 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Tue May 29 12:15:47 2018 -0700

    gl: Whitespace cleanup

 src/cairo-gl-composite.c        | 176 ++++++++++++++++-----------------
 src/cairo-gl-device.c           |  42 ++++----
 src/cairo-gl-glyphs.c           |  46 ++++-----
 src/cairo-gl-gradient.c         |  44 ++++-----
 src/cairo-gl-info.c             |   2 +-
 src/cairo-gl-msaa-compositor.c  |  24 ++---
 src/cairo-gl-operand.c          | 110 ++++++++++-----------
 src/cairo-gl-shaders.c          | 168 +++++++++++++++----------------
 src/cairo-gl-spans-compositor.c |  54 +++++-----
 src/cairo-gl-surface-legacy.c   | 213 ++++++++++++++++++++--------------------
 src/cairo-gl-surface.c          | 160 +++++++++++++++---------------
 src/cairo-gl-traps-compositor.c |  20 ++--
 src/cairo-glx-context.c         |   2 +-
 13 files changed, 530 insertions(+), 531 deletions(-)

commit 4b9333acf5878a0665967b0440069a48e572842e
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Mon May 7 16:50:42 2018 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon May 7 16:50:42 2018 -0700

    Drop stray patch from prior commit

 ...intersection-Check-for-invalid-right-edge.patch | 26 ----------------------
 1 file changed, 26 deletions(-)

commit 199823938780c8e50099b627d3e9137acba7a263
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Jul 8 09:28:03 2017 +0930
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon May 7 16:35:51 2018 -0700

    Use _cairo_malloc instead of malloc
    
    _cairo_malloc(0) always returns NULL, but has not been used
    consistently.  This patch replaces many calls to malloc() with
    _cairo_malloc().
    
    Fixes:  fdo# 101547
    CVE: CVE-2017-9814 Heap buffer overflow at cairo-truetype-subset.c:1299
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 ...intersection-Check-for-invalid-right-edge.patch | 26 ++++++++++++++++
 src/cairo-analysis-surface.c                       |  6 ++--
 src/cairo-base64-stream.c                          |  2 +-
 src/cairo-base85-stream.c                          |  2 +-
 src/cairo-cff-subset.c                             | 36 +++++++++++-----------
 src/cairo-clip-tor-scan-converter.c                |  2 +-
 src/cairo-clip.c                                   |  8 ++---
 src/cairo-cogl-context.c                           |  2 +-
 src/cairo-cogl-gradient.c                          |  4 +--
 src/cairo-cogl-surface.c                           |  6 ++--
 src/cairo-damage.c                                 |  6 ++--
 src/cairo-default-context.c                        |  2 +-
 src/cairo-deflate-stream.c                         |  2 +-
 src/cairo-font-face-twin.c                         |  4 +--
 src/cairo-font-options.c                           |  4 +--
 src/cairo-freelist.c                               |  4 +--
 src/cairo-ft-font.c                                | 10 +++---
 src/cairo-gl-device.c                              |  2 +-
 src/cairo-gl-gradient.c                            |  2 +-
 src/cairo-gl-shaders.c                             |  2 +-
 src/cairo-gl-source.c                              |  4 +--
 src/cairo-gl-surface.c                             |  2 +-
 src/cairo-gstate.c                                 |  2 +-
 src/cairo-hash.c                                   |  2 +-
 src/cairo-image-compositor.c                       |  2 +-
 src/cairo-image-source.c                           | 10 +++---
 src/cairo-image-surface.c                          |  2 +-
 src/cairo-lzw.c                                    |  2 +-
 src/cairo-mempool.c                                |  2 +-
 src/cairo-misc.c                                   |  2 +-
 src/cairo-mono-scan-converter.c                    |  2 +-
 src/cairo-os2-surface.c                            |  4 +--
 src/cairo-output-stream.c                          | 14 ++++-----
 src/cairo-paginated-surface.c                      |  2 +-
 src/cairo-path-fixed.c                             |  2 +-
 src/cairo-path.c                                   |  4 +--
 src/cairo-pattern.c                                | 24 +++++++--------
 src/cairo-pdf-interchange.c                        |  2 +-
 src/cairo-pdf-operators.c                          |  2 +-
 src/cairo-pdf-shading.c                            |  2 +-
 src/cairo-pdf-surface.c                            | 12 ++++----
 src/cairo-ps-surface.c                             | 10 +++---
 src/cairo-qt-surface.cpp                           |  8 ++---
 src/cairo-quartz-font.c                            |  6 ++--
 src/cairo-quartz-image-surface.c                   |  2 +-
 src/cairo-quartz-surface.c                         |  6 ++--
 src/cairo-recording-surface.c                      | 32 +++++++++----------
 src/cairo-scaled-font-subsets.c                    | 14 ++++-----
 src/cairo-scaled-font.c                            |  8 ++---
 src/cairo-script-surface.c                         | 16 +++++-----
 src/cairo-skia-surface.cpp                         |  2 +-
 src/cairo-surface-observer.c                       |  6 ++--
 src/cairo-surface-snapshot.c                       |  4 +--
 src/cairo-surface-subsurface.c                     |  4 +--
 src/cairo-surface.c                                |  2 +-
 src/cairo-svg-surface.c                            |  4 +--
 src/cairo-tag-attributes.c                         |  4 +--
 src/cairo-tag-stack.c                              |  2 +-
 src/cairo-tee-surface.c                            |  2 +-
 src/cairo-tor-scan-converter.c                     |  4 +--
 src/cairo-tor22-scan-converter.c                   |  4 +--
 src/cairo-toy-font-face.c                          |  2 +-
 src/cairo-truetype-subset.c                        | 20 ++++++------
 src/cairo-type1-fallback.c                         |  2 +-
 src/cairo-type1-subset.c                           | 16 +++++-----
 src/cairo-type3-glyph-surface.c                    |  2 +-
 src/cairo-user-font.c                              |  4 +--
 src/cairo-vg-surface.c                             |  6 ++--
 src/cairo-xcb-connection.c                         |  6 ++--
 src/cairo-xcb-screen.c                             |  2 +-
 src/cairo-xcb-shm.c                                |  2 +-
 src/cairo-xcb-surface-core.c                       |  4 +--
 src/cairo-xcb-surface-render.c                     | 14 ++++-----
 src/cairo-xcb-surface.c                            |  2 +-
 src/cairo-xlib-display.c                           |  2 +-
 src/cairo-xlib-render-compositor.c                 |  8 ++---
 src/cairo-xlib-screen.c                            |  2 +-
 src/cairo-xlib-source.c                            |  4 +--
 src/cairo-xlib-surface-shm.c                       |  8 ++---
 src/cairo-xlib-surface.c                           |  2 +-
 src/cairo-xlib-visual.c                            |  2 +-
 src/cairo-xlib-xcb-surface.c                       |  4 +--
 src/cairo-xml-surface.c                            |  6 ++--
 src/drm/cairo-drm-gallium-surface.c                |  8 ++---
 src/drm/cairo-drm-i915-shader.c                    |  2 +-
 src/drm/cairo-drm-i915-spans.c                     |  2 +-
 src/drm/cairo-drm-i915-surface.c                   | 10 +++---
 src/drm/cairo-drm-i965-glyphs.c                    |  2 +-
 src/drm/cairo-drm-i965-spans.c                     |  2 +-
 src/drm/cairo-drm-i965-surface.c                   |  6 ++--
 src/drm/cairo-drm-intel-surface.c                  |  6 ++--
 src/drm/cairo-drm-intel.c                          |  4 +--
 src/drm/cairo-drm-radeon-surface.c                 |  6 ++--
 src/skia/cairo-skia-surface.cpp                    |  2 +-
 src/test-compositor-surface.c                      |  2 +-
 src/test-null-compositor-surface.c                 |  2 +-
 src/test-paginated-surface.c                       |  2 +-
 src/win32/cairo-win32-debug.c                      |  2 +-
 src/win32/cairo-win32-device.c                     |  2 +-
 src/win32/cairo-win32-display-surface.c            |  6 ++--
 src/win32/cairo-win32-font.c                       | 10 +++---
 src/win32/cairo-win32-printing-surface.c           |  6 ++--
 102 files changed, 300 insertions(+), 274 deletions(-)

commit 7554822dd0b52d33ec7898e81b59e97164b00142
Author:     Uli Schlachter <psychon@znc.in>
AuthorDate: Sat Apr 21 09:37:06 2018 +0200
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Sat Apr 21 09:37:06 2018 +0200

    Fix assertion failure in the freetype backend
    
    Fonts are kept in a hash table, so when creating a new font, the code
    first checks the hash table for an already-existing entry and only then
    is a new instance really created. There is an assert that checks that
    the key used for the hash table lookup is the same as the instance that
    is created later has, because otherwise the hash table was checked
    incorrectly.
    
    This assert failed in some conditions.
    
    Fix this by fixing some places that initialised ft hash keys in a wrong
    way.
    
    Patch by Behdad Esfahbod and submitted via bugzilla.
    
    Source: https://bugs.freedesktop.org/show_bug.cgi?id=105746#c4
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=105746
    Signed-off-by: Uli Schlachter <psychon@znc.in>

 src/cairo-ft-font.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 7149686456ec3c481fa1d3dbe76a0dab1e42b519
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Wed Apr 4 11:48:11 2018 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Apr 11 18:35:40 2018 -0700

    1.15.12 release
    
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 NEWS            | 49 +++++++++++++++++++++++++++++++++++++++++++++++++
 cairo-version.h |  2 +-
 2 files changed, 50 insertions(+), 1 deletion(-)

commit caf6f71d692de5b2afd97bf4870de8c56b454408
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Apr 3 18:01:09 2018 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Apr 11 13:27:53 2018 -0700

    configure: Conditionalize color font feature for older freetype2
    
    FT_HAS_COLOR() macro is unavailable in older freetype2 without the color
    font feature.
    
    Compile and link a source including FT_HAS_COLOR(); if it fails (which
    can happen on older FreeType2) then define FT_HAS_COLOR(x) as (0).
    
    Patch from suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
    
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 configure.ac | 11 +++++++++++
 1 file changed, 11 insertions(+)

commit 38806bc3c09fbfbca0cccb4d0cc557257682db62
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Mon Apr 2 20:04:16 2018 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Apr 2 20:20:00 2018 -0700

    Disable skia from configure
    
    Implement suggestion by Adrian Johnson to comment out skia in
    configure.ac to avoid presenting it as an option to users.  This was
    discussed on the Cairo mailing list in September 2017.
    
    Skia is not API stable and is not available in packaged+versioned forms,
    resulting in it being a continually moving target.  I.e. it's pretty
    much always unusably out of date.  The last update to the skia backend
    was in 2014, and had not been updated very regularly prior to that.
    
    We'll simply disable it for now.  If no one complains by the next Cairo
    snapshot release, we'll assume no one is needing it and will drop the
    code entirely.
    
    Meanwhile, if anyone does need it, it can be uncommented and used.
    
    (The changes to the win32 build config appear to be automatically
    generated as a result of disabling the feature in configure.  I'm
    committing them to avoid confusion.)

 boilerplate/Makefile.win32.features | 12 -----------
 build/Makefile.win32.features       |  1 -
 build/Makefile.win32.features-h     |  3 ---
 build/configure.ac.features         |  2 +-
 configure.ac                        | 42 ++++++++++++++++++++-----------------
 src/Makefile.win32.features         | 16 --------------
 6 files changed, 24 insertions(+), 52 deletions(-)

commit dcafd9e684ba0c58d15558a11cdb6c6933b95198
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Mon Apr 2 17:51:08 2018 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Apr 2 17:51:08 2018 -0700

    cairo-version: Fix version references in docs
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=82741

 src/cairo-version.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 12cb59be7da83cf019933a163cef8d8b2601b7f4
Author:     Unknown <kunda@scribus.net>
AuthorDate: Thu Nov 9 09:43:02 2017 -0500
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Apr 2 17:46:58 2018 -0700

    Cairo trivial typos
    
    Found using `codespell -q 3 -I cairo-whitelist.txt`
    whereby whitelist contained:
    ```
    amin
    iff
    lod
    writen
    ```
    
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 build/aclocal.float.m4          | 2 +-
 perf/cairo-perf-diff-files.c    | 2 +-
 perf/micro/long-lines.c         | 2 +-
 src/cairo-cogl-surface.c        | 2 +-
 src/cairo-pdf-operators.c       | 2 +-
 src/cairo-pdf-surface-private.h | 2 +-
 src/cairo-pdf-surface.c         | 2 +-
 src/cairo-ps-surface.c          | 2 +-
 src/cairo-xlib-surface.c        | 2 +-
 src/cairo.c                     | 6 +++---
 src/cairo.h                     | 2 +-
 src/cairoint.h                  | 2 +-
 src/skia/cairo-skia-context.cpp | 2 +-
 test/line-width-zero.c          | 2 +-
 test/mime-data.c                | 2 +-
 test/skew-extreme.c             | 2 +-
 util/backtrace-symbols.c        | 2 +-
 17 files changed, 19 insertions(+), 19 deletions(-)

commit 33a348d69809637ba7c48cc31a9f236a5b246ae0
Author:     suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
AuthorDate: Sat Mar 31 21:28:46 2018 +0900
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Apr 2 11:55:19 2018 -0700

    csi-trace does not show help
    
    csi-trace does not show help string correctly, due to a bug in its
    command line argument parsing.  strcmp returns 0 when there is an exact
    match, which means it requires an inverted test.
    
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 util/cairo-script/csi-trace.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 50a6ad5389eab30c86b53fda3e0a247ec34118dc
Author:     Uli Schlachter <psychon@znc.in>
AuthorDate: Sat Mar 31 13:52:53 2018 +0200
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Apr 2 11:16:34 2018 -0700

    pthread-same-source: Refresh reference images
    
    I already did the same thing in commit 3e22a8580a804. That commit added
    a GENERATE_REFERENCE mode that does not use threads and used that for
    generating the reference image.
    
    However, the above commit falls into the range between commits
    fb57ea13e04d and 3d94269bd4. The later commit reverts the earlier one,
    which changed the way that image downscaling works / is used.
    
    This means that the reference image that were generated back then were
    broken. Thus, regenerating the images is the right thing to do.
    
    Signed-off-by: Uli Schlachter <psychon@znc.in>
    Acked-by: Bryce Harrington <bryce@osg.samsung.com>

 test/reference/pthread-same-source.ref.png | Bin 1076 -> 1002 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

commit fba7a7ca27b6dde8d90fca25d8618fa2aca3c1aa
Author:     Uli Schlachter <psychon@znc.in>
AuthorDate: Fri Mar 30 09:25:28 2018 +0200
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Apr 2 11:08:46 2018 -0700

    Skip font-variations test for missing fonts
    
    Signed-off-by: Uli Schlachter <psychon@znc.in>
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 test/font-variations.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1ed124ace201946177eab962d3b07bb2fedf9026
Author:     Uli Schlachter <psychon@znc.in>
AuthorDate: Sat Jan 13 11:34:19 2018 +0100
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Thu Mar 15 21:43:03 2018 +0100

    Fix a 'memory leak' in the image compositor
    
    There is a global pixman_glyph_cache_t instance that is initialized on
    first use and shows up in valgrind output as a relatively large leak (I
    think it was about 200 KiB). The reason for this is that this cache is
    not freed by cairo_debug_reset_static_data().
    
    This commit wires up freeing the cache to
    cairo_debug_reset_static_data().
    
    This cache was introduced in commit 615205cf0729 from 2012.
    
    Signed-off-by: Uli Schlachter <psychon@znc.in>

 src/cairo-debug.c            |  2 ++
 src/cairo-image-compositor.c | 17 +++++++++++++++++
 src/cairoint.h               |  3 +++
 3 files changed, 22 insertions(+)

commit 5454b85d4bf2f7bea454c940d90255a15517fa3b
Author:     Massimo <sixtysix@inwind.it>
AuthorDate: Wed Mar 7 14:11:58 2018 -0600
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Mar 8 13:30:17 2018 -0800

    bfo#91271 - Fix access of uninitialized memory
    
    Valgrind reports that xlib-render-compositor's composite_traps()
    accesses uninitialized memory when traps->num_traps == 0.
    
    This happens in the line that says
    
          if (xtraps[0].left.p1.y < xtraps[0].left.p2.y) {
    
    after the 'for' loop.  We can actually return early if there are no
    trapezoids to render.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=91271
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-xlib-render-compositor.c | 3 +++
 1 file changed, 3 insertions(+)

commit 45e3b8f27179cf1130bfa61a09ef366fd313a0e1
Author:     Federico Mena Quintero <federico@gnome.org>
AuthorDate: Tue Feb 13 15:04:42 2018 -0600
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Mar 8 13:30:11 2018 -0800

    bfo#105084 - Initialize memory properly in _cairo_ft_font_face_create_for_pattern()
    
    The font_face->ft_options field was not being initialized, leading to
    an invalid free().
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=105084
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-ft-font.c | 3 +++
 1 file changed, 3 insertions(+)

commit 7784757b9e271f749b91de27b3472a0151ae2380
Author:     Federico Mena Quintero <federico@gnome.org>
AuthorDate: Tue Feb 27 17:54:57 2018 -0600
Commit:     Federico Mena Quintero <federico@gnome.org>
CommitDate: Wed Mar 7 14:20:24 2018 -0600

    Add .gitlab-ci.yml to run the tests automatically

 .gitlab-ci.yml | 46 ++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 46 insertions(+)

commit 14404ada80f699418263256d7d3d8dddf68be279
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Wed Feb 28 15:19:06 2018 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Feb 28 15:19:06 2018 -0800

    compiler-private: Define what PLT stands for

 src/cairo-compiler-private.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 62b724ac848aecbbb35a70c2f7d4685c6c2605f9
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Feb 6 15:09:08 2018 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Feb 6 15:13:00 2018 -0800

    win32: Fix a few typos in comments

 src/win32/cairo-win32-private.h | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

commit dbe3d9ea517da51e6be5a19d87f2d02176f0ba00
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Feb 6 15:08:17 2018 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Feb 6 15:13:00 2018 -0800

    win32: Whitespace cleanup

 src/win32/cairo-win32-display-surface.c | 38 ++++++++++++++++-----------------
 src/win32/cairo-win32-private.h         | 32 +++++++++++++--------------
 2 files changed, 35 insertions(+), 35 deletions(-)

commit 4d07b57c168b88019a5510eaa7e9467149c53f12
Author:     Eric Hoffman <ehoffman@videotron.ca>
AuthorDate: Wed Apr 26 04:22:25 2017 +0000
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Feb 6 15:12:33 2018 -0800

    win32: Fix multi-monitor virtual desktop with negative monitor coords
    
    Under Win32, when you have a multiple-monitor setup, Windows creates a
    'virtual desktop', which is a rectangle surface that extends across all
    monitors.
    
    The primary monitor always starts with the top-left corner at coordinate
    (0,0).  If you have any other monitors which extend to the left or
    above the primary monitor, the virtual desktop's top-left corner will
    actually have coordinates which are negative.
    
    This creates an issue in Cairo with the desktop DC, i.e. when you use a
    DC from the function GetDC(NULL).  The same thing can occur with other
    third party libraries like GTK, when you access the Cairo surface from
    the root window.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=100793
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/win32/cairo-win32-display-surface.c | 42 +++++++++++++++++++++++++++++----
 src/win32/cairo-win32-private.h         | 18 ++++++++++++++
 2 files changed, 56 insertions(+), 4 deletions(-)

commit a8571a3030a0ac1f29809ab72e5e54a83addcbd2
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Feb 6 12:06:48 2018 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Feb 6 12:06:48 2018 -0800

    xml: Typo in comment

 src/cairo-xml-surface.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1cbebafe89610329a252b4cc076cd2dccf6e56aa
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Jan 23 19:47:57 2018 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Jan 23 19:58:35 2018 -0800

    font: Check return value from _cairo_ft_unscaled_font_lock_face
    
    cairo-ft-font.c: In function ‘_cairo_ft_has_color_glyphs’:
    cairo-ft-font.c:3011:9: warning: ignoring return value of ‘_cairo_ft_unscaled_font_lock_face’, declared with attribute warn_unused_result [-Wunused-result]
             _cairo_ft_unscaled_font_lock_face (unscaled);
             ^

 src/cairo-ft-font.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit bc335a741f2d69b57e5a0d39c471ef14a4a70df4
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Jan 23 19:14:25 2018 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Jan 23 19:20:08 2018 -0800

    Fix two type casting warnings in get_C_locale()
    
    cairo-misc.c:806:43: warning: passing argument 1 of ‘_cairo_atomic_ptr_get’ from incompatible pointer type
         C = (locale_t) _cairo_atomic_ptr_get (&C_locale);
                                               ^
    
    cairo-misc.c:811:45: warning: passing argument 1 of ‘_cairo_atomic_ptr_cmpxchg_impl’ from incompatible pointer type
             if (!_cairo_atomic_ptr_cmpxchg (&C_locale, NULL, C)) {
                                                 ^
    
    Routines are expecting a void** so cast.

 src/cairo-misc.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 6c675653b1cc325b78eb54dc3669ad207c653e2d
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Mon Jan 22 14:58:46 2018 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Jan 22 14:58:46 2018 -0800

    RELEASING: Refine devel version and tagging

 RELEASING | 17 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)

commit 14f5b98d22c79dd85ce6b8b02327c58f46d6d62c
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Fri Jan 19 11:10:13 2018 -0800
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Fri Jan 19 11:10:13 2018 -0800

    Fixup on previous commit

 test/font-variations.c | 2 ++
 1 file changed, 2 insertions(+)

commit 4a09fec668395532a1b8d3a2344be5eca6c61d14
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Thu Jan 18 21:02:12 2018 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Jan 18 21:02:12 2018 -0800

    test: Fix compile with older FreeType without FT_Get_Var_Design_Coordinates
    
    Extend earlier fix to the tests as well.

 test/font-variations.c | 2 ++
 1 file changed, 2 insertions(+)

commit 5795ac9d90c4927e9826cf49687a9f84628d9974
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Mon Jan 15 19:28:56 2018 -0500
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Mon Jan 15 19:28:56 2018 -0500

    Fix compile with older FreeType without FT_Get_Var_Design_Coordinates

 configure.ac        | 2 +-
 src/cairo-ft-font.c | 4 ++++
 2 files changed, 5 insertions(+), 1 deletion(-)

commit b7f313a8d2a3049e77b3497dd6040fcfab3b3c9b
Author:     Uli Schlachter <psychon@znc.in>
AuthorDate: Sat Dec 23 14:09:27 2017 +0100
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Sat Jan 13 11:30:50 2018 +0100

    fix warning: variable X might be clobbered by 'longjmp'
    
    According to "man setjmp", one possible way to avoid variable clobbering
    is to declare them as volatile. Thus, this commit turns the variables
    that are changed between setjmp() and longjmp() and whose values are
    still needed after setjmp() returned the second time into volatile
    variables.
    
    The warning in cairo-bentley-ottmann-rectangular.c is worked around by
    not initializing the variable before setjmp(). To be honest, I don't
    understand why the compiler warns here at all since the value of update
    is clearly not used after setjmp()'s second return.
    
    This commit re-fixes the warnings that were reintroduced in commit
    82f40285 which reverted b092b63.
    
    Signed-off-by: Uli Schlachter <psychon@znc.in>
    Acked-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-bentley-ottmann-rectangular.c | 4 +++-
 src/cairo-png.c                         | 6 +++---
 2 files changed, 6 insertions(+), 4 deletions(-)

commit 62f2037bc06a8eda1aa5ff66b45ce9e8bafe0a9c
Author:     Uli Schlachter <psychon@znc.in>
AuthorDate: Sat Dec 23 13:22:59 2017 +0100
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Sat Jan 13 11:30:26 2018 +0100

    Fix warning: '*' in boolean context
    
    The full message is:
    
      warning: ‘*’ in boolean context, suggest ‘&&’ instead
          _cairo_malloc((unsigned) (a) * (unsigned) (size)))
                                       ^
      note: in definition of macro ‘_cairo_malloc’
          ((size) ? malloc((unsigned) (size)) : NULL)
            ^~~~
    
    Signed-off-by: Uli Schlachter <psychon@znc.in>
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-malloc-private.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c3659d7ef662b55949307ece7b1f613a7dc32620
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Mon Jan 8 10:07:25 2018 +0000
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Mon Jan 8 10:07:25 2018 +0000

    Use FT_Done_MM_Var() if available

 configure.ac        | 2 +-
 src/cairo-ft-font.c | 4 ++++
 2 files changed, 5 insertions(+), 1 deletion(-)

commit 37f9a5525da457226317d426e06c55d77da206c1
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Fri Jan 5 09:10:32 2018 -0500
Commit:     Matthias Clasen <mclasen@redhat.com>
CommitDate: Fri Jan 5 09:10:32 2018 -0500

    Don't leak memory in font options
    
    The cairo_font_options_t struct may now contain allocated
    memory, so call fini whenever we are about to let go of an
    embedded cairo_font_options_t struct.

 src/cairo-ft-font.c | 21 ++++++++++++++++++++-
 1 file changed, 20 insertions(+), 1 deletion(-)

commit 1f0b6707eab54ddbcc9ac0b68e0e483d33704644
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Fri Jan 5 09:09:01 2018 -0500
Commit:     Matthias Clasen <mclasen@redhat.com>
CommitDate: Fri Jan 5 09:09:01 2018 -0500

    Add a _cairo_font_options_fini function
    
    The variations member of cairo_font_options_t is allocated,
    so we need to have a method to free it for cases where
    the struct is embedded in larger structs, such as cairo_ft_options_t.

 src/cairo-font-options.c | 8 +++++++-
 src/cairoint.h           | 3 +++
 2 files changed, 10 insertions(+), 1 deletion(-)

commit 17871c52eff5ae89af08b9deb4be36b6b6f4c0e3
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Thu Jan 4 23:25:09 2018 -0500
Commit:     Matthias Clasen <mclasen@redhat.com>
CommitDate: Thu Jan 4 23:25:09 2018 -0500

    Don't leak patterns when compositing color glyphs
    
    We were forgetting to free the pattern here.

 src/cairo-surface.c | 1 +
 1 file changed, 1 insertion(+)

commit 616fb7a9f2612f6cc3472542a70ba3e8ccf16584
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Thu Jan 4 20:56:59 2018 -0500
Commit:     Matthias Clasen <mclasen@redhat.com>
CommitDate: Thu Jan 4 20:56:59 2018 -0500

    Fix a memory leak
    
    cairo_ft_apply_variations was leaking the FT_MM_Var struct.

 src/cairo-ft-font.c | 1 +
 1 file changed, 1 insertion(+)

commit a7a0085713902c7d074be493d82f49bac6c97114
Merge: 6b0593827 a18c0decd
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Wed Jan 3 12:35:12 2018 +0000
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Wed Jan 3 12:35:12 2018 +0000

    Merge branch 'font-variations'

commit a18c0decdacc3846588f424edb6d45ddc9be9560
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Tue Jan 2 19:25:18 2018 -0500
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Jan 2 19:25:18 2018 -0500

    [ft] Remember variations set on FT_Face and apply them
    
    For this to work correctly with hb-view, needs a patch that went
    into FreeType today.

 src/cairo-ft-font.c | 41 ++++++++++++++++++++++++++++++-----------
 1 file changed, 30 insertions(+), 11 deletions(-)

commit 6b0593827b072abd701ea47448981bcc9bdde9f3
Author:     Uli Schlachter <psychon@znc.in>
AuthorDate: Sun Dec 24 13:23:13 2017 +0100
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Sun Dec 24 13:23:13 2017 +0100

    Add test for error handling with broken PNG streams
    
    Would-have-caught: https://bugs.freedesktop.org/show_bug.cgi?id=104325
    Signed-off-by: Uli Schlachter <psychon@znc.in>

 test/Makefile.sources                |  1 +
 test/create-from-broken-png-stream.c | 87 ++++++++++++++++++++++++++++++++++++
 2 files changed, 88 insertions(+)

commit 82f4028532c11152a0110f1b277e3358dfca6545
Author:     Uli Schlachter <psychon@znc.in>
AuthorDate: Sat Dec 23 13:04:59 2017 +0100
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Sat Dec 23 13:04:59 2017 +0100

    Revert "fix warning: variable X might be clobbered by 'longjmp'"
    
    This reverts commit b092b63119cbfe3cb4bc786eee81630998996acf which
    introduced a wrapper function around setjmp(). To quote from man setjmp:
    
      If the function which called setjmp() returns before longjmp() is
      called, the behavior is undefined.  Some kind of subtle or unsubtle
      chaos is sure to result.
    
    Since after the above commit setjmp() is called from the wrapper
    function, the result might or might not work, depending on compiler
    settings. If the setjmp() wrapper is not inlined, then the state of the
    stack after longjmp() will likely be garbage.

 src/cairo-bentley-ottmann-rectangular.c |  8 +-------
 src/cairo-png.c                         | 17 ++++++-----------
 2 files changed, 7 insertions(+), 18 deletions(-)

commit 3e07efd21e91ab90969aa2e4fc8b66adebac01ed
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Wed Dec 20 17:09:05 2017 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Dec 20 17:09:05 2017 -0800

    makefile: Fix sorting of source files

 src/Makefile.sources | 58 ++++++++++++++++++++++++++--------------------------
 1 file changed, 29 insertions(+), 29 deletions(-)

commit e8ddc505b3d4fd8492910e05e99ce2fb3c32bd2b
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Tue Dec 19 15:59:50 2017 -0500
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 18:04:04 2017 -0500

    [ft] Fix warnings

 src/cairo-ft-font.c | 19 ++++++++-----------
 1 file changed, 8 insertions(+), 11 deletions(-)

commit c32a5c741f8fbb21912edc7fc7763a361415b914
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Tue Dec 19 17:36:36 2017 -0500
Commit:     Matthias Clasen <mclasen@redhat.com>
CommitDate: Tue Dec 19 17:36:36 2017 -0500

    Shortcut FT_Set_Var_Design_Coordinates
    
    We currently (have to) apply font variations for every glyph.
    Calling FT_Set_Var_Design_Coordinates has expensive side-effects,
    like resetting the autohinter, so we should avoid doing it
    fht he coordinates don't actually change.

 src/cairo-ft-font.c | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

commit d8ddadc5c3d5a74c433995d8bd82ba395bcd6973
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Tue Dec 19 15:29:13 2017 -0500
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 15:29:13 2017 -0500

    [ft] When merging font options, order variations correctly
    
    Later wins, and we want "options" to win over "other".

 src/cairo-ft-font.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 82107467f0c52fee1368246aa9d931a82bcfadc4
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Tue Dec 19 00:38:25 2017 -0500
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 15:18:57 2017 -0500

    [ft] Use variations from ft_options, not scaled-font
    
    Otherwise the variations from FcPattern won't be applied.

 src/cairo-ft-font.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 976b34c31cb6e70a902d57c705d92ea5f35577e3
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Mon Dec 18 18:51:03 2017 -0500
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 15:18:57 2017 -0500

    fixup
    
    We were passing a face index to cairo_ft_apply_variations,
    but that function was expecting an instance id, which is
    the face index shifted by 16.

 src/cairo-ft-font.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 5c7f07d4ea831dff42244782bd583ab5fe7817b7
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Mon Dec 18 13:50:23 2017 -0500
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 15:18:57 2017 -0500

    fixup: remove a hack
    
    This bug that this hack is working around has been
    fixed in freetype now.

 src/cairo-ft-font.c | 2 --
 1 file changed, 2 deletions(-)

commit 1b5677ad6d86a6e67ba99bf3df963a3789816dd5
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Mon Dec 18 13:01:23 2017 -0500
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 15:18:57 2017 -0500

    Apply font variations when loading glyphs
    
    So far, we only call cairo_ft_apply_variations() in
    cairo_ft_scaled_font_lock_face(), but this function is not
    used internally. We need to apply it also when loading
    glyphs.
    
    This makes pango-view show font variations correctly.

 src/cairo-ft-font.c | 2 ++
 1 file changed, 2 insertions(+)

commit f2b6fac43f2fcd362eced1c87c5760c763aa963f
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Mon Dec 18 13:00:18 2017 -0500
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 15:18:57 2017 -0500

    Trivial: code movement
    
    Move cairo_ft_apply_font_variations() earlier in the code
    since we will be using it in another place soon.

 src/cairo-ft-font.c | 148 ++++++++++++++++++++++++++--------------------------
 1 file changed, 74 insertions(+), 74 deletions(-)

commit 42f07ef9037ea871dc0e58200437aab9c702ad6d
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Thu Sep 28 16:24:13 2017 -0400
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 15:18:57 2017 -0500

    Always save the origin face index
    
    Save the original face_index also for the from_face case,
    so we can always rely on it when applying font variations.
    This prevents us from running into the same trap we've seen
    before where ft_face->face_index changes underneath us as
    font variations are applied.

 src/cairo-ft-font.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 1735fc41d3ac7015a584d73aa2c983f44f008788
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Thu Sep 28 15:40:22 2017 -0400
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 15:18:57 2017 -0500

    Apply font variation options consistently
    
    We must not look at the instance_id field of the cached ft_face,
    since freetype changes it underneath us (if we set the axis values
    to match a named instance, the instance_id gets changed to reflect
    that). Thankfully, we have the original instance_id stashed away
    in the cairo_unscaled_font, so we can just use that to decide if
    we are dealing with a named instance or not.
    
    This makes the font variations tests pass.

 src/cairo-ft-font.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 46034b0547ea9b69392bde5b334f1891bd51c98a
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Wed Sep 20 22:29:30 2017 -0400
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 15:18:57 2017 -0500

    Make the font-variations test pass
    
    Not sure what I was thinking - the test is checking the width
    axis, but the font we're using has only weight and contrast
    as axes...

 test/font-variations.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit db946d1788b8be1aef39102efe93826886b6addf
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Wed Sep 20 18:51:36 2017 -0700
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 15:18:57 2017 -0500

    [varfonts] Correctly (re)set variations of named instances

 src/cairo-ft-font.c | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

commit 7125c4bf5e95164f4202a0f16fff07198e578668
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Wed Sep 20 18:50:57 2017 -0700
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 15:18:57 2017 -0500

    [varfonts] Use blend, not design, coordinates to check for non-base variation
    
    If all blend coordinates are zero, we are at base font.  This is more robust.

 src/cairo-ft-font.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 374ee5a2fd1f749de8d52a2536dc8fb23ef17121
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Wed Sep 20 15:14:54 2017 -0700
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 15:17:01 2017 -0500

    [variations] Merge variations in cairo-ft font option merging
    
    This function should be rewritten to call cairo_font_options_merge(), but
    currently it doesn't.
    
    Speculative. Untested.

 src/cairo-ft-font.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

commit 34047d11db847777d32b5eb49dfcb64bc08e33d0
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Wed Sep 20 15:11:27 2017 -0700
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 15:17:01 2017 -0500

    [variations] Fix test
    
    This does not exercise merging of variations from font-options and from
    pattern.  Before this commit the code was more towards doing that.

 test/font-variations.c | 17 ++++++-----------
 1 file changed, 6 insertions(+), 11 deletions(-)

commit 6accf16093b3d3451eca10ee194c00a1107b8861
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Wed Sep 20 14:53:10 2017 -0700
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 15:17:01 2017 -0500

    [variations] Towards fixing test

 test/font-variations.c | 19 +++++++++++++------
 1 file changed, 13 insertions(+), 6 deletions(-)

commit 7cc07f184bf705891bfb6b7f3b4f4b425370b5cd
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Sat Sep 16 13:23:57 2017 -0400
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 15:17:01 2017 -0500

    Work around a freetype bug
    
    The first call to FT_Get_MM_Var on a newly created FT_Face
    fails. So just repeat the call.

 src/cairo-ft-font.c | 2 ++
 1 file changed, 2 insertions(+)

commit 38b6e23609085ecb736530e47ffd04564304415e
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Sat Sep 16 13:22:22 2017 -0400
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 15:17:01 2017 -0500

    Add a test for font variations
    
    This test checks that passing font variation settings via
    font options has the desired effect. It checks this by reading
    the effective axis values out of the FT_Face after creating
    a font with these options.

 test/Makefile.am       |   1 +
 test/Makefile.sources  |   1 +
 test/font-variations.c | 196 +++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 198 insertions(+)

commit 721b7ea0a785afaa04b6da63f970c3c57666fdfe
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Sun Sep 17 10:54:58 2017 -0400
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 15:17:01 2017 -0500

    Apply font variations when loading fonts
    
    Parse font variation settings and pass them on to
    freetype when loading fonts.

 src/cairo-ft-font.c | 69 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 68 insertions(+), 1 deletion(-)

commit a8ae2eafc85fda76fde79defa40fe06000d907db
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Sun Sep 17 11:17:13 2017 -0400
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 15:17:01 2017 -0500

    Use strtod_l when available
    
    Using strtod_l and newlocale is a nicer way to have provide
    a C-locale-only strtod. Since these APIs are not available
    everywhere, keep the old code as a fallback.

 configure.ac     |  3 +++
 src/cairo-misc.c | 37 +++++++++++++++++++++++++++++++++++++
 2 files changed, 40 insertions(+)

commit ac5acc45383f7ada422dec3e7c8a71bdb041fc8a
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Sun Sep 17 10:54:04 2017 -0400
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 15:16:20 2017 -0500

    Load font variations from fontconfig too
    
    When extracting font options from a fontconfig pattern,
    also extract font variation information if present.

 src/cairo-ft-font.c | 8 ++++++++
 1 file changed, 8 insertions(+)

commit edf9497c3a28bc4e110ecf08069c8d48b995a0ea
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Sun Sep 17 10:40:13 2017 -0400
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 15:16:19 2017 -0500

    Add font variations to font options
    
    Add a font option for OpenType font variations, specified
    as a string in a format similar to the proposed css
    font-variation-settings property.

 src/cairo-font-options.c  | 87 +++++++++++++++++++++++++++++++++++++++++++++--
 src/cairo-types-private.h |  1 +
 src/cairo.h               |  7 ++++
 3 files changed, 92 insertions(+), 3 deletions(-)

commit 4ece386149ccd8fbad5f8dff5d792ad2b49d5915
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Sun Sep 17 10:20:06 2017 -0400
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 15:16:19 2017 -0500

    Make _intern_string_hash non-static
    
    We will use this function in cairo-font-options.c in the following
    commits.

 src/cairo-misc.c | 6 +++---
 src/cairoint.h   | 3 +++
 2 files changed, 6 insertions(+), 3 deletions(-)

commit d50dbbaf278c3dd9558a097124147e353a98c32a
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Sun Sep 17 10:16:48 2017 -0400
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Dec 19 15:16:19 2017 -0500

    Make _intern_string_hash safe for ""
    
    The loop was unnecessarily written in a way that fails
    to terminate if len is 0 (ie for the empty string).
    Avoid that by checking for len > 0 explicitly.

 src/cairo-misc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 903b0de539844c144c63ea57c30e84a23360c290
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Sun Dec 17 21:24:53 2017 -0500
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Sun Dec 17 21:36:17 2017 -0500

    Fix a logic error in color glyph compositing
    
    When a color glyph is completely clipped away, we
    get the non-zero status 'nothing to do'. In that case,
    we must not exit early, since there might still be work
    to do for the other color glyphs.
    
    This bug was showing up as color glyphs stopping to render
    in GTK+ entries that are scrolled to the right, and also
    as color glyphs not rendering inside the selection sometimes.
    
    See https://bugzilla.gnome.org/show_bug.cgi?id=790255 and
    https://bugzilla.gnome.org/show_bug.cgi?id=788071.

 src/cairo-surface.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 06964531e01bd0912a0edda81cea459ae460ffaa
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Thu Dec 14 09:58:57 2017 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Dec 14 09:58:57 2017 -0800

    svg: Label for cairo_svg_unit_t doxygen was incorrect

 src/cairo-svg.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 742199768db7128f4f1cebcc14ec687f816ae2fa
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Mon Dec 11 14:43:50 2017 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Dec 11 14:44:07 2017 -0800

    Bump version for new development tree, 1.15.9

 cairo-version.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5e6b9aeb5e3402ff17ae8ee8548ae2341c2f7d59
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Mon Dec 11 13:02:28 2017 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Dec 11 14:44:07 2017 -0800

    1.15.10 release
    
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 NEWS            | 72 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 cairo-version.h |  2 +-
 2 files changed, 73 insertions(+), 1 deletion(-)

commit 19ee9211879ad8c90ee7d467d8d9495dc9a0fa88
Author:     Antonio Ospite <ao2@ao2.it>
AuthorDate: Fri Dec 8 09:44:27 2017 +0100
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Sun Dec 10 20:13:19 2017 -0800

    svg: fix compilation with MSVC which doesn't support C99 initializers
    
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>
    Tested-by: John Emmas <john@creativepost.co.uk>

 src/cairo-svg-surface.c | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

commit f9cf6f9200f3c84f8601a78ea73330eeed0c3e12
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Fri Dec 8 18:13:20 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Fri Dec 8 18:13:20 2017 +1030

    ps: fix compile warning
    
    https://lists.cairographics.org/archives/cairo/2017-December/028481.html

 src/cairo-ps-surface.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit f723ce31920cf5d5fe0ba417bb4b50b62a3ac4e6
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Thu Dec 7 15:53:16 2017 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Dec 7 15:53:16 2017 -0800

    pattern: Mark a private routine as cairo_private.
    
    Fixes distcheck PLT error:
    
      Checking .libs/libcairo.so for local PLT entries
      000000000031f1d0  0000024200000007 R_X86_64_JUMP_SLOT
      0000000000055de0 _cairo_pattern_is_constant_alpha + 0

 src/cairo-pattern-private.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c9a78ec9c21900f4418988ffe832b7e611a776c8
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Thu Dec 7 14:15:17 2017 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Dec 7 14:15:17 2017 -0800

    Fix distcheck errors on use of #ifdef
    
    Checking that feature conditionals are used with #if only (not #ifdef)
    ./cairo-ft.h:#ifdef CAIRO_HAS_FC_FONT
    ./cairo-ft.h:#ifdef CAIRO_HAS_FC_FONT

 src/cairo-ft.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 04b4967586ac31763186d9894107b8c8403bcb34
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Thu Dec 7 14:00:21 2017 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Dec 7 14:13:32 2017 -0800

    Fix various doxygen warnings found by check-doc-syntax.sh
    
    ./cairo-clip-boxes.c (268): ERROR: copy invalid doc id (should be 'cairo_...:')
    ./cairo-clip-boxes.c (274): ERROR: copy bad line: ' */'
    ./cairo-clip-boxes.c (274): ERROR: copy documentation comment not closed with **/
    ./cairo-boxes.c (106): ERROR: Computes invalid doc id (should be 'cairo_...:')
    ./cairo-boxes.c (114): ERROR: Computes bad line: ' */'
    ./cairo-boxes.c (114): ERROR: Computes documentation comment not closed with **/
    ./cairo-boxes.c (279): ERROR: Computes invalid doc id (should be 'cairo_...:')
    ./cairo-boxes.c (284): ERROR: Computes bad line: ' */'
    ./cairo-boxes.c (284): ERROR: Computes documentation comment not closed with **/
    ./cairo-boxes.c (338): ERROR: Linearize invalid doc id (should be 'cairo_...:')
    ./cairo-boxes.c (345): ERROR: Linearize documentation comment not closed with **/
    ./cairo.c (240): ERROR: SECTION:cairo-tag bad line: ''
    ./cairo.c (892): ERROR: cairo_set_source_rgb: Duplicate 'Since' field

 src/cairo-boxes.c       | 23 +++++++++++++----------
 src/cairo-clip-boxes.c  | 11 +++++------
 src/cairo-svg-surface.c |  2 +-
 src/cairo.c             |  4 +---
 4 files changed, 20 insertions(+), 20 deletions(-)

commit dbc1636a9b932fd81ace436a03c1992a6ac1cbcf
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Thu Dec 7 13:25:58 2017 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Dec 7 14:13:32 2017 -0800

    win32: Fix since field version number
    
    check-doc-syntax.sh expects since numbers to be MAJOR.MINOR without a
    patch level number

 src/win32/cairo-win32-display-surface.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit bb0d616c4efe1015d17d41125f235a219ad14322
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Wed Dec 6 18:27:21 2017 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Dec 7 14:13:28 2017 -0800

    image: Fix include for use of ptrdiff
    
    Commit 38fbe621 added use of the ptrdiff_t type in a header file,
    however `make distcheck` complains:
    
    In file included from headers-standalone-tmp.c:1:0:
    ../../../src/cairo-image-surface-private.h:74:5: error: unknown type name ‘ptrdiff_t’
         ptrdiff_t stride;
         ^

 src/cairo-image-surface-private.h | 1 +
 1 file changed, 1 insertion(+)

commit 15559b54af473d720da9e03b0e769c54a53505a9
Author:     Antonio Ospite <ao2@ao2.it>
AuthorDate: Wed Oct 11 18:51:13 2017 +0200
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Dec 4 13:58:34 2017 -0800

    svg: add a new function to specify the SVG document unit
    
    Add a cairo_svg_surface_set_document_unit() function to allow users to
    set a unit for the width and height values of the root <svg> element.
    
    In particular this allows to draw in pixels and still have the expected
    result when generating SVG output.
    
    Add also the correspondent getter function.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=90166
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-svg-surface.c | 84 +++++++++++++++++++++++++++++++++++++++++++++++--
 src/cairo-svg.h         | 47 +++++++++++++++++++++++++++
 2 files changed, 129 insertions(+), 2 deletions(-)

commit 84fc0ce91d1a57d20500f710abc0e17de82c67df
Author:     Tom Schoonjans <Tom.Schoonjans@diamond.ac.uk>
AuthorDate: Thu Nov 2 16:55:22 2017 +0000
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Nov 26 20:16:43 2017 +1030

    Use UTF-8 filenames on Windows
    
    Until now fopen was used on Windows to open files for reading and
    writing. This assumed however that the filename would be encoded in the
    current codepage, which is a major inconvenience and makes it even
    impossible to use filenames that use characters from more than one
    codepage. This patch enforces the use of UTF-8 filenames on all
    platforms.
    
    Based on the work of Owen Taylor (https://lists.cairographics.org/archives/cairo/2007-February/009591.html)

 src/cairo-misc.c          | 62 +++++++++++++++++++++++++++++++++++++++++++++++
 src/cairo-output-stream.c |  7 +++++-
 src/cairo-png.c           | 20 +++++++++++----
 src/cairoint.h            |  4 +++
 4 files changed, 87 insertions(+), 6 deletions(-)

commit e5532f5ad7f5493d703f9a7110b0816b5fa33e54
Author:     Mikhail Fludkov <misha@pexip.com>
AuthorDate: Mon Nov 6 13:07:00 2017 +0100
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Nov 26 13:09:51 2017 +1030

    Fix code generation when using GCC legacy atomic operations
    
    https://bugs.freedesktop.org/show_bug.cgi?id=103559

 build/aclocal.cairo.m4     | 8 ++++----
 src/cairo-atomic-private.h | 9 +--------
 2 files changed, 5 insertions(+), 12 deletions(-)

commit f614f588e67daebd123bb6698b56d4b8054616c4
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Nov 11 16:59:47 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Nov 26 13:03:44 2017 +1030

    Prevent -Wundef warnings in when cairo-ft.h is used without fontconfig

 src/cairo-ft.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit a709197121c8e405c2dd99e408ee3046ccf50a6a
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sun Nov 26 13:03:18 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Nov 26 13:03:18 2017 +1030

    pdf: fix some annotation bugs
    
    - each annotation was emitted on every page instead of just the page
      that contains the annotation
    
    - the document structure did not correctly link to annotation objects
    
    - fix some annotation related memory leaks

 src/cairo-pdf-interchange.c     | 165 ++++++++++++++++++++++++++++++----------
 src/cairo-pdf-surface-private.h |  14 ++--
 src/cairo-pdf-surface.c         |   3 +-
 src/cairo-tag-attributes.c      |   4 +
 4 files changed, 138 insertions(+), 48 deletions(-)

commit 17e2abc992b012ac3dceb2f66fba17d312ae6d77
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Mon Nov 20 05:37:34 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Mon Nov 20 05:37:34 2017 +1030

    ps: fix compile with old versions of MSVC
    
    https://lists.cairographics.org/archives/cairo/2017-November/028452.html

 src/cairo-ps-surface.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0c8070f5bc74c124e6393b433a61807a8e4bee5d
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Thu Nov 16 20:16:14 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Nov 16 20:16:14 2017 +1030

    pdf: fix document structure for non tagged structures

 src/cairo-pdf-interchange.c | 26 ++++++++++++++++++++------
 1 file changed, 20 insertions(+), 6 deletions(-)

commit 164be896603ceb419c5bc47c7348781f791f70e4
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Fri Nov 10 20:10:01 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Fri Nov 10 20:10:01 2017 +1030

    test: update some stale ref images

 test/reference/record-extend-pad.ps.ref.png         | Bin 341 -> 0 bytes
 ...recording-surface-extend-none.pdf.argb32.ref.png | Bin 3941 -> 3944 bytes
 .../recording-surface-extend-none.pdf.rgb24.ref.png | Bin 3775 -> 3773 bytes
 ...ording-surface-extend-reflect.pdf.argb32.ref.png | Bin 29897 -> 29999 bytes
 ...cording-surface-extend-reflect.pdf.rgb24.ref.png | Bin 29901 -> 29984 bytes
 ...cording-surface-extend-repeat.pdf.argb32.ref.png | Bin 26323 -> 26534 bytes
 ...ecording-surface-extend-repeat.pdf.rgb24.ref.png | Bin 25867 -> 26017 bytes
 test/reference/scale-offset-similar.pdf.ref.png     | Bin 9742 -> 9742 bytes
 8 files changed, 0 insertions(+), 0 deletions(-)

commit 5c7a6ca141363333a5dc9d2eaef055d383f91ef9
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Fri Nov 10 20:10:01 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Fri Nov 10 20:10:01 2017 +1030

    ps: fix extend-*-similar failures

 src/cairo-ps-surface-private.h |  1 +
 src/cairo-ps-surface.c         | 39 +++++++++++++++++++++------------------
 2 files changed, 22 insertions(+), 18 deletions(-)

commit 9bfa9df2bb8557623df7c561613ea6eaa2a67cdd
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Thu Nov 9 20:52:36 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Nov 9 22:02:05 2017 +1030

    ps: fix padded image crash

 src/cairo-ps-surface.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

commit f7d6d78f9428c6813e79d5f7c1351c354d44da64
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Thu Nov 9 20:52:36 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Nov 9 22:02:05 2017 +1030

    ps: prevent self-copy infinite loop

 src/cairo-ps-surface-private.h |  3 ++-
 src/cairo-ps-surface.c         | 24 +++++++++++++++++++++++-
 2 files changed, 25 insertions(+), 2 deletions(-)

commit 71746c37d48a08d56b18d4d82185896ada215194
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Thu Nov 9 20:52:36 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Nov 9 22:02:05 2017 +1030

    test: use CAIRO_MIME_TYPE_UNIQUE_ID with record-text-transform
    
    The PS output from this test is > 100MB due to the duplicated images.
    Using CAIRO_MIME_TYPE_UNIQUE_ID reduces the PS output to 650k, runs
    considerably faster, and now produces correct output.

 test/cairo-test.c                                     |   5 +++++
 test/record.c                                         |  11 +++++++++++
 .../reference/record-text-transform.ps.argb32.ref.png | Bin 1216 -> 3995 bytes
 test/reference/record-text-transform.ps.rgb24.ref.png | Bin 1216 -> 3995 bytes
 4 files changed, 16 insertions(+)

commit 5ffbaf9e2f7da103da8d015b5f928e25f9433b60
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Thu Nov 9 20:52:36 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Nov 9 22:02:05 2017 +1030

    ps: add CAIRO_MIME_TYPE_EPS mime type for embedding EPS files

 doc/public/cairo-sections.txt      |   2 +
 src/cairo-ps-surface-private.h     |   1 +
 src/cairo-ps-surface.c             | 183 +++++++++++++++++++++++++++++++++++--
 src/cairo-surface.c                |  18 ++++
 src/cairo-tag-attributes-private.h |   7 ++
 src/cairo-tag-attributes.c         |  47 ++++++++++
 src/cairo.h                        |   2 +
 7 files changed, 252 insertions(+), 8 deletions(-)

commit 7d3ba77b6cd20f68cfbda3d8008811265aa030cb
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Thu Nov 9 20:52:36 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Nov 9 22:01:40 2017 +1030

    ps: use Reusable streams for forms in Level 3
    
    to avoid emitting image data as strings

 src/cairo-ps-surface.c | 57 +++++++++++++++++++++++++++++++++++++++++++-------
 test/mime-unique-id.c  |  2 +-
 2 files changed, 50 insertions(+), 9 deletions(-)

commit b1c7a087b5da9a3bfa1e05e2e99861e07723c6f8
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Thu Nov 9 20:52:36 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Nov 9 22:01:40 2017 +1030

    ps: use forms for surfaces with UNIQUE_ID mime type
    
    to ensure the surfaces are emitted only once.
    
    fixes mime-unique-id PS output

 src/cairo-ps-surface-private.h |  19 +-
 src/cairo-ps-surface.c         | 665 ++++++++++++++++++++++++++++++++---------
 test/mime-unique-id.c          |   4 +-
 3 files changed, 544 insertions(+), 144 deletions(-)

commit 638d64a702449fee130b103e623c8fa3b8c06e9b
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Thu Nov 9 20:52:36 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Nov 9 22:01:40 2017 +1030

    ps: don't acquire image or snapshot in acquire_source_image_from_pattern
    
    otherwise emit_surface may not see the mime data

 src/cairo-ps-surface.c | 156 +++++++++++++++++++------------------------------
 1 file changed, 61 insertions(+), 95 deletions(-)

commit fcc037a76ecd70050e324d0e3f7decd81f2f0a05
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Thu Nov 9 20:52:36 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Nov 9 22:01:40 2017 +1030

    ps: use << >> for dictionaries instead of dict begin end

 src/cairo-ps-surface.c | 94 ++++++++++++++++++++++++--------------------------
 1 file changed, 46 insertions(+), 48 deletions(-)

commit 632232c3ce465e31929ab026012c731491492d6a
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Thu Nov 9 20:52:36 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Nov 9 22:01:40 2017 +1030

    ps: remove unused prolog

 src/cairo-ps-surface.c | 3 ---
 1 file changed, 3 deletions(-)

commit 9d372ca91a067b00fc1f66f466ab795206f5ef14
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Thu Nov 9 20:52:36 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Nov 9 22:01:40 2017 +1030

    ps: emit base85 strings instead of strings of base85
    
    When image data is emitted as strings (required when an image is used
    in a PaintProc), the base85 encoded data was emitted inside PS strings
    (...) and the image filters included an ASCI85Decode filter.
    
    This has been changed to emit the strings as ASCII85 strings <~...~>
    and remove the ASCII85Decode filter since the base85 is decoded when
    the string is parsed.
    
    Also factor out the string data source procedure into the prolog.

 src/cairo-ps-surface.c | 186 +++++++++++++++++++++----------------------------
 1 file changed, 79 insertions(+), 107 deletions(-)

commit d5cb45013bf10d97657cea105683bf5ccb21c2d7
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Thu Nov 9 20:52:36 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Nov 9 22:01:40 2017 +1030

    pdf: fix mime-unique-id jpeg attached to recording test
    
    - Restructure the emit_surface code so that mime types are checked first.
    
    - Add a test parameter to emit_surface to test if the surface will be emitted
      as an image or recording instead checking the surface type as the attached
      mime may override this.
    
    - Mark surface as not clear when mime is attached to avoid optimizing away
      "clear" surfaces that have mime attached.
    
    - Include entire surface in analysis if mime attached (also fixes bug with
      calculating the extents CONTENT_COLOR surfaces)

 src/cairo-analysis-surface.c | 172 +++++++++++++++++++----------------
 src/cairo-pdf-surface.c      | 209 +++++++++++++++++++++++++++++--------------
 src/cairo-surface.c          |  42 +++++++++
 src/cairoint.h               |   3 +
 test/mime-unique-id.c        |   4 +-
 5 files changed, 286 insertions(+), 144 deletions(-)

commit bff47b43c4b0501c0255e9ba191904bea13ddf5c
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Thu Nov 9 20:52:36 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Nov 9 20:52:36 2017 +1030

    pdf: fix mime-unique-id unbounded recording test
    
    PDF XObjects need to specify the bounding box. Emit unbounded surfaces
    when finishing as at this point the extents of all uses of the
    unbounded surface are known.

 src/cairo-pdf-surface-private.h |  7 +++-
 src/cairo-pdf-surface.c         | 85 +++++++++++++++++++++++++++++++----------
 src/cairo-surface.c             |  4 +-
 3 files changed, 72 insertions(+), 24 deletions(-)

commit cf9a07035292f3a1a3d057cfbb9dac1447a11235
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Thu Nov 9 20:52:36 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Nov 9 20:52:36 2017 +1030

    pdf: fix mime-unique-id bounded recording test
    
    The embedded bounded recording surface was being clipped to the
    extents of its first use.

 src/cairo-pdf-surface.c | 77 ++++++++++++++++++++-----------------------------
 1 file changed, 31 insertions(+), 46 deletions(-)

commit 5e4707a10d476604614bddcc9ba8b06f6002e6d6
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Thu Nov 9 20:52:36 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Nov 9 20:52:36 2017 +1030

    Add mime-unique-id test
    
    to check that PS/PDF embeds images with CAIRO_MIME_TYPE_UNIQUE_ID only
    once.

 test/Makefile.sources |   2 +-
 test/mime-unique-id.c | 511 ++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 512 insertions(+), 1 deletion(-)

commit 38fbe621cf80d560cfc27b54b5417b62cda64c8a
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Thu Oct 20 21:12:30 2016 +1030
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Nov 7 17:01:49 2017 -0800

    image: prevent invalid ptr access for > 4GB images
    
    Image data is often accessed using:
    
      image->data + y * image->stride
    
    On 64-bit achitectures if the image data is > 4GB, this computation
    will overflow since both y and stride are 32-bit types.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=98165
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 boilerplate/cairo-boilerplate.c     | 4 +++-
 src/cairo-image-compositor.c        | 4 ++--
 src/cairo-image-surface-private.h   | 2 +-
 src/cairo-mesh-pattern-rasterizer.c | 2 +-
 src/cairo-png.c                     | 2 +-
 src/cairo-script-surface.c          | 3 ++-
 6 files changed, 10 insertions(+), 7 deletions(-)

commit 35fccff6ec393ccca3d3ced79093ca491ce32df4
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Mon Nov 6 12:09:53 2017 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Nov 6 12:18:37 2017 -0800

    Un-doxygen disabled cairo_set_opacity
    
    The cairo_set_opacity() routine has been disabled since 2010.  There
    appears to be support for it internally in the backend, so it is unclear
    why it is not enabled or what might break if it were re-enabled.  Given
    the lack of bug reports about its omission, it may be vestigal.  For
    now, just hide the doxygen for it to suppress warnings.  It may be worth
    deeper review to either re-enable it or remove it entirely.
    
    Reported-by: Rafał Mużyło (See fdo bugzilla #82741)
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 8d89fc573eae0bc0234e1b909932e405a776b7e1
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Mon Nov 6 11:28:58 2017 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Nov 6 11:35:24 2017 -0800

    configure: Check for typeof
    
    Check via the AC_C_TYPEOF macro if GCC's typeof is available.  If it is
    available via a different spelling, define typeof to that spelling.
    
    Patch from and issue reported by Richard Palo.
    
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=93027

 configure.ac | 1 +
 1 file changed, 1 insertion(+)

commit 3322580f0488ff77f53d86c2b4d3cf59e6dca4c7
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Tue Oct 24 21:30:45 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Tue Oct 24 21:44:08 2017 +1030

    pdf: remove old comment
    
    These issues have been fixed.

 src/cairo-pdf-surface.c | 9 ---------
 1 file changed, 9 deletions(-)

commit 1674d2b8850f9264232e60e82cb5b2827426632c
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Tue Oct 24 21:26:56 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Tue Oct 24 21:44:08 2017 +1030

    pdf: set default create date

 boilerplate/cairo-boilerplate-pdf.c |  1 +
 build/configure.ac.system           |  2 +-
 src/cairo-pdf-interchange.c         | 50 +++++++++++++++++++++++++++++++++++++
 src/cairo-pdf-surface.c             |  1 -
 4 files changed, 52 insertions(+), 2 deletions(-)

commit 378e8e2f59a109a40da8e40893652a4c003a4dc7
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Tue Oct 24 07:01:14 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Tue Oct 24 07:01:14 2017 +1030

    pdf: set ca/CA instead of using an smask when the mask has constant alpha

 src/cairo-pattern-private.h     |  5 +++
 src/cairo-pattern.c             | 53 +++++++++++++++++++++++++++++
 src/cairo-pdf-surface-private.h |  1 +
 src/cairo-pdf-surface.c         | 74 ++++++++++++++++++++++++++++++++---------
 4 files changed, 117 insertions(+), 16 deletions(-)

commit 5fd0b8710f125bb33c55d75fcc8252996b403e2d
Author:     Carlos Garcia Campos <cgarcia@igalia.com>
AuthorDate: Wed Oct 18 11:33:25 2017 +0200
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Oct 22 11:09:02 2017 +1030

    scaled-font: Fix assert when destroying glyph page
    
    This happens when _cairo_ft_scaled_glyph_init() returns
    CAIRO_INT_STATUS_UNSUPPORTED when called from
    _cairo_scaled_glyph_lookup(). In those cases
    _cairo_scaled_font_free_last_glyph() is called to release the glyph that
    has just been allocated. If there aren't more glyphs,
    _cairo_scaled_glyph_page_destroy() is called. The problem is that
    _cairo_scaled_glyph_lookup() should always be called with the cache
    frozen, and _cairo_scaled_glyph_page_destroy() without the cache
    frozen. We can simply thaw/freeze the font before calling
    _cairo_scaled_glyph_page_destroy().
    
    https://bugs.freedesktop.org/show_bug.cgi?id=103335

 src/cairo-scaled-font.c | 7 +++++++
 1 file changed, 7 insertions(+)

commit 87dfd0c16f4fa798c1f72612a2e070fca8547ad2
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sun Oct 22 08:45:45 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Oct 22 08:59:58 2017 +1030

    Allow mime image to be different size to cairo image
    
    Previously it was assumed the mime image size is the same as the cairo
    image surface size. When using the 1 bpp formats (CCITT, JBIG2),
    creating a cairo image of the same size will have very large memory
    requirements and in some case may exceed the pixman image size
    limits. In these cases it is useful to allow the mime image to have a
    different resolution to the cairo image and in the PDF/PS output scale
    the mime image to be the same physical size as the cairo image.
    
    In PDF, this is easy as all PDF images are scaled to 1x1 unit and the
    CTM is used to scale the image to the required size. The PS surface
    has been changed to also scale images to 1x1 and use the CTM to get
    the required size.

 src/cairo-pdf-surface.c | 124 ------------------------------------------------
 src/cairo-ps-surface.c  |  29 +++++++++--
 2 files changed, 24 insertions(+), 129 deletions(-)

commit e1a02b180d804887980c111c1f9780bed44b96a6
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sun Oct 22 08:07:49 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Oct 22 08:42:36 2017 +1030

    Add CCITT_FAX mime type for PDF and PS surfaces
    
    This completes the full set of PDF/PS image filters allowing image
    data to be passed though without decompressing then recompresssing in
    a less efficient format.
    
    The difficulty with CCITT_FAX is it needs some decoding parameters
    that are not stored inside the image data. This is achieved by using
    an additional mime type CCITT_FAX_PARAMS that contains the params in
    key=value format.

 doc/public/cairo-sections.txt                |   2 +
 src/Makefile.sources                         |  16 +-
 src/cairo-pdf-surface-private.h              |   2 +-
 src/cairo-pdf-surface.c                      | 263 ++++++++++++++++++++++++---
 src/cairo-ps-surface.c                       | 200 ++++++++++++++++++--
 src/cairo-surface.c                          |  21 ++-
 src/cairo-tag-attributes-private.h           |  15 ++
 src/cairo-tag-attributes.c                   |  80 ++++++++
 src/cairo.h                                  |   2 +
 test/ccitt.g3                                |   2 +
 test/mime-data.c                             |  56 +++++-
 test/reference/mime-data.base.argb32.ref.png | Bin 243 -> 272 bytes
 test/reference/mime-data.base.rgb24.ref.png  | Bin 243 -> 272 bytes
 test/reference/mime-data.pdf.ref.png         | Bin 7563 -> 8205 bytes
 test/reference/mime-data.ps.ref.png          | Bin 4705 -> 5386 bytes
 test/reference/mime-data.ref.png             | Bin 243 -> 272 bytes
 test/reference/mime-data.script.ref.png      | Bin 2130 -> 2175 bytes
 test/reference/mime-data.svg.ref.png         | Bin 6437 -> 6513 bytes
 18 files changed, 609 insertions(+), 50 deletions(-)

commit 4ae7f411c865a25b577faea58e5fda6f4e9e1172
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 21 20:05:56 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 21 20:05:56 2017 +1030

    util/font-view: fix build error

 util/font-view.c | 2 ++
 1 file changed, 2 insertions(+)

commit 9ffbf63d3715f81ec92cdba93b60a04a11be130f
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 21 13:05:26 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 21 13:08:39 2017 +1030

    fix warning: inlining failed in call to '_csi_stack_push'

 util/cairo-script/cairo-script-interpreter.c | 11 +++++++++++
 util/cairo-script/cairo-script-private.h     | 11 ++---------
 2 files changed, 13 insertions(+), 9 deletions(-)

commit b092b63119cbfe3cb4bc786eee81630998996acf
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 21 13:02:42 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 21 13:08:30 2017 +1030

    fix warning: variable X might be clobbered by 'longjmp'
    
    Move calls to setjmp into separate function to avoid clobbering
    local variables.

 src/cairo-bentley-ottmann-rectangular.c |  8 +++++++-
 src/cairo-png.c                         | 17 +++++++++++------
 2 files changed, 18 insertions(+), 7 deletions(-)

commit 132794f6832ea83e2f9a72e11b05080d2cdf80f8
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Mon Oct 16 20:13:48 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Mon Oct 16 20:18:49 2017 +1030

    svg: recording_surface is needed even if not emitted

 src/cairo-svg-surface.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 27990e391070dd43f08450a3d54c90d18e6d85f3
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Mon Oct 16 19:47:21 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Mon Oct 16 20:18:49 2017 +1030

    fix unused function warnings

 src/cairo-botor-scan-converter.c | 2 ++
 test/any2ppm.c                   | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

commit fc929d70054583d0c21f24b18083348e3e7d914c
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Mon Oct 16 19:42:16 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Mon Oct 16 19:42:16 2017 +1030

    ft: prevent unused var warning when freetype < 2.8

 src/cairo-ft-font.c | 18 +++++++++++-------
 1 file changed, 11 insertions(+), 7 deletions(-)

commit 1d58e0f81856038d8aa306b97302485a4d2e2ec9
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sun Oct 15 19:42:08 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Oct 15 19:42:08 2017 +1030

    svg2png: remove unused headers

 test/svg2png.c | 2 --
 1 file changed, 2 deletions(-)

commit 90104809b0e03d28ac1152034fd4f05fc8e97b9a
Author:     Mikhail Fludkov <misha@pexip.com>
AuthorDate: Fri Oct 6 13:47:51 2017 +0200
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Oct 15 18:51:04 2017 +1030

    Surround initialisations with atomic critical section
    
    Fixes the race condition when one thread uses cairo_mask_compositor_t
    pointer returned by _cairo_image_mask_compositor_get, while another one
    started but has not finished it's initialisation yet
    
    Usage:
    static cairo_atomic_once_t once = CAIRO_ATOMIC_ONCE_INIT;
    if (_cairo_atomic_init_once_enter(&once)) {
        /* Initialization code */
        _cairo_atomic_init_once_leave(&once);
    }
    
    https://bugs.freedesktop.org/show_bug.cgi?id=103037

 src/cairo-atomic-private.h             | 33 +++++++++++++++++++++++++++++++++
 src/cairo-gl-msaa-compositor.c         |  5 ++++-
 src/cairo-gl-spans-compositor.c        |  5 ++++-
 src/cairo-gl-traps-compositor.c        |  5 ++++-
 src/cairo-image-compositor.c           | 19 ++++++++++++++-----
 src/cairo-image-mask-compositor.c      |  5 ++++-
 src/cairo-xlib-core-compositor.c       |  5 ++++-
 src/cairo-xlib-render-compositor.c     | 10 ++++++++--
 src/test-null-compositor-surface.c     | 10 ++++++++--
 src/win32/cairo-win32-gdi-compositor.c |  5 ++++-
 10 files changed, 87 insertions(+), 15 deletions(-)

commit 79e0e25e441a74e3ec207d95bd83437457ba1885
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sun Oct 15 07:57:54 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Oct 15 07:57:54 2017 +1030

    svg: source surface hash table does not need to hold the source

 src/cairo-svg-surface-private.h | 1 -
 src/cairo-svg-surface.c         | 2 --
 2 files changed, 3 deletions(-)

commit 965ba86bbf87fb0d8df666cbba7c8823cc393b0b
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 14 19:47:39 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 14 20:53:01 2017 +1030

    svg: use hash table instead of user_data to track emitted surfaces
    
    Setting a key on the source surface->user_data prevents the surface
    from being reused to create another svg file.
    
    The hash table also supports CAIRO_MIME_TYPE_UNIQUE_ID.
    
    https://lists.cairographics.org/archives/cairo/2017-October/028406.html

 src/cairo-svg-surface-private.h |   9 ++
 src/cairo-svg-surface.c         | 185 ++++++++++++++++++++++++++++++++--------
 2 files changed, 159 insertions(+), 35 deletions(-)

commit bb10bd10138a262759b37281135b5199e334f392
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Fri Oct 13 19:44:45 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Fri Oct 13 19:50:24 2017 +1030

    truetype: limit font name to 127 chars
    
    Some broken fonts have long strings of garbage in the font name
    
    https://bugs.freedesktop.org/show_bug.cgi?id=103249

 src/cairo-truetype-subset.c | 16 ++++++++++++++--
 1 file changed, 14 insertions(+), 2 deletions(-)

commit 202a9ed64e3d164307defddb41a9f8cf9e9b751b
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Fri Oct 13 19:27:03 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Fri Oct 13 19:33:30 2017 +1030

    output-stream: allow %s strings larger than 512 chars
    
    https://bugs.freedesktop.org/show_bug.cgi?id=103249

 src/cairo-output-stream.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

commit d5b634da61597aa8e80ba7d5bc39f092e5888515
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Wed Oct 11 19:13:46 2017 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Oct 11 19:13:46 2017 -0700

    Factor out the ISFINITE() macro

 src/cairo-gstate.c      | 6 ------
 src/cairo-matrix.c      | 6 ------
 src/cairo-scaled-font.c | 6 ------
 src/cairoint.h          | 6 ++++++
 4 files changed, 6 insertions(+), 18 deletions(-)

commit 5a9dba9929d9c9046705150f7e3c4783ff34e4dd
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Thu Oct 5 20:50:19 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Oct 5 20:50:19 2017 +1030

    svg: fix painting an unbounded recording surface
    
    https://lists.cairographics.org/archives/cairo/2017-October/028395.html

 src/cairo-svg-surface-private.h |  1 +
 src/cairo-svg-surface.c         | 38 +++++++++++++++++++++++++-------------
 2 files changed, 26 insertions(+), 13 deletions(-)

commit bec8c7508ebc0f69266f9aebe9903539391c519b
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Tue Oct 3 22:18:49 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Tue Oct 3 22:27:25 2017 +1030

    Prevent curved strokes in small ctms from being culled from vector surfaces
    
    The combination of both curved strokes and ignoring the ctm in the thin
    line check caused some fill-strokes in this test case to be culled.
    
    Modify the thin line check to take the ctm into account and increase
    the minimum width to 1 point to prevent curved lines such as tiny dots
    from being culled.
    
    https://bugs.freedesktop.org/show_bug.cgi?id=103071

 src/cairo-path-bounds.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit dccbed7d78d32bd3b912e8810379451dd94e6a1f
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Fri Sep 22 20:24:45 2017 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Fri Sep 22 20:25:59 2017 +0930

    truetype: clarify glyph count variables
    
    - move num_glyphs_in_face to base struct as it is the number in the font
    - move num_glyphs to the subset variables as it is the num glyphs in the subset
    - move widths to subset variables as it uses the subset id as the array index

 src/cairo-truetype-subset.c | 54 ++++++++++++++++++++++-----------------------
 1 file changed, 27 insertions(+), 27 deletions(-)

commit 52cbf42b74785c3c3c2d15effe7bdb416ff9c8b2
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Fri Sep 22 20:10:10 2017 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Fri Sep 22 20:10:10 2017 +0930

    truetype: reserve space in subset arrays for .notdef
    
    Subset array sizes are allocated based on the number of glyphs in the
    font. In this bug the fonts did not contain the mandatory .notdef
    glyph, hence the subset arrays were not large enough.
    
    https://bugs.freedesktop.org/show_bug.cgi?id=102922

 src/cairo-truetype-subset.c | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

commit e773dd744e88dc871fdc549132f07760f1be94c7
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sun Sep 17 14:15:25 2017 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Fri Sep 22 18:17:25 2017 +0930

    factor out ascii to double code in cff-subset into _cairo_strtod

 src/cairo-cff-subset.c    | 27 +++------------------
 src/cairo-misc.c          | 60 +++++++++++++++++++++++++++++++++++++++++++++--
 src/cairo-output-stream.c |  2 +-
 src/cairo-type1-subset.c  |  2 +-
 src/cairoint.h            |  5 +++-
 5 files changed, 67 insertions(+), 29 deletions(-)

commit 871c518121452116ee799fe4262421d4c935972e
Author:     Aleksander Morgado <aleksander@aleksander.es>
AuthorDate: Mon Aug 28 11:23:34 2017 +0200
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Sep 20 11:44:29 2017 -0700

    build: fix minor typo in autogen.sh
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=102452
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 autogen.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1220e3c6b8f94a00ac7afee15f21e6782655d97c
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Sep 2 19:17:37 2017 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Sep 16 10:04:57 2017 +0930

    replace _BSD_SOURCE with _DEFAULT_SOURCE
    
    fixes the warning:
    
    warning: #warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE"

 src/cairo-cff-subset.c           | 2 +-
 src/cairo-ft-font.c              | 2 +-
 src/cairo-output-stream.c        | 2 +-
 src/cairo-path-stroke-boxes.c    | 2 +-
 src/cairo-path-stroke-polygon.c  | 2 +-
 src/cairo-path-stroke-tristrip.c | 2 +-
 src/cairo-path-stroke.c          | 2 +-
 src/cairo-pdf-surface.c          | 2 +-
 src/cairo-ps-surface.c           | 2 +-
 src/cairo-scaled-font-subsets.c  | 2 +-
 src/cairo-svg-surface.c          | 2 +-
 src/cairo-toy-font-face.c        | 2 +-
 src/cairo-truetype-subset.c      | 2 +-
 src/cairo-type1-fallback.c       | 2 +-
 src/cairo-type1-subset.c         | 2 +-
 15 files changed, 15 insertions(+), 15 deletions(-)

commit 117a3c27d48107cb9c570fee725105419b1251e3
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Sep 2 19:09:49 2017 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Sep 16 10:04:57 2017 +0930

    build: use _WIN32 instead of windows.h to check for windows build
    
    ifdef _WIN32 is the recommended way to check for a windows build [1]
    and avoids identifying cygwin as windows.
    
    based on the patch at [2]
    
    [1] https://lists.gnu.org/archive/html/autoconf/2012-02/msg00008.html
    [2] https://lists.gnu.org/archive/html/autoconf/2012-02/msg00009.html

 build/configure.ac.system | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

commit 8ff3019f51bd40c23d8a0dd5e51ce3fab6442d6e
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Wed Sep 13 12:35:27 2017 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Sep 13 15:18:04 2017 -0700

    gl: Add support for OpenGL ES 3.0
    
    This improves the OpenGL ES support to extend it to version 3.0.
    A number of new features are available in glesv3 including creation of
    multi-sampled renderbuffers.  These renderbuffers can be blitted to
    single sample textures (but not the other way around).  Other features
    such as PBO for image uploading, are left as followon work.
    
    For this preliminary implementation, glesv3 backends always create
    renderbuffers, which can be set as single sample or multisample.  The
    renderbuffer's content is blitted to the texture only when used as a
    source or a mask.
    
    Images uploaded to a texture stay there until the surface is used as a
    rendering target, at which point its painted to the renderbuffer.
    
    This patch is heavily based off of Henry Song's initial GLESv3 patch
    6f7f3795 from his cairogles fork of Cairo, and incorporates subsequent
    fixes and pertinent refactorings from his trunk and review feedback from
    Uli.
    
    This implements the *functional* support for glesv3, excluding the
    various optimization work to utilize its features.  Rendering and
    performance should not be expected to improve notably from pure glesv2.
    As the GL backend for Cairo remains "experimental", these changes should
    likewise be considered as such.
    
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 boilerplate/Makefile.win32.features |  12 +++++
 boilerplate/cairo-boilerplate-egl.c |  30 ++++++++---
 build/Makefile.win32.features       |   1 +
 build/Makefile.win32.features-h     |   3 ++
 build/configure.ac.features         |   1 +
 configure.ac                        |  23 ++++++++
 src/Makefile.sources                |   4 ++
 src/Makefile.win32.features         |  16 ++++++
 src/cairo-gl-composite.c            | 103 +++++++++++++++++++++++++++++++++++-
 src/cairo-gl-device.c               |  91 +++++++++++++++++++++++--------
 src/cairo-gl-dispatch.c             |  12 +++++
 src/cairo-gl-gradient-private.h     |   9 ++--
 src/cairo-gl-gradient.c             |   3 +-
 src/cairo-gl-info.c                 |   4 +-
 src/cairo-gl-msaa-compositor.c      |  10 +++-
 src/cairo-gl-operand.c              |   3 +-
 src/cairo-gl-private.h              |  20 ++++---
 src/cairo-gl-shaders.c              |  15 ++++--
 src/cairo-gl-surface.c              |  73 ++++++++++++++++++++-----
 src/cairo-gl.h                      |   2 +-
 20 files changed, 370 insertions(+), 65 deletions(-)

commit d1f941d7ee06340c155158b32bec28fc2e1a4264
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Thu Oct 20 16:37:28 2016 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Sep 13 15:17:55 2017 -0700

    gl: Make _cairo_gl_ensure_framebuffer a private shared routine
    
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-gl-device.c  | 2 +-
 src/cairo-gl-private.h | 4 ++++
 2 files changed, 5 insertions(+), 1 deletion(-)

commit 4b164bc89872f0cf4e123e1358cc83be8e83a4d3
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Fri Oct 7 15:26:25 2016 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Sep 13 15:17:55 2017 -0700

    gl: Convert images to rgba or a8 formats when uploading with GLESv2
    
    The GLESv2 backend supports only GL_RGBA and GL_ALPHA as supported
    texture formats.  So, make _cairo_gl_get_image_format_and_type_gles2
    force conversion of other image formats to either of these two as
    appropriate when uploading images.
    
    Patch originally from Henry Song <henry.song@samsung.com>
    
    Bryce Harrington <bryce@osg.samsung.com>
    
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-gl-surface.c          | 45 +++++++++++++++++++++++++++++++++++++++++
 src/cairo-gl-traps-compositor.c | 30 ---------------------------
 2 files changed, 45 insertions(+), 30 deletions(-)

commit 99427c3f4f6ce7ce3c95c4caa4d2b8ff7c0093d9
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Tue Sep 12 01:35:15 2017 -0400
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Sep 12 01:35:15 2017 -0400

    Handle SOURCE and CLEAR operators when painting color glyphs
    
    In cairo, most operators are composited this way:
    
      ((src IN mask) OP dst) LERP_clip dst
    
    but SOURCE and CLEAR operators are composited this way:
    
      (src OP dst) LERP_(clip IN mask) dst
    
    (why is this not specified anywhere in the docs or source tree?)
    
    With color glyphs, we were not special-casing SOURCE and CLEAR.
    We do now.
    
    Fixes https://bugs.freedesktop.org/show_bug.cgi?id=102661

 src/cairo-surface.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 7f6b57a2386c051e4bb6a156cf14904fe061f837
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Mon Sep 11 22:00:00 2017 -0700
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Mon Sep 11 22:00:00 2017 -0700

    Fix undefined-behavior with integer math
    
    As reported to me:
    
    "A calculation on signed integers has undefined behaviour if the result is not
    representable in the type. In this case, it's trying to negate int_min, aka
    -2^31 but the range of an int is [-2^31, 2^31-1] so it doesn't fit. Instead,
    cast to unsigned which has 2's complement wrap-around arithmetic which is what
    this particular function expects."

 src/cairo-fixed-private.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1af18610baaefd2031259fc7aae79b341c57fb91
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Mon Sep 11 19:49:14 2017 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Sep 11 19:56:06 2017 -0700

    glesv2: Fix regression in gles version detection
    
    Revert the _cairo_gl_get_flavor() portion of the change from commit
    eb523200.  This caused GLES to be enabled only if the hardware reported
    version 2 exactly; if the hardware supported version 2 and 3 then no ES
    support would be enabled.

 src/cairo-gl-info.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c29db4f0de52727406a8b62f4da9a382084b5a79
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Sep 2 16:11:43 2017 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Sep 2 16:11:43 2017 +0930

    Remove unused variable

 src/cairo-unicode.c | 2 --
 1 file changed, 2 deletions(-)

commit b646f755f3ad12ccd437ea32bffaefe5f6c6be25
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Sep 2 07:37:36 2017 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Sep 2 07:37:36 2017 +0930

    RELEASING: use correct branch name

 RELEASING | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 934e42fa5e4b74cf7fed022d2ff8a6326908ba3c
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Aug 29 10:18:14 2017 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Aug 29 10:18:14 2017 -0700

    Bump version for new development tree, 1.15.9

 cairo-version.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 112f0fc73b769c2db69f50601bf094892bd6db10
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Sun Aug 27 17:53:40 2017 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Aug 29 10:01:02 2017 -0700

    1.15.8 release
    
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 NEWS            | 46 ++++++++++++++++++++++++++++++++++++++++++++++
 cairo-version.h |  2 +-
 2 files changed, 47 insertions(+), 1 deletion(-)

commit 609261bcbc3bf3d4911749353fbcc01ced70534f
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Tue Aug 29 21:40:52 2017 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Tue Aug 29 21:43:07 2017 +0930

    pdf: use explicit dest instead of named dest when 'internal' attribute is set

 src/cairo-pdf-interchange.c     | 181 +++++++++++++++++++++++++++-------------
 src/cairo-pdf-surface-private.h |   1 -
 test/pdf-tagged-text.c          |   2 +-
 3 files changed, 126 insertions(+), 58 deletions(-)

commit 12b875aef374636d1693a631524dd3b622277415
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Aug 26 16:32:48 2017 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Aug 26 16:32:48 2017 +0930

    pdf: use link attributes instead of dest name for cairo_pdf_surface_add_outline
    
    In PDF outline targets are specified the same way as link targets so
    there is no need to restrict the target to dest names.

 src/cairo-pdf-interchange.c     | 177 ++++++++++++++++++++++------------------
 src/cairo-pdf-surface-private.h |   2 +-
 src/cairo-pdf-surface.c         |  17 ++--
 src/cairo-pdf.h                 |   2 +-
 test/pdf-tagged-text.c          |  12 ++-
 5 files changed, 116 insertions(+), 94 deletions(-)

commit df37baf7895ef9acc71f3627b22e7368c8af3ea1
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Aug 26 09:58:48 2017 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Aug 26 16:26:12 2017 +0930

    pdf: fix link positions
    
    Converting the link position from cairo to pdf coordinates requires
    the page height. Since the link may point to a different page, build
    an array of the height of each page and use the target page height for
    the conversion.
    
    Don't default to a [0,0] position if "pos" is not specified. PDF
    allows a null destination position to be specified which means don't
    change the position if the page is already displayed or show top left
    if switching to a different page. This is more useful default
    particularly for external files where the coordinates (which must be
    in PDF coordinates as we don't know the page height) of the top left
    corner may not be known.

 src/cairo-pdf-interchange.c        | 50 +++++++++++++++++++++++++-------------
 src/cairo-pdf-surface-private.h    |  4 +--
 src/cairo-pdf-surface.c            |  9 +++++++
 src/cairo-tag-attributes-private.h |  1 +
 src/cairo-tag-attributes.c         |  1 +
 src/cairo.c                        |  7 +++---
 6 files changed, 50 insertions(+), 22 deletions(-)

commit 74c6e3ae1d356e8bb4c7043cb9d3897c45cc0f79
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Tue Aug 22 21:18:54 2017 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Tue Aug 22 21:25:22 2017 +0930

    pdf: don't write logical structure if it only contains links

 src/cairo-pdf-interchange.c | 21 +++++++++++++--------
 src/cairo-tag-stack.c       |  1 +
 2 files changed, 14 insertions(+), 8 deletions(-)

commit 63f14d4a8f155ebaaca63b49e7bacca55d681af5
Author:     Doran Moppert <dmoppert@redhat.com>
AuthorDate: Mon Jul 25 11:00:21 2016 +0930
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Aug 21 17:08:47 2017 -0700

    image: Check for negative len in fill/blit functions
    
    Applies the same fix as 5c82d91 to other potential negative len cases.
    
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-image-compositor.c | 28 ++++++++++++++--------------
 1 file changed, 14 insertions(+), 14 deletions(-)

commit 5f90f0a706206ea3b940392bf1492fead832d99b
Author:     Alexander Täschner <alexandertaeschner@googlemail.com>
AuthorDate: Mon Jun 12 12:49:44 2017 +0200
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Aug 21 16:35:27 2017 -0700

    win32: Initialize mutexes for static builds for win32
    
    For static win32 builds the mutexes are not initialized (for dynamic
    builds it's done when the DLL is loaded). Therefore, add initialization
    to the create surface calls.
    
    Cc: Uli Schlachter <psychon@znc.in>
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 src/win32/cairo-win32-device.c | 2 ++
 1 file changed, 2 insertions(+)

commit 339fe9a7689dd13626410afabb77b12ad0f9f7d2
Author:     Guillermo Rodriguez <guillerodriguez.dev@gmail.com>
AuthorDate: Tue Jul 4 12:19:37 2017 +0200
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Aug 21 16:29:10 2017 -0700

    Remove redundant check.
    
    Spotted by David Kastrup <dak@gnu.org>.
    
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-surface.c | 4 ----
 1 file changed, 4 deletions(-)

commit 5ac7b3652d4d96bfdc5efe50c2540fb4eadeb7d9
Author:     Guillermo Rodriguez <guillerodriguez.dev@gmail.com>
AuthorDate: Tue Jul 4 12:21:02 2017 +0200
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Aug 21 16:05:16 2017 -0700

    script: Fix misleading indentation warning.
    
    Spotted by David Kastrup <dak@gnu.org>.
    
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 util/cairo-script/cairo-script-operators.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit a5ac8fe2031d8d64939a9fd0f324a9516276899e
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Mon Aug 21 14:37:48 2017 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Aug 21 14:39:24 2017 -0700

    image: Disambiguate 0. in doxygen
    
    Doxygen is interpreting the leading 0. as starting an ordered list, and
    misformatting the HTML documentation.
    
    Issue reported by Артур Галямов.
    
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-image-surface.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 4c12e2aec38eb03d17787ece5a5566af902d16b7
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Mon Aug 21 21:23:45 2017 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Mon Aug 21 21:23:45 2017 +0930

    pdf: Don't emit /PageLabel dict when no labels defined

 src/cairo-pdf-interchange.c | 92 +++++++++++++++++++++++++--------------------
 1 file changed, 52 insertions(+), 40 deletions(-)

commit e3857c133f6403b94a49480ca0fad66876dbe609
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sun Aug 20 20:09:02 2017 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Aug 20 20:09:02 2017 +0930

    pdf: link tags do not need to be leaf nodes in the document structure

 src/cairo-pdf-interchange.c | 11 +----------
 1 file changed, 1 insertion(+), 10 deletions(-)

commit bb4ab5a8be2f66bfc03716eb37b94ec186ab1e55
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Aug 19 10:50:58 2017 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Aug 19 10:52:18 2017 +0930

    tests: fix bug in pdf-tagged-text that was introduced in 4790a36

 test/pdf-tagged-text.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f3515954e0bc9c9ca413a84a8dd842145cec83a7
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Tue Aug 8 22:04:55 2017 -0700
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Aug 8 22:04:55 2017 -0700

    [ft] Fix color font loading on big-endian systems
    
    Untested, but the logic is correct: FreeType's BGRA type is always
    laid out in that order in memory.  Cairo's ARGB32 is endianness-
    dependent.  On little-endian systems the two are the same.  On big-endian
    we need to flip.

 src/cairo-ft-font.c | 9 +++++++++
 1 file changed, 9 insertions(+)

commit 495cb9a0a765ccbc678f55d8bfe699829a214f39
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Sat Jul 29 17:40:34 2017 +0100
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Sat Jul 29 17:40:34 2017 +0100

    Fix uninitialized status!

 src/cairo-surface.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 7a1e378466971d26a3f6d3c9437744bc5ffef1eb
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Sat Jul 29 16:20:21 2017 +0100
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Sat Jul 29 16:20:21 2017 +0100

    Fix color font support infinite-loop with empty glyphs
    
    Ouch! But it all works now! Only took five years to merge this feature.
    Thanks Matthias Clasen for working out a real patch from my initial
    sketch.

 src/cairo-ft-font.c | 17 ++++++-----------
 1 file changed, 6 insertions(+), 11 deletions(-)

commit 5e3350e4d1df6aeb4333cb1e4134feb22280735c
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Fri Jun 30 21:17:43 2017 -0400
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Sat Jul 29 12:30:50 2017 +0100

    Simplify things a bit
    
    Do away with the separate check for color glyphs - we can just
    do the filtering, and if there are no color glyphs, it is a
    no-op. As long as we only do this for fonts with color glyphs,
    it should be fine.
    
    Reduce repetition in composite_color_glyphs by breaking out
    some helper functions.

 src/cairo-surface.c | 227 ++++++++++++++++++++--------------------------------
 1 file changed, 89 insertions(+), 138 deletions(-)

commit db14d6d70759df221d6aaee9a1dc0354c39f1aa3
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Thu Jun 29 22:57:02 2017 -0400
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Sat Jul 29 12:30:50 2017 +0100

    Render color glyphs as source, not as mask
    
    Use paint instead of show_glyphs for color glyphs. To avoid
    overhead, we only check for color glyphs if the font is known
    to contain any. Paint clusters containing only color glyphs
    and rewrite the inputs to remove the handled clusters and
    glyphs.

 src/cairo-surface.c | 258 +++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 257 insertions(+), 1 deletion(-)

commit 6a8a25cc4792eca774fa6d0857229659adbe063b
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Fri Apr 8 13:20:56 2016 -0400
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Sat Jul 29 12:30:50 2017 +0100

    Implement has_color_glyphs for freetype
    
    This information is available from the FT_Face using the
    FT_HAS_COLOR macro. We cache the value in the unscaled_font
    object as soon as we have an FT_Face.

 src/cairo-ft-font.c | 28 +++++++++++++++++++++++++++-
 1 file changed, 27 insertions(+), 1 deletion(-)

commit 66228456531c8a80f3985160bf1013248e433681
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Fri Apr 8 13:21:47 2016 -0400
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Sat Jul 29 12:30:50 2017 +0100

    Expose 'has color glyphs' as a scaled font property
    
    This information will be used in subsequent commits to quickly
    decide that we won't try to handle glpyhs as masks. Implementing
    the new has_color_glyphs vfunc is optional - only backends that
    support color glyphs need to implement it.

 src/cairo-scaled-font-private.h | 2 ++
 src/cairo-scaled-font.c         | 9 +++++++++
 src/cairoint.h                  | 3 +++
 3 files changed, 14 insertions(+)

commit 52b17c724260512873ab0731e2e2314bb0a15e4b
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Thu Jun 29 20:19:56 2017 -0400
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Sat Jul 29 12:30:50 2017 +0100

    Support loading color glyphs with freetype
    
    Use the FT_LOAD_COLOR flag to instruct freetype to load embedded
    PNGs without converting them to grayscale. We always load both
    the color and regular surface when we are loading surfaces.

 src/cairo-ft-font.c | 44 ++++++++++++++++++++++++++++++++++----------
 1 file changed, 34 insertions(+), 10 deletions(-)

commit 0d8859c66fb82a00147ab77d1971111306ca2272
Author:     Matthias Clasen <mclasen@redhat.com>
AuthorDate: Thu Apr 7 20:38:09 2016 -0400
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Sat Jul 29 12:30:50 2017 +0100

    Add support for color glyphs to cairo_scaled_glyph_t
    
    With this, glyphs can have either a surface that is expected
    to be used as mask, or a color_surface that should be used
    as source, or both.
    
    This will be used to support colored emoji glyphs that are
    stored as PNG images in OpenType fonts.

 src/cairo-scaled-font-private.h |  1 +
 src/cairo-scaled-font.c         | 21 +++++++++++++++++++++
 src/cairoint.h                  |  8 +++++++-
 3 files changed, 29 insertions(+), 1 deletion(-)

commit 0fadb2c56d855560810205d78975450ddce271df
Author:     Bryce Harrington <b.harrington@samsung.com>
AuthorDate: Fri Jul 28 17:02:12 2017 -0700
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Fri Jul 28 17:03:00 2017 -0700

    cairo-docs: whitespace cleanup

 doc/public/cairo-docs.xml | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit f6673e239a7e72a1f66e8faf1e5d5bbe7bdc2fd4
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Fri Jul 28 17:02:29 2017 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Jul 28 17:02:29 2017 -0700

    RELEASING: Note adding index to cairo-docs.xml for minor releases

 RELEASING | 23 ++++++++++++++++-------
 1 file changed, 16 insertions(+), 7 deletions(-)

commit 3a8bb3380532dbbede661f6c58a8a9cd443840c2
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Fri Jul 28 16:31:50 2017 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Jul 28 16:55:09 2017 -0700

    RELEASING: Note use of branches for stable releases

 RELEASING | 21 +++++++++++++--------
 1 file changed, 13 insertions(+), 8 deletions(-)

commit 57b40507dda3f58dfc8635548d606b86dc7bcf51
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Thu Jun 15 20:53:29 2017 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Jun 15 20:53:29 2017 +0930

    Fix off by one check in cairo-image-info.c
    
    https://bugs.freedesktop.org/show_bug.cgi?id=101427

 src/cairo-image-info.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 13ddd7297729e77de07f409b91b61cbae2d16141
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Jun 13 15:22:55 2017 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Jun 13 15:22:55 2017 -0700

    Bump version for new development tree, 1.15.7

 cairo-version.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c31721ab27c65941dd9e0c29662d7ebb5caa2a01
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Jun 13 12:25:01 2017 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Jun 13 14:57:38 2017 -0700

    1.15.6 release

 NEWS            | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 cairo-version.h |  2 +-
 2 files changed, 62 insertions(+), 1 deletion(-)

commit ce68336f7da58822a4c9c4cd49d5336d55bd36fd
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Jun 13 14:53:55 2017 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Jun 13 14:57:38 2017 -0700

    drm: Add/reorder headers as required by check-preprocessor-syntax.sh
    
    If cairo-drm-intel-brw-eu.h and/or cairo-drm-intel-brw-structs.h are
    intended to be private headers, then the change to include cairo.h can
    be dropped but the headers should be renamed *-private.h to conform with
    Cairo standards.
    
    I'm not certain why check-preprocessor-syntax.sh started flagging these
    issues, as it doesn't look like there's been changes to them recently.
    But the release scripts won't move forward without these being fixed.

 src/drm/cairo-drm-intel-brw-eu.h        | 1 +
 src/drm/cairo-drm-intel-brw-structs.h   | 1 +
 src/drm/cairo-drm-intel-ioctl-private.h | 4 ++--
 src/drm/cairo-drm-radeon-surface.c      | 8 ++++----
 4 files changed, 8 insertions(+), 6 deletions(-)

commit f613e0717231bd028ffc9da79247eb8c23dc463d
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Mon Jun 12 16:54:23 2017 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Jun 12 18:55:35 2017 -0700

    gl: Fix comment syntax
    
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-gl-private.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit bfc243ca52e85e909e200363a687611d256ccc66
Author:     Uli Schlachter <psychon@znc.in>
AuthorDate: Tue May 30 18:04:38 2017 +0200
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Tue May 30 18:04:38 2017 +0200

    xcb: Fix error reporting if fallback fails
    
    If we cannot let the X11 server do some operation (for example: the
    RENDER extension is not available), then we fall back to an image
    surface and do the operation locally instead. This fallback requires the
    current content of the surface to be downloaded from the X11 server.
    This fallback logic had an error.
    
    The fallback is implemented with _get_image() in the function
    _cairo_xcb_surface_fallback(). _get_image() is only called if we do not
    yet have a fallback available, so when we call _get_image we have
    surface->fallback == NULL. Then, if _get_image() fails, it returns a
    surface in an error state.
    
    Before this patch, the code would then just ignore this error surface
    and return &surface->fallback->base, a NULL pointer. This would then
    quickly cause a crash when e.g. the surface's ->status member is
    accessed.
    
    Fix this by returning the error surface instead as the fallback.
    
    The end result of this patch will be that the XCB surface that is
    currently drawn to ends up in an error state which is a lot better than
    a NULL pointer dereference and actually correct in this case. The error
    state is reached because the current drawing operation will fail and
    this error is reported up the call stack and eventually "taints" the
    surface.
    
    (However, the error code could be better: _get_image() too often fails
    with a generic CAIRO_STATUS_NO_MEMORY error, but that's left as future
    work)
    
    Signed-off-by: Uli Schlachter <psychon@znc.in>

 src/cairo-xcb-surface.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

commit 0fd0fd0ae9ad8cfb177bb844091de98c0235917e
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sun May 28 09:07:54 2017 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun May 28 09:12:56 2017 +0930

    subsetting: support variable fonts
    
    If the font is a non default variant, fallback to creating a font from
    the outlines.

 src/cairo-cff-subset.c       | 13 +++++++--
 src/cairo-ft-font.c          | 67 ++++++++++++++++++++++++++++++++++++++++++--
 src/cairo-truetype-subset.c  | 13 +++++++--
 src/cairo-type1-subset.c     | 14 ++++++---
 src/cairoint.h               |  8 ++++--
 src/win32/cairo-win32-font.c | 12 ++++----
 6 files changed, 107 insertions(+), 20 deletions(-)

commit 9d44136ef8e2a1ad2c6631beb4bbdaeed7a2dad8
Author:     Uli Schlachter <psychon@znc.in>
AuthorDate: Sat May 13 09:37:34 2017 +0200
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Sat May 13 09:37:34 2017 +0200

    Revert "stroker: Check for scaling overflow in computing half line widths"
    
    This reverts commit 91b25005d62fe4ca178f45d349374e42c29a5e11 because it
    causes lots of new crashes due to assertion failures.

 src/cairo-fixed-private.h       | 13 -------------
 src/cairo-path-stroke-boxes.c   | 25 +++++--------------------
 src/cairo-path-stroke-polygon.c |  1 -
 src/cairo-path-stroke-traps.c   |  1 -
 src/cairo-path-stroke.c         |  1 -
 5 files changed, 5 insertions(+), 36 deletions(-)

commit 91b25005d62fe4ca178f45d349374e42c29a5e11
Author:     Chris Wilson <chris@chris-wilson.co.uk>
AuthorDate: Fri Mar 24 12:36:41 2017 +0000
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu May 4 17:44:48 2017 -0700

    stroker: Check for scaling overflow in computing half line widths
    
    Given a combination of a large scaling matrix and a large line, we can
    easily generate a half line width that is unrepresentable in our 24.8
    fixed-point. This leads to spurious errors later, such as generating
    negative height boxes, and so asking pixman to fill to infinity. To
    avoid this, we can check for overflow in calculating the half line with,
    though we still lack adequate range checking on the final stroke path.
    
    References: https://bugs.webkit.org/show_bug.cgi?id=16793
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
    Cc: magomez@igalia.com
    Tested-by: Bryce Harrington <bryce@osg.samsung.com>
    Acked-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-fixed-private.h       | 13 +++++++++++++
 src/cairo-path-stroke-boxes.c   | 25 ++++++++++++++++++++-----
 src/cairo-path-stroke-polygon.c |  1 +
 src/cairo-path-stroke-traps.c   |  1 +
 src/cairo-path-stroke.c         |  1 +
 5 files changed, 36 insertions(+), 5 deletions(-)

commit a3cc46d2ccba44a538d05f0c5870b1a82f046350
Author:     Andrea Canciani <ranma42@gmail.com>
AuthorDate: Sun Mar 19 21:48:11 2017 +0100
Commit:     Andrea Canciani <ranma42@gmail.com>
CommitDate: Tue Apr 25 18:06:14 2017 +0200

    quartz-font: Fix text-glyph-range
    
    The index 0 is a legitimate index used for character codes that do not
    correspond to any glyph in the font.  Instead, the API reserves 0xFFFF
    (kCGFontIndexInvalid) as the invalid index and defines 0xFFFE
    (kCGFontIndexMax = kCGGlyphMax) as the maximum legal index.
    
    Fixes text-glyph-range.

 src/cairo-quartz-font.c                          |  16 ++++++++--------
 test/reference/text-glyph-range.quartz.ref.png   | Bin 0 -> 2328 bytes
 test/reference/text-glyph-range.quartz.xfail.png | Bin 2051 -> 0 bytes
 3 files changed, 8 insertions(+), 8 deletions(-)

commit fcb0a8ef36c9a84f586d38bd409d6a0e881890a7
Author:     Andrea Canciani <ranma42@gmail.com>
AuthorDate: Sat Mar 18 10:20:07 2017 +0100
Commit:     Andrea Canciani <ranma42@gmail.com>
CommitDate: Tue Apr 25 18:06:14 2017 +0200

    quartz-font: Correct handling of SMP Unicode characters
    
    Truncating the UCS4 representation to 16 bits only works for the Basic
    Multilingual Plane, the other characters must be translated to a
    surrogate pair.
    
    Fixes smp-glyph.
    
    Reported-by: Clerk Ma <clerkma@gmail.com>

 src/cairo-quartz-font.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

commit 5584bf755c98703653eef06670abaeb4873f9ee5
Author:     Andrea Canciani <ranma42@gmail.com>
AuthorDate: Sat Mar 18 08:55:11 2017 +0100
Commit:     Andrea Canciani <ranma42@gmail.com>
CommitDate: Tue Apr 25 18:05:40 2017 +0200

    unicode: Extract the UCS4 to UTF-16 conversion to a separate function
    
    Reuse the function for the UTF-8 to UTF-16 conversion, but also make
    it available for internal use by cairo.

 src/cairo-unicode.c | 39 +++++++++++++++++++++++++++++++++------
 src/cairoint.h      |  4 ++++
 2 files changed, 37 insertions(+), 6 deletions(-)

commit cb9f6273780bb2ffc710d2efdd4224d9096972cb
Author:     Andrea Canciani <ranma42@gmail.com>
AuthorDate: Sun Mar 19 10:37:36 2017 +0100
Commit:     Andrea Canciani <ranma42@gmail.com>
CommitDate: Tue Apr 25 18:05:40 2017 +0200

    test: Add a test for characters in the SMP
    
    Unicode characters in the Supplementary Multilingual Plane are encoded
    as surrogate pairs in UTF-16. This test tries to verify that backends
    do not perform UCS4 to UTF-16 conversion by truncation.

 test/Makefile.sources                   |   1 +
 test/reference/smp-glyph.ref.png        | Bin 0 -> 301 bytes
 test/reference/smp-glyph.script.ref.png | Bin 0 -> 302 bytes
 test/smp-glyph.c                        |  56 ++++++++++++++++++++++++++++++++
 4 files changed, 57 insertions(+)

commit 8455d88b1276c25cbca0b7218171d8825efad4dc
Author:     Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
AuthorDate: Mon Apr 17 18:57:11 2017 +0200
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Mon Apr 24 18:35:44 2017 -0700

    drm: fixed calls to _cairo_surface_init()
    
    This function now expects an additional parameter is_vector.
    
    Signed-off-by: Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>

 src/drm/cairo-drm-intel-surface.c  | 4 +++-
 src/drm/cairo-drm-radeon-surface.c | 3 ++-
 2 files changed, 5 insertions(+), 2 deletions(-)

commit f7e686c92a428d5293b73c325bac1b043d0f86d8
Author:     Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
AuthorDate: Mon Apr 17 18:56:45 2017 +0200
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Mon Apr 24 15:54:02 2017 -0700

    drm: use typedefs and defines from drm headers instead of redundant own definitions
    
    These typedefs and defines are part of the libdrm API and therefore should
    be taken from there, instead of own redundant declarations.
    
    Signed-off-by: Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>

 src/Makefile.sources                    |   1 -
 src/drm/cairo-drm-bo.c                  |  33 +--
 src/drm/cairo-drm-i915-surface.c        |   1 -
 src/drm/cairo-drm-i965-surface.c        |   1 -
 src/drm/cairo-drm-intel-ioctl-private.h | 403 +-------------------------------
 src/drm/cairo-drm-intel.c               |   4 +-
 src/drm/cairo-drm-ioctl-private.h       |  12 -
 src/drm/cairo-drm-radeon-private.h      |   4 -
 src/drm/cairo-drm-radeon-surface.c      |   4 +
 src/drm/cairo-drm-radeon.c              | 123 +---------
 10 files changed, 11 insertions(+), 575 deletions(-)

commit 72c600afbfbbbafdc894a85c8086e18b93391c1d
Author:     Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
AuthorDate: Mon Apr 17 18:56:43 2017 +0200
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Mon Apr 24 15:42:35 2017 -0700

    drm: dropped obsolete/unused intel_bo_get_image()
    
    [Call to this was dropped in bd672d08 in favor of intel_bo_map()]]
    
    Signed-off-by: Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/drm/cairo-drm-intel-private.h |  5 -----
 src/drm/cairo-drm-intel.c         | 44 ---------------------------------------
 2 files changed, 49 deletions(-)

commit 182104defedd18c377a8d3d27ef9278e490f3cce
Author:     Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
AuthorDate: Mon Apr 17 18:56:40 2017 +0200
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Mon Apr 24 10:18:08 2017 -0700

    drm: fixed missing includes
    
    Signed-off-by: Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/drm/cairo-drm-i915-glyphs.c    | 1 +
 src/drm/cairo-drm-i915-shader.c    | 1 +
 src/drm/cairo-drm-i915-surface.c   | 1 +
 src/drm/cairo-drm-intel-private.h  | 1 +
 src/drm/cairo-drm-intel-surface.c  | 1 +
 src/drm/cairo-drm-intel.c          | 2 ++
 src/drm/cairo-drm-radeon-surface.c | 1 +
 src/drm/cairo-drm-radeon.c         | 1 +
 8 files changed, 9 insertions(+)

commit cffa452f44eadebef8553502e3d6cc49829d38ce
Author:     Debarshi Ray <debarshir@freedesktop.org>
AuthorDate: Thu Dec 15 12:50:13 2016 +0100
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Mar 15 20:26:22 2017 -0700

    doc: Clarify when the device scale is inherited and when it isn't
    
    In short, cairo_surface_create_similar inherits it, while
    cairo_surface_create_similar_image doesn't. It wasn't obvious without
    reading the code or explicitly checking the device scale of the new
    surface.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=99094
    
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-surface.c | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

commit 1192f97388ba428a623670107a96fc13cbf97ee9
Author:     Debarshi Ray <debarshir@freedesktop.org>
AuthorDate: Thu Dec 15 12:41:39 2016 +0100
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Mar 15 20:26:18 2017 -0700

    doc: Fix the units used by cairo_surface_create_similar_image
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=99094
    
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-surface.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 10e4103a508f81a3e47938e97c0b84f1ba41071c
Author:     Uli Schlachter <psychon@znc.in>
AuthorDate: Tue Mar 7 10:05:43 2017 +0100
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Tue Mar 7 13:40:21 2017 +0100

    xlib: Call XSync() before ignoring errors
    
    The code here wants to ignore errors for a specific request. To do so,
    it sets a no-op error handler. However, it could happen that some
    previous request caused an error and this error will also be ignored by
    the no-op error handler.
    
    To avoid this, call XSync() before setting the error handler. This makes
    sure that all pending errors are handled.
    
    Signed-off-by: Uli Schlachter <psychon@znc.in>
    Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>

 src/cairo-xlib-surface.c | 2 ++
 1 file changed, 2 insertions(+)

commit f02ee3d3cf4168b5468b6548fe8823e803650f53
Author:     Uli Schlachter <psychon@znc.in>
AuthorDate: Tue Mar 7 09:57:55 2017 +0100
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Tue Mar 7 09:57:55 2017 +0100

    xlib: Remove unused variable
    
    This constant seems to be unused since commit af9fbd176b145f042408ef
    from 2011.
    
    Signed-off-by: Uli Schlachter <psychon@znc.in>

 src/cairo-xlib-surface.c | 6 ------
 1 file changed, 6 deletions(-)

commit 1a307123af14cfa50a0c35819cfaee79f0ade1ba
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Thu Mar 2 19:14:04 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Mar 2 19:14:04 2017 +1030

    pdf-operators: fix bug in line wrapping
    
    patch by jmmorlan@sonic.net
    
    https://bugs.freedesktop.org/show_bug.cgi?id=100029

 src/cairo-pdf-operators.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit 5854dd9df40a68efb0cb1b2bb7f94e3f05cbdf45
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Thu Feb 2 06:47:11 2017 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Feb 2 06:47:11 2017 +1030

    pdf: don't return uninitialized status
    
    https://bugs.freedesktop.org/show_bug.cgi?id=99630

 src/cairo-pdf-interchange.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5a8a9c97ed268004cbac510d39739ff56c0fb43c
Author:     Andrea Canciani <ranma42@gmail.com>
AuthorDate: Wed Jan 18 13:08:11 2017 +0100
Commit:     Andrea Canciani <ranma42@gmail.com>
CommitDate: Wed Jan 18 15:06:33 2017 +0100

    quartz: Restore 10.4-specific font code
    
    The code for extracting font glyphs was replaced in
    70cc8f250b5669e757b4f044571ba0f71e3dea9e with an implementation based
    on CoreText, which is not available on MacOSX 10.4.  This commit
    restores automatic detection of which API should be used by means of
    dynamic linking.

 README                     |  2 +-
 src/cairo-quartz-font.c    | 26 ++++++++++++++++++++++----
 src/cairo-quartz-private.h | 12 ++++++++----
 3 files changed, 31 insertions(+), 9 deletions(-)

commit dd4706d0a9d123d3aa4284ac9ab35fbe165278b2
Author:     Kouhei Sutou <kou@clear-code.com>
AuthorDate: Wed Jan 4 23:38:17 2017 +0900
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Jan 5 08:33:07 2017 +1030

    pdf: Fix wrong cairo_pdf_outline_flags_t item prefix

 src/cairo-pdf-interchange.c |  6 +++---
 src/cairo-pdf.h             | 12 ++++++------
 test/pdf-tagged-text.c      |  7 ++++---
 3 files changed, 13 insertions(+), 12 deletions(-)

commit c7e87cd9df401f2c5a62534697d12a4e0afda2ce
Author:     Kouhei Sutou <kou@clear-code.com>
AuthorDate: Wed Jan 4 23:32:59 2017 +0900
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Jan 5 08:30:52 2017 +1030

    pdf: Remove duplicated item

 src/cairo-pdf.h | 1 -
 1 file changed, 1 deletion(-)

commit 55e0b214ea13136acf4e234e620f637ee59e0924
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Dec 20 11:42:57 2016 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Dec 20 11:42:57 2016 -0800

    RELEASING: Fix tabbing

 RELEASING | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 3c5868a90ddf4a3a65bfe059bb7b4907b73e58c2
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Fri Dec 9 15:41:08 2016 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Dec 9 15:41:08 2016 -0800

    Bump version for new development tree, 1.15.5

 cairo-version.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 9fe6683cb105354e86ea649ba7a13052c7edc757
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Fri Dec 9 12:59:20 2016 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Dec 9 12:59:20 2016 -0800

    1.15.4 release

 NEWS            | 126 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 cairo-version.h |   2 +-
 2 files changed, 127 insertions(+), 1 deletion(-)

commit 68bbb6933920a043753d9d509fb6e6d8a68624ca
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Fri Dec 9 11:47:28 2016 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Dec 9 11:47:28 2016 -0800

    NEWS: Fix a couple typos

 NEWS | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 3f1a6f7225e31057a8af9313f051a1d311df0c69
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Thu Nov 3 09:16:24 2016 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Nov 3 09:16:24 2016 -0700

    gl: Fix one more CAIRO_GL_FLAVOR_ES3 enum

 src/cairo-gl-gradient.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit eb5232002b16193d5ba6c1450d80616914fd9917
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Wed Oct 12 19:00:38 2016 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Oct 28 17:56:09 2016 -0700

    gl: Treat GLES v2 as a separate flavor from GLES v3
    
    To support differentiating between GLES v2 and v3, rename the flavor
    enum to be version specific, as CAIRO_GL_FLAVOR_ES2.
    
    Then, when GLES v3 support is introduced we can add it as a distinct
    flavor enum (i.e. CAIRO_GL_FLAVOR_ES3).
    
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-gl-composite.c        |  2 +-
 src/cairo-gl-device.c           | 12 ++++++------
 src/cairo-gl-dispatch.c         |  8 ++++----
 src/cairo-gl-info.c             |  4 ++--
 src/cairo-gl-msaa-compositor.c  |  2 +-
 src/cairo-gl-operand.c          |  2 +-
 src/cairo-gl-private.h          |  2 +-
 src/cairo-gl-shaders.c          | 10 +++++-----
 src/cairo-gl-surface.c          |  6 +++---
 src/cairo-gl-traps-compositor.c |  2 +-
 10 files changed, 25 insertions(+), 25 deletions(-)

commit cd1040ed80b6ab886c019248544bede747cd3eb4
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Mon Oct 10 14:05:32 2016 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Oct 12 13:17:05 2016 -0700

    build: Don't rely on non-POSIX 'strings -' behavior
    
    On systems using GNU's strings implementation, 'strings -' causes a scan
    of the whole file, which is equivalent to 'strings -a'.  However, in
    POSIX passing '-' as the first argument to 'strings' is declared
    unspecified, and thus may break the build on systems that use a
    different POSIX strings implementation.
    
    Patch from Jung-uk Kim
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=88639
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 build/aclocal.float.m4 | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit b7b6803567fbe477e1ae42d2406744afaa3c0cbb
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Fri Sep 16 15:05:55 2016 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Mon Oct 10 14:39:23 2016 -0700

    pattern: Fix incorrect grammar in cairo_pattern_get_type.
    
    "This function returns the type a pattern." is obviously missing 'of',
    but this can be stated more succinctly with active voice.
    
    Signed-off-by: Bryce Harrington <bryce@bryceharrington.org>

 src/cairo-pattern.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 9d2983175e98433cf86fbfafa2954ce2cbf66dac
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Fri Sep 16 14:54:19 2016 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Mon Oct 10 14:39:19 2016 -0700

    Fix grammar in cairo_*_reference() function documentation.
    
    "can be get" is incorrect grammar; "can be gotten" would be better, but
    active voice is best.
    
    Signed-off-by: Bryce Harrington <bryce@bryceharrington.org>

 src/cairo-device.c      | 4 ++--
 src/cairo-font-face.c   | 4 ++--
 src/cairo-pattern.c     | 4 ++--
 src/cairo-scaled-font.c | 4 ++--
 src/cairo-surface.c     | 4 ++--
 src/cairo.c             | 4 ++--
 6 files changed, 12 insertions(+), 12 deletions(-)

commit 4790a3663d12cfbbe643023713477204d61b1c4a
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Fri Oct 7 07:38:37 2016 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Fri Oct 7 07:38:37 2016 +1030

    strndup is not avuilable with MSVC

 src/cairo-pdf-interchange.c | 12 ++++++++++--
 test/pdf-tagged-text.c      |  6 +++++-
 2 files changed, 15 insertions(+), 3 deletions(-)

commit 55f8c6d9f4161f5ee2a11fd068f0ccb25a5b3aed
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Tue Oct 4 11:55:28 2016 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Tue Oct 4 12:00:30 2016 +1030

    fix compiler warnings

 src/cairo-pdf-interchange.c | 6 +++---
 src/cairo-tag-attributes.c  | 2 +-
 test/pdf-tagged-text.c      | 1 +
 util/cairo-trace/trace.c    | 1 +
 4 files changed, 6 insertions(+), 4 deletions(-)

commit 3c33d9704119d0178230a0cf9929941592836eab
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Tue Oct 4 11:44:52 2016 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Tue Oct 4 12:00:30 2016 +1030

    fix make check

 src/cairo-pdf-surface-private.h    | 2 +-
 src/cairo-pdf.h                    | 6 +++---
 src/cairo-tag-attributes-private.h | 5 ++++-
 src/cairo-tag-stack-private.h      | 1 +
 4 files changed, 9 insertions(+), 5 deletions(-)

commit 23fd706bd1b83a00cdd3d666631e41e2ceab8a70
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 1 22:48:05 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 1 22:48:05 2016 +0930

    add test for PDF document interchange features such as tagged text and links

 test/Makefile.am       |   1 +
 test/Makefile.sources  |   3 +-
 test/pdf-tagged-text.c | 397 +++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 400 insertions(+), 1 deletion(-)

commit 2d6a0f5d16d61c8f4236760c71061a0c4c3a199c
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 1 22:46:49 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 1 22:46:49 2016 +0930

    pdf: thumbnail API

 doc/public/cairo-sections.txt   |  1 +
 src/cairo-paginated-private.h   | 18 +++++++++-
 src/cairo-paginated-surface.c   | 64 +++++++++++++++++++++++++++++++++
 src/cairo-pdf-surface-private.h |  4 +++
 src/cairo-pdf-surface.c         | 79 ++++++++++++++++++++++++++++++++++++++++-
 src/cairo-pdf.h                 |  5 +++
 6 files changed, 169 insertions(+), 2 deletions(-)

commit 26b3f83ff652a284b79557ec1555b398c566a7eb
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 1 22:44:22 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 1 22:44:22 2016 +0930

    pdf: page label API

 doc/public/cairo-sections.txt   |   1 +
 src/cairo-pdf-interchange.c     | 115 ++++++++++++++++++++++++++++++++++++++++
 src/cairo-pdf-surface-private.h |   3 ++
 src/cairo-pdf-surface.c         |  43 +++++++++++++++
 src/cairo-pdf.h                 |   4 ++
 5 files changed, 166 insertions(+)

commit 5bfadd5530623d3b12fadf8cd22f95cec4132b65
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 1 22:41:36 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 1 22:41:36 2016 +0930

    pdf: metadata API

 doc/public/cairo-sections.txt   |   2 +
 src/cairo-pdf-interchange.c     | 177 ++++++++++++++++++++++++++++++++++++++++
 src/cairo-pdf-surface-private.h |  17 ++++
 src/cairo-pdf-surface.c         |  69 +++++++++-------
 src/cairo-pdf.h                 |  31 +++++++
 5 files changed, 265 insertions(+), 31 deletions(-)

commit dfc7b9e6698d5923a858ae9a77345c983ab51e4c
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 1 22:28:02 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 1 22:28:02 2016 +0930

    pdf: add document outline API

 doc/public/cairo-sections.txt   |   3 +
 src/cairo-pdf-interchange.c     | 182 +++++++++++++++++++++++++++++++++++++++-
 src/cairo-pdf-surface-private.h |  22 +++++
 src/cairo-pdf-surface.c         |  59 +++++++++++++
 src/cairo-pdf.h                 |  28 +++++++
 5 files changed, 293 insertions(+), 1 deletion(-)

commit dcbfb726478f5ab2277bd52813b40e565612566a
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 1 22:05:42 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 1 22:05:42 2016 +0930

    pdf: structured text and hyperlink support

 doc/public/cairo-docs.xml          |   1 +
 doc/public/cairo-sections.txt      |   8 +
 src/Makefile.sources               |   4 +-
 src/cairo-device.c                 |   1 +
 src/cairo-error-private.h          |   1 +
 src/cairo-misc.c                   |   2 +
 src/cairo-pdf-interchange.c        | 993 +++++++++++++++++++++++++++++++++++++
 src/cairo-pdf-operators-private.h  |   8 +
 src/cairo-pdf-operators.c          |  37 ++
 src/cairo-pdf-surface-private.h    | 111 +++++
 src/cairo-pdf-surface.c            | 176 ++++++-
 src/cairo-region.c                 |   1 +
 src/cairo-spans.c                  |   2 +
 src/cairo-surface.c                |   1 +
 src/cairo-tag-attributes-private.h |  73 +++
 src/cairo-tag-attributes.c         | 570 +++++++++++++++++++++
 src/cairo-tag-stack-private.h      | 106 ++++
 src/cairo-tag-stack.c              | 279 +++++++++++
 src/cairo.c                        | 262 +++++++++-
 src/cairo.h                        |   5 +
 src/cairoint.h                     |   6 +
 21 files changed, 2617 insertions(+), 30 deletions(-)

commit 25da407a5f1d136345759c0d0a2a1d985eb2b392
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 1 17:30:13 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 1 17:30:13 2016 +0930

    Support tag operations in analysis and paginated surface

 src/cairo-analysis-surface.c             | 37 +++++++++++++++++++++++++++-
 src/cairo-paginated-private.h            |  2 +-
 src/cairo-paginated-surface.c            | 42 +++++++++++++++++++++++++++-----
 src/cairo-pdf-surface.c                  |  4 ++-
 src/cairo-ps-surface.c                   |  4 ++-
 src/cairo-svg-surface.c                  |  4 ++-
 src/test-paginated-surface.c             |  4 ++-
 src/win32/cairo-win32-printing-surface.c |  4 ++-
 8 files changed, 88 insertions(+), 13 deletions(-)

commit 3bd5efa1b651503ed9f175f9ea62fff53f0b2882
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 1 17:26:16 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 1 17:26:16 2016 +0930

    Add tag functions to recording surface and surface-wrapper

 src/cairo-recording-surface-private.h |  15 +++
 src/cairo-recording-surface.c         | 185 +++++++++++++++++++++++++++++++++-
 src/cairo-surface-wrapper-private.h   |  11 ++
 src/cairo-surface-wrapper.c           |  47 +++++++++
 4 files changed, 257 insertions(+), 1 deletion(-)

commit 4e70815b349309e0a82bc8c52663e030c24a1add
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 1 17:14:28 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 1 17:14:28 2016 +0930

    Add tag functions to cairo_t and cairo_surface_t
    
    The cairo_tag_begin/cairo_tag_end API is for supporting hyperlinks and
    creating tagged PDF files.
    
    The source, ctm, and stroke style are passed to the backend to allow
    these parameters to be used to specify hyperlink border attributes.

 src/cairo-backend-private.h         |  3 ++
 src/cairo-default-context.c         | 21 +++++++++++++
 src/cairo-gstate-private.h          |  9 ++++++
 src/cairo-gstate.c                  | 59 +++++++++++++++++++++++++++++++++++++
 src/cairo-surface-backend-private.h | 12 ++++++++
 src/cairo-surface.c                 | 36 ++++++++++++++++++++++
 src/cairo.c                         | 49 ++++++++++++++++++++++++++++++
 src/cairo.h                         |  8 +++++
 src/cairoint.h                      | 11 +++++++
 9 files changed, 208 insertions(+)

commit b207a932a2d3740984319dffd58a0791580597cd
Author:     Peter TB Brett <peter.brett@livecode.com>
AuthorDate: Fri Sep 9 22:35:55 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Fri Sep 9 22:35:55 2016 +0930

    Correctly decode Adobe CMYK JPEGs in PDF export
    
    Adobe PhotoShop generates CMYK JPEG files with inverted CMYK.  When a
    JPEG file with this format is included in a PDF file, a `/Decode`
    array must be included to convert to "normal" CMYK.
    
    These JPEG files can be detected via the presence of the APP14 "Adobe"
    marker.  However, PDF viewers are not required to detect and handle
    this private marker, so it must be detected and handled (by adding a
    `/Decode`) by the PDF generator.
    
    Signed-Off-By: Peter TB Brett <peter.brett@livecode.com>

 src/cairo-image-info-private.h |  1 +
 src/cairo-image-info.c         | 21 +++++++++++++++++++++
 src/cairo-pdf-surface.c        |  2 ++
 3 files changed, 24 insertions(+)

commit a69e5af9cd62d1e8d9f503a9d74338a49e31f9cd
Author:     Ed Schouten <ed@nuxi.nl>
AuthorDate: Sun Sep 4 08:41:27 2016 +0200
Commit:     Andrea Canciani <ranma42@gmail.com>
CommitDate: Sun Sep 4 11:05:43 2016 +0200

    Write debugging information to the debugging file
    
    Some debugging functions wrote to stdout, which is inconsistent with
    the other debugging functions of the same groups.
    
    Instead they should write to the debugging file that they are given as
    input.
    
    Reviewed-by: Andrea Canciani <ranma42@gmail.com>
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=95227

 src/cairo-debug.c   | 2 +-
 src/cairo-pattern.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit efc40a94939a75c78474862638647bd5363d08cf
Author:     Ed Schouten <ed@nuxi.nl>
AuthorDate: Sun Sep 4 08:34:49 2016 +0200
Commit:     Andrea Canciani <ranma42@gmail.com>
CommitDate: Sun Sep 4 08:45:06 2016 +0200

    Prevent observer surfaces from writing to stdout
    
    Invoking cairo_surface_mark_dirty () on an observer surface would
    cause it to print debugging output to stdout.
    
    Reviewed-by: Andrea Canciani <ranma42@gmail.com>
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=95227

 src/cairo-surface-observer.c | 2 --
 1 file changed, 2 deletions(-)

commit 0aad04a88b43d949f5715b89e656fd7bd0f2243c
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Fri Sep 2 15:54:01 2016 -0700
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Fri Sep 2 15:54:01 2016 -0700

    Bug 29319 - Modules are built as versioned shared objects
    
    Fixes https://bugs.freedesktop.org/show_bug.cgi?id=29319

 util/cairo-fdr/Makefile.am    | 2 +-
 util/cairo-sphinx/Makefile.am | 2 +-
 util/cairo-trace/Makefile.am  | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

commit cbbd02f9c5389522cddecd53ca109f2e3ef98f58
Author:     darxus@chaosreigns.com <darxus@chaosreigns.com>
AuthorDate: Tue Jul 26 13:38:52 2016 -0400
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Wed Aug 31 20:29:57 2016 -0700

    Add example to run specific tests by name to the test/README
    
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>
    Reviewed-by: Uli Schlachter <psychon@znc.in>

 test/README | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit 66205ad48efaea3ebb87b344719b64c8745f177e
Author:     darxus@chaosreigns.com <darxus@chaosreigns.com>
AuthorDate: Thu Aug 18 15:53:18 2016 -0400
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Wed Aug 31 18:22:10 2016 -0700

    Remove closed poppler bugs from test/README
    
    These bugs have all been closed resolved / fixed for years.
    
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 test/README | 40 +---------------------------------------
 1 file changed, 1 insertion(+), 39 deletions(-)

commit 35a1761776c97e7e4c3fa54cbe143007e8f3b422
Author:     Olivier Blin <olivier.blin@softathome.com>
AuthorDate: Thu Nov 26 18:56:48 2015 +0100
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Wed Aug 31 14:35:12 2016 -0700

    Pull -lz for the script backend
    
    It uses cairo_deflate_stream.
    
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>
    Acked-by: Behdad Esfahbod <behdad.esfahbod@gmail.com>

 configure.ac | 3 +++
 1 file changed, 3 insertions(+)

commit 1057487ce8560ae0377bb509fc46eaf18df7aee0
Author:     Hans Petter Jansson <hpj@cl.no>
AuthorDate: Wed Jan 27 12:55:01 2016 -0600
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Aug 2 14:21:45 2016 -0700

    scaled-font: Fix deadlock when recursing in _cairo_scaled_font_reset_cache()
    
    The destruction of a scaled font could indirectly trigger the destruction
    of a second scaled font, causing the global cache to be locked twice in
    the same thread.
    
    This is solved by unlinking the font's glyph pages while holding the global
    lock, then releasing the lock before destruction takes place.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=93891

 src/cairo-scaled-font.c | 24 ++++++++++++++++++------
 1 file changed, 18 insertions(+), 6 deletions(-)

commit 3f8241f48488d3da4afce6646e043ee70cf1cfd2
Author:     Uli Schlachter <psychon@znc.in>
AuthorDate: Sun Jul 17 15:08:51 2016 +0200
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Thu Jul 21 18:58:58 2016 +0200

    cairo-xcb: Remove a wrong optimisation
    
    When doing a "complicated" mask operation, we draw the clip to a surface and use
    this as a mask in later operations. The code assumes that this operation draws
    to the whole target surface and thus a deferred clear may be skipped.
    
    However, this requires that the extents of the trapezoids that will be drawn and
    the extents of the surface are the same. This assumption is wrong, as can be
    seen e.g. by the bug report that this commit fixes.
    
    The fix is just not to skip the deferred clear.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=84330
    Signed-off-by: Uli Schlachter <psychon@znc.in>

 src/cairo-xcb-surface-render.c | 2 --
 1 file changed, 2 deletions(-)

commit 56ad58a8078c5818d85b9c93ea4e3bc94ea887c8
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Tue Jul 19 22:42:10 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Tue Jul 19 22:42:53 2016 +0930

    pdf: fix combined image/smask
    
    a736fd8 introduced a regression

 src/cairo-pdf-surface.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit d28b6d9b128675dfa9b3b6b793844144183aff64
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Mon Jul 18 18:43:03 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Mon Jul 18 18:43:03 2016 +0930

    pattern: revert an unintentional change added in 190678f

 src/cairo-pattern.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 8a921e6c3ee1cbd7353cd28c23802cfef3e48224
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sun Jul 17 21:33:12 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Jul 17 21:33:12 2016 +0930

    truetype: reverse cmap search should end when 0xffff- 0xffff range reached

 src/cairo-truetype-subset.c | 21 +++++++++++++++------
 1 file changed, 15 insertions(+), 6 deletions(-)

commit 16a8c13b6acad62c8844bf641c1296a9f4aac09d
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sun Jul 17 21:19:37 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Jul 17 21:19:37 2016 +0930

    pdf: Don't fail subsetting if unable to convert utf8 to utf16
    
    If the unicode came from the font, don't fail if utf8_to_utf16 fails.

 src/cairo-pdf-surface.c         | 32 +++++++++++++++++++-------------
 src/cairo-scaled-font-subsets.c |  6 +++++-
 2 files changed, 24 insertions(+), 14 deletions(-)

commit 190678f6444ad879847d603c3c9eaf8e9ab6887a
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Jul 16 14:59:43 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Jul 16 15:42:23 2016 +0930

    pattern: don't round extents to 0 on vector surfaces
    
    In this bug a Type 3 font contains a dash glyph. The dash glyph
    consists of an 82x2 image. The image height, when scaled to user space,
    is < 1 resuling in the drawing operation for the image being culled.
    
    https://bugs.freedesktop.org/show_bug.cgi?id=94615

 src/cairo-analysis-surface.c     |  4 ++--
 src/cairo-composite-rectangles.c |  7 ++++---
 src/cairo-pattern-private.h      |  3 ++-
 src/cairo-pattern.c              | 14 +++++++++++---
 4 files changed, 19 insertions(+), 9 deletions(-)

commit 1a380ef5f37339583b8ab7b964025445b4fbb215
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Fri Jul 15 22:03:04 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Fri Jul 15 22:03:04 2016 +0930

    ps/pdf: remove debug and commented out code

 src/cairo-pdf-surface.c |  2 +-
 src/cairo-ps-surface.c  | 31 -------------------------------
 2 files changed, 1 insertion(+), 32 deletions(-)

commit 0e6f7deac1092666464b81866f5d5a13866befe4
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Fri Jul 15 16:24:03 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Fri Jul 15 16:32:53 2016 +0930

    ps: flush ASCII85Decode file after use
    
    If the image operator does not read all the ASCII85 data, the PS
    interpreter will try to execute the next byte of unread data.
    
    Define our own image operator that calls flushfile (reads until end of
    file) on the filter after drawing the image.
    
    https://bugs.freedesktop.org/show_bug.cgi?id=84811

 src/cairo-ps-surface.c | 25 ++++++++++++++++++-------
 1 file changed, 18 insertions(+), 7 deletions(-)

commit b73c082c7f412f53eb2e4b52689601128a5f06a0
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Jul 9 18:19:16 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Jul 9 18:31:55 2016 +0930

    truetype: Don't write glyph if num_contours == 0
    
    According to the Opentype spec, num_contours in a glyf table entry can
    be > 0 (single glyph) or < 0 (composite glyph).  num_contours == 0 is
    undefined.
    
    The embedded font in the test case for this bug contained a space
    glyph with num_contours == 0. This was failing on some printers.
    According to the spec, glyphs with no outlines such as space are
    required to have a 0 size entry in the loca table.
    
    https://bugs.freedesktop.org/show_bug.cgi?id=79897

 src/cairo-truetype-subset.c | 30 ++++++++++++++++++++++++------
 1 file changed, 24 insertions(+), 6 deletions(-)

commit 38fdcc30a3fe64800a732affaa211ac38eb8dfad
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Wed Jul 6 15:46:00 2016 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Wed Jul 6 15:46:00 2016 -0700

    cairo-misc: Whitespace cleanup

 src/cairo-misc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit deb994488ff5f5ca1ad770cef66cad7a04606e94
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Jun 18 13:41:28 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Tue Jul 5 20:26:47 2016 +0930

    test: refresh text-rotate ref images

 test/reference/text-rotate.pdf.ref.png | Bin 16006 -> 16045 bytes
 test/reference/text-rotate.ps.ref.png  | Bin 8668 -> 8632 bytes
 test/reference/text-rotate.ref.png     | Bin 16360 -> 16456 bytes
 3 files changed, 0 insertions(+), 0 deletions(-)

commit bb4595130b2087ae7c32d688267fa32f398de7c7
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Jun 18 13:16:57 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Tue Jul 5 20:26:47 2016 +0930

    ft: set font size to em size when retrieving unhinted metrics
    
    fixes text-unhinted-metrics test

 src/cairo-ft-font.c | 142 +++++++++++++++++++++++++++++++++-------------------
 1 file changed, 91 insertions(+), 51 deletions(-)

commit d92015e4f9e654580c1dac6adf860eafd804a4ba
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Jun 18 13:15:37 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Tue Jul 5 20:26:47 2016 +0930

    add test text-unhinted-metrics
    
    Based on bug report in https://lists.cairographics.org/archives/cairo/2016-April/027334.html

 test/Makefile.sources                            |   1 +
 test/reference/text-unhinted-metrics.pdf.ref.png | Bin 0 -> 4083 bytes
 test/reference/text-unhinted-metrics.ps.ref.png  | Bin 0 -> 3426 bytes
 test/reference/text-unhinted-metrics.ref.png     | Bin 0 -> 4104 bytes
 test/text-unhinted-metrics.c                     |  73 +++++++++++++++++++++++
 5 files changed, 74 insertions(+)

commit 1ada65c34f7b76920501af34979dceaa9e7030d9
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sun Jul 3 10:39:08 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Jul 3 10:39:08 2016 +0930

    pdf: remove unused variable

 src/cairo-pdf-surface.c | 1 -
 1 file changed, 1 deletion(-)

commit c2dc5aa6849fb41cd42cea66d18436bacac25bbd
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sun Jul 3 10:38:46 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Jul 3 10:38:46 2016 +0930

    recording: Remove unused function

 src/cairo-recording-surface.c | 15 ---------------
 1 file changed, 15 deletions(-)

commit 97d8b2b7de5084cafa282630f5b1147c4ef05cb8
Author:     Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
AuthorDate: Thu Jun 30 17:46:39 2016 +0200
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Sat Jul 2 13:38:25 2016 +0200

    qt: replaced calls to _cairo_clip_init_copy() by _cairo_clip_copy()
    
    _cairo_clip_init_copy() was removed with commit b132fae5e843c329d1414d1a65b2e8d66b99852f,
    but a few calls were still remaining.
    
    Signed-off-by: Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
    Signed-off-by: Uli Schlachter <psychon@znc.in>

 src/cairo-qt-surface.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f212db2fccfa3825d6a4dc55d5077e5fb756d50b
Author:     Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
AuthorDate: Thu Jun 30 17:45:45 2016 +0200
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Sat Jul 2 13:35:38 2016 +0200

    core: fixed code duplication
    
    We have two places where copying from box set to clip is
    implemented in the same way. Just move that to one function.
    
    Signed-off-by: Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
    Signed-off-by: Uli Schlachter <psychon@znc.in>

 src/cairo-clip-boxes.c | 50 ++++++++++++++++++++++++++++++++++----------------
 1 file changed, 34 insertions(+), 16 deletions(-)

commit 5bb43c92b3b35e9df8bdb8b14997e98c4a05d917
Author:     Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
AuthorDate: Thu Jun 30 17:45:44 2016 +0200
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Sat Jul 2 13:35:38 2016 +0200

    core: dropped actually unused parameter of _cairo_boxes_to_array()
    
    When parameter force_allocation is false *and* the box set has
    exactly one chunk, this chunk is returned directly - w/o copying it.
    
    That mode is never used, and it's highly problematic as it's unclear
    whether we have to free the returnd object or it's still owned
    by somebody else.
    
    Just dropping the useless parameter / corner case to make the function
    simpler and more robust.
    
    Signed-off-by: Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
    Signed-off-by: Uli Schlachter <psychon@znc.in>

 src/cairo-boxes-private.h | 3 +--
 src/cairo-boxes.c         | 5 +----
 src/cairo-clip-boxes.c    | 4 ++--
 3 files changed, 4 insertions(+), 8 deletions(-)

commit b23c2291d8fdebd417697d5b70f31226632e3a1e
Author:     Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
AuthorDate: Thu Jun 30 17:45:43 2016 +0200
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Sat Jul 2 13:35:34 2016 +0200

    core: helper inline for rect->box conversion
    
    Signed-off-by: Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
    Signed-off-by: Uli Schlachter <psychon@znc.in>

 src/cairo-box-inline.h | 10 ++++++++++
 src/cairo-clip-boxes.c | 11 ++---------
 2 files changed, 12 insertions(+), 9 deletions(-)

commit ae403448af410984852aeff76278dc96e7141b9e
Author:     Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
AuthorDate: Thu Jun 30 17:45:42 2016 +0200
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Sat Jul 2 13:27:11 2016 +0200

    core: fix compiler warnings
    
    The code correct, but the compiler can't check that and thinks
    there're uninitialized variables.
    
    Perhaps we could rewrite it in a better way, so the compiler
    can do better (even arch specific) optimizations.
    
    Signed-off-by: Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
    Signed-off-by: Uli Schlachter <psychon@znc.in>

 src/cairo-botor-scan-converter.c | 2 +-
 src/cairo-line.c                 | 8 ++++----
 src/cairo-polygon-intersect.c    | 2 +-
 src/cairo-polygon-reduce.c       | 2 +-
 4 files changed, 7 insertions(+), 7 deletions(-)

commit 1272db90f85cf031e5d2ffb73d1af1259c9d4fb9
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Tue Jun 21 19:44:48 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Tue Jun 21 19:44:48 2016 +0930

    win32: gcc 5.4 build fix

 boilerplate/cairo-boilerplate-win32.c | 3 +++
 1 file changed, 3 insertions(+)

commit 90d50cd92315d6760069ad8062aba5e297370b20
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sun Jun 19 19:52:32 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Jun 19 19:52:32 2016 +0930

    win32-print: fix unbounded surface assertion
    
    https://lists.cairographics.org/archives/cairo/2016-June/027445.html

 src/win32/cairo-win32-printing-surface.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d69dd6b341594c338fa6c7b327fd7f201eb37bc1
Author:     Uli Schlachter <psychon@znc.in>
AuthorDate: Sat Jun 18 15:08:52 2016 +0200
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Sun Jun 19 11:34:35 2016 +0200

    xlib: Fix double free in _get_image_surface()
    
    If XShmGetImage() fails, the code tries to continue with its normal,
    non-shared-memory path. However, the image variable, which was previously set to
    NULL, now points to an already-destroyed surface, causing a double-free when the
    function cleans up after itself (actually, its an assertion failure because the
    reference count of the surface is zero, but technically this is still a double
    free).
    
    Fix this by setting image=NULL after destroying the surface that this refers to,
    to make sure this surface will not be destroyed again.
    
    While we are here (multiple changes in a single commit are bad...), also fix the
    cleanup done in bail. In practice, &image->base should be safe when image==NULL,
    because this just adds some offset to the pointer (the offset here is actually
    zero, so this doesn't do anything at all). However, the C standard does not
    require this to be safe, so let's handle this case specially.
    
    Note that anything that is fixed by this change is still buggy, because the only
    reason why XShmGetImage() could fail would be BadDrawable, meaning that the
    target we draw to does not exist or was already destroyed. This patch will
    likely just cause X11 errors elsewhere and drawing to (possible) invalid
    drawables is not supported by cairo anyway. This means that if SHM fails, the
    following fallback code has a high chance of failing, too.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=91967
    Signed-off-by: Uli Schlachter <psychon@znc.in>

 src/cairo-xlib-surface.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit eb808aa6250f1a44a2f5efff5c9ad3df44cb4d1d
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sun Jun 19 14:08:55 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Jun 19 14:08:55 2016 +0930

    image: only cache analyzed transparency/color for snapshot surfaces
    
    https://lists.cairographics.org/archives/cairo/2016-June/027429.html

 src/cairo-image-surface.c | 86 +++++++++++++++++++++++++++++------------------
 1 file changed, 54 insertions(+), 32 deletions(-)

commit 113ba5f3fa48f9f826b86ff9198ce0d35144eea4
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sun Jun 5 20:34:44 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Jun 5 20:43:36 2016 +0930

    Update ref images
    
    ref images were creating using Debian Jessie 64-bit and latest poppler.

 test/README                                        |  10 +++++-----
 test/reference/arc-direction.pdf.ref.png           | Bin 0 -> 6175 bytes
 test/reference/arc-direction.ref.png               | Bin 6073 -> 6175 bytes
 test/reference/arc-looping-dash.pdf.ref.png        | Bin 0 -> 472 bytes
 test/reference/big-empty-box.ps.rgb24.ref.png      | Bin 0 -> 108 bytes
 test/reference/big-empty-triangle.ps.rgb24.ref.png | Bin 0 -> 108 bytes
 test/reference/big-little-box.ps.rgb24.ref.png     | Bin 0 -> 160 bytes
 test/reference/bitmap-font.ps.rgb24.ref.png        | Bin 0 -> 871 bytes
 test/reference/bug-51910.pdf.ref.png               | Bin 0 -> 1908 bytes
 test/reference/bug-51910.ps.ref.png                | Bin 0 -> 2180 bytes
 test/reference/bug-84115.pdf.ref.png               | Bin 0 -> 62959 bytes
 test/reference/bug-84115.ps.arg32.ref.png          | Bin 0 -> 61982 bytes
 test/reference/bug-84115.ps.argb32.ref.png         | Bin 0 -> 61982 bytes
 test/reference/bug-84115.ps.rgb24.ref.png          | Bin 0 -> 61982 bytes
 test/reference/bug-bo-ricotz.argb32.ref.png        | Bin 0 -> 2123 bytes
 test/reference/bug-bo-ricotz.pdf.rgb24.ref.png     | Bin 0 -> 2123 bytes
 test/reference/bug-bo-ricotz.ps.ref.png            | Bin 0 -> 2081 bytes
 test/reference/bug-extents.pdf.ref.png             | Bin 0 -> 2639 bytes
 test/reference/bug-source-cu.pdf.argb32.ref.png    | Bin 0 -> 3206 bytes
 test/reference/bug-source-cu.pdf.rgb24.ref.png     | Bin 0 -> 3216 bytes
 test/reference/bug-source-cu.ps.argb32.ref.png     | Bin 0 -> 3192 bytes
 test/reference/bug-source-cu.ps.rgb24.ref.png      | Bin 0 -> 3192 bytes
 test/reference/bug-spline.ps.ref.png               | Bin 0 -> 3563 bytes
 test/reference/caps-05.pdf.ref.png                 | Bin 0 -> 1230 bytes
 test/reference/caps-05.ps.ref.png                  | Bin 0 -> 1046 bytes
 test/reference/caps-1.pdf.ref.png                  | Bin 0 -> 1230 bytes
 test/reference/caps-1.ps.ref.png                   | Bin 0 -> 1195 bytes
 test/reference/caps-2.pdf.ref.png                  | Bin 0 -> 1446 bytes
 test/reference/caps-2.ps.ref.png                   | Bin 0 -> 1211 bytes
 test/reference/caps-joins-05.pdf.ref.png           | Bin 0 -> 2377 bytes
 test/reference/caps-joins-05.ps.ref.png            | Bin 0 -> 1485 bytes
 test/reference/caps-joins-1.pdf.ref.png            | Bin 0 -> 2377 bytes
 test/reference/caps-joins-1.ps.ref.png             | Bin 0 -> 1638 bytes
 test/reference/caps-joins-2.pdf.ref.png            | Bin 0 -> 1716 bytes
 test/reference/caps-joins-2.ps.ref.png             | Bin 0 -> 1597 bytes
 test/reference/caps-joins-curve.pdf.ref.png        | Bin 0 -> 5721 bytes
 test/reference/caps-joins.pdf.ref.png              | Bin 0 -> 1712 bytes
 test/reference/caps-sub-paths.pdf.ref.png          | Bin 0 -> 165 bytes
 test/reference/caps-tails-curve.pdf.ref.png        | Bin 0 -> 53213 bytes
 test/reference/caps.pdf.ref.png                    | Bin 0 -> 1836 bytes
 test/reference/checkerboard.pdf.ref.png            | Bin 0 -> 152 bytes
 test/reference/clip-complex-bug61592.pdf.ref.png   | Bin 0 -> 128 bytes
 test/reference/clip-complex-bug61592.ps.ref.png    | Bin 0 -> 104 bytes
 test/reference/clip-device-offset.ps.rgb24.ref.png | Bin 0 -> 168 bytes
 test/reference/clip-disjoint-quad.pdf.ref.png      | Bin 0 -> 1555 bytes
 test/reference/clip-disjoint-quad.ps.ref.png       | Bin 0 -> 1560 bytes
 test/reference/clip-disjoint.ps.ref.png            | Bin 4037 -> 4515 bytes
 test/reference/clip-fill-no-op.ps.ref.png          | Bin 0 -> 153 bytes
 .../clip-fill-rule-pixel-aligned.ps.argb32.ref.png | Bin 0 -> 175 bytes
 .../clip-fill-rule-pixel-aligned.ps.rgb24.ref.png  | Bin 0 -> 165 bytes
 test/reference/clip-fill-rule.pdf.argb32.ref.png   | Bin 509 -> 507 bytes
 test/reference/clip-fill-rule.pdf.rgb24.ref.png    | Bin 0 -> 375 bytes
 test/reference/clip-fill-rule.rgb24.ref.png        | Bin 376 -> 375 bytes
 test/reference/clip-fill.ps.ref.png                | Bin 0 -> 516 bytes
 test/reference/clip-fill.ps.xfail.png              | Bin 522 -> 0 bytes
 test/reference/clip-image.pdf.ref.png              | Bin 0 -> 2681 bytes
 test/reference/clip-intersect.ps.ref.png           | Bin 0 -> 204 bytes
 test/reference/clip-operator.pdf.argb32.ref.png    | Bin 8792 -> 7827 bytes
 test/reference/clip-operator.pdf.rgb24.ref.png     | Bin 4683 -> 0 bytes
 test/reference/clip-operator.rgb24.ref.png         | Bin 3417 -> 3421 bytes
 test/reference/clip-push-group.pdf.ref.png         | Bin 164 -> 181 bytes
 test/reference/clip-rectilinear.ps.ref.png         | Bin 0 -> 395 bytes
 ...p-rotate-image-surface-paint.pdf.argb32.ref.png | Bin 0 -> 369 bytes
 ...ip-rotate-image-surface-paint.pdf.rgb24.ref.png | Bin 0 -> 369 bytes
 .../clip-rotate-image-surface-paint.ps.ref.png     | Bin 0 -> 207 bytes
 test/reference/clip-stroke-no-op.ps.ref.png        | Bin 0 -> 153 bytes
 .../reference/clip-stroke-unbounded.argb32.ref.png | Bin 4097 -> 4040 bytes
 test/reference/clip-stroke-unbounded.rgb24.ref.png | Bin 3486 -> 3410 bytes
 test/reference/clip-stroke.ps.ref.png              | Bin 0 -> 818 bytes
 test/reference/clip-stroke.ps.xfail.png            | Bin 662 -> 0 bytes
 test/reference/clip-text.ps.ref.png                | Bin 0 -> 428 bytes
 test/reference/clip-text.ps.xfail.png              | Bin 434 -> 0 bytes
 test/reference/clipped-group.pdf.ref.png           | Bin 334 -> 280 bytes
 .../reference/close-path-current-point.pdf.ref.png | Bin 0 -> 1959 bytes
 test/reference/close-path.pdf.argb32.ref.png       | Bin 0 -> 285 bytes
 test/reference/close-path.pdf.rgb24.ref.png        | Bin 0 -> 285 bytes
 test/reference/copy-path.pdf.ref.png               | Bin 0 -> 618 bytes
 test/reference/culled-glyphs.ps.ref.png            | Bin 372 -> 290 bytes
 test/reference/dash-caps-joins.pdf.ref.png         | Bin 0 -> 4710 bytes
 test/reference/dash-caps-joins.ps.ref.png          | Bin 3648 -> 3669 bytes
 test/reference/dash-curve.pdf.ref.png              | Bin 0 -> 40984 bytes
 test/reference/dash-curve.ps.ref.png               | Bin 0 -> 24058 bytes
 test/reference/dash-curve.ps2.ref.png              | Bin 24355 -> 0 bytes
 test/reference/dash-curve.ps3.ref.png              | Bin 24355 -> 0 bytes
 test/reference/dash-infinite-loop.pdf.ref.png      | Bin 0 -> 665 bytes
 test/reference/dash-scale.pdf.ref.png              | Bin 0 -> 7824 bytes
 test/reference/dash-state.pdf.ref.png              | Bin 0 -> 7407 bytes
 test/reference/dash-zero-length.pdf.argb32.ref.png | Bin 0 -> 233 bytes
 test/reference/dash-zero-length.pdf.rgb24.ref.png  | Bin 0 -> 199 bytes
 test/reference/degenerate-curve-to.pdf.ref.png     | Bin 0 -> 282 bytes
 .../degenerate-linear-gradient.pdf.ref.png         | Bin 0 -> 328 bytes
 test/reference/degenerate-path.pdf.argb32.ref.png  | Bin 0 -> 282 bytes
 test/reference/degenerate-path.pdf.rgb24.ref.png   | Bin 0 -> 205 bytes
 test/reference/degenerate-pen.pdf.argb32.ref.png   | Bin 0 -> 1004 bytes
 test/reference/degenerate-pen.pdf.rgb24.ref.png    | Bin 0 -> 1004 bytes
 .../degenerate-radial-gradient.pdf.ref.png         | Bin 0 -> 439 bytes
 test/reference/degenerate-rel-curve-to.pdf.ref.png | Bin 0 -> 277 bytes
 .../reference/device-offset-fractional.pdf.ref.png | Bin 0 -> 260 bytes
 .../device-offset-positive.ps.rgb24.ref.png        | Bin 0 -> 111 bytes
 test/reference/device-offset.ps.rgb24.ref.png      | Bin 0 -> 111 bytes
 test/reference/extend-pad-border.pdf.ref.png       | Bin 495 -> 505 bytes
 test/reference/fallback.pdf.ref.png                | Bin 0 -> 6318 bytes
 test/reference/fallback.ps.ref.png                 | Bin 0 -> 4053 bytes
 test/reference/fill-alpha.ps.argb32.ref.png        | Bin 2248 -> 2737 bytes
 .../fill-and-stroke-alpha-add.pdf.ref.png          | Bin 0 -> 562 bytes
 test/reference/fill-and-stroke-alpha.pdf.ref.png   | Bin 0 -> 520 bytes
 test/reference/fill-and-stroke.pdf.argb32.ref.png  | Bin 0 -> 359 bytes
 test/reference/fill-and-stroke.pdf.rgb24.ref.png   | Bin 0 -> 311 bytes
 .../fill-degenerate-sort-order.argb32.ref.png      | Bin 2390 -> 2402 bytes
 .../fill-degenerate-sort-order.pdf.ref.png         | Bin 0 -> 2545 bytes
 .../fill-degenerate-sort-order.rgb24.ref.png       | Bin 2048 -> 2057 bytes
 test/reference/fill-empty.ps.rgb24.ref.png         | Bin 0 -> 97 bytes
 test/reference/fill-image.ps.ref.png               | Bin 1645 -> 1760 bytes
 test/reference/fill-missed-stop.pdf.argb32.ref.png | Bin 452 -> 445 bytes
 test/reference/fill-missed-stop.pdf.rgb24.ref.png  | Bin 0 -> 375 bytes
 test/reference/fill-rule.pdf.ref.png               | Bin 0 -> 2444 bytes
 test/reference/fill-rule.rgb24.ref.png             | Bin 1763 -> 1763 bytes
 .../finer-grained-fallbacks.pdf.argb32.ref.png     | Bin 0 -> 1308 bytes
 .../finer-grained-fallbacks.pdf.rgb24.ref.png      | Bin 0 -> 880 bytes
 .../finer-grained-fallbacks.ps.argb32.ref.png      | Bin 0 -> 1262 bytes
 .../finer-grained-fallbacks.ps.rgb24.ref.png       | Bin 0 -> 880 bytes
 .../finer-grained-fallbacks.ps2.argb32.ref.png     | Bin 1168 -> 0 bytes
 test/reference/finer-grained-fallbacks.ps2.ref.png | Bin 1356 -> 0 bytes
 .../finer-grained-fallbacks.ps2.rgb24.ref.png      | Bin 936 -> 0 bytes
 .../finer-grained-fallbacks.ps3.argb32.ref.png     | Bin 1168 -> 0 bytes
 test/reference/finer-grained-fallbacks.ps3.ref.png | Bin 1356 -> 0 bytes
 .../finer-grained-fallbacks.ps3.rgb24.ref.png      | Bin 936 -> 0 bytes
 test/reference/font-matrix-translation.ps.ref.png  | Bin 0 -> 584 bytes
 .../font-matrix-translation.ps2.argb32.ref.png     | Bin 748 -> 0 bytes
 .../font-matrix-translation.ps2.rgb24.ref.png      | Bin 748 -> 0 bytes
 .../font-matrix-translation.ps3.argb32.ref.png     | Bin 748 -> 0 bytes
 .../font-matrix-translation.ps3.rgb24.ref.png      | Bin 748 -> 0 bytes
 .../ft-show-glyphs-positioning.pdf.ref.png         | Bin 3117 -> 3238 bytes
 .../ft-show-glyphs-positioning.ps.ref.png          | Bin 0 -> 1696 bytes
 .../ft-show-glyphs-positioning.ps2.ref.png         | Bin 2269 -> 0 bytes
 .../ft-show-glyphs-positioning.ps3.ref.png         | Bin 2269 -> 0 bytes
 test/reference/ft-show-glyphs-table.ps.ref.png     | Bin 0 -> 4561 bytes
 test/reference/ft-show-glyphs-table.ps2.ref.png    | Bin 5687 -> 0 bytes
 test/reference/ft-show-glyphs-table.ps3.ref.png    | Bin 5687 -> 0 bytes
 .../ft-text-vertical-layout-type3.pdf.ref.png      | Bin 3639 -> 3236 bytes
 .../ft-text-vertical-layout-type3.ps.ref.png       | Bin 2134 -> 2109 bytes
 .../ft-text-vertical-layout-type3.ref.png          | Bin 3609 -> 3605 bytes
 test/reference/glyph-cache-pressure.ps.ref.png     | Bin 0 -> 1239 bytes
 test/reference/glyph-cache-pressure.ps2.ref.png    | Bin 1454 -> 0 bytes
 test/reference/glyph-cache-pressure.ps3.ref.png    | Bin 1454 -> 0 bytes
 test/reference/gradient-alpha.pdf.argb32.ref.png   | Bin 0 -> 133 bytes
 test/reference/gradient-alpha.pdf.rgb24.ref.png    | Bin 0 -> 124 bytes
 .../gradient-constant-alpha.pdf.argb32.ref.png     | Bin 0 -> 103 bytes
 .../gradient-constant-alpha.pdf.rgb24.ref.png      | Bin 0 -> 103 bytes
 .../gradient-zero-stops-mask.ps.rgb24.ref.png      | Bin 0 -> 86 bytes
 test/reference/gradient-zero-stops.ps.rgb24.png    | Bin 0 -> 86 bytes
 test/reference/group-unaligned.ps.ref.png          | Bin 321 -> 310 bytes
 test/reference/halo-transform.ps.ref.png           | Bin 8691 -> 8704 bytes
 test/reference/halo.ps.ref.png                     | Bin 5220 -> 5368 bytes
 test/reference/huge-linear.pdf.ref.png             | Bin 1586 -> 1640 bytes
 test/reference/huge-radial.pdf.ref.png             | Bin 0 -> 47469 bytes
 test/reference/huge-radial.ref.png                 | Bin 41702 -> 47247 bytes
 .../image-surface-source.ps.argb32.ref.png         | Bin 0 -> 484 bytes
 .../image-surface-source.ps.rgb24.ref.png          | Bin 0 -> 475 bytes
 test/reference/image-surface-source.ps2.ref.png    | Bin 376 -> 0 bytes
 test/reference/image-surface-source.ps3.ref.png    | Bin 376 -> 0 bytes
 test/reference/infinite-join.pdf.ref.png           | Bin 0 -> 132 bytes
 test/reference/inverse-text.ps.ref.png             | Bin 0 -> 748 bytes
 test/reference/joins-loop.ps.ref.png               | Bin 0 -> 2963 bytes
 test/reference/joins-star.ps.ref.png               | Bin 0 -> 3334 bytes
 test/reference/joins.pdf.argb32.ref.png            | Bin 0 -> 6320 bytes
 test/reference/joins.pdf.rgb24.ref.png             | Bin 0 -> 6320 bytes
 test/reference/large-font.ps.ref.png               | Bin 0 -> 5007 bytes
 test/reference/leaky-dashed-stroke.pdf.ref.png     | Bin 0 -> 9283 bytes
 test/reference/leaky-polygon.pdf.ref.png           | Bin 0 -> 330 bytes
 .../line-width-large-overlap-offset.ps.ref.png     | Bin 0 -> 305 bytes
 .../line-width-large-overlap-rotated.ps.ref.png    | Bin 0 -> 385 bytes
 .../reference/line-width-overlap-offset.ps.ref.png | Bin 0 -> 349 bytes
 .../line-width-overlap-rotated.ps.ref.png          | Bin 0 -> 632 bytes
 test/reference/line-width-scale.pdf.ref.png        | Bin 0 -> 5670 bytes
 test/reference/line-width-tolerance.pdf.ref.png    | Bin 0 -> 163 bytes
 test/reference/line-width-tolerance.ps.ref.png     | Bin 0 -> 265 bytes
 test/reference/line-width.pdf.ref.png              | Bin 0 -> 180 bytes
 test/reference/linear-gradient-extend.pdf.ref.png  | Bin 0 -> 388 bytes
 test/reference/linear-gradient-large.pdf.ref.png   | Bin 0 -> 3050 bytes
 test/reference/linear-gradient-large.ps.ref.png    | Bin 0 -> 3551 bytes
 .../linear-gradient-one-stop.ps.rgb24.ref.png      | Bin 0 -> 174 bytes
 test/reference/linear-gradient-subset.pdf.ref.png  | Bin 0 -> 811 bytes
 test/reference/linear-gradient-subset.ref.png      | Bin 813 -> 805 bytes
 test/reference/linear-gradient.pdf.ref.png         | Bin 0 -> 963 bytes
 test/reference/linear-gradient.ps3.ref.png         | Bin 779 -> 622 bytes
 test/reference/linear-gradient.ref.png             | Bin 959 -> 960 bytes
 test/reference/linear-uniform.ps.ref.png           | Bin 0 -> 129 bytes
 test/reference/long-dashed-lines.pdf.ref.png       | Bin 0 -> 2092 bytes
 test/reference/mask-ctm.ps.rgb24.ref.png           | Bin 0 -> 105 bytes
 test/reference/mask-surface-ctm.ps.rgb24.ref.png   | Bin 0 -> 105 bytes
 test/reference/mask-transformed-image.pdf.ref.png  | Bin 3528 -> 3811 bytes
 test/reference/mask-transformed-image.ps.ref.png   | Bin 0 -> 3777 bytes
 .../reference/mask-transformed-similar.pdf.ref.png | Bin 4213 -> 3528 bytes
 test/reference/mask-transformed-similar.ps.ref.png | Bin 0 -> 3532 bytes
 test/reference/mask.argb32.ref.png                 | Bin 8530 -> 8577 bytes
 test/reference/mask.pdf.argb32.ref.png             | Bin 7554 -> 7618 bytes
 test/reference/mask.pdf.rgb24.ref.png              | Bin 7043 -> 7078 bytes
 test/reference/mask.rgb24.ref.png                  | Bin 7160 -> 7140 bytes
 test/reference/mesh-pattern-conical.pdf.ref.png    | Bin 0 -> 8767 bytes
 test/reference/mesh-pattern-conical.ps.ref.png     | Bin 0 -> 11374 bytes
 .../mesh-pattern-control-points.pdf.ref.png        | Bin 0 -> 10939 bytes
 .../mesh-pattern-control-points.ps.ref.png         | Bin 0 -> 18415 bytes
 test/reference/mesh-pattern-fold.pdf.ref.png       | Bin 0 -> 53096 bytes
 test/reference/mesh-pattern-fold.ps.ref.png        | Bin 0 -> 71806 bytes
 test/reference/mesh-pattern-overlap.pdf.ref.png    | Bin 0 -> 9114 bytes
 test/reference/mesh-pattern-overlap.ps.ref.png     | Bin 0 -> 11238 bytes
 .../reference/mesh-pattern-transformed.pdf.ref.png | Bin 0 -> 14510 bytes
 test/reference/mesh-pattern-transformed.ps.ref.png | Bin 0 -> 14604 bytes
 test/reference/mesh-pattern.pdf.ref.png            | Bin 0 -> 19722 bytes
 test/reference/mesh-pattern.ps.ref.png             | Bin 0 -> 19765 bytes
 test/reference/new-sub-path.pdf.argb32.ref.png     | Bin 512 -> 519 bytes
 test/reference/new-sub-path.pdf.rgb24.ref.png      | Bin 0 -> 390 bytes
 test/reference/nil-surface.ps.rgb24.ref.png        | Bin 0 -> 87 bytes
 test/reference/operator-alpha-alpha.pdf.ref.png    | Bin 0 -> 3402 bytes
 test/reference/operator-alpha-alpha.ps.ref.png     | Bin 0 -> 4283 bytes
 test/reference/operator-clear.pdf.argb32.ref.png   | Bin 0 -> 1150 bytes
 test/reference/operator-clear.rgb24.ref.png        | Bin 939 -> 940 bytes
 test/reference/operator-source.argb32.ref.png      | Bin 5620 -> 5619 bytes
 test/reference/operator-source.rgb24.ref.png       | Bin 4006 -> 4010 bytes
 .../reference/over-above-source.ps3.argb32.ref.png | Bin 558 -> 529 bytes
 .../over-around-source.ps3.argb32.ref.png          | Bin 508 -> 472 bytes
 .../over-between-source.ps3.argb32.ref.png         | Bin 551 -> 539 bytes
 test/reference/overlapping-boxes.ps.argb32.ref.png | Bin 0 -> 161 bytes
 test/reference/overlapping-boxes.ps.rgb24.ref.png  | Bin 0 -> 170 bytes
 .../overlapping-glyphs.pdf.argb32.ref.png          | Bin 0 -> 2179 bytes
 .../reference/overlapping-glyphs.pdf.rgb24.ref.png | Bin 0 -> 1656 bytes
 test/reference/overlapping-glyphs.ps.rgb24.ref.png | Bin 0 -> 1613 bytes
 test/reference/paint-source-alpha.pdf.ref.png      | Bin 0 -> 245 bytes
 .../paint-with-alpha-clip-mask.pdf.ref.png         | Bin 0 -> 344 bytes
 test/reference/paint-with-alpha-clip.pdf.ref.png   | Bin 0 -> 309 bytes
 .../paint-with-alpha-solid-clip.pdf.ref.png        | Bin 0 -> 265 bytes
 test/reference/paint-with-alpha.pdf.ref.png        | Bin 0 -> 245 bytes
 test/reference/partial-clip-text-bottom.ps.ref.png | Bin 0 -> 192 bytes
 test/reference/partial-clip-text-left.ps.ref.png   | Bin 0 -> 218 bytes
 test/reference/partial-clip-text-right.ps.ref.png  | Bin 0 -> 123 bytes
 test/reference/partial-clip-text-top.ps.ref.png    | Bin 107 -> 98 bytes
 test/reference/pass-through.ps.rgb24.ref.png       | Bin 0 -> 313 bytes
 test/reference/path-stroke-twice.pdf.ref.png       | Bin 0 -> 214 bytes
 .../reference/pdf-surface-source.ps.argb32.ref.png | Bin 0 -> 307 bytes
 test/reference/pdf-surface-source.ps.rgb24.ref.png | Bin 0 -> 312 bytes
 .../reference/pixman-downscale-best-24.pdf.ref.png | Bin 0 -> 162 bytes
 test/reference/pixman-downscale-best-24.ps.ref.png | Bin 0 -> 391 bytes
 test/reference/pixman-downscale-best-24.ref.png    | Bin 191 -> 601 bytes
 test/reference/pixman-downscale-best-96.ps.ref.png | Bin 0 -> 581 bytes
 .../pixman-downscale-bilinear-24.ps.ref.png        | Bin 0 -> 391 bytes
 .../pixman-downscale-bilinear-96.ps.ref.png        | Bin 0 -> 581 bytes
 test/reference/pixman-downscale-good-24.ps.ref.png | Bin 0 -> 391 bytes
 test/reference/pixman-downscale-good-96.ps.ref.png | Bin 0 -> 581 bytes
 test/reference/pixman-rotate.ps.argb32.ref.png     | Bin 355 -> 358 bytes
 test/reference/pixman-rotate.ps.rgb24.ref.png      | Bin 0 -> 221 bytes
 test/reference/ps-surface-source.ps.argb32.ref.png | Bin 0 -> 307 bytes
 test/reference/ps-surface-source.ps.rgb24.ref.png  | Bin 0 -> 312 bytes
 test/reference/pthread-show-text.pdf.ref.png       | Bin 47015 -> 46891 bytes
 test/reference/pthread-show-text.ps.ref.png        | Bin 16558 -> 17905 bytes
 test/reference/radial-gradient-extend.pdf.ref.png  | Bin 0 -> 483 bytes
 test/reference/random-clip.pdf.argb32.ref.png      | Bin 0 -> 524985 bytes
 test/reference/random-clip.pdf.rgb24.ref.png       | Bin 0 -> 524985 bytes
 test/reference/random-clip.ps.argb32.ref.png       | Bin 0 -> 461852 bytes
 test/reference/random-clip.ps.rgb24.ref.png        | Bin 0 -> 524985 bytes
 test/reference/random-clip.ref.png                 | Bin 525010 -> 524985 bytes
 ...ndom-intersections-curves-eo.pdf.argb32.ref.png | Bin 0 -> 257915 bytes
 .../random-intersections-curves-eo.pdf.ref.png     | Bin 246507 -> 0 bytes
 ...andom-intersections-curves-eo.pdf.rgb24.ref.png | Bin 0 -> 257898 bytes
 ...ndom-intersections-curves-nz.pdf.argb32.ref.png | Bin 0 -> 263071 bytes
 ...andom-intersections-curves-nz.pdf.rgb24.ref.png | Bin 0 -> 263052 bytes
 test/reference/random-intersections-eo.pdf.ref.png | Bin 0 -> 149460 bytes
 test/reference/random-intersections-eo.ref.png     | Bin 135555 -> 135553 bytes
 .../random-intersections-nonzero.pdf.ref.png       | Bin 0 -> 152364 bytes
 .../reference/random-intersections-nonzero.ref.png | Bin 141737 -> 141727 bytes
 test/reference/record-extend-none.ps.ref.png       | Bin 0 -> 307 bytes
 test/reference/record-extend-pad.ps.ref.png        | Bin 0 -> 341 bytes
 test/reference/record-extend-reflect.ps.ref.png    | Bin 0 -> 354 bytes
 test/reference/record-extend-repeat.ps.ref.png     | Bin 0 -> 299 bytes
 test/reference/record-fill-alpha.pdf.ref.png       | Bin 0 -> 2831 bytes
 test/reference/record-fill-alpha.ref.png           | Bin 2754 -> 2831 bytes
 test/reference/record-mesh.pdf.argb32.ref.png      | Bin 0 -> 15215 bytes
 test/reference/record-mesh.pdf.rgb24.ref.png       | Bin 0 -> 14953 bytes
 test/reference/record-mesh.ps.ref.png              | Bin 0 -> 15215 bytes
 test/reference/record-mesh.ref.png                 | Bin 15400 -> 15215 bytes
 ...record-paint-alpha-clip-mask.pdf.argb32.ref.png | Bin 0 -> 340 bytes
 .../record-paint-alpha-clip-mask.pdf.rgb24.ref.png | Bin 0 -> 349 bytes
 .../reference/record-paint-alpha-clip-mask.ref.png | Bin 335 -> 340 bytes
 .../record-paint-alpha-clip.pdf.argb32.ref.png     | Bin 0 -> 296 bytes
 .../record-paint-alpha-clip.pdf.rgb24.ref.png      | Bin 0 -> 309 bytes
 .../record-paint-alpha-solid-clip.pdf.ref.png      | Bin 0 -> 265 bytes
 .../record-replay-extend-none.ps.argb32.ref.png    | Bin 0 -> 707 bytes
 .../record-replay-extend-none.ps.rgb24.ref.png     | Bin 0 -> 448 bytes
 .../record-replay-extend-pad.ps.rgb24.ref.png      | Bin 0 -> 1041 bytes
 .../record-replay-extend-reflect.ps.argb32.ref.png | Bin 0 -> 2393 bytes
 .../record-replay-extend-repeat.ps.argb32.ref.png  | Bin 0 -> 3562 bytes
 .../record-replay-extend-repeat.ps.rgb24.ref.png   | Bin 0 -> 3467 bytes
 .../record-select-font-face.pdf.argb32.ref.png     | Bin 0 -> 1417 bytes
 .../record-select-font-face.pdf.rgb24.ref.png      | Bin 0 -> 2236 bytes
 test/reference/record-select-font-face.ps.ref.png  | Bin 0 -> 834 bytes
 test/reference/record-select-font-face.ref.png     | Bin 2250 -> 1417 bytes
 .../record-self-intersecting.pdf.rgb24.ref.png     | Bin 0 -> 194 bytes
 test/reference/record-self-intersecting.ps.ref.png | Bin 0 -> 186 bytes
 .../record-text-transform.pdf.argb32.ref.png       | Bin 0 -> 5281 bytes
 .../record-text-transform.pdf.rgb24.ref.png        | Bin 0 -> 5577 bytes
 .../record-text-transform.ps.argb32.ref.png        | Bin 0 -> 1216 bytes
 .../record-text-transform.ps.rgb24.ref.png         | Bin 0 -> 1216 bytes
 test/reference/record-text-transform.ref.png       | Bin 5579 -> 5281 bytes
 .../record1414x-fill-alpha.pdf.argb32.ref.png      | Bin 0 -> 4152 bytes
 .../record1414x-fill-alpha.pdf.rgb24.ref.png       | Bin 0 -> 4227 bytes
 test/reference/record1414x-fill-alpha.ps.ref.png   | Bin 0 -> 4152 bytes
 test/reference/record1414x-fill-alpha.ref.png      | Bin 4124 -> 4243 bytes
 ...d1414x-paint-alpha-clip-mask.pdf.argb32.ref.png | Bin 0 -> 522 bytes
 ...rd1414x-paint-alpha-clip-mask.pdf.rgb24.ref.png | Bin 0 -> 860 bytes
 .../record1414x-paint-alpha-clip-mask.ps.ref.png   | Bin 0 -> 524 bytes
 .../record1414x-paint-alpha-clip-mask.ref.png      | Bin 460 -> 566 bytes
 ...record1414x-paint-alpha-clip.pdf.argb32.ref.png | Bin 0 -> 390 bytes
 .../record1414x-paint-alpha-clip.pdf.rgb24.ref.png | Bin 0 -> 636 bytes
 .../record1414x-paint-alpha-clip.ps.ref.png        | Bin 0 -> 391 bytes
 ...1414x-paint-alpha-solid-clip.pdf.argb32.ref.png | Bin 0 -> 334 bytes
 ...d1414x-paint-alpha-solid-clip.pdf.rgb24.ref.png | Bin 0 -> 663 bytes
 .../record1414x-paint-alpha-solid-clip.ps.ref.png  | Bin 0 -> 333 bytes
 .../record1414x-paint-alpha.pdf.argb32.ref.png     | Bin 0 -> 287 bytes
 .../record1414x-paint-alpha.pdf.rgb24.ref.png      | Bin 0 -> 665 bytes
 test/reference/record1414x-paint-alpha.ps.ref.png  | Bin 0 -> 285 bytes
 ...record1414x-select-font-face.pdf.argb32.ref.png | Bin 0 -> 2018 bytes
 .../record1414x-select-font-face.pdf.rgb24.ref.png | Bin 0 -> 3191 bytes
 .../record1414x-select-font-face.ps.argb32.ref.png | Bin 0 -> 1196 bytes
 .../record1414x-select-font-face.ps.rgb24.ref.png  | Bin 0 -> 1194 bytes
 .../reference/record1414x-select-font-face.ref.png | Bin 3177 -> 2018 bytes
 ...ecord1414x-self-intersecting.pdf.argb32.ref.png | Bin 0 -> 385 bytes
 ...record1414x-self-intersecting.pdf.rgb24.ref.png | Bin 0 -> 384 bytes
 ...record1414x-self-intersecting.ps.argb32.ref.png | Bin 0 -> 274 bytes
 .../record1414x-self-intersecting.ps.rgb24.ref.png | Bin 0 -> 287 bytes
 .../record1414x-text-transform.pdf.argb32.ref.png  | Bin 0 -> 8364 bytes
 .../record1414x-text-transform.pdf.rgb24.ref.png   | Bin 0 -> 8599 bytes
 .../record1414x-text-transform.ps.ref.png          | Bin 0 -> 6009 bytes
 test/reference/record1414x-text-transform.ref.png  | Bin 8713 -> 8365 bytes
 .../record2x-fill-alpha.pdf.argb32.ref.png         | Bin 0 -> 5811 bytes
 .../record2x-fill-alpha.pdf.rgb24.ref.png          | Bin 0 -> 5870 bytes
 test/reference/record2x-fill-alpha.ps.ref.png      | Bin 0 -> 5811 bytes
 test/reference/record2x-fill-alpha.ref.png         | Bin 5756 -> 5870 bytes
 ...cord2x-paint-alpha-clip-mask.pdf.argb32.ref.png | Bin 0 -> 483 bytes
 ...ecord2x-paint-alpha-clip-mask.pdf.rgb24.ref.png | Bin 0 -> 593 bytes
 .../record2x-paint-alpha-clip-mask.ps.ref.png      | Bin 0 -> 483 bytes
 .../record2x-paint-alpha-clip-mask.ref.png         | Bin 483 -> 491 bytes
 .../record2x-paint-alpha-clip.pdf.argb32.ref.png   | Bin 0 -> 340 bytes
 .../record2x-paint-alpha-clip.pdf.rgb24.ref.png    | Bin 0 -> 432 bytes
 ...ord2x-paint-alpha-solid-clip.pdf.argb32.ref.png | Bin 0 -> 300 bytes
 ...cord2x-paint-alpha-solid-clip.pdf.rgb24.ref.png | Bin 0 -> 379 bytes
 .../record2x-paint-alpha.pdf.argb32.ref.png        | Bin 0 -> 312 bytes
 .../record2x-paint-alpha.pdf.rgb24.ref.png         | Bin 0 -> 402 bytes
 .../record2x-select-font-face.pdf.rgb24.ref.png    | Bin 0 -> 4421 bytes
 .../reference/record2x-select-font-face.ps.ref.png | Bin 0 -> 1716 bytes
 test/reference/record2x-select-font-face.ref.png   | Bin 4407 -> 3098 bytes
 .../record2x-text-transform.pdf.argb32.ref.png     | Bin 0 -> 13174 bytes
 .../record2x-text-transform.pdf.rgb24.ref.png      | Bin 0 -> 13762 bytes
 test/reference/record2x-text-transform.ps.ref.png  | Bin 0 -> 2421 bytes
 test/reference/record2x-text-transform.ref.png     | Bin 13476 -> 13072 bytes
 test/reference/record90-fill-alpha.pdf.ref.png     | Bin 0 -> 2663 bytes
 .../record90-fill-alpha.pdf.rgb24.ref.png          | Bin 0 -> 1090 bytes
 test/reference/record90-fill-alpha.ref.png         | Bin 2656 -> 2663 bytes
 ...cord90-paint-alpha-clip-mask.pdf.argb32.ref.png | Bin 0 -> 339 bytes
 ...ecord90-paint-alpha-clip-mask.pdf.rgb24.ref.png | Bin 0 -> 345 bytes
 .../record90-paint-alpha-clip.pdf.argb32.ref.png   | Bin 0 -> 335 bytes
 .../record90-paint-alpha-clip.pdf.rgb24.ref.png    | Bin 0 -> 327 bytes
 test/reference/record90-paint-alpha-clip.ref.png   | Bin 306 -> 335 bytes
 ...ord90-paint-alpha-solid-clip.pdf.argb32.ref.png | Bin 0 -> 293 bytes
 ...cord90-paint-alpha-solid-clip.pdf.rgb24.ref.png | Bin 0 -> 270 bytes
 test/reference/record90-paint-alpha.ps.ref.png     | Bin 0 -> 105 bytes
 .../record90-select-font-face.pdf.rgb24.ref.png    | Bin 0 -> 2278 bytes
 .../reference/record90-select-font-face.ps.ref.png | Bin 0 -> 880 bytes
 test/reference/record90-select-font-face.ref.png   | Bin 2272 -> 1480 bytes
 .../record90-self-intersecting.pdf.rgb24.ref.png   | Bin 0 -> 188 bytes
 .../record90-self-intersecting.ps.ref.png          | Bin 0 -> 193 bytes
 test/reference/record90-self-intersecting.ref.png  | Bin 240 -> 214 bytes
 .../record90-text-transform.pdf.rgb24.ref.png      | Bin 0 -> 5817 bytes
 test/reference/record90-text-transform.ps.ref.png  | Bin 0 -> 4055 bytes
 test/reference/record90-text-transform.ref.png     | Bin 5811 -> 5481 bytes
 test/reference/recordflip-fill-alpha.ref.png       | Bin 2803 -> 2841 bytes
 ...ordflip-paint-alpha-clip-mask.pdf.rgb24.ref.png | Bin 0 -> 359 bytes
 .../recordflip-paint-alpha-clip-mask.ref.png       | Bin 351 -> 356 bytes
 .../recordflip-paint-alpha-clip.pdf.rgb24.ref.png  | Bin 0 -> 336 bytes
 .../recordflip-select-font-face.pdf.rgb24.ref.png  | Bin 0 -> 2206 bytes
 .../recordflip-select-font-face.ps.argb32.ref.png  | Bin 0 -> 868 bytes
 .../recordflip-select-font-face.ps.rgb24.ref.png   | Bin 0 -> 868 bytes
 test/reference/recordflip-select-font-face.ref.png | Bin 2240 -> 1395 bytes
 .../recordflip-self-intersecting.pdf.rgb24.ref.png | Bin 0 -> 194 bytes
 .../recordflip-self-intersecting.ps.ref.png        | Bin 0 -> 186 bytes
 .../recordflip-text-transform.pdf.rgb24.ref.png    | Bin 0 -> 5611 bytes
 .../recordflip-text-transform.ps.argb32.ref.png    | Bin 0 -> 3879 bytes
 .../recordflip-text-transform.ps.rgb24.ref.png     | Bin 0 -> 3879 bytes
 test/reference/recordflip-text-transform.ref.png   | Bin 5609 -> 5343 bytes
 test/reference/recordflip-whole-fill-alpha.ref.png | Bin 2803 -> 2799 bytes
 .../recordflip-whole-paint-alpha-clip-mask.ref.png | Bin 351 -> 351 bytes
 .../recordflip-whole-select-font-face.ref.png      | Bin 2240 -> 1395 bytes
 .../recordflip-whole-text-transform.ref.png        | Bin 5609 -> 5343 bytes
 ...ecording-surface-extend-none.pdf.argb32.ref.png | Bin 0 -> 3941 bytes
 ...recording-surface-extend-none.pdf.rgb24.ref.png | Bin 0 -> 3775 bytes
 ...recording-surface-extend-none.ps.argb32.ref.png | Bin 0 -> 3986 bytes
 .../recording-surface-extend-none.ps.rgb24.ref.png | Bin 0 -> 3831 bytes
 ...rding-surface-extend-reflect.pdf.argb32.ref.png | Bin 0 -> 29897 bytes
 ...ording-surface-extend-reflect.pdf.rgb24.ref.png | Bin 0 -> 29901 bytes
 ...ording-surface-extend-reflect.ps.argb32.ref.png | Bin 0 -> 33344 bytes
 ...cording-surface-extend-reflect.ps.rgb24.ref.png | Bin 0 -> 33726 bytes
 ...ording-surface-extend-repeat.pdf.argb32.ref.png | Bin 0 -> 26323 bytes
 ...cording-surface-extend-repeat.pdf.rgb24.ref.png | Bin 0 -> 25867 bytes
 ...cording-surface-extend-repeat.ps.argb32.ref.png | Bin 0 -> 28155 bytes
 ...ecording-surface-extend-repeat.ps.rgb24.ref.png | Bin 0 -> 28131 bytes
 .../recording-surface-over.pdf.argb32.ref.png      | Bin 3908 -> 3941 bytes
 .../recording-surface-over.pdf.rgb24.ref.png       | Bin 3760 -> 3775 bytes
 .../recording-surface-over.ps.argb32.ref.png       | Bin 3064 -> 3986 bytes
 .../recording-surface-over.ps.rgb24.ref.png        | Bin 3147 -> 3831 bytes
 .../recording-surface-source.pdf.argb32.ref.png    | Bin 0 -> 3986 bytes
 .../recording-surface-source.pdf.rgb24.ref.png     | Bin 0 -> 3831 bytes
 .../recording-surface-source.ps.argb32.ref.png     | Bin 0 -> 3986 bytes
 .../recording-surface-source.ps.rgb24.ref.png      | Bin 0 -> 3831 bytes
 .../rectilinear-dash-scale-unaligned.pdf.ref.png   | Bin 0 -> 729 bytes
 .../rectilinear-dash-scale-unaligned.ps.ref.png    | Bin 0 -> 1659 bytes
 test/reference/reflected-stroke.pdf.ref.png        | Bin 0 -> 5197 bytes
 .../rotate-clip-image-surface-paint.pdf.argb32.png | Bin 0 -> 223 bytes
 .../rotate-clip-image-surface-paint.pdf.rgb24.png  | Bin 0 -> 362 bytes
 .../rotate-clip-image-surface-paint.ps.argb32.png  | Bin 0 -> 196 bytes
 test/reference/rotated-clip.pdf.ref.png            | Bin 0 -> 3777 bytes
 test/reference/rotated-clip.ps.argb32.png          | Bin 0 -> 3444 bytes
 test/reference/rotated-clip.ps.argb32.ref.png      | Bin 0 -> 3444 bytes
 test/reference/rotated-clip.ps.ref.png             | Bin 3378 -> 0 bytes
 test/reference/rotated-clip.ps.rgb24.ref.png       | Bin 0 -> 3834 bytes
 .../scale-offset-image.pdf.argb32.ref.png          | Bin 7643 -> 0 bytes
 test/reference/scale-offset-image.pdf.ref.png      | Bin 0 -> 9530 bytes
 .../reference/scale-offset-image.pdf.rgb24.ref.png | Bin 7643 -> 0 bytes
 test/reference/scale-offset-image.ref.png          | Bin 9748 -> 9508 bytes
 .../scale-offset-similar.pdf.argb32.ref.png        | Bin 8419 -> 0 bytes
 test/reference/scale-offset-similar.pdf.ref.png    | Bin 0 -> 9742 bytes
 .../scale-offset-similar.pdf.rgb24.ref.png         | Bin 8419 -> 0 bytes
 test/reference/scale-offset-similar.ref.png        | Bin 9779 -> 9508 bytes
 test/reference/self-intersecting.ref.png           | Bin 168 -> 0 bytes
 test/reference/shape-sierpinski.pdf.argb32.ref.png | Bin 39520 -> 0 bytes
 test/reference/shape-sierpinski.pdf.ref.png        | Bin 0 -> 64796 bytes
 test/reference/shape-sierpinski.pdf.rgb24.ref.png  | Bin 39520 -> 0 bytes
 test/reference/simple-edge.ref.png                 | Bin 1922 -> 2494 bytes
 test/reference/smask-fill.pdf.ref.png              | Bin 1105 -> 1153 bytes
 test/reference/smask-image-mask.pdf.ref.png        | Bin 615 -> 616 bytes
 test/reference/smask-mask.pdf.ref.png              | Bin 2308 -> 2288 bytes
 test/reference/smask-paint.pdf.ref.png             | Bin 2431 -> 2422 bytes
 test/reference/smask-stroke.pdf.ref.png            | Bin 0 -> 1712 bytes
 test/reference/smask-text.pdf.ref.png              | Bin 1874 -> 1862 bytes
 test/reference/smask-text.ps.ref.png               | Bin 0 -> 1875 bytes
 test/reference/smask-text.ps2.ref.png              | Bin 2023 -> 0 bytes
 test/reference/smask-text.ps3.ref.png              | Bin 2023 -> 0 bytes
 test/reference/smask.pdf.ref.png                   | Bin 0 -> 3432 bytes
 test/reference/smask.ps3.ref.png                   | Bin 0 -> 3455 bytes
 test/reference/spline-decomposition.pdf.ref.png    | Bin 19540 -> 19434 bytes
 test/reference/spline-decomposition.ps.ref.png     | Bin 8939 -> 8994 bytes
 test/reference/stroke-clipped.ps.ref.png           | Bin 0 -> 3306 bytes
 test/reference/stroke-ctm-caps.pdf.ref.png         | Bin 0 -> 861 bytes
 test/reference/stroke-image.pdf.ref.png            | Bin 1006 -> 1565 bytes
 test/reference/stroke-image.ps.ref.png             | Bin 1535 -> 1758 bytes
 test/reference/stroke-pattern.pdf.argb32.ref.png   | Bin 0 -> 1512 bytes
 test/reference/stroke-pattern.pdf.rgb24.ref.png    | Bin 0 -> 1512 bytes
 .../surface-pattern-big-scale-down.ps.ref.png      | Bin 235 -> 242 bytes
 ...rface-pattern-scale-down-extend-none.ps.ref.png | Bin 0 -> 335 bytes
 .../surface-pattern-scale-down.pdf.ref.png         | Bin 2189 -> 2192 bytes
 .../surface-pattern-scale-down.ps.ref.png          | Bin 0 -> 984 bytes
 .../surface-pattern-scale-down.ps2.ref.png         | Bin 1324 -> 0 bytes
 .../surface-pattern-scale-down.ps3.ref.png         | Bin 1324 -> 0 bytes
 test/reference/surface-pattern-scale-down.ref.png  | Bin 1326 -> 1839 bytes
 .../reference/surface-pattern-scale-up.pdf.ref.png | Bin 3482 -> 3419 bytes
 test/reference/surface-pattern-scale-up.ps.ref.png | Bin 0 -> 926 bytes
 .../reference/surface-pattern-scale-up.ps2.ref.png | Bin 913 -> 0 bytes
 .../reference/surface-pattern-scale-up.ps3.ref.png | Bin 913 -> 0 bytes
 test/reference/surface-pattern.pdf.ref.png         | Bin 0 -> 11441 bytes
 test/reference/surface-pattern.pdf.xfail.png       | Bin 10532 -> 0 bytes
 ...ern.ps.xfail.png => surface-pattern.ps.ref.png} | Bin
 test/reference/svg-surface-source.ps.rgb24.ref.png | Bin 0 -> 312 bytes
 test/reference/text-glyph-range.pdf.ref.png        | Bin 0 -> 1848 bytes
 test/reference/text-glyph-range.ps.ref.png         | Bin 1253 -> 1237 bytes
 test/reference/text-pattern.pdf.argb32.ref.png     | Bin 1515 -> 3329 bytes
 test/reference/text-pattern.pdf.rgb24.ref.png      | Bin 1339 -> 2738 bytes
 test/reference/text-pattern.ps3.argb32.ref.png     | Bin 881 -> 1760 bytes
 test/reference/text-pattern.ps3.rgb24.ref.png      | Bin 862 -> 2670 bytes
 test/reference/text-rotate.pdf.ref.png             | Bin 16744 -> 16006 bytes
 test/reference/text-rotate.ps.ref.png              | Bin 8765 -> 8668 bytes
 test/reference/text-rotate.ref.png                 | Bin 16356 -> 16360 bytes
 test/reference/text-transform.pdf.argb32.ref.png   | Bin 5507 -> 5574 bytes
 test/reference/text-transform.pdf.rgb24.ref.png    | Bin 5507 -> 5574 bytes
 test/reference/text-transform.ps.ref.png           | Bin 0 -> 1227 bytes
 test/reference/text-transform.ps2.ref.png          | Bin 3943 -> 0 bytes
 test/reference/text-transform.ps3.ref.png          | Bin 3943 -> 0 bytes
 test/reference/tiger.pdf.ref.png                   | Bin 0 -> 20326 bytes
 test/reference/tiger.ps.ref.png                    | Bin 0 -> 69007 bytes
 test/reference/tiger.ref.png                       | Bin 94477 -> 94474 bytes
 test/reference/tighten-bounds.pdf.ref.png          | Bin 0 -> 6466 bytes
 test/reference/tighten-bounds.ps.ref.png           | Bin 0 -> 6466 bytes
 test/reference/transforms.pdf.ref.png              | Bin 0 -> 314 bytes
 test/reference/trap-clip.argb32.ref.png            | Bin 5822 -> 5857 bytes
 test/reference/trap-clip.pdf.argb32.ref.png        | Bin 0 -> 241 bytes
 test/reference/trap-clip.pdf.rgb24.ref.png         | Bin 0 -> 241 bytes
 test/reference/trap-clip.rgb24.ref.png             | Bin 5422 -> 5462 bytes
 test/reference/twin.pdf.argb32.ref.png             | Bin 0 -> 2976 bytes
 test/reference/twin.pdf.rgb24.ref.png              | Bin 0 -> 3442 bytes
 test/reference/twin.ps.ref.png                     | Bin 2136 -> 2103 bytes
 .../unbounded-operator.pdf.argb32.ref.png          | Bin 2713 -> 2646 bytes
 .../reference/unbounded-operator.pdf.rgb24.ref.png | Bin 0 -> 1308 bytes
 test/reference/unbounded-operator.rgb24.ref.png    | Bin 1303 -> 1308 bytes
 test/reference/unclosed-strokes.pdf.ref.png        | Bin 0 -> 1504 bytes
 test/reference/unclosed-strokes.ps.ref.png         | Bin 0 -> 1404 bytes
 test/reference/user-font-proxy.pdf.argb32.ref.png  | Bin 16937 -> 4049 bytes
 test/reference/user-font-proxy.pdf.ref.png         | Bin 18111 -> 0 bytes
 test/reference/user-font-proxy.ps.ref.png          | Bin 7837 -> 7828 bytes
 test/reference/user-font-rescale.pdf.rgb24.ref.png | Bin 0 -> 14592 bytes
 test/reference/user-font-rescale.ps.ref.png        | Bin 6781 -> 7309 bytes
 test/reference/user-font.pdf.ref.png               | Bin 6241 -> 2626 bytes
 test/reference/user-font.ps.ref.png                | Bin 4605 -> 4464 bytes
 test/reference/world-map-fill.pdf.argb32.ref.png   | Bin 0 -> 57390 bytes
 test/reference/world-map-fill.pdf.rgb24.ref.png    | Bin 0 -> 57390 bytes
 test/reference/world-map-fill.ps.argb32.ref.png    | Bin 0 -> 42057 bytes
 test/reference/world-map-fill.ps.rgb24.ref.png     | Bin 0 -> 42057 bytes
 test/reference/world-map-stroke.pdf.argb32.ref.png | Bin 0 -> 51127 bytes
 test/reference/world-map-stroke.pdf.rgb24.ref.png  | Bin 0 -> 51127 bytes
 test/reference/world-map-stroke.ps.argb32.ref.png  | Bin 0 -> 54440 bytes
 test/reference/world-map-stroke.ps.rgb24.ref.png   | Bin 0 -> 54440 bytes
 test/reference/world-map.pdf.argb32.ref.png        | Bin 0 -> 61486 bytes
 test/reference/world-map.pdf.rgb24.ref.png         | Bin 0 -> 61486 bytes
 test/reference/world-map.ps.argb32.ref.png         | Bin 0 -> 71083 bytes
 test/reference/world-map.ps.rgb24.ref.png          | Bin 0 -> 71083 bytes
 test/reference/zero-mask.ref.png                   | Bin 402 -> 0 bytes
 522 files changed, 5 insertions(+), 5 deletions(-)

commit 1c5ec6e3806587eff1fbb640c63838ef2768c2cb
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Jun 4 14:43:43 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Jun 5 20:43:36 2016 +0930

    Fix PS record-neg-extents test failure

 src/cairo-analysis-surface.c   | 111 +++++----
 src/cairo-debug.c              |   8 +
 src/cairo-pdf-surface.c        |  40 +--
 src/cairo-ps-surface-private.h |   5 +-
 src/cairo-ps-surface.c         | 538 +++++++++++++++++++++++------------------
 src/cairo-recording-surface.c  |   5 +-
 src/cairoint.h                 |   3 +
 7 files changed, 409 insertions(+), 301 deletions(-)

commit a14d319e4385033d726861dcd448154d393ffc53
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Jun 4 14:43:43 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Jun 5 20:43:36 2016 +0930

    ps: change from ps coordinates to cairo coordinates

 src/cairo-ps-surface.c | 34 +++++++++++++++++++++-------------
 1 file changed, 21 insertions(+), 13 deletions(-)

commit 14fa88fd02d81cdab52c882b98a1130148b72820
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Jun 4 14:43:43 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Jun 5 20:43:36 2016 +0930

    pdf: fix record-replay-extend test failures

 src/cairo-analysis-surface.c                       |   7 +-
 src/cairo-paginated-surface.c                      |   2 +-
 src/cairo-pdf-surface-private.h                    |   1 +
 src/cairo-pdf-surface.c                            |  91 +++++++++++++--------
 src/cairo-recording-surface-private.h              |   3 +-
 src/cairo-recording-surface.c                      |  19 ++---
 src/cairo-surface-wrapper-private.h                |   1 +
 src/cairo-surface-wrapper.c                        |   7 +-
 .../record-neg-extents-bounded.pdf.rgb24.ref.png   | Bin 520 -> 477 bytes
 .../record-neg-extents-unbounded.pdf.rgb24.ref.png | Bin 520 -> 477 bytes
 .../record-replay-extend-none.pdf.argb32.ref.png   | Bin 0 -> 737 bytes
 .../record-replay-extend-none.pdf.rgb24.ref.png    | Bin 0 -> 472 bytes
 .../record-replay-extend-pad.pdf.argb32.ref.png    | Bin 0 -> 1111 bytes
 ...record-replay-extend-reflect.pdf.argb32.ref.png | Bin 0 -> 8821 bytes
 .../record-replay-extend-reflect.pdf.rgb24.ref.png | Bin 0 -> 7783 bytes
 .../record-replay-extend-repeat.pdf.argb32.ref.png | Bin 0 -> 8785 bytes
 .../record-replay-extend-repeat.pdf.rgb24.ref.png  | Bin 0 -> 7620 bytes
 17 files changed, 81 insertions(+), 50 deletions(-)

commit e7b1cb0c53fe0dc9af4cae280c34d98a1165bcf1
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Jun 4 14:43:43 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Jun 5 20:43:36 2016 +0930

    image: fix record-replay-extend test failures

 src/cairo-image-source.c                           |  67 +++++++++++++--------
 src/cairo-pattern.c                                |   2 +
 test/reference/record-replay-extend-pad.ref.png    | Bin 0 -> 1150 bytes
 .../reference/record-replay-extend-reflect.ref.png | Bin 0 -> 1960 bytes
 test/reference/record-replay-extend-repeat.ref.png | Bin 0 -> 1885 bytes
 5 files changed, 45 insertions(+), 24 deletions(-)

commit 8e4d4de2a3ceb67188c93f8fbf22ed79be927753
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Jun 4 14:43:43 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Jun 5 20:43:36 2016 +0930

    test: replay record surface with negative extents for each extend mode
    
    image fails for repeat, reflect, and pad.

 test/Makefile.sources                            |   1 +
 test/record-replay-extend.c                      | 227 +++++++++++++++++++++++
 test/reference/record-replay-extend-none.ref.png | Bin 0 -> 554 bytes
 3 files changed, 228 insertions(+)

commit a736fd8699e0ebcdd98392acb8383ea414688caf
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Jun 4 14:43:43 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Jun 5 20:43:36 2016 +0930

    Fix PDF record-neg-extents test failure
    
    Modify PDF surface to allow surface extents to have negative x, y.
    When emitting recording surfaces, set the surface extents to the
    recording extents.

 src/cairo-analysis-surface.c                       |  16 +
 src/cairo-debug.c                                  |  11 +-
 src/cairo-pattern.c                                |  31 +-
 src/cairo-pdf-surface-private.h                    |  10 +-
 src/cairo-pdf-surface.c                            | 417 +++++++++++----------
 src/cairoint.h                                     |   5 +-
 .../record-neg-extents-bounded.pdf.argb32.ref.png  | Bin 0 -> 520 bytes
 .../record-neg-extents-bounded.pdf.rgb24.ref.png   | Bin 0 -> 520 bytes
 ...record-neg-extents-unbounded.pdf.argb32.ref.png | Bin 0 -> 520 bytes
 .../record-neg-extents-unbounded.pdf.rgb24.ref.png | Bin 0 -> 520 bytes
 10 files changed, 284 insertions(+), 206 deletions(-)

commit 1e07ced66d26475e6631df9ffa2a15709104bd8f
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Jun 4 14:43:43 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Jun 5 20:43:36 2016 +0930

    pdf: change from pdf coordinates to cairo coordinates
    
    When an unbounded recording surface is used multiple times with
    different extents for each operation we need the XObject containing
    the recording surface to have the same origin for each operation. This
    is not possible when the recording surface is converted to PDF
    coordinates because each operation has different extents resulting in
    a different origin when the Y-axis is flipped (since the flip matrix
    depends on the recording surface height which for unbounded surfaces
    depends on the extents of the operation that paints the recording
    surface).
    
    Switching to cairo coordinates by emitting a Y-axis flip matrix as the
    first object of each page allows the recording surface to be emitted
    in cairo coordinates. This results in the same origin for all
    operations using the recording surface XObject.

 src/cairo-pdf-operators.c       |  3 --
 src/cairo-pdf-surface-private.h | 12 +++++++
 src/cairo-pdf-surface.c         | 78 ++++++++++++++++++++++++++++++++---------
 src/cairo-type3-glyph-surface.c | 23 ++++--------
 4 files changed, 81 insertions(+), 35 deletions(-)

commit d2dc2e90a71ae4822845ac4bab3871475335a69e
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Jun 4 14:43:43 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Jun 5 20:43:36 2016 +0930

    Fix test failures when recording surface extents has negative x,y
    
    Fixes record-neg-bounded-extents (image only) and
    recording-ink-extents.

 src/cairo-surface-wrapper.c                       |   6 ------
 test/reference/record-neg-extents-bounded.ref.png | Bin 0 -> 632 bytes
 2 files changed, 6 deletions(-)

commit 58df191946b7d275c5706dc40e1cf3dffa7cceae
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Jun 4 14:43:43 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Jun 5 20:43:36 2016 +0930

    Add recording-ink-extents test
    
    bounded_fill fails returning extents origin of (0, 0) instead of (-150, -100)

 test/Makefile.sources        |   1 +
 test/recording-ink-extents.c | 172 +++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 173 insertions(+)

commit 9fff6f0be3ed1a7af474ddfd8e384eb0376093c2
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Jun 4 14:43:43 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Jun 5 20:43:36 2016 +0930

    test: add record-neg-extents
    
    Test case for bug 89232 - painting a recording surface to a
    pdf/ps surface omits objects on the recording surface with negative
    coordinates even though the pattern matrix has transformed the objects
    to within the page extents.
    
    The image surface also fails when the recording surface is bounded.

 test/Makefile.sources                              |   1 +
 test/record-neg-extents.c                          | 217 +++++++++++++++++++++
 .../reference/record-neg-extents-unbounded.ref.png | Bin 0 -> 668 bytes
 3 files changed, 218 insertions(+)

commit 00a36e46524790deb36048fddd911daa1cbcbe38
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Apr 16 18:05:41 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Apr 16 18:05:41 2016 +0930

    svg2png: fix deprecated warning
    
    rsvg_pixbuf_from_file() is deprecated, replaced by
    rsvg_handle_new_from_file() + rsvg_handle_render_cairo().

 test/svg2png.c | 39 +++++++++++++++++++++++++++++++++------
 1 file changed, 33 insertions(+), 6 deletions(-)

commit 11667ec47c69e3aa7b7128ddb39375f3ae4a0814
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Apr 16 17:42:56 2016 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Apr 16 17:42:56 2016 +0930

    pdf2png: fix deprecated warning

 test/pdf2png.c | 2 ++
 1 file changed, 2 insertions(+)

commit d2f1ebf579ba12b816eec9317f98eb845fbfeb4f
Author:     Guillaume Ayoub <guillaume.ayoub@kozea.fr>
AuthorDate: Thu Jan 14 02:05:53 2016 +0100
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Tue Apr 12 06:58:28 2016 +0930

    Use surface_transform in replay_and_create_regions
    
    The surface_transform was already used surface_replay_with_clip, as the
    matrix is obviously needed for the clip. But now, because of the
    optimization done in commit 09b42c7, it's also needed by
    replay_and_create_regions: get_target_extents clips the target surface
    for performance issues, and therefore needs the surface_transform matrix
    to get the right clipping surface.
    
    Signed-off-by: Guillaume Ayoub <guillaume.ayoub@kozea.fr>

 src/cairo-analysis-surface.c          | 6 ++++--
 src/cairo-paginated-surface.c         | 2 +-
 src/cairo-recording-surface-private.h | 1 +
 src/cairo-recording-surface.c         | 3 ++-
 4 files changed, 8 insertions(+), 4 deletions(-)

commit 747cab741cf63f30aa6bc2b787fc13e7e7a2b859
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Mar 26 22:18:05 2016 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Mar 26 22:18:05 2016 +1030

    Add CAIRO_STATUS_WIN32_GDI_ERROR for GDI errors

 src/cairo-device.c                       | 1 +
 src/cairo-error-private.h                | 1 +
 src/cairo-misc.c                         | 2 ++
 src/cairo-region.c                       | 1 +
 src/cairo-spans.c                        | 2 ++
 src/cairo-surface.c                      | 1 +
 src/cairo.c                              | 3 ++-
 src/cairo.h                              | 2 ++
 src/win32/cairo-win32-surface.c          | 6 +-----
 util/cairo-gobject/cairo-gobject-enums.c | 1 +
 util/cairo-script/cairo-script-private.h | 2 +-
 util/cairo-trace/trace.c                 | 1 +
 12 files changed, 16 insertions(+), 7 deletions(-)

commit cdd5c92cedb9abcedd6f261594b1ea7d94d4a4ad
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Mar 26 21:45:33 2016 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Mar 26 21:45:59 2016 +1030

    Add CAIRO_STATUS_FREETYPE_ERROR for errors returned by libfreetype

 src/cairo-device.c                       | 1 +
 src/cairo-error-private.h                | 1 +
 src/cairo-ft-font.c                      | 5 ++++-
 src/cairo-misc.c                         | 2 ++
 src/cairo-region.c                       | 1 +
 src/cairo-spans.c                        | 2 ++
 src/cairo-surface.c                      | 1 +
 src/cairo.c                              | 3 ++-
 src/cairo.h                              | 2 ++
 util/cairo-gobject/cairo-gobject-enums.c | 1 +
 util/cairo-script/cairo-script-private.h | 2 ++
 util/cairo-trace/trace.c                 | 1 +
 12 files changed, 20 insertions(+), 2 deletions(-)

commit 8f6790123e05c5c38ba09c541093b747aa12b681
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Mar 26 19:05:01 2016 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Mar 26 19:06:03 2016 +1030

    Adding missing error status to utils

 util/cairo-gobject/cairo-gobject-enums.c | 5 ++++-
 util/cairo-script/cairo-script-private.h | 8 ++++++++
 util/cairo-trace/trace.c                 | 1 +
 3 files changed, 13 insertions(+), 1 deletion(-)

commit c5ee3f11b5fb5a652466bbe407d2dc8e0ef4eb71
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Mar 26 07:24:26 2016 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Mar 26 19:04:44 2016 +1030

    Add CAIRO_STATUS_PNG_ERROR for errors returned by libpng

 src/cairo-device.c        |  1 +
 src/cairo-error-private.h |  1 +
 src/cairo-misc.c          |  2 ++
 src/cairo-png.c           | 10 +++++++---
 src/cairo-region.c        |  1 +
 src/cairo-spans.c         |  2 ++
 src/cairo-surface.c       |  1 +
 src/cairo.c               |  3 ++-
 src/cairo.h               |  2 ++
 9 files changed, 19 insertions(+), 4 deletions(-)

commit 72c9a022ac2f1b9c9afa349e0977dcd89fa56f2d
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sun Feb 21 09:07:40 2016 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Mar 10 19:00:48 2016 +1030

    scaled-font: don't store pointer in hash value

 src/cairo-scaled-font.c | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

commit 3538ac3e68f997d95d76865247717c90ae73630d
Author:     Wan-Teh Chang <wtc@google.com>
AuthorDate: Tue Mar 1 17:48:55 2016 -0800
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Sat Mar 5 14:35:17 2016 +0100

    Fix data race in freed_pool
    
    This adds _cairo_atomic_int_get_relaxed and _cairo_atomic_int_set_relaxed which
    are meant to have a behaviour of relaxed read/writes in C11's memory model. This
    patch also uses these new function to fix a data race with freed_pool_t's |top|
    data member.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=90318
    Signed-off-by: Wan-Teh Chang <wtc@google.com>
    Signed-off-by: Uli Schlachter <psychon@znc.in>

 src/cairo-atomic-private.h     | 36 ++++++++++++++++++++++++++++++++++++
 src/cairo-atomic.c             | 14 ++++++++++++++
 src/cairo-freed-pool-private.h | 10 +++++-----
 src/cairo-freed-pool.c         | 10 +++++-----
 4 files changed, 60 insertions(+), 10 deletions(-)

commit af42fc724e794aeb3b26eb0e8df453a5abd5c640
Author:     Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
AuthorDate: Tue Dec 29 10:16:54 2015 +0100
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Jan 15 12:29:06 2016 -0800

    drm: fix importing of libdrm
    
    We need to link against libdrm to use its functions.
    
    Signed-off-by: Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 968f8c70aac8cde9bc622644dcab9a6548734d59
Author:     Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
AuthorDate: Tue Dec 29 10:16:45 2015 +0100
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Jan 13 17:14:51 2016 -0800

    core: some in-code documentation
    
    Signed-off-by: Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>

 src/cairo-boxes.c | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

commit 047ba66519b18b7fe0167108307d741cdc816935
Author:     Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
AuthorDate: Tue Dec 29 10:16:48 2015 +0100
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Jan 13 17:09:28 2016 -0800

    core: dropped unnecessary local variable in _cairo_composite_rectangles_intersect()
    
    Signed-off-by: Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-composite-rectangles.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

commit b371b0157f8067b93c95cb535922705af5c0cd25
Author:     Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
AuthorDate: Tue Dec 29 10:16:40 2015 +0100
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Jan 13 17:07:53 2016 -0800

    core: reintroduce bot-scan-converter functions
    
    These functions have been accidentially removed by commit:
    494cfd7eb9d994a5e2024e299986e66a3ef9a562.
    
    They're still needed by the DRM backend.
    (will be used by subsequent patches)
    
    Signed-off-by: Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>
    Cc: Uli Schlachter <psychon@znc.in>

 src/cairo-botor-scan-converter.c | 36 ++++++++++++++++++++++++++++++++++++
 src/cairo-spans-private.h        |  4 ++++
 2 files changed, 40 insertions(+)

commit adb896e8c5f4e1fb22db32c8bfb5f0a9625c4869
Author:     Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>
AuthorDate: Fri Dec 18 14:28:45 2015 +0100
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Dec 22 14:22:36 2015 -0800

    core: updated .gitignore
    
    Signed-off-by: Enrico Weigelt, metux IT consult <enrico.weigelt@gr13.net>

 .gitignore | 4 ++++
 1 file changed, 4 insertions(+)

commit ad6271ccbcfdfbccf53451323d278435ffc5cdce
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Dec 22 13:23:55 2015 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Dec 22 13:23:55 2015 -0800

    RELEASING: Fix documentation of proper ChangeLog path
    
    The releases page includes more than just cairo, so need to be explicit
    in naming our uploaded Changelog file.

 RELEASING | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit db8a7f1697c49ae4942d2aa49eed52dd73dd9c7a
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Fri Dec 11 00:45:02 2015 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Dec 11 00:45:02 2015 -0800

    1.15.2 release

 NEWS            | 95 +++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 cairo-version.h |  2 +-
 2 files changed, 94 insertions(+), 3 deletions(-)

commit 6cd5a188e3db142089020e3c50ef280195655fec
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Thu Dec 10 21:00:29 2015 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Dec 10 21:05:25 2015 -0800

    RELEASING: Clarify snapshot numbering rules

 RELEASING | 27 +++++++++++++++------------
 1 file changed, 15 insertions(+), 12 deletions(-)

commit 2dc0149ddea214c925f4a38abc65169242e72432
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Wed Dec 9 16:25:20 2015 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Dec 9 16:25:20 2015 -0800

    RELEASING: Drop inclusion of boilerplate in news messages
    
    Looking back at past release announcements, it's been a long time since
    we included the About Cairo bits.  This info is easily located on the
    website and elsewhere, no need for the redundant data in the
    announcement too.

 RELEASING | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

commit 4ab379c744b2c0d5256692307770846eccd41dce
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Wed Dec 9 14:45:55 2015 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Dec 9 14:45:55 2015 -0800

    RELEASING: Make X.Y.Z versions less ambiguous
    
    The document uses X.Y.Z to sometimes mean the previous release version,
    and in other places to mean the upcoming next release version.  Identify
    these more explicitly.

 RELEASING | 71 ++++++++++++++++++++++++++++++++++++++++++++-------------------
 1 file changed, 50 insertions(+), 21 deletions(-)

commit c7822e6107a207057ac4a6a4c2f2265c31c1a2b9
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Wed Dec 9 14:44:26 2015 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Dec 9 14:44:26 2015 -0800

    RELEASING: Fix misspelling in last commit

 RELEASING | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 817ae4540af5b004b3b69975388cdcf8cdac577d
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Wed Dec 9 12:32:20 2015 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Dec 9 12:32:20 2015 -0800

    RELEASING: Whitespace cleanup.  Fix inconsistent tabbing.

 RELEASING | 64 +++++++++++++++++++++++++++++++++------------------------------
 1 file changed, 34 insertions(+), 30 deletions(-)

commit 0986ae4dee2a903dc16bba289477a38dff36a87b
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Wed Dec 9 11:30:34 2015 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Dec 9 11:30:34 2015 -0800

    test: Fix use after frees
    
    Fixes:  https://bugs.freedesktop.org/show_bug.cgi?id=93152

 test/pdf-mime-data.c | 2 +-
 test/png.c           | 3 ++-
 2 files changed, 3 insertions(+), 2 deletions(-)

commit ad99e1b9d80a9dc8d185f38347d64e1db762523c
Author:     Patrick Fritzsch <Patrick.Fritzsch@cib.de>
AuthorDate: Fri Nov 13 21:16:22 2015 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Fri Nov 13 21:27:34 2015 +1030

    win32: check if GetTextMetrics failed
    
    http://lists.cairographics.org/archives/cairo/2015-November/026544.html

 src/win32/cairo-win32-font.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

commit 98d01cd119eaa7d50cf0ec6c6cc32ee170397ad5
Author:     Marc-André Lureau <marcandre.lureau@gmail.com>
AuthorDate: Fri Nov 6 18:13:05 2015 +0100
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Fri Nov 6 21:00:48 2015 +0100

    xlib: fix mixing xcb & xlib calls
    
    NextRequest is a macro that doesn't mix well with xcb, since
    dpy->request is not updated. Instead use XNextRequest() that was fixed
    to do the right thing with xcb in libX11 commit:
    http://cgit.freedesktop.org/xorg/lib/libX11/commit/?id=7f8f9a36ef901f31279c385caf960a22daeb33fe
    
    This may solve application X errors when a shmdt() is called by cairo
    before the Attach request is processed.
    
    Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
    Signed-off-by: Uli Schlachter <psychon@znc.in>

 src/cairo-xlib-surface-shm.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit bf41cc397f460978eaf0aa35bc7341cefc9817b5
Author:     Uli Schlachter <psychon@znc.in>
AuthorDate: Fri Nov 6 20:50:47 2015 +0100
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Fri Nov 6 20:50:47 2015 +0100

    Fix cairo-xlib-xcb compilation
    
    This is broken since:
    
    commit b1192beac7c5b56a8ff356d20af5ebfb65404109
    Author: Adrian Johnson <ajohnson@redneon.com>
    Date:   Mon Sep 21 21:35:05 2015 +0930
    
        Don't cull very thin lines on vector surfaces
    
        On vector surfaces, use a minimum line width when calculating extents.
    
        Bug 77298
    
    Signed-off-by: Uli Schlachter <psychon@znc.in>

 src/cairo-xlib-xcb-surface.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit fc689d7d351cca1f1b11cef9137fa2c6eec0ee25
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Thu Oct 29 18:21:34 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Oct 29 18:21:34 2015 -0700

    RELEASING: Doc handling devel versions for micro vs minor releases

 RELEASING | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

commit bc4271a1392e5462c875a051c8720d8dd461d4fe
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Thu Oct 29 18:17:39 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Oct 29 18:17:39 2015 -0700

    Bump version for new development tree, 1.15.1

 cairo-version.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit e03ab054c129307596b9ec090a0e32a64b0cda71
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Thu Oct 29 11:57:32 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Oct 29 11:57:32 2015 -0700

    RELEASING: Doc what's required to properly undo a publish

 RELEASING | 6 ++++++
 1 file changed, 6 insertions(+)

commit 62ceb0abd970dd23dd03d2a279f62a1e2c63aa2d
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Wed Oct 28 22:15:54 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Oct 28 22:23:53 2015 -0700

    RELEASING: Note how to upload the changelog

 RELEASING | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 247ef2bd63e755963f7930ac06c79b95aed2adb4
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Oct 27 14:27:20 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Oct 28 22:22:31 2015 -0700

    NEWS: Update for 1.14.4 release

 NEWS | 58 +++++++++++++++++-----------------------------------------
 1 file changed, 17 insertions(+), 41 deletions(-)

commit 3fd993a2b16ab75fa8d7afbd1da577c89f020463
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Oct 27 13:53:55 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Oct 27 13:53:55 2015 -0700

    WIP news and release

 NEWS      | 16 ++++++++++++----
 RELEASING | 13 ++++++++-----
 2 files changed, 20 insertions(+), 9 deletions(-)

commit d7371acfe5f54bc14c25c725448fb6401c526f6a
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Oct 27 11:53:14 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Oct 27 11:53:14 2015 -0700

    1.14.4 release

 cairo-version.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 04a40d2ff34a9443bb2f71b57a523878fa9f4d11
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Oct 27 11:10:23 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Oct 27 11:10:23 2015 -0700

    NEWS: Update to cover changes to date

 NEWS | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 60 insertions(+)

commit 481e5986f982238c5603ae3b2feea74aaa964adb
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 17 22:46:23 2015 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 17 22:46:23 2015 +1030

    Compile fix

 src/cairo-gl-msaa-compositor.c | 1 +
 1 file changed, 1 insertion(+)

commit 2d026bd2cf4d8cb1973f56b30a7ba8609e3ebb5f
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 17 22:39:09 2015 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 17 22:42:37 2015 +1030

    win32-print: support subsurface recording patterns

 src/win32/cairo-win32-display-surface.c  |  6 ++++--
 src/win32/cairo-win32-printing-surface.c | 36 +++++++++++++++++++++++++-------
 2 files changed, 32 insertions(+), 10 deletions(-)

commit b7d864e8c18e4407e69ff897cae7a42eb09b03c9
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 17 22:38:50 2015 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 17 22:38:50 2015 +1030

    Compile fix

 src/cairo-gl-source.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit aa1323f04cd2c71317e9173fbe26fe7d0ba34908
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 17 22:02:11 2015 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 17 22:02:11 2015 +1030

    Fix some surfaces missed in b1192bea

 src/cairo-cogl-surface.c           | 3 ++-
 src/cairo-directfb-surface.c       | 3 ++-
 src/cairo-gl-surface.c             | 3 ++-
 src/cairo-os2-surface.c            | 3 ++-
 src/cairo-quartz-image-surface.c   | 3 ++-
 src/cairo-quartz-surface.c         | 3 ++-
 src/cairo-tee-surface.c            | 3 ++-
 src/cairo-vg-surface.c             | 3 ++-
 src/cairo-xml-surface.c            | 3 ++-
 src/test-compositor-surface.c      | 3 ++-
 src/test-null-compositor-surface.c | 3 ++-
 src/test-paginated-surface.c       | 3 ++-
 12 files changed, 24 insertions(+), 12 deletions(-)

commit 30eb1b0e9778a96c2eb984f243dec5e3c8859e05
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Mon Sep 21 21:35:05 2015 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 17 18:39:19 2015 +1030

    Add test case for thin lines
    
    Bug 77298

 test/Makefile.sources                       |   1 +
 test/reference/thin-lines.pdf.ref.png       | Bin 0 -> 371 bytes
 test/reference/thin-lines.ps.argb32.ref.png | Bin 0 -> 332 bytes
 test/reference/thin-lines.ps.rgb24.ref.png  | Bin 0 -> 264 bytes
 test/reference/thin-lines.ref.png           | Bin 0 -> 122 bytes
 test/thin-lines.c                           |  95 ++++++++++++++++++++++++++++
 6 files changed, 96 insertions(+)

commit b1192beac7c5b56a8ff356d20af5ebfb65404109
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Mon Sep 21 21:35:05 2015 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 17 18:39:18 2015 +1030

    Don't cull very thin lines on vector surfaces
    
    On vector surfaces, use a minimum line width when calculating extents.
    
    Bug 77298

 src/cairo-analysis-surface.c             |  8 +++++---
 src/cairo-composite-rectangles.c         |  2 +-
 src/cairo-gstate.c                       |  1 +
 src/cairo-image-source.c                 |  5 +++--
 src/cairo-image-surface.c                |  3 ++-
 src/cairo-paginated-surface.c            |  3 ++-
 src/cairo-path-bounds.c                  | 23 +++++++++++++++++++++++
 src/cairo-pdf-surface.c                  |  3 ++-
 src/cairo-ps-surface.c                   |  3 ++-
 src/cairo-recording-surface.c            |  8 +++++---
 src/cairo-script-surface.c               |  6 ++++--
 src/cairo-surface-observer.c             |  3 ++-
 src/cairo-surface-private.h              |  1 +
 src/cairo-surface-snapshot.c             |  3 ++-
 src/cairo-surface-subsurface.c           |  6 ++++--
 src/cairo-surface.c                      |  7 +++++--
 src/cairo-svg-surface.c                  |  3 ++-
 src/cairo-type3-glyph-surface.c          |  3 ++-
 src/cairo-xcb-surface-core.c             |  6 ++++--
 src/cairo-xcb-surface-render.c           |  3 ++-
 src/cairo-xcb-surface.c                  |  3 ++-
 src/cairo-xlib-source.c                  |  9 ++++++---
 src/cairo-xlib-surface-shm.c             |  3 ++-
 src/cairo-xlib-surface.c                 |  3 ++-
 src/cairoint.h                           |  4 +++-
 src/win32/cairo-win32-printing-surface.c |  3 ++-
 26 files changed, 91 insertions(+), 34 deletions(-)

commit 6656cafebfdac3365e8f903eb408043507a5e551
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 17 18:33:01 2015 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 17 18:33:36 2015 +1030

    win32-print: support raster_source patterns

 src/win32/cairo-win32-printing-surface.c | 463 ++++++++++++++++++++++++-------
 1 file changed, 355 insertions(+), 108 deletions(-)

commit 9fcb42f7fe530da40d96dbc56ea7a8423fa3505a
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 17 18:32:59 2015 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 17 18:32:59 2015 +1030

    win32-print: fix warnings

 src/win32/cairo-win32-printing-surface.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit 2c45fdfc15a81eae6196f92c9768f3d895bd0819
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 17 18:32:57 2015 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 17 18:32:57 2015 +1030

    win32-print: Fix the page extents
    
    As the page size can be changed between pages, set the extents in
    _start_page. The extents are invalidated in _show_page since the
    page size on the DC may be changed after this call. The only thing that
    uses the extents between _show_page and _start_page (and before the first
    _start_page) is the creation of the recording surface in the paginated
    surface. In this case, when the paginated surface can't get the extents,
    it will create an unbounded recording surface.
    
    The extents x,y is always set to 0 to prevent the replay from translating
    the page.

 src/win32/cairo-win32-printing-surface.c | 48 ++++++++++++++++++++++++++------
 src/win32/cairo-win32-private.h          |  1 +
 2 files changed, 41 insertions(+), 8 deletions(-)

commit 094f0e0fa0153f290061635eed51e8d1dbe2cf4a
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 17 16:50:50 2015 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 17 18:16:33 2015 +1030

    pdf: fix subsurface recordings

 src/cairo-pdf-surface.c | 33 +++++++++++++++++++++------------
 1 file changed, 21 insertions(+), 12 deletions(-)

commit 2215b4e0c0f90a90f659aa0cfc28fc02dfce3339
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 17 16:25:16 2015 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 17 18:16:32 2015 +1030

    ps: fix subsurface recordings

 src/cairo-ps-surface.c      | 35 +++++++++++++++++------------------
 src/cairo-surface-wrapper.c |  6 +++---
 2 files changed, 20 insertions(+), 21 deletions(-)

commit 6952e03262717751716f48114e6a921b62a0ecee
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sat Oct 17 13:15:56 2015 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sat Oct 17 18:16:22 2015 +1030

    ps: fix raster source patterns

 src/cairo-ps-surface.c                  |   1 +
 test/reference/raster-source.ps.ref.png | Bin 1894 -> 1908 bytes
 2 files changed, 1 insertion(+)

commit e294ca19f2777fa2abbd59eb7aa375f801c92eb6
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Wed Oct 14 18:13:22 2015 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Wed Oct 14 18:13:42 2015 -0700

    NEWS: Whitespace cleanup

 NEWS | 63 ++++++++++++++++++++++++++++++++-------------------------------
 1 file changed, 32 insertions(+), 31 deletions(-)

commit 7cc77d1ceea850d5728f4fad59ec18984dbc9ccb
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Wed Oct 14 18:10:22 2015 -0700
Commit:     Bryce Harrington <bryce@bryceharrington.org>
CommitDate: Wed Oct 14 18:13:42 2015 -0700

    build: Use memory barriers for ARM
    
    ARM has much weaker memory ordering guarantees than x86 by default, and
    needs the memory barriers.  A similar fix exists in the Skia codebase.
    Fix suggested by Nathan Froyd.
    
    Fixes: FDO #90302
    
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
    Acked-by: "Henry (Yu) Song" <henry.song@samsung.com>

 build/aclocal.cairo.m4 | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 25a55822b4e22728834c96c8e73176d42bb406e3
Author:     Uli Schlachter <psychon@znc.in>
AuthorDate: Wed Oct 14 14:24:16 2015 +0200
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Wed Oct 14 14:26:47 2015 +0200

    xcb: Fix _put_image_boxes() if no SHM is available
    
    This function tries to use _cairo_xcb_connection_put_image() to do the actual
    work. However, that function can only be used for images with "native" stride.
    If we only want to upload a rectangle from within an image, the function
    _cairo_xcb_connection_put_subimage() has to be used. This function makes sure
    that the correct information is sent to the X11 server.
    
    No unit test for this, because we currently do not test the !SHM case
    automatically. Perhaps we should?
    
    Signed-off-by: Uli Schlachter <psychon@znc.in>

 src/cairo-xcb-surface.c | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

commit d31dc73f9ba1facdbeee722c022d438f15e5f264
Author:     Uli Schlachter <psychon@znc.in>
AuthorDate: Wed Oct 14 14:22:50 2015 +0200
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Wed Oct 14 14:26:32 2015 +0200

    xcb: Fix _put_shm_image_boxes if no SHM available
    
    This function always returned CAIRO_INT_STATUS_SUCCESS, even if it didn't do
    anything. This commit makes the function return CAIRO_INT_STATUS_UNSUPPORTED
    instead.
    
    No unit test for this, because we currently do not test the !SHM case
    automatically. Perhaps we should?
    
    Signed-off-by: Uli Schlachter <psychon@znc.in>

 src/cairo-xcb-surface.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 0537479bd1d4c5a3bc0f6f41dec4deb98481f34a
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Mon Oct 5 16:10:02 2015 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Mon Oct 5 16:10:02 2015 +1030

    ps: merge emit_recording surface and emit_recording_subsurface into one function
    
    Most of each function was identical.

 src/cairo-ps-surface.c | 130 ++++++++++++-------------------------------------
 1 file changed, 31 insertions(+), 99 deletions(-)

commit e5d4f520aaa0107f82ad7683e4f9763d6edcc23b
Author:     Rodrigo Rivas Costa <rodrigorivascosta@gmail.com>
AuthorDate: Wed Sep 30 23:53:23 2015 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Wed Sep 30 23:53:23 2015 +0930

    win32-print: fix transparent images have black background
    
    Bug 91835

 src/win32/cairo-win32-printing-surface.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 495362279b42620071c6b46f69918ce324aee0db
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sun Sep 27 08:27:53 2015 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Sep 27 09:34:37 2015 +0930

    scaled-font-subsets: if glyph 0 used for rendering, remap to different index
    
    Some broken pdfs use glyph 0 in embedded fonts for rendering instead of .notdef.
    The cmap we use for embedding latin fonts does not allow rendering glyph 0. Ensure
    if glyph 0 is used, it is mapped to a non 0 glyph in the subset.
    
    Bug 89082

 src/cairo-scaled-font-subsets-private.h |   5 ++
 src/cairo-scaled-font-subsets.c         | 115 +++++++++++++++++++++++++++-----
 2 files changed, 103 insertions(+), 17 deletions(-)

commit 6f7a9b4f0375cdadf08486e4b877ee2afc176b39
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Fri Aug 28 13:23:45 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Sep 10 11:18:08 2015 -0700

    Ensure null-terminated result from strncpy()

 src/cairo-scaled-font-subsets.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

commit b353d1f1b167615f8ba718b3843926860e94be77
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Mon Sep 7 22:20:08 2015 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Mon Sep 7 22:20:08 2015 +0930

    cff: opentype fonts always use gid to lookup glyph
    
    Bug 91902

 src/cairo-cff-subset.c | 16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)

commit f6c46d9473e40d4a3363c96e1fc7fffc81ed12e7
Author:     Sahil Vij <sahil.vij@samsung.com>
AuthorDate: Fri Aug 7 18:01:18 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Aug 7 18:02:07 2015 -0700

    gl: Fix bug in _cairo_gl_pattern_texture_setup()
    
    The memory allocated to "image" at line 298 is not freed before moving to label fail at line 305 and 314.
    This patch takes care of this memory leak in above mentioned cases.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=91537
    Signed-off-by: Sahil Vij <sahil.vij@samsung.com>
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-gl-operand.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit e40806ecdf81e46aa805a9298b603233656cc931
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Fri Jul 31 19:00:48 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Jul 31 19:00:48 2015 -0700

    test: Add script to display the difference between two result sets

 test/compare-results | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 57 insertions(+)

commit 60c2f69535d3879a10046a8108486a7dc47de6fc
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Fri Jul 31 18:59:34 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Jul 31 18:59:34 2015 -0700

    test: Add script to summarize the test results from a run

 test/summarize-test-results.sh | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

commit e0963f6c8ec1be9f68b851ee998d0cef3e647028
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Fri Jul 31 17:55:54 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Jul 31 17:56:54 2015 -0700

    gitignore:  Ignore .trs (test results)

 boilerplate/.gitignore | 1 +
 doc/public/.gitignore  | 1 +
 src/.gitignore         | 1 +
 test/.gitignore        | 1 +
 4 files changed, 4 insertions(+)

commit 79467f0982cac793b2b724850628fc90a8bb6072
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Fri Jul 31 17:52:30 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Jul 31 17:56:54 2015 -0700

    NEWS: Begin filling out news entry for upcoming 1.14.4.
    
    This covers commits up to noon on Jun 18, 2015.

 NEWS | 44 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)

commit 1fca50ea737307cd5e6ed153dafb8573752cc6e5
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Fri Jul 31 14:19:01 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Jul 31 17:56:54 2015 -0700

    NEWS: Fix date on release

 NEWS | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 2de9fca5f379b57b25d4963d51ab5f082a326b98
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Thu Jul 30 17:16:53 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Jul 30 17:16:53 2015 -0700

    boilerplate: Fix list termination for glXChooseVisual
    
    The attribute list is terminated by GLX_NONE (defined as 0x8000), but
    the man page of 'glXChooseVisual' says it must be terminated with None
    (0L).
    
    Issue found and fix suggested by Massimo.
    
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=91293

 boilerplate/cairo-boilerplate-glx.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit c04bd4308382db00347016e666f38fcfe8ee1f08
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Thu Jul 30 16:45:15 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Jul 30 16:45:15 2015 -0700

    test: Free the memory, not the pointer to the memory
    
    In read_file(), we see:
    
        *data = malloc (*len);
        ...
        if (fread(*data, *len, 1, fp) != 1) {
          free(data);
          ...
    
    The free call needs to be free(*data), to match the malloc call.
    
    Matthias Clasen found this via Coverity and proposed the fix.
    
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=91381

 test/pdf-mime-data.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 0dd5d84baef70dad68ab67ba172edeaa1b98a995
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Jul 28 17:10:33 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Jul 28 17:10:33 2015 -0700

    svg2png: Only call deprecated g_type_init() for old glib versions.
    
    Quells the following warning:
    
    pdf2png.c:52:5: warning: ‘g_type_init’ is deprecated (declared at
    /usr/include/glib-2.0/gobject/gtype.h:667) [-Wdeprecated-declarations]
         g_type_init ();
         ^
    svg2png.c:47:5: warning: ‘g_type_init’ is deprecated (declared at
    /usr/include/glib-2.0/gobject/gtype.h:667) [-Wdeprecated-declarations]
         g_type_init ();
         ^
    
    Patch authored by arpitj01@gmail.com
    
    Fixes:  https://bugs.freedesktop.org/show_bug.cgi?id=81197
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 test/svg2png.c | 2 ++
 1 file changed, 2 insertions(+)

commit 576bb3ffee2318cd50ecfd4717c8e6421d61d885
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Mon Jul 27 18:00:55 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Jul 27 18:20:07 2015 -0700

    If more than one trap is passed in then it's guaranteed that the
    returned traps will have their left edge to the left of their right
    edge, but if only one trap is passed in then the function always returns
    without doing anything.  This results in incorrect rendering of SVG
    paths with more than one subpath.
    
    Currently calls to _cairo_bentley_ottmann_tessellate_rectangular_traps
    are guarded by traps.has_intersections checks, so this is only a
    theoretical bug.  But we'll eliminate the potential of the bug by
    making the left side to be left of the right side, similar to what was
    done in _cairo_bentley_ottmann_tessellate_boxes (commit 11b6c49c).
    
    Patch authored by Tom Klein for Mozilla.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=90984
    Ref: https://bugzilla.mozilla.org/show_bug.cgi?id=853889
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-bentley-ottmann-rectangular.c | 15 ++++++++++++---
 1 file changed, 12 insertions(+), 3 deletions(-)

commit c7cf0dfd602355e0c4fd1126e63844c304c1ef45
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Mon Jul 27 14:15:11 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Jul 27 14:15:11 2015 -0700

    Revert "cairo-gl: Fix compiler warning if CAIRO_HAS_*_FUNCTIONS is not defined."
    
    This reverts commit c8b6c6066a238cf4cb04679e1149e956b1556a0c.
    
    An undefined macro is evaluated as 0.
    The preference is to use #if MACRO_NAME rather than #ifdef.
    
    Conflicts:
            src/cairo-gl.h

 src/cairo-gl.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 66bc7b8cb0e753006fa838a8badcf5cb7528d6f7
Author:     Andrea Canciani <ranma42@gmail.com>
AuthorDate: Thu Apr 9 00:17:24 2015 +0200
Commit:     Andrea Canciani <ranma42@gmail.com>
CommitDate: Mon Jul 27 12:46:00 2015 +0200

    quartz: be more strict about the behavior of blend operators
    
    Some blend operators have a (small, but potentially noticeable)
    different behaviour in Quartz and pixman. Use the Quartz ones only for
    the operators which match pixman except for rounding errors.
    
    Fixes:
     - extended-blend
     - extended-blend-alpha
     - extended-blend-mask
     - extended-blend-alpha-mask
     - extended-blend-solid
     - extended-blend-solid-alpha

 src/cairo-quartz-surface.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 6210e347712127260dd72b0f03a8604c8d22fdca
Author:     Andrea Canciani <ranma42@gmail.com>
AuthorDate: Wed Apr 8 17:10:32 2015 +0200
Commit:     Andrea Canciani <ranma42@gmail.com>
CommitDate: Mon Jul 27 12:46:00 2015 +0200

    quartz: Align filtering quality with image backend
    
    The Quartz framework provides several quality settings, but they were
    not used. Now the translation of cairo_filter_t to Quartz filtering
    modes tries to match the quality settings from image as much as
    possible.
    
    Specifically, CAIRO_FILTER_GOOD and CAIRO_FILTER_BILINEAR are now
    converted to kCGInterpolationLow, which seems to be a bilinear filter.
    
    Fixes:
     - pixman-downscale-bilinear-24
     - pixman-downscale-bilinear-95
     - pixman-downscale-good-24
     - pixman-downscale-good-95
     - pthread-same-source
     - recording-surface-extend-none
     - recording-surface-extend-reflect
     - recording-surface-extend-repeat
     - recording-surface-over
     - recording-surface-source
     - surface-pattern-big-scale-down
     - surface-pattern-scale-down
     - surface-pattern-scale-down-extend-none
     - surface-pattern-scale-down-extend-reflect
     - surface-pattern-scale-down-extend-repeat

 src/cairo-quartz-surface.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

commit 68e12cd37f3f48d7100a4f6e20f13de18f9f7939
Author:     Andrea Canciani <ranma42@gmail.com>
AuthorDate: Thu Apr 16 11:58:41 2015 +0200
Commit:     Andrea Canciani <ranma42@gmail.com>
CommitDate: Mon Jul 27 12:45:59 2015 +0200

    test: Update quartz reference images

 test/reference/a1-clip-fill-rule.quartz.ref.png    | Bin 0 -> 238 bytes
 test/reference/a1-line-width.quartz.ref.png        | Bin 0 -> 157 bytes
 test/reference/a1-rectilinear-grid.quartz.ref.png  | Bin 0 -> 211 bytes
 test/reference/a1-sample.quartz.xfail.png          | Bin 0 -> 776 bytes
 test/reference/a1-tiger.quartz.xfail.png           | Bin 0 -> 19767 bytes
 test/reference/arc-direction.quartz.ref.png        | Bin 0 -> 5474 bytes
 test/reference/arc-looping-dash.quartz.ref.png     | Bin 470 -> 0 bytes
 test/reference/arc-looping-dash.quartz.xfail.png   | Bin 0 -> 481 bytes
 .../big-little-triangle.quartz.rgb24.ref.png       | Bin 0 -> 307 bytes
 test/reference/bug-51910.quartz.ref.png            | Bin 0 -> 1877 bytes
 test/reference/bug-extents.quartz.ref.png          | Bin 9310 -> 9284 bytes
 test/reference/bug-seams.quartz.xfail.png          | Bin 0 -> 2052 bytes
 test/reference/bug-spline.quartz.ref.png           | Bin 0 -> 5420 bytes
 test/reference/caps-05.quartz.ref.png              | Bin 0 -> 1066 bytes
 test/reference/caps-1.quartz.ref.png               | Bin 0 -> 1091 bytes
 test/reference/caps-joins-05.quartz.ref.png        | Bin 0 -> 1487 bytes
 test/reference/caps-joins-1.quartz.ref.png         | Bin 0 -> 1469 bytes
 test/reference/caps-joins-alpha.quartz.ref.png     | Bin 2466 -> 2268 bytes
 test/reference/caps-joins-curve.quartz.ref.png     | Bin 5199 -> 0 bytes
 test/reference/caps-tails-curve.quartz.ref.png     | Bin 0 -> 50207 bytes
 test/reference/clear.quartz.argb32.ref.png         | Bin 691 -> 664 bytes
 test/reference/clear.quartz.rgb24.ref.png          | Bin 606 -> 586 bytes
 .../reference/clip-complex-bug61592.quartz.ref.png | Bin 0 -> 110 bytes
 .../clip-disjoint-hatching.quartz.ref.png          | Bin 0 -> 8621 bytes
 test/reference/clip-disjoint.quartz.ref.png        | Bin 5476 -> 5482 bytes
 test/reference/clip-fill.quartz.ref.png            | Bin 875 -> 878 bytes
 .../clip-group-shapes-circles.quartz.ref.png       | Bin 1518 -> 1506 bytes
 test/reference/clip-intersect.quartz.ref.png       | Bin 0 -> 189 bytes
 test/reference/clip-nesting.quartz.argb32.ref.png  | Bin 1048 -> 1077 bytes
 test/reference/clip-nesting.quartz.rgb24.ref.png   | Bin 937 -> 954 bytes
 test/reference/clip-operator.quartz.argb32.ref.png | Bin 9672 -> 9543 bytes
 test/reference/clip-operator.quartz.rgb24.ref.png  | Bin 4343 -> 4336 bytes
 test/reference/clip-polygons.quartz.xfail.png      | Bin 0 -> 1296 bytes
 .../clip-rotate-image-surface-paint.quartz.ref.png | Bin 0 -> 198 bytes
 test/reference/clip-shape.quartz.ref.png           | Bin 3229 -> 3208 bytes
 .../clip-stroke-unbounded.quartz.argb32.ref.png    | Bin 3290 -> 3272 bytes
 test/reference/clip-text.quartz.ref.png            | Bin 854 -> 807 bytes
 .../close-path-current-point.quartz.ref.png        | Bin 0 -> 1781 bytes
 test/reference/culled-glyphs.quartz.ref.png        | Bin 493 -> 482 bytes
 test/reference/dash-caps-joins.quartz.xfail.png    | Bin 4446 -> 4400 bytes
 test/reference/dash-curve.quartz.xfail.png         | Bin 42238 -> 42019 bytes
 test/reference/dash-scale.quartz.ref.png           | Bin 7614 -> 0 bytes
 test/reference/dash-scale.quartz.xfail.png         | Bin 0 -> 7456 bytes
 test/reference/dash-state.quartz.xfail.png         | Bin 6957 -> 6981 bytes
 .../dash-zero-length.quartz.argb32.xfail.png       | Bin 0 -> 232 bytes
 .../dash-zero-length.quartz.rgb24.xfail.png        | Bin 0 -> 207 bytes
 .../degenerate-path.quartz.argb32.xfail.png        | Bin 200 -> 219 bytes
 .../degenerate-path.quartz.rgb24.xfail.png         | Bin 172 -> 190 bytes
 .../degenerate-solid-dash.quartz.xfail.png         | Bin 0 -> 397 bytes
 test/reference/drunkard-tails.quartz.ref.png       | Bin 0 -> 6188 bytes
 ...extended-blend-alpha-mask.quartz.argb32.ref.png | Bin 0 -> 9865 bytes
 .../extended-blend-alpha-mask.quartz.rgb24.ref.png | Bin 0 -> 4924 bytes
 .../extended-blend-alpha.quartz.argb32.ref.png     | Bin 9729 -> 9726 bytes
 .../extended-blend-alpha.quartz.rgb24.ref.png      | Bin 5598 -> 5865 bytes
 .../extended-blend-mask.quartz.argb32.ref.png      | Bin 0 -> 4105 bytes
 .../extended-blend-mask.quartz.rgb24.ref.png       | Bin 0 -> 3834 bytes
 ...xtended-blend-solid-alpha.quartz.argb32.ref.png | Bin 0 -> 9726 bytes
 ...extended-blend-solid-alpha.quartz.rgb24.ref.png | Bin 0 -> 5865 bytes
 .../extended-blend-solid.quartz.argb32.ref.png     | Bin 0 -> 4247 bytes
 .../extended-blend-solid.quartz.rgb24.ref.png      | Bin 0 -> 3938 bytes
 .../reference/extended-blend.quartz.argb32.ref.png | Bin 4284 -> 4247 bytes
 test/reference/extended-blend.quartz.rgb24.ref.png | Bin 3965 -> 3938 bytes
 test/reference/fallback.quartz.argb32.ref.png      | Bin 0 -> 4134 bytes
 test/reference/fallback.quartz.rgb24.ref.png       | Bin 0 -> 3299 bytes
 test/reference/fill-alpha-pattern.quartz.ref.png   | Bin 7943 -> 7906 bytes
 test/reference/fill-alpha.quartz.ref.png           | Bin 2704 -> 2731 bytes
 .../fill-and-stroke-alpha-add.quartz.ref.png       | Bin 542 -> 0 bytes
 ...gb32.ref.png => fill-and-stroke.quartz.ref.png} | Bin
 .../reference/fill-and-stroke.quartz.rgb24.ref.png | Bin 249 -> 0 bytes
 test/reference/fill-image.quartz.ref.png           | Bin 1297 -> 1417 bytes
 .../filter-nearest-transformed.quartz.xfail.png    | Bin 349 -> 490 bytes
 .../finer-grained-fallbacks.quartz.argb32.ref.png  | Bin 988 -> 992 bytes
 .../finer-grained-fallbacks.quartz.rgb24.ref.png   | Bin 763 -> 769 bytes
 .../font-matrix-translation.quartz.ref.png         | Bin 996 -> 979 bytes
 .../ft-text-vertical-layout-type1.quartz.ref.png   | Bin 0 -> 3099 bytes
 .../ft-text-vertical-layout-type1.quartz.xfail.png | Bin 3635 -> 0 bytes
 .../ft-text-vertical-layout-type3.quartz.ref.png   | Bin 3573 -> 3570 bytes
 .../gradient-constant-alpha.quartz.argb32.ref.png  | Bin 214 -> 0 bytes
 .../gradient-constant-alpha.quartz.ref.png         | Bin 0 -> 210 bytes
 test/reference/group-unaligned.quartz.ref.png      | Bin 363 -> 362 bytes
 test/reference/halo-transform.quartz.ref.png       | Bin 14360 -> 15164 bytes
 test/reference/halo.quartz.ref.png                 | Bin 8601 -> 8995 bytes
 test/reference/hatchings.quartz.ref.png            | Bin 0 -> 95827 bytes
 test/reference/huge-linear.quartz.ref.png          | Bin 15230 -> 0 bytes
 test/reference/huge-radial.quartz.ref.png          | Bin 84690 -> 83620 bytes
 test/reference/inverse-text.quartz.ref.png         | Bin 0 -> 2565 bytes
 test/reference/inverted-clip.quartz.rgb24.ref.png  | Bin 0 -> 1137 bytes
 test/reference/joins-loop.quartz.ref.png           | Bin 0 -> 4080 bytes
 test/reference/joins-retrace.quartz.ref.png        | Bin 0 -> 4750 bytes
 test/reference/joins.quartz.ref.png                | Bin 5833 -> 0 bytes
 ....quartz.ref.png => leaky-dash.quartz.xfail.png} | Bin
 ...ine-width-large-overlap-dashed.quartz.xfail.png | Bin 0 -> 334 bytes
 ...line-width-large-overlap-rotated.quartz.ref.png | Bin 0 -> 385 bytes
 .../line-width-overlap-dashed.quartz.xfail.png     | Bin 0 -> 410 bytes
 .../linear-gradient-subset.quartz.ref.png          | Bin 852 -> 833 bytes
 test/reference/linear-gradient.quartz.ref.png      | Bin 951 -> 933 bytes
 test/reference/long-dashed-lines.quartz.ref.png    | Bin 2068 -> 0 bytes
 test/reference/mask-alpha.quartz.argb32.ref.png    | Bin 622 -> 621 bytes
 test/reference/mask-alpha.quartz.rgb24.ref.png     | Bin 0 -> 587 bytes
 test/reference/mask.quartz.argb32.ref.png          | Bin 10669 -> 10599 bytes
 test/reference/mask.quartz.rgb24.ref.png           | Bin 8354 -> 0 bytes
 ....ref.png => new-sub-path.quartz.argb32.ref.png} | Bin
 test/reference/new-sub-path.quartz.rgb24.ref.png   | Bin 0 -> 340 bytes
 .../reference/operator-clear.quartz.argb32.ref.png | Bin 1228 -> 1556 bytes
 test/reference/operator-clear.quartz.rgb24.ref.png | Bin 1096 -> 1365 bytes
 .../operator-source.quartz.argb32.ref.png          | Bin 0 -> 6071 bytes
 .../reference/operator-source.quartz.rgb24.ref.png | Bin 0 -> 4549 bytes
 .../over-above-source.quartz.argb32.ref.png        | Bin 511 -> 508 bytes
 .../over-above-source.quartz.rgb24.ref.png         | Bin 437 -> 431 bytes
 .../over-around-source.quartz.argb32.ref.png       | Bin 593 -> 594 bytes
 .../over-around-source.quartz.rgb24.ref.png        | Bin 0 -> 474 bytes
 .../over-below-source.quartz.rgb24.ref.png         | Bin 0 -> 368 bytes
 .../over-between-source.quartz.argb32.ref.png      | Bin 551 -> 548 bytes
 .../over-between-source.quartz.rgb24.ref.png       | Bin 0 -> 456 bytes
 .../reference/overlapping-dash-caps.quartz.ref.png | Bin 0 -> 3921 bytes
 .../overlapping-glyphs.quartz.argb32.ref.png       | Bin 2824 -> 2766 bytes
 .../overlapping-glyphs.quartz.rgb24.ref.png        | Bin 1711 -> 1667 bytes
 .../paint-with-alpha-clip-mask.quartz.ref.png      | Bin 0 -> 325 bytes
 .../partial-clip-text-bottom.quartz.ref.png        | Bin 0 -> 263 bytes
 .../partial-clip-text-left.quartz.ref.png          | Bin 0 -> 288 bytes
 .../partial-clip-text-right.quartz.ref.png         | Bin 0 -> 139 bytes
 .../reference/partial-clip-text-top.quartz.ref.png | Bin 174 -> 172 bytes
 .../pixman-downscale-best-24.quartz.ref.png        | Bin 0 -> 432 bytes
 .../pixman-downscale-best-95.quartz.ref.png        | Bin 0 -> 656 bytes
 .../pixman-downscale-bilinear-95.quartz.ref.png    | Bin 0 -> 471 bytes
 .../pixman-downscale-fast-95.quartz.ref.png        | Bin 0 -> 300 bytes
 .../pixman-downscale-good-95.quartz.ref.png        | Bin 0 -> 471 bytes
 .../pixman-downscale-nearest-95.quartz.ref.png     | Bin 0 -> 300 bytes
 test/reference/pixman-rotate.quartz.rgb24.ref.png  | Bin 0 -> 225 bytes
 test/reference/pthread-same-source.quartz.ref.png  | Bin 0 -> 976 bytes
 .../reference/pthread-same-source.quartz.xfail.png | Bin 961 -> 0 bytes
 test/reference/pthread-show-text.quartz.ref.png    | Bin 43005 -> 46034 bytes
 test/reference/push-group-color.quartz.ref.png     | Bin 3127 -> 3102 bytes
 test/reference/push-group.quartz.argb32.ref.png    | Bin 3932 -> 3833 bytes
 test/reference/push-group.quartz.rgb24.ref.png     | Bin 3659 -> 3593 bytes
 ...dial-gradient-mask-source.quartz.argb32.ref.png | Bin 171002 -> 168929 bytes
 ...adial-gradient-mask-source.quartz.rgb24.ref.png | Bin 179120 -> 177421 bytes
 .../radial-gradient-mask-source.rgb24.ref.png      | Bin 0 -> 150945 bytes
 test/reference/radial-gradient-mask.quartz.ref.png | Bin 296910 -> 295032 bytes
 .../radial-gradient-one-stop.quartz.ref.png        | Bin 6316 -> 6447 bytes
 .../radial-gradient-source.quartz.argb32.ref.png   | Bin 439222 -> 442335 bytes
 .../radial-gradient-source.quartz.rgb24.ref.png    | Bin 279249 -> 276660 bytes
 test/reference/radial-gradient.quartz.ref.png      | Bin 389140 -> 389582 bytes
 test/reference/random-clip.quartz.ref.png          | Bin 0 -> 519854 bytes
 test/reference/record-mesh.ref.png                 | Bin 15229 -> 15400 bytes
 .../record-select-font-face.quartz.ref.png         | Bin 0 -> 2186 bytes
 .../record1414x-fill-alpha.quartz.ref.png          | Bin 0 -> 4099 bytes
 ...ecord1414x-paint-alpha-clip-mask.quartz.ref.png | Bin 0 -> 522 bytes
 .../record1414x-select-font-face.quartz.ref.png    | Bin 0 -> 3233 bytes
 .../record1414x-text-transform.quartz.ref.png      | Bin 0 -> 8701 bytes
 test/reference/record2x-fill-alpha.quartz.ref.png  | Bin 0 -> 5782 bytes
 .../record2x-select-font-face.quartz.ref.png       | Bin 0 -> 4506 bytes
 .../record90-paint-alpha-clip.quartz.ref.png       | Bin 0 -> 335 bytes
 .../record90-select-font-face.quartz.ref.png       | Bin 0 -> 2213 bytes
 .../record90-self-intersecting.quartz.xfail.png    | Bin 0 -> 214 bytes
 .../reference/recordflip-fill-alpha.quartz.ref.png | Bin 0 -> 2799 bytes
 ...recordflip-paint-alpha-clip-mask.quartz.ref.png | Bin 0 -> 351 bytes
 .../recordflip-select-font-face.quartz.ref.png     | Bin 0 -> 2291 bytes
 .../recordflip-whole-fill-alpha.quartz.ref.png     | Bin 0 -> 2799 bytes
 ...flip-whole-paint-alpha-clip-mask.quartz.ref.png | Bin 0 -> 351 bytes
 ...ecordflip-whole-select-font-face.quartz.ref.png | Bin 0 -> 2291 bytes
 ...rding-surface-extend-none.quartz.argb32.ref.png | Bin 0 -> 2758 bytes
 ...ording-surface-extend-none.quartz.rgb24.ref.png | Bin 0 -> 2684 bytes
 ... recording-surface-extend-pad.argb32.xfail.png} | Bin
 ...> recording-surface-extend-pad.rgb24.xfail.png} | Bin
 ...ng-surface-extend-reflect.quartz.argb32.ref.png | Bin 0 -> 16317 bytes
 ...ing-surface-extend-reflect.quartz.rgb24.ref.png | Bin 0 -> 16062 bytes
 ...ing-surface-extend-repeat.quartz.argb32.ref.png | Bin 0 -> 18584 bytes
 ...ding-surface-extend-repeat.quartz.rgb24.ref.png | Bin 0 -> 17244 bytes
 .../recording-surface-over.quartz.argb32.ref.png   | Bin 4570 -> 2758 bytes
 .../recording-surface-over.quartz.rgb24.ref.png    | Bin 4058 -> 2684 bytes
 .../recording-surface-source.quartz.argb32.ref.png | Bin 0 -> 2760 bytes
 .../recording-surface-source.quartz.rgb24.ref.png  | Bin 0 -> 2695 bytes
 ...ctilinear-dash-scale-unaligned.quartz.xfail.png | Bin 0 -> 3747 bytes
 .../rectilinear-dash-scale.quartz.xfail.png        | Bin 0 -> 687 bytes
 test/reference/rectilinear-dash.quartz.xfail.png   | Bin 494 -> 356 bytes
 test/reference/reflected-stroke.quartz.ref.png     | Bin 0 -> 4773 bytes
 .../rotate-clip-image-surface-paint.quartz.ref.png | Bin 0 -> 275 bytes
 .../rotate-image-surface-paint.quartz.ref.png      | Bin 223 -> 223 bytes
 test/reference/rotated-clip.quartz.ref.png         | Bin 3923 -> 3908 bytes
 .../rounded-rectangle-fill.quartz.ref.png          | Bin 684 -> 0 bytes
 .../rounded-rectangle-stroke.quartz.ref.png        | Bin 0 -> 682 bytes
 test/reference/shape-sierpinski.quartz.ref.png     | Bin 0 -> 83460 bytes
 test/reference/show-glyphs-advance.quartz.ref.png  | Bin 1464 -> 1438 bytes
 test/reference/smask-fill.quartz.ref.png           | Bin 2076 -> 2029 bytes
 test/reference/smask-stroke.quartz.ref.png         | Bin 1697 -> 1695 bytes
 test/reference/smask-text.quartz.ref.png           | Bin 1904 -> 1909 bytes
 test/reference/smask.quartz.ref.png                | Bin 4031 -> 4030 bytes
 .../spline-decomposition.quartz.xfail.png          | Bin 19560 -> 19486 bytes
 test/reference/stroke-clipped.quartz.ref.png       | Bin 0 -> 5652 bytes
 test/reference/stroke-ctm-caps.quartz.ref.png      | Bin 899 -> 0 bytes
 test/reference/stroke-image.quartz.ref.png         | Bin 1350 -> 1418 bytes
 test/reference/stroke-pattern.quartz.ref.png       | Bin 0 -> 1683 bytes
 ...bsurface-outside-target.quartz.argb32.xfail.png | Bin 0 -> 2176 bytes
 ...ubsurface-outside-target.quartz.rgb24.xfail.png | Bin 0 -> 1717 bytes
 test/reference/subsurface-scale.quartz.ref.png     | Bin 0 -> 5703 bytes
 .../surface-pattern-big-scale-down.quartz.ref.png  | Bin 258 -> 0 bytes
 .../surface-pattern-operator.quartz.argb32.ref.png | Bin 5721 -> 5738 bytes
 .../surface-pattern-operator.quartz.rgb24.ref.png  | Bin 2429 -> 2437 bytes
 ...e-pattern-scale-down-extend-none.quartz.ref.png | Bin 391 -> 0 bytes
 ...-pattern-scale-down-extend-pad.quartz.xfail.png | Bin 397 -> 330 bytes
 ...attern-scale-down-extend-reflect.quartz.ref.png | Bin 475 -> 0 bytes
 ...pattern-scale-down-extend-repeat.quartz.ref.png | Bin 397 -> 0 bytes
 .../surface-pattern-scale-down.quartz.ref.png      | Bin 2276 -> 1731 bytes
 ...png => surface-pattern-scale-up.quartz.ref.png} | Bin
 test/reference/text-antialias-gray.quartz.ref.png  | Bin 956 -> 911 bytes
 .../text-antialias-subpixel-bgr.quartz.xfail.png   | Bin 0 -> 896 bytes
 .../text-antialias-subpixel-rgb.quartz.ref.png     | Bin 0 -> 896 bytes
 .../text-antialias-subpixel-vbgr.quartz.xfail.png  | Bin 0 -> 896 bytes
 .../text-antialias-subpixel-vrgb.quartz.xfail.png  | Bin 0 -> 896 bytes
 .../text-antialias-subpixel.quartz.ref.png         | Bin 949 -> 896 bytes
 test/reference/text-glyph-range.quartz.ref.png     | Bin 2191 -> 0 bytes
 test/reference/text-glyph-range.quartz.xfail.png   | Bin 0 -> 2051 bytes
 test/reference/text-pattern.quartz.argb32.ref.png  | Bin 2148 -> 4372 bytes
 test/reference/text-pattern.quartz.rgb24.ref.png   | Bin 1867 -> 3483 bytes
 test/reference/text-rotate.quartz.ref.png          | Bin 16655 -> 16616 bytes
 test/reference/tiger.quartz.ref.png                | Bin 0 -> 93656 bytes
 .../reference/tighten-bounds.quartz.argb32.ref.png | Bin 0 -> 7679 bytes
 test/reference/tighten-bounds.quartz.rgb24.ref.png | Bin 0 -> 7324 bytes
 test/reference/trap-clip.quartz.argb32.ref.png     | Bin 6115 -> 6108 bytes
 test/reference/trap-clip.quartz.rgb24.ref.png      | Bin 5801 -> 5789 bytes
 test/reference/twin-antialias-gray.quartz.ref.png  | Bin 0 -> 4466 bytes
 test/reference/twin-antialias-none.quartz.ref.png  | Bin 0 -> 1026 bytes
 .../twin-antialias-subpixel.quartz.ref.png         | Bin 0 -> 4466 bytes
 test/reference/twin.quartz.ref.png                 | Bin 0 -> 4466 bytes
 test/reference/user-font-proxy.quartz.ref.png      | Bin 19795 -> 19737 bytes
 test/reference/user-font.quartz.ref.png            | Bin 5960 -> 5854 bytes
 test/reference/world-map-fill.quartz.ref.png       | Bin 0 -> 56665 bytes
 test/reference/world-map-stroke.quartz.ref.png     | Bin 0 -> 79192 bytes
 test/reference/world-map.quartz.ref.png            | Bin 0 -> 82020 bytes
 .../reference/xcomposite-projection.quartz.ref.png | Bin 926 -> 924 bytes
 231 files changed, 0 insertions(+), 0 deletions(-)

commit e1353f3b859d28dc3f5a9d4fb4496085240a8c68
Author:     Andrea Canciani <ranma42@gmail.com>
AuthorDate: Thu Apr 16 11:59:02 2015 +0200
Commit:     Andrea Canciani <ranma42@gmail.com>
CommitDate: Mon Jul 27 12:45:59 2015 +0200

    test: Always use DejaVu Sans as default font
    
    This makes the results of the test suite more stable across different
    environments, because it does not rely anymore on
    CAIRO_FONT_FAMILY_DEFAULT (which on Windows is "Arial", on Mac
    "Helvetica").
    
    This change should not affect Linux environments, assuming that the
    default font is already set to "DejaVu Sans".

 test/cairo-test.c        | 4 ++++
 test/clip-zero.c         | 2 +-
 test/pthread-show-text.c | 4 ++--
 test/show-glyphs-many.c  | 2 +-
 test/text-cache-crash.c  | 4 ++--
 test/user-font-proxy.c   | 2 +-
 6 files changed, 11 insertions(+), 7 deletions(-)

commit 6951fb4238706522d357fd25236b17492baea1b0
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Fri Jul 17 12:07:18 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Jul 17 12:07:18 2015 -0700

    Revert "pattern: allow for a floating one pixel rounded difference."
    
    While this fixed a real bug, in testing this patch was found to fail a
    number of tests and thus needs further work.
    
    This reverts commit e7acf4b6dc6666c2a2c54fb08e9ad6f01a1d415f.

 src/cairo-pattern.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit edd321c2f52daaef9804481bc4d0aa84f8ff0060
Author:     Arpit Jain <jain.arpit@samsung.com>
AuthorDate: Mon Jul 13 11:31:48 2015 +0530
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Jul 14 01:44:33 2015 -0700

    gl: Fix incorrect size of expression
    
    The sizeof operator now applied to the correct variable "ctx->glyph_cache",
    instead of its pointer address, in function "_cairo_gl_composite_flush".
    
    Fixes:  https://bugs.freedesktop.org/show_bug.cgi?id=91321
    Signed-off-by: Arpit Jain <jain.arpit@samsung.com>
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-gl-composite.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 498fc2fbe31682754f1aa3864b764229d0b6838c
Author:     Ashim <ashim.shah@samsung.com>
AuthorDate: Thu Jul 9 10:43:30 2015 +0530
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Jul 9 13:50:35 2015 -0700

    Fix out of bound access in struct pattern->type
    
    The pattern structure is hardcoded to hold 7 elements, yet the
    pattern_names array in cairo-surface-observer.c is initialized with 8
    strings.  This causes a crash in print_array at line 1587 when it tries
    to access the 8th member.
    
    Hence changed the 'type' array from type[7] to type[8] to avoid out of
    bound access.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=91266
    Signed-off-by: Ashim <ashim.shah@samsung.com>
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-surface-observer-private.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ad45e8f99f4ab6777559480cede7d1461a9c28fc
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Jul 7 18:20:30 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Jul 7 18:20:30 2015 -0700

    truetype: Drop redundant check of truetype struct
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=29010

 src/cairo-truetype-subset.c | 1 -
 1 file changed, 1 deletion(-)

commit 943ba26a20f51b39b4b102f727a26e4f5e283063
Author:     Arpit Jain <jain.arpit@samsung.com>
AuthorDate: Fri Jul 3 15:31:48 2015 +0530
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Jul 6 15:14:23 2015 -0700

    test/bitmap-font: Fix use of pointer after freed pointer
    
    The pointer 'filename' is already freed and still used as a function
    argument.  This patch will free the pointer 'filename' only after it is
    used.
    
    Also, the patch ensures that it frees the pointer 'filename' before any
    return of this function.
    
    Fixes:  https://bugs.freedesktop.org/show_bug.cgi?id=91206
    Signed-off-by: Arpit Jain <jain.arpit@samsung.com>
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 test/bitmap-font.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit dced42a6801ea0f7ff9fa9f7aa3c7b2a10103884
Author:     Chris Wilson <chris@chris-wilson.co.uk>
AuthorDate: Mon Jul 6 22:26:14 2015 +0100
Commit:     Chris Wilson <chris@chris-wilson.co.uk>
CommitDate: Mon Jul 6 22:28:20 2015 +0100

    xlib: Avoid using uninitialised variable on impossible error path
    
    In commit f6843d5cbb79c35f7b331ac31c4a55c9574928fc
    Author: Arpit Jain <jain.arpit@samsung.com>
    Date:   Mon Jul 6 14:13:06 2015 -0700
    
        xlib: Fix deferencing of uninitialised 'display'
    
    the common error + clenaup path was clumsily fixed to use the right
    variable after the error didn't set the local display variable.
    
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>

 src/cairo-xlib-render-compositor.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 84b8d7657615d3ecc11b029151dfd87704f15641
Author:     Chris Wilson <chris@chris-wilson.co.uk>
AuthorDate: Mon Jul 6 22:24:29 2015 +0100
Commit:     Chris Wilson <chris@chris-wilson.co.uk>
CommitDate: Mon Jul 6 22:28:20 2015 +0100

    Revert "xlib: Fix deferencing of uninitialised 'display'"
    
    This reverts commit f6843d5cbb79c35f7b331ac31c4a55c9574928fc.

 src/cairo-xlib-render-compositor.c | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

commit f6843d5cbb79c35f7b331ac31c4a55c9574928fc
Author:     Arpit Jain <jain.arpit@samsung.com>
AuthorDate: Mon Jul 6 14:13:06 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Jul 6 14:13:24 2015 -0700

    xlib: Fix deferencing of uninitialised 'display'
    
    Initialising 'display' to NULL and checking before deferencing during display->base.
    This patch will check the deferencing of uninitialised 'display' in case,
    _cairo_xlib_display_acquire does not return CAIRO_STATUS_SUCCESS.
    
    Fixes:  https://bugs.freedesktop.org/show_bug.cgi?id=87893
    Signed-off-by: Arpit Jain <jain.arpit@samsung.com>
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-xlib-render-compositor.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

commit 06a2696d5fa0ea50adb1463e2ee923ac92aabbdf
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Mon Jul 6 14:11:57 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Jul 6 14:11:57 2015 -0700

    cairo-gl: Still check the value of the macros
    
    Just because they're defined doesn't mean they've been enabled.

 src/cairo-gl.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit c8b6c6066a238cf4cb04679e1149e956b1556a0c
Author:     Koop Mast <kwm@rainbow-runner.nl>
AuthorDate: Mon Jan 5 12:49:25 2015 +0100
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Sat Jun 27 01:14:22 2015 -0700

    cairo-gl: Fix compiler warning if CAIRO_HAS_*_FUNCTIONS is not defined.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=88050
    
    [Updated to also still check the value of the macros]
    
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-gl.h | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 776dd20c8485e4e70f42a2e66a0545cf87944ac5
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Sat Jun 27 00:43:04 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Sat Jun 27 00:44:29 2015 -0700

    configure: Fix typo for missing line continuation character
    
    There is an unintentional (benign) missing line continuation "\" in the
    definition of MAYBE_WARN in configure.  configure completes and issues a
    WARNING:
    
    configure: WARNING: cache variable cairo_cv_warn_maybe contains a
    newline
    
    Found and solved by Larry Baker.
    
    Fixes:  https://bugs.freedesktop.org/show_bug.cgi?id=89750
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 build/configure.ac.warnings | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 31291611625c21bc9ec2827cf4ccc8a1f18392ed
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Sat Jun 27 00:34:05 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Sat Jun 27 00:34:05 2015 -0700

    RELEASING: Add requirement to upload ChangeLogs
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=21676

 RELEASING | 5 +++++
 1 file changed, 5 insertions(+)

commit bf4f5f3a904850f0c110ca8530b1965dc969312d
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Fri Jun 26 16:30:06 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Jun 26 16:30:06 2015 -0700

    cairo-script: Return a cairo_status_t error, not FALSE
    
    This typo results in certain paths being incorrectly recorded with
    script surfaces.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=91054
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-script-surface.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit bb24f165ff57973347b34956a371c6b33d2d9b59
Author:     John Lindgren <john.lindgren@aol.com>
AuthorDate: Sun May 31 11:48:30 2015 -0400
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Jun 26 16:12:33 2015 -0700

    Avoid indiscriminate use of VALGRIND_MAKE_MEM_NOACCESS.
    
    Marking stack-allocated objects as no-access creates false positives,
    which distract from finding real memory errors.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=52548
    
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-freelist-private.h |  2 +-
 src/cairo-freelist.c         |  8 ++++----
 src/cairo-gstate.c           |  2 +-
 src/cairo-path-fixed.c       |  2 +-
 src/cairo-pattern.c          | 10 +++++-----
 src/cairo-pen.c              |  2 +-
 src/cairo-polygon.c          |  2 +-
 src/cairo-region.c           |  2 +-
 src/cairo-stroke-style.c     |  2 +-
 src/cairo-traps.c            |  2 +-
 src/cairo-tristrip.c         |  2 +-
 11 files changed, 18 insertions(+), 18 deletions(-)

commit 1bcce4362927952b25cb916f862dde6fd35f8125
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Thu Jun 25 18:54:23 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Jun 25 18:54:23 2015 -0700

    cairo-recording-surface: Fix loss of alpha when clipping
    
    Commit 8020e0bc introduced a regression due to a typo when copying a
    mask for a cairo recording surface.  It should copy the source and mask
    members from the command source to the recording surface, but instead it
    copies the source twice.
    
    Fix suggested by Massimo.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=73038
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=73901

 src/cairo-recording-surface.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit c1c3028a0cf0e7673ef82cc8f39cb6035a036944
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Thu Jun 25 17:41:26 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Jun 25 17:42:27 2015 -0700

    cairo-script: Fix sp. "directoriy"
    
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-script-surface.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f82ae573fe4748874e6dc7025016f7bf6bc8f7f3
Author:     Uli Schlachter <psychon@znc.in>
AuthorDate: Sat Jun 20 10:59:52 2015 +0200
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Sat Jun 20 10:59:52 2015 +0200

    XCB: Don't attach uploaded surfaces as snapshots
    
    When you draw (part of) a surface to an XCB surface, the XCB backend will safe
    the uploaded part as a snapshot to the input surface. This allows to re-use this
    picture in case the same surface is later used again as a source.
    
    However, other backends do not do this and this has caused and/or highlighted
    numerous bugs. Just skipping the snapshot fixes or hides these bugs.
    
    Papers-over: https://bugs.freedesktop.org/show_bug.cgi?id=67505
    Signed-off-by: Uli Schlachter <psychon@znc.in>

 src/cairo-xcb-surface-render.c | 3 +++
 1 file changed, 3 insertions(+)

commit e7acf4b6dc6666c2a2c54fb08e9ad6f01a1d415f
Author:     Alban Browaeys <prahal@yahoo.com>
AuthorDate: Wed Jan 21 12:01:45 2015 +0100
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Jun 18 16:07:40 2015 -0700

    pattern: allow for a floating one pixel rounded difference.
    
    That is if the difference between the origin and the end is bigger than
    .5 round up regardless of the coordinates.
    
    Round the difference of the floats instead of rounding the floats then
    diff them.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=84396
    
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-pattern.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit b4a922f62d34973ea89495b40ce8bc6378110b9e
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Jun 16 16:42:56 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Jun 18 12:38:59 2015 -0700

    cairo-script: Rename struct member to avoid name collision on AIX
    
    On AIX, the token jmpbuf is a pre-processor macro.
    cairo-script-scanner.c includes a private struct with a member named
    jmpbuf which gets renamed to __jmpbuf when AIX's sys/context.h has been
    included.
    
    While judicious ordering of includes might kludge around this problem
    (by causing all references to .jmpbuf to become .__jmpbuf), it's better
    to simply select a new name for the struct member that won't suffer the
    collision.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=89339
    
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
    Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>

 util/cairo-script/cairo-script-private.h |  2 +-
 util/cairo-script/cairo-script-scanner.c | 74 ++++++++++++++++----------------
 2 files changed, 38 insertions(+), 38 deletions(-)

commit 714a77e3f1c818bb5eec8c654c576d862ef6684c
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Jun 16 15:18:23 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Jun 18 12:38:55 2015 -0700

    cairo-script: Prefer cairo from local tree
    
    Use quoted includes rather than bracketed, to prefer linking to the
    in-tree cairo in preference to the system cairo.
    
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
    Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>

 util/cairo-script/cairo-script-interpreter.c | 3 +--
 util/cairo-script/csi-bind.c                 | 4 ++--
 util/cairo-script/csi-exec.c                 | 4 ++--
 util/cairo-script/csi-replay.c               | 4 ++--
 util/cairo-script/csi-trace.c                | 4 ++--
 5 files changed, 9 insertions(+), 10 deletions(-)

commit 3ed581149f82b653e1987e746467ad8ae9ce3ca2
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Jun 16 15:13:31 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Jun 18 12:38:51 2015 -0700

    cairo-script: Cleanup boilerplate header for consistency
    
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
    Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>

 util/cairo-script/cairo-script-hash.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit d31e2418d6d9920205a154f21becca12a7b84c2a
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Jun 16 15:06:59 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Jun 18 12:38:47 2015 -0700

    cairo-script: Add missing copyright and boilerplate
    
    Chris wrote all of the cairo script stuff.  I'm making a guess about the
    copyright date.
    
    Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 util/cairo-script/csi-bind.c   | 33 +++++++++++++++++++++++++++++++++
 util/cairo-script/csi-exec.c   | 33 +++++++++++++++++++++++++++++++++
 util/cairo-script/csi-replay.c | 33 +++++++++++++++++++++++++++++++++
 util/cairo-script/csi-trace.c  | 33 +++++++++++++++++++++++++++++++++
 4 files changed, 132 insertions(+)

commit a3b6afabf670076e093850606d89e142ddf6ea09
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Jun 16 15:05:54 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Jun 18 12:38:43 2015 -0700

    cairo-script: Always include config.h first thing
    
    Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 util/cairo-script/cairo-script-file.c        | 2 ++
 util/cairo-script/cairo-script-hash.c        | 2 ++
 util/cairo-script/cairo-script-interpreter.c | 2 ++
 util/cairo-script/cairo-script-objects.c     | 2 ++
 util/cairo-script/cairo-script-operators.c   | 2 ++
 util/cairo-script/cairo-script-scanner.c     | 2 ++
 util/cairo-script/cairo-script-stack.c       | 2 ++
 util/cairo-script/csi-bind.c                 | 3 +++
 util/cairo-script/csi-exec.c                 | 3 +++
 util/cairo-script/csi-replay.c               | 3 +++
 util/cairo-script/csi-trace.c                | 3 +++
 11 files changed, 26 insertions(+)

commit 11b6c49c103d53526e9805c8906fde5dbb2eb884
Author:     Fredrik Fornwall <fredrik@fornwall.net>
AuthorDate: Sun May 31 20:36:48 2015 +0200
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Jun 5 20:53:11 2015 -0700

    Fix cairo_get_locale_decimal_point() on Android

 src/cairo-misc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 1ed318ce1337ce4d09c508eb74763bf43cce8d9f
Author:     Massimo Valentini <mvalentini@src.gnome.org>
AuthorDate: Tue Sep 23 12:37:35 2014 +0200
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Jun 4 15:02:01 2015 -0700

    polygon-intersection: Delete misleading comments and dead-code
    
    den_det is positive because intersect_lines is called
    only after _slope_compare returned > 0 and slope_compare
    is returning the sign of den_det
    
    The quadratic-time intersection finder is #if 0-ed out
    in src/cairo-bentley-ottman.c, but is unusable even there
    since the second commit to that file.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=74779
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-polygon-intersect.c | 60 ++-----------------------------------------
 1 file changed, 2 insertions(+), 58 deletions(-)

commit 63f59ea89625bc2f445c5ab342c0f1c3971aabea
Author:     Massimo Valentini <mvalentini@src.gnome.org>
AuthorDate: Tue Sep 23 12:37:26 2014 +0200
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Jun 4 15:01:57 2015 -0700

    polygon-intersection: Try not to invoke undefined behaviour
    
    Optimizing compilers aggressively remove code that is executed only
    after an undefined behaviour occurred.
    
    Also, the difference of two (non char) pointers hides an integer
    division that, because the divisor is known at compile time, is
    transformed into a multiplication by a pseudo-reciprocal, and in this
    case the difference is not always a multiple of the divisor, resulting
    in an invalid comparison predicate.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=74779
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-polygon-intersect.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit a3c022bb98d716bd4e3f9ce50095a72e25605fe8
Author:     Massimo Valentini <mvalentini@src.gnome.org>
AuthorDate: Tue Sep 23 12:37:20 2014 +0200
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Jun 4 15:01:35 2015 -0700

    polygon-intersection: Include approximation in intersection points
    
    In Hobby's paper it is proved that INTERSECTION events can be
    processed in any order by ignoring intersections between edges
    non-adjacent in the active edges list.
    But with respect to START/STOP events they must be processed in
    order. Because START/STOP events have always exact y, it is
    sufficient to know whether an integer y intersection is a
    default/excess approximation of the exact to properly sort events.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=74779
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-polygon-intersect.c | 139 ++++++++++++++++++++----------------------
 1 file changed, 67 insertions(+), 72 deletions(-)

commit 9f2bbfa41fa26a44c38949ecf329b06b5585c87c
Author:     Massimo Valentini <mvalentini@src.gnome.org>
AuthorDate: Tue Sep 23 12:37:08 2014 +0200
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Jun 4 15:00:58 2015 -0700

    polygon-intersection: Do not discard intersection exactly at top edge
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=74779
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-polygon-intersect.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b9ada819953303e708a376779ff27f75ff6bc51c
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Thu Jun 4 14:24:31 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Jun 4 14:24:31 2015 -0700

    cairo-script: Improve buffer length check
    
    Quells the following warning:
    
    cairo-script-scanner.c: In function ‘_translate_string’:
    cairo-script-scanner.c:1623:18: warning: comparison between signed and
    unsigned integer expressions [-Wsign-compare]
          if (buf_len <= 8 + 2*string->len) {
                      ^

 util/cairo-script/cairo-script-scanner.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

commit f032133e6d5ad05157fc46609d8c63103028342c
Author:     Julien Isorce <j.isorce@samsung.com>
AuthorDate: Wed Sep 3 10:58:18 2014 +0100
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Jun 4 14:12:12 2015 -0700

    build: Show all disabled features in cairo-features.h
    
    Even features which are disabled by default should appear in
    cairo-features.h.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=83359
    (Patch approved by Behdad Esfahbod in bug tracker.)
    
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 build/configure.ac.features | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5d150ee111c222f09e78f4f88540964476327844
Author:     Nathan Froyd <froydnj@mozilla.com>
AuthorDate: Mon May 4 13:38:41 2015 -0400
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Jun 4 13:25:23 2015 -0700

    Support new-style __atomic_* primitives
    
    Recent versions of GCC/clang feature a new set of compiler intrinsics
    for performing atomic operations, motivated by the operations needed to
    support the C++11 memory model.  These intrinsics are more flexible than
    the old __sync_* intrinstics and offer efficient support for atomic load
    and store operations.
    
    Having the load appear atomic to the compiler is particular important
    for tools like ThreadSanitizer so they don't report false positives on
    memory operations that we intend to be atomic.
    
    Patch from Nathan Froyd <froydnj@mozilla.com>

 build/aclocal.cairo.m4     | 12 +++++++
 src/cairo-atomic-private.h | 90 ++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 102 insertions(+)

commit d1dda5eeb218d22c79eb82714f5d7c9869f70260
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Thu May 21 22:37:06 2015 +0930
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu May 21 22:40:01 2015 +0930

    cff: ensure glyph widths are positive when font matrix yy is negative
    
    Bug 90538

 src/cairo-cff-subset.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit f52f0e2feb1ad0a4de23c475a8c020d41a1764a8
Author:     Zan Dobersek <zdobersek@igalia.com>
AuthorDate: Fri May 8 01:50:25 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon May 18 15:03:29 2015 -0700

    Manually transpose the matrix in _cairo_gl_shader_bind_matrix()
    
    To maintain compatibility with OpenGL ES 2.0, the matrix in
    _cairo_gl_shader_bind_matrix() should be manually transposed,
    and GL_FALSE passed as the transpose argument to the
    glUniformMatrix3fv() call as it is the only valid value for
    that parameter in OpenGL ES 2.0.
    
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>
    Acked-by: "Henry (Yu) Song" <henry.song@samsung.com>

 src/cairo-gl-shaders.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 8b798c320f6fd2d87349d0a716304474022bc5ea
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Fri Apr 24 18:23:46 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Apr 24 18:23:46 2015 -0700

    Fix broken canvas text font size in Inkscape
    
    An earlier fix to bug 84324 added a regression in the font size of
    canvas text in Inkscape when compiled with the Quartz backend.
    
    Patch from Andrea Canciani
    
    Fixes:  https://bugs.freedesktop.org/show_bug.cgi?id=84324
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-quartz-font.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit d5ffe67008afe46c030b31afc0803321b6479990
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Thu Apr 23 14:26:14 2015 -0700
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Thu Apr 23 14:26:14 2015 -0700

    Remove debug printf; ouch!

 src/cairo-ft-font.c | 1 -
 1 file changed, 1 deletion(-)

commit 853e822c9c8f6d86c730d27e99458dea8b6717e1
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Tue Apr 21 14:31:53 2015 -0700
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Apr 21 14:31:53 2015 -0700

    Oops, fixup previous commit

 src/cairo-font-face.c | 7 +++++++
 src/cairoint.h        | 1 +
 2 files changed, 8 insertions(+)

commit bb01fd879448b47074d4d800fe1620a57caf1dbe
Author:     Behdad Esfahbod <behdad@behdad.org>
AuthorDate: Tue Apr 21 14:29:41 2015 -0700
Commit:     Behdad Esfahbod <behdad@behdad.org>
CommitDate: Tue Apr 21 14:29:41 2015 -0700

    [ft] Return CAIRO_STATUS_FILE_NOT_FOUND if font file can't be opened
    
    A common source of error when people are setting up pango on a new
    device is when font files don't have the right permissions and cannot
    be opened.  Cairo was returning out-of-memory before, making the
    Pango error message useless.
    
    With this change, cairo will return file-not-found, and pango prints
    that out.  It's still not ideal; a ENOACCESS equivalent would have
    been better.

 src/cairo-ft-font.c | 50 +++++++++++++++++++++++++++++++++++---------------
 1 file changed, 35 insertions(+), 15 deletions(-)

commit 040ae0ce1934ac27c6394dc74405faad34cd5913
Author:     江頭幸路 <koji.egashira@access-company.com>
AuthorDate: Fri Apr 17 20:59:17 2015 +0900
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Apr 20 17:16:18 2015 -0700

    Avoid appending an empty slot to an user data array when user_data is NULL.
    
    Otherwise, calling cairo_set_user_data(cr, key, 0, 0) many times
    causes a long user data array, almost all of whose slots are empty.
    It leads to unnecessarily much memory consumption and long execution time of
    cairo_set_user_data(cr, key, 0, 0) and cairo_get_user_data(cr, key) after
    it.
    
    This issue probably happens since the commit
    http://cgit.freedesktop.org/cairo/commit/?id=9341c254a
    
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-array.c | 3 +++
 1 file changed, 3 insertions(+)

commit 89942c6af00af8b72babeae676376f4cf8911c16
Author:     Andrea Canciani <ranma42@gmail.com>
AuthorDate: Thu Apr 9 01:31:34 2015 +0200
Commit:     Andrea Canciani <ranma42@gmail.com>
CommitDate: Thu Apr 16 11:28:50 2015 +0200

    test: Correct bug number in clip-complex-bug61592
    
    The filename of the C source file is correct, but the test name (both
    as function name and as reference image name) has a typo in it.
    
    Related to https://bugs.freedesktop.org/show_bug.cgi?id=61592

 test/clip-complex-bug61592.c                                |   2 +-
 ...mplex-bug61492.ref.png => clip-complex-bug61592.ref.png} | Bin
 2 files changed, 1 insertion(+), 1 deletion(-)

commit e38e942ac0ef6f5366cabdb22df9858fa4c05ea1
Author:     Руслан Ижбулатов <lrn1986@gmail.com>
AuthorDate: Sat Apr 4 15:58:53 2015 +0000
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Apr 13 17:43:35 2015 -0700

    win32: Add a win32 boilerplate that uses a real window
    
    This way it uses the codepath for cairo_win32_surface_create_with_format(),
    instead of the cairo_win32_surface_create_with_dib().
    
    Without the recording tests (which terminate the testsuite)
    the testsuite results for win32 are:
    
    284 Passed, 167 Failed [1 crashed, 9 expected], 23 Skipped
    win32 (rgb24): 1 crashed!
    win32 (rgb24): 17 error
    win32 (rgb24): 155 failed
    win32 (argb32): 1 crashed!
    win32 (argb32): 17 error
    win32 (argb32): 68 failed
    win32-window-color (rgb24): 1 crashed!
    win32-window-color (rgb24): 17 error
    win32-window-color (rgb24): 148 failed
    win32-window-coloralpha (argb32): 1 crashed!
    win32-window-coloralpha (argb32): 17 error
    win32-window-coloralpha (argb32): 66 failed
    
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 boilerplate/cairo-boilerplate-win32.c | 242 ++++++++++++++++++++++++++++++++--
 1 file changed, 228 insertions(+), 14 deletions(-)

commit 16898ba11b4d6e9e2e64bb2d02d0fb5adbe266e2
Author:     Руслан Ижбулатов <lrn1986@gmail.com>
AuthorDate: Thu Mar 26 19:33:43 2015 +0000
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Apr 13 17:43:28 2015 -0700

    win32: Add cairo API to set up a Win32 surface for an HDC with an alpha channel.
    
    Signed-off-by: Руслан Ижбулатов <lrn1986@gmail.com>
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-win32.h                       |  4 ++
 src/win32/cairo-win32-display-surface.c | 68 +++++++++++++++++++++++++--------
 2 files changed, 56 insertions(+), 16 deletions(-)

commit 654b4a8efe579b05e60c0bd0b7722d474366b1cc
Author:     Andrea Canciani <ranma42@gmail.com>
AuthorDate: Thu Mar 26 17:36:16 2015 +0100
Commit:     Andrea Canciani <ranma42@gmail.com>
CommitDate: Wed Apr 8 14:32:17 2015 +0200

    test: Fix coverage-intersecting-triangles reference
    
    Commit 4e3ef57bc892b0b046c486390adc7164a1de64de added
    coverage-intersecting-triangles with an incorrect reference and
    generator. The test checks the rasterization of two overlapping
    triangles in the following position:
    
       .   .
       |\ /|
       | X |
       |/ \|
       .---.
    
    Since the triangles have both vertical and horizontal sides of size
    x/WIDTH, the expected coverage is 3/4 (75%) of (x/WIDTH)^2. The
    original code, instead, was checking for a coverage of 0.75*x/WIDTH,
    as if one of the sides was always 1 unit long.
    
    The image and xlib backends still suffer from some jitter, caused by
    the approximation of the actual coverage by means of sampling. For
    this reason their references are still considered XFAIL, even though
    their result now looks mostly consistent with the expected reference.

 test/coverage.c                                         |   2 +-
 ... => coverage-intersecting-triangles.image.xfail.png} | Bin
 test/reference/coverage-intersecting-triangles.ref.png  | Bin 209 -> 262 bytes
 3 files changed, 1 insertion(+), 1 deletion(-)

commit 2cf2d8e340a325adb205baf8e4bd64e1d1858008
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Sat Apr 4 15:49:18 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Sat Apr 4 15:49:18 2015 -0700

    Fix spellings descibed, indicies, stange

 src/cairo-pdf-surface.c         | 2 +-
 src/drm/cairo-drm-intel-debug.c | 2 +-
 test/zero-alpha.c               | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

commit 71392653803277cec6deea9e7aa4696f8b22dd73
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Wed Mar 18 18:46:35 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Mar 18 18:46:35 2015 -0700

    NEWS: Sp. fix

 NEWS | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 904f1fdc1d7f13d4443bafd760db7395c5030ca7
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Wed Mar 18 15:49:41 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Mar 18 15:49:41 2015 -0700

    surface: Clarify flush documentation

 src/cairo-surface.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit b19b06c46318e2fe80e2c36175075d11bf4a04ee
Author:     Andrea Canciani <ranma42@gmail.com>
AuthorDate: Thu Mar 12 17:02:02 2015 +0100
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Mar 13 13:18:32 2015 -0700

    Harden make-cairo-test-constructors.sh
    
    The make-cairo-test-constructors.sh script executes several commands
    without checking their success. This can lead to undetected errors,
    like those fixed in 86fad78fcd2bf987249890aea4eabcce02a58f45.
    
    The script now exits with an error status if no file is
    input. Moreover, it sets the '-e' flag, so that if a command fails,
    the whole script is immediately terminated with an error.
    
    In the Makefile.am, the script result is now checked and the target
    file is removed upon error. This ensures that the
    'cairo-test-constructors.c' target completes succesfully only if no
    error occurred.
    
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 test/Makefile.am                     | 2 +-
 test/make-cairo-test-constructors.sh | 4 +++-
 2 files changed, 4 insertions(+), 2 deletions(-)

commit ec0153940d694c71324ed0d9cf895ac49ed19674
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Fri Mar 13 13:17:28 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Mar 13 13:18:32 2015 -0700

    Start 1.14.3 development

 cairo-version.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 5182d9bc5e0c8ca9c2943cd249e22fd28f582892
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Wed Mar 11 19:16:38 2015 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Wed Mar 11 19:16:38 2015 +1030

    doc: add index of new symbols in 1.14

 doc/public/cairo-docs.xml | 3 +++
 1 file changed, 3 insertions(+)

commit db6668cd0a836416e74cf6556bfd3e2bc1d3a4d4
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Tue Mar 10 19:55:35 2015 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Mar 10 19:57:19 2015 -0700

    RELEASING:  Update contacts
    
    Add a CC to the cairo@ list itself.
    
    Drop updating of the GNOME dependencies page; this appears to have not
    been updated since 2008.

 RELEASING | 20 ++++++++------------
 1 file changed, 8 insertions(+), 12 deletions(-)

commit 93422b3cb5e0ef8104b8194c8873124ce2f5ea2d
Author:     Bryce Harrington <b.harrington@samsung.com>
AuthorDate: Tue Mar 10 18:42:50 2015 -0700
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Tue Mar 10 18:42:50 2015 -0700

    version: bump for cairo-1.14.2 release

 cairo-version.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 061d54745a0c20b5da08ec4ff8b958d20fd6a143
Author:     Bryce Harrington <b.harrington@samsung.com>
AuthorDate: Tue Mar 10 16:24:37 2015 -0700
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Tue Mar 10 16:24:37 2015 -0700

    KNOWN_ISSUES:  Restore known issues file as a stub
    
    Apparently distcheck requires this file be present.

 KNOWN_ISSUES | 3 +++
 1 file changed, 3 insertions(+)

commit fb41ed34415dd58fe57490f93c6151a4bec483f1
Author:     Bryce Harrington <b.harrington@samsung.com>
AuthorDate: Tue Mar 10 13:08:29 2015 -0700
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Tue Mar 10 13:08:29 2015 -0700

    NEWS: Note about the OS X support

 NEWS | 5 +++++
 1 file changed, 5 insertions(+)

commit 845d2420e0cbfd338bab63764c4fe3c4273ab47e
Author:     Andrea Canciani <ranma42@tartaros.local>
AuthorDate: Tue Mar 10 12:10:35 2015 +0100
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Tue Mar 10 12:42:16 2015 -0700

    Update README with new minimum MacOSX requirements
    
    Since 70cc8f250b5669e757b4f044571ba0f71e3dea9e the quartz backend is
    using some APIs that are not available on MacOSX 10.4 directly
    (i.e. without detecting their availability through dynamic linking).
    This means that the quartz backend does not work anymore on MacOSX
    10.4 and that the 10.5 SDK (or newer) is needed to build.

 README | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 86fad78fcd2bf987249890aea4eabcce02a58f45
Author:     Bryce Harrington <b.harrington@samsung.com>
AuthorDate: Tue Mar 10 12:15:40 2015 -0700
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Tue Mar 10 12:15:40 2015 -0700

    On MacOSX, the sed utility errors out when parsing non-UTF8
    files. Because of this, the generated cairo-test-constructor only
    contained a few tests and the test suite was thus incomplete.
    
    Original patch by Andrea Canciani <ranma42@gmail.com>

 test/composite-integer-translate-over.c | 2 +-
 test/degenerate-dash.c                  | 2 +-
 test/degenerate-path.c                  | 2 +-
 test/long-dashed-lines.c                | 2 +-
 test/reflected-stroke.c                 | 2 +-
 test/user-font-rescale.c                | 4 ++--
 6 files changed, 7 insertions(+), 7 deletions(-)

commit f8407332214ba87bbd652f09ce3618a973f27878
Author:     Andrea Canciani <ranma42@gmail.com>
AuthorDate: Tue Mar 10 12:10:34 2015 +0100
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Tue Mar 10 10:56:00 2015 -0700

    Update KNOWN_ISSUES documentation
    
    The bug mentioned in KNOWN_ISSUES was fixed in
    2b3d8de11a536d668084ea6d2bf295da1d1cdc11, but the documentation was
    not updated. Moreover, the header of KNOWN_ISSUES was 1.10-specific.
    
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 KNOWN_ISSUES | 10 ----------
 1 file changed, 10 deletions(-)

commit c45e323555356da0b509c3bb380ccb08b4dea9db
Author:     Bryce Harrington <b.harrington@samsung.com>
AuthorDate: Tue Mar 10 04:45:18 2015 -0700
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Tue Mar 10 10:55:55 2015 -0700

    NEWS: Finish filling in changes

 NEWS | 27 +++++++++++++++++++++++++--
 1 file changed, 25 insertions(+), 2 deletions(-)

commit 79dbe1bad8089aa3e0b9a9a63443a74cd9e22f32
Author:     Bryce Harrington <b.harrington@samsung.com>
AuthorDate: Sat Mar 7 00:30:40 2015 -0800
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Sat Mar 7 00:30:40 2015 -0800

    NEWS: Update for changes through Nov 2014

 NEWS | 47 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 47 insertions(+)

commit 581f8137052db60d072ee5a4cefdf7292cddab05
Author:     Bryce Harrington <b.harrington@samsung.com>
AuthorDate: Fri Mar 6 23:54:49 2015 -0800
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Fri Mar 6 23:54:49 2015 -0800

    HACKING: Add link to git tutorial and wordsmith a bit

 HACKING | 18 ++++++++----------
 1 file changed, 8 insertions(+), 10 deletions(-)

commit c0458b456007f718747be7fd690e674df5026059
Author:     Bryce Harrington <b.harrington@samsung.com>
AuthorDate: Fri Mar 6 23:31:25 2015 -0800
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Fri Mar 6 23:35:34 2015 -0800

    csi-trace:  Add --version and --help args to utility

 util/cairo-script/csi-trace.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

commit 3a7d411539975728f90b7d0bb55e3bee2e8600bb
Author:     Bryce Harrington <b.harrington@samsung.com>
AuthorDate: Fri Mar 6 22:26:22 2015 -0800
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Fri Mar 6 23:35:34 2015 -0800

    Revert "xlib: Remove queued event from _XReadEvents"
    
    This reverts commit e7fc8f405beeeb1048f69fe22923170a137b805e.

 src/cairo-xlib-surface-shm.c | 5 -----
 1 file changed, 5 deletions(-)

commit c3605bd3adcae1f12731230a1ea599d15e3c8cad
Author:     Bryce Harrington <b.harrington@samsung.com>
AuthorDate: Fri Mar 6 23:29:53 2015 -0800
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Fri Mar 6 23:29:53 2015 -0800

    git-ignore: Add build's test-driver

 build/.gitignore | 2 ++
 1 file changed, 2 insertions(+)

commit 246d5c1d477cc246788f5695a08c4c414a36fbf5
Author:     Bryce Harrington <b.harrington@samsung.com>
AuthorDate: Fri Mar 6 19:14:58 2015 -0800
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Fri Mar 6 19:19:13 2015 -0800

    doc: Drop extraneous para's
    
    These may have been required in the past, but just trip up distcheck
    today.  The generated docs still look fine.

 src/cairo-version.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit e4f6d07efbf37513b1f2341091839d66b94e3355
Author:     Bryce Harrington <b.harrington@samsung.com>
AuthorDate: Fri Mar 6 18:34:07 2015 -0800
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Fri Mar 6 18:34:07 2015 -0800

    gitignore: logs, manuals

 .gitignore | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit e7fc8f405beeeb1048f69fe22923170a137b805e
Author:     Henry (Yu) Song <henry.song@samsung.com>
AuthorDate: Thu Mar 5 00:20:42 2015 +0000
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Thu Mar 5 17:27:14 2015 -0800

    xlib: Remove queued event from _XReadEvents
    
    Following patch fixes a memory leak in xlib surface.
    
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-xlib-surface-shm.c | 5 +++++
 1 file changed, 5 insertions(+)

commit 4e680ff4bb3a5089b2ec40a96f8e292aa3cfe5f4
Author:     Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
AuthorDate: Fri Feb 27 14:25:41 2015 +0100
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Thu Mar 5 17:03:32 2015 -0800

    headers: fix include order for AIX, bug#89354
    
    also for cairo-xcb-private.h

 src/cairo-xcb-private.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 733de40e876f41ae390ae06fdf9789a48651a4e9
Author:     Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
AuthorDate: Fri Feb 27 11:22:04 2015 +0100
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Thu Mar 5 17:03:28 2015 -0800

    headers: fix include order for AIX, bug#89354

 src/cairo-ft-private.h           | 2 +-
 src/cairo-xlib-private.h         | 2 +-
 src/cairo-xlib-surface-private.h | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

commit 94d30d7160bc1dfabac22ffb9cc810ceb9a35ead
Author:     Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
AuthorDate: Thu Feb 26 15:11:05 2015 +0100
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Thu Mar 5 17:03:18 2015 -0800

    perf: fix include order for AIX, bug#89354

 perf/cairo-perf-report.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 15c427bc771e8a7018718eca3855f7de39438457
Author:     Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
AuthorDate: Thu Feb 26 16:00:01 2015 +0100
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Thu Mar 5 17:02:23 2015 -0800

    perf/micro: fix include order for AIX, bug#89354

 perf/micro/disjoint.c              | 2 +-
 perf/micro/hatching.c              | 2 +-
 perf/micro/pattern_create_radial.c | 2 +-
 perf/micro/spiral.c                | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

commit 0916d580db94bccbf8d31cc58a8198a0c1f8b309
Author:     Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
AuthorDate: Thu Feb 26 15:03:43 2015 +0100
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Thu Mar 5 17:02:14 2015 -0800

    test: fix include order for AIX, bug#89354

 test/clip-nesting.c                            | 2 +-
 test/clip-operator.c                           | 2 +-
 test/close-path.c                              | 2 +-
 test/composite-integer-translate-over-repeat.c | 2 +-
 test/composite-integer-translate-over.c        | 2 +-
 test/composite-integer-translate-source.c      | 2 +-
 test/copy-path.c                               | 2 +-
 test/extend-pad-border.c                       | 2 +-
 test/extend-pad-similar.c                      | 2 +-
 test/extend-pad.c                              | 2 +-
 test/extend-reflect.c                          | 2 +-
 test/extended-blend.c                          | 2 +-
 test/mask.c                                    | 2 +-
 test/multi-page.c                              | 4 ++--
 test/operator-clear.c                          | 2 +-
 test/operator-source.c                         | 2 +-
 test/path-append.c                             | 2 +-
 test/pattern-getters.c                         | 2 +-
 test/pdf-features.c                            | 4 ++--
 test/pixman-downscale.c                        | 4 ++--
 test/pixman-rotate.c                           | 4 ++--
 test/ps-features.c                             | 4 ++--
 test/record-extend.c                           | 2 +-
 test/record-mesh.c                             | 2 +-
 test/select-font-no-show-text.c                | 2 +-
 test/self-copy.c                               | 2 +-
 test/source-clip-scale.c                       | 2 +-
 test/source-clip.c                             | 2 +-
 test/surface-pattern-scale-down.c              | 2 +-
 test/surface-pattern-scale-up.c                | 2 +-
 test/surface-pattern.c                         | 2 +-
 test/svg-clip.c                                | 3 ++-
 test/svg-surface.c                             | 3 ++-
 test/trap-clip.c                               | 2 +-
 test/unbounded-operator.c                      | 2 +-
 test/user-font-mask.c                          | 4 ++--
 test/user-font-proxy.c                         | 4 ++--
 test/user-font.c                               | 4 ++--
 test/xcb-snapshot-assert.c                     | 2 +-
 test/xlib-expose-event.c                       | 2 +-
 test/xlib-surface.c                            | 3 ++-
 41 files changed, 52 insertions(+), 49 deletions(-)

commit e9a615a2f94697c64a6702c1e3b24c59b156cc71
Author:     Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
AuthorDate: Thu Feb 26 16:24:55 2015 +0100
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Thu Mar 5 16:57:09 2015 -0800

    define _GETDELIM for getline() on AIX
    
    On AIX 6.1, getdelim() and getline() are not provided by default,
    causing a gcc compilation error.  With _GETDELIM defined, AIX's stdio.h
    header provides definitions for these routines.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=89356
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 perf/cairo-perf-report.c | 2 ++
 1 file changed, 2 insertions(+)

commit f72bd7c7574fc8fdc1f495f3a50111329851edc5
Author:     Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
AuthorDate: Thu Feb 26 15:23:01 2015 +0100
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Thu Mar 5 14:48:28 2015 -0800

    skip MAP_NORESERVE when unsupported
    
    Fixes a compilation on AIX ('MAP_NORESERVE' undeclared)
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=89340
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 test/cairo-test-trace.c    | 4 ++++
 util/cairo-sphinx/sphinx.c | 4 ++++
 2 files changed, 8 insertions(+)

commit ac75ab9f30ef10ee5973d42223f4b51acca93333
Author:     Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
AuthorDate: Thu Feb 26 14:18:30 2015 +0100
Commit:     Bryce Harrington <b.harrington@samsung.com>
CommitDate: Thu Mar 5 12:00:48 2015 -0800

    fix conflicting types for 'sync' on AIX, bug#89338

 src/cairo-surface-observer.c | 12 ++++++------
 src/cairo-xlib-surface-shm.c |  4 ++--
 2 files changed, 8 insertions(+), 8 deletions(-)

commit 70cc8f250b5669e757b4f044571ba0f71e3dea9e
Author:     Andrea Canciani <ranma42@gmail.com>
AuthorDate: Tue Dec 9 16:13:00 2014 +0100
Commit:     Andrea Canciani <ranma42@dhcp-131-114-88-208.di.unipi.it>
CommitDate: Thu Feb 5 15:13:46 2015 +0100

    quartz: Remove call to obsolete CGFontGetGlyphPath
    
    CGFontGetGlyphPath was not public and is not available anymore on
    modern OSX/iOS systems. The same functionality is available through
    the CoreText API since OSX 10.5.
    
    Based on a patch by Simon Cozens.
    
    Fixes https://bugs.freedesktop.org/show_bug.cgi?id=84324

 src/cairo-quartz-font.c | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

commit 91f128bf7a1233a7fc2e164f95279987e32a3532
Author:     Massimo Valentini <mvalentini@src.gnome.org>
AuthorDate: Wed Sep 11 18:10:38 2013 +0200
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Feb 2 16:33:06 2015 -0800

    win32:  Fix crash from win32 surface's image size too small
    
    Beginning in 1.12, a crash can occur when the win32 surface's image size
    does not cover the entire surface (e.g. due to clipping regions).
    
    This patch enlarges the fallback surface created of the amount
    necessary not to write past the end of the DIB. It assumes that
    Clip applied to an HDC are clamped to (0,0,width,height) of the HDC.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=53121
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/win32/cairo-win32-display-surface.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit cca8b1960b0091c53235d9dc4cde8a33010c5bbf
Author:     Emanuele Aina <emanuele.aina@collabora.com>
AuthorDate: Tue Dec 16 14:58:55 2014 +0100
Commit:     Andrea Canciani <ranma42@gmail.com>
CommitDate: Tue Jan 20 18:14:52 2015 +0100

    cairo-trace: Fix duplicated surface push on similar-image
    
    The current code results in trace lines with the source surface being
    pushed on the stack two times instead of one:
    
    s1 s1 //ARGB32 48 48 similar-image % s2
    
    Instead of:
    
    s1 //ARGB32 48 48 similar-image % s2
    
    This greatly confuses later commands when the script was replayed,
    causing traces for trivial GTK3 programs to be unplayable, usually
    yielding the following error:
    "invalid value (typically too big) for the size of the input (surface, pattern, etc.)"
    
    Drop the duplicated entry from the trace line printed by the
    cairo_surface_create_similar_image() override.
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=73580
    Signed-off-by: Emanuele Aina <emanuele.aina@collabora.com>

 util/cairo-trace/trace.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit ebd23accc8722db838f6db12f7489f16fe6016ce
Author:     Uli Schlachter <psychon@znc.in>
AuthorDate: Sat Dec 6 17:04:07 2014 +0100
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Sat Jan 17 20:12:39 2015 +0100

    xlib-xcb: Don't be lazy and use the real xcb_screen_t
    
    Signed-off-by: Uli Schlachter <psychon@znc.in>

 src/cairo-xlib-xcb-surface.c | 33 ++++++++++++++++++---------------
 1 file changed, 18 insertions(+), 15 deletions(-)

commit b47209a03feeed2172f35a6d79ba1176fedd5e17
Author:     Uli Schlachter <psychon@znc.in>
AuthorDate: Sat Dec 6 16:04:46 2014 +0100
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Sat Jan 17 20:11:59 2015 +0100

    xcb: Query the display's subpixel order via RENDER
    
    With commit e691d242, the xcb backend started parsing the resources, just like
    cairo-xlib does. One behavior from cairo-xlib was missing: If no Xft.rgba
    property was specified, cairo-xlib defaults to the screen's subpixel order.
    This commit brings that last bit of functionality to cairo-xcb (but currently
    disabled due to commit e0c0a673).
    
    This commits adds a new array to cairo_xcb_connection_t that contains the
    subpixel order for each screen. There is also a new member in cairo_xcb_screen_t
    which contains the subpixel order of that screen and which is initialized from
    the array when the screen is constructed. With this in place, the
    resource-parsing code can just pick the subpixel order from the screen if
    needed.
    
    Signed-off-by: Uli Schlachter <psychon@znc.in>

 src/cairo-xcb-connection.c | 19 +++++++++++++++++++
 src/cairo-xcb-private.h    |  4 +++-
 src/cairo-xcb-resources.c  | 33 +++++----------------------------
 src/cairo-xcb-screen.c     | 16 ++++++++++++++++
 4 files changed, 43 insertions(+), 29 deletions(-)

commit 02e4efc961be40d266d4df0acaf3271219529017
Author:     Andrea Canciani <ranma42@gmail.com>
AuthorDate: Mon Dec 22 12:49:00 2014 +0100
Commit:     Andrea Canciani <ranma42@gmail.com>
CommitDate: Sat Jan 3 14:59:51 2015 +0100

    font: Actually perform destruction of fonts
    
    Commit 337ab1f8d9e29086bfb4001508b28835b41c6390 introduced delayed
    font destruction to overcome a race, but prevented the correct cleanup
    of the font cache.
    
    This caused fonts to stay in the cache and caused a crash in the
    api-special-cases (when running the test suite with -f).
    
    Fixes api-special-cases,
    https://bugs.freedesktop.org/show_bug.cgi?id=87567

 src/cairo-font-face.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

commit 028d286e611d46755bb3d1e9932805de2ec35765
Author:     Chris Wilson <chris@chris-wilson.co.uk>
AuthorDate: Wed Dec 31 10:54:43 2014 +0000
Commit:     Chris Wilson <chris@chris-wilson.co.uk>
CommitDate: Wed Dec 31 11:01:45 2014 +0000

    xlib: Bump reference count for recording surface replays
    
    The snapshot takes a reference to the target recording surface in order
    to enable it for use by multiple treads. In order to balance this, the
    other two sources of recording surface must also take a reference and
    for us to release that reference after the replay.
    
    Otherwise, we end up with a memory leak:
    
    ==1== 1,392 bytes in 3 blocks are definitely lost in loss record 1 of 7
    ==1==    at 0x4A06BCF: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
    ==1==    by 0x4C7042D: _cairo_recording_surface_snapshot (cairo/src/cairo-recording-surface.c:1427)
    ==1==    by 0x4C842BE: _cairo_surface_snapshot_copy_on_write (cairo/src/cairo-surface-snapshot.c:189)
    ==1==    by 0x4C7E7E0: _cairo_surface_detach_snapshot (cairo/src/cairo-surface.c:348)
    ==1==    by 0x4C7E55B: _cairo_surface_detach_snapshots (cairo/src/cairo-surface.c:333)
    ==1==    by 0x4C7E55B: _cairo_surface_flush (cairo/src/cairo-surface.c:1545)
    ==1==    by 0x4C7E6CC: _cairo_surface_finish_snapshots (cairo/src/cairo-surface.c:1017)
    ==1==    by 0x4C7E6CC: cairo_surface_destroy (cairo/src/cairo-surface.c:961)
    ==1==    by 0x4C625A7: cairo_pattern_destroy (cairo/src/cairo-pattern.c:1131)
    ==1==    by 0x4C3FAC6: _cairo_gstate_fini (cairo/src/cairo-gstate.c:225)
    ==1==    by 0x4C3C68C: _cairo_default_context_fini (cairo/src/cairo-default-context.c:75)
    ==1==    by 0x4C3C708: _cairo_default_context_destroy (cairo/src/cairo-default-context.c:93)
    ==1==    by 0x43E576: record_get (cairo/test/record-extend.c:158)
    ==1==    by 0x43E576: record_replay (cairo/test/record-extend.c:173)
    ==1==    by 0x40E22D: cairo_test_for_target (cairo/test/cairo-test.c:929)
    ==1==    by 0x40E22D: _cairo_test_context_run_for_target (cairo/test/cairo-test.c:1532)
    ==1==    by 0x40B6C0: _cairo_test_runner_draw (cairo/test/cairo-test-runner.c:255)
    ==1==    by 0x40B6C0: main (cairo/test/cairo-test-runner.c:937)
    
    Reported-by: Massimo Valentini <mvalentini@src.gnome.org>
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=87898
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>

 src/cairo-xlib-source.c | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

commit 4a225fca5f121c31ddaa0af80a13bf95a7f21a5b
Author:     Andrea Canciani <ranma42@gmail.com>
AuthorDate: Thu Nov 20 17:22:30 2014 +0100
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Sat Dec 6 17:38:02 2014 -0800

    test: Free test list
    
    When running the cairo-test-suite, valgrind reports each of the
    registered test as a leak, because they are _list_prepend()'ed, but
    the tests list is never _list_free()'d.
    
    Fixes the following valgrind error:
    
    malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    cairo_boilerplate_xmalloc (cairo-boilerplate-system.c:47)
    cairo_test_register (cairo-test-runner.c:131)
    _cairo_test_runner_register_tests (cairo-test-constructors.c:1112)
    main (cairo-test-runner.c:714)
    
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 test/cairo-test-runner.c | 1 +
 1 file changed, 1 insertion(+)

commit 9806f437b42056124314976f35a2d32cefa508a8
Author:     Andrea Canciani <ranma42@gmail.com>
AuthorDate: Thu Nov 20 17:22:31 2014 +0100
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Sat Dec 6 17:38:02 2014 -0800

    test: Release owned pattern
    
    The pattern created by cairo_pattern_create_rgb() is owned by the
    caller, hence it needs to be released.
    
    Fixes the following valgrind error:
    
    malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    _cairo_pattern_create_solid (cairo-pattern.c:605)
    _cairo_pattern_create_in_error (cairo-pattern.c:628)
    cairo_pop_group (cairo.c:552)
    test_cairo_push_group (api-special-cases.c:157)
    preamble (api-special-cases.c:1766)
    main (cairo-test-runner.c:228)
    
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 test/api-special-cases.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit 40201f4b1ab52c85922b2b7ae05dd862159a1aa0
Author:     Uli Schlachter <psychon@znc.in>
AuthorDate: Fri Dec 5 14:43:26 2014 +0100
Commit:     Uli Schlachter <psychon@znc.in>
CommitDate: Sat Dec 6 10:25:30 2014 +0100

    tor-scan-converter: Correctly align 64bit types
    
    On 32bit SPARC the scan converter was causing a SIGBUS due to an unaligned
    memory access while accessing an int64_t. This memory accessing was to struct
    quorem's rem member.
    
    This crash occurred because the tor-scan-converter contains its own
    implementation of a memory pool. This implementation only guarantees an
    alignment of sizeof(void *), which is less than what a 64 bit type requires on
    32bit platforms. This 4 byte alignment is guaranteed, because struct _pool_chunk
    (which is the struct that is used for managing free space) contains elements of
    that size and so the size of that struct is a multiple of this size as well.
    
    This problem was introduced with commit 03c3d4b7c15.
    
    To fix this problem, this commit introduces a int64_t member to struct
    _pool_chunk that marks the beginning of the free data space. Thanks to this, the
    compiler ensures proper alignment and sizeof(struct _pool_chunk) becomes a
    multiple of 8.
    
    However, previously the end of the struct marked the beginning of the data and
    sizeof() was used for correctly calculating offsets to the data section. So,
    just adding such a member would work, but would also waste some memory. To avoid
    this, this commit also changes the rest of the pool implementation to
    accommodate.
    
    Reported-by: Nicolas Setton <setton@adacore.com>
    Signed-off-by: Uli Schlachter <psychon@znc.in>
    Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-tor-scan-converter.c | 38 +++++++++++++++++++++++---------------
 1 file changed, 23 insertions(+), 15 deletions(-)

commit 5c82d91a5e15d29b1489dcb413b24ee7fdf59934
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Wed Dec 3 19:28:15 2014 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Dec 5 19:16:43 2014 -0800

    image: Fix crash in _fill_xrgb32_lerp_opaque_spans
    
    If a span length is negative don't go out of bounds processing the fill
    data.
    
    Patch thanks to Ilya Sakhnenko <ilia.softway@gmail.com> on mailing list.
    
    Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>

 src/cairo-image-compositor.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 56da7adc3c85be0325481ecd23746dc49e60d239
Author:     Hans Breuer <hans@breuer.org>
AuthorDate: Thu Oct 16 20:51:07 2014 +0200
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Nov 20 12:26:52 2014 -0800

    win32: Fix compilation of 'cairo-path-stroke-traps.c' with MSVC8
    
    "The issue here is that Visual Studio 2005+ is quite strict on type
    conversions (so it wants code to be clear enough on conversions)."
    
    Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=84908

 src/cairo-path-stroke-traps.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

commit 2c5af590ddbb08e0a46b7e37c5f0230b1805cd37
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Thu Nov 20 12:19:47 2014 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Nov 20 12:22:06 2014 -0800

    Refactor ARRAY_LENGTH macro definitions in test code

 boilerplate/cairo-boilerplate-pdf.c     | 2 --
 boilerplate/cairo-boilerplate-private.h | 2 +-
 boilerplate/cairo-boilerplate.h         | 4 ++++
 perf/cairo-perf.h                       | 4 ----
 test/any2ppm.c                          | 2 +-
 test/cairo-test.c                       | 4 ----
 test/cairo-test.h                       | 4 ----
 7 files changed, 6 insertions(+), 16 deletions(-)

commit 7edc5a8844b96862b866901568eb83fa56f4755b
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Fri Nov 14 18:10:16 2014 -0800
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Nov 20 12:22:06 2014 -0800

    test: Use ARRAY_LENGTH macro

 test/bug-spline.c       | 3 +--
 test/caps-tails-curve.c | 2 +-
 test/tiger.c            | 2 +-
 3 files changed, 3 insertions(+), 4 deletions(-)

commit ae608035c7b7133826a608d45e067c3875a1aceb
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Thu Nov 20 10:16:06 2014 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Thu Nov 20 10:16:06 2014 +1030

    pdf-operators: fix bug with RTL text
    
    bug 86461

 src/cairo-pdf-operators.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 121f384c0e231c9c5d9c937b216d342bfc7810a6
Author:     Ravi Nanjundappa <nravi.n@samsung.com>
AuthorDate: Tue Nov 11 15:07:57 2014 +0530
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Nov 12 10:38:52 2014 -0800

    Fix one more warning from check-doc-syntax.sh
    
    $ ./check-doc-syntax.sh
    Checking documentation for incorrect syntax
    ./cairo-pattern.c (3342): ERROR: Will invalid doc id (should be 'cairo_...:')
    
    The proposed changes fixes the warning about the documentation style used in cairo.
    
    Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>

 src/cairo-pattern.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit a03f2ff72054c9530f98738aac729354a3f56102
Author:     Adam Jackson <ajax@redhat.com>
AuthorDate: Fri Oct 31 13:21:15 2014 -0400
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Nov 6 12:56:18 2014 -0800

    xcb: Don't crash when swapping a 0-sized glyph
    
    malloc(0) needn't return NULL, and on glibc, doesn't.  Then we encounter
    a loop of the form do { ... } while (--c), which doesn't do quite what
    you were hoping for when c is initially 0.
    
    Since there's nothing to swap in this case, just bomb out.
    
    Signed-off-by: Adam Jackson <ajax@redhat.com>

 src/cairo-xcb-surface-render.c | 6 ++++++
 1 file changed, 6 insertions(+)

commit 3cf862f6d973755cd9824c2224fbe0a623c47ff1
Author:     Adam Jackson <ajax@redhat.com>
AuthorDate: Fri Oct 31 13:21:14 2014 -0400
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Nov 6 12:56:13 2014 -0800

    xlib: Don't crash when swapping a 0-sized glyph
    
    malloc(0) needn't return NULL, and on glibc, doesn't.  Then we encounter
    a loop of the form do { ... } while (--c), which doesn't do quite what
    you were hoping for when c is initially 0.
    
    Since there's nothing to swap in this case, just bomb out.
    
    Signed-off-by: Adam Jackson <ajax@redhat.com>

 src/cairo-xlib-render-compositor.c | 6 ++++++
 1 file changed, 6 insertions(+)

commit adbeb3d53c6c6e8ddcc63988200da4c5c9627717
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Fri Oct 31 22:43:32 2014 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Fri Oct 31 22:55:14 2014 +1030

    Improve performance of cpu_to_be32 and be32_to_cpu
    
    By switching to the more common form, gcc and clang emit a single
    bswap instruction and truetype subsetting of large fonts runs about
    15% faster.

 src/cairoint.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit e4b78424ac82588bcb9b855d5b6d5872050d33f9
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Fri Oct 31 19:06:42 2014 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Fri Oct 31 19:26:05 2014 +1030

    pdf-operators: only wrap text strings for PS output
    
    since the PS Document Structing Conventions impose a 255 character
    line limit. PDF does not require wrapping.
    
    pdf-operators is designed to emit the same output for PS and PDF.
    Unfortunately some PDF interpreters don't like strings split with
    '\\\n' and some PS interpreters don't like strings split with ')('.
    So we are forced to make pdf-operators handling string wrapping
    differently for PDF and PS.
    
    Bug 85662

 src/cairo-pdf-operators-private.h       |  4 +++-
 src/cairo-pdf-operators.c               | 16 ++++++++++------
 src/cairo-pdf-surface.c                 |  9 ++++++---
 src/cairo-ps-surface.c                  |  9 ++++++---
 src/cairo-type3-glyph-surface-private.h |  3 ++-
 src/cairo-type3-glyph-surface.c         |  6 ++++--
 6 files changed, 31 insertions(+), 16 deletions(-)

commit b4e218c3e8402e149115a59406796b751118237f
Author:     Bryce Harrington <bryce@bryceharrington.org>
AuthorDate: Tue Oct 21 15:26:34 2014 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Oct 29 15:45:17 2014 -0700

    Drop the target-specific huge-radial.pdf.*.ref.png images
    
    These two images are mis-rendered (clearly evident from visual
    inspection).  By removing them, the test will fall back to the more
    general format-specific images, huge-radial.argb32.ref.png and
    huge-radial.rgb24.ref.png.
    
    Note that the huge-radial.pdf tests still fail to pass, but the pdiff
    looks more sensible.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=66218
    
    Signed-off-by: Bryce Harrington <bryce@bryceharrington.org>

 test/reference/huge-radial.pdf.argb32.ref.png | Bin 177382 -> 0 bytes
 test/reference/huge-radial.pdf.rgb24.ref.png  | Bin 225358 -> 0 bytes
 2 files changed, 0 insertions(+), 0 deletions(-)

commit f7d0f80d2d880bea6b2fdbff579b21100355c1be
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Wed Oct 29 15:27:19 2014 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Wed Oct 29 15:27:19 2014 -0700

    RELEASING: Be explicit as to which tag is pushed

 RELEASING | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit caa4c9fdeb3aecd9a4288114e75d24ec931cd01b
Author:     Ravi Nanjundappa <nravi.n@samsung.com>
AuthorDate: Mon Oct 27 10:54:13 2014 +0530
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Tue Oct 28 22:24:55 2014 -0700

    Fix warnings from check-doc-syntax.sh
    
    $ ./check-doc-syntax.sh
    Checking documentation for incorrect syntax
    ./cairo-pattern.c (3346): ERROR: Will bad line: ' */'
    ./cairo-pattern.c (3346): ERROR: Will documentation comment not closed with **/
    ./cairo-pattern.c (3422): ERROR: _cairo_pattern_sampled_area invalid doc id (should be 'cairo_...:')
    
    The warnings are about the documentation style used in cairo
    
    Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>

 src/cairo-pattern.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit f9b65ae1fc91bc558a01c2ad7be5a121c6f10818
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Tue Oct 21 22:35:12 2014 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Tue Oct 21 22:42:34 2014 +1030

    build: fix regression on mingw
    
    7cfebce1 removed the filename extension for executables.
    
    Patch from http://sourceforge.net/p/inkscape/mailman/message/32939144/
    
    Bug 85120

 build/aclocal.float.m4 | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 2de69581c28bf115852037ca41eba13cb7335976
Author:     Massimo Valentini <mvalentini@src.gnome.org>
AuthorDate: Sun Oct 19 09:19:10 2014 +0200
Commit:     Chris Wilson <chris@chris-wilson.co.uk>
CommitDate: Sun Oct 19 12:47:23 2014 +0100

    tor-scan-converter: can't do_fullrow when intersection in row + 0.5subrow
    
    the active edges list must be left sorted at the next possible use
    and since full_row does not deal with intersections it is not usable
    when there is an intersection in the top half of the next row first
    subrow
    
    Reported-and-tested-by: Matthew Leach
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=85151
    Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>

 src/cairo-tor-scan-converter.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 51892e91d40175d790541ac7f2e5706648649a5e
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Sat Oct 18 19:10:32 2014 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Sat Oct 18 19:10:32 2014 -0700

    Revert "Add execution bit for make-cairo-test-constructors.sh"
    
    This reverts commit 5c17bf1a33b8e76edeb23121342e0f163fe9d6ad.
    
    Script is sourced in the makefile, no need for +x.

 test/make-cairo-test-constructors.sh | 0
 1 file changed, 0 insertions(+), 0 deletions(-)

commit 1013d18a01aa10dadb8996b9a327eb39b219acbd
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sun Oct 19 12:08:55 2014 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Oct 19 12:08:55 2014 +1030

    pdf: fix compiler warning

 src/cairo-pdf-surface.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 99a35dd273f3deb4ae54310f1ed1746bfd9fae70
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Sun Oct 19 11:34:34 2014 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Sun Oct 19 11:54:25 2014 +1030

    CFF: Fix unaligned access
    
    Debian bug 712836 reported bus errors in cff subsetting when
    running on a sparc. This is because unlike truetype, all data
    in the compact font format is not aligned.
    
    https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=712836

 src/cairo-cff-subset.c | 35 +++++++++++++++++++----------------
 src/cairo-image-info.c | 32 +++++++++++++-------------------
 src/cairoint.h         | 26 ++++++++++++++++++++++++++
 3 files changed, 58 insertions(+), 35 deletions(-)

commit 5c17bf1a33b8e76edeb23121342e0f163fe9d6ad
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Fri Oct 17 12:04:56 2014 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Fri Oct 17 15:50:31 2014 -0700

    Add execution bit for make-cairo-test-constructors.sh
    
    This is referenced in the Makefile but not set as executable

 test/make-cairo-test-constructors.sh | 0
 1 file changed, 0 insertions(+), 0 deletions(-)

commit f05e9332b389d33b5ae654e04576ccf2f389786f
Author:     Adrian Johnson <ajohnson@redneon.com>
AuthorDate: Fri Oct 17 22:04:39 2014 +1030
Commit:     Adrian Johnson <ajohnson@redneon.com>
CommitDate: Fri Oct 17 22:04:39 2014 +1030

    Update mime type documentation.

 src/cairo-surface.c | 28 +++++++++++++++++++++++++++-
 1 file changed, 27 insertions(+), 1 deletion(-)

commit 9102c0b0af808e52908e4f03bd9db479339c7b7e
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Thu Oct 16 11:41:40 2014 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Thu Oct 16 11:41:40 2014 -0700

    RELEASING:  Update tags push command
    
    I couldn't get the documented command to do diddly.  Running
    `git push --tags` achieved what I think was intended.

 RELEASING | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 92bc5376a82b618d11451c1ca088fbb0d37ca270
Author:     Bryce Harrington <bryce@osg.samsung.com>
AuthorDate: Mon Oct 13 19:57:09 2014 -0700
Commit:     Bryce Harrington <bryce@osg.samsung.com>
CommitDate: Mon Oct 13 19:57:09 2014 -0700

    Start 1.14.1 development

 cairo-version.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
