Change 11282 by jhi@alpha on 2001/07/12 00:35:27
Subject: Re: ActivePerl 628 + warnings + fork + exec = spurious "Can't exec"?
From: barries <[EMAIL PROTECTED]>
Date: Wed, 11 Jul 2001 15:11:46 -0400
Message-ID: <[EMAIL PROTECTED]>
Affected files ...
... //depot/perl/pp_sys.c#247 edit
... //depot/perl/t/lib/warnings/doio#2 edit
... //depot/perl/win32/win32.c#162 edit
Differences ...
==== //depot/perl/pp_sys.c#247 (text) ====
Index: perl/pp_sys.c
--- perl/pp_sys.c.~1~ Wed Jul 11 18:45:06 2001
+++ perl/pp_sys.c Wed Jul 11 18:45:06 2001
@@ -4121,11 +4121,6 @@
#endif
}
-#if !defined(HAS_FORK) && defined(USE_ITHREADS) && defined(PERL_IMPLICIT_SYS)
- if (value >= 0)
- my_exit(value);
-#endif
-
SP = ORIGMARK;
PUSHi(value);
RETURN;
==== //depot/perl/t/lib/warnings/doio#2 (text) ====
Index: perl/t/lib/warnings/doio
--- perl/t/lib/warnings/doio.~1~ Wed Jul 11 18:45:06 2001
+++ perl/t/lib/warnings/doio Wed Jul 11 18:45:06 2001
@@ -172,6 +172,11 @@
OPTION regex
Can't exec "lskdjfalksdjfdjfkls(:? abc)?": .+
########
+# doio.c [win32_execvp]
+use warnings 'exec' ;
+exec $^X, "-e0" ;
+EXPECT
+########
# doio.c [Perl_nextargv]
$^W = 0 ;
my $filename = "./temp.dir" ;
==== //depot/perl/win32/win32.c#162 (text) ====
Index: perl/win32/win32.c
--- perl/win32/win32.c.~1~ Wed Jul 11 18:45:06 2001
+++ perl/win32/win32.c Wed Jul 11 18:45:06 2001
@@ -3363,7 +3363,7 @@
/* if this is a pseudo-forked child, we just want to spawn
* the new program, and return */
if (w32_pseudo_id)
- return win32_spawnvp(P_WAIT, cmdname, (char *const *)argv);
+ return my_exit(win32_spawnvp(P_WAIT, cmdname, (char *const *)argv));
#endif
return execvp(cmdname, (char *const *)argv);
}
End of Patch.