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

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/0068b863599595ca1639e24b31928704f27864d7">https://github.com/macports/macports-ports/commit/0068b863599595ca1639e24b31928704f27864d7</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 0068b863599595ca1639e24b31928704f27864d7
</span>Author: Diedrich Vorberg <diedrich@tux4web.de>
AuthorDate: Mon Oct 19 19:38:33 2020 +0200

<span style='display:block; white-space:pre;color:#404040;'>    windowmaker: update to 0.95.9
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Co-authored-by: Ryan Schmidt <ryandesign@macports.org>
</span><span style='display:block; white-space:pre;color:#404040;'>    Co-authored-by: Renee Otten <reneeotten@macports.org>
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Closes: #8856
</span>---
 x11/windowmaker/Portfile                    | 66 ++++++++++++++----------
 x11/windowmaker/files/osdep_darwin.fix.diff | 80 +++++++++++++++++++++++++++++
 2 files changed, 118 insertions(+), 28 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/x11/windowmaker/Portfile b/x11/windowmaker/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 965f113d5e8..2fa1b271b8c 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/x11/windowmaker/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/x11/windowmaker/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,10 +1,12 @@
</span> # -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
 
 PortSystem          1.0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           github 1.0
</span> 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup        window-maker wmaker 0.95.9 wmaker-
</span> name                windowmaker
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version             0.95.3
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-revision            2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.tarball_from releases
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            0
</span> 
 categories          x11 x11-wm
 platforms           darwin freebsd
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -20,26 +22,30 @@ long_description    Window Maker is an X11 window manager originally designed to
</span>                     It is also free software, with contributions being made \
                     by programmers from around the world.
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-homepage            http://windowmaker.org/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+homepage            https://windowmaker.org/
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-master_sites        http://windowmaker.org/pub/source/release/
</span> distname            WindowMaker-${version}
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksum            rmd160 320f29bb930b046ebdb796dc0d8b2dfdfa551c1b \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256 b5eb88eccbf9a196a617594717797aa38f5c38d13d2ee40e914e153d09c9975a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  3c78acef4e535f4b2230e0e8cf5155c54359a61e \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  f22358ff60301670e1e2b502faad0f2da7ff8976632d538f95fe4638e9c6b714 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    3397167
</span> 
 universal_variant   no
<span style='display:block; white-space:pre;background:#ffe0e0;'>-destroot.violate_mtree  yes
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_build       port:pkgconfig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_build-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:pkgconfig
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_lib         port:xorg-libXmu \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:Xft2 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:xpm \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:libpng \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:gettext \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append  port:gettext \
</span>                     port:giflib \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:tiff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:libexif \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:libpng \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:tiff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:xorg-libXmu \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:xpm \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:Xft2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://groups.google.com/g/wmaker-dev/c/EAvrkMRpla0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles          osdep_darwin.fix.diff
</span> 
 post-patch {
     set fl [glob -directory ${worksrcpath} WindowMaker/*menu*]
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -54,13 +60,26 @@ post-patch {
</span>     }
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.env       "LINGUAS=bg cs da de el es et fi fr gl hr hu it ja \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    ko ms nl no pl pt ro ru sk sv tr zh_CN" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.env-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    "LINGUAS=be bg bs ca cs da de el es et fi fr fy gl hr hu hy it ja ko ms nl no pl pt ro ru sk sv tr uk zh_CN zh_TW" \
</span>                     "LIBS=-L${prefix}/lib -lintl -lX11"
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args      --mandir=${prefix}/share/man \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    --with-nlsdir=${prefix}/share/locale \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    --with-gnustepdir=${prefix}/GNUstep/Local
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+##configure.args      --mandir=${prefix}/share/man \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+##                    --with-nlsdir=${prefix}/share/locale \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --disable-silent-rules \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --with-gnustepdir=${prefix}/GNUstep/Local \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --disable-magick
</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;'>+variant debug description "Build with debugging flags set" {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # To keep .c/.o/.dSYM files around, set portautoclean no in macports.conf
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # or use port -k to “keep” files around.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.args-append --enable-debug
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.optflags -O0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.cflags-append -g2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span> 
 variant candy description "Enable various eye-candy options" {
     post-configure {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -72,12 +91,3 @@ variant candy description "Enable various eye-candy options" {
</span>             ${worksrcpath}/src/wconfig.h
     }
 }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-platform darwin i386 {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    post-patch {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        reinplace "s|#define ASM_X86 1||g" ${worksrcpath}/configure
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        reinplace "s|#define ASM_X86_MMX 1||g" ${worksrcpath}/configure
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        reinplace "s|asm_support=yes|asm_support=no|g" ${worksrcpath}/configure
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        reinplace "s|mmx_support=yes|mmx_support=no|g" ${worksrcpath}/configure
</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/x11/windowmaker/files/osdep_darwin.fix.diff b/x11/windowmaker/files/osdep_darwin.fix.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..dcd80ebb379
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/x11/windowmaker/files/osdep_darwin.fix.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,80 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/osdep_darwin.c.orig        2019-02-16 00:34:26.000000000 +0100
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/osdep_darwin.c     2020-10-19 19:23:38.000000000 +0200
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1,4 +1,3 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <sys/types.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <sys/sysctl.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -23,8 +22,8 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Bool GetCommandForPid(int pid, char ***argv, int *argc)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef KERN_PROCARGS2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  int j, mib[4];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  unsigned int i, idx;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  int mib[4];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  unsigned int idx;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   size_t count;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   static char *args = NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   static int argmax = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -70,21 +69,46 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           idx++;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   /* args[idx] is at at begininng of args now */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  *argv = (char **)wmalloc(sizeof(char *) * (*argc + 1 /* term. null ptr */));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  (*argv)[0] = args + idx;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  /* go through args, set argv[$next] to the beginning of each string */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  for (i = 0, j = 1; i < count - idx /* do not overrun */; i++) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          if (args[idx + i] != '\0')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  continue;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          if (args[idx + i] == '\0')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  (*argv)[j++] = &args[idx + i + 1];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          if (j == *argc)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  break;
</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;'>+-  /* the list of arguments must be terminated by a null pointer */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  (*argv)[j] = NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    int found = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    char *p = &args[idx];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    while(found < *argc)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        while(*p != '\0') p++; // look for the next \0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        while(*p == '\0') p++; // skip over padding \0s
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        found++;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        // Don’t overrun!
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        if (p-args >= argmax)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            return False;
</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;'>++    // At this point, p points to the last \0 in the source array. 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    // Buffer needed for the strings
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    unsigned stringbuf_size = p - &args[idx];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    // Buffer needed for the pointers (plus one terminating NULL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    unsigned pointerbuf_size = sizeof(char *) * (*argc + 1);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    *argv = wmalloc(pointerbuf_size + stringbuf_size);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    char* stringstart = (char *)(*argv) + pointerbuf_size;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    memcpy(stringstart, &args[idx], stringbuf_size);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    found = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    p = stringstart;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    while(found < *argc)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        (*argv)[found] = p;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        while(*p != '\0') p++; // look for the next \0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        while(*p == '\0') p++; // skip over padding \0s
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        found++;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    (*argv)[found] = NULL; // Terminating NULL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return True;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else /* !KERN_PROCARGS2 */
</span></pre><pre style='margin:0'>

</pre>