Changeset 185553 in webkit
- Timestamp:
- Jun 15, 2015, 9:36:24 AM (11 years ago)
- Location:
- trunk
- Files:
-
- 8 edited
-
Source/WebCore/ChangeLog (modified) (1 diff)
-
Source/WebCore/platform/network/soup/ResourceRequestSoup.cpp (modified) (2 diffs)
-
Source/WebCore/platform/network/soup/WebKitSoupRequestGeneric.cpp (modified) (3 diffs)
-
Source/WebCore/platform/network/soup/WebKitSoupRequestGeneric.h (modified) (2 diffs)
-
Source/WebKit2/ChangeLog (modified) (1 diff)
-
Source/WebKit2/Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.cpp (modified) (1 diff)
-
Tools/ChangeLog (modified) (1 diff)
-
Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r185551 r185553 1 2015-06-15 Carlos Garcia Campos <cgarcia@igalia.com> 2 3 [SOUP] Custom URI schemes don't work for requests containing a fragment identifier 4 https://bugs.webkit.org/show_bug.cgi?id=145969 5 6 Reviewed by Sergio Villar Senin. 7 8 For URIs like foo:bar#baz, what the custom protocol manager 9 receives in the UI process is foo:bar, so the user can't handle fragments. 10 11 * platform/network/soup/ResourceRequestSoup.cpp: 12 (WebCore::ResourceRequest::updateSoupRequest): If the SoupRequest 13 is a WebKitSoupRequestGeneric, call 14 webkitSoupRequestGenericSetRequest with the ResourceRequest. 15 * platform/network/soup/WebKitSoupRequestGeneric.cpp: 16 (webkitSoupRequestGenericSetRequest): 17 (webkitSoupRequestGenericGetRequest): 18 * platform/network/soup/WebKitSoupRequestGeneric.h: 19 1 20 2015-06-15 Carlos Garcia Campos <cgarcia@igalia.com> 2 21 -
trunk/Source/WebCore/platform/network/soup/ResourceRequestSoup.cpp
r176930 r185553 27 27 #include "HTTPParsers.h" 28 28 #include "MIMETypeRegistry.h" 29 #include "WebKitSoupRequestGeneric.h" 29 30 #include <wtf/text/CString.h> 30 31 #include <wtf/text/WTFString.h> … … 129 130 *initiatingPageIDPtr = m_initiatingPageID; 130 131 g_object_set_data_full(G_OBJECT(soupRequest), g_intern_static_string(gSoupRequestInitiatingPageIDKey), initiatingPageIDPtr, fastFree); 132 133 if (WEBKIT_IS_SOUP_REQUEST_GENERIC(soupRequest)) 134 webkitSoupRequestGenericSetRequest(WEBKIT_SOUP_REQUEST_GENERIC(soupRequest), *this); 131 135 } 132 136 -
trunk/Source/WebCore/platform/network/soup/WebKitSoupRequestGeneric.cpp
r185551 r185553 21 21 #include "WebKitSoupRequestGeneric.h" 22 22 23 #include "ResourceRequest.h" 23 24 #include <wtf/text/CString.h> 24 25 … … 30 31 CString mimeType; 31 32 goffset contentLength; 33 ResourceRequest resourceRequest; 32 34 }; 33 35 … … 93 95 request->priv->mimeType = mimeType; 94 96 } 97 98 void webkitSoupRequestGenericSetRequest(WebKitSoupRequestGeneric* request, const ResourceRequest& resourceRequest) 99 { 100 request->priv->resourceRequest = resourceRequest; 101 } 102 103 const ResourceRequest& webkitSoupRequestGenericGetRequest(WebKitSoupRequestGeneric* request) 104 { 105 return request->priv->resourceRequest; 106 } -
trunk/Source/WebCore/platform/network/soup/WebKitSoupRequestGeneric.h
r185551 r185553 27 27 G_BEGIN_DECLS 28 28 29 namespace WebCore { 30 class ResourceRequest; 31 } 32 29 33 #define WEBKIT_TYPE_SOUP_REQUEST_GENERIC (webkit_soup_request_generic_get_type()) 30 34 #define WEBKIT_SOUP_REQUEST_GENERIC(object) (G_TYPE_CHECK_INSTANCE_CAST((object), WEBKIT_TYPE_SOUP_REQUEST_GENERIC, WebKitSoupRequestGeneric)) … … 54 58 void webkitSoupRequestGenericSetContentLength(WebKitSoupRequestGeneric*, goffset contentLength); 55 59 void webkitSoupRequestGenericSetContentType(WebKitSoupRequestGeneric*, const char* mimeType); 60 void webkitSoupRequestGenericSetRequest(WebKitSoupRequestGeneric*, const WebCore::ResourceRequest&); 61 const WebCore::ResourceRequest& webkitSoupRequestGenericGetRequest(WebKitSoupRequestGeneric*); 56 62 57 63 G_END_DECLS -
trunk/Source/WebKit2/ChangeLog
r185552 r185553 1 2015-06-15 Carlos Garcia Campos <cgarcia@igalia.com> 2 3 [SOUP] Custom URI schemes don't work for requests containing a fragment identifier 4 https://bugs.webkit.org/show_bug.cgi?id=145969 5 6 Reviewed by Sergio Villar Senin. 7 8 Use the WebKitSoupRequestGeneric request instead of creating a new one 9 from the SoupRequest URI, since that is the network one and doesn't 10 contain the fragment identifier part. 11 12 * Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.cpp: 13 (WebKit::CustomProtocolManagerImpl::start): 14 1 15 2015-06-15 Hyungwook Lee <hyungwook.lee@navercorp.com> 2 16 -
trunk/Source/WebKit2/Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.cpp
r185551 r185553 191 191 m_customProtocolMap.set(customProtocolID, std::make_unique<WebSoupRequestAsyncData>(task, request)); 192 192 193 WebCore::ResourceRequest resourceRequest(SOUP_REQUEST(request)); 194 m_childProcess->send(Messages::CustomProtocolManagerProxy::StartLoading(customProtocolID, resourceRequest), 0); 193 m_childProcess->send(Messages::CustomProtocolManagerProxy::StartLoading(customProtocolID, webkitSoupRequestGenericGetRequest(request)), 0); 195 194 } 196 195 -
trunk/Tools/ChangeLog
r185550 r185553 1 2015-06-15 Carlos Garcia Campos <cgarcia@igalia.com> 2 3 [SOUP] Custom URI schemes don't work for requests containing a fragment identifier 4 https://bugs.webkit.org/show_bug.cgi?id=145969 5 6 Reviewed by Sergio Villar Senin. 7 8 Add a test case to the custom URI schemes unit test. 9 10 * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp: 11 (testWebContextURIScheme): 12 1 13 2015-06-15 Csaba Osztrogonác <ossy@webkit.org> 2 14 -
trunk/Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp
r185502 r185553 215 215 g_assert(!strncmp(mainResourceData, echoHTML.get(), mainResourceDataSize)); 216 216 217 test->loadURI("echo:with#fragment"); 218 test->waitUntilLoadFinished(); 219 g_assert_cmpstr(webkit_uri_scheme_request_get_path(test->m_uriSchemeRequest.get()), ==, "with"); 220 g_assert_cmpstr(webkit_uri_scheme_request_get_uri(test->m_uriSchemeRequest.get()), ==, "echo:with#fragment"); 221 echoHTML.reset(g_strdup_printf(kEchoHTMLFormat, webkit_uri_scheme_request_get_path(test->m_uriSchemeRequest.get()))); 222 mainResourceDataSize = 0; 223 mainResourceData = test->mainResourceData(mainResourceDataSize); 224 g_assert_cmpint(mainResourceDataSize, ==, strlen(echoHTML.get())); 225 g_assert(!strncmp(mainResourceData, echoHTML.get(), mainResourceDataSize)); 226 217 227 test->registerURISchemeHandler("nomime", kBarHTML, -1, 0); 218 228 test->m_loadEvents.clear();
Note:
See TracChangeset
for help on using the changeset viewer.