From 3f948d4e2bbe41aee3dff408096d0a3cc6f25e5c Mon Sep 17 00:00:00 2001 From: Andrej Babic Date: Wed, 17 Jan 2018 10:36:17 +0100 Subject: [PATCH] Fix rest interface casting --- src/rest_interface.cpp | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/rest_interface.cpp b/src/rest_interface.cpp index aa4fd57..f786b16 100644 --- a/src/rest_interface.cpp +++ b/src/rest_interface.cpp @@ -71,18 +71,17 @@ void start_rest_api(WriterManager& writer_manager, uint16_t port, std::mapat(parameter_name); if (parameter_type == NX_FLOAT) { - result[parameter_name] = *(boost::any_cast(parameter_value)); - + result[parameter_name] = boost::any_cast(parameter_value); } else if (parameter_type == NX_CHAR) { - result[parameter_name] = *(boost::any_cast(parameter_value)); + result[parameter_name] = boost::any_cast(parameter_value); } else if (parameter_type == NX_DATE_TIME) { - result[parameter_name] = *(boost::any_cast(parameter_value)); + result[parameter_name] = boost::any_cast(parameter_value); } else if (parameter_type == NX_INT) { - result[parameter_name] = *(boost::any_cast(parameter_value)); - + result[parameter_name] = boost::any_cast(parameter_value); } + } catch (const boost::bad_any_cast& exception) { stringstream error_message; error_message << "Cannot cast parameter " << parameter_name << " into specified type." << endl;