tree 6c16fdc37f5bdd46f38e5dd8054b0b1c7363833c
parent ec471dc484b8ca5352903ee28796b8b248313547
author KAMBAROV, ZAUR <kambarov@berkeley.edu> 1120016711 -0700
committer Linus Torvalds <torvalds@ppc970.osdl.org> 1120018834 -0700

[PATCH] coverity: fs/ext3/super.c: match_int return check

The return value of  "match_int" is  checked  27 out of 28 times

In lib/parser.c
142  	/**
143  	 * match_int: - scan a decimal representation of an integer from a substring_t
144  	 * @s: substring_t to be scanned
145  	 * @result: resulting integer on success
146  	 *
147  	 * Description: Attempts to parse the &substring_t @s as a decimal integer. On
148  	 * success, sets @result to the integer represented by the string and returns 0.
149  	 * Returns either -ENOMEM or -EINVAL on failure.
150  	 */
151  	int match_int(substring_t *s, int *result)
152  	{
153  		return match_number(s, result, 0);
154  	}

Signed-off-by: Zaur Kambarov <zkambarov@coverity.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
