From 181edf4b5397ded0bb49b13a9df0a21b1806a695 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Mon, 18 Aug 2014 09:47:23 +0200 Subject: InputStream: make offset_type unsigned --- src/input/plugins/CdioParanoiaInputPlugin.cxx | 2 +- src/input/plugins/FileInputPlugin.cxx | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'src/input/plugins') diff --git a/src/input/plugins/CdioParanoiaInputPlugin.cxx b/src/input/plugins/CdioParanoiaInputPlugin.cxx index 6f1ea976a..f847b35c1 100644 --- a/src/input/plugins/CdioParanoiaInputPlugin.cxx +++ b/src/input/plugins/CdioParanoiaInputPlugin.cxx @@ -274,7 +274,7 @@ input_cdio_open(const char *uri, bool CdioParanoiaInputStream::Seek(offset_type new_offset, Error &error) { - if (new_offset < 0 || new_offset > size) { + if (new_offset > size) { error.Format(cdio_domain, "Invalid offset to seek %ld (%ld)", (long int)new_offset, (long int)size); return false; diff --git a/src/input/plugins/FileInputPlugin.cxx b/src/input/plugins/FileInputPlugin.cxx index 60c316567..922c54b79 100644 --- a/src/input/plugins/FileInputPlugin.cxx +++ b/src/input/plugins/FileInputPlugin.cxx @@ -101,13 +101,13 @@ input_file_open(const char *filename, bool FileInputStream::Seek(offset_type new_offset, Error &error) { - new_offset = (offset_type)lseek(fd, (off_t)new_offset, SEEK_SET); - if (new_offset < 0) { + auto result = lseek(fd, (off_t)new_offset, SEEK_SET); + if (result < 0) { error.SetErrno("Failed to seek"); return false; } - offset = new_offset; + offset = (offset_type)result; return true; } -- cgit v1.2.3