From 49835eec0c996ad95a01f0fe340336b6b60e51aa Mon Sep 17 00:00:00 2001 From: Tiago Vignatti Date: Fri, 16 Apr 2010 17:50:43 +0300 Subject: [PATCH] exa: check for NULL pointer before dereferences it MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Tiago Vignatti Acked-by: Michel Dänzer Reviewed-by: Dan Nicholson --- exa/exa_classic.c | 3 ++- exa/exa_driver.c | 3 ++- exa/exa_mixed.c | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/exa/exa_classic.c b/exa/exa_classic.c index c31e2d4b3..e1ead6c0d 100644 --- a/exa/exa_classic.c +++ b/exa/exa_classic.c @@ -148,7 +148,7 @@ Bool exaModifyPixmapHeader_classic(PixmapPtr pPixmap, int width, int height, int depth, int bitsPerPixel, int devKind, pointer pPixData) { - ScreenPtr pScreen = pPixmap->drawable.pScreen; + ScreenPtr pScreen; ExaScreenPrivPtr pExaScr; ExaPixmapPrivPtr pExaPixmap; Bool ret; @@ -156,6 +156,7 @@ exaModifyPixmapHeader_classic(PixmapPtr pPixmap, int width, int height, int dept if (!pPixmap) return FALSE; + pScreen = pPixmap->drawable.pScreen; pExaScr = ExaGetScreenPriv(pScreen); pExaPixmap = ExaGetPixmapPriv(pPixmap); diff --git a/exa/exa_driver.c b/exa/exa_driver.c index dcf1a9860..abe79baad 100644 --- a/exa/exa_driver.c +++ b/exa/exa_driver.c @@ -126,7 +126,7 @@ Bool exaModifyPixmapHeader_driver(PixmapPtr pPixmap, int width, int height, int depth, int bitsPerPixel, int devKind, pointer pPixData) { - ScreenPtr pScreen = pPixmap->drawable.pScreen; + ScreenPtr pScreen; ExaScreenPrivPtr pExaScr; ExaPixmapPrivPtr pExaPixmap; Bool ret; @@ -134,6 +134,7 @@ exaModifyPixmapHeader_driver(PixmapPtr pPixmap, int width, int height, int depth if (!pPixmap) return FALSE; + pScreen = pPixmap->drawable.pScreen; pExaScr = ExaGetScreenPriv(pScreen); pExaPixmap = ExaGetPixmapPriv(pPixmap); diff --git a/exa/exa_mixed.c b/exa/exa_mixed.c index 21cc3bd13..49e04f22a 100644 --- a/exa/exa_mixed.c +++ b/exa/exa_mixed.c @@ -124,7 +124,7 @@ Bool exaModifyPixmapHeader_mixed(PixmapPtr pPixmap, int width, int height, int depth, int bitsPerPixel, int devKind, pointer pPixData) { - ScreenPtr pScreen = pPixmap->drawable.pScreen; + ScreenPtr pScreen; ExaScreenPrivPtr pExaScr; ExaPixmapPrivPtr pExaPixmap; Bool ret, has_gpu_copy; @@ -132,6 +132,7 @@ exaModifyPixmapHeader_mixed(PixmapPtr pPixmap, int width, int height, int depth, if (!pPixmap) return FALSE; + pScreen = pPixmap->drawable.pScreen; pExaScr = ExaGetScreenPriv(pScreen); pExaPixmap = ExaGetPixmapPriv(pPixmap);