Changeset 65859 in webkit
- Timestamp:
- Aug 23, 2010 8:25:48 PM (14 years ago)
- Location:
- trunk/WebCore
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/WebCore/ChangeLog
r65857 r65859 1 2010-08-23 Patrick Gansterer <paroga@paroga.com> 2 3 Reviewed by Adam Roben. 4 5 Set the ResourceResponse HTTP headers in RessourceHandleWin 6 https://bugs.webkit.org/show_bug.cgi?id=44444 7 8 * platform/network/win/ResourceHandleWin.cpp: 9 (WebCore::queryHTTPHeader): 10 (WebCore::ResourceHandle::onRequestComplete): 11 1 12 2010-08-23 Patrick Gansterer <paroga@paroga.com> 2 13 -
trunk/WebCore/platform/network/win/ResourceHandleWin.cpp
r65835 r65859 65 65 }; 66 66 67 static String queryHTTPHeader(HINTERNET requestHandle, DWORD infoLevel) 68 { 69 DWORD bufferSize = 0; 70 HttpQueryInfoW(requestHandle, infoLevel, 0, &bufferSize, 0); 71 72 Vector<UChar> characters(bufferSize / sizeof(UChar)); 73 74 if (!HttpQueryInfoW(requestHandle, infoLevel, characters.data(), &bufferSize, 0)) 75 return String(); 76 77 characters.removeLast(); // Remove NullTermination. 78 return String::adopt(characters); 79 } 80 67 81 static int addToOutstandingJobs(ResourceHandle* job) 68 82 { … … 227 241 228 242 HINTERNET handle = (request().httpMethod() == "POST") ? d->m_secondaryHandle : d->m_resourceHandle; 229 BOOL ok = FALSE;230 243 231 244 static const int bufferSize = 32768; … … 236 249 buffers.dwBufferLength = bufferSize; 237 250 238 bool receivedAnyData = false;251 BOOL ok = FALSE; 239 252 while ((ok = InternetReadFileExA(handle, &buffers, IRF_NO_WAIT, (DWORD_PTR)this)) && buffers.dwBufferLength) { 240 253 if (!hasReceivedResponse()) { 241 254 setHasReceivedResponse(); 242 255 ResourceResponse response; 256 response.setURL(firstRequest().url()); 257 258 String httpStatusText = queryHTTPHeader(d->m_requestHandle, HTTP_QUERY_STATUS_TEXT); 259 if (!httpStatusText.isNull()) 260 response.setHTTPStatusText(httpStatusText); 261 262 String httpStatusCode = queryHTTPHeader(d->m_requestHandle, HTTP_QUERY_STATUS_CODE); 263 if (!httpStatusCode.isNull()) 264 response.setHTTPStatusCode(httpStatusCode.toInt()); 265 266 String httpContentLength = queryHTTPHeader(d->m_requestHandle, HTTP_QUERY_CONTENT_LENGTH); 267 if (!httpContentLength.isNull()) 268 response.setExpectedContentLength(httpContentLength.toInt()); 269 270 String httpContentType = queryHTTPHeader(d->m_requestHandle, HTTP_QUERY_CONTENT_TYPE); 271 if (!httpContentType.isNull()) { 272 response.setMimeType(extractMIMETypeFromMediaType(httpContentType)); 273 response.setTextEncodingName(extractCharsetFromMediaType(httpContentType)); 274 } 275 243 276 client()->didReceiveResponse(this, response); 244 277 }
Note: See TracChangeset
for help on using the changeset viewer.