win32 tweaks
[p5sagit/p5-mst-13.2.git] / toke.c
diff --git a/toke.c b/toke.c
index 4058726..64c6981 100644 (file)
--- a/toke.c
+++ b/toke.c
@@ -1885,7 +1885,7 @@ yylex(void)
                     */
                    SV *x = GvSV(gv_fetchpv("\030", TRUE, SVt_PV));
                    assert(SvPOK(x) || SvGMAGICAL(x));
-                   if (sv_eq(x, GvSV(curcop->cop_filegv))) {
+                   if (sv_eq(x, GvSV(PL_curcop->cop_filegv))) {
                        sv_setpvn(x, ipath, ipathend - ipath);
                        SvSETMAGIC(x);
                    }
@@ -2857,8 +2857,8 @@ yylex(void)
                gv = Nullgv;
                gvp = 0;
                if (PL_dowarn && hgv)
-                   warn("Ambiguous call resolved as CORE::%s(), "
-                        "qualify as such or use &", GvENAME(hgv));
+                   warn("Ambiguous call resolved as CORE::%s(), %s",
+                        GvENAME(hgv), "qualify as such or use &");
            }
        }
 
@@ -3197,7 +3197,7 @@ yylex(void)
 
        case KEY_crypt:
 #ifdef FCRYPT
-           if (!cryptseen++)
+           if (!PL_cryptseen++)
                init_des();
 #endif
            LOP(OP_CRYPT,XTERM);
@@ -5246,7 +5246,9 @@ scan_heredoc(register char *s)
        PL_bufend = SvPVX(PL_linestr) + SvCUR(PL_linestr);
 #ifdef TMP_CRLF_PATCH
        if (PL_bufend - PL_linestart >= 2) {
-           if (PL_bufend[-2] == '\r' || PL_bufend[-2] == '\n') {
+           if ((PL_bufend[-2] == '\r' && PL_bufend[-1] == '\n') ||
+               (PL_bufend[-2] == '\n' && PL_bufend[-1] == '\r'))
+           {
                PL_bufend[-2] = '\n';
                PL_bufend--;
                SvCUR_set(PL_linestr, PL_bufend - SvPVX(PL_linestr));
@@ -5543,7 +5545,9 @@ scan_str(char *start)
 
 #ifdef TMP_CRLF_PATCH
        if (to - SvPVX(sv) >= 2) {
-           if (to[-2] == '\r' || to[-2] == '\n') {
+           if ((to[-2] == '\r' && to[-1] == '\n') ||
+               (to[-2] == '\n' && to[-1] == '\r'))
+           {
                to[-2] = '\n';
                to--;
                SvCUR_set(sv, to - SvPVX(sv));