summaryrefslogtreecommitdiff
path: root/cryptlib.cpp
diff options
context:
space:
mode:
authorJeffrey Walton <noloader@gmail.com>2017-12-17 09:07:12 -0500
committerJeffrey Walton <noloader@gmail.com>2017-12-17 09:07:12 -0500
commit41da3fa7f1d534c210fcc06c873fd0cc43956fc0 (patch)
tree8b080b22b75b1ff9816c7bae43795e33fdb0d22b /cryptlib.cpp
parentd7a2e0e10cd310639ffcf4762fbb1ed27c8871b2 (diff)
downloadcryptopp-git-41da3fa7f1d534c210fcc06c873fd0cc43956fc0.tar.gz
Use ptrdiff_t cast in BlockTransformation (GH #549)
Diffstat (limited to 'cryptlib.cpp')
-rw-r--r--cryptlib.cpp8
1 files 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<ptrdiff_t>(BlockSize());
+ const ptrdiff_t blockSize = static_cast<ptrdiff_t>(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<ptrdiff_t>(length) - blockSize;
+ xorBlocks += static_cast<ptrdiff_t>(length) - blockSize;
+ outBlocks += static_cast<ptrdiff_t>(length) - blockSize;
inIncrement = 0-inIncrement;
xorIncrement = 0-xorIncrement;
outIncrement = 0-outIncrement;