ACPI: Handle indirect packages
Scan for packages outside of _PRT-methods (fix #141)
This commit is contained in:
parent
e4cb3ed929
commit
10d7022395
|
@ -322,12 +322,12 @@ class Element : public List<Element>::Element
|
||||||
/**
|
/**
|
||||||
* Return parent of this element
|
* Return parent of this element
|
||||||
*/
|
*/
|
||||||
Element *_parent()
|
Element *_parent(bool update_size = false)
|
||||||
{
|
{
|
||||||
Element *parent = list()->first();
|
Element *parent = list()->first();
|
||||||
|
|
||||||
/* set length of previous element */
|
/* set length of previous element */
|
||||||
if (parent && !parent->size())
|
if (update_size && parent && !parent->size())
|
||||||
parent->size(_data - parent->data());
|
parent->size(_data - parent->data());
|
||||||
|
|
||||||
/* find parent */
|
/* find parent */
|
||||||
|
@ -346,7 +346,7 @@ class Element : public List<Element>::Element
|
||||||
void _set_name()
|
void _set_name()
|
||||||
{
|
{
|
||||||
uint8_t const *name = _name_addr();
|
uint8_t const *name = _name_addr();
|
||||||
Element *parent = _parent();
|
Element *parent = _parent(true);
|
||||||
uint32_t prefix_len = _prefix_len(name);
|
uint32_t prefix_len = _prefix_len(name);
|
||||||
|
|
||||||
if (_name_len <= prefix_len) {
|
if (_name_len <= prefix_len) {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user