diff options
author | Jim Meyering <jim@meyering.net> | 2008-04-29 00:59:07 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-29 08:06:01 -0700 |
commit | 3fbe5c31009d26c7b6b73d5c69fe930a5e9d2e26 (patch) | |
tree | 5d8b804fb3bdd9b299cc8f05f16337f65a123045 /fs/hfs | |
parent | 6db27dd9d26fb270adaa4c265df65ccb49638bd0 (diff) | |
download | op-kernel-dev-3fbe5c31009d26c7b6b73d5c69fe930a5e9d2e26.zip op-kernel-dev-3fbe5c31009d26c7b6b73d5c69fe930a5e9d2e26.tar.gz |
hfs: handle match_strdup failure
fs/hfs/super.c (parse_options): Handle match_strdup failure, twice.
Signed-off-by: Jim Meyering <meyering@redhat.com>
Cc: Roman Zippel <zippel@linux-m68k.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/hfs')
-rw-r--r-- | fs/hfs/super.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/fs/hfs/super.c b/fs/hfs/super.c index 32de44e..8cf6797 100644 --- a/fs/hfs/super.c +++ b/fs/hfs/super.c @@ -297,7 +297,8 @@ static int parse_options(char *options, struct hfs_sb_info *hsb) return 0; } p = match_strdup(&args[0]); - hsb->nls_disk = load_nls(p); + if (p) + hsb->nls_disk = load_nls(p); if (!hsb->nls_disk) { printk(KERN_ERR "hfs: unable to load codepage \"%s\"\n", p); kfree(p); @@ -311,7 +312,8 @@ static int parse_options(char *options, struct hfs_sb_info *hsb) return 0; } p = match_strdup(&args[0]); - hsb->nls_io = load_nls(p); + if (p) + hsb->nls_io = load_nls(p); if (!hsb->nls_io) { printk(KERN_ERR "hfs: unable to load iocharset \"%s\"\n", p); kfree(p); |