diff options
author | Robert Moore <Robert.Moore@intel.com> | 2023-02-07 10:14:49 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-02-07 10:14:49 -0800 |
commit | aeeeec3212712c9a3e03de1f197b39c875db7e7b (patch) | |
tree | f097d89be82733014522ab5023bab00915d5ef7f | |
parent | c05f747c8d461ec31bfa16f71f8c010ed9ae5248 (diff) | |
parent | ab1aaf65686941e89f81df0b6f34d4ae9926d605 (diff) | |
download | acpica-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.c | 14 |
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); } } |