diff options
author | Michael Forney <mforney@mforney.org> | 2022-10-03 05:51:24 +0000 |
---|---|---|
committer | Michael Forney <mforney@mforney.org> | 2022-10-03 05:51:24 +0000 |
commit | 8f1867a19f7ca881a32878dcee08ddce11b5db36 (patch) | |
tree | 8c8362e969c0d3e8502235b9c636702edc90b45c /sys/src/cmd/patch.c | |
parent | 3ebeabebde7cb1758666cab32a73658f516bb199 (diff) |
patch: fix uninitialized Fbuf during dry run
Diffstat (limited to 'sys/src/cmd/patch.c')
-rw-r--r-- | sys/src/cmd/patch.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/sys/src/cmd/patch.c b/sys/src/cmd/patch.c index 7b25285cb..def9f05ca 100644 --- a/sys/src/cmd/patch.c +++ b/sys/src/cmd/patch.c @@ -568,10 +568,11 @@ apply(Patch *p, char *fname) for(i = 0; i < p->nhunk; i++){ h = &p->hunk[i]; if(curfile == nil || strcmp(curfile, h->newpath) != 0){ - if(!dryrun) + if(!dryrun){ slurp(&f, h->oldpath); + e = f.buf; + } curfile = h->newpath; - e = f.buf; } if(!dryrun){ s = e; @@ -581,7 +582,8 @@ apply(Patch *p, char *fname) e += h->oldlen; } if(i+1 == p->nhunk || strcmp(curfile, p->hunk[i+1].newpath) != 0){ - o = append(o, &osz, e, f.buf + f.len); + if(!dryrun) + o = append(o, &osz, e, f.buf + f.len); blat(h->oldpath, h->newpath, o, osz); osz = 0; } |