diff options
Diffstat (limited to 'src/armnnTfLiteParser/TfLiteParser.cpp')
-rw-r--r-- | src/armnnTfLiteParser/TfLiteParser.cpp | 8 |
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()), |