diff options
Diffstat (limited to 'elfcopy/segments.c')
-rw-r--r-- | elfcopy/segments.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/elfcopy/segments.c b/elfcopy/segments.c index 9a26bba88cfc..9030248f8d85 100644 --- a/elfcopy/segments.c +++ b/elfcopy/segments.c @@ -34,7 +34,7 @@ #include "elfcopy.h" -ELFTC_VCSID("$Id: segments.c 3449 2016-05-03 13:59:29Z emaste $"); +ELFTC_VCSID("$Id: segments.c 3615 2018-05-17 04:12:24Z kaiwang27 $"); static void insert_to_inseg_list(struct segment *seg, struct section *sec); @@ -79,6 +79,8 @@ add_to_inseg_list(struct elfcopy *ecp, struct section *s) continue; if (s->vma + s->sz > seg->vaddr + seg->msz) continue; + if (seg->type == PT_TLS && ((s->flags & SHF_TLS) == 0)) + continue; insert_to_inseg_list(seg, s); if (seg->type == PT_LOAD) |