From: Theodore Ts'o Date: Mon, 25 Aug 2003 01:36:38 +0000 (-0400) Subject: util.c (get_backup_sb): Check to make sure the context is passed X-Git-Tag: E2FSPROGS-1_35-WIP-1207~25 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=557ddb2fdf46c055d80c66267c8c83299527c8d1;p=thirdparty%2Fe2fsprogs.git util.c (get_backup_sb): Check to make sure the context is passed in non-NULL before trying to dereference it. Otherwise we might core dump when called to expand %S in a problem description. --- diff --git a/e2fsck/ChangeLog b/e2fsck/ChangeLog index 11df40fe1..b5b9efa0f 100644 --- a/e2fsck/ChangeLog +++ b/e2fsck/ChangeLog @@ -1,5 +1,10 @@ 2003-08-24 Theodore Ts'o + * util.c (get_backup_sb): Check to make sure the context is passed + in non-NULL before trying to dereference it. Otherwise we + might core dump when called to expand %S in a problem + description. + * e2fsck.8.in: Adjust description line so that apropos "ext2" or "ext3" will find the man page. (Addresses Debian Bug #206845) diff --git a/e2fsck/util.c b/e2fsck/util.c index 2c890dc60..8bb538d1f 100644 --- a/e2fsck/util.c +++ b/e2fsck/util.c @@ -439,8 +439,11 @@ blk_t get_backup_sb(e2fsck_t ctx, ext2_filsys fs, const char *name, ext2fs_swap_super(sb); #endif if (sb->s_magic == EXT2_SUPER_MAGIC) { - ret_sb = ctx->superblock = superblock; - ctx->blocksize = blocksize; + ret_sb = superblock; + if (ctx) { + ctx->superblock = superblock; + ctx->blocksize = blocksize; + } break; } }