stop t/op/write.t failures under stdio by always closing files
[p5sagit/p5-mst-13.2.git] / regexec.c
index 1f36027..fae7004 100644 (file)
--- a/regexec.c
+++ b/regexec.c
@@ -1043,7 +1043,7 @@ S_find_byclass(pTHX_ regexp * prog, regnode *c, char *s, char *strend, char *sta
            c1 = *(U8*)m;
            c2 = PL_fold_locale[c1];
          do_exactf:
-           e = HOP3c(strend, -lnc, s);
+           e = HOP3c(strend, -((I32)lnc), s);
 
            if (norun && e < s)
                e = s;                  /* Due to minlen logic of intuit() */
@@ -2104,8 +2104,7 @@ S_regtry(pTHX_ regexp *prog, char *startpos)
        if (PL_reg_sv) {
            /* Make $_ available to executed code. */
            if (PL_reg_sv != DEFSV) {
-               /* SAVE_DEFSV does *not* suffice here for USE_5005THREADS */
-               SAVESPTR(DEFSV);
+               SAVE_DEFSV;
                DEFSV = PL_reg_sv;
            }