This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perl 5.002_01: pp_ctl.c
authorPerl 5 Porters <perl5-porters@africa.nicoh.com>
Sun, 24 Mar 1996 11:19:20 +0000 (11:19 +0000)
committerCharles Bailey <bailey@genetics.upenn.edu>
Sun, 24 Mar 1996 11:19:20 +0000 (11:19 +0000)
Change run to runops, and e_fp test to use e_tmpname, since
e_fp is reset to 0 when file is closed in perl.c

pp_ctl.c

index 1f558f7..e57e88a 100644 (file)
--- a/pp_ctl.c
+++ b/pp_ctl.c
@@ -998,10 +998,14 @@ char *message;
     }
     fputs(message, stderr);
     (void)Fflush(stderr);
     }
     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);
        (void)UNLINK(e_tmpname);
+       Safefree(e_tmpname);
+       e_tmpname = Nullch;
     }
     statusvalue = SHIFTSTATUS(statusvalue);
 #ifdef VMS
     }
     statusvalue = SHIFTSTATUS(statusvalue);
 #ifdef VMS
@@ -1160,7 +1164,7 @@ const void *b;
     GvSV(secondgv) = *str2;
     stack_sp = stack_base;
     op = sortcop;
     GvSV(secondgv) = *str2;
     stack_sp = stack_base;
     op = sortcop;
-    run();
+    runops();
     if (stack_sp != stack_base + 1)
        croak("Sort subroutine didn't return single value");
     if (!SvNIOKp(*stack_sp))
     if (stack_sp != stack_base + 1)
        croak("Sort subroutine didn't return single value");
     if (!SvNIOKp(*stack_sp))