On Thu, Jul 11, 2013 at 6:02 PM, Julien Cristau <[email protected]> wrote:
> On Mon, Jun 17, 2013 at 12:39:20 -0400, [email protected] wrote:
>
>> From: Leo Liu <[email protected]>
>>
>> leak happens when looping xrandr prop.
>>
>> Signed-off-by: Leo Liu <[email protected]>
>> ---
>> hw/xfree86/common/xf86Helper.c | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/hw/xfree86/common/xf86Helper.c b/hw/xfree86/common/xf86Helper.c
>> index 721159d..bb17ecc 100644
>> --- a/hw/xfree86/common/xf86Helper.c
>> +++ b/hw/xfree86/common/xf86Helper.c
>> @@ -1813,6 +1813,7 @@ xf86RegisterRootWindowProperty(int ScrnIndex, Atom
>> property, Atom type,
>> }
>> else {
>> free(pNewProp->name);
>> + free(pNewProp->data);
>> existing = TRUE;
>> }
>>
> AFAICT xf86RegisterRootWindowProperty can be called with non-malloc
> 'value' (e.g. for the SeatId stuff in InitOutput, although that's only
> for serverGeneration == 1). Is there any way to make this a little more
> obviously correct?
How about:
else {
free(pNewProp->name);
+ if(pNewProp->data)
+ free(pNewProp->data);
existing = TRUE;
>
> Cheers,
> Julien
_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel