CShellWindow: fix "OK" button after shell window

Allocating the CComponentsButton object on the stack does not really work
here, because it goes immediately out of scope and is thus deleted.


Origin commit data
------------------
Commit: 8e43498ea5
Author: Stefan Seyfried <seife@tuxbox-git.slipkontur.de>
Date: 2016-01-03 (Sun, 03 Jan 2016)
This commit is contained in:
Stefan Seyfried
2016-01-03 18:56:19 +01:00
parent ee49325836
commit a306a747a1

View File

@@ -245,13 +245,14 @@ void CShellWindow::showResult()
}
if ((mode & VERBOSE)){
CComponentsButton *btn = NULL;
if (show_button){
int b_width = 150;
int b_height = 35;
int xpos = frameBuffer->getScreenWidth() - b_width;
int ypos = frameBuffer->getScreenHeight() - b_height;
CComponentsButton btn(xpos, ypos, b_width, b_height, LOCALE_MESSAGEBOX_BACK, NEUTRINO_ICON_BUTTON_OKAY, NULL, true, true);
btn.paint();
btn = new CComponentsButton(xpos, ypos, b_width, b_height, LOCALE_MESSAGEBOX_BACK, NEUTRINO_ICON_BUTTON_OKAY, NULL, true, true);
btn->paint(false); /* saving background is not really needed */
}
neutrino_msg_t msg;
@@ -264,6 +265,8 @@ void CShellWindow::showResult()
g_RCInput->getMsgAbsoluteTimeout(&msg, &data, &timeoutEnd);
while (msg != CRCInput::RC_ok && msg != CRCInput::RC_home && msg != CRCInput::RC_timeout);
}
if (btn)
delete btn;
textBox->hide();
}
}