diff options
Diffstat (limited to 'src/cmd/acme/exec.c')
| -rw-r--r-- | src/cmd/acme/exec.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/cmd/acme/exec.c b/src/cmd/acme/exec.c index 766669c2..247b1eaa 100644 --- a/src/cmd/acme/exec.c +++ b/src/cmd/acme/exec.c @@ -280,13 +280,14 @@ getarg(Text *argt, int doaddr, int dofile, Rune **rp, int *nrp) Expand e; char *a; + memset(&e, 0, sizeof e); *rp = nil; *nrp = 0; if(argt == nil) return nil; a = nil; textcommit(argt, TRUE); - if(expand(argt, argt->q0, argt->q1, &e)){ + if(expand(argt, argt->q0, argt->q1, &e, FALSE)){ free(e.bname); if(e.nname && dofile){ e.name = runerealloc(e.name, e.nname+1); @@ -1083,7 +1084,7 @@ look(Text *et, Text *t, Text *argt, int _0, int _1, Rune *arg, int narg) if(et && et->w){ t = &et->w->body; if(narg > 0){ - search(t, arg, narg); + search(t, arg, narg, FALSE); return; } getarg(argt, FALSE, FALSE, &r, &n); @@ -1092,7 +1093,7 @@ look(Text *et, Text *t, Text *argt, int _0, int _1, Rune *arg, int narg) r = runemalloc(n); bufread(&t->file->b, t->q0, r, n); } - search(t, r, n); + search(t, r, n, FALSE); free(r); } } |