From 7cd53fb4527cf6a28b6defd673100d9ea870076d Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Sat, 11 Oct 2014 21:57:31 +0200 Subject: ThreadInputStream: add assertions --- src/input/ThreadInputStream.cxx | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/input/ThreadInputStream.cxx b/src/input/ThreadInputStream.cxx index dc08f3b6b..821ce3e4a 100644 --- a/src/input/ThreadInputStream.cxx +++ b/src/input/ThreadInputStream.cxx @@ -118,6 +118,8 @@ ThreadInputStream::ThreadFunc(void *ctx) bool ThreadInputStream::Check(Error &error) { + assert(!thread.IsInside()); + if (postponed_error.IsDefined()) { error = std::move(postponed_error); return false; @@ -129,12 +131,16 @@ ThreadInputStream::Check(Error &error) bool ThreadInputStream::IsAvailable() { + assert(!thread.IsInside()); + return !buffer->IsEmpty() || eof || postponed_error.IsDefined(); } inline size_t ThreadInputStream::Read(void *ptr, size_t read_size, Error &error) { + assert(!thread.IsInside()); + while (true) { if (postponed_error.IsDefined()) { error = std::move(postponed_error); @@ -161,5 +167,7 @@ ThreadInputStream::Read(void *ptr, size_t read_size, Error &error) bool ThreadInputStream::IsEOF() { + assert(!thread.IsInside()); + return eof; } -- cgit v1.2.3