diff options
Diffstat (limited to 'source/os_specific/service_layers/oswintbl.c')
-rw-r--r-- | source/os_specific/service_layers/oswintbl.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/source/os_specific/service_layers/oswintbl.c b/source/os_specific/service_layers/oswintbl.c index c03851d..884fd37 100644 --- a/source/os_specific/service_layers/oswintbl.c +++ b/source/os_specific/service_layers/oswintbl.c @@ -42,6 +42,8 @@ */ #include "acpi.h" +#include "accommon.h" +#include "acutils.h" #include <stdio.h> #ifdef WIN32 @@ -236,7 +238,10 @@ AcpiOsGetTableByName ( while (1) { ACPI_STRCPY (KeyBuffer, "HARDWARE\\ACPI\\"); - ACPI_STRCAT (KeyBuffer, Signature); + if (AcpiUtSafeStrcat (KeyBuffer, sizeof (KeyBuffer), Signature)) + { + return (AE_BUFFER_OVERFLOW); + } WinStatus = RegOpenKeyEx (HKEY_LOCAL_MACHINE, KeyBuffer, 0L, KEY_READ, &Handle); |