X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=gitmo%2FMouse.git;a=blobdiff_plain;f=xs-src%2FMouse.xs;h=143228a794e24cfa541d03e04407e867f22bbe56;hp=b095d32a5b5dd50ca8e71761820a07124cb1e8e2;hb=70425827d676b2b4130f5e78689bf017fe4c4609;hpb=df4482579aa76439941d95d721ca541e8c814a6a diff --git a/xs-src/Mouse.xs b/xs-src/Mouse.xs index b095d32..143228a 100644 --- a/xs-src/Mouse.xs +++ b/xs-src/Mouse.xs @@ -693,11 +693,14 @@ CODE: len = AvFILLp(demolishall) + 1; if(len > 0){ GV* const statusvalue = gv_fetchpvs("?", 0, SVt_PV); - SAVESPTR(GvSV(statusvalue)); /* local $? */ + + if(statusvalue){ /* it can be NULL */ + SAVESPTR(GvSV(statusvalue)); /* local $? */ + GvSV(statusvalue) = sv_newmortal(); + } SAVESPTR(ERRSV); /* local $@ */ + ERRSV = newSVpvs_flags("", SVs_TEMP); - GvSV(statusvalue) = sv_newmortal(); - ERRSV = newSVpvs_flags("", SVs_TEMP); for(i = 0; i < len; i++){ SPAGAIN;