diff --git a/reactos/drivers/input/i8042prt/hwhacks.c b/reactos/drivers/input/i8042prt/hwhacks.c index 4f5bf94d732..83f3acc2220 100644 --- a/reactos/drivers/input/i8042prt/hwhacks.c +++ b/reactos/drivers/input/i8042prt/hwhacks.c @@ -59,7 +59,7 @@ const HARDWARE_TABLE i8042HardwareTable[] = // { {{BOARD_VENDOR, "RIOWORKS"}, {BOARD_NAME, "HDAMB"}, {BOARD_VERSION, "Rev E"}}, FL_NOLOOP }, // { {{BOARD_VENDOR, "ASUSTeK Computer Inc."}, {BOARD_NAME, "G1S"}, {BOARD_VERSION, "1.0"}}, FL_NOLOOP }, - { {{SYS_VENDOR, "Microsoft Corporation"}, {SYS_PRODUCT, "Virtual Machine"}, /*{SYS_VERSION, "VS2005R2"} */}, FL_INITHACK }, + { {{SYS_VENDOR, "Microsoft Corporation"}, {SYS_PRODUCT, "Virtual Machine"}, {SYS_VERSION, "VS2005R2"} }, FL_INITHACK }, { {{SYS_VENDOR, "Dell Inc."}, {SYS_PRODUCT, "Latitude D530"}}, FL_INITHACK }, { {{SYS_VENDOR, "Dell Inc."}, {SYS_PRODUCT, "Latitude D600"}}, FL_INITHACK }, @@ -77,15 +77,19 @@ GetDmiString( PCHAR String; StringIndex = ((PUCHAR)Header)[FieldOffset]; + if (StringIndex == 0) + { + return NULL; + } + String = (PCHAR)Header + Header->Length; - while (StringIndex != 0) + while (--StringIndex != 0) { while (*String != 0) String++; String++; - StringIndex--; } return String;