From b89c0b35d16f8460e0ca88636f19d2fa1a2dec7e Mon Sep 17 00:00:00 2001 From: John Reiser Date: Fri, 29 May 2009 13:38:43 -0700 Subject: [PATCH] bugfix: PackMachBase::pack2 first extent is Mach_header plus Mach_segment_commands --- src/p_mach.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/p_mach.cpp b/src/p_mach.cpp index d6588618..40a6d62b 100644 --- a/src/p_mach.cpp +++ b/src/p_mach.cpp @@ -718,7 +718,7 @@ void PackMachBase::pack2(OutputFile *fo, Filter &ft) // append compressed bo unsigned total_in = 0; unsigned total_out = 0; - unsigned hdr_u_len = mhdri.sizeofcmds; + unsigned hdr_u_len = mhdri.sizeofcmds + sizeof(mhdri); uip->ui_pass = 0; ft.addvalue = 0; @@ -741,7 +741,7 @@ void PackMachBase::pack2(OutputFile *fo, Filter &ft) // append compressed bo x.offset = msegcmd[k].fileoff; x.size = msegcmd[k].filesize; if (0 == nx) { // 1st LC_SEGMENT must cover Mach_header at 0==fileoffset - unsigned const delta = mhdri.sizeofcmds; + unsigned const delta = mhdri.sizeofcmds + sizeof(mhdri); x.offset += delta; x.size -= delta; }