diff options
| author | cinap_lenrek <cinap_lenrek@centraldogma> | 2011-12-13 16:12:40 +0100 |
|---|---|---|
| committer | cinap_lenrek <cinap_lenrek@centraldogma> | 2011-12-13 16:12:40 +0100 |
| commit | bef3c5a3c54408a506e5099d62079c7e9e4c2cb0 (patch) | |
| tree | f2c6cbe4d8d40d14f2a898e088abd1ce560a63f2 | |
| parent | 1238374df998b7f4a3efcf0532076ee1d18bc575 (diff) | |
| download | plan9front-bef3c5a3c54408a506e5099d62079c7e9e4c2cb0.tar.xz | |
devfs: dont raise "no more trees" if malloc fails
| -rw-r--r-- | sys/src/9/port/devfs.c | 9 |
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 */ |
