mirror of https://github.com/acidanthera/audk.git
MdeModulePkg/Core: fix an issue of potential NULL pointer access
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1286
This issue is introduced by bb685071c2
.
The *MemorySpaceMap assigned with NULL (line 1710) value might be
accessed (line 1726/1730) without any sanity check. Although it won't
happen in practice because of line 1722, we still need to add check
against NULL to make static code analyzer happy.
1710 *MemorySpaceMap = NULL;
.... ...
1722 if (DescriptorCount == *NumberOfDescriptors) {
.... ...
1726 Descriptor = *MemorySpaceMap;
.... ...
1730 BuildMemoryDescriptor (Descriptor, Entry);
Tests:
Pass build and boot to shell.
Cc: Hao Wu <hao.a.wu@intel.com>
Cc: Star Zeng <star.zeng@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Jian J Wang <jian.j.wang@intel.com>
Reviewed-by: Hao Wu <hao.a.wu@intel.com>
This commit is contained in:
parent
c87ac38cf2
commit
61a62fc258
|
@ -1719,7 +1719,7 @@ CoreGetMemorySpaceMap (
|
|||
// AllocatePool() called below has to be running outside the GCD lock.
|
||||
//
|
||||
DescriptorCount = CoreCountGcdMapEntry (&mGcdMemorySpaceMap);
|
||||
if (DescriptorCount == *NumberOfDescriptors) {
|
||||
if (DescriptorCount == *NumberOfDescriptors && *MemorySpaceMap != NULL) {
|
||||
//
|
||||
// Fill in the MemorySpaceMap if no memory space map change.
|
||||
//
|
||||
|
|
Loading…
Reference in New Issue