diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2007-07-05 18:01:44 +0200 |
---|---|---|
committer | Sascha Hauer <sha@octopus.labnet.pengutronix.de> | 2007-07-05 18:01:44 +0200 |
commit | 96b3a924540baa38372ac4c5747ebf30124d4b00 (patch) | |
tree | d85003c8ba7c149eec7cc9c58b0ff2874e1f51b0 /fs/devfs.c | |
parent | 9da2b07349c5c2b8287fb8cc3647295827879d01 (diff) | |
download | barebox-96b3a924540baa38372ac4c5747ebf30124d4b00.tar.gz barebox-96b3a924540baa38372ac4c5747ebf30124d4b00.tar.xz |
svn_rev_337
Diffstat (limited to 'fs/devfs.c')
-rw-r--r-- | fs/devfs.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/fs/devfs.c b/fs/devfs.c index 6cf8920cb8..3a90603e54 100644 --- a/fs/devfs.c +++ b/fs/devfs.c @@ -54,7 +54,7 @@ struct dirent* devfs_readdir(struct device_d *_dev, struct dir *dir) { struct device_d *dev = dir->priv; - while (dev && !strlen(dev->id)) + while (dev && (!strlen(dev->id) || !dev->driver)) dev = dev->next; if (dev) { @@ -79,6 +79,9 @@ int devfs_stat(struct device_d *_dev, const char *filename, struct stat *s) if (!dev) return -ENOENT; + if (!dev->driver) + return -ENXIO; + s->st_mode = S_IFCHR; s->st_size = dev->size; if (dev->driver->write) |