all: more minor cleanups

This commit is contained in:
Markus F.X.J. Oberhumer
2023-05-27 22:58:07 +02:00
parent 09bd1d8c40
commit ebf0f2f68a
7 changed files with 55 additions and 50 deletions
+2 -3
View File
@@ -217,14 +217,13 @@ int PackExe::readFileHeader() {
if (ih.ident != 'M' + 'Z' * 256 && ih.ident != 'Z' + 'M' * 256)
return 0;
ih_exesize = ih.m512 + ih.p512 * 512 - (ih.m512 ? 512 : 0);
if (!ih_exesize) {
if (ih_exesize == 0)
ih_exesize = file_size;
}
ih_imagesize = ih_exesize - ih.headsize16 * 16;
ih_overlay = file_size - ih_exesize;
if (file_size_u < sizeof(ih) || ((ih.m512 | ih.p512) && ih.m512 + ih.p512 * 512u < sizeof(ih)))
throwCantPack("illegal exe header");
if (ih_exesize > file_size_u || ih_imagesize <= 0 || ih_imagesize > ih_exesize)
if (ih_exesize > file_size_u || ih_imagesize < 4 || ih_imagesize > ih_exesize)
throwCantPack("exe header corrupted");
NO_printf("dos/exe header: %d %d %d\n", ih_exesize, ih_imagesize, ih_overlay);
return UPX_F_DOS_EXE;