added try catch for more safety #168
@ -11,7 +11,12 @@ ReturnValue_t NVMParameterBase::readJsonFile() {
|
|||||||
if (std::filesystem::exists(fullName)) {
|
if (std::filesystem::exists(fullName)) {
|
||||||
// Read JSON file content into object
|
// Read JSON file content into object
|
||||||
std::ifstream i(fullName);
|
std::ifstream i(fullName);
|
||||||
i >> json;
|
try {
|
||||||
|
i >> json;
|
||||||
|
} catch (nlohmann::json::exception& e) {
|
||||||
|
sif::warning << "Reading JSON file failed with error " << e.what() << std::endl;
|
||||||
|
return HasReturnvaluesIF::RETURN_FAILED;
|
||||||
|
}
|
||||||
return HasReturnvaluesIF::RETURN_OK;
|
return HasReturnvaluesIF::RETURN_OK;
|
||||||
}
|
}
|
||||||
return HasFileSystemIF::FILE_DOES_NOT_EXIST;
|
return HasFileSystemIF::FILE_DOES_NOT_EXIST;
|
||||||
@ -19,7 +24,12 @@ ReturnValue_t NVMParameterBase::readJsonFile() {
|
|||||||
|
|
||||||
ReturnValue_t NVMParameterBase::writeJsonFile() {
|
ReturnValue_t NVMParameterBase::writeJsonFile() {
|
||||||
std::ofstream o(fullName);
|
std::ofstream o(fullName);
|
||||||
o << std::setw(4) << json << std::endl;
|
try {
|
||||||
|
o << std::setw(4) << json << std::endl;
|
||||||
|
} catch (nlohmann::json::exception& e) {
|
||||||
|
sif::warning << "Writing JSON file failed with error " << e.what() << std::endl;
|
||||||
|
return HasReturnvaluesIF::RETURN_FAILED;
|
||||||
|
}
|
||||||
return HasReturnvaluesIF::RETURN_OK;
|
return HasReturnvaluesIF::RETURN_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user