aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYordan Karadzhov <ykaradzhov@vmware.com>2019-03-14 17:10:03 +0200
committerSteven Rostedt (VMware) <rostedt@goodmis.org>2019-03-22 15:14:11 -0400
commit62bf69bf36c761cefd522b2cf1bbac062ba9d348 (patch)
tree179d3eade617ac591831e04f2c5059b20c8c8d57
parenta2d401655228fe7ae8f9e8452390d65752c4a7c6 (diff)
downloadtrace-cmd-62bf69bf36c761cefd522b2cf1bbac062ba9d348.tar.gz
kernel-shark: Make KsSession::importFromFile return status flag
The function has a better handling of the case when the session description file cannot be loaded. It returns true on success, otherwise false. We need this return flag in order to provide adequate error message in the case when this operation fails. Link: http://lore.kernel.org/linux-trace-devel/20190314151012.905-4-ykaradzhov@vmware.com Signed-off-by: Yordan Karadzhov <ykaradzhov@vmware.com> Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
-rw-r--r--kernel-shark/src/KsSession.cpp14
-rw-r--r--kernel-shark/src/KsSession.hpp2
2 files changed, 11 insertions, 5 deletions
diff --git a/kernel-shark/src/KsSession.cpp b/kernel-shark/src/KsSession.cpp
index 2242a127..b1518183 100644
--- a/kernel-shark/src/KsSession.cpp
+++ b/kernel-shark/src/KsSession.cpp
@@ -28,13 +28,19 @@ KsSession::~KsSession()
}
/** Import a user session from a Json file. */
-void KsSession::importFromFile(QString jfileName)
+bool KsSession::importFromFile(QString jfileName)
{
- if (_config)
+ kshark_config_doc *configTmp =
+ kshark_open_config_file(jfileName.toStdString().c_str(),
+ "kshark.config.session");
+
+ if (configTmp) {
kshark_free_config_doc(_config);
+ _config = configTmp;
+ return true;
+ }
- _config = kshark_open_config_file(jfileName.toStdString().c_str(),
- "kshark.config.session");
+ return false;
}
/** Export the current user session from a Json file. */
diff --git a/kernel-shark/src/KsSession.hpp b/kernel-shark/src/KsSession.hpp
index f5ed5a1a..b07c8106 100644
--- a/kernel-shark/src/KsSession.hpp
+++ b/kernel-shark/src/KsSession.hpp
@@ -37,7 +37,7 @@ public:
/** Get the configuration document object. */
kshark_config_doc *getConfDocPtr() const {return _config;}
- void importFromFile(QString jfileName);
+ bool importFromFile(QString jfileName);
void exportToFile(QString jfileName);