[Intel-gfx] [PATCH] Add NULL checking for drawable in sna_dri2_flip_event

Lim Siew Hoon siew.hoon.lim at intel.com
Fri Jan 8 18:47:29 PST 2016


The last flip complete signal may happen after the
sna_dri2_destroy_window function has been called. This
leads to calling frame_swap_complete with a null flip
drawable. So check for that and handle accordingly.

Signed-off-by: Lim Siew Hoon <siew.hoon.lim at intel.com>
Reviewed-by: Bob Paauwe <bob.j.paauwe at intel.com>
---
 src/sna/sna_dri2.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/sna/sna_dri2.c b/src/sna/sna_dri2.c
index 05a4f1c..6f59f05 100644
--- a/src/sna/sna_dri2.c
+++ b/src/sna/sna_dri2.c
@@ -2874,6 +2874,10 @@ static void sna_dri2_flip_event(struct sna_dri2_event *flip)
 	case FLIP_THROTTLE:
 		if (flip->signal) {
 			DBG(("%s: triple buffer swap complete, unblocking client\n", __FUNCTION__));
+			if(flip->draw == NULL) {
+				sna_dri2_event_free(flip);
+				break;
+			}
 			frame_swap_complete(flip, DRI2_FLIP_COMPLETE);
 		}
 	case FLIP_COMPLETE:
-- 
2.1.0



More information about the Intel-gfx mailing list