aboutsummaryrefslogtreecommitdiff
path: root/src/armnnTfLiteParser/TfLiteParser.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/armnnTfLiteParser/TfLiteParser.cpp')
-rw-r--r--src/armnnTfLiteParser/TfLiteParser.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/armnnTfLiteParser/TfLiteParser.cpp b/src/armnnTfLiteParser/TfLiteParser.cpp
index 199a853918..1c5b4fc9f0 100644
--- a/src/armnnTfLiteParser/TfLiteParser.cpp
+++ b/src/armnnTfLiteParser/TfLiteParser.cpp
@@ -4876,9 +4876,15 @@ TfLiteParserImpl::ModelPtr TfLiteParserImpl::LoadModelFromFile(const char* fileN
std::stringstream msg;
msg << "Cannot find the file (" << fileName << ") errorCode: " << errorCode
<< " " << CHECK_LOCATION().AsString();
-
throw FileNotFoundException(msg.str());
}
+ if (!fs::is_regular_file(pathToFile))
+ {
+ // Exclude non regular files.
+ throw InvalidArgumentException(fmt::format("File \"{}\" is not a regular file and cannot be loaded.",
+ pathToFile.c_str()));
+ }
+
std::ifstream file(fileName, std::ios::binary);
std::string fileContent((std::istreambuf_iterator<char>(file)), std::istreambuf_iterator<char>());
return LoadModelFromBinary(reinterpret_cast<const uint8_t *>(fileContent.c_str()),