Created attachment 52532 [details] Qt Patch The fix for this in Qt is tracked at: http://bugreports.qt.nokia.com/browse/QTWEBKIT-152 I've also attached the patch here for comment. If user information is present in the Url, QNetworkAccessHttpBackend will cache the connection with a key in the format of user@hostname. This causes the following tests in QtWebKit to fail: LayoutTests/http/tests/xmlhttprequest/re-login.html LayoutTests/http/tests/xmlhttprequest/re-login-async.html The tests call the same url with user1 credentials, no credentials, user 2 credentials and no credentials. In the second and fourth calls Qt should use the most recently stored credentials. For the fourth call it currently uses user1's credentials instead of user2's. This is because it retrieves the cached connection from the third call and uses the user/pass in that connection's authenticator - which is user1's. In order to retrieve the connection with the most recently used credentials userinfo should be removed when caching the connection in QNetworkAccessCache. This will allow Qt to retrieve the connection used in the third call, in fact the same cached connection for all four calls.
I shouldn't have raised it in Jiras QTWEBKIT. The required changes are in QtNetwork, so have raised a new one: http://bugreports.qt.nokia.com/browse/QTBUG-9619
Closing per request from mgoetz.
I merged the code to Qt, thanks!
Unskip http/tests/xmlhttprequest/re-login-async.html and http/tests/xmlhttprequest/re-login.html when buildbots move to 4.8
Results with r99667 (Qt 4.8.0-rc1): http/tests/xmlhttprequest/re-login-async.html passes http/tests/xmlhttprequest/re-login.html still failing
Fixed and unskipped.