diff options
Diffstat (limited to 'devel/ruby-byaccr/patches/patch-ad')
-rw-r--r-- | devel/ruby-byaccr/patches/patch-ad | 70 |
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); + } |