<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/e34a842f6573f0727f30a2652a440f6da8036313">https://github.com/macports/macports-ports/commit/e34a842f6573f0727f30a2652a440f6da8036313</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 e34a842f657 py27-pyobjc, py35-pyobjc: Fix crash on Catalina
</span>e34a842f657 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit e34a842f6573f0727f30a2652a440f6da8036313
</span>Author: Ryan Schmidt <ryandesign@macports.org>
AuthorDate: Sat Aug 29 04:38:11 2020 -0500

<span style='display:block; white-space:pre;color:#404040;'>    py27-pyobjc, py35-pyobjc: Fix crash on Catalina
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Add a further upstream patch to fix another potential crash on Catalina.
</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/59781
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Co-authored-by: Dan Villiom Podlaski Christiansen <danchr@macports.org>
</span>---
 python/py27-pyobjc/Portfile                            |  2 +-
 python/py27-pyobjc/files/patch-method-signature.m.diff | 17 +++++++++++++----
 python/py35-pyobjc/Portfile                            |  2 +-
 python/py35-pyobjc/files/patch-method-signature.m.diff | 17 +++++++++++++----
 4 files changed, 28 insertions(+), 10 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py27-pyobjc/Portfile b/python/py27-pyobjc/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index dbddea2c6eb..7c2845311cc 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/python/py27-pyobjc/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py27-pyobjc/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -25,7 +25,7 @@ long_description    The PyObjC project aims to provide a bridge between \
</span> homepage            https://pyobjc.readthedocs.io
 
 version             5.3
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision            2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            3
</span> 
 distname            pyobjc-core-${version}
 checksums           rmd160 6c2f3aa3d444bc5d577a3b59a116241374787587 \
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py27-pyobjc/files/patch-method-signature.m.diff b/python/py27-pyobjc/files/patch-method-signature.m.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index 910d059399b..b5d3307e24e 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/python/py27-pyobjc/files/patch-method-signature.m.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py27-pyobjc/files/patch-method-signature.m.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,9 +1,18 @@
</span> Fix crash on Catalina.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-https://github.com/ronaldoussoren/pyobjc/pull/301
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/ronaldoussoren/pyobjc/issues/265
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/ronaldoussoren/pyobjc/commit/8c97708502f486e1e5fc43a5252e61f9ab282650
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/ronaldoussoren/pyobjc/commit/76b4bb2d76d33961821c6cc0d88c7031c62805c2
</span> --- Modules/objc/method-signature.m.orig  2019-10-16 04:40:21.000000000 -0500
<span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ Modules/objc/method-signature.m     2020-08-24 04:40:33.000000000 -0500
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -631,7 +631,10 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             descr->alreadyRetained = YES;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ Modules/objc/method-signature.m        2020-08-29 03:48:31.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -628,10 +628,16 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if (d && PyObject_IsTrue(d)) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             if (descr == NULL || (descr->tmpl && !descr->alreadyRetained)) return -2;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            descr->alreadyRetained = YES;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            // descr may be loaded into read-only memory, so only
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            // write if truly necessary
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            if (!descr->alreadyRetained)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                descr->alreadyRetained = YES;
</span>          } else {
              if (descr == NULL || (descr->tmpl && descr->alreadyRetained)) return -2;
 -            descr->alreadyRetained = NO;
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py35-pyobjc/Portfile b/python/py35-pyobjc/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 658e482945c..42551261ef8 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/python/py35-pyobjc/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py35-pyobjc/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -25,7 +25,7 @@ long_description    The PyObjC project aims to provide a bridge between \
</span> homepage            https://pyobjc.readthedocs.io
 
 version             5.3
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision            2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            3
</span> 
 distname            pyobjc-core-${version}
 checksums           rmd160 6c2f3aa3d444bc5d577a3b59a116241374787587 \
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py35-pyobjc/files/patch-method-signature.m.diff b/python/py35-pyobjc/files/patch-method-signature.m.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index 910d059399b..b5d3307e24e 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/python/py35-pyobjc/files/patch-method-signature.m.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py35-pyobjc/files/patch-method-signature.m.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,9 +1,18 @@
</span> Fix crash on Catalina.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-https://github.com/ronaldoussoren/pyobjc/pull/301
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/ronaldoussoren/pyobjc/issues/265
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/ronaldoussoren/pyobjc/commit/8c97708502f486e1e5fc43a5252e61f9ab282650
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/ronaldoussoren/pyobjc/commit/76b4bb2d76d33961821c6cc0d88c7031c62805c2
</span> --- Modules/objc/method-signature.m.orig  2019-10-16 04:40:21.000000000 -0500
<span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ Modules/objc/method-signature.m     2020-08-24 04:40:33.000000000 -0500
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -631,7 +631,10 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             descr->alreadyRetained = YES;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ Modules/objc/method-signature.m        2020-08-29 03:48:31.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -628,10 +628,16 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if (d && PyObject_IsTrue(d)) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             if (descr == NULL || (descr->tmpl && !descr->alreadyRetained)) return -2;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            descr->alreadyRetained = YES;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            // descr may be loaded into read-only memory, so only
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            // write if truly necessary
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            if (!descr->alreadyRetained)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                descr->alreadyRetained = YES;
</span>          } else {
              if (descr == NULL || (descr->tmpl && descr->alreadyRetained)) return -2;
 -            descr->alreadyRetained = NO;
</pre><pre style='margin:0'>

</pre>