diff --git a/etc/Translation/Blank.ts b/etc/Translation/Blank.ts index 47fd1e58..3c5f3060 100644 --- a/etc/Translation/Blank.ts +++ b/etc/Translation/Blank.ts @@ -1237,6 +1237,26 @@ Exit Program + + It seems that a bogus anti-virus software is slowing down the startup of LameXP. + + + + Please refer to the %1 document for details and solutions! + + + + Slow Startup + + + + Discard + + + + Don't Show Again + + Urgent Update @@ -1297,14 +1317,6 @@ AAC Support Disabled - - Discard - - - - Don't Show Again - - LameXP has detected that the WMA File Decoder component is not currently installed on your system. diff --git a/etc/Translation/LameXP_DE.ts b/etc/Translation/LameXP_DE.ts index a2ed7c5d..73a7c3c4 100644 --- a/etc/Translation/LameXP_DE.ts +++ b/etc/Translation/LameXP_DE.ts @@ -1594,6 +1594,18 @@ Please use LameXP's Cue Sheet wizard for importing Cue Sheet files. Bitte benutzen Sie zum Importieren von Cuesheets den Cuesheet Assistenten. + + It seems that a bogus anti-virus software is slowing down the startup of LameXP. + Anscheinend wird der Programmstart von LameXP durch eine fehlerhafte Antiviren-Software verlangsamt. + + + Please refer to the %1 document for details and solutions! + Bitte beachten Sie die Hinweise und Lösungsvorschläge im %1 Dokument! + + + Slow Startup + Langsamer Programmstart + MetaInfo diff --git a/etc/Translation/LameXP_ES.ts b/etc/Translation/LameXP_ES.ts index 9c2c0924..6c4dbc67 100644 --- a/etc/Translation/LameXP_ES.ts +++ b/etc/Translation/LameXP_ES.ts @@ -1593,6 +1593,18 @@ Please use LameXP's Cue Sheet wizard for importing Cue Sheet files. Por favor, use el asistente de imporatción de archivos Cue sheet de LameXP. + + It seems that a bogus anti-virus software is slowing down the startup of LameXP. + + + + Please refer to the %1 document for details and solutions! + + + + Slow Startup + + MetaInfo diff --git a/etc/Translation/LameXP_FR.ts b/etc/Translation/LameXP_FR.ts index 9dceef4f..37c44f72 100644 --- a/etc/Translation/LameXP_FR.ts +++ b/etc/Translation/LameXP_FR.ts @@ -1603,6 +1603,18 @@ Ouvrir le dossier récursivement... Please use LameXP's Cue Sheet wizard for importing Cue Sheet files. + + It seems that a bogus anti-virus software is slowing down the startup of LameXP. + + + + Please refer to the %1 document for details and solutions! + + + + Slow Startup + + MetaInfo diff --git a/etc/Translation/LameXP_IT.ts b/etc/Translation/LameXP_IT.ts index 7327dbdf..23438425 100644 --- a/etc/Translation/LameXP_IT.ts +++ b/etc/Translation/LameXP_IT.ts @@ -1594,6 +1594,18 @@ Please use LameXP's Cue Sheet wizard for importing Cue Sheet files. + + It seems that a bogus anti-virus software is slowing down the startup of LameXP. + + + + Please refer to the %1 document for details and solutions! + + + + Slow Startup + + MetaInfo diff --git a/etc/Translation/LameXP_KR.ts b/etc/Translation/LameXP_KR.ts index 017b4c7d..1709f947 100644 --- a/etc/Translation/LameXP_KR.ts +++ b/etc/Translation/LameXP_KR.ts @@ -1593,6 +1593,18 @@ Please use LameXP's Cue Sheet wizard for importing Cue Sheet files. + + It seems that a bogus anti-virus software is slowing down the startup of LameXP. + + + + Please refer to the %1 document for details and solutions! + + + + Slow Startup + + MetaInfo diff --git a/etc/Translation/LameXP_RU.ts b/etc/Translation/LameXP_RU.ts index 58125d04..60c0b815 100644 --- a/etc/Translation/LameXP_RU.ts +++ b/etc/Translation/LameXP_RU.ts @@ -1599,6 +1599,18 @@ пиздец бред Пожалуйста используйте Мастер импорта Cue файлов для импорта Cue файлов. + + It seems that a bogus anti-virus software is slowing down the startup of LameXP. + + + + Please refer to the %1 document for details and solutions! + + + + Slow Startup + + MetaInfo diff --git a/etc/Translation/LameXP_UK.ts b/etc/Translation/LameXP_UK.ts index 797b0cb9..c866f815 100644 --- a/etc/Translation/LameXP_UK.ts +++ b/etc/Translation/LameXP_UK.ts @@ -1593,6 +1593,18 @@ LameXP will <i>not</i> check for Beta (pre-release) updates from now on. Віднині LameXP <i>не</i> буде перевіряти наявність оновлень бета-версій. + + It seems that a bogus anti-virus software is slowing down the startup of LameXP. + + + + Please refer to the %1 document for details and solutions! + + + + Slow Startup + + MetaInfo diff --git a/res/localization/LameXP_DE.qm b/res/localization/LameXP_DE.qm index 15c1a1c8..72b91ad5 100644 Binary files a/res/localization/LameXP_DE.qm and b/res/localization/LameXP_DE.qm differ diff --git a/src/Config.h b/src/Config.h index f68a29c4..e6d8f4b2 100644 --- a/src/Config.h +++ b/src/Config.h @@ -30,7 +30,7 @@ #define VER_LAMEXP_MINOR_LO 3 #define VER_LAMEXP_TYPE Alpha #define VER_LAMEXP_PATCH 1 -#define VER_LAMEXP_BUILD 583 +#define VER_LAMEXP_BUILD 584 /////////////////////////////////////////////////////////////////////////////// // Tools versions diff --git a/src/Dialog_MainWindow.cpp b/src/Dialog_MainWindow.cpp index f27f0fdf..a3c8b844 100644 --- a/src/Dialog_MainWindow.cpp +++ b/src/Dialog_MainWindow.cpp @@ -925,6 +925,18 @@ void MainWindow::windowShown(void) } } + //Slow startup indicator + if(m_settings->slowStartup() && m_settings->antivirNotificationsEnabled()) + { + QString message; + message += QString("%1
").arg(tr("It seems that a bogus anti-virus software is slowing down the startup of LameXP.")); + message += QString("%1
").arg(tr("Please refer to the %1 document for details and solutions!").arg("F.A.Q.")); + if(QMessageBox::warning(this, tr("Slow Startup"), message, tr("Discard"), tr("Don't Show Again")) == 1) + { + m_settings->antivirNotificationsEnabled(false); + } + } + //Update reminder if(QDate::currentDate() >= lamexp_version_date().addYears(1)) { diff --git a/src/Main.cpp b/src/Main.cpp index 6ad24b84..053e4c02 100644 --- a/src/Main.cpp +++ b/src/Main.cpp @@ -129,6 +129,7 @@ static int lamexp_main(int argc, char* argv[]) //Show splash screen InitializationThread *poInitializationThread = new InitializationThread(&cpuFeatures); SplashScreen::showSplash(poInitializationThread); + settingsModel->slowStartup(poInitializationThread->getSlowIndicator()); LAMEXP_DELETE(poInitializationThread); //Validate settings diff --git a/src/Model_Settings.cpp b/src/Model_Settings.cpp index 876bd605..f30257be 100644 --- a/src/Model_Settings.cpp +++ b/src/Model_Settings.cpp @@ -83,6 +83,7 @@ LAMEXP_MAKE_ID(autoUpdateCheckBeta, "AutoUpdate/CheckForBetaVersions"); LAMEXP_MAKE_ID(soundsEnabled, "Flags/EnableSounds"); LAMEXP_MAKE_ID(neroAacNotificationsEnabled, "Flags/EnableNeroAacNotifications"); LAMEXP_MAKE_ID(wmaDecoderNotificationsEnabled, "Flags/EnableWmaDecoderNotifications"); +LAMEXP_MAKE_ID(antivirNotificationsEnabled, "Flags/EnableAntivirusNotifications"); LAMEXP_MAKE_ID(dropBoxWidgetEnabled, "Flags/EnableDropBoxWidget"); LAMEXP_MAKE_ID(shellIntegrationEnabled, "Flags/EnableShellIntegration"); LAMEXP_MAKE_ID(currentLanguage, "Localization/Language"); @@ -111,6 +112,7 @@ LAMEXP_MAKE_ID(metaInfoPosition, "MetaInformation/PlaylistPosition"); LAMEXP_MAKE_ID(maximumInstances, "AdvancedOptions/Threading/MaximumInstances"); LAMEXP_MAKE_ID(customTempPath, "AdvancedOptions/TempDirectory/CustomPath"); LAMEXP_MAKE_ID(customTempPathEnabled, "AdvancedOptions/TempDirectory/UseCustomPath"); +LAMEXP_MAKE_ID(slowStartup, "Flags/SlowStartupDetected"); //LUT const int SettingsModel::mp3Bitrates[15] = {32, 40, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256, 320, -1}; @@ -271,6 +273,7 @@ LAMEXP_MAKE_OPTION_B(autoUpdateCheckBeta, false) LAMEXP_MAKE_OPTION_B(soundsEnabled, true) LAMEXP_MAKE_OPTION_B(neroAacNotificationsEnabled, true) LAMEXP_MAKE_OPTION_B(wmaDecoderNotificationsEnabled, true) +LAMEXP_MAKE_OPTION_B(antivirNotificationsEnabled, true) LAMEXP_MAKE_OPTION_B(dropBoxWidgetEnabled, true) LAMEXP_MAKE_OPTION_B(shellIntegrationEnabled, !lamexp_portable_mode()) LAMEXP_MAKE_OPTION_S(currentLanguage, defaultLanguage()) @@ -299,3 +302,4 @@ LAMEXP_MAKE_OPTION_U(metaInfoPosition, UINT_MAX); LAMEXP_MAKE_OPTION_U(maximumInstances, 0); LAMEXP_MAKE_OPTION_S(customTempPath, QDesktopServices::storageLocation(QDesktopServices::TempLocation)); LAMEXP_MAKE_OPTION_B(customTempPathEnabled, false); +LAMEXP_MAKE_OPTION_B(slowStartup, false); diff --git a/src/Model_Settings.h b/src/Model_Settings.h index 1e271a5b..daea404b 100644 --- a/src/Model_Settings.h +++ b/src/Model_Settings.h @@ -93,6 +93,7 @@ public: LAMEXP_MAKE_OPTION_B(soundsEnabled); LAMEXP_MAKE_OPTION_B(neroAacNotificationsEnabled); LAMEXP_MAKE_OPTION_B(wmaDecoderNotificationsEnabled); + LAMEXP_MAKE_OPTION_B(antivirNotificationsEnabled); LAMEXP_MAKE_OPTION_B(dropBoxWidgetEnabled); LAMEXP_MAKE_OPTION_B(shellIntegrationEnabled); LAMEXP_MAKE_OPTION_S(currentLanguage); @@ -121,6 +122,7 @@ public: LAMEXP_MAKE_OPTION_U(maximumInstances); LAMEXP_MAKE_OPTION_S(customTempPath); LAMEXP_MAKE_OPTION_B(customTempPathEnabled); + LAMEXP_MAKE_OPTION_B(slowStartup); //Misc void validate(void); diff --git a/src/Thread_Initialization.cpp b/src/Thread_Initialization.cpp index a9625e2e..312c55c8 100644 --- a/src/Thread_Initialization.cpp +++ b/src/Thread_Initialization.cpp @@ -83,6 +83,8 @@ g_lamexp_tools[] = {NULL, NULL, NULL, NULL} }; +static const double g_allowedExtractDelay = 10.0; + //////////////////////////////////////////////////////////// // Constructor //////////////////////////////////////////////////////////// @@ -91,6 +93,7 @@ InitializationThread::InitializationThread(const lamexp_cpu_t *cpuFeatures) { m_bSuccess = false; memset(&m_cpuFeatures, 0, sizeof(lamexp_cpu_t)); + m_slowIndicator = false; if(cpuFeatures) { @@ -208,8 +211,9 @@ void InitializationThread::run() //Check delay double delayExtract = static_cast(timer.elapsed()) / 1000.0; - if(delayExtract > 8.0) + if(delayExtract > g_allowedExtractDelay) { + m_slowIndicator = true; qWarning("Extracting tools took %.3f seconds -> probably slow realtime virus scanner.", delayExtract); qWarning("Please report performance problems to your anti-virus developer !!!\n"); } diff --git a/src/Thread_Initialization.h b/src/Thread_Initialization.h index d0242e0e..e7ad2bd3 100644 --- a/src/Thread_Initialization.h +++ b/src/Thread_Initialization.h @@ -36,6 +36,7 @@ public: InitializationThread(const lamexp_cpu_t *cpuFeatures); void run(); bool getSuccess(void) { return !isRunning() && m_bSuccess; } + bool getSlowIndicator(void) { return m_slowIndicator; } private: void delay(void); @@ -43,6 +44,7 @@ private: void initNeroAac(void); void initWmaDec(void); - lamexp_cpu_t m_cpuFeatures; bool m_bSuccess; + lamexp_cpu_t m_cpuFeatures; + bool m_slowIndicator; };