diff options
Diffstat (limited to 'linden/indra/newview/viewer.cpp')
-rw-r--r-- | linden/indra/newview/viewer.cpp | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/linden/indra/newview/viewer.cpp b/linden/indra/newview/viewer.cpp index 2890269..69e98f4 100644 --- a/linden/indra/newview/viewer.cpp +++ b/linden/indra/newview/viewer.cpp | |||
@@ -944,11 +944,6 @@ int main( int argc, char **argv ) | |||
944 | // May need to know this early also | 944 | // May need to know this early also |
945 | gDisableVoice = TRUE; | 945 | gDisableVoice = TRUE; |
946 | } | 946 | } |
947 | else if (!strcmp(argv[j], "-url") && (++j < argc)) | ||
948 | { | ||
949 | LLURLSimString::setString(argv[j]); | ||
950 | gConnectToSomething = TRUE; | ||
951 | } | ||
952 | } | 947 | } |
953 | 948 | ||
954 | if (!strcmp(gUserServerName, gUserServerDomainName[USERSERVER_AGNI].mName)) | 949 | if (!strcmp(gUserServerName, gUserServerDomainName[USERSERVER_AGNI].mName)) |
@@ -5346,18 +5341,13 @@ int parse_args(int argc, char **argv) | |||
5346 | // Sometimes IP addresses passed in on the command line have leading | 5341 | // Sometimes IP addresses passed in on the command line have leading |
5347 | // or trailing white space. Use LLString to clean that up. | 5342 | // or trailing white space. Use LLString to clean that up. |
5348 | LLString ip_string; | 5343 | LLString ip_string; |
5349 | |||
5350 | S32 j; | 5344 | S32 j; |
5351 | // agent_sim_host holds the settings for connecting to the first simulator. | ||
5352 | 5345 | ||
5353 | for (j = 1; j < argc; j++) | 5346 | for (j = 1; j < argc; j++) |
5354 | { | 5347 | { |
5355 | gArgs += argv[j]; | 5348 | gArgs += argv[j]; |
5356 | gArgs += " "; | 5349 | gArgs += " "; |
5357 | } | ||
5358 | 5350 | ||
5359 | for (j = 1; j < argc; j++) | ||
5360 | { | ||
5361 | LLString argument = argv[j]; | 5351 | LLString argument = argv[j]; |
5362 | if ((!strcmp(argv[j], "-port")) && (++j < argc)) | 5352 | if ((!strcmp(argv[j], "-port")) && (++j < argc)) |
5363 | { | 5353 | { |
@@ -5631,13 +5621,25 @@ int parse_args(int argc, char **argv) | |||
5631 | // so this allows us to parse the URL straight off the command line without a "-url" paramater | 5621 | // so this allows us to parse the URL straight off the command line without a "-url" paramater |
5632 | else if (!argument.compare(0, std::string( "secondlife://" ).length(), std::string("secondlife://"))) | 5622 | else if (!argument.compare(0, std::string( "secondlife://" ).length(), std::string("secondlife://"))) |
5633 | { | 5623 | { |
5624 | // *NOTE: After setting the url, bail. What can happen is | ||
5625 | // that someone can use IE (or potentially other browsers) | ||
5626 | // and do the rough equivalent of command injection and | ||
5627 | // steal passwords. Phoenix. SL-55321 | ||
5634 | LLURLSimString::setString(argv[j]); | 5628 | LLURLSimString::setString(argv[j]); |
5635 | gConnectToSomething = TRUE; | 5629 | gConnectToSomething = TRUE; |
5630 | gArgs += argv[j]; | ||
5631 | return 0; | ||
5636 | } | 5632 | } |
5637 | else if (!strcmp(argv[j], "-url") && (++j < argc)) | 5633 | else if (!strcmp(argv[j], "-url") && (++j < argc)) |
5638 | { | 5634 | { |
5635 | // *NOTE: After setting the url, bail. What can happen is | ||
5636 | // that someone can use IE (or potentially other browsers) | ||
5637 | // and do the rough equivalent of command injection and | ||
5638 | // steal passwords. Phoenix. SL-55321 | ||
5639 | LLURLSimString::setString(argv[j]); | 5639 | LLURLSimString::setString(argv[j]); |
5640 | gConnectToSomething = TRUE; | 5640 | gConnectToSomething = TRUE; |
5641 | gArgs += argv[j]; | ||
5642 | return 0; | ||
5641 | } | 5643 | } |
5642 | else if (!strcmp(argv[j], "-ignorepixeldepth")) | 5644 | else if (!strcmp(argv[j], "-ignorepixeldepth")) |
5643 | { | 5645 | { |