http://bugs.winehq.org/show_bug.cgi?id=16287
Summary: InternetCreateUrl does not encode URL_COMPONENTS.lpszExtraInfo Product: Wine Version: 1.1.9 Platform: Other OS/Version: other Status: UNCONFIRMED Severity: normal Priority: P2 Component: wininet AssignedTo: wine-bugs@winehq.org ReportedBy: dank@kegel.com
[Copied from bug 16269, whose original poster left in a huff when I asked which app this was, and kept closing the bug.]
InternetCreateUrl does not encode URL_COMPONENTS.lpszExtraInfo it just ignore this value.
How to reproduce (I tried to write a C++ code, but since I code C++ very rarely please excuse small syntax problems):
URL_COMPONENTS URLComponents; char[128] URL; DWORD Size;
ZeroMemory(&URLComponents, SizeOf(URLComponents)); URLComponents.lpszScheme = 'http'; URLComponents.dwSchemeLength = strlen(URLComponents.lpszExtraInfo); URLComponents.lpszHostName = 'localhost'; URLComponents.dwHostNameLength = strlen(URLComponents.lpszExtraInfo); URLComponents.nPort = 80; URLComponents.lpszUrlPath = '/'; URLComponents.dwUrlPathLength = strlen(URLComponents.lpszUrlPath); URLComponents.lpszExtraInfo = '?test=123'; URLComponents.dwExtraInfoLength = strlen(URLComponents.lpszExtraInfo);
Size = 128; InternetCreateUrl(URLComponents, ICU_ESCAPE, URL, Size);
URL has the value 'http://localhost/' instead of 'http://localhost/?test=123' under Microsoft Windows.