X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2Fsolib-svr4.c;h=22c2239c467b1c563c66ac108f1a31f510b94345;hb=08a6411c715c2d8bf31d5a5c8a477fa4651639aa;hp=9538af602e213dc8d93c33f5bd49b8602a92f781;hpb=e7f0d979dd5cc4f8b658df892e93db69d6d660b7;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/solib-svr4.c b/gdb/solib-svr4.c index 9538af602e..22c2239c46 100644 --- a/gdb/solib-svr4.c +++ b/gdb/solib-svr4.c @@ -1651,6 +1651,7 @@ solib_event_probe_action (struct probe_and_action *pa) { enum probe_action action; unsigned probe_argc; + struct frame_info *frame = get_current_frame (); action = pa->action; if (action == DO_NOTHING || action == PROBES_INTERFACE_FAILED) @@ -1663,7 +1664,7 @@ solib_event_probe_action (struct probe_and_action *pa) arg0: Lmid_t lmid (mandatory) arg1: struct r_debug *debug_base (mandatory) arg2: struct link_map *new (optional, for incremental updates) */ - probe_argc = get_probe_argument_count (pa->probe); + probe_argc = get_probe_argument_count (pa->probe, frame); if (probe_argc == 2) action = FULL_RELOAD; else if (probe_argc < 2) @@ -1772,6 +1773,7 @@ svr4_handle_solib_event (void) struct value *val; CORE_ADDR pc, debug_base, lm = 0; int is_initial_ns; + struct frame_info *frame = get_current_frame (); /* Do nothing if not using the probes interface. */ if (info->probes_table == NULL) @@ -1816,7 +1818,7 @@ svr4_handle_solib_event (void) usm_chain = make_cleanup (resume_section_map_updates_cleanup, current_program_space); - val = evaluate_probe_argument (pa->probe, 1); + val = evaluate_probe_argument (pa->probe, 1, frame); if (val == NULL) { do_cleanups (old_chain); @@ -1847,7 +1849,7 @@ svr4_handle_solib_event (void) if (action == UPDATE_OR_RELOAD) { - val = evaluate_probe_argument (pa->probe, 2); + val = evaluate_probe_argument (pa->probe, 2, frame); if (val != NULL) lm = value_as_address (val);