Hi Rahaman,

Your fix worked for me as well :)
Thanks for your concern.

Regards
Amit Pundir

On Thu, Jan 29, 2009 at 10:33 AM, Mustafizur
<[email protected]> wrote:
> Hi Amit,
>
> I also faced similar issue when i was working with eglx backend but for some
> other platform. I believe not many people are working on eglx backend,
> that's why i never got any response either here or in IRC.
>
> The problem is clutter-x11 backend. Go inside
> clutter_x11_get_stage_visual(). It returns CLUTTER_STAGE_X11
> (impl)->xvisinfo, which is NULL here. I don't know whether it should be set
> here by someone else or not. So, i took a look at the glx backend, and found
> that there this is created using glXChooseVisual() in
> clutter_stage_glx_realize().
>
> So, i tried creating the visinfo by myself in clutter-x11 and it seems to be
> working. But truly, i don't know whether it is the real fix.
>
> My fix is as follows...  the whole if block in brown color is my change.
>
> XVisualInfo *
> clutter_x11_get_stage_visual (ClutterStage *stage)
> {
>   ClutterStageWindow *impl;
>   ClutterStageX11 *stage_x11;
> XVisualInfo theTemplate;
>   XVisualInfo *xvinfo;
>   int numVisuals;
>   long mask;
>
>   g_return_val_if_fail (CLUTTER_IS_STAGE (stage), NULL);
>
>   impl = _clutter_stage_get_window (stage);
>   g_assert (CLUTTER_IS_STAGE_X11 (impl));
>
> // return CLUTTER_STAGE_X11 (impl)->xvisinfo;
> #if 1
> if((CLUTTER_STAGE_X11 (impl)->xvisinfo)==NULL)
> {
>   stage_x11 = CLUTTER_STAGE_X11 (impl);
> theTemplate.screen = DefaultScreen (stage_x11->xdpy);
> mask = VisualScreenMask;
> xvinfo = XGetVisualInfo(stage_x11->xdpy, mask, &theTemplate, &numVisuals);
> stage_x11->xvisinfo=xvinfo;
> return xvinfo;
>
> }
> else
> return CLUTTER_STAGE_X11 (impl)->xvisinfo;
> #endif
> }
>
> Regs,
> Rahaman
-- 
To unsubscribe send a mail to [email protected]

Reply via email to