summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@centraldogma>2011-12-13 16:12:40 +0100
committercinap_lenrek <cinap_lenrek@centraldogma>2011-12-13 16:12:40 +0100
commitbef3c5a3c54408a506e5099d62079c7e9e4c2cb0 (patch)
treef2c6cbe4d8d40d14f2a898e088abd1ce560a63f2
parent1238374df998b7f4a3efcf0532076ee1d18bc575 (diff)
downloadplan9front-bef3c5a3c54408a506e5099d62079c7e9e4c2cb0.tar.xz
devfs: dont raise "no more trees" if malloc fails
-rw-r--r--sys/src/9/port/devfs.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/sys/src/9/port/devfs.c b/sys/src/9/port/devfs.c
index ea620b00d..c5781ee17 100644
--- a/sys/src/9/port/devfs.c
+++ b/sys/src/9/port/devfs.c
@@ -250,7 +250,7 @@ treealloc(char *name)
return nil;
t = trees[i] = mallocz(sizeof(Tree), 1);
if(t == nil)
- return nil;
+ error(Enomem);
if(i == ntrees)
ntrees++;
kstrdup(&t->name, name);
@@ -675,10 +675,11 @@ Fail:
t = lookuptree(tname);
if(t != nil)
validdevname(t, dname);
- else
+ else{
t = treealloc(tname);
- if(t == nil)
- error("no more trees");
+ if(t == nil)
+ error("no more trees");
+ }
mp = devalloc(t, dname);
if(mp == nil){
if(t->ndevs == 0) /* it was created for us */