From 5aa0b2382515eb92fe249a106059f3b6a9328d26 Mon Sep 17 00:00:00 2001 From: Jeff Garzik Date: Sun, 22 Apr 2012 13:59:24 -0400 Subject: [PATCH] CBlock::WriteToDisk() properly checks ftell(3) for error return Rather than storing ftell(3)'s return value -- a long -- in an unsigned int, we store and check a properly typed temp. Then, assured a non-negative value, we store in nBlockPosRet. --- src/main.h | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main.h b/src/main.h index 423891c..262e77e 100644 --- a/src/main.h +++ b/src/main.h @@ -944,9 +944,10 @@ public: fileout << FLATDATA(pchMessageStart) << nSize; // Write block - nBlockPosRet = ftell(fileout); - if (nBlockPosRet == -1) + long fileOutPos = ftell(fileout); + if (fileOutPos < 0) return error("CBlock::WriteToDisk() : ftell failed"); + nBlockPosRet = fileOutPos; fileout << *this; // Flush stdio buffers and commit to disk before returning -- 1.7.1