mirror of
https://github.com/signalapp/Signal-Android.git
synced 2025-12-24 04:58:45 +00:00
@@ -2,6 +2,8 @@ package org.thoughtcrime.securesms.util
|
||||
|
||||
import okhttp3.HttpUrl
|
||||
import org.thoughtcrime.securesms.stickers.StickerUrl
|
||||
import java.net.URI
|
||||
import java.net.URISyntaxException
|
||||
import java.util.Objects
|
||||
import java.util.regex.Pattern
|
||||
|
||||
@@ -37,6 +39,10 @@ object LinkUtil {
|
||||
return false
|
||||
}
|
||||
|
||||
if (!isValidURI(linkUrl)) {
|
||||
return false
|
||||
}
|
||||
|
||||
return HttpUrl.parse(linkUrl)?.scheme() == "https"
|
||||
}
|
||||
|
||||
@@ -85,5 +91,19 @@ object LinkUtil {
|
||||
)
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
private fun isValidURI(linkUri: String?): Boolean {
|
||||
return if (linkUri == null) {
|
||||
false
|
||||
} else {
|
||||
try {
|
||||
val ignored = URI(linkUri)
|
||||
true
|
||||
} catch (e: URISyntaxException) {
|
||||
false
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private data class LegalCharactersResult(val isLegal: Boolean, val domain: String? = null)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user