From ec6c49d171ef900186c5693df89a5176261d699e Mon Sep 17 00:00:00 2001 From: Nikolay Polyanovskii Date: Mon, 2 Jun 2014 10:29:07 -0500 Subject: [PATCH] [Summary] improve function remove_pattern_from_string() [git-p4: depot-paths = "//Abdaw/dev_main/tracks/": change = 465192] --- gtk2_ardour/tracks_control_panel.logic.cc | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/gtk2_ardour/tracks_control_panel.logic.cc b/gtk2_ardour/tracks_control_panel.logic.cc index e00a692bf2..7848a4d841 100644 --- a/gtk2_ardour/tracks_control_panel.logic.cc +++ b/gtk2_ardour/tracks_control_panel.logic.cc @@ -46,13 +46,15 @@ using namespace Glib; #define dbg_msg(a) MessageDialog (a, PROGRAM_NAME).run(); namespace { - // if pattern is not found out_str == in_str bool remove_pattern_from_string(const std::string& in_str, const std::string& pattern, std::string& out_str) { - if (in_str.find(pattern) != std::string::npos ) { - out_str = in_str.substr(pattern.size() ); + + out_str.assign(in_str); + + size_t pos = in_str.find(pattern); + if ( pos != std::string::npos ) { + out_str.erase(pos, pattern.length() ); return true; } else { - out_str = in_str; return false; } }