From b13c72e967e64612f87459563b6f86e894284e02 Mon Sep 17 00:00:00 2001 From: Thomas Goyne Date: Sun, 22 Apr 2012 15:31:11 +0000 Subject: [PATCH] Fix a few places where 32-bit fseek/ftell were used in the Matroska reader code Originally committed to SVN as r6715. --- aegisub/src/mkv_wrap.cpp | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/aegisub/src/mkv_wrap.cpp b/aegisub/src/mkv_wrap.cpp index e7927f76f..bd422d1bd 100644 --- a/aegisub/src/mkv_wrap.cpp +++ b/aegisub/src/mkv_wrap.cpp @@ -68,6 +68,14 @@ public: #define CACHESIZE 65536 +#ifdef __VISUALC__ +#define std_fseek _fseeki64 +#define std_ftell _ftelli64 +#else +#define std_fseek fseeko +#define std_ftell ftello +#endif + static void read_subtitles(agi::ProgressSink *ps, MatroskaFile *file, MkvStdIO *input, bool srt, bool ssa, double totalTime, AssFile *target) { std::map subList; char *readBuf = 0; @@ -92,7 +100,7 @@ static void read_subtitles(agi::ProgressSink *ps, MatroskaFile *file, MkvStdIO * else if (frameSize == 0) continue; - fseek(input->fp, filePos, SEEK_SET); + std_fseek(input->fp, filePos, SEEK_SET); fread(readBuf, 1, frameSize, input->fp); wxString blockString(readBuf, wxConvUTF8, frameSize); @@ -252,18 +260,10 @@ bool MatroskaWrapper::HasSubtitles(wxString const& filename) { } } -#ifdef __VISUALC__ -#define std_fseek _fseeki64 -#define std_ftell _ftelli64 -#else -#define std_fseek fseeko -#define std_ftell ftello -#endif - int StdIoRead(InputStream *_st, ulonglong pos, void *buffer, int count) { MkvStdIO *st = (MkvStdIO *) _st; size_t rd; - if (fseek(st->fp, pos, SEEK_SET)) { + if (std_fseek(st->fp, pos, SEEK_SET)) { st->error = errno; return -1; }