aboutsummaryrefslogtreecommitdiff
path: root/tccpe.c
diff options
context:
space:
mode:
Diffstat (limited to 'tccpe.c')
-rw-r--r--tccpe.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/tccpe.c b/tccpe.c
index 5911296..f1bd0f7 100644
--- a/tccpe.c
+++ b/tccpe.c
@@ -383,13 +383,10 @@ ST char pe_type;
ST int pe_find_import(TCCState * s1, const char *symbol, char *ret)
{
int sym_index = find_elf_sym(s1->dynsymtab_section, symbol);
- if (0 == sym_index) {
- /* Hm, maybe it's '_symbol' instead of 'symbol' or '__imp__symbol' */
- char buffer[100];
- if (0 == memcmp(symbol, "__imp__", 7))
- symbol += 6;
- else
- buffer[0] = '_', strcpy(buffer + 1, symbol), symbol = buffer;
+ if (0 == sym_index &&
+ !memcmp(symbol, "__imp__", 7)) {
+ /* Hm, maybe it's '_symbol' instead of '__imp__symbol' */
+ symbol += 6;
sym_index = find_elf_sym(s1->dynsymtab_section, symbol);
}
if (ret)