<pre style='margin:0'>
Ryan Schmidt (ryandesign) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/b014cd587951f331a52e0243ad5882991fd67487">https://github.com/macports/macports-ports/commit/b014cd587951f331a52e0243ad5882991fd67487</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new b014cd58795 cairo-devel: Update to 1.17.6
</span>b014cd58795 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit b014cd587951f331a52e0243ad5882991fd67487
</span>Author: Ryan Schmidt <ryandesign@macports.org>
AuthorDate: Fri Feb 3 23:08:51 2023 -0600

<span style='display:block; white-space:pre;color:#404040;'>    cairo-devel: Update to 1.17.6
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    See: https://trac.macports.org/ticket/66785
</span>---
 graphics/cairo-devel/Portfile                      |  18 +-
 graphics/cairo-devel/files/dont-check-stderr.patch |  26 +-
 .../files/patch-cairo-quartz-surfaces.diff         | 295 ---------------------
 graphics/cairo-devel/files/patch-configure.diff    |  13 +-
 4 files changed, 26 insertions(+), 326 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/graphics/cairo-devel/Portfile b/graphics/cairo-devel/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 551f7f786d7..3cc76fc0cc5 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/graphics/cairo-devel/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/graphics/cairo-devel/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -10,11 +10,11 @@ PortGroup                   xcodeversion 1.0
</span> name                        cairo-devel
 conflicts                   cairo
 set my_name                 cairo
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version                     1.17.4
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-revision                    2
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums                   rmd160  7a440359be60f8cb971e9d538973ac29613e143e \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                            sha256  74b24c1ed436bbe87499179a3b27c43f4143b8676d8ad237a6fa787401959705 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                            size    41834076
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version                     1.17.6
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision                    0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums                   rmd160  b02bab53ca0f77bc3b8d095a6bfde56d7ab8c988 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            sha256  4eebc4c2bad0402bc3f501db184417094657d111fb6c06f076a82ea191fe1faf \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                            size    35055900
</span> 
 categories                  graphics
 maintainers                 {ryandesign @ryandesign} {mascguy @mascguy}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -52,14 +52,6 @@ patchfiles-append           patch-configure.diff
</span> # Don't check stderr in configure tests.
 patchfiles-append           dont-check-stderr.patch
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# Fix crash on macOS Big Sur and newer.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# https://gitlab.freedesktop.org/cairo/cairo/-/issues/420
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# https://gitlab.freedesktop.org/cairo/cairo/-/merge_requests/52
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# https://gitlab.freedesktop.org/cairo/cairo/-/commit/ba2afdcacf42eccf263b39efc77b85f3a65dcd74
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# https://gitlab.freedesktop.org/cairo/cairo/-/merge_requests/119
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# https://gitlab.freedesktop.org/cairo/cairo/-/commit/38e486b34d435130f2fb38c429e6016c3c82cd53
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles-append           patch-cairo-quartz-surfaces.diff
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> # https://trac.macports.org/ticket/34137
 compiler.blacklist-append   {clang < 318.0.61}
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/graphics/cairo-devel/files/dont-check-stderr.patch b/graphics/cairo-devel/files/dont-check-stderr.patch
</span><span style='display:block; white-space:pre;color:#808080;'>index 0ac97552fd8..1d973fd7db9 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/graphics/cairo-devel/files/dont-check-stderr.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/graphics/cairo-devel/files/dont-check-stderr.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -6,9 +6,9 @@ https://gitlab.freedesktop.org/cairo/cairo/-/issues/121
</span> Updated version of this patch:
 
 https://bugs.freedesktop.org/show_bug.cgi?id=30910#c6
<span style='display:block; white-space:pre;background:#ffe0e0;'>---- configure.orig      2020-11-27 20:18:15.000000000 -0600
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ configure      2021-01-24 22:11:20.000000000 -0600
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -18946,7 +18946,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- configure.orig 2023-02-03 20:33:05.000000000 -0600
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ configure      2023-02-03 20:38:32.000000000 -0600
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -14998,7 +14998,7 @@
</span>  rm -f core conftest.err conftest.$ac_objext \
      conftest$ac_exeext conftest.$ac_ext
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -17,7 +17,7 @@ https://bugs.freedesktop.org/show_bug.cgi?id=30910#c6
</span>           cairo_cc_flag=no
        fi
  
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -18993,7 +18993,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15045,7 +15045,7 @@
</span>  rm -f core conftest.err conftest.$ac_objext \
      conftest$ac_exeext conftest.$ac_ext
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -26,7 +26,7 @@ https://bugs.freedesktop.org/show_bug.cgi?id=30910#c6
</span>           cairo_cc_flag=no
        fi
  
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -19044,7 +19044,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15096,7 +15096,7 @@
</span>  rm -f core conftest.err conftest.$ac_objext \
      conftest$ac_exeext conftest.$ac_ext
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -35,7 +35,7 @@ https://bugs.freedesktop.org/show_bug.cgi?id=30910#c6
</span>           cairo_cc_flag=no
        fi
  
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -19091,7 +19091,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15143,7 +15143,7 @@
</span>  rm -f core conftest.err conftest.$ac_objext \
      conftest$ac_exeext conftest.$ac_ext
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -44,7 +44,7 @@ https://bugs.freedesktop.org/show_bug.cgi?id=30910#c6
</span>           cairo_cc_flag=no
        fi
  
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -19160,7 +19160,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15212,7 +15212,7 @@
</span>  rm -f core conftest.err conftest.$ac_objext \
      conftest$ac_exeext conftest.$ac_ext
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -53,7 +53,7 @@ https://bugs.freedesktop.org/show_bug.cgi?id=30910#c6
</span>           cairo_cc_flag=no
        fi
  
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -19216,7 +19216,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -15268,7 +15268,7 @@
</span>  rm -f core conftest.err conftest.$ac_objext \
      conftest$ac_exeext conftest.$ac_ext
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -62,7 +62,7 @@ https://bugs.freedesktop.org/show_bug.cgi?id=30910#c6
</span>           cairo_cc_flag=no
        fi
  
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -20783,7 +20783,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -16852,7 +16852,7 @@
</span>  rm -f core conftest.err conftest.$ac_objext \
      conftest$ac_exeext conftest.$ac_ext
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -71,7 +71,7 @@ https://bugs.freedesktop.org/show_bug.cgi?id=30910#c6
</span>           cairo_cc_flag=no
        fi
  
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -20830,7 +20830,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -16899,7 +16899,7 @@
</span>  rm -f core conftest.err conftest.$ac_objext \
      conftest$ac_exeext conftest.$ac_ext
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -80,7 +80,7 @@ https://bugs.freedesktop.org/show_bug.cgi?id=30910#c6
</span>           cairo_cc_flag=no
        fi
  
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -34129,7 +34129,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -27730,7 +27730,7 @@
</span>  rm -f core conftest.err conftest.$ac_objext \
      conftest$ac_exeext conftest.$ac_ext
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -89,7 +89,7 @@ https://bugs.freedesktop.org/show_bug.cgi?id=30910#c6
</span>           cairo_cc_flag=no
        fi
  
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -34248,7 +34248,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -27849,7 +27849,7 @@
</span>  rm -f core conftest.err conftest.$ac_objext \
      conftest$ac_exeext conftest.$ac_ext
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -98,7 +98,7 @@ https://bugs.freedesktop.org/show_bug.cgi?id=30910#c6
</span>           cairo_cc_flag=no
        fi
  
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -34329,7 +34329,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -27930,7 +27930,7 @@
</span>  rm -f core conftest.err conftest.$ac_objext \
      conftest$ac_exeext conftest.$ac_ext
  
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/graphics/cairo-devel/files/patch-cairo-quartz-surfaces.diff b/graphics/cairo-devel/files/patch-cairo-quartz-surfaces.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 3e1a8e3254c..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/graphics/cairo-devel/files/patch-cairo-quartz-surfaces.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,295 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- src/cairo-quartz-image-surface.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ src/cairo-quartz-image-surface.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -50,10 +50,9 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #define SURFACE_ERROR_INVALID_FORMAT (_cairo_surface_create_in_error(_cairo_error(CAIRO_STATUS_INVALID_FORMAT)))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- static void
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--DataProviderReleaseCallback (void *info, const void *data, size_t size)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+DataProviderReleaseCallback (void *image_info, const void *data, size_t size)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    cairo_surface_t *surface = (cairo_surface_t *) info;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    cairo_surface_destroy (surface);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    free (image_info);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- static cairo_surface_t *
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -88,9 +87,8 @@ _cairo_quartz_image_surface_finish (void *asurface)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     cairo_quartz_image_surface_t *surface = (cairo_quartz_image_surface_t *) asurface;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    /* the imageSurface will be destroyed by the data provider's release callback */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     CGImageRelease (surface->image);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    cairo_surface_destroy ( (cairo_surface_t*) surface->imageSurface);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     return CAIRO_STATUS_SUCCESS;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -147,24 +145,29 @@ _cairo_quartz_image_surface_flush (void *asurface,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     cairo_quartz_image_surface_t *surface = (cairo_quartz_image_surface_t *) asurface;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     CGImageRef oldImage = surface->image;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     CGImageRef newImage = NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    void *image_data;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    const unsigned int size = surface->imageSurface->height * surface->imageSurface->stride;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     if (flags)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   return CAIRO_STATUS_SUCCESS;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     /* XXX only flush if the image has been modified. */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    /* To be released by the ReleaseCallback */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    cairo_surface_reference ((cairo_surface_t*) surface->imageSurface);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    image_data = _cairo_malloc_ab ( surface->imageSurface->height,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                              surface->imageSurface->stride);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    if (unlikely (!image_data))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  return _cairo_error (CAIRO_STATUS_NO_MEMORY);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    memcpy (image_data, surface->imageSurface->data,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+      surface->imageSurface->height * surface->imageSurface->stride);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     newImage = CairoQuartzCreateCGImage (surface->imageSurface->format,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                                    surface->imageSurface->width,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                                    surface->imageSurface->height,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                                    surface->imageSurface->stride,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                                   surface->imageSurface->data,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                                   image_data,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                                    TRUE,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                                    NULL,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                                    DataProviderReleaseCallback,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                                   surface->imageSurface);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                                   image_data);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     surface->image = newImage;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     CGImageRelease (oldImage);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -308,7 +311,7 @@ cairo_quartz_image_surface_create (cairo_surface_t *surface)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     cairo_image_surface_t *image_surface;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     int width, height, stride;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     cairo_format_t format;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    unsigned char *data;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    void *image_data;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     if (surface->status)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   return surface;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -321,7 +324,6 @@ cairo_quartz_image_surface_create (cairo_surface_t *surface)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     height = image_surface->height;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     stride = image_surface->stride;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     format = image_surface->format;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    data = image_surface->data;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     if (!_cairo_quartz_verify_surface_size(width, height))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   return SURFACE_ERROR_INVALID_SIZE;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -338,20 +340,21 @@ cairo_quartz_image_surface_create (cairo_surface_t *surface)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     memset (qisurf, 0, sizeof(cairo_quartz_image_surface_t));
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    /* In case the create_cgimage fails, this ref will
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--     * be released via the callback (which will be called in
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--     * case of failure.)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--     */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    cairo_surface_reference (surface);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    image_data = _cairo_malloc_ab (height, stride);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    if (unlikely (!image_data)) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  free(qisurf);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  return SURFACE_ERROR_NO_MEMORY;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    memcpy (image_data, image_surface->data, height * stride);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     image = CairoQuartzCreateCGImage (format,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                                 width, height,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                                 stride,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                                data,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                                image_data,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                                 TRUE,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                                 NULL,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                                 DataProviderReleaseCallback,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                                image_surface);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                                image_data);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     if (!image) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   free (qisurf);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -368,7 +371,7 @@ cairo_quartz_image_surface_create (cairo_surface_t *surface)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     qisurf->height = height;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     qisurf->image = image;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    qisurf->imageSurface = image_surface;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    qisurf->imageSurface = (cairo_image_surface_t*) cairo_surface_reference(surface);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     return &qisurf->base;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -381,7 +384,7 @@ cairo_quartz_image_surface_get_image (cairo_surface_t *asurface)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     /* Throw an error for a non-quartz surface */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     if (! _cairo_surface_is_quartz (asurface)) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        return _cairo_surface_create_in_error (_cairo_error (CAIRO_STATUS_SURFACE_TYPE_MISMATCH));
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        return SURFACE_ERROR_TYPE_MISMATCH;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     return (cairo_surface_t*) surface->imageSurface;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- src/cairo-quartz-surface.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ src/cairo-quartz-surface.c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -778,20 +778,10 @@ CairoQuartzCreateGradientFunction (const cairo_gradient_pattern_t *gradient,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        &gradient_callbacks);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--/* Obtain a CGImageRef from a #cairo_surface_t * */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--typedef struct {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    cairo_surface_t *surface;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    cairo_image_surface_t *image_out;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    void *image_extra;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--} quartz_source_image_t;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- static void
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- DataProviderReleaseCallback (void *info, const void *data, size_t size)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    quartz_source_image_t *source_img = info;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    _cairo_surface_release_source_image (source_img->surface, source_img->image_out, source_img->image_extra);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    free (source_img);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    free (info);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- static cairo_status_t
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -803,8 +793,9 @@ _cairo_surface_to_cgimage (cairo_surface_t       *source,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                      CGImageRef            *image_out)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     cairo_status_t status;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    quartz_source_image_t *source_img;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     cairo_image_surface_t *image_surface;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    void *image_data, *image_extra;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    cairo_bool_t acquired = FALSE;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     if (source->backend && source->backend->type == CAIRO_SURFACE_TYPE_QUARTZ_IMAGE) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   cairo_quartz_image_surface_t *surface = (cairo_quartz_image_surface_t *) source;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -826,19 +817,12 @@ _cairo_surface_to_cgimage (cairo_surface_t       *source,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    source_img = _cairo_malloc (sizeof (quartz_source_image_t));
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    if (unlikely (source_img == NULL))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  return _cairo_error (CAIRO_STATUS_NO_MEMORY);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    source_img->surface = source;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     if (source->type == CAIRO_SURFACE_TYPE_RECORDING) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   image_surface = (cairo_image_surface_t *)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-       cairo_image_surface_create (format, extents->width, extents->height);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   if (unlikely (image_surface->base.status)) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-       status = image_surface->base.status;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-       cairo_surface_destroy (&image_surface->base);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--      free (source_img);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-       return status;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -848,46 +832,61 @@ _cairo_surface_to_cgimage (cairo_surface_t       *source,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                                                       NULL);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   if (unlikely (status)) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-       cairo_surface_destroy (&image_surface->base);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--      free (source_img);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-       return status;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  source_img->image_out = image_surface;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  source_img->image_extra = NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   cairo_matrix_init_identity (matrix);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     else {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  status = _cairo_surface_acquire_source_image (source_img->surface,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                                                &source_img->image_out,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                                                &source_img->image_extra);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  if (unlikely (status)) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--      free (source_img);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  status = _cairo_surface_acquire_source_image (source, &image_surface,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                                                &image_extra);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  if (unlikely (status))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-       return status;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  acquired = TRUE;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    if (source_img->image_out->width == 0 || source_img->image_out->height == 0) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    if (image_surface->width == 0 || image_surface->height == 0) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   *image_out = NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  DataProviderReleaseCallback (source_img,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                               source_img->image_out->data,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                               source_img->image_out->height * source_img->image_out->stride);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    } else {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  *image_out = CairoQuartzCreateCGImage (source_img->image_out->format,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                                         source_img->image_out->width,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                                         source_img->image_out->height,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                                         source_img->image_out->stride,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                                         source_img->image_out->data,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                                         TRUE,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                                         NULL,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                                         DataProviderReleaseCallback,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                                         source_img);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  /* TODO: differentiate memory error and unsupported surface type */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  if (unlikely (*image_out == NULL))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--      status = CAIRO_INT_STATUS_UNSUPPORTED;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  if (acquired)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+      _cairo_surface_release_source_image (source, image_surface, image_extra);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  else
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+      cairo_surface_destroy (&image_surface->base);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  return status;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    image_data = _cairo_malloc_ab (image_surface->height, image_surface->stride);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    if (unlikely (!image_data))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  if (acquired)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+      _cairo_surface_release_source_image (source, image_surface, image_extra);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  else
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+      cairo_surface_destroy (&image_surface->base);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  return _cairo_error (CAIRO_STATUS_NO_MEMORY);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    memcpy (image_data, image_surface->data,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+      image_surface->height * image_surface->stride);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    *image_out = CairoQuartzCreateCGImage (image_surface->format,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                                     image_surface->width,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                                     image_surface->height,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                                     image_surface->stride,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                                     image_data,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                                     TRUE,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                                     NULL,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                                     DataProviderReleaseCallback,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                                     image_data);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    /* TODO: differentiate memory error and unsupported surface type */
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    if (unlikely (*image_out == NULL))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  status = CAIRO_INT_STATUS_UNSUPPORTED;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    if (acquired)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  _cairo_surface_release_source_image (source, image_surface, image_extra);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    else
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  cairo_surface_destroy (&image_surface->base);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     return status;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -2273,11 +2272,13 @@ _cairo_quartz_surface_create_internal (CGContextRef cgContext,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     surface->extents.width = width;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     surface->extents.height = height;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     surface->virtual_extents = surface->extents;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    surface->imageData = NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    surface->imageSurfaceEquiv = NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     if (IS_EMPTY (surface)) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   surface->cgContext = NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   surface->cgContextBaseCTM = CGAffineTransformIdentity;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--  surface->imageData = NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   surface->base.is_clear = TRUE;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   return surface;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -2290,9 +2291,6 @@ _cairo_quartz_surface_create_internal (CGContextRef cgContext,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     surface->cgContext = cgContext;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     surface->cgContextBaseCTM = CGContextGetCTM (cgContext);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    surface->imageData = NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    surface->imageSurfaceEquiv = NULL;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     return surface;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/graphics/cairo-devel/files/patch-configure.diff b/graphics/cairo-devel/files/patch-configure.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index ef81304d208..8bfc226acd8 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/graphics/cairo-devel/files/patch-configure.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/graphics/cairo-devel/files/patch-configure.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,6 +1,9 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- configure.orig 2020-11-27 20:18:15.000000000 -0600
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ configure      2020-12-18 00:18:59.000000000 -0600
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -31542,7 +31542,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Don't find spectre, poppler, or librsvg even if they're installed.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://trac.macports.org/ticket/33856
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://lists.macports.org/pipermail/macports-dev/2012-March/018411.html
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- configure.orig 2022-03-18 13:40:22.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ configure      2023-02-03 20:39:58.000000000 -0600
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -25179,7 +25179,7 @@
</span>  
  
  # Keep in sync with meson.build!
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -9,7 +12,7 @@
</span>  test_ps=no
  any2ppm_ps=no
  if test "x$use_ps" = "xyes"; then
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -31940,7 +31940,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -25573,7 +25573,7 @@
</span>  
  # poppler-0.17.4 fixes text-pattern and text-transform
  # Keep in sync with meson.build!
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -18,7 +21,7 @@
</span>  test_pdf=no
  any2ppm_pdf=no
  if test "x$use_pdf" = "xyes"; then
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -32310,7 +32310,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -25939,7 +25939,7 @@
</span>  
  
  
</pre><pre style='margin:0'>

</pre>