From 3e72516398298e205712fbcf307c45765c969949 Mon Sep 17 00:00:00 2001 From: "Wladimir J. van der Laan" Date: Fri, 12 Oct 2012 23:49:44 +0200 Subject: [PATCH] Fix out-of-bounds read noticed by Ricardo Correia Sizeof() returned the size of a pointer instead of the size of the buffer. Fixes issue #1924. --- src/main.cpp | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/main.cpp b/src/main.cpp index 28bf01a8..0524e7f8 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -3458,9 +3458,6 @@ public: } }; -const char* pszDummy = "\0\0"; -CScript scriptDummy(std::vector(pszDummy, pszDummy + sizeof(pszDummy))); - CBlock* CreateNewBlock(CReserveKey& reservekey) { CBlockIndex* pindexPrev = pindexBest; @@ -3692,7 +3689,7 @@ CBlock* CreateNewBlock(CReserveKey& reservekey) pblock->nBits = GetNextWorkRequired(pindexPrev, pblock.get()); pblock->nNonce = 0; - pblock->vtx[0].vin[0].scriptSig = scriptDummy; + pblock->vtx[0].vin[0].scriptSig = CScript() << OP_0 << OP_0; CBlockIndex indexDummy(1, 1, *pblock); indexDummy.pprev = pindexPrev; indexDummy.nHeight = pindexPrev->nHeight + 1;