mirror of
https://gitlab.freedesktop.org/xorg/lib/libx11.git
synced 2026-05-07 20:18:03 +02:00
LINEAR_RGB_InitSCCData: When malloc fails, don't try to free unallocated bits
One of the malloc failure checks had a goto to the wrong spot in the
list of cleanup free() calls to unwind at the end, and was freeing
bits that hadn't been initialized/allocated yet, since they would be
stored in the struct that just failed to be allocated.
Error: Null pointer dereference (CWE 476)
Read from pointer that could be constant 'NULL'
at line 805 of /export/alanc/X.Org/sx86/lib/libX11/src/xcms/LRGB.c in function 'LINEAR_RGB_InitSCCData'.
Pointer checked against constant 'NULL' at line 754 but does not protect the dereference.
[ This bug was found by the Parfait bug checking tool.
For more information see http://research.sun.com/projects/parfait ]
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
This commit is contained in:
parent
aebbf36238
commit
47b04195d8
1 changed files with 1 additions and 1 deletions
|
|
@ -753,7 +753,7 @@ LINEAR_RGB_InitSCCData(
|
|||
/* Blue Intensity Table */
|
||||
if (!(pScreenData->pBlueTbl = (IntensityTbl *)
|
||||
Xcalloc (1, sizeof(IntensityTbl)))) {
|
||||
goto FreeBlueTblElements;
|
||||
goto FreeGreenTblElements;
|
||||
}
|
||||
if (_XcmsGetTableType1(pScreenData->pBlueTbl, format_return, &pChar,
|
||||
&nitems) == XcmsFailure) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue