-- fix overflow error in seekToChunk()
authorAditya Agarwal <aditya@apache.org>
Tue, 27 Feb 2007 00:07:45 +0000 (00:07 +0000)
committerAditya Agarwal <aditya@apache.org>
Tue, 27 Feb 2007 00:07:45 +0000 (00:07 +0000)
Summary:
- I love finding overflow errors.

Reviewed By: jwang

Test Plan: tested by rolling back search logfile

Notes:
- This should not affect anything currently in production.

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665020 13f79535-47bb-0310-9956-ffa450edef68

lib/cpp/src/transport/TFileTransport.cpp

index 3f625bc..a9f3e9e 100644 (file)
@@ -630,7 +630,8 @@ void TFileTransport::seekToChunk(int32_t chunk) {
     minEndOffset = lseek(fd_, 0, SEEK_END);
   }
   
-  offset_ = lseek(fd_, chunk * chunkSize_, SEEK_SET);  
+  off_t newOffset = off_t(chunk) * chunkSize_;
+  offset_ = lseek(fd_, newOffset, SEEK_SET);  
   readState_.resetAllValues();
   if (offset_ == -1) {
     perror("TFileTransport: lseek error in seekToChunk");