pe: correctly handle import table with 0 entries during decompression (#1620733)
This commit is contained in:
+2
-1
@@ -1027,7 +1027,8 @@ int PackArmPe::canUnpack()
|
|||||||
|
|
||||||
void PackArmPe::rebuildImports(upx_byte *& extrainfo)
|
void PackArmPe::rebuildImports(upx_byte *& extrainfo)
|
||||||
{
|
{
|
||||||
if (ODADDR(PEDIR_IMPORT) == 0)
|
if (ODADDR(PEDIR_IMPORT) == 0
|
||||||
|
|| ODSIZE(PEDIR_IMPORT) <= sizeof(import_desc))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
// const upx_byte * const idata = obuf + get_le32(extrainfo);
|
// const upx_byte * const idata = obuf + get_le32(extrainfo);
|
||||||
|
|||||||
+2
-1
@@ -1155,7 +1155,8 @@ int PackW32Pe::canUnpack()
|
|||||||
|
|
||||||
void PackW32Pe::rebuildImports(upx_byte *& extrainfo)
|
void PackW32Pe::rebuildImports(upx_byte *& extrainfo)
|
||||||
{
|
{
|
||||||
if (ODADDR(PEDIR_IMPORT) == 0)
|
if (ODADDR(PEDIR_IMPORT) == 0
|
||||||
|
|| ODSIZE(PEDIR_IMPORT) <= sizeof(import_desc))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
// const upx_byte * const idata = obuf + get_le32(extrainfo);
|
// const upx_byte * const idata = obuf + get_le32(extrainfo);
|
||||||
|
|||||||
Reference in New Issue
Block a user