[Libguestfs] [PATCH] mdadm: fix a possible memory leak when error

Wanlong Gao wanlong.gao at gmail.com
Mon Dec 5 13:50:46 UTC 2011


On 12/05/2011 04:59 PM, Richard W.M. Jones wrote:

> On Mon, Dec 05, 2011 at 02:30:35PM +0800, Wanlong Gao wrote:
>> When add_string() error, it returned without free the *ret*.
>>
>> Signed-off-by: Wanlong Gao <gaowanlong at cn.fujitsu.com>
>> ---
>>  daemon/md.c |    4 ++--
>>  1 files changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/daemon/md.c b/daemon/md.c
>> index 5a4d815..8d28878 100644
>> --- a/daemon/md.c
>> +++ b/daemon/md.c
>> @@ -294,12 +294,12 @@ do_md_detail(const char *md)
>>      }
>>    }
>>  
>> +  if (add_string(&ret, &size, &alloc, NULL) == -1) goto error;
>> +
>>    free(out);
>>    free(err);
>>    free(lines); /* We freed the contained strings when we freed out */
>>  
>> -  if (add_string(&ret, &size, &alloc, NULL) == -1) return NULL;
>> -
>>    return ret;
> 
> I'm not sure there's a problem.  'add_string' frees the strings and
> sets ret = NULL on error, so either way of doing this seems safe ...


Yep, I made a mistake.

> 
> Rich.
> 





More information about the Libguestfs mailing list