<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/9b05154d90844ba22d5f2bedab226bb4c596330a">https://github.com/macports/macports-ports/commit/9b05154d90844ba22d5f2bedab226bb4c596330a</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 9b05154d908 cairo, cairo-devel: fix major memory leak
</span>9b05154d908 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 9b05154d90844ba22d5f2bedab226bb4c596330a
</span>Author: Lukas Oberhuber <lukaso@gmail.com>
AuthorDate: Mon Apr 17 15:00:22 2023 +0100

<span style='display:block; white-space:pre;color:#404040;'>    cairo, cairo-devel: fix major memory leak
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    https://gitlab.freedesktop.org/cairo/cairo/-/merge_requests/316
</span>---
 graphics/cairo-devel/Portfile                |  6 +++++-
 graphics/cairo-devel/files/memory-leak.patch | 27 +++++++++++++++++++++++++++
 graphics/cairo/Portfile                      |  6 +++++-
 graphics/cairo/files/memory-leak.patch       | 27 +++++++++++++++++++++++++++
 4 files changed, 64 insertions(+), 2 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 f42c0fd5361..9dc0e449edb 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;'>@@ -16,7 +16,7 @@ name                        cairo-devel
</span> conflicts                   cairo
 set my_name                 cairo
 version                     1.17.6
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision                    0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision                    1
</span> checksums                   rmd160  b02bab53ca0f77bc3b8d095a6bfde56d7ab8c988 \
                             sha256  4eebc4c2bad0402bc3f501db184417094657d111fb6c06f076a82ea191fe1faf \
                             size    35055900
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -57,6 +57,10 @@ 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:#e0ffe0;'>+# Backport from 1.17.8 as that release is a major change
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://gitlab.freedesktop.org/cairo/cairo/-/merge_requests/316
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append           memory-leak.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</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/memory-leak.patch b/graphics/cairo-devel/files/memory-leak.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..fccf664fea8
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/graphics/cairo-devel/files/memory-leak.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,27 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 243938c61a08dac8911153352e55933e0618581e Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: John Ralls <jralls@ceridwen.us>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Sat, 23 Apr 2022 16:38:01 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH] [quartz] Destroy local copy of snapshot after attaching it.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Because cairo_surface_snapshot_attach refs the snapshot.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Fixes https://gitlab.freedesktop.org/cairo/cairo/-/issues/562
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ src/cairo-quartz-surface.c | 1 +
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 1 insertion(+)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/cairo-quartz-surface.c src/cairo-quartz-surface.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 5681918c4..fa6d9b1c9 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/cairo-quartz-surface.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/cairo-quartz-surface.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2609,6 +2609,7 @@ _cairo_quartz_surface_snapshot_get_image (cairo_quartz_surface_t *surface)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (unlikely (!snapshot || cairo_surface_status (snapshot)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       return NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   _cairo_surface_attach_snapshot (&surface->base, snapshot, NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  cairo_surface_destroy (snapshot);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return CGImageRetain (((cairo_quartz_snapshot_t*)snapshot)->image);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+GitLab
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/graphics/cairo/Portfile b/graphics/cairo/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index b33fb1c3ecb..57081b9f7f9 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/graphics/cairo/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/graphics/cairo/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -16,7 +16,7 @@ name                        cairo
</span> conflicts                   cairo-devel
 set my_name                 cairo
 version                     1.17.6
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision                    0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision                    1
</span> checksums                   rmd160  b02bab53ca0f77bc3b8d095a6bfde56d7ab8c988 \
                             sha256  4eebc4c2bad0402bc3f501db184417094657d111fb6c06f076a82ea191fe1faf \
                             size    35055900
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -57,6 +57,10 @@ 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:#e0ffe0;'>+# Backport from 1.17.8 as that release is a major change
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://gitlab.freedesktop.org/cairo/cairo/-/merge_requests/316
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append           memory-leak.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</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/files/memory-leak.patch b/graphics/cairo/files/memory-leak.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..fccf664fea8
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/graphics/cairo/files/memory-leak.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,27 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 243938c61a08dac8911153352e55933e0618581e Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: John Ralls <jralls@ceridwen.us>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Sat, 23 Apr 2022 16:38:01 -0700
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH] [quartz] Destroy local copy of snapshot after attaching it.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Because cairo_surface_snapshot_attach refs the snapshot.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Fixes https://gitlab.freedesktop.org/cairo/cairo/-/issues/562
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ src/cairo-quartz-surface.c | 1 +
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 1 insertion(+)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/cairo-quartz-surface.c src/cairo-quartz-surface.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 5681918c4..fa6d9b1c9 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/cairo-quartz-surface.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/cairo-quartz-surface.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -2609,6 +2609,7 @@ _cairo_quartz_surface_snapshot_get_image (cairo_quartz_surface_t *surface)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (unlikely (!snapshot || cairo_surface_status (snapshot)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       return NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   _cairo_surface_attach_snapshot (&surface->base, snapshot, NULL);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  cairo_surface_destroy (snapshot);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return CGImageRetain (((cairo_quartz_snapshot_t*)snapshot)->image);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-- 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+GitLab
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span></pre><pre style='margin:0'>

</pre>