diff --git a/NEWS b/NEWS index 5d089033a..31013de46 100644 --- a/NEWS +++ b/NEWS @@ -1,6 +1,8 @@ ver 0.19.5 (not yet released) * input - nfs: fix crash on connection failure +* archive + - zzip: fix crash after seeking * decoder - dsdiff, dsf, opus: fix deadlock while seeking - mp4v2: remove because of incompatible license @@ -136,6 +138,10 @@ ver 0.19 (2014/10/10) * install systemd unit for socket activation * Android port +ver 0.18.19 (2014/11/26) +* archive + - zzip: fix crash after seeking + ver 0.18.18 (2014/11/18) * decoder - ffmpeg: support opus diff --git a/src/archive/plugins/ZzipArchivePlugin.cxx b/src/archive/plugins/ZzipArchivePlugin.cxx index b4dc7029f..21cb693d8 100644 --- a/src/archive/plugins/ZzipArchivePlugin.cxx +++ b/src/archive/plugins/ZzipArchivePlugin.cxx @@ -168,12 +168,13 @@ bool ZzipInputStream::Seek(offset_type new_offset, Error &error) { zzip_off_t ofs = zzip_seek(file, new_offset, SEEK_SET); - if (ofs != -1) { + if (ofs < 0) { error.Set(zzip_domain, "zzip_seek() has failed"); - offset = ofs; - return true; + return false; } - return false; + + offset = ofs; + return true; } /* exported structures */