summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Moore <Robert.Moore@intel.com>2023-02-07 10:14:49 -0800
committerGitHub <noreply@github.com>2023-02-07 10:14:49 -0800
commitaeeeec3212712c9a3e03de1f197b39c875db7e7b (patch)
treef097d89be82733014522ab5023bab00915d5ef7f
parentc05f747c8d461ec31bfa16f71f8c010ed9ae5248 (diff)
parentab1aaf65686941e89f81df0b6f34d4ae9926d605 (diff)
downloadacpica-aeeeec3212712c9a3e03de1f197b39c875db7e7b.tar.gz
Merge pull request #811 from 8infy/nsrepair-fix
nsrepair: handle cases without a return value correctly
-rw-r--r--source/components/namespace/nsrepair.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/source/components/namespace/nsrepair.c b/source/components/namespace/nsrepair.c
index 6578c4582..7aa02a80f 100644
--- a/source/components/namespace/nsrepair.c
+++ b/source/components/namespace/nsrepair.c
@@ -328,9 +328,10 @@ AcpiNsSimpleRepair (
*/
if (!ReturnObject)
{
- if (ExpectedBtypes && (!(ExpectedBtypes & ACPI_RTYPE_NONE)))
+ if (ExpectedBtypes)
{
- if (PackageIndex != ACPI_NOT_PACKAGE_ELEMENT)
+ if (!(ExpectedBtypes & ACPI_RTYPE_NONE) &&
+ PackageIndex != ACPI_NOT_PACKAGE_ELEMENT)
{
ACPI_WARN_PREDEFINED ((AE_INFO, Info->FullPathname,
ACPI_WARN_ALWAYS, "Found unexpected NULL package element"));
@@ -342,13 +343,14 @@ AcpiNsSimpleRepair (
return (AE_OK); /* Repair was successful */
}
}
- else
+
+ if (ExpectedBtypes != ACPI_RTYPE_NONE)
{
ACPI_WARN_PREDEFINED ((AE_INFO, Info->FullPathname,
- ACPI_WARN_ALWAYS, "Missing expected return value"));
+ ACPI_WARN_ALWAYS,
+ "Missing expected return value"));
+ return (AE_AML_NO_RETURN_VALUE);
}
-
- return (AE_AML_NO_RETURN_VALUE);
}
}