From ea14cf671a7ad543ad4752b301883789ab86f70f Mon Sep 17 00:00:00 2001 From: "Frank Ch. Eigler" Date: Fri, 17 Jul 2009 09:37:35 -0400 Subject: [PATCH] PR3498 cont'd: better tolerate missing modules * tapsets.cxx (get_{user,kern}_dw): Skip partially allocated (0-initialized) FOO_dw[] slots that may result from dwflpp::ctor exceptions. --- tapsets.cxx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tapsets.cxx b/tapsets.cxx index f629d08c0..4ef5ade63 100644 --- a/tapsets.cxx +++ b/tapsets.cxx @@ -594,15 +594,15 @@ struct dwarf_builder: public derived_probe_builder dwflpp *get_kern_dw(systemtap_session& sess, const string& module) { - if (kern_dw.find(module) == kern_dw.end()) - kern_dw[module] = new dwflpp(sess, module, true); + if (kern_dw[module] == 0) + kern_dw[module] = new dwflpp(sess, module, true); // might throw return kern_dw[module]; } dwflpp *get_user_dw(systemtap_session& sess, const string& module) { - if (user_dw.find(module) == user_dw.end()) - user_dw[module] = new dwflpp(sess, module, false); + if (user_dw[module] == 0) + user_dw[module] = new dwflpp(sess, module, false); // might throw return user_dw[module]; } -- 2.43.5