aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2024-04-06 11:13:24 -0400
committerRuss Cox <rsc@golang.org>2024-04-06 11:13:24 -0400
commitd5b2552b9582cf10a4fce1fde3584415246d4ef9 (patch)
treee32d58394fd7ca5158e1fe6f459566faf36357fc
parentbe7c68f6954f7dcaa53403e0f600716f65a13d32 (diff)
acme: clean up environment after exec
Make up for the lack of a real rfork(RFENVG).
-rw-r--r--src/cmd/acme/exec.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/cmd/acme/exec.c b/src/cmd/acme/exec.c
index 1dd02288..766669c2 100644
--- a/src/cmd/acme/exec.c
+++ b/src/cmd/acme/exec.c
@@ -1532,6 +1532,11 @@ runproc(void *argvp)
iseditcmd = (uintptr)argv[9];
free(argv);
+ unsetenv("acmeaddr");
+ unsetenv("winid");
+ unsetenv("%");
+ unsetenv("samfile");
+
t = s;
while(*t==' ' || *t=='\n' || *t=='\t')
t++;
@@ -1728,6 +1733,10 @@ Hard:
rcarg[2] = t;
rcarg[3] = nil;
ret = threadspawnd(sfd, rcarg[0], rcarg, dir);
+ unsetenv("acmeaddr");
+ unsetenv("winid");
+ unsetenv("%");
+ unsetenv("samfile");
free(dir);
if(ret >= 0){
if(cpid)