diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2007-07-05 18:01:40 +0200 |
---|---|---|
committer | Sascha Hauer <sha@octopus.labnet.pengutronix.de> | 2007-07-05 18:01:40 +0200 |
commit | d5f7b1f985b772bc7ac049bbcdefbdfa9fd3bb3a (patch) | |
tree | 56f8c566931291436a737e96de59cb52c700828a /fs/cramfs | |
parent | 700983e486bbaadcb1ba76a61d286da7e8647254 (diff) | |
download | barebox-d5f7b1f985b772bc7ac049bbcdefbdfa9fd3bb3a.tar.gz barebox-d5f7b1f985b772bc7ac049bbcdefbdfa9fd3bb3a.tar.xz |
svn_rev_288
remove handling of / in stat function. We will never be called with / here
Diffstat (limited to 'fs/cramfs')
-rw-r--r-- | fs/cramfs/cramfs.c | 20 |
1 files changed, 7 insertions, 13 deletions
diff --git a/fs/cramfs/cramfs.c b/fs/cramfs/cramfs.c index e7f7495435..022dff4f20 100644 --- a/fs/cramfs/cramfs.c +++ b/fs/cramfs/cramfs.c @@ -365,20 +365,14 @@ static int cramfs_stat(struct device_d *_dev, const char *filename, struct stat char *f; unsigned long offset; - if (strlen (filename) == 0 || !strcmp (filename, "/")) { - /* Root directory. Use root inode in super block */ - offset = CRAMFS_GET_OFFSET (&(priv->super.root)) << 2; - } else { - f = strdup(filename); - offset = cramfs_resolve (dev->map_base, - CRAMFS_GET_OFFSET (&(priv->super.root)) << 2, - CRAMFS_24 (priv->super.root.size), 1, - strtok (f, "/")); - - free(f); - } + f = strdup(filename); + offset = cramfs_resolve (dev->map_base, + CRAMFS_GET_OFFSET (&(priv->super.root)) << 2, + CRAMFS_24 (priv->super.root.size), 1, + strtok (f, "/")); + free(f); - if (offset < 0) + if (offset <= 0) return -ENOENT; inode = (struct cramfs_inode *) (dev->map_base + offset); |