diff options
author | Eric Sandeen <sandeen@redhat.com> | 2008-02-06 01:37:10 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2008-02-06 10:41:05 -0800 |
commit | 55581d018ed3493d226e7a4d645d9c8a5af6c36b (patch) | |
tree | d687d90390073aeb0bda273b7b9f051a36f5d892 /fs/hfs/brec.c | |
parent | 7c28cbaed6811260efc0134b984b924cd0ed46f5 (diff) | |
download | linux-55581d018ed3493d226e7a4d645d9c8a5af6c36b.tar.gz linux-55581d018ed3493d226e7a4d645d9c8a5af6c36b.tar.bz2 linux-55581d018ed3493d226e7a4d645d9c8a5af6c36b.zip |
address hfs on-disk corruption robustness review comments
Address Roman's review comments for the previously sent on-disk
corruption hfs robustness patch.
- use 0 as a failure value, rather than making a new macro HFS_BAD_KEYLEN,
and use a switch statement instead of if's.
- Add new fail: target to __hfs_brec_find to skip assignments using bad
values when exiting with a failure.
[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: Eric Sandeen <sandeen@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/brec.c')
-rw-r--r-- | fs/hfs/brec.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/hfs/brec.c b/fs/hfs/brec.c index 8626ee375ea8..878bf25dbc6a 100644 --- a/fs/hfs/brec.c +++ b/fs/hfs/brec.c @@ -49,14 +49,14 @@ u16 hfs_brec_keylen(struct hfs_bnode *node, u16 rec) if (retval > node->tree->max_key_len + 2) { printk(KERN_ERR "hfs: keylen %d too large\n", retval); - retval = HFS_BAD_KEYLEN; + retval = 0; } } else { retval = (hfs_bnode_read_u8(node, recoff) | 1) + 1; if (retval > node->tree->max_key_len + 1) { printk(KERN_ERR "hfs: keylen %d too large\n", retval); - retval = HFS_BAD_KEYLEN; + retval = 0; } } } |