summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorfmartian <FredMartian@gmail.com>2025-08-13 15:25:37 +0200
committerGitHub <noreply@github.com>2025-08-13 16:25:37 +0300
commit8145d99f80d55c4da88adb6909386bd5c25fd743 (patch)
treed8c03612d32327bef93fb2a623bee0d5bd0a8afc
parent9c6fd95bdb2bfd99a01c2f2a0dadcf14d3febac0 (diff)
#4519 Check for "://" as schema separator in a SLURL
Check for "://" as schema separator when testing if the passed in address contains a schema. A ':' alone could also indicate a port separator as part of the hostname and throw off the parsing. (#4543)
-rw-r--r--indra/newview/llslurl.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/indra/newview/llslurl.cpp b/indra/newview/llslurl.cpp
index 9e567e3262..6238a1145c 100644
--- a/indra/newview/llslurl.cpp
+++ b/indra/newview/llslurl.cpp
@@ -71,10 +71,10 @@ LLSLURL::LLSLURL(const std::string& slurl)
{
LLURI slurl_uri;
// parse the slurl as a uri
- if (slurl.find(':') == std::string::npos)
+ if (slurl.find("://") == std::string::npos)
{
- // There may be no scheme ('secondlife:' etc.) passed in. In that case
- // we want to normalize the slurl by putting the appropriate scheme
+ // There may be no scheme ('secondlife://', 'https://' etc.) passed in. In that
+ // case we want to normalize the slurl by putting the appropriate scheme
// in front of the slurl. So, we grab the appropriate slurl base
// from the grid manager which may be http://slurl.com/secondlife/ for maingrid, or
// https://<hostname>/region/ for Standalone grid (the word region, not the region name)