From 5d74b679e6fdaf1732843056e36f91a221443689 Mon Sep 17 00:00:00 2001 From: glx Date: Mon, 3 Dec 2012 21:03:13 +0000 Subject: [PATCH] (svn r24780) -Fix [FS#5378]: passing an int to a function expecting a byte can have side effects when MSVC optimises it --- src/window.cpp | 4 ++-- src/window_gui.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/window.cpp b/src/window.cpp index aa4e5a644b..c50c02253a 100644 --- a/src/window.cpp +++ b/src/window.cpp @@ -304,10 +304,10 @@ void Window::UnfocusFocusedWidget() * @param widget_index Index of the widget in the window to set the focus to. * @return Focus has changed. */ -bool Window::SetFocusedWidget(byte widget_index) +bool Window::SetFocusedWidget(int widget_index) { /* Do nothing if widget_index is already focused, or if it wasn't a valid widget. */ - if (widget_index >= this->nested_array_size) return false; + if ((uint)widget_index >= this->nested_array_size) return false; assert(this->nested_array[widget_index] != NULL); // Setting focus to a non-existing widget is a bad idea. if (this->nested_focus != NULL) { diff --git a/src/window_gui.h b/src/window_gui.h index ab3b835052..6cd218793d 100644 --- a/src/window_gui.h +++ b/src/window_gui.h @@ -463,7 +463,7 @@ public: } void UnfocusFocusedWidget(); - bool SetFocusedWidget(byte widget_index); + bool SetFocusedWidget(int widget_index); EventState HandleEditBoxKey(int wid, uint16 key, uint16 keycode);