From 77a3bca92dfceb581e523d3ade0d6c0d86b399cb Mon Sep 17 00:00:00 2001 From: Jens Ahrensfeld Date: Mon, 14 Oct 2019 19:00:51 +0000 Subject: [PATCH] - check result of fscanf git-svn-id: http://moon:8086/svn/software/trunk/projects/RBM@548 b431acfa-c32f-4a4a-93f1-934dc6c82436 --- Source/LayerArray.hpp | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/Source/LayerArray.hpp b/Source/LayerArray.hpp index 122669c..9f7f7dd 100644 --- a/Source/LayerArray.hpp +++ b/Source/LayerArray.hpp @@ -128,8 +128,16 @@ public: if (!pFile) return; - fscanf(pFile, "%d\n", &size); - fscanf(pFile, "%d\n", &numUnits); + int result = fscanf(pFile, "%d\n", &size); + if (result < 0) + { + return; + } + result = fscanf(pFile, "%d\n", &numUnits); + if (result < 0) + { + return; + } m_data.resize(size, numUnits); RowVectorXd data(numUnits); @@ -139,8 +147,11 @@ public: for (j=0; j < data.cols(); j++) { float v; - fscanf(pFile, "%f", &v); - data(j) = v; + int result = fscanf(pFile, "%f", &v); + if (result > 0) + { + data(j) = v; + } } // fscanf(pFile, "%d", &numUnits); m_data.row(i) = data;