diff options
-rw-r--r-- | indra/newview/app_settings/cmd_line.xml | 9 | ||||
-rw-r--r-- | indra/newview/app_settings/settings.xml | 13 | ||||
-rw-r--r-- | indra/newview/llappviewer.cpp | 53 |
3 files changed, 51 insertions, 24 deletions
diff --git a/indra/newview/app_settings/cmd_line.xml b/indra/newview/app_settings/cmd_line.xml index e4e1cdcf44..4e186292f7 100644 --- a/indra/newview/app_settings/cmd_line.xml +++ b/indra/newview/app_settings/cmd_line.xml @@ -407,5 +407,14 @@ <integer>1</integer> <!-- Special case. Mapped to settings procedurally. --> </map> + + <key>skipupdatecheck</key> + <map> + <key>desc</key> + <string>Skips update check at startup.</string> + <key>map-to</key> + <string>CmdLineSkipUpdater</string> + </map> + </map> </llsd> diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 3e8a854df3..088bc3dfac 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -1940,7 +1940,18 @@ <key>Value</key> <string/> </map> - <key>ConnectAsGod</key> + <key>CmdLineSkipUpdater</key> + <map> + <key>Comment</key> + <string>Command line skip updater check.</string> + <key>Persist</key> + <integer>0</integer> + <key>Type</key> + <string>Boolean</string> + <key>Value</key> + <integer>0</integer> + </map> + <key>ConnectAsGod</key> <map> <key>Comment</key> <string>Log in a god if you have god access.</string> diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp index 07f85a2dd5..e51ca38b18 100644 --- a/indra/newview/llappviewer.cpp +++ b/indra/newview/llappviewer.cpp @@ -1135,33 +1135,40 @@ bool LLAppViewer::init() gGLActive = FALSE; - LLProcess::Params updater; - updater.desc = "updater process"; - // Because it's the updater, it MUST persist beyond the lifespan of the - // viewer itself. - updater.autokill = false; + if (!gSavedSettings.getBOOL("CmdLineSkipUpdater")) + { + LLProcess::Params updater; + updater.desc = "updater process"; + // Because it's the updater, it MUST persist beyond the lifespan of the + // viewer itself. + updater.autokill = false; #if LL_WINDOWS - updater.executable = gDirUtilp->getExpandedFilename(LL_PATH_EXECUTABLE, "SLVersionChecker.exe"); + updater.executable = gDirUtilp->getExpandedFilename(LL_PATH_EXECUTABLE, "SLVersionChecker.exe"); #elif LL_DARWIN - // explicitly run the system Python interpreter on SLVersionChecker.py - updater.executable = "python"; - updater.args.add(gDirUtilp->add(gDirUtilp->getAppRODataDir(), "updater", "SLVersionChecker.py")); + // explicitly run the system Python interpreter on SLVersionChecker.py + updater.executable = "python"; + updater.args.add(gDirUtilp->add(gDirUtilp->getAppRODataDir(), "updater", "SLVersionChecker.py")); #else - updater.executable = gDirUtilp->getExpandedFilename(LL_PATH_EXECUTABLE, "SLVersionChecker"); + updater.executable = gDirUtilp->getExpandedFilename(LL_PATH_EXECUTABLE, "SLVersionChecker"); #endif - // add LEAP mode command-line argument to whichever of these we selected - updater.args.add("leap"); - // UpdaterServiceSettings - updater.args.add(stringize(gSavedSettings.getU32("UpdaterServiceSetting"))); - // channel - updater.args.add(LLVersionInfo::getChannel()); - // testok - updater.args.add(stringize(gSavedSettings.getBOOL("UpdaterWillingToTest"))); - // ForceAddressSize - updater.args.add(stringize(gSavedSettings.getU32("ForceAddressSize"))); - - // Run the updater. An exception from launching the updater should bother us. - LLLeap::create(updater, true); + // add LEAP mode command-line argument to whichever of these we selected + updater.args.add("leap"); + // UpdaterServiceSettings + updater.args.add(stringize(gSavedSettings.getU32("UpdaterServiceSetting"))); + // channel + updater.args.add(LLVersionInfo::getChannel()); + // testok + updater.args.add(stringize(gSavedSettings.getBOOL("UpdaterWillingToTest"))); + // ForceAddressSize + updater.args.add(stringize(gSavedSettings.getU32("ForceAddressSize"))); + + // Run the updater. An exception from launching the updater should bother us. + LLLeap::create(updater, true); + } + else + { + LL_WARNS("InitInfo") << "Skipping updater check." << LL_ENDL; + } // Iterate over --leap command-line options. But this is a bit tricky: if // there's only one, it won't be an array at all. |