summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-apps/gawk/files')
-rw-r--r--sys-apps/gawk/files/digest-gawk-3.1.52
-rw-r--r--sys-apps/gawk/files/gawk-3.1.5-core.patch31
2 files changed, 33 insertions, 0 deletions
diff --git a/sys-apps/gawk/files/digest-gawk-3.1.5 b/sys-apps/gawk/files/digest-gawk-3.1.5
new file mode 100644
index 000000000000..5a1ad05d144f
--- /dev/null
+++ b/sys-apps/gawk/files/digest-gawk-3.1.5
@@ -0,0 +1,2 @@
+MD5 4760325489479cac17fe0114b8f62f30 gawk-3.1.5.tar.gz 2310919
+MD5 828fbed5314eab4dd0f75ce32dc28bda patch_3.1.4__xml_20040920 79433
diff --git a/sys-apps/gawk/files/gawk-3.1.5-core.patch b/sys-apps/gawk/files/gawk-3.1.5-core.patch
new file mode 100644
index 000000000000..5dc134c78f22
--- /dev/null
+++ b/sys-apps/gawk/files/gawk-3.1.5-core.patch
@@ -0,0 +1,31 @@
+fix an ugly core on a simple script
+
+http://lists.gnu.org/archive/html/bug-gnu-utils/2005-08/msg00040.html
+http://lists.gnu.org/archive/html/bug-gnu-utils/2005-08/msg00047.html
+
+--- io.c
++++ io.c
+@@ -2480,9 +2480,12 @@
+ {
+ struct stat sbuf;
+ struct open_hook *oh;
++ int iop_malloced = FALSE;
+
+- if (iop == NULL)
++ if (iop == NULL) {
+ emalloc(iop, IOBUF *, sizeof(IOBUF), "iop_alloc");
++ iop_malloced = TRUE;
++ }
+ memset(iop, '\0', sizeof(IOBUF));
+ iop->flag = 0;
+ iop->fd = fd;
+@@ -2495,7 +2498,8 @@
+ }
+
+ if (iop->fd == INVALID_HANDLE) {
+- free(iop);
++ if (iop_malloced)
++ free(iop);
+ return NULL;
+ }
+ if (isatty(iop->fd))