OSDN Git Service

[COVERITY] Free memory leak in mke2fs when parsing extended options
authorBrian Behlendorf <behlendorf1@llnl.gov>
Thu, 31 May 2007 15:30:47 +0000 (11:30 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Thu, 31 May 2007 15:30:47 +0000 (11:30 -0400)
Coverity ID: 34: Resource Leak

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
misc/ChangeLog
misc/mke2fs.c

index 4390c92..0923f94 100644 (file)
@@ -1,3 +1,7 @@
+2007-05-31  Theodore Tso  <tytso@mit.edu>
+
+       * mke2fs.c (parse_extended_opts): Free allocated buf on return
+
 2007-05-22  Theodore Tso  <tytso@mit.edu>
 
        * mke2fs.c (PRS): Make num_inodes use an unsigned long long type
index 204b8a9..0292a64 100644 (file)
@@ -841,6 +841,7 @@ static void parse_extended_opts(struct ext2_super_block *param,
                                if (param->s_rev_level == EXT2_GOOD_OLD_REV) {
                                        fprintf(stderr, 
        _("On-line resizing not supported with revision 0 filesystems\n"));
+                                       free(buf);
                                        exit(1);
                                }
                                param->s_feature_compat |=
@@ -859,8 +860,10 @@ static void parse_extended_opts(struct ext2_super_block *param,
                        "Valid extended options are:\n"
                        "\tstride=<stride length in blocks>\n"
                        "\tresize=<resize maximum size in blocks>\n\n"));
+               free(buf);
                exit(1);
        }
+       free(buf);
 }      
 
 static __u32 ok_features[3] = {