diff options
Diffstat (limited to 'source/components/utilities/utdecode.c')
| -rw-r--r-- | source/components/utilities/utdecode.c | 22 | 
1 files changed, 18 insertions, 4 deletions
diff --git a/source/components/utilities/utdecode.c b/source/components/utilities/utdecode.c index 849a1bc5984ff..fc21e205845b7 100644 --- a/source/components/utilities/utdecode.c +++ b/source/components/utilities/utdecode.c @@ -261,13 +261,29 @@ char *  AcpiUtGetObjectTypeName (      ACPI_OPERAND_OBJECT     *ObjDesc)  { +    ACPI_FUNCTION_TRACE (UtGetObjectTypeName); +      if (!ObjDesc)      { -        return ("[NULL Object Descriptor]"); +        ACPI_DEBUG_PRINT ((ACPI_DB_EXEC, "Null Object Descriptor\n")); +        return_PTR ("[NULL Object Descriptor]"); +    } + +    /* These descriptor types share a common area */ + +    if ((ACPI_GET_DESCRIPTOR_TYPE (ObjDesc) != ACPI_DESC_TYPE_OPERAND) && +        (ACPI_GET_DESCRIPTOR_TYPE (ObjDesc) != ACPI_DESC_TYPE_NAMED)) +    { +        ACPI_DEBUG_PRINT ((ACPI_DB_EXEC, +            "Invalid object descriptor type: 0x%2.2X [%s] (%p)\n", +            ACPI_GET_DESCRIPTOR_TYPE (ObjDesc), +            AcpiUtGetDescriptorName (ObjDesc), ObjDesc)); + +        return_PTR ("Invalid object");      } -    return (AcpiUtGetTypeName (ObjDesc->Common.Type)); +    return_PTR (AcpiUtGetTypeName (ObjDesc->Common.Type));  } @@ -461,8 +477,6 @@ static char                 *AcpiGbl_MutexNames[ACPI_NUM_MUTEX] =      "ACPI_MTX_Events",      "ACPI_MTX_Caches",      "ACPI_MTX_Memory", -    "ACPI_MTX_CommandComplete", -    "ACPI_MTX_CommandReady"  };  char *  | 
