small but potentially deadly ....
diff -c /n/dump/2014/0402/sys/src/cmd/fossil/9fsys.c 9fsys.c
/n/dump/2014/0402/sys/src/cmd/fossil/9fsys.c:34,40 - 9fsys.c:34,40
char* curfsys;
} sbox;
- static char *_argv0;
+ char *_argv0;
#define argv0 _argv0
static char FsysAll[] = "all";
diff -c /n/dump/2014/0402/sys/src/cmd/fossil/Ccli.c Ccli.c
/n/dump/2014/0402/sys/src/cmd/fossil/Ccli.c:33,38 - Ccli.c:33,40
return 0;
}
+ extern char *_argv0;
+
int
cliExec(char* buf)
{
/n/dump/2014/0402/sys/src/cmd/fossil/Ccli.c:57,62 - Ccli.c:59,65
vtUnlock(cbox.lock);
if(!(r = cbox.cmd[i].cmd(argc, argv)))
consPrint("%s\n", vtGetError());
+ _argv0 = nil; /* evade defn of ARGBEGIN */
vtMemFree(p);
return r;
}