mirror of
https://github.com/reactos/reactos.git
synced 2024-12-28 01:55:19 +00:00
[NTOS:PNP] Correctly respect data size in PnpRegSzToString. CORE-15766
Spotted by Vadim Galyant.
This commit is contained in:
parent
c83d7ba185
commit
cf40421041
1 changed files with 13 additions and 4 deletions
|
@ -175,11 +175,20 @@ PnpRegSzToString(IN PWCHAR RegSzData,
|
|||
PWCHAR p, pp;
|
||||
|
||||
/* Find the end */
|
||||
pp = RegSzData + RegSzLength;
|
||||
for (p = RegSzData; p < pp; p++) if (!*p) break;
|
||||
pp = RegSzData + RegSzLength / sizeof(WCHAR);
|
||||
for (p = RegSzData; p < pp; p++)
|
||||
{
|
||||
if (!*p)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/* Return it */
|
||||
if (StringLength) *StringLength = (USHORT)(p - RegSzData) * sizeof(WCHAR);
|
||||
/* Return the length. Truncation can happen but is of no consequence. */
|
||||
if (StringLength)
|
||||
{
|
||||
*StringLength = (USHORT)(p - RegSzData) * sizeof(WCHAR);
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue