Try to solve issue 10166
authorLaurentBerger <laurent.berger@univ-lemans.fr>
Mon, 27 Nov 2017 12:13:05 +0000 (13:13 +0100)
committerLaurentBerger <laurent.berger@univ-lemans.fr>
Mon, 27 Nov 2017 12:13:05 +0000 (13:13 +0100)
modules/core/include/opencv2/core.hpp
modules/ml/src/ann_mlp.cpp

index 8054d31..177ffbe 100644 (file)
@@ -3134,6 +3134,7 @@ public:
     template<typename _Tp> static Ptr<_Tp> load(const String& filename, const String& objname=String())
     {
         FileStorage fs(filename, FileStorage::READ);
+        CV_Assert(fs.isOpened());
         FileNode fn = objname.empty() ? fs.getFirstTopLevelNode() : fs[objname];
         if (fn.empty()) return Ptr<_Tp>();
         Ptr<_Tp> obj = _Tp::create();
index fdc73d9..a55ed22 100644 (file)
@@ -1329,7 +1329,7 @@ Ptr<ANN_MLP> ANN_MLP::load(const String& filepath)
 {
     FileStorage fs;
     fs.open(filepath, FileStorage::READ);
-
+    CV_Assert(fs.isOpened());
     Ptr<ANN_MLP> ann = makePtr<ANN_MLPImpl>();
 
     ((ANN_MLPImpl*)ann.get())->read(fs.getFirstTopLevelNode());