summaryrefslogtreecommitdiff
path: root/indra/newview
diff options
context:
space:
mode:
authorCho <cho@lindenlab.com>2013-04-26 23:35:28 +0100
committerCho <cho@lindenlab.com>2013-04-26 23:35:28 +0100
commitf36171b8cae93bdaf6d3df2bf964313d1da087b6 (patch)
tree683bf098e6f70c8d43754253d98ec9f63d51c90e /indra/newview
parente1dbbd0213dd96e28aec2c5e6d9fd821ab144e48 (diff)
made sendURLToOtherInstance() happen before viewer window actually appears, in the event of an external browser launching a SLApp
Diffstat (limited to 'indra/newview')
-rw-r--r--indra/newview/llappviewer.cpp32
1 files changed, 17 insertions, 15 deletions
diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp
index 31f7f61396..e97c264af3 100644
--- a/indra/newview/llappviewer.cpp
+++ b/indra/newview/llappviewer.cpp
@@ -2577,7 +2577,9 @@ bool LLAppViewer::initConfiguration()
// What can happen is that someone can use IE (or potentially
// other browsers) and do the rough equivalent of command
// injection and steal passwords. Phoenix. SL-55321
+
LLSLURL option_slurl;
+
if(clp.hasOption("url"))
{
option_slurl = LLSLURL(clp.getOption("url")[0]);
@@ -2592,6 +2594,21 @@ bool LLAppViewer::initConfiguration()
option_slurl = LLSLURL(clp.getOption("slurl")[0]);
LLStartUp::setStartSLURL(option_slurl);
}
+
+ //RN: if we received a URL, hand it off to the existing instance.
+ // don't call anotherInstanceRunning() when doing URL handoff, as
+ // it relies on checking a marker file which will not work when running
+ // out of different directories
+
+ if (option_slurl.isValid() &&
+ (gSavedSettings.getBOOL("SLURLPassToOtherInstance")))
+ {
+ if (sendURLToOtherInstance(option_slurl.getSLURLString()))
+ {
+ // successfully handed off URL to existing instance, exit
+ return false;
+ }
+ }
const LLControlVariable* skinfolder = gSavedSettings.getControl("SkinCurrent");
if(skinfolder && LLStringUtil::null != skinfolder->getValue().asString())
@@ -2682,21 +2699,6 @@ bool LLAppViewer::initConfiguration()
#endif
LLStringUtil::truncate(gWindowTitle, 255);
- //RN: if we received a URL, hand it off to the existing instance.
- // don't call anotherInstanceRunning() when doing URL handoff, as
- // it relies on checking a marker file which will not work when running
- // out of different directories
-
- if (option_slurl.isValid() &&
- (gSavedSettings.getBOOL("SLURLPassToOtherInstance")))
- {
- if (sendURLToOtherInstance(option_slurl.getSLURLString()))
- {
- // successfully handed off URL to existing instance, exit
- return false;
- }
- }
-
if (!gSavedSettings.getBOOL("AllowMultipleViewers"))
{
//