diff options
| author | jolsa@redhat.com <jolsa@redhat.com> | 2011-06-20 16:14:11 +0200 |
|---|---|---|
| committer | Jiri Olsa <Jiri Olsa jolsa@redhat.com> | 2011-11-24 21:20:27 +0100 |
| commit | d4d4ddd698f1378649e33aa58b7e3b687a2e6c3d (patch) | |
| tree | e3748aa5978ca912c964f4f50defe3b3b4740a52 /src/symbol.c | |
| parent | 2d6cc3704e7affeb56c798b39a942daca95385dc (diff) | |
| download | latrace-d4d4ddd698f1378649e33aa58b7e3b687a2e6c3d.tar.gz latrace-d4d4ddd698f1378649e33aa58b7e3b687a2e6c3d.tar.xz latrace-d4d4ddd698f1378649e33aa58b7e3b687a2e6c3d.zip | |
error simulation: library part
Diffstat (limited to 'src/symbol.c')
| -rw-r--r-- | src/symbol.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/src/symbol.c b/src/symbol.c index f10045a..707fbf6 100644 --- a/src/symbol.c +++ b/src/symbol.c @@ -74,14 +74,19 @@ static int symbol_init(struct lt_config_shared *cfg, struct lt_symbol *sym, const char *name) { struct lt_args_sym *a = NULL; + struct lt_error_sym *e = NULL; - if (lt_sh(cfg, args_enabled)) { + if (lt_sh(cfg, args_enabled)) a = lt_args_sym_get(cfg, name); - if (!a) - return -1; - } - sym->args = a; + if (lt_sh(cfg, error_sim)) + e = lt_error_sym_get(cfg, name); + + if (!a && !e) + return -1; + + sym->args = a; + sym->error = e; PRINT_VERBOSE(cfg, 1, "ok name %s, ptr %p, sym %p\n", name, sym->ptr, sym); |
