aboutsummaryrefslogtreecommitdiff
path: root/dyngen.c
diff options
context:
space:
mode:
authorbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>2005-04-27 19:55:58 +0000
committerbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>2005-04-27 19:55:58 +0000
commitb48a8bb6b17e7e53527b8acfefdc034ec09717fe (patch)
tree95a5a67a447de7aa0a57cd6848c5f3caf97415f4 /dyngen.c
parente5484d339114117920753c4045bed75510215862 (diff)
win32 fix (Filip Navara)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1414 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'dyngen.c')
-rw-r--r--dyngen.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/dyngen.c b/dyngen.c
index 45284954b8..d95d6a4523 100644
--- a/dyngen.c
+++ b/dyngen.c
@@ -635,6 +635,8 @@ static char *get_rel_sym_name(EXE_RELOC *rel)
name = get_sym_name(symtab + *(uint32_t *)(rel->r_reloc->r_symndx));
if (!strcmp(name, ".data"))
name = name_for_dotdata(rel);
+ if (name[0] == '.')
+ return NULL;
return name;
}
@@ -1698,6 +1700,8 @@ void gen_code(const char *name, host_ulong offset, host_ulong size,
if (rel->r_offset >= start_offset &&
rel->r_offset < start_offset + copy_size) {
sym_name = get_rel_sym_name(rel);
+ if (!sym_name)
+ continue;
if (strstart(sym_name, "__op_jmp", &p)) {
int n;
n = strtol(p, NULL, 10);