diff --git a/libopenage/tube/test/test_container.cpp b/libopenage/tube/test/test_container.cpp index e5b5aca0c6..02d7df32d5 100644 --- a/libopenage/tube/test/test_container.cpp +++ b/libopenage/tube/test/test_container.cpp @@ -147,16 +147,16 @@ void test_queue() { q.insert(2, 2); q.insert(4, 3); q.insert(10, 4); - q.dump(); + q.insert(100001, 5); TESTEQUALS(*q.begin(0), 1); - TESTEQUALS(*q.begin(1), 1); + TESTEQUALS(*q.begin(1), 2); TESTEQUALS(*q.begin(2), 2); - TESTEQUALS(*q.begin(3), 2); + TESTEQUALS(*q.begin(3), 3); TESTEQUALS(*q.begin(4), 3); - TESTEQUALS(*q.begin(5), 3); + TESTEQUALS(*q.begin(5), 4); TESTEQUALS(*q.begin(10), 4); - TESTEQUALS(*q.begin(12), 4); - TESTEQUALS(*q.begin(100000), 4); + TESTEQUALS(*q.begin(12), 5); + TESTEQUALS(*q.begin(100000), 5); { std::set reference = {1,2,3}; diff --git a/libopenage/tube/tube_queue.h b/libopenage/tube/tube_queue.h index 0b007db82f..49416eb955 100644 --- a/libopenage/tube/tube_queue.h +++ b/libopenage/tube/tube_queue.h @@ -38,11 +38,17 @@ class Queue { TubeQueueFilterIterator<_T, Queue<_T>> begin( const tube_time_t &t = -std::numeric_limits::infinity()) { - return TubeQueueFilterIterator<_T, Queue<_T>>( - container.begin(), - container.end(), - t, - std::numeric_limits::infinity()); + for (auto it = this->container.begin(); it != this->container.end(); ++it) { + if (it->time() >= t) { + return TubeQueueFilterIterator<_T, Queue<_T>>( + it, + container.end(), + t, + std::numeric_limits::infinity()); + } + } + + return this->end(t); } TubeQueueFilterIterator<_T, Queue<_T>> end( diff --git a/openage/cabextract/cab.py b/openage/cabextract/cab.py index 22a9e2c551..312b3d8ec1 100644 --- a/openage/cabextract/cab.py +++ b/openage/cabextract/cab.py @@ -336,7 +336,7 @@ def read_folder_headers(self, cab): compressed_data_stream, window_bits=window_bits, reset_interval=0) - folder.plain_stream = StreamSeekBuffer(unseekable_plain_stream) # pylint: disable=redefined-variable-type,locally-enabled + folder.plain_stream = StreamSeekBuffer(unseekable_plain_stream) # pylint: disable=redefined-variable-type else: raise Exception("Unknown compression type %d" % compression_type)