@mb405, nirvana
ich hab mal die ExitRun - Funktion etwas geändert:
Code: Alles auswählen
void CNeutrinoApp::ExitRun(const bool write_si)
{
//DisplayErrorMessage(g_Locale->getText(LOCALE_SHUTDOWNERROR_RECODING));
if ((!recordingstatus ||
ShowLocalizedMessage(LOCALE_MESSAGEBOX_INFO, LOCALE_SHUTDOWN_RECODING_QUERY, CMessageBox::mbrNo, CMessageBox::mbYes | CMessageBox::mbNo, NULL, 450, 30, true) == CMessageBox::mbrYes) && (!waitforshutdown))
{
if (write_si && strcmp(g_settings.epg_dir, "") != 0 && g_settings.epg_store ) {
CHintBox * hintBox = new CHintBox(LOCALE_MESSAGEBOX_INFO, g_Locale->getText(LOCALE_MISCSETTINGS_EPG_WAIT));
hintBox->paint();
waitforshutdown = true;
g_Sectionsd->writeSI2XML(g_settings.epg_dir);
if (!waitforshutdown) {
hintBox->hide();
delete hintBox;
}
}
else {
CLCD::getInstance()->setMode(CLCD::MODE_SHUTDOWN);
dprintf(DEBUG_INFO, "exit\n");
for(int x=0;x<256;x++)
frameBuffer->paletteSetColor(x, 0x000000, 0xffff);
frameBuffer->paletteSet();
frameBuffer->loadPicture2FrameBuffer("shutdown.raw");
frameBuffer->loadPal("shutdown.pal");
networkConfig.automatic_start = (network_automatic_start == 1);
networkConfig.commitConfig();
saveSetup();
if (frameBuffer != NULL)
delete frameBuffer;
g_Controld->shutdown();
if (g_RCInput != NULL)
delete g_RCInput;
exit(0);
}
}
}
Damit kommt erstmal nur eine Info, das die EPG-Daten gespeichert werden. Der Ton bleibt an, wenn das Speichern fertig ist fährt die Box ganz normal runter.
ich hab auch noch eine weitere Variable eingefügt, die "g_settings epg_store", mit dieser kann man das EPG-XML komplett ein und ausschalten. Hab das auch in die Settings mit reingenommen.....
Mal sehen, wenn ich Zeit finde mach ich mal ein neues Diff, wo das alles drinnen ist....
Gruß Kroki