diff options
author | Ansariel <none@none> | 2015-10-16 11:28:53 +0200 |
---|---|---|
committer | Ansariel <none@none> | 2015-10-16 11:28:53 +0200 |
commit | 4a187aec4ef05ef8c78fc23e0cf95a87566c8998 (patch) | |
tree | ed6f97ef2f50abda1e2d39af46f2e1b9e2fdbbcf /indra/llui | |
parent | 2e40ff7fa0d0a4133064b38a669bf58c85d9e225 (diff) |
MAINT-5756: Unicode characters in online notifications get stripped
Diffstat (limited to 'indra/llui')
-rwxr-xr-x | indra/llui/llurlregistry.cpp | 5 | ||||
-rwxr-xr-x | indra/llui/llurlregistry.h | 1 |
2 files changed, 4 insertions, 2 deletions
diff --git a/indra/llui/llurlregistry.cpp b/indra/llui/llurlregistry.cpp index 69eefa736c..4f389a0c12 100755 --- a/indra/llui/llurlregistry.cpp +++ b/indra/llui/llurlregistry.cpp @@ -41,7 +41,8 @@ LLUrlRegistry::LLUrlRegistry() mUrlEntry.reserve(20); // Urls are matched in the order that they were registered - registerUrl(new LLUrlEntryNoLink()); + mUrlEntryNoLink = new LLUrlEntryNoLink(); + registerUrl(mUrlEntryNoLink); mUrlEntryIcon = new LLUrlEntryIcon(); registerUrl(mUrlEntryIcon); mLLUrlEntryInvalidSLURL = new LLUrlEntryInvalidSLURL(); @@ -223,7 +224,7 @@ bool LLUrlRegistry::findUrl(const std::string &text, LLUrlMatch &match, const LL std::string url = text.substr(match_start, match_end - match_start + 1); LLUrlEntryBase *stripped_entry = NULL; - if(LLStringUtil::containsNonprintable(url)) + if(match_entry != mUrlEntryNoLink && LLStringUtil::containsNonprintable(url)) { LLStringUtil::stripNonprintable(url); diff --git a/indra/llui/llurlregistry.h b/indra/llui/llurlregistry.h index 5ce4048d5d..24c3a2b513 100755 --- a/indra/llui/llurlregistry.h +++ b/indra/llui/llurlregistry.h @@ -98,6 +98,7 @@ private: LLUrlEntryBase* mLLUrlEntryInvalidSLURL; LLUrlEntryBase* mUrlEntryHTTPLabel; LLUrlEntryBase* mUrlEntrySLLabel; + LLUrlEntryBase* mUrlEntryNoLink; }; #endif |