mirror of
https://github.com/reactos/reactos.git
synced 2024-10-05 17:06:29 +00:00
[kernel32] IsBadStringPtrA/W:
- Remove overflow failure case, this isn't checked for string validation - Adapt page check to let the full string be checked in case of overflow See issue #4861 for more details. svn path=/trunk/; revision=43487
This commit is contained in:
parent
071a297838
commit
b452b0b30a
|
@ -171,9 +171,6 @@ IsBadStringPtrW(IN LPCWSTR lpsz,
|
||||||
/* Calculate the last page */
|
/* Calculate the last page */
|
||||||
Last = (PWCHAR)((ULONG_PTR)lpsz + (ucchMax * 2) - 2);
|
Last = (PWCHAR)((ULONG_PTR)lpsz + (ucchMax * 2) - 2);
|
||||||
|
|
||||||
/* Another quick failure case */
|
|
||||||
if ((ULONG_PTR)Last < (ULONG_PTR)lpsz) return TRUE;
|
|
||||||
|
|
||||||
/* Enter SEH */
|
/* Enter SEH */
|
||||||
_SEH2_TRY
|
_SEH2_TRY
|
||||||
{
|
{
|
||||||
|
@ -184,7 +181,7 @@ IsBadStringPtrW(IN LPCWSTR lpsz,
|
||||||
{
|
{
|
||||||
Char = *Current;
|
Char = *Current;
|
||||||
Current++;
|
Current++;
|
||||||
} while (Char && (Current <= Last));
|
} while (Char && (Current != Last));
|
||||||
}
|
}
|
||||||
_SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
|
_SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
|
||||||
{
|
{
|
||||||
|
@ -217,9 +214,6 @@ IsBadStringPtrA(IN LPCSTR lpsz,
|
||||||
/* Calculate the last page */
|
/* Calculate the last page */
|
||||||
Last = (PCHAR)((ULONG_PTR)lpsz + ucchMax - 1);
|
Last = (PCHAR)((ULONG_PTR)lpsz + ucchMax - 1);
|
||||||
|
|
||||||
/* Another quick failure case */
|
|
||||||
if ((ULONG_PTR)Last < (ULONG_PTR)lpsz) return TRUE;
|
|
||||||
|
|
||||||
/* Enter SEH */
|
/* Enter SEH */
|
||||||
_SEH2_TRY
|
_SEH2_TRY
|
||||||
{
|
{
|
||||||
|
@ -230,7 +224,7 @@ IsBadStringPtrA(IN LPCSTR lpsz,
|
||||||
{
|
{
|
||||||
Char = *Current;
|
Char = *Current;
|
||||||
Current++;
|
Current++;
|
||||||
} while (Char && (Current <= Last));
|
} while (Char && (Current != Last));
|
||||||
}
|
}
|
||||||
_SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
|
_SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue