From 41da3fa7f1d534c210fcc06c873fd0cc43956fc0 Mon Sep 17 00:00:00 2001 From: Jeffrey Walton Date: Sun, 17 Dec 2017 09:07:12 -0500 Subject: [PATCH] Use ptrdiff_t cast in BlockTransformation (GH #549) --- cryptlib.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/cryptlib.cpp b/cryptlib.cpp index 55df7134..ddc829db 100644 --- a/cryptlib.cpp +++ b/cryptlib.cpp @@ -148,16 +148,16 @@ size_t BlockTransformation::AdvancedProcessBlocks(const byte *inBlocks, const by CRYPTOPP_ASSERT(outBlocks); CRYPTOPP_ASSERT(length); - ptrdiff_t blockSize = static_cast(BlockSize()); + const ptrdiff_t blockSize = static_cast(BlockSize()); ptrdiff_t inIncrement = (flags & (BT_InBlockIsCounter|BT_DontIncrementInOutPointers)) ? 0 : blockSize; ptrdiff_t xorIncrement = xorBlocks ? blockSize : 0; ptrdiff_t outIncrement = (flags & BT_DontIncrementInOutPointers) ? 0 : blockSize; if (flags & BT_ReverseDirection) { - inBlocks += length - blockSize; - xorBlocks += length - blockSize; - outBlocks += length - blockSize; + inBlocks += static_cast(length) - blockSize; + xorBlocks += static_cast(length) - blockSize; + outBlocks += static_cast(length) - blockSize; inIncrement = 0-inIncrement; xorIncrement = 0-xorIncrement; outIncrement = 0-outIncrement;