From 9d8bdf45b37e55d3dff659820b8772c58c60e516 Mon Sep 17 00:00:00 2001 From: Jens Ahrensfeld Date: Mon, 14 Oct 2019 19:01:12 +0000 Subject: [PATCH] - check result of fscanf git-svn-id: http://moon:8086/svn/software/trunk/projects/RBM@549 b431acfa-c32f-4a4a-93f1-934dc6c82436 --- Source/Weights.hpp | 28 ++++++++++++++++++++-------- 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/Source/Weights.hpp b/Source/Weights.hpp index 968884d..b4a5f93 100644 --- a/Source/Weights.hpp +++ b/Source/Weights.hpp @@ -224,29 +224,41 @@ public: if (!pFile) return; - fscanf(pFile, "%d %d %d\n", &numVisibleX, &numVisibleY, &numHidden); - + int result = fscanf(pFile, "%d %d %d\n", &numVisibleX, &numVisibleY, &numHidden); + if (result < 0) + { + return; + } setUnits(numVisibleX, numVisibleY, numHidden); uint32_t i, j; float v; for (i=0; i < m_numVisible; i++) { - fscanf(pFile, "%f", &v); - m_bv(i) = v; + result = fscanf(pFile, "%f", &v); + if (result > 0) + { + m_bv(i) = v; + } } for (i=0; i < m_numHidden; i++) { - fscanf(pFile, "%f", &v); - m_bh(i) = v; + result = fscanf(pFile, "%f", &v); + if (result > 0) + { + m_bh(i) = v; + } } for (i=0; i < m_numVisible; i++) { for (j=0; j < m_numHidden; j++) { - fscanf(pFile, "%f", &v); - m_w(i, j) = v; + result = fscanf(pFile, "%f", &v); + if (result > 0) + { + m_w(i, j) = v; + } } }