[Xcb] XCBShapeNotifyMask missing shape.h

Vincent Torri Vincent.Torri at iecn.u-nancy.fr
Wed Jun 15 02:25:49 PDT 2005



On Wed, 15 Jun 2005, Jamey Sharp wrote:

> On Wed, 2005-06-15 at 09:28 +0200, Vincent Torri wrote:
> > it's a number (look in shape.h of Xorg, for example).
> >
> > for the example:
> >
> >    rep_shape = XCBShapeInit(_ecore_xcb_conn);
> >    if (rep_shape)
> >       {
> > 	 _ecore_xcb_event_shape_id = rep_shape->first_event + ShapeNotify;
> > 	 free(rep_shape);
> >      }
>
> Oh. So isn't this line in XCB's shape.h what you're looking for?
>
>         #define XCBShapeNotify 0
>

my bad, this one exists :) ShapeNotifyMask does not :-)

> > well, i don't know if i have to free the reply.
>
> XCB*Init is a thin wrapper around XCBGetExtensionData, and as the XcbApi
> documentation says, you *must not* free the pointer returned from that
> function.
>
> XCB*Init is mildly deprecated, largely because it's so easy to write the
> equivalent call directly to XCBGetExtensionData:
>
> 	XCBGetExtensionData(c, &XCBShapeId);
>
> > In fact, each time I use an extension (that is, shape and sync), ecore_xcb
> > bugs and I don't know why.
>
> I think that's probably why. If it isn't, let's try to debug it.

No, it does not work even is i do not free the reply. But before
debugging, I need ecore to fully work without extensions.

Vincent


More information about the xcb mailing list