From 6b2927a693813cb426a7234976427b04d985125e Mon Sep 17 00:00:00 2001 From: kstdl Date: Tue, 7 Mar 2017 13:28:07 +0300 Subject: [PATCH] limit check added --- libraries/app/database_api.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/libraries/app/database_api.cpp b/libraries/app/database_api.cpp index 1cb20f65..3941d890 100644 --- a/libraries/app/database_api.cpp +++ b/libraries/app/database_api.cpp @@ -1804,6 +1804,7 @@ vector database_api_impl::get_tournaments(tournament_id_type vector result; const auto& tournament_idx = _db.get_index_type().indices().get(); for (auto elem: tournament_idx) { + if( result.size() >= limit ) break; if( ( (elem.get_id().instance.value <= start.instance.value) || start == tournament_id_type()) && ( (elem.get_id().instance.value >= stop.instance.value) || stop == tournament_id_type())) result.push_back( elem ); @@ -1822,13 +1823,14 @@ vector database_api::get_tournaments_by_state(tournament_id_t } vector database_api_impl::get_tournaments_by_state(tournament_id_type stop, - unsigned limit, - tournament_id_type start, - tournament_state state) + unsigned limit, + tournament_id_type start, + tournament_state state) { vector result; const auto& tournament_idx = _db.get_index_type().indices().get(); for (auto elem: tournament_idx) { + if( result.size() >= limit ) break; if( ( (elem.get_id().instance.value <= start.instance.value) || start == tournament_id_type()) && ( (elem.get_id().instance.value >= stop.instance.value) || stop == tournament_id_type()) && elem.get_state() == state )