[83430] trunk/dports/devel/safestr

jmr at macports.org jmr at macports.org
Thu Sep 1 04:27:54 PDT 2011


Revision: 83430
          http://trac.macports.org/changeset/83430
Author:   jmr at macports.org
Date:     2011-09-01 04:27:52 -0700 (Thu, 01 Sep 2011)
Log Message:
-----------
safestr: copy va_list correctly, and depend on xxl as seems to have always been intended

Modified Paths:
--------------
    trunk/dports/devel/safestr/Portfile

Added Paths:
-----------
    trunk/dports/devel/safestr/files/
    trunk/dports/devel/safestr/files/safefmt.c.patch

Modified: trunk/dports/devel/safestr/Portfile
===================================================================
--- trunk/dports/devel/safestr/Portfile	2011-09-01 10:28:38 UTC (rev 83429)
+++ trunk/dports/devel/safestr/Portfile	2011-09-01 11:27:52 UTC (rev 83430)
@@ -21,4 +21,8 @@
 checksums		md5 a07412095226b0f6fcbd1d7acd4be732 \
 			sha256 791256efff74317273cf8b64c9ad360b7bce16d561b4350bb7de9776c5855b6c
 
+depends_lib		port:xxl
+
+patchfiles		safefmt.c.patch
+
 configure.args		--with-xxl=${prefix}

Added: trunk/dports/devel/safestr/files/safefmt.c.patch
===================================================================
--- trunk/dports/devel/safestr/files/safefmt.c.patch	                        (rev 0)
+++ trunk/dports/devel/safestr/files/safefmt.c.patch	2011-09-01 11:27:52 UTC (rev 83430)
@@ -0,0 +1,32 @@
+--- safefmt.c.orig	2005-01-31 05:24:12.000000000 +1100
++++ safefmt.c	2011-09-01 21:18:23.000000000 +1000
+@@ -489,10 +489,10 @@ scan_format_string(isafestr_t ifmt, argl
+         SET_ARGLIST_TYPE(format_arg, type);
+     }
+ 
+-    ap = arglist->ap;
++    va_copy(ap, arglist->ap);
+     for (x = arglist->current;  x < max_arg;  x++)
+         load_argument(x, arglist);
+-    arglist->ap = ap;
++    va_copy(arglist->ap, ap);
+ 
+     arglist->max     = max_arg;
+     arglist->scanned = 1;
+@@ -675,7 +675,7 @@ parse_format_string(output_fn outfn, voi
+     arglist.current = 0;
+     arglist.max     = 0;
+     arglist.scanned = 0;
+-    arglist.ap      = ap;
++    va_copy(arglist.ap, ap);
+     memset(arglist.list, 0, sizeof(arglist.list));
+ 
+     cs_d = 0;
+@@ -683,7 +683,6 @@ parse_format_string(output_fn outfn, voi
+     padding = NULL;
+     *nbytes = padding_size = 0;
+     arglist.current = arglist.max = arglist.scanned = 0;
+-    arglist.ap = ap;
+     trusted = (ifmt->hdr.flags & SAFESTR_TRUSTED) == SAFESTR_TRUSTED;
+ 
+     for (c = start = ifmt->str;  c < ifmt->str + ifmt->hdr.length;  start = ++c)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20110901/95571268/attachment.html>


More information about the macports-changes mailing list