Search Issue Tracker

Fixed in Unity 2018.3

Votes

0

Found in

2018.2.1f1

Issue ID

1066792

Regression

No

[UWP] App crashes when calling UnityWebRequest.SendWebRequest() if URL contains domain name and port

Universal Windows Platform

-

-

Priority: 2Necessary for shipping a final release

-

Severity: 1Crash, freeze, data loss, work stops

Steps to reproduce:
1. Download attach project
2. Switch platform to UWP
3. Build the project
4. Open VS solution
5. Build project (Debug, x64, Local Machine)

Results: UnityWebRequest.SendWebRequest() fails if URL contains domain name and port

Reproduced with: 2018.3.0a10, 2018.2.6f1, 2018.1.9f1, 2017.4.9f1

Note: reproducible on .NET and IL2CPP backends

Workaround:

Prefixing the URL with a valid protocol will prevent the crash, e.g. "http://" or "https://"

Typically, a default protocol (http://) is automatically prefixed to the URL if one isn't specified, but in this case, using a domain and port number, the prefix isn't applied causing an unhanded exception in the WinRT API NetworkInformation::GetProxyConfigurationAsync. Specifying a fully qualified URL will prevent this.

The unhanded exception has been fixed for 2019.1.0a2, but WebRequest behavior won't be changed to automatically prefix http:// when using a URI with domain and port. This means the WebRequest URI "httpbin.org:12345" will still fail to connect while "httpbin.org" will succeed.

Regardless, it's strongly recommended to always specify a fully qualified URI for any connection (local or remote) to avoid unexpected behavior.

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.