diff options
Diffstat (limited to 'src/elfs')
| -rwxr-xr-x | src/elfs/elfloader.c | 3 | ||||
| -rwxr-xr-x | src/elfs/elfparser.c | 2 |
2 files changed, 2 insertions, 3 deletions
diff --git a/src/elfs/elfloader.c b/src/elfs/elfloader.c index 6490619d..fa82f2e3 100755 --- a/src/elfs/elfloader.c +++ b/src/elfs/elfloader.c @@ -1163,11 +1163,12 @@ void RefreshElfTLS(elfheader_t* h) printf_dump(LOG_DEBUG, "Refreshing main TLS block @%p from %p:0x%lx\n", dest, (void*)h->tlsaddr, h->tlsfilesize); memcpy(dest, (void*)(h->tlsaddr+h->delta), h->tlsfilesize); tlsdatasize_t* ptr; - if ((ptr = (tlsdatasize_t*)pthread_getspecific(my_context->tlskey)) != NULL) + if ((ptr = (tlsdatasize_t*)pthread_getspecific(my_context->tlskey)) != NULL) { // refresh in tlsdata too dest = (char*)(ptr->data+h->tlsbase); printf_dump(LOG_DEBUG, "Refreshing active TLS block @%p from %p:0x%lx\n", dest, (void*)h->tlsaddr, h->tlssize-h->tlsfilesize); memcpy(dest, (void*)(h->tlsaddr+h->delta), h->tlsfilesize); + } } } diff --git a/src/elfs/elfparser.c b/src/elfs/elfparser.c index d5292564..af506749 100755 --- a/src/elfs/elfparser.c +++ b/src/elfs/elfparser.c @@ -380,8 +380,6 @@ const char* GetSymbolVersion(elfheader_t* h, int version) Elf64_Vernaux *aux = (Elf64_Vernaux*)((uintptr_t)ver + ver->vn_aux); for(int j=0; j<ver->vn_cnt; ++j) { if(aux->vna_other==version) - if(aux->vna_other==version) - if(aux->vna_other==version) return h->DynStr+aux->vna_name; aux = (Elf64_Vernaux*)((uintptr_t)aux + aux->vna_next); } |