diff options
author | Gurusamy Sarathy <gsar@cpan.org> | 2002-07-16 02:57:47 +0000 |
---|---|---|
committer | Gurusamy Sarathy <gsar@cpan.org> | 2002-07-16 02:57:47 +0000 |
commit | 54725af65d49b2ed8413041530c71b8d3bde0714 (patch) | |
tree | 238d29129bd88937476c8d62139e978b5c26b506 /win32 | |
parent | a10b1e109d1f901ff6cb267ca6a30834468b37b7 (diff) | |
download | perl-54725af65d49b2ed8413041530c71b8d3bde0714.tar.gz |
integrate a variant of change#17568 from maint-5.6 branch (the
do_exec parts elided so that change is restricted strictly to
windows; binary compatibility stubs not needed)
p4raw-link: @17568 on //depot/maint-5.6/perl: 07691bcd6c6d7fd92f508fd5268e700370ea47c2
p4raw-id: //depot/perl@17570
Diffstat (limited to 'win32')
-rw-r--r-- | win32/perlhost.h | 23 | ||||
-rw-r--r-- | win32/win32.c | 25 | ||||
-rw-r--r-- | win32/win32.h | 3 |
3 files changed, 9 insertions, 42 deletions
diff --git a/win32/perlhost.h b/win32/perlhost.h index c91d9a8b90..7926142954 100644 --- a/win32/perlhost.h +++ b/win32/perlhost.h @@ -22,7 +22,6 @@ extern char * g_win32_get_privlib(const char *pl); extern char * g_win32_get_sitelib(const char *pl); extern char * g_win32_get_vendorlib(const char *pl); extern char * g_getlogin(void); -extern int do_spawn2(char *cmd, int exectype); END_EXTERN_C class CPerlHost @@ -1871,19 +1870,6 @@ PerlProcGetOSError(struct IPerlProc* piPerl, SV* sv, DWORD dwErr) win32_str_os_error(sv, dwErr); } -BOOL -PerlProcDoCmd(struct IPerlProc* piPerl, char *cmd) -{ - do_spawn2(cmd, EXECF_EXEC); - return FALSE; -} - -int -PerlProcSpawn(struct IPerlProc* piPerl, char* cmds) -{ - return do_spawn2(cmds, EXECF_SPAWN); -} - int PerlProcSpawnvp(struct IPerlProc* piPerl, int mode, const char *cmdname, const char *const *argv) { @@ -1891,12 +1877,6 @@ PerlProcSpawnvp(struct IPerlProc* piPerl, int mode, const char *cmdname, const c } int -PerlProcASpawn(struct IPerlProc* piPerl, void *vreally, void **vmark, void **vsp) -{ - return do_aspawn(vreally, vmark, vsp); -} - -int PerlProcLastHost(struct IPerlProc* piPerl) { dTHX; @@ -1935,10 +1915,7 @@ struct IPerlProc perlProc = PerlProcGetpid, PerlProcDynaLoader, PerlProcGetOSError, - PerlProcDoCmd, - PerlProcSpawn, PerlProcSpawnvp, - PerlProcASpawn, PerlProcLastHost, PerlProcPopenList, PerlProcGetTimeOfDay diff --git a/win32/win32.c b/win32/win32.c index 6f96431603..41788273b7 100644 --- a/win32/win32.c +++ b/win32/win32.c @@ -85,15 +85,13 @@ int _fcloseall(); # define win32_get_sitelib g_win32_get_sitelib # undef win32_get_vendorlib # define win32_get_vendorlib g_win32_get_vendorlib -# undef do_spawn -# define do_spawn g_do_spawn # undef getlogin # define getlogin g_getlogin #endif static void get_shell(void); static long tokenize(const char *str, char **dest, char ***destv); - int do_spawn2(char *cmd, int exectype); +static int do_spawn2(pTHX_ char *cmd, int exectype); static BOOL has_shell_metachars(char *ptr); static long filetime_to_clock(PFILETIME ft); static BOOL filetime_from_time(PFILETIME ft, time_t t); @@ -516,12 +514,8 @@ get_shell(void) } int -do_aspawn(void *vreally, void **vmark, void **vsp) +Perl_do_aspawn(pTHX_ SV *really, SV **mark, SV **sp) { - dTHX; - SV *really = (SV*)vreally; - SV **mark = (SV**)vmark; - SV **sp = (SV**)vsp; char **argv; char *str; int status; @@ -607,10 +601,9 @@ find_next_space(const char *s) return (char*)s; } -int -do_spawn2(char *cmd, int exectype) +static int +do_spawn2(pTHX_ char *cmd, int exectype) { - dTHX; char **a; char *s; char **argv; @@ -700,21 +693,21 @@ do_spawn2(char *cmd, int exectype) } int -do_spawn(char *cmd) +Perl_do_spawn(pTHX_ char *cmd) { - return do_spawn2(cmd, EXECF_SPAWN); + return do_spawn2(aTHX_ cmd, EXECF_SPAWN); } int -do_spawn_nowait(char *cmd) +Perl_do_spawn_nowait(pTHX_ char *cmd) { - return do_spawn2(cmd, EXECF_SPAWN_NOWAIT); + return do_spawn2(aTHX_ cmd, EXECF_SPAWN_NOWAIT); } bool Perl_do_exec(pTHX_ char *cmd) { - do_spawn2(cmd, EXECF_EXEC); + do_spawn2(aTHX_ cmd, EXECF_EXEC); return FALSE; } diff --git a/win32/win32.h b/win32/win32.h index f37829b174..897588544d 100644 --- a/win32/win32.h +++ b/win32/win32.h @@ -307,9 +307,6 @@ extern FILE * my_fdopen(int, char *); #endif extern int my_fclose(FILE *); extern int my_fstat(int fd, Stat_t *sbufptr); -extern int do_aspawn(void *really, void **mark, void **sp); -extern int do_spawn(char *cmd); -extern int do_spawn_nowait(char *cmd); extern char * win32_get_privlib(const char *pl); extern char * win32_get_sitelib(const char *pl); extern char * win32_get_vendorlib(const char *pl); |