diff options
author | Dave Airlie <airlied@redhat.com> | 2011-10-19 16:21:26 +0100 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2011-12-06 16:00:35 +0000 |
commit | b62dc4fcbcffd10de16650bee284702c8608bb60 (patch) | |
tree | 2db353e7137561d39477dde962b87ef56c7b4e84 /Xext | |
parent | 22605effd188436629a0dbc688666549473741e4 (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>
Diffstat (limited to 'Xext')
-rw-r--r-- | Xext/saver.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/Xext/saver.c b/Xext/saver.c index 142758c87..18d5e468d 100644 --- a/Xext/saver.c +++ b/Xext/saver.c @@ -925,7 +925,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; @@ -945,7 +945,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 |