[asperl] add AS patch#21 (misc. fixes)
[p5sagit/p5-mst-13.2.git] / doio.c
diff --git a/doio.c b/doio.c
index f6362b1..61c21b5 100644 (file)
--- a/doio.c
+++ b/doio.c
@@ -741,7 +741,7 @@ do_binmode(PerlIO *fp, int iotype, int flag)
         * document this anywhere). GSAR 97-5-24
         */
        PerlIO_seek(fp,0L,0);
-       fp->flags |= _F_BIN;
+       ((FILE*)fp)->flags |= _F_BIN;
 #endif
        return 1;
     }
@@ -1085,7 +1085,9 @@ apply(I32 type, register SV **mark, register SV **sp)
     SV **oldmark = mark;
 
 #define APPLY_TAINT_PROPER() \
-    if (!(tainting && tainted)) {} else { goto taint_proper; }
+    STMT_START {                                               \
+       if (tainting && tainted) { goto taint_proper_label; }   \
+    } STMT_END
 
     /* This is a first heuristic; it doesn't catch tainting magic. */
     if (tainting) {
@@ -1265,7 +1267,7 @@ apply(I32 type, register SV **mark, register SV **sp)
     }
     return tot;
 
-  taint_proper:
+  taint_proper_label:
     TAINT_PROPER(what);
     return 0;  /* this should never happen */