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

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/9ae306bba3fb1caab30a9cd407f94195deca2d24">https://github.com/macports/macports-ports/commit/9ae306bba3fb1caab30a9cd407f94195deca2d24</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 9ae306bba3f pyxplot: avoid strcpy crash on Ventura
</span>9ae306bba3f is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 9ae306bba3fb1caab30a9cd407f94195deca2d24
</span>Author: Ken Cunningham <kencu@macports.org>
AuthorDate: Sat Jan 7 16:45:19 2023 -0800

<span style='display:block; white-space:pre;color:#404040;'>    pyxplot: avoid strcpy crash on Ventura
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    the function ppl_unixGetHomeDir is not returning
</span><span style='display:block; white-space:pre;color:#404040;'>    a full path to the users home dir, it is instead
</span><span style='display:block; white-space:pre;color:#404040;'>    returning null it appears, on Ventura at least
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    the function should be fixed, but for now checking
</span><span style='display:block; white-space:pre;color:#404040;'>    the return value and substituting something reasonable
</span><span style='display:block; white-space:pre;color:#404040;'>    seems to avoid the crash
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    closes: https://trac.macports.org/ticket/66098
</span>---
 math/pyxplot/Portfile                                  |  2 ++
 math/pyxplot/files/patch-pyxplot-no-crash-ventura.diff | 18 ++++++++++++++++++
 2 files changed, 20 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/math/pyxplot/Portfile b/math/pyxplot/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index b02b04d5d00..0820c9272ea 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/math/pyxplot/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/math/pyxplot/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -43,6 +43,8 @@ depends_lib-append  port:cfitsio \
</span> patchfiles          patch-configure.diff \
                     patch-Makefile.skel.diff
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append   patch-pyxplot-no-crash-ventura.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> post-patch {
     reinplace "s|USRDIR=/usr/local|USRDIR=${prefix}|g" \
                 ${worksrcpath}/Makefile.skel
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/math/pyxplot/files/patch-pyxplot-no-crash-ventura.diff b/math/pyxplot/files/patch-pyxplot-no-crash-ventura.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..31a8724492c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/math/pyxplot/files/patch-pyxplot-no-crash-ventura.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,18 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- ./src/settings/settingsInit.c.orig     2023-01-07 16:41:23
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ ./src/settings/settingsInit.c  2023-01-07 16:41:31
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -364,7 +364,14 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   se->session_default.color_rep= SW_TERMCOL_GRN;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   se->session_default.color_wrn= SW_TERMCOL_BRN;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   se->session_default.color_err= SW_TERMCOL_RED;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  strcpy(se->session_default.homedir, ppl_unixGetHomeDir(&context->errcontext));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  char  *myhomedir;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  myhomedir = ppl_unixGetHomeDir(&context->errcontext);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (myhomedir == "") {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          myhomedir = "~";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  strncpy(se->session_default.homedir,&myhomedir,4096);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  //strcpy(se->session_default.homedir, ppl_unixGetHomeDir(&context->errcontext));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   // Estimate the machine precision of the floating point unit we are using
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ppl_makeMachineEpsilon();
</span></pre><pre style='margin:0'>

</pre>