summaryrefslogtreecommitdiff
path: root/indra/viewer_components/updater/llupdateinstaller.cpp
diff options
context:
space:
mode:
authorOz Linden <oz@lindenlab.com>2010-12-24 07:41:41 -0500
committerOz Linden <oz@lindenlab.com>2010-12-24 07:41:41 -0500
commit14d830ca43a7114140ebeb16a76829db4d21a95b (patch)
tree169ab24a903d59c762259810de684f1dcb8c4186 /indra/viewer_components/updater/llupdateinstaller.cpp
parent551bfb88fce8a9cd6faac440e3d89d79213550ed (diff)
parent5a4bb72b8d37ca51deb84e1490fdefe2908d2d59 (diff)
merge improved fix for STORM_785
Diffstat (limited to 'indra/viewer_components/updater/llupdateinstaller.cpp')
-rw-r--r--indra/viewer_components/updater/llupdateinstaller.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/indra/viewer_components/updater/llupdateinstaller.cpp b/indra/viewer_components/updater/llupdateinstaller.cpp
index 6e69bcf28b..d450c068ad 100644
--- a/indra/viewer_components/updater/llupdateinstaller.cpp
+++ b/indra/viewer_components/updater/llupdateinstaller.cpp
@@ -31,6 +31,12 @@
#include "lldir.h"
+#if defined(LL_WINDOWS)
+#pragma warning(disable: 4702) // disable 'unreachable code' so we can use lexical_cast (really!).
+#endif
+#include <boost/lexical_cast.hpp>
+
+
namespace {
class RelocateError {};
@@ -47,7 +53,10 @@ namespace {
}
-int ll_install_update(std::string const & script, std::string const & updatePath, LLInstallScriptMode mode)
+int ll_install_update(std::string const & script,
+ std::string const & updatePath,
+ bool required,
+ LLInstallScriptMode mode)
{
std::string actualScriptPath;
switch(mode) {
@@ -73,6 +82,7 @@ int ll_install_update(std::string const & script, std::string const & updatePath
launcher.setExecutable(actualScriptPath);
launcher.addArgument(updatePath);
launcher.addArgument(ll_install_failed_marker_path().c_str());
+ launcher.addArgument(boost::lexical_cast<std::string>(required));
int result = launcher.launch();
launcher.orphan();