Thank you for reviwing. After some thinking, I think we need destructor for xf86MonPtr object like MonPtrFree(xf86MonPtr * mon); I guess you are working on this issue:-)
If not, I'll provide a patch. Masatake YAMATO > On Tue, Jul 27, 2010 at 3:56 AM, Masatake YAMATO <yam...@redhat.com> wrote: >> EDID_block is allocated dynamically and attached to xf86MonPtr object in >> the function where the object is initialized. >> When the initilization fails, EDID_block should be freed. >> >> Signed-off-by: Masatake YAMATO <yam...@redhat.com> >> --- >> hw/xfree86/ddc/ddc.c | 4 ++++ >> 1 files changed, 4 insertions(+), 0 deletions(-) >> >> diff --git a/hw/xfree86/ddc/ddc.c b/hw/xfree86/ddc/ddc.c >> index 7379e95..873c674 100644 >> --- a/hw/xfree86/ddc/ddc.c >> +++ b/hw/xfree86/ddc/ddc.c >> @@ -262,6 +262,8 @@ xf86DoEDID_DDC1( >> >> if (EDID_block){ >> tmp = xf86InterpretEDID(scrnIndex,EDID_block); >> + if (!tmp) >> + free(EDID_block); >> } >> #ifdef DEBUG >> else ErrorF("No EDID block returned\n"); >> @@ -423,6 +425,8 @@ xf86DoEEDID(int scrnIndex, I2CBusPtr pBus, Bool complete) >> } >> >> tmp = xf86InterpretEEDID(scrnIndex, EDID_block); >> + if (!tmp) >> + free(EDID_block); >> } >> >> if (tmp && complete) >> -- >> 1.6.2.5 >> >> _______________________________________________ >> xorg-devel@lists.x.org: X.Org development >> Archives: http://lists.x.org/archives/xorg-devel >> Info: http://lists.x.org/mailman/listinfo/xorg-devel >> > > Looks good. > > Reviewed-by: Matt Turner <matts...@gmail.com> > > I think after reviewing your patch, I found another leak. Patch in progress. _______________________________________________ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel