diff options
author | marha <marha@users.sourceforge.net> | 2013-11-14 08:33:57 +0100 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2013-11-14 08:33:57 +0100 |
commit | cb9ef04f0bb4cc87787a113f61fcfa7c4818b29b (patch) | |
tree | 91ed73daada51bddd5652fd847f30b3593ecff04 /xorg-server/present | |
parent | 6d8fefe38077f4d532c256e79cfcaf2a46c5269d (diff) | |
parent | 8fbb807d1029b012d2f45cb0f3ea0c6a6ebded6d (diff) | |
download | vcxsrv-cb9ef04f0bb4cc87787a113f61fcfa7c4818b29b.tar.gz vcxsrv-cb9ef04f0bb4cc87787a113f61fcfa7c4818b29b.tar.bz2 vcxsrv-cb9ef04f0bb4cc87787a113f61fcfa7c4818b29b.zip |
Merge remote-tracking branch 'origin/released'
* origin/released:
mesa xserver pixman git update 9 nov 2013
Conflicts:
mesalib/src/mesa/drivers/dri/common/dri_util.c
xorg-server/Xext/shm.c
Diffstat (limited to 'xorg-server/present')
-rw-r--r-- | xorg-server/present/present.c | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/xorg-server/present/present.c b/xorg-server/present/present.c index 46b884bb1..85cb90aaa 100644 --- a/xorg-server/present/present.c +++ b/xorg-server/present/present.c @@ -184,8 +184,10 @@ present_vblank_notify(present_vblank_ptr vblank, CARD8 kind, CARD8 mode, uint64_ static void present_pixmap_idle(PixmapPtr pixmap, WindowPtr window, CARD32 serial, struct present_fence *present_fence) { - present_fence_set_triggered(present_fence); - present_send_idle_notify(window, serial, pixmap, present_fence); + if (present_fence) + present_fence_set_triggered(present_fence); + if (window) + present_send_idle_notify(window, serial, pixmap, present_fence); } RRCrtcPtr @@ -297,7 +299,8 @@ present_flip_idle(ScreenPtr screen) if (screen_priv->flip_pixmap) { present_pixmap_idle(screen_priv->flip_pixmap, screen_priv->flip_window, screen_priv->flip_serial, screen_priv->flip_idle_fence); - present_fence_destroy(screen_priv->flip_idle_fence); + if (screen_priv->flip_idle_fence) + present_fence_destroy(screen_priv->flip_idle_fence); dixDestroyPixmap(screen_priv->flip_pixmap, screen_priv->flip_pixmap->drawable.id); screen_priv->flip_crtc = NULL; screen_priv->flip_window = NULL; @@ -371,6 +374,7 @@ present_event_notify(uint64_t event_id, uint64_t ust, uint64_t msc) present_vblank_ptr vblank, tmp; int s; + DebugPresent(("\te %lld ust %lld msc %lld\n", event_id, ust, msc)); xorg_list_for_each_entry_safe(vblank, tmp, &present_exec_queue, event_queue) { if (vblank->event_id == event_id) { xorg_list_del(&vblank->event_queue); @@ -655,8 +659,10 @@ present_pixmap(WindowPtr window, } if (pixmap) - DebugPresent(("q %p %8lld: %08lx -> %08lx (crtc %d)\n", - vblank, target_msc, vblank->pixmap->drawable.id, vblank->window->drawable.id, target_crtc ? 1 : 0)); + DebugPresent(("q %lld %p %8lld: %08lx -> %08lx (crtc %p)\n", + vblank->event_id, vblank, target_msc, + vblank->pixmap->drawable.id, vblank->window->drawable.id, + target_crtc)); xorg_list_add(&vblank->event_queue, &present_exec_queue); if (target_msc >= crtc_msc) { |