diff options
author | Yordan Karadzhov <ykaradzhov@vmware.com> | 2019-03-14 17:10:03 +0200 |
---|---|---|
committer | Steven Rostedt (VMware) <rostedt@goodmis.org> | 2019-03-22 15:14:11 -0400 |
commit | 62bf69bf36c761cefd522b2cf1bbac062ba9d348 (patch) | |
tree | 179d3eade617ac591831e04f2c5059b20c8c8d57 | |
parent | a2d401655228fe7ae8f9e8452390d65752c4a7c6 (diff) | |
download | trace-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.cpp | 14 | ||||
-rw-r--r-- | kernel-shark/src/KsSession.hpp | 2 |
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); |