summaryrefslogtreecommitdiff
path: root/devel
diff options
context:
space:
mode:
authormarkd <markd@pkgsrc.org>2006-07-06 13:10:27 +0000
committermarkd <markd@pkgsrc.org>2006-07-06 13:10:27 +0000
commitfe169d2d04d8b25d0b0bc3890b9ff8379a41f290 (patch)
treee48ae5fc9916b971132c0e9f7a5e6486f4183af4 /devel
parent6d1b8704902a58a9cda76d635ddb4309dbd8feab (diff)
downloadpkgsrc-fe169d2d04d8b25d0b0bc3890b9ff8379a41f290.tar.gz
If va_copy defined use it in int_vasprintf().
Fixes PR pkg/32854.
Diffstat (limited to 'devel')
-rw-r--r--devel/gettext-tools/distinfo3
-rw-r--r--devel/gettext-tools/patches/patch-ap29
2 files changed, 31 insertions, 1 deletions
diff --git a/devel/gettext-tools/distinfo b/devel/gettext-tools/distinfo
index 8a93def79c2..96c0a55c01d 100644
--- a/devel/gettext-tools/distinfo
+++ b/devel/gettext-tools/distinfo
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.2 2006/02/14 22:31:42 joerg Exp $
+$NetBSD: distinfo,v 1.3 2006/07/06 13:10:27 markd Exp $
SHA1 (gettext-0.14.5.tar.gz) = 68737eee1a6427044eef901dc88e4144d371fb6b
RMD160 (gettext-0.14.5.tar.gz) = d31c8e49671f00623ce1e6f73716a5abcd1c7ec2
@@ -15,3 +15,4 @@ SHA1 (patch-al) = 0a41f77406acf3959a64819a333b369ab2141610
SHA1 (patch-am) = c130b93748604e3823ba17d29af9d91aaeecfcde
SHA1 (patch-an) = f99f345f9b23f72e4a462445bcce8281dd1e5308
SHA1 (patch-ao) = 9e81b05b6e1ee76197c360a441264588607a475c
+SHA1 (patch-ap) = 2955c2d6b2b2d52248d449a0b7ea025a0d632bea
diff --git a/devel/gettext-tools/patches/patch-ap b/devel/gettext-tools/patches/patch-ap
new file mode 100644
index 00000000000..f377700142e
--- /dev/null
+++ b/devel/gettext-tools/patches/patch-ap
@@ -0,0 +1,29 @@
+$NetBSD: patch-ap,v 1.1 2006/07/06 13:10:27 markd Exp $
+
+--- gettext-tools/lib/vasprintf.c.orig 2006-06-28 23:14:51.332244000 +1200
++++ gettext-tools/lib/vasprintf.c
+@@ -40,7 +40,13 @@ int_vasprintf (char **result, const char
+ /* Add one to make sure that it is never zero, which might cause malloc
+ to return NULL. */
+ size_t total_width = strlen (format) + 1;
+- va_list ap = *args;
++ va_list ap;
++
++#ifdef va_copy
++ va_copy (ap, *args);
++#else
++ ap = *args;
++#endif
+
+ while (*p != '\0')
+ {
+@@ -109,6 +115,9 @@ int_vasprintf (char **result, const char
+ p++;
+ }
+ }
++#ifdef va_copy
++ va_end (ap);
++#endif
+ #ifdef TEST
+ global_total_width = total_width;
+ #endif