<pre style='margin:0'>
Perry E. Metzger (pmetzger) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/cba5769fbc1db6305e243880474667f82a734e3a">https://github.com/macports/macports-ports/commit/cba5769fbc1db6305e243880474667f82a734e3a</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 cba5769  re2c: fix a crash when running "re2c -V"
</span>cba5769 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit cba5769fbc1db6305e243880474667f82a734e3a
</span>Author: Perry E. Metzger <perry@piermont.com>
AuthorDate: Wed Aug 29 15:42:49 2018 -0400

<span style='display:block; white-space:pre;color:#404040;'>    re2c: fix a crash when running "re2c -V"
</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/57063
</span>---
 devel/re2c/Portfile                           |  4 +++
 devel/re2c/files/patch-version-crash-fix.diff | 41 +++++++++++++++++++++++++++
 2 files changed, 45 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/re2c/Portfile b/devel/re2c/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 757a64f..ef2729d 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/re2c/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/re2c/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -4,6 +4,7 @@ PortSystem          1.0
</span> PortGroup           github 1.0
 
 github.setup        skvadrik re2c 1.1
<span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            1
</span> categories          devel
 platforms           darwin
 license             public-domain
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -24,6 +25,9 @@ checksums           rmd160  4037a4ea9bb01882c395b018cda75739f552da12 \
</span>                     sha256  925d1ebc65c16ba17f59e438621c145330c952a02a4bb2d333a428c56e94d8a7 \
                     size    5901198
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+patch.pre_args      -p2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles          patch-version-crash-fix.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> configure.args      --disable-silent-rules
 
 test.run            yes
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/re2c/files/patch-version-crash-fix.diff b/devel/re2c/files/patch-version-crash-fix.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..47ed8e9
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/re2c/files/patch-version-crash-fix.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,41 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git a/re2c/src/conf/msg.cc b/re2c/src/conf/msg.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 72eaa452..a133b5f3 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/re2c/src/conf/msg.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/re2c/src/conf/msg.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -102,23 +102,22 @@ void usage()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void vernum ()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     std::string vernum (PACKAGE_VERSION);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    if (vernum[1] == '.')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        vernum.insert(0, "0");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    vernum.erase(2, 1);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    if (vernum[3] == '.')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        vernum.insert(2, "0");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    vernum.erase(4, 1);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    if (vernum.length() < 6 || vernum[5] < '0' || vernum[5] > '9')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    std::string parts[3];
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    unsigned p = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    for (unsigned i = 0; p < 3 && i < vernum.length (); i++)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        vernum.insert(4, "0");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        if (vernum[i] == '.')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            p++;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            parts[p].push_back (vernum[i]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    vernum.resize(6, '0');
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    printf ("%s\n", vernum.c_str ());
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    for (p = 0; p < 3; p++)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        while (parts[p].length () < 2)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            parts[p].insert (0, 1, '0');
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    printf ("%s%s%s\n", parts[0].c_str (), parts[1].c_str (), parts[2].c_str ());
</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;'>+ void version ()
</span></pre><pre style='margin:0'>

</pre>