Whamcloud - gitweb
e2p: Fix 's' handling in parse_num_blocks2()
authorJan Kara <jack@suse.cz>
Mon, 25 Feb 2013 05:55:05 +0000 (05:55 +0000)
committerTheodore Ts'o <tytso@mit.edu>
Fri, 1 Mar 2013 01:12:30 +0000 (20:12 -0500)
parse_num_blocks2() wrongly did:
num << 1;
when log_block_size < 0. That is obviously wrong as such statement has
no effect (and the compiler properly warns about it). Callers expect
returned value to be in bytes when log_block_size < 0 so fix the
statement accordingly.

Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
lib/e2p/parse_num.c

index cb0dc5b..e8d6283 100644 (file)
@@ -42,7 +42,7 @@ unsigned long long parse_num_blocks2(const char *arg, int log_block_size)
                break;
        case 's':
                if (log_block_size < 0)
-                       num << 1;
+                       num <<= 9;
                else
                        num >>= (1+log_block_size);
                break;