diff options
author | glx <glx@openttd.org> | 2008-05-14 02:32:35 +0000 |
---|---|---|
committer | glx <glx@openttd.org> | 2008-05-14 02:32:35 +0000 |
commit | ab0aa4e080ce5f78fb26b5548288ccf8a496c8f9 (patch) | |
tree | 0be07031b976ab2771225c114f86a99f9567e808 | |
parent | 015dbc6e7bdc72df94d53ad86d5f42037d97f47e (diff) | |
download | openttd-ab0aa4e080ce5f78fb26b5548288ccf8a496c8f9.tar.xz |
(svn r13083) -Fix (r13042): another segmentation fault when OskWindow's parent closes it
-rw-r--r-- | src/osk_gui.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/osk_gui.cpp b/src/osk_gui.cpp index 49d869765..32d7ff41c 100644 --- a/src/osk_gui.cpp +++ b/src/osk_gui.cpp @@ -171,6 +171,8 @@ struct OskWindow : public Window { /* pass information by simulating a button press on parent window */ if (this->ok_btn != 0) { this->parent->OnClick(pt, this->ok_btn); + /* Window gets deleted when the parent window removes itself. */ + return; } } delete_this = true; @@ -180,6 +182,7 @@ struct OskWindow : public Window { if (this->cancel_btn != 0) { // pass a cancel event to the parent window this->parent->OnClick(pt, this->cancel_btn); /* Window gets deleted when the parent window removes itself. */ + return; } else { // or reset to original string strcpy(qs->text.buf, this->orig_str_buf); UpdateTextBufferSize(&qs->text); |