.. | .. |
---|
181 | 181 | * Try to fix if there was no return object. Warning if failed to fix. |
---|
182 | 182 | */ |
---|
183 | 183 | if (!return_object) { |
---|
184 | | - if (expected_btypes && (!(expected_btypes & ACPI_RTYPE_NONE))) { |
---|
185 | | - if (package_index != ACPI_NOT_PACKAGE_ELEMENT) { |
---|
| 184 | + if (expected_btypes) { |
---|
| 185 | + if (!(expected_btypes & ACPI_RTYPE_NONE) && |
---|
| 186 | + package_index != ACPI_NOT_PACKAGE_ELEMENT) { |
---|
186 | 187 | ACPI_WARN_PREDEFINED((AE_INFO, |
---|
187 | 188 | info->full_pathname, |
---|
188 | 189 | ACPI_WARN_ALWAYS, |
---|
.. | .. |
---|
196 | 197 | if (ACPI_SUCCESS(status)) { |
---|
197 | 198 | return (AE_OK); /* Repair was successful */ |
---|
198 | 199 | } |
---|
199 | | - } else { |
---|
| 200 | + } |
---|
| 201 | + |
---|
| 202 | + if (expected_btypes != ACPI_RTYPE_NONE) { |
---|
200 | 203 | ACPI_WARN_PREDEFINED((AE_INFO, |
---|
201 | 204 | info->full_pathname, |
---|
202 | 205 | ACPI_WARN_ALWAYS, |
---|
203 | 206 | "Missing expected return value")); |
---|
| 207 | + return (AE_AML_NO_RETURN_VALUE); |
---|
204 | 208 | } |
---|
205 | | - |
---|
206 | | - return (AE_AML_NO_RETURN_VALUE); |
---|
207 | 209 | } |
---|
208 | 210 | } |
---|
209 | 211 | |
---|