From ca2293f6d3fd16f13d3dd71750acd2db36969319 Mon Sep 17 00:00:00 2001 From: John Reiser Date: Sun, 9 Oct 2016 09:33:35 -0700 Subject: [PATCH] c++-analyzer needs improved range tracking. modified: p_lx_elf.cpp --- src/p_lx_elf.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/p_lx_elf.cpp b/src/p_lx_elf.cpp index f85548ba..d7f4b242 100644 --- a/src/p_lx_elf.cpp +++ b/src/p_lx_elf.cpp @@ -1438,7 +1438,7 @@ bool PackLinuxElf32::canPack() load_va = get_te32(&phdr->p_vaddr); unsigned file_offset = get_te32(&phdr->p_offset); if (~page_mask & file_offset) { - if ((~page_mask & load_va) == file_offset) { + if ((~page_mask & (unsigned)load_va) == file_offset) { throwCantPack("Go-language PT_LOAD: try hemfix.c, or try '--force-execve'"); // Fixing it inside upx fails because packExtent() reads original file. }