diff options
| author | Jesper Juhl <jesper.juhl@gmail.com> | 2006-04-19 01:21:54 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-04-19 12:13:52 -0400 |
| commit | aa1e816fc92215f94bdfd90107baae8fdc2440d1 (patch) | |
| tree | 1d520ff39b65a7d3a5f68008eb44ea15c63e0d96 /usr | |
| parent | 9dfb563b07b1aafcd7d40528ebfa7f9ce28f0556 (diff) | |
[PATCH] Fix potential NULL pointer deref in gen_init_cpio
Fix potential NULL pointer deref in gen_init_cpio.c spotted by coverity
checker. This fixes coverity bug #86
Without this patch we risk dereferencing a NULL `type' in the
"if ('\n' == *type) {" line.
Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'usr')
| -rw-r--r-- | usr/gen_init_cpio.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/usr/gen_init_cpio.c b/usr/gen_init_cpio.c index 33dbcbf77c5..83acd6cc0b3 100644 --- a/usr/gen_init_cpio.c +++ b/usr/gen_init_cpio.c | |||
| @@ -471,6 +471,7 @@ int main (int argc, char *argv[]) | |||
| 471 | "ERROR: incorrect format, could not locate file type line %d: '%s'\n", | 471 | "ERROR: incorrect format, could not locate file type line %d: '%s'\n", |
| 472 | line_nr, line); | 472 | line_nr, line); |
| 473 | ec = -1; | 473 | ec = -1; |
| 474 | break; | ||
| 474 | } | 475 | } |
| 475 | 476 | ||
| 476 | if ('\n' == *type) { | 477 | if ('\n' == *type) { |
| @@ -506,7 +507,8 @@ int main (int argc, char *argv[]) | |||
| 506 | line_nr, line); | 507 | line_nr, line); |
| 507 | } | 508 | } |
| 508 | } | 509 | } |
| 509 | cpio_trailer(); | 510 | if (ec == 0) |
| 511 | cpio_trailer(); | ||
| 510 | 512 | ||
| 511 | exit(ec); | 513 | exit(ec); |
| 512 | } | 514 | } |
