diff --git a/src/network/network_gui.cpp b/src/network/network_gui.cpp index 0079013416..380bf90601 100644 --- a/src/network/network_gui.cpp +++ b/src/network/network_gui.cpp @@ -629,7 +629,7 @@ public: case WKC_PAGEDOWN: /* scroll down a page */ if (this->server == NULL) return ES_HANDLED; - this->list_pos = (this->list_pos + this->vscroll.cap > this->servers.Length() - 1) ? this->servers.Length() - 1 : this->list_pos + this->vscroll.cap; + this->list_pos = min(this->list_pos + this->vscroll.cap, (int)this->servers.Length() - 1); break; case WKC_HOME: /* jump to beginning */ diff --git a/src/settings_gui.cpp b/src/settings_gui.cpp index a04f12ee8e..bef0d446dc 100644 --- a/src/settings_gui.cpp +++ b/src/settings_gui.cpp @@ -818,7 +818,7 @@ struct PatchesSelectionWindow : Window { int x = SETTINGTREE_LEFT_OFFSET; int y = SETTINGTREE_TOP_OFFSET; - for (uint i = vscroll.pos; i != page->num && i < vscroll.pos + vscroll.cap; i++) { + for (uint i = vscroll.pos; i != page->num && vscroll.pos + vscroll.cap - i > 0; i++) { const SettingDesc *sd = page->entries[i].setting; DrawPatch(patches_ptr, sd, x, y, this->click - (i * 2)); y += SETTING_HEIGHT;