summaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers/glx/xlib/xm_st.c
diff options
context:
space:
mode:
authorChia-I Wu <olv@lunarg.com>2010-09-08 00:30:27 +0800
committerChia-I Wu <olv@lunarg.com>2010-09-16 13:09:48 +0800
commit03224f492dc9cee179ff9ed961be0443a3669dd1 (patch)
tree23d9a37732677807c4722865c49a7990c3de1ba1 /src/gallium/state_trackers/glx/xlib/xm_st.c
parent9ca59b2427837b8a70b580d66b4909e5f8443945 (diff)
downloadexternal_mesa3d-03224f492dc9cee179ff9ed961be0443a3669dd1.zip
external_mesa3d-03224f492dc9cee179ff9ed961be0443a3669dd1.tar.gz
external_mesa3d-03224f492dc9cee179ff9ed961be0443a3669dd1.tar.bz2
st/xlib: Notify the context when the front/back buffers are swapped.
The current context should be notified when the the front/back buffers of the current drawable are swapped. The notification was skipped when xmesa_strict_invalidate is false (the default). This fixes fdo bug #29774.
Diffstat (limited to 'src/gallium/state_trackers/glx/xlib/xm_st.c')
-rw-r--r--src/gallium/state_trackers/glx/xlib/xm_st.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gallium/state_trackers/glx/xlib/xm_st.c b/src/gallium/state_trackers/glx/xlib/xm_st.c
index 4c0ce07..4d0f5e6 100644
--- a/src/gallium/state_trackers/glx/xlib/xm_st.c
+++ b/src/gallium/state_trackers/glx/xlib/xm_st.c
@@ -339,6 +339,10 @@ xmesa_swap_st_framebuffer(struct st_framebuffer_iface *stfbi)
tmp = *front;
*front = *back;
*back = tmp;
+
+ /* the current context should validate the buffer after swapping */
+ if (!xmesa_strict_invalidate)
+ xmesa_notify_invalid_buffer(xstfb->buffer);
}
if (xmesa_strict_invalidate)