diff --git a/data/locale/deutsch.locale b/data/locale/deutsch.locale index 26312a7d8..e9e63395b 100644 --- a/data/locale/deutsch.locale +++ b/data/locale/deutsch.locale @@ -710,6 +710,7 @@ flashupdate.createimage_warning Nachfolgend wird ein Image für die %s STB erste flashupdate.currentversion_sep Installierte Version flashupdate.currentversiondate Datum flashupdate.currentversiontime Uhrzeit +flashupdate.enter_flash_script Stoppe laufende Dienste ... flashupdate.erasefailed Flash löschen fehlgeschlagen flashupdate.erasing lösche Flash flashupdate.experimentalimage Sie haben eine Betaversion oder einen Nightly Build ausgewählt.\nBitte beachten Sie, dass diese Version ungetestet ist\nund Ihre Box nach dem Update möglicherweise nicht mehr funktionsfähig ist.\n\nSoll diese Version wirklich installiert werden? diff --git a/src/system/flashtool.cpp b/src/system/flashtool.cpp index df428343e..35e744495 100644 --- a/src/system/flashtool.cpp +++ b/src/system/flashtool.cpp @@ -230,6 +230,12 @@ bool CFlashTool::program( const std::string & filename, int globalProgressEndEra return false; } + if(statusViewer) { + statusViewer->showLocalStatus(0); + statusViewer->showStatusMessageUTF(g_Locale->getText(LOCALE_FLASHUPDATE_ENTER_FLASH_SCRIPT)); // UTF-8 + } + stopDaemons(); + if(statusViewer) { statusViewer->showLocalStatus(0); statusViewer->showStatusMessageUTF(g_Locale->getText(LOCALE_FLASHUPDATE_ERASING)); // UTF-8 @@ -336,6 +342,17 @@ bool CFlashTool::getInfo() return true; } +void CFlashTool::stopDaemons() +{ +/* +#ifdef ENABLE_LCD4LINUX + if (g_settings.lcd4l_support) + CLCD4l::getInstance()->StopLCD4l(); +#endif +*/ + CNeutrinoApp::getInstance()->stopDaemonsForFlash(); +} + bool CFlashTool::erase(int globalProgressEnd) { erase_info_t lerase; @@ -353,8 +370,6 @@ bool CFlashTool::erase(int globalProgressEnd) return false; } - CNeutrinoApp::getInstance()->stopDaemonsForFlash(); - #ifndef VFD_UPDATE CVFD::getInstance()->ShowText("Erase Flash"); #endif @@ -436,7 +451,9 @@ bool CFlashTool::check_md5( const std::string & filename, const std::string & sm void CFlashTool::reboot() { + printf("CFlashTool::reboot: start\n"); ::reboot(RB_AUTOBOOT); + printf("CFlashTool::reboot: done\n"); ::exit(0); } diff --git a/src/system/flashtool.h b/src/system/flashtool.h index 7fb6bd2dc..7f423a9db 100644 --- a/src/system/flashtool.h +++ b/src/system/flashtool.h @@ -53,6 +53,7 @@ class CFlashTool bool getInfo(); bool erase(int globalProgressEnd=-1); + void stopDaemons(); public: CFlashTool(); diff --git a/src/system/locals.h b/src/system/locals.h index 3ce7c215b..bfb7d0358 100644 --- a/src/system/locals.h +++ b/src/system/locals.h @@ -737,6 +737,7 @@ typedef enum LOCALE_FLASHUPDATE_CURRENTVERSION_SEP, LOCALE_FLASHUPDATE_CURRENTVERSIONDATE, LOCALE_FLASHUPDATE_CURRENTVERSIONTIME, + LOCALE_FLASHUPDATE_ENTER_FLASH_SCRIPT, LOCALE_FLASHUPDATE_ERASEFAILED, LOCALE_FLASHUPDATE_ERASING, LOCALE_FLASHUPDATE_EXPERIMENTALIMAGE, diff --git a/src/system/locals_intern.h b/src/system/locals_intern.h index e0d00f063..7605895a7 100644 --- a/src/system/locals_intern.h +++ b/src/system/locals_intern.h @@ -737,6 +737,7 @@ const char * locale_real_names[] = "flashupdate.currentversion_sep", "flashupdate.currentversiondate", "flashupdate.currentversiontime", + "flashupdate.enter_flash_script", "flashupdate.erasefailed", "flashupdate.erasing", "flashupdate.experimentalimage",