[COVERITY] Fix memory leak in libe2p (e2p_edit_mntopts)

Need to free memory allocated to buf.

Coverity ID: 17: Resource Leak
Coverity ID: 18: Resource Leak

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
bitmap-optimize
Brian Behlendorf 2007-03-21 17:14:10 -04:00 committed by Theodore Ts'o
parent 2711ca1c23
commit 61bf36ef2d
2 changed files with 13 additions and 6 deletions

View File

@ -1,6 +1,7 @@
2007-03-21 Theodore Tso <tytso@mit.edu>
* feature.c (e2p_edit_feature): Fix memory leak.
* feature.c (e2p_edit_feature), mntopts.c (e2p_edit_mntopts): Fix
memory leak.
2006-11-12 Theodore Tso <tytso@mit.edu>

View File

@ -98,6 +98,7 @@ int e2p_edit_mntopts(const char *str, __u32 *mntopts, __u32 ok)
char *cp, *buf, *next;
int neg;
unsigned int mask;
int rc = 0;
buf = malloc(strlen(str)+1);
if (!buf)
@ -120,10 +121,14 @@ int e2p_edit_mntopts(const char *str, __u32 *mntopts, __u32 ok)
cp++;
break;
}
if (e2p_string2mntopt(cp, &mask))
return 1;
if (ok && !(ok & mask))
return 1;
if (e2p_string2mntopt(cp, &mask)) {
rc = 1;
break;
}
if (ok && !(ok & mask)) {
rc = 1;
break;
}
if (mask & EXT3_DEFM_JMODE)
*mntopts &= ~EXT3_DEFM_JMODE;
if (neg)
@ -132,5 +137,6 @@ int e2p_edit_mntopts(const char *str, __u32 *mntopts, __u32 ok)
*mntopts |= mask;
cp = next ? next+1 : 0;
}
return 0;
free(buf);
return rc;
}