summaryrefslogtreecommitdiffstats
path: root/dispatcher/dsfield.c
diff options
context:
space:
mode:
authorjkim <jkim@FreeBSD.org>2009-07-31 15:25:39 +0000
committerjkim <jkim@FreeBSD.org>2009-07-31 15:25:39 +0000
commit69f0585e848b352bf2bac67a62c191d4c5d8b95d (patch)
tree32bcfd605fd3c4a48e9916a628a843d3a6c1e218 /dispatcher/dsfield.c
parentb0288ab5352e77c07fffaf51a4193f8de02a7aec (diff)
downloadFreeBSD-src-69f0585e848b352bf2bac67a62c191d4c5d8b95d.zip
FreeBSD-src-69f0585e848b352bf2bac67a62c191d4c5d8b95d.tar.gz
Import ACPICA 20090730
Diffstat (limited to 'dispatcher/dsfield.c')
-rw-r--r--dispatcher/dsfield.c18
1 files changed, 12 insertions, 6 deletions
diff --git a/dispatcher/dsfield.c b/dispatcher/dsfield.c
index 2d8e586..12d55f4 100644
--- a/dispatcher/dsfield.c
+++ b/dispatcher/dsfield.c
@@ -211,9 +211,12 @@ AcpiDsCreateBufferField (
Flags = ACPI_NS_NO_UPSEARCH | ACPI_NS_DONT_OPEN_SCOPE |
ACPI_NS_ERROR_IF_FOUND;
- /* Mark node temporary if we are executing a method */
-
- if (WalkState->MethodNode)
+ /*
+ * Mark node temporary if we are executing a normal control
+ * method. (Don't mark if this is a module-level code method)
+ */
+ if (WalkState->MethodNode &&
+ !(WalkState->ParseFlags & ACPI_PARSE_MODULE_LEVEL))
{
Flags |= ACPI_NS_TEMPORARY;
}
@@ -566,9 +569,12 @@ AcpiDsInitFieldObjects (
Flags = ACPI_NS_NO_UPSEARCH | ACPI_NS_DONT_OPEN_SCOPE |
ACPI_NS_ERROR_IF_FOUND;
- /* Mark node(s) temporary if we are executing a method */
-
- if (WalkState->MethodNode)
+ /*
+ * Mark node(s) temporary if we are executing a normal control
+ * method. (Don't mark if this is a module-level code method)
+ */
+ if (WalkState->MethodNode &&
+ !(WalkState->ParseFlags & ACPI_PARSE_MODULE_LEVEL))
{
Flags |= ACPI_NS_TEMPORARY;
}
OpenPOWER on IntegriCloud