From d9bc99658bc3e95965c78faa18261fa8634e6346 Mon Sep 17 00:00:00 2001 From: rubidium Date: Sat, 3 Jan 2009 11:03:53 +0000 Subject: [PATCH] (svn r14798) -Codechange: move variable declaration to first use of variable (Alberth) --- src/settings_gui.cpp | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/src/settings_gui.cpp b/src/settings_gui.cpp index 3335ffc182..ca54619958 100644 --- a/src/settings_gui.cpp +++ b/src/settings_gui.cpp @@ -867,32 +867,28 @@ struct PatchesSelectionWindow : Window { { switch (widget) { case PATCHSEL_OPTIONSPANEL: { - const PatchPage *page = &_patches_page[this->page]; - const SettingDesc *sd; - void *var; - int32 value; - int x, y; - byte btn; - - y = pt.y - SETTINGTREE_TOP_OFFSET; // Shift y coordinate + int y = pt.y - SETTINGTREE_TOP_OFFSET; // Shift y coordinate if (y < 0) return; // Clicked above first entry - x = pt.x - SETTINGTREE_LEFT_OFFSET; // Shift x coordinate + int x = pt.x - SETTINGTREE_LEFT_OFFSET; // Shift x coordinate if (x < 0) return; // Clicked left of the entry - btn = y / SETTING_HEIGHT; // Compute which setting is selected + byte btn = y / SETTING_HEIGHT; // Compute which setting is selected if (y % SETTING_HEIGHT > SETTING_HEIGHT - 2) return; // Clicked too low at the setting + + const PatchPage *page = &_patches_page[this->page]; + if (btn >= page->num) return; // Clicked below the last setting of the page - sd = page->entries[btn].setting; + const SettingDesc *sd = page->entries[btn].setting; /* return if action is only active in network, or only settable by server */ if (!(sd->save.conv & SLF_NETWORK_NO) && _networking && !_network_server) return; if ((sd->desc.flags & SGF_NETWORK_ONLY) && !_networking) return; if ((sd->desc.flags & SGF_NO_NETWORK) && _networking) return; - var = GetVariableAddress(patches_ptr, &sd->save); - value = (int32)ReadValue(var, sd->save.conv); + void *var = GetVariableAddress(patches_ptr, &sd->save); + int32 value = (int32)ReadValue(var, sd->save.conv); /* clicked on the icon on the left side. Either scroller or bool on/off */ if (x < 21) {