xserver: Branch 'master'

Zhenyu Wang zhen78 at gmail.com
Sat Oct 11 09:53:47 PDT 2008


On 2008.10.10 14:07:36 -0400, Adam Jackson wrote:
> On Thu, 2008-10-09 at 22:52 -0700, Zhenyu Wang wrote:
> 
> > diff --git a/hw/xfree86/ddc/xf86DDC.c b/hw/xfree86/ddc/xf86DDC.c
> > index 0d86776..ad8feef 100644
> > --- a/hw/xfree86/ddc/xf86DDC.c
> > +++ b/hw/xfree86/ddc/xf86DDC.c
> > @@ -249,6 +249,7 @@ xf86DoEEDID(int scrnIndex, I2CBusPtr pBus, Bool complete)
> >  
> >  	tmp = xf86InterpretEEDID(scrnIndex, EDID_block);
> >      }
> > +    xfree(EDID_block);
> >  
> >      if (tmp && complete)
> >  	tmp->flags |= EDID_COMPLETE_RAWDATA;
> 
> Nuh-uh. The raw block is stashed in a pointer in xf86MonPtr:

oh, ajax, sorry about my mistake.

> 
> xf86MonPtr
> xf86InterpretEDID(int scrnIndex, Uchar *block)
> {
>     xf86MonPtr m;
> 
>     if (!block) return NULL;
>     if (! (m = xnfcalloc(sizeof(xf86Monitor),1))) return NULL;
>     m->scrnIndex = scrnIndex;
>     m->rawData = block;
> 
>     /* ... */
> 
>     return (m);
> 
> error:
>     xfree(m);
>     return NULL;
> }
> 
> Reverted in master.  xf86MonPtr needs a proper destructor function.
> 




More information about the xorg mailing list