Page MenuHomeFreeBSD

D58245.id182012.diff
No OneTemporary

D58245.id182012.diff

diff --git a/sys/kern/link_elf.c b/sys/kern/link_elf.c
--- a/sys/kern/link_elf.c
+++ b/sys/kern/link_elf.c
@@ -1306,8 +1306,9 @@
if (shdr[i].sh_type == SHT_SYMTAB) {
symtabindex = i;
symstrindex = shdr[i].sh_link;
- } else if (shstrs != NULL && shdr[i].sh_name != 0 &&
- strcmp(shstrs + shdr[i].sh_name, ".ctors") == 0) {
+ } else if ((shstrs != NULL && shdr[i].sh_name != 0 &&
+ strcmp(shstrs + shdr[i].sh_name, ".ctors") == 0) ||
+ shdr[i].sh_type == SHT_INIT_ARRAY) {
/* Record relocated address and size of .ctors. */
lf->ctors_addr = mapbase + shdr[i].sh_addr - base_vaddr;
lf->ctors_size = shdr[i].sh_size;

File Metadata

Mime Type
text/plain
Expires
Thu, Jul 23, 12:26 PM (4 h, 5 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
35117777
Default Alt Text
D58245.id182012.diff (654 B)

Event Timeline