зеркало из https://github.com/github/ruby.git
remove break because strtab/symtab is usually the last segment
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45437 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
45fff5150a
Коммит
2d8c3e7851
10
addr2line.c
10
addr2line.c
|
@ -525,12 +525,6 @@ fill_lines(int num_traces, void **traces, int check_debuglink,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* j: ....xxx
|
|
||||||
* 1: debug_line
|
|
||||||
* 2: .symtab
|
|
||||||
* 4: .strtab
|
|
||||||
*/
|
|
||||||
j = 0;
|
|
||||||
for (i = 0; i < ehdr->e_shnum; i++) {
|
for (i = 0; i < ehdr->e_shnum; i++) {
|
||||||
section_name = shstr + shdr[i].sh_name;
|
section_name = shstr + shdr[i].sh_name;
|
||||||
#ifdef __powerpc64__
|
#ifdef __powerpc64__
|
||||||
|
@ -538,17 +532,13 @@ fill_lines(int num_traces, void **traces, int check_debuglink,
|
||||||
#endif
|
#endif
|
||||||
if (!strcmp(section_name, ".debug_line")) {
|
if (!strcmp(section_name, ".debug_line")) {
|
||||||
debug_line_shdr = shdr + i;
|
debug_line_shdr = shdr + i;
|
||||||
j |= 1;
|
|
||||||
} else if (!strcmp(section_name, ".gnu_debuglink")) {
|
} else if (!strcmp(section_name, ".gnu_debuglink")) {
|
||||||
gnu_debuglink_shdr = shdr + i;
|
gnu_debuglink_shdr = shdr + i;
|
||||||
} else if (!strcmp(section_name, ".symtab")) {
|
} else if (!strcmp(section_name, ".symtab")) {
|
||||||
symtab_shdr = shdr + i;
|
symtab_shdr = shdr + i;
|
||||||
j |= 2;
|
|
||||||
} else if (!strcmp(section_name, ".strtab")) {
|
} else if (!strcmp(section_name, ".strtab")) {
|
||||||
strtab_shdr = shdr + i;
|
strtab_shdr = shdr + i;
|
||||||
j |= 4;
|
|
||||||
}
|
}
|
||||||
if (j == 7) break;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (symtab_shdr && strtab_shdr) {
|
if (symtab_shdr && strtab_shdr) {
|
||||||
|
|
Загрузка…
Ссылка в новой задаче