From 6f99bbe67e6e70d5b24611c7afa0dffc5632aaab Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Fri, 19 Dec 2014 08:37:07 +0000 Subject: [PATCH] sna/dri2: Prevent NULL pointer dereference of Window private In case we receive quick successive calls to DRI2GetBuffers on the same Window, we need to check that the private exists before dereferencing it. Signed-off-by: Chris Wilson --- src/sna/sna_dri2.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/sna/sna_dri2.c b/src/sna/sna_dri2.c index 8f8baefb..bd5e26d7 100644 --- a/src/sna/sna_dri2.c +++ b/src/sna/sna_dri2.c @@ -234,7 +234,11 @@ dri2_chain(DrawablePtr d) assert(priv != NULL); return priv->chain; } -inline static DRI2BufferPtr dri2_window_get_front(WindowPtr win) { return dri2_window(win)->front; } +inline static DRI2BufferPtr dri2_window_get_front(WindowPtr win) +{ + struct dri2_window *priv = dri2_window(win); + return priv ? priv->front : NULL; +} #else inline static void *dri2_window_get_front(WindowPtr win) { return NULL; } #endif