Fix `markupHiddenUrls` destructs original CharSequence (#2814)
This commit is contained in:
parent
21b3b53f93
commit
a3d13b2743
|
@ -69,7 +69,7 @@ fun setClickableText(view: TextView, content: CharSequence, mentions: List<Menti
|
||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
fun markupHiddenUrls(context: Context, content: CharSequence): SpannableStringBuilder {
|
fun markupHiddenUrls(context: Context, content: CharSequence): SpannableStringBuilder {
|
||||||
val spannableContent = SpannableStringBuilder.valueOf(content)
|
val spannableContent = SpannableStringBuilder(content)
|
||||||
val originalSpans = spannableContent.getSpans(0, content.length, URLSpan::class.java)
|
val originalSpans = spannableContent.getSpans(0, content.length, URLSpan::class.java)
|
||||||
val obscuredLinkSpans = originalSpans.filter {
|
val obscuredLinkSpans = originalSpans.filter {
|
||||||
val start = spannableContent.getSpanStart(it)
|
val start = spannableContent.getSpanStart(it)
|
||||||
|
|
|
@ -165,10 +165,12 @@ class LinkHelperTest {
|
||||||
val maliciousUrl = "https://$maliciousDomain/to/go"
|
val maliciousUrl = "https://$maliciousDomain/to/go"
|
||||||
val content = SpannableStringBuilder()
|
val content = SpannableStringBuilder()
|
||||||
content.append(displayedContent, URLSpan(maliciousUrl), 0)
|
content.append(displayedContent, URLSpan(maliciousUrl), 0)
|
||||||
|
val oldContent = content.toString()
|
||||||
Assert.assertEquals(
|
Assert.assertEquals(
|
||||||
context.getString(R.string.url_domain_notifier, displayedContent, maliciousDomain),
|
context.getString(R.string.url_domain_notifier, displayedContent, maliciousDomain),
|
||||||
markupHiddenUrls(context, content).toString()
|
markupHiddenUrls(context, content).toString()
|
||||||
)
|
)
|
||||||
|
Assert.assertEquals(oldContent, content.toString())
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|
Loading…
Reference in New Issue