summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/newgrf_gui.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/newgrf_gui.cpp b/src/newgrf_gui.cpp
index 6884f043f..c02ffb701 100644
--- a/src/newgrf_gui.cpp
+++ b/src/newgrf_gui.cpp
@@ -278,9 +278,19 @@ static void NewGRFConfirmationCallback(Window *w, bool confirmed)
{
if (confirmed) {
newgrf_d *nd = &WP(w, newgrf_d);
+ GRFConfig *c;
+ int i = 0;
CopyGRFConfigList(nd->orig_list, *nd->list);
ReloadNewGRFData();
+
+ /* Show new, updated list */
+ for (c = *nd->list; c != NULL && c != nd->sel; c = c->next, i++);
+ CopyGRFConfigList(nd->list, *nd->orig_list);
+ for (c = *nd->list; c != NULL && i > 0; c = c->next, i--);
+ nd->sel = c;
+
+ SetWindowDirty(w);
}
}