diff options
author | pixel <pixel> | 2004-07-23 09:54:25 +0000 |
---|---|---|
committer | pixel <pixel> | 2004-07-23 09:54:25 +0000 |
commit | 1445e590be067844a66578f2df97ab532c1f91ac (patch) | |
tree | eaddb0fcd2da89fa90dec7aed4fa17343b15914a | |
parent | 3dec0df7951ffda61c8da3d3f9bba563c7a49e98 (diff) |
Bug fix in elf parsing...
-rw-r--r-- | lib/Input.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/Input.cc b/lib/Input.cc index 992b39a..88f9343 100644 --- a/lib/Input.cc +++ b/lib/Input.cc @@ -17,7 +17,7 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ -/* $Id: Input.cc,v 1.45 2004-07-17 14:48:33 pixel Exp $ */ +/* $Id: Input.cc,v 1.46 2004-07-23 09:54:25 pixel Exp $ */ #include <stdio.h> #include <string.h> @@ -337,6 +337,8 @@ void Archive::create() throw (GeneralException) { for (i = 0; i < head.e_shnum; i++) { archive->read(&sec, sizeof(elf_section_t)); archive->seek(head.e_shentsize - sizeof(elf_section_t), SEEK_CUR); + if (sec.sh_type == 8) + continue; cur_end = sec.sh_offset + sec.sh_size; if (cur_end > max_end) max_end = cur_end; |