X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=NSGetExecutablePath.xs;h=b9ef190a3a26ab41e5dfb5d17e335e2922561ae3;hb=79aa4ff6b42ade50fdea796883506f5e424879fc;hp=c0a3a93bccce1e339aa4617a75fd5f2be1577e67;hpb=68720c70b78fdbcb3d79362b6e4bb3543e8c6da4;p=perl%2Fmodules%2FMac-NSGetExecutablePath.git diff --git a/NSGetExecutablePath.xs b/NSGetExecutablePath.xs index c0a3a93..b9ef190 100644 --- a/NSGetExecutablePath.xs +++ b/NSGetExecutablePath.xs @@ -29,16 +29,13 @@ PPCODE: _NSGetExecutablePath(buf, &size); if (size >= MAXPATHLEN * MAXPATHLEN) croak(nsgep_too_long); -#ifdef newSV_type - dst = newSV_type(SVt_PV); -#else - dst = sv_newmortal(); - (void) SvUPGRADE(dst, SVt_PV); -#endif + dst = sv_newmortal(); + sv_upgrade(dst, SVt_PV); buffer = SvGROW(dst, size); if (_NSGetExecutablePath(buffer, &size)) croak(nsgep_too_long); - SvCUR_set(dst, size - 1); + if (size) + SvCUR_set(dst, size - 1); SvPOK_on(dst); XPUSHs(dst); XSRETURN(1);