diff options
author | Petr Machata <pmachata@redhat.com> | 2012-04-15 04:28:31 +0200 |
---|---|---|
committer | Petr Machata <pmachata@redhat.com> | 2012-04-19 01:38:05 +0200 |
commit | e8d9076a97f6617868466a99bd18e11e3f6389ac (patch) | |
tree | 530d2a1097ae4cdc33615387c2e0f2264f4f4644 /library.c | |
parent | 4572877d0dd0b5060f4498e705467eaef51c6459 (diff) | |
download | ltrace-e8d9076a97f6617868466a99bd18e11e3f6389ac.tar.gz |
library_symbol_init may fail
Diffstat (limited to 'library.c')
-rw-r--r-- | library.c | 21 |
1 files changed, 16 insertions, 5 deletions
@@ -71,9 +71,10 @@ strdup_if_owned(const char **retp, const char *str, int owned) } void -library_symbol_init(struct library_symbol *libsym, - target_address_t addr, const char *name, int own_name, - enum toplt type_of_plt) +private_library_symbol_init(struct library_symbol *libsym, + target_address_t addr, + const char *name, int own_name, + enum toplt type_of_plt) { libsym->next = NULL; libsym->lib = NULL; @@ -83,6 +84,16 @@ library_symbol_init(struct library_symbol *libsym, libsym->enter_addr = (void *)(uintptr_t)addr; } +int +library_symbol_init(struct library_symbol *libsym, + target_address_t addr, const char *name, int own_name, + enum toplt type_of_plt) +{ + private_library_symbol_init(libsym, addr, name, own_name, type_of_plt); + return 0; + +} + void library_symbol_destroy(struct library_symbol *libsym) { @@ -97,8 +108,8 @@ library_symbol_clone(struct library_symbol *retp, struct library_symbol *libsym) if (strdup_if_owned(&name, libsym->name, libsym->own_name) < 0) return -1; - library_symbol_init(retp, libsym->enter_addr, - name, libsym->own_name, libsym->plt_type); + private_library_symbol_init(retp, libsym->enter_addr, + name, libsym->own_name, libsym->plt_type); return 0; } |