2010/4/15 Keith Packard <[email protected]>:
> On Thu, 15 Apr 2010 14:15:05 -0400, Kristian Høgsberg <[email protected]> 
> wrote:
>> 2010/4/15 Keith Packard <[email protected]>:
>> > On Wed, 14 Apr 2010 20:30:55 -0400, Kristian Høgsberg <[email protected]> 
>> > wrote:
>> >
>> >> Oh, I was thinking I could just allocate the ID, but not actually add
>> >> the Pixmap as a resource. Is that bad form?
>> >
>> > It wouldn't help -- you need FreeResource to be invoked on that XID to
>> > get the other resources with that XID to be freed as well.
>>
>> No, pbuffers are client resources and gets cleaned up when the client
>> exits.  The pixmap used behind these scenes is references from the
>> pbuffer and when that goes away, the pixmap goes away.  The reason I
>> want to give the pixmap an XID is that DRI2 will create a DRI2
>> drawable and add it as a resource with the XID of the pixmap.  That's
>> the only reason the pixmap needs an ID, it gets cleaned up just fine
>> as it is.
>
> So how is the DRI2 drawable going to get cleaned up? From what I
> understand, it gets destroyed when FreeResource is called on the
> drawable ID.

Right, it would linger until the client exits.  So I guess I'll have
to actually AddResource the pixmap with the FakeClientID and then use
FreeResource to destroy it instead of pScreen->DestroyPixmap.

Kristian
_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to