MdeModulePkg AcpiTableDxe: Use Rsdt to check against NULL

Some static scan tool may regard CurrentRsdtEntry to be potentially
referenced to NULL pointer if CurrentRsdtEntry == NULL is used in
the right above if condition judgment.

        CopyMem (CurrentRsdtEntry, CurrentRsdtEntry + 1, (*NumberOfTableEntries - Index) * sizeof (UINT32));

It is introduced by commit f9bbb8d9c3.
To avoid it and have same style with
"((Xsdt == NULL) || CurrentTablePointer64 == (UINT64) (UINTN) Table->Table)",
use Rsdt instead of CurrentRsdtEntry to check against NULL.

Cc: Jiewen Yao <jiewen.yao@intel.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Shumin Qiu <shumin.qiu@intel.com>
Cc: Feng Tian <feng.tian@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Shumin Qiu <shumin.qiu@intel.com>
This commit is contained in:
Star Zeng 2016-03-07 14:01:46 +08:00
parent ace1d0517b
commit efef6ad6d7
1 changed files with 2 additions and 2 deletions

View File

@ -1,7 +1,7 @@
/** @file /** @file
ACPI Table Protocol Implementation ACPI Table Protocol Implementation
Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR> Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2016, Linaro Ltd. All rights reserved.<BR> Copyright (c) 2016, Linaro Ltd. All rights reserved.<BR>
This program and the accompanying materials This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License are licensed and made available under the terms and conditions of the BSD License
@ -1132,7 +1132,7 @@ RemoveTableFromRsdt (
// //
// Check if we have found the corresponding entry in both RSDT and XSDT // Check if we have found the corresponding entry in both RSDT and XSDT
// //
if ((CurrentRsdtEntry == NULL || *CurrentRsdtEntry == (UINT32) (UINTN) Table->Table) && if (((Rsdt == NULL) || *CurrentRsdtEntry == (UINT32) (UINTN) Table->Table) &&
((Xsdt == NULL) || CurrentTablePointer64 == (UINT64) (UINTN) Table->Table) ((Xsdt == NULL) || CurrentTablePointer64 == (UINT64) (UINTN) Table->Table)
) { ) {
// //