summaryrefslogtreecommitdiff
path: root/qpid/cpp/src/qpid/broker/Selector.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'qpid/cpp/src/qpid/broker/Selector.cpp')
-rw-r--r--qpid/cpp/src/qpid/broker/Selector.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/qpid/cpp/src/qpid/broker/Selector.cpp b/qpid/cpp/src/qpid/broker/Selector.cpp
index a6378f1910..3e7e044d5d 100644
--- a/qpid/cpp/src/qpid/broker/Selector.cpp
+++ b/qpid/cpp/src/qpid/broker/Selector.cpp
@@ -147,7 +147,8 @@ const Value& MessageSelectorEnv::value(const string& identifier) const
return returnedValues[identifier];
}
-Selector::Selector(const string& e) :
+Selector::Selector(const string& e)
+try :
parse(TopExpression::parse(e)),
expression(e)
{
@@ -159,6 +160,10 @@ Selector::Selector(const string& e) :
QPID_LOG(debug, "Selector parsed[" << e << "] into: " << ss.str());
}
}
+catch (std::range_error& ex) {
+ QPID_LOG(debug, "Selector failed[" << e << "] -> " << ex.what());
+ throw;
+}
Selector::~Selector()
{