From 99583b43a9a202d047ff417d47485e4c0e0c9670 Mon Sep 17 00:00:00 2001 From: Jie Luo Date: Sun, 17 Aug 2008 23:13:22 +0200 Subject: [PATCH] glx: avoid possible NULLptr deref, fix #16884 --- glx/glxcmds.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/glx/glxcmds.c b/glx/glxcmds.c index 19d8674a1..aedbc02b0 100644 --- a/glx/glxcmds.c +++ b/glx/glxcmds.c @@ -148,8 +148,10 @@ void __glXContextDestroy(__GLXcontext *context) { if (!context->isDirect) { - __glXUnrefDrawable(context->drawPriv); - __glXUnrefDrawable(context->readPriv); + if (context->drawPriv) + __glXUnrefDrawable(context->drawPriv); + if (context->readPriv) + __glXUnrefDrawable(context->readPriv); } __glXFlushContextCache(); } @@ -621,8 +623,10 @@ DoMakeCurrent(__GLXclientState *cl, } __glXFlushContextCache(); if (!prevglxc->isDirect) { - __glXUnrefDrawable(prevglxc->drawPriv); - __glXUnrefDrawable(prevglxc->readPriv); + if (prevglxc->drawPriv) + __glXUnrefDrawable(prevglxc->drawPriv); + if (prevglxc->readPriv) + __glXUnrefDrawable(prevglxc->readPriv); } }