texconv: Fix PPM reader to avoid overread of buffer (#410)
This commit is contained in:
Родитель
6eca077e06
Коммит
53ba375fbf
|
@ -34,6 +34,7 @@ Profile
|
|||
Release
|
||||
x64
|
||||
/Tests
|
||||
/Testing
|
||||
/wiki
|
||||
/out
|
||||
/CMakeUserPresets.json
|
||||
|
|
|
@ -202,16 +202,17 @@ HRESULT __cdecl LoadFromPortablePixMap(
|
|||
|
||||
while (ppmSize > 0 && (pixels < pixelEnd))
|
||||
{
|
||||
if (ppmSize < 3)
|
||||
{
|
||||
return HRESULT_FROM_WIN32(ERROR_HANDLE_EOF);
|
||||
}
|
||||
|
||||
*pixels++ = (255 * pData[0] / max)
|
||||
| ((255 * pData[1] / max) << 8)
|
||||
| ((255 * pData[2] / max) << 16)
|
||||
| 0xff000000;
|
||||
|
||||
pData += 3;
|
||||
if (ppmSize < 3)
|
||||
{
|
||||
return HRESULT_FROM_WIN32(ERROR_HANDLE_EOF);
|
||||
}
|
||||
ppmSize -= 3;
|
||||
}
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче