ref: 279dbb9a309d561f29472a25fd2872523f2a80ce
parent: cf479baa03d4c926e65311bc0bcd0c9bdb4ad78a
parent: 25eeac0518f90bfba94049c56fce50cca6074d3d
author: Johann <[email protected]>
date: Wed Feb 12 04:41:30 EST 2014
Merge "Skip COMDAT sections when parsing COFF"
--- a/build/make/obj_int_extract.c
+++ b/build/make/obj_int_extract.c
@@ -666,7 +666,11 @@
}
strcpy(sectionlist[i], sectionname);
- if (!strcmp(sectionname, ".rdata")) sectionrawdata_ptr = get_le32(ptr + 20);
+ // check if it's .rdata and is not a COMDAT section.
+ if (!strcmp(sectionname, ".rdata") &&
+ (get_le32(ptr + 36) & 0x1000) == 0) {
+ sectionrawdata_ptr = get_le32(ptr + 20);
+ }
ptr += 40;
}