summaryrefslogtreecommitdiff
path: root/emu/port/main.c
diff options
context:
space:
mode:
authorCharles.Forsyth <devnull@localhost>2007-01-15 21:04:26 +0000
committerCharles.Forsyth <devnull@localhost>2007-01-15 21:04:26 +0000
commit8911721efbf3b3721376e2baa30bae002c2975c2 (patch)
treeaa059ffa39c2c4f1cd5ed2e137dcb9b079de2717 /emu/port/main.c
parent0e96539ff7cff23233d3f0a64bb285b385a3a1f4 (diff)
20070115
Diffstat (limited to 'emu/port/main.c')
-rw-r--r--emu/port/main.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/emu/port/main.c b/emu/port/main.c
index 64f87f4e..f4cb9490 100644
--- a/emu/port/main.c
+++ b/emu/port/main.c
@@ -162,7 +162,7 @@ option(int argc, char *argv[], void (*badusage)(void))
tkfont = EARGF(badusage());
break;
case 'r': /* Set inferno root */
- strncpy(rootdir, EARGF(badusage()), sizeof(rootdir)-1);
+ strecpy(rootdir, rootdir+sizeof(rootdir), EARGF(badusage()));
break;
case '7': /* use 7 bit colormap in X */
xtblbit = 1;
@@ -230,11 +230,15 @@ putenvqv(char *name, char **v, int n, int conf)
void
main(int argc, char *argv[])
{
- char *opt;
+ char *opt, *p;
char *enva[20];
int envc;
+
quotefmtinstall();
savestartup(argc, argv);
+ /* set default root now, so either $EMU or -r can override it later */
+ if((p = getenv("INFERNO")) != nil || (p = getenv("ROOT")) != nil)
+ strecpy(rootdir, rootdir+sizeof(rootdir), p);
opt = getenv("EMU");
if(opt != nil && *opt != '\0') {
enva[0] = "emu";