X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=doio.c;h=fbd1910015c158f730cc4fc835f4eda66ed92957;hb=4d7c789858ca4beacd2cf4028e969fabc2a97426;hp=7269c28f5a9b91dd20b1270fe8981d2d347390db;hpb=3497a01ff49c0a24f2db9e69c6bb89e36e940ed4;p=p5sagit%2Fp5-mst-13.2.git diff --git a/doio.c b/doio.c index 7269c28..fbd1910 100644 --- a/doio.c +++ b/doio.c @@ -176,7 +176,7 @@ Perl_do_openn(pTHX_ GV *gv, register const char *oname, I32 len, int as_raw, IoTYPE(io) = PerlIO_intmode2str(rawmode, &mode[ix], &writing); - namesv = sv_2mortal(newSVpv(oname,0)); + namesv = sv_2mortal(newSVpvn(oname,len)); num_svs = 1; svp = &namesv; type = NULL; @@ -259,9 +259,9 @@ Perl_do_openn(pTHX_ GV *gv, register const char *oname, I32 len, int as_raw, mode[0] = 'w'; writing = 1; if (out_raw) - my_strlcat(mode, "b", PERL_MODE_MAX - 1); + mode[1] = 'b'; else if (out_crlf) - my_strlcat(mode, "t", PERL_MODE_MAX - 1); + mode[1] = 't'; if (num_svs > 1) { fp = PerlProc_popen_list(mode, num_svs, svp); } @@ -290,9 +290,9 @@ Perl_do_openn(pTHX_ GV *gv, register const char *oname, I32 len, int as_raw, writing = 1; if (out_raw) - my_strlcat(mode, "b", PERL_MODE_MAX - 1); + mode[1] = 'b'; else if (out_crlf) - my_strlcat(mode, "t", PERL_MODE_MAX - 1); + mode[1] = 't'; if (*type == '&') { duplicity: dodup = PERLIO_DUP_FD; @@ -416,9 +416,9 @@ Perl_do_openn(pTHX_ GV *gv, register const char *oname, I32 len, int as_raw, } while (isSPACE(*type)); mode[0] = 'r'; if (in_raw) - my_strlcat(mode, "b", PERL_MODE_MAX - 1); + mode[1] = 'b'; else if (in_crlf) - my_strlcat(mode, "t", PERL_MODE_MAX - 1); + mode[1] = 't'; if (*type == '&') { goto duplicity; } @@ -470,9 +470,9 @@ Perl_do_openn(pTHX_ GV *gv, register const char *oname, I32 len, int as_raw, mode[0] = 'r'; if (in_raw) - my_strlcat(mode, "b", PERL_MODE_MAX - 1); + mode[1] = 'b'; else if (in_crlf) - my_strlcat(mode, "t", PERL_MODE_MAX - 1); + mode[1] = 't'; if (num_svs > 1) { fp = PerlProc_popen_list(mode,num_svs,svp); @@ -501,9 +501,9 @@ Perl_do_openn(pTHX_ GV *gv, register const char *oname, I32 len, int as_raw, mode[0] = 'r'; if (in_raw) - my_strlcat(mode, "b", PERL_MODE_MAX - 1); + mode[1] = 'b'; else if (in_crlf) - my_strlcat(mode, "t", PERL_MODE_MAX - 1); + mode[1] = 't'; if (*name == '-' && name[1] == '\0') { fp = PerlIO_stdin(); @@ -1380,7 +1380,7 @@ Perl_do_aexec5(pTHX_ SV *really, register SV **mark, register SV **sp, int fd, int do_report) { dVAR; -#if defined(MACOS_TRADITIONAL) || defined(__SYMBIAN32__) +#if defined(MACOS_TRADITIONAL) || defined(__SYMBIAN32__) || defined(__LIBCATAMOUNT__) Perl_croak(aTHX_ "exec? I'm not *that* kind of operating system"); #else if (sp > mark) { @@ -1439,7 +1439,7 @@ Perl_do_exec3(pTHX_ const char *incmd, int fd, int do_report) const Size_t cmdlen = strlen(incmd) + 1; Newx(buf, cmdlen, char); cmd = buf; - my_strlcpy(cmd, incmd, cmdlen); + memcpy(cmd, incmd, cmdlen); while (*cmd && isSPACE(*cmd)) cmd++; @@ -2249,7 +2249,7 @@ Perl_do_shmio(pTHX_ I32 optype, SV **mark, SV **sp) if (shm == (char *)-1) /* I hate System V IPC, I really do */ return -1; if (optype == OP_SHMREAD) { - const char *mbuf; + char *mbuf; /* suppress warning when reading into undef var (tchrist 3/Mar/00) */ if (! SvOK(mstr)) sv_setpvn(mstr, "", 0);