diff options
Diffstat (limited to 'sys/dev/acpi/dsdt.c')
-rw-r--r-- | sys/dev/acpi/dsdt.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/dev/acpi/dsdt.c b/sys/dev/acpi/dsdt.c index 39cd7a217f2..ea906326980 100644 --- a/sys/dev/acpi/dsdt.c +++ b/sys/dev/acpi/dsdt.c @@ -1,4 +1,4 @@ -/* $OpenBSD: dsdt.c,v 1.85 2007/02/27 20:22:23 deraadt Exp $ */ +/* $OpenBSD: dsdt.c,v 1.86 2007/03/23 05:43:46 jordan Exp $ */ /* * Copyright (c) 2005 Jordan Hargrave <jordan@openbsd.org> * @@ -3070,6 +3070,11 @@ aml_parseref(struct aml_scope *scope, int opcode, struct aml_value *res) aml_parseterm(scope, res); aml_parsetarget(scope, tmparg, NULL); + while (tmparg->type == AML_OBJTYPE_OBJREF) { + if (tmparg->v_objref.index != -1) + break; + tmparg = tmparg->v_objref.ref; + } aml_setvalue(scope, tmparg, res, 0); break; case AMLOP_REFOF: |