From d4023dbe29fcc8a4bfeb73a147c2601a38de36ee Mon Sep 17 00:00:00 2001 From: Daniel Scharrer Date: Thu, 29 Aug 2019 22:57:46 +0200 Subject: [PATCH] adler32: Avoid shadowing --- src/crypto/adler32.cpp | 8 ++++---- src/crypto/adler32.hpp | 7 ++++--- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/src/crypto/adler32.cpp b/src/crypto/adler32.cpp index fb5cc35..4bbd8d7 100644 --- a/src/crypto/adler32.cpp +++ b/src/crypto/adler32.cpp @@ -29,8 +29,8 @@ void adler32::update(const char * data, size_t length) { const boost::uint_fast32_t base = 65521; - boost::uint_fast32_t s1 = this->s1; - boost::uint_fast32_t s2 = this->s2; + boost::uint_fast32_t s1 = boost::uint16_t(state); + boost::uint_fast32_t s2 = boost::uint16_t(state >> 16); if(length % 8 != 0) { @@ -70,8 +70,8 @@ void adler32::update(const char * data, size_t length) { } } - this->s1 = boost::uint16_t(s1); - this->s2 = boost::uint16_t(s2); + state = (boost::uint32_t(s2) << 16) | boost::uint16_t(s1); + } } // namespace crypto diff --git a/src/crypto/adler32.hpp b/src/crypto/adler32.hpp index e42e294..962ea40 100644 --- a/src/crypto/adler32.hpp +++ b/src/crypto/adler32.hpp @@ -37,15 +37,16 @@ namespace crypto { //! Adler-32 checksum calculations struct adler32 : public checksum_base { - void init() { s1 = 1, s2 = 0; } + void init() { state = 1; } void update(const char * data, size_t length); - boost::uint32_t finalize() const { return (boost::uint32_t(s2) << 16) | s1; } + boost::uint32_t finalize() const { return state; } private: - boost::uint16_t s1, s2; + boost::uint32_t state; + }; } // namespace crypto