ref: e08f7ebb67ac129e475e57f95e69617eb523846f
dir: /patch-multi/
diff d5938c597328adb8abb8785b4ac820ca0f094b6b uncommitted
--- a/sys/src/cmd/patch.c
+++ b/sys/src/cmd/patch.c
@@ -503,6 +503,8 @@
free(c->new);
}
free(changed);
+ changed = nil;
+ nchanged = 0;
}
void
@@ -723,8 +725,9 @@
}
freepatch(p);
Bterm(f);
+ finish(ok);
}else{
- for(i = 0; i < argc; i++){
+ for(i = 0; ok && i < argc; i++){
if((f = Bopen(argv[i], OREAD)) == nil)
sysfatal("open %s: %r", argv[i]);
if((p = parse(f, argv[i])) == nil)
@@ -735,8 +738,8 @@
}
freepatch(p);
Bterm(f);
+ finish(ok);
}
}
- finish(ok);
exits(nil);
}