summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2011-10-19 16:21:26 +0100
committerJeremy Huddleston <jeremyhu@apple.com>2011-12-09 12:34:41 -0800
commitb22783f483d440a005ff76d5c7894e2cf2a95dcb (patch)
tree3a2fc3516ef8e5bf79b659642dfed7f31a53af28
parent083599c5597276289af9adaf8a8571cbe743c3fd (diff)
xext: don't free uninitialised pointer when malloc fails. (v2)
Initialise the pAttr->values to values so if the values allocation fails it just ends up as free(NULL). Pointed out by coverity. v2: use Alan's suggestion. Signed-off-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com> (cherry picked from commit b62dc4fcbcffd10de16650bee284702c8608bb60)
-rw-r--r--Xext/saver.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/Xext/saver.c b/Xext/saver.c
index 18886038a..0f9e87870 100644
--- a/Xext/saver.c
+++ b/Xext/saver.c
@@ -927,7 +927,7 @@ ScreenSaverSetAttributes (ClientPtr client)
goto bail;
}
/* over allocate for override redirect */
- values = malloc((len + 1) * sizeof (unsigned long));
+ pAttr->values = values = malloc((len + 1) * sizeof (unsigned long));
if (!values)
{
ret = BadAlloc;
@@ -947,7 +947,6 @@ ScreenSaverSetAttributes (ClientPtr client)
pAttr->pCursor = NullCursor;
pAttr->pBackgroundPixmap = NullPixmap;
pAttr->pBorderPixmap = NullPixmap;
- pAttr->values = values;
/*
* go through the mask, checking the values,
* looking up pixmaps and cursors and hold a reference