Mesa (master): glx:dri_common.c: check psc->driScreen-> createDrawable return value

Yuanhan Liu yliu at kemper.freedesktop.org
Tue Mar 27 18:52:57 PDT 2012


Module: Mesa
Branch: master
Commit: 7a6324dbfe8d354b9b5f3181af0ce6bebbb374cc
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=7a6324dbfe8d354b9b5f3181af0ce6bebbb374cc

Author: Wang YanQing <udknight at gmail.com>
Date:   Tue Mar 20 11:49:42 2012 +0800

glx:dri_common.c: check psc->driScreen->createDrawable return value

createDrawable may return NULL value, we should check it, or it will
make a segment failed.

[minor-indent-issue-fixed-by: Yuanhan Liu]

Signed-off-by: Wang YanQing <udknight at gmail.com>
Reviewed-by: Yuanhan Liu <yuanhan.liu at linux.intel.com>

---

 src/glx/dri_common.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/src/glx/dri_common.c b/src/glx/dri_common.c
index 0e06d51..07fd015 100644
--- a/src/glx/dri_common.c
+++ b/src/glx/dri_common.c
@@ -403,6 +403,12 @@ driFetchDrawable(struct glx_context *gc, GLXDrawable glxDrawable)
 
    pdraw = psc->driScreen->createDrawable(psc, glxDrawable,
                                           glxDrawable, gc->config);
+
+   if (pdraw == NULL) {
+      ErrorMessageF("failed to create drawable\n");
+      return NULL;
+   }
+
    if (__glxHashInsert(priv->drawHash, glxDrawable, pdraw)) {
       (*pdraw->destroyDrawable) (pdraw);
       return NULL;



More information about the mesa-commit mailing list