mirror of
https://github.com/bitwarden/mobile
synced 2025-12-15 07:43:37 +00:00
Fixes to uri parsing (#860)
This commit is contained in:
@@ -147,7 +147,7 @@ namespace Bit.Droid.Accessibility
|
|||||||
return uri;
|
return uri;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static string ExtractUri(string uri, AccessibilityNodeInfo addressNode, Browser browser)
|
private static string ExtractUri(string uri, AccessibilityNodeInfo addressNode, Browser browser)
|
||||||
{
|
{
|
||||||
if (addressNode?.Text == null)
|
if (addressNode?.Text == null)
|
||||||
{
|
{
|
||||||
@@ -160,21 +160,13 @@ namespace Bit.Droid.Accessibility
|
|||||||
uri = browser.GetUriFunction(addressNode.Text)?.Trim();
|
uri = browser.GetUriFunction(addressNode.Text)?.Trim();
|
||||||
if (uri != null && uri.Contains("."))
|
if (uri != null && uri.Contains("."))
|
||||||
{
|
{
|
||||||
if (!uri.Contains("://") && !uri.Contains(" "))
|
if (Uri.TryCreate(uri, UriKind.Absolute, out var uri2))
|
||||||
{
|
{
|
||||||
uri = string.Concat("http://", uri);
|
return uri;
|
||||||
}
|
}
|
||||||
else if (Build.VERSION.SdkInt <= BuildVersionCodes.KitkatWatch)
|
if (Uri.TryCreate("http://" + uri, UriKind.Absolute, out var uri3))
|
||||||
{
|
{
|
||||||
var parts = uri.Split(new string[] { ". " }, StringSplitOptions.None);
|
return string.Concat("http://", uri);
|
||||||
if (parts.Length > 1)
|
|
||||||
{
|
|
||||||
var urlPart = parts.FirstOrDefault(p => p.StartsWith("http"));
|
|
||||||
if (urlPart != null)
|
|
||||||
{
|
|
||||||
uri = urlPart.Trim();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return uri;
|
return uri;
|
||||||
|
|||||||
@@ -85,15 +85,14 @@ namespace Bit.Core.Utilities
|
|||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
var httpUrl = uriString.StartsWith("https://") || uriString.StartsWith("http://");
|
|
||||||
if (!httpUrl && !uriString.Contains("://") && Regex.IsMatch(uriString, TldEndingRegex))
|
|
||||||
{
|
|
||||||
uriString = "http://" + uriString;
|
|
||||||
}
|
|
||||||
if (Uri.TryCreate(uriString, UriKind.Absolute, out var uri))
|
if (Uri.TryCreate(uriString, UriKind.Absolute, out var uri))
|
||||||
{
|
{
|
||||||
return uri;
|
return uri;
|
||||||
}
|
}
|
||||||
|
if (Uri.TryCreate("http://" + uriString, UriKind.Absolute, out var uri2))
|
||||||
|
{
|
||||||
|
return uri2;
|
||||||
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user