From d5609010ba46e31f2a43bb23cef21302ac38c055 Mon Sep 17 00:00:00 2001 From: Henry Wilson Date: Sat, 30 Dec 2017 20:54:34 +0000 Subject: [PATCH 02/31] Window::scheduled_invalidation_data ~> std::vector --- src/window.cpp | 9 +++++---- src/window_gui.h | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/window.cpp b/src/window.cpp index f4b7a1ca1..1d3106fff 100644 --- a/src/window.cpp +++ b/src/window.cpp @@ -3163,7 +3163,7 @@ void Window::InvalidateData(int data, bool gui_scope) this->SetDirty(); if (!gui_scope) { /* Schedule GUI-scope invalidation for next redraw. */ - *this->scheduled_invalidation_data.Append() = data; + this->scheduled_invalidation_data.push_back(data); } this->OnInvalidateData(data, gui_scope); } @@ -3173,10 +3173,11 @@ void Window::InvalidateData(int data, bool gui_scope) */ void Window::ProcessScheduledInvalidations() { - for (int *data = this->scheduled_invalidation_data.Begin(); this->window_class != WC_INVALID && data != this->scheduled_invalidation_data.End(); data++) { - this->OnInvalidateData(*data, true); + for (auto &data : this->scheduled_invalidation_data) { + if (WC_INVALID == this->window_class) break; + this->OnInvalidateData(data, true); } - this->scheduled_invalidation_data.Clear(); + this->scheduled_invalidation_data.clear(); } /** diff --git a/src/window_gui.h b/src/window_gui.h index b81b06e39..1e42e9d48 100644 --- a/src/window_gui.h +++ b/src/window_gui.h @@ -274,7 +274,7 @@ protected: void InitializePositionSize(int x, int y, int min_width, int min_height); virtual void FindWindowPlacementAndResize(int def_width, int def_height); - SmallVector scheduled_invalidation_data; ///< Data of scheduled OnInvalidateData() calls. + std::vector scheduled_invalidation_data; ///< Data of scheduled OnInvalidateData() calls. public: Window(WindowDesc *desc); -- 2.14.1