[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc
paroga at webkit.org
paroga at webkit.org
Wed Dec 22 13:38:22 UTC 2010
The following commit has been merged in the debian/experimental branch:
commit b655549c6218a1ddd9048acec93053ca41687530
Author: paroga at webkit.org <paroga at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Wed Sep 22 07:37:18 2010 +0000
2010-09-22 Patrick Gansterer <paroga at webkit.org>
Reviewed by Adam Roben.
[WIN] Add internetHandle to WebCoreSynchronousLoader.
https://bugs.webkit.org/show_bug.cgi?id=46185
For loading content via network the WebCoreSynchronousLoader needs its own (synchronous) internetHandle.
This also adds asynchronousInternetHandle() to create a static asynchronous internetHandle.
* platform/network/win/ResourceHandleWin.cpp:
(WebCore::createInternetHandle):
(WebCore::asynchronousInternetHandle):
(WebCore::WebCoreSynchronousLoader::internetHandle):
(WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader): Create synchronous internetHandle.
(WebCore::WebCoreSynchronousLoader::~WebCoreSynchronousLoader): Delete synchronous internetHandle.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@68020 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index fda5b1c..45322c4 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,20 @@
+2010-09-22 Patrick Gansterer <paroga at webkit.org>
+
+ Reviewed by Adam Roben.
+
+ [WIN] Add internetHandle to WebCoreSynchronousLoader.
+ https://bugs.webkit.org/show_bug.cgi?id=46185
+
+ For loading content via network the WebCoreSynchronousLoader needs its own (synchronous) internetHandle.
+ This also adds asynchronousInternetHandle() to create a static asynchronous internetHandle.
+
+ * platform/network/win/ResourceHandleWin.cpp:
+ (WebCore::createInternetHandle):
+ (WebCore::asynchronousInternetHandle):
+ (WebCore::WebCoreSynchronousLoader::internetHandle):
+ (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader): Create synchronous internetHandle.
+ (WebCore::WebCoreSynchronousLoader::~WebCoreSynchronousLoader): Delete synchronous internetHandle.
+
2010-09-22 Kwang Yul Seo <skyul at company100.net>
Reviewed by Chris Fleizach.
diff --git a/WebCore/platform/network/win/ResourceHandleWin.cpp b/WebCore/platform/network/win/ResourceHandleWin.cpp
index 67c54bc..8f102dd 100644
--- a/WebCore/platform/network/win/ResourceHandleWin.cpp
+++ b/WebCore/platform/network/win/ResourceHandleWin.cpp
@@ -65,6 +65,23 @@ static const ResourceHandleEventHandler messageHandlers[] = {
&ResourceHandle::onRequestComplete
};
+static inline HINTERNET createInternetHandle(const String& userAgent, bool asynchronous)
+{
+ String userAgentString = userAgent;
+ HINTERNET internetHandle = InternetOpenW(userAgentString.charactersWithNullTermination(), INTERNET_OPEN_TYPE_PRECONFIG, 0, 0, asynchronous ? INTERNET_FLAG_ASYNC : 0);
+
+ if (asynchronous)
+ InternetSetStatusCallback(internetHandle, &ResourceHandle::internetStatusCallback);
+
+ return internetHandle;
+}
+
+static HINTERNET asynchronousInternetHandle(const String& userAgent)
+{
+ static HINTERNET internetHandle = createInternetHandle(userAgent, true);
+ return internetHandle;
+}
+
static String queryHTTPHeader(HINTERNET requestHandle, DWORD infoLevel)
{
DWORD bufferSize = 0;
@@ -142,6 +159,9 @@ static void initializeOffScreenResourceHandleWindow()
class WebCoreSynchronousLoader : public ResourceHandleClient, public Noncopyable {
public:
WebCoreSynchronousLoader(ResourceError&, ResourceResponse&, Vector<char>&, const String& userAgent);
+ ~WebCoreSynchronousLoader();
+
+ HINTERNET internetHandle() const { return m_internetHandle; }
virtual void didReceiveResponse(ResourceHandle*, const ResourceResponse&);
virtual void didReceiveData(ResourceHandle*, const char*, int, int lengthReceived);
@@ -152,13 +172,20 @@ private:
ResourceError& m_error;
ResourceResponse& m_response;
Vector<char>& m_data;
+ HINTERNET m_internetHandle;
};
WebCoreSynchronousLoader::WebCoreSynchronousLoader(ResourceError& error, ResourceResponse& response, Vector<char>& data, const String& userAgent)
: m_error(error)
, m_response(response)
, m_data(data)
+ , m_internetHandle(createInternetHandle(userAgent, false))
+{
+}
+
+WebCoreSynchronousLoader::~WebCoreSynchronousLoader()
{
+ InternetCloseHandle(m_internetHandle);
}
void WebCoreSynchronousLoader::didReceiveResponse(ResourceHandle*, const ResourceResponse& response)
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list