HID has two types of strings

date	99.11.01.23.11.00;	author rmoore1;	state Exp;
This commit is contained in:
aystarik 2005-06-29 18:38:48 +00:00
parent 2535a2132c
commit 04f24e2a48

View File

@ -431,14 +431,14 @@ AcpiHandleToPathname (
/****************************************************************************
*
* FUNCTION: AcpiGetDeviceInfo
* FUNCTION: AcpiGetObjectInfo
*
* PARAMETERS: Handle - Handle to a device
* Info - Where the device info is returned
* PARAMETERS: Handle - Object Handle
* Info - Where the info is returned
*
* RETURN: Status
*
* DESCRIPTION: Returns information about the device as gleaned from running
* DESCRIPTION: Returns information about an object as gleaned from running
* several standard control methods.
*
******************************************************************************/
@ -486,7 +486,14 @@ AcpiGetObjectInfo (
Status = Execute_HID (DeviceEntry, &Hid);
if (ACPI_SUCCESS (Status))
{
STRCPY (Info->HardwareId, Hid.Data.String);
if (Hid.Type == STRING_PTR_DEVICE_ID)
{
STRCPY (Info->HardwareId, Hid.Data.StringPtr);
}
else
{
STRCPY (Info->HardwareId, Hid.Data.Buffer);
}
Info->Valid |= ACPI_VALID_HID;
}
@ -495,7 +502,7 @@ AcpiGetObjectInfo (
Status = Execute_UID (DeviceEntry, &Uid);
if (ACPI_SUCCESS (Status))
{
STRCPY (Info->UniqueId, Uid.Data.String);
STRCPY (Info->UniqueId, Uid.Data.StringPtr);
Info->Valid |= ACPI_VALID_UID;
}
@ -555,7 +562,7 @@ AcpiEnumerateDevice (
BOOLEAN *EnumPtr)
{
HidPtr->Data.String = NULL;
HidPtr->Data.StringPtr = NULL;
*EnumPtr = FALSE;
return (AE_OK);