summaryrefslogtreecommitdiff
path: root/devel/ruby-byaccr/patches/patch-ad
diff options
context:
space:
mode:
Diffstat (limited to 'devel/ruby-byaccr/patches/patch-ad')
-rw-r--r--devel/ruby-byaccr/patches/patch-ad70
1 files changed, 70 insertions, 0 deletions
diff --git a/devel/ruby-byaccr/patches/patch-ad b/devel/ruby-byaccr/patches/patch-ad
new file mode 100644
index 00000000000..0d1864c16db
--- /dev/null
+++ b/devel/ruby-byaccr/patches/patch-ad
@@ -0,0 +1,70 @@
+$NetBSD: patch-ad,v 1.1.1.1 2001/07/01 14:39:15 taca Exp $
+
+--- main.c.orig Thu Nov 2 01:29:07 2000
++++ main.c
+@@ -307,9 +307,11 @@
+ text_file_name[len + 5] = 't';
+ union_file_name[len + 5] = 'u';
+
++#ifdef WITHOUT_MKSTEMP
+ mktemp(action_file_name);
+ mktemp(text_file_name);
+ mktemp(union_file_name);
++#endif
+
+ if (jflag)/*rwj*/
+ {
+@@ -363,6 +365,9 @@
+
+ void open_files(void)
+ {
++#ifndef WITHOUT_MKSTEMP
++ int fd;
++#endif
+ create_file_names();
+
+ if (input_file == 0)
+@@ -372,11 +377,25 @@
+ open_error(input_file_name);
+ }
+
+- action_file = fopen(action_file_name, "w");
++#ifdef WITHOUT_MKSTEMP
++ action_file = fopen(action_file_name, "w+");
++#else
++ action_file = NULL;
++ fd = mkstemp(action_file_name);
++ if (fd >= 0)
++ action_file = fdopen(fd, "w");
++#endif
+ if (action_file == 0)
+ open_error(action_file_name);
+
+- text_file = fopen(text_file_name, "w");
++#ifdef WITHOUT_MKSTEMP
++ text_file = fopen(text_file_name, "w+");
++#else
++ text_file = NULL;
++ fd = mkstemp(text_file_name);
++ if (fd >= 0)
++ action_file = fdopen(fd, "w");
++#endif
+ if (text_file == 0)
+ open_error(text_file_name);
+
+@@ -392,7 +411,14 @@
+ defines_file = fopen(defines_file_name, "w");
+ if (defines_file == 0)
+ open_error(defines_file_name);
+- union_file = fopen(union_file_name, "w");
++#ifdef WITHOUT_MKSTEMP
++ union_file = fopen(union_file_name, "w+");
++#else
++ union_file = NULL;
++ fd = mkstemp(union_file_name);
++ if (fd >= 0)
++ union_file = fdopen(fd, "w");
++#endif
+ if (union_file == 0)
+ open_error(union_file_name);
+ }