diff options
-rw-r--r-- | source/components/executer/exconfig.c | 2 | ||||
-rw-r--r-- | source/components/namespace/nsparse.c | 9 |
2 files changed, 9 insertions, 2 deletions
diff --git a/source/components/executer/exconfig.c b/source/components/executer/exconfig.c index 333567fcc..9e8528833 100644 --- a/source/components/executer/exconfig.c +++ b/source/components/executer/exconfig.c @@ -191,7 +191,9 @@ AcpiExAddTable ( /* Add the table to the namespace */ + AcpiExExitInterpreter (); Status = AcpiNsLoadTable (TableIndex, ParentNode); + AcpiExEnterInterpreter (); if (ACPI_FAILURE (Status)) { AcpiUtRemoveReference (ObjDesc); diff --git a/source/components/namespace/nsparse.c b/source/components/namespace/nsparse.c index 6cfdd06fa..692d83760 100644 --- a/source/components/namespace/nsparse.c +++ b/source/components/namespace/nsparse.c @@ -119,6 +119,7 @@ #include "acparser.h" #include "acdispat.h" #include "actables.h" +#include "acinterp.h" #define _COMPONENT ACPI_NAMESPACE @@ -260,6 +261,8 @@ AcpiNsParseTable ( ACPI_FUNCTION_TRACE (NsParseTable); + AcpiExEnterInterpreter (); + /* * AML Parse, pass 1 * @@ -276,7 +279,7 @@ AcpiNsParseTable ( TableIndex, StartNode); if (ACPI_FAILURE (Status)) { - return_ACPI_STATUS (Status); + goto ErrorExit; } /* @@ -293,8 +296,10 @@ AcpiNsParseTable ( TableIndex, StartNode); if (ACPI_FAILURE (Status)) { - return_ACPI_STATUS (Status); + goto ErrorExit; } +ErrorExit: + AcpiExExitInterpreter (); return_ACPI_STATUS (Status); } |