glamor: glFlush from the blockhandler so rendering happens.
This commit is contained in:
parent
b530cdea4a
commit
1b151f2e6a
|
@ -74,6 +74,18 @@ glamor_destroy_pixmap(PixmapPtr pixmap)
|
||||||
return fbDestroyPixmap(pixmap);
|
return fbDestroyPixmap(pixmap);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
glamor_block_handler(void *data, OSTimePtr wt, void *last_select_mask)
|
||||||
|
{
|
||||||
|
glFlush();
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
glamor_wakeup_handler(void *data, OSTimePtr wt, void *last_select_mask)
|
||||||
|
{
|
||||||
|
glFlush();
|
||||||
|
}
|
||||||
|
|
||||||
/** Set up glamor for an already-configured GL context. */
|
/** Set up glamor for an already-configured GL context. */
|
||||||
Bool
|
Bool
|
||||||
glamor_init(ScreenPtr screen)
|
glamor_init(ScreenPtr screen)
|
||||||
|
@ -86,6 +98,14 @@ glamor_init(ScreenPtr screen)
|
||||||
|
|
||||||
dixSetPrivate(&screen->devPrivates, glamor_screen_private_key, glamor_priv);
|
dixSetPrivate(&screen->devPrivates, glamor_screen_private_key, glamor_priv);
|
||||||
|
|
||||||
|
if (!RegisterBlockAndWakeupHandlers(glamor_block_handler,
|
||||||
|
glamor_wakeup_handler,
|
||||||
|
NULL)) {
|
||||||
|
dixSetPrivate(&screen->devPrivates, glamor_screen_private_key, NULL);
|
||||||
|
xfree(glamor_priv);
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
glamor_priv->saved_create_gc = screen->CreateGC;
|
glamor_priv->saved_create_gc = screen->CreateGC;
|
||||||
screen->CreateGC = glamor_create_gc;
|
screen->CreateGC = glamor_create_gc;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue