X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=Util.xs;h=75ba8cabcabc72fd469c12eb9ceb36381c39f15e;hb=dec1755eec42f54c4d57813ed03393c0f765a699;hp=8f6345b2a584d426266dcae7c61a64c1b0ba9739;hpb=c803f32528475ddf0f1713bbe666b6157020f5d1;p=perl%2Fmodules%2FScalar-Vec-Util.git diff --git a/Util.xs b/Util.xs index 8f6345b..75ba8ca 100644 --- a/Util.xs +++ b/Util.xs @@ -28,6 +28,7 @@ BOOT: void vfill(SV *sv, SV *ss, SV *sl, SV *sf) +PROTOTYPE: $$$$ PREINIT: size_t s, l, n, o; char f, *v; @@ -59,6 +60,7 @@ CODE: void vcopy(SV *sf, SV *sfs, SV *st, SV *sts, SV *sl) +PROTOTYPE: $$$$$ PREINIT: size_t fs, ts, l, lf = 0, n, o; char *t, *f; @@ -107,6 +109,7 @@ CODE: SV * veq(SV *sv1, SV *ss1, SV *sv2, SV *ss2, SV *sl) +PROTOTYPE: $$$$$ PREINIT: size_t s1, s2, l, o, n; char *v1, *v2; @@ -115,6 +118,8 @@ CODE: croak(svu_error_invarg); l = SvUV(sl); + if (!l) + XSRETURN(0); s1 = SvUV(ss1); s2 = SvUV(ss2); SvUPGRADE(sv1, SVt_PV);