diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2012-12-16 17:26:01 +0900 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2012-12-16 17:26:01 +0900 |
| commit | 04586f50b17317ef257f6d3f81190021c93ad5ea (patch) | |
| tree | ca77b10bdbbc5fb2f4aa652cc668838b7f254479 /src/BitfieldMan.cc | |
| parent | de1ca6d6b80c3784a788671977223a4c1bbf9a25 (diff) | |
Fixed BitfieldMan::getOffsetCompletedLength overflow on 32-bit systems
Diffstat (limited to 'src/BitfieldMan.cc')
| -rw-r--r-- | src/BitfieldMan.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/BitfieldMan.cc b/src/BitfieldMan.cc index b0f202d4..e3c033f9 100644 --- a/src/BitfieldMan.cc +++ b/src/BitfieldMan.cc @@ -863,7 +863,7 @@ int64_t BitfieldMan::getOffsetCompletedLength } } else { if(isBitSet(start)) { - res += (start+1)*blockLength_-offset; + res += static_cast<int64_t>(start+1)*blockLength_-offset; } for(size_t i = start+1; i <= end-1; ++i) { if(isBitSet(i)) { @@ -871,7 +871,7 @@ int64_t BitfieldMan::getOffsetCompletedLength } } if(isBitSet(end)) { - res += offset+length-end*blockLength_; + res += offset+length-static_cast<int64_t>(end)*blockLength_; } } return res; |
