X-Git-Url: http://git.vpit.fr/?p=perl%2Fmodules%2FLexical-Types.git;a=blobdiff_plain;f=Types.xs;h=9baa8da22f7f4883d51adfaf13ed83f5fdc8621a;hp=ebfb8a7f1376c939021de932b31334a7245d32b9;hb=7cff22e4b5498f801c1d9be1dcab213a39395d0a;hpb=eadc95d93dd6093c2e4805459beae335dd969bc8 diff --git a/Types.xs b/Types.xs index ebfb8a7..9baa8da 100644 --- a/Types.xs +++ b/Types.xs @@ -201,7 +201,11 @@ STATIC OP *lt_ck_padany(pTHX_ OP *o) { SPAGAIN; if (items > 2) croak(__PACKAGE__ " mangler should return zero, one or two scalars, but got %d", items); - if (items) { + if (items == 0) { + SvREFCNT_dec(orig_pkg); + SvREFCNT_dec(orig_meth); + goto skip; + } else { SV *rsv; if (items > 1) { rsv = POPs; @@ -223,6 +227,7 @@ STATIC OP *lt_ck_padany(pTHX_ OP *o) { PL_ppaddr[OP_PADSV] = lt_pp_padsv; } +skip: return o; }