perl 5.002_01: util.c
Perl 5 Porters [Sun, 24 Mar 1996 11:20:33 +0000 (11:20 +0000)]
Change e_fp test to use e_tmpname, since e_fp is reset
when file is lcosed in perl.c

util.c

diff --git a/util.c b/util.c
index c8cbc2b..a11d98f 100644 (file)
--- a/util.c
+++ b/util.c
@@ -825,10 +825,14 @@ long a1, a2, a3, a4;
     }
     fputs(message,stderr);
     (void)Fflush(stderr);
-    if (e_fp) {
-       fclose(e_fp);
-       e_fp = Nullfp;
+    if (e_tmpname) {
+       if (e_fp) {
+           fclose(e_fp);
+           e_fp = Nullfp;
+       }
        (void)UNLINK(e_tmpname);
+       Safefree(e_tmpname);
+       e_tmpname = Nullch;
     }
     statusvalue = SHIFTSTATUS(statusvalue);
 #ifdef VMS
@@ -984,10 +988,14 @@ croak(pat, va_alist)
     }
     fputs(message,stderr);
     (void)Fflush(stderr);
-    if (e_fp) {
-       fclose(e_fp);
-       e_fp = Nullfp;
+    if (e_tmpname) {
+       if (e_fp) {
+           fclose(e_fp);
+           e_fp = Nullfp;
+       }
        (void)UNLINK(e_tmpname);
+       Safefree(e_tmpname);
+       e_tmpname = Nullch;
     }
     statusvalue = SHIFTSTATUS(statusvalue);
 #ifdef VMS