From a7cd9cec31952b932ab80fb50cddec28aab74736 Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Fri, 24 Jul 2020 23:18:24 +0200 Subject: WIP --- src/lib/ffmpeg_image_proxy.cc | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'src/lib/ffmpeg_image_proxy.cc') diff --git a/src/lib/ffmpeg_image_proxy.cc b/src/lib/ffmpeg_image_proxy.cc index db6059266..65c3ae29b 100644 --- a/src/lib/ffmpeg_image_proxy.cc +++ b/src/lib/ffmpeg_image_proxy.cc @@ -83,7 +83,7 @@ avio_seek_wrapper (void* data, int64_t offset, int whence) int FFmpegImageProxy::avio_read (uint8_t* buffer, int const amount) { - int const to_do = min(int64_t(amount), _data.size() - _pos); + size_t const to_do = min(static_cast(amount), _data.size() - _pos); if (to_do == 0) { return AVERROR_EOF; } @@ -97,18 +97,22 @@ FFmpegImageProxy::avio_seek (int64_t const pos, int whence) { switch (whence) { case AVSEEK_SIZE: - return _data.size(); + return static_cast(_data.size()); case SEEK_CUR: - _pos += pos; + DCPOMATIC_ASSERT ((static_cast(_pos) + pos) >= 0); + _pos = static_cast(_pos + pos); break; case SEEK_SET: - _pos = pos; + DCPOMATIC_ASSERT (pos >= 0); + _pos = static_cast(pos); break; case SEEK_END: - _pos = _data.size() - pos; + DCPOMATIC_ASSERT ((static_cast(_data.size()) - pos) >= 0); + _pos = static_cast(_data.size() - pos); break; } + DCPOMATIC_ASSERT (_pos >= 0); return _pos; } -- cgit v1.2.3