diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2012-07-23 21:36:24 +0900 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2012-07-23 21:42:47 +0900 |
| commit | 860f4dd06ace859470e118d4b9a8d10ddf92d076 (patch) | |
| tree | 1effdc3fd73160b57f5d6d109662a66e33050d08 /src/ByteArrayDiskWriter.h | |
| parent | f56743b0833551aa6845d0a4f1d05da02cb52175 (diff) | |
Use int64_t instead of off_t
Using off_t, at least, in DiskAdaptor layer is problematic because
torrent can contain under 2GiB files but total sum of those files may
exceed 2GiB limit, which makes off_t overflow in 32 bit system without
large file support. So we use int64_t in API. We'll check the file
length before download so that it does not exceed max off_t.
Diffstat (limited to 'src/ByteArrayDiskWriter.h')
| -rw-r--r-- | src/ByteArrayDiskWriter.h | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/ByteArrayDiskWriter.h b/src/ByteArrayDiskWriter.h index 6899d63f..864b1b1e 100644 --- a/src/ByteArrayDiskWriter.h +++ b/src/ByteArrayDiskWriter.h @@ -49,18 +49,18 @@ public: ByteArrayDiskWriter(size_t maxLength = 5*1024*1024); virtual ~ByteArrayDiskWriter(); - virtual void initAndOpenFile(off_t totalLength = 0); + virtual void initAndOpenFile(int64_t totalLength = 0); - virtual void openFile(off_t totalLength = 0); + virtual void openFile(int64_t totalLength = 0); virtual void closeFile(); - virtual void openExistingFile(off_t totalLength = 0); + virtual void openExistingFile(int64_t totalLength = 0); - virtual void writeData(const unsigned char* data, size_t len, off_t position); - virtual ssize_t readData(unsigned char* data, size_t len, off_t position); + virtual void writeData(const unsigned char* data, size_t len, int64_t offset); + virtual ssize_t readData(unsigned char* data, size_t len, int64_t offset); - virtual off_t size(); + virtual int64_t size(); void setString(const std::string& s); |
