Diff
Modified: trunk/Source/WebCore/ChangeLog (169945 => 169946)
--- trunk/Source/WebCore/ChangeLog 2014-06-13 20:34:54 UTC (rev 169945)
+++ trunk/Source/WebCore/ChangeLog 2014-06-13 20:37:08 UTC (rev 169946)
@@ -1,3 +1,25 @@
+2014-06-13 Anders Carlsson <ander...@apple.com>
+
+ Add a HTTPHeaderMap::get overload that takes an HTTPHeaderName
+ https://bugs.webkit.org/show_bug.cgi?id=133877
+
+ Reviewed by Andreas Kling.
+
+ * Modules/websockets/WebSocketHandshake.cpp:
+ (WebCore::WebSocketHandshake::serverWebSocketProtocol):
+ (WebCore::WebSocketHandshake::serverSetCookie):
+ (WebCore::WebSocketHandshake::serverSetCookie2):
+ (WebCore::WebSocketHandshake::serverUpgrade):
+ (WebCore::WebSocketHandshake::serverConnection):
+ (WebCore::WebSocketHandshake::serverWebSocketAccept):
+ * WebCore.exp.in:
+ * platform/network/HTTPHeaderMap.cpp:
+ (WebCore::HTTPHeaderMap::get):
+ * platform/network/HTTPHeaderMap.h:
+ * platform/network/HTTPHeaderNames.in:
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::handlePost):
+
2014-06-13 Commit Queue <commit-qu...@webkit.org>
Unreviewed, rolling out r169939.
Modified: trunk/Source/WebCore/Modules/websockets/WebSocketHandshake.cpp (169945 => 169946)
--- trunk/Source/WebCore/Modules/websockets/WebSocketHandshake.cpp 2014-06-13 20:34:54 UTC (rev 169945)
+++ trunk/Source/WebCore/Modules/websockets/WebSocketHandshake.cpp 2014-06-13 20:37:08 UTC (rev 169946)
@@ -40,6 +40,7 @@
#include "CookieJar.h"
#include "Document.h"
#include "HTTPHeaderMap.h"
+#include "HTTPHeaderNames.h"
#include "HTTPParsers.h"
#include "URL.h"
#include "Logging.h"
@@ -337,32 +338,32 @@
String WebSocketHandshake::serverWebSocketProtocol() const
{
- return m_serverHandshakeResponse.httpHeaderFields().get("sec-websocket-protocol");
+ return m_serverHandshakeResponse.httpHeaderFields().get(HTTPHeaderName::SecWebSocketProtocol);
}
String WebSocketHandshake::serverSetCookie() const
{
- return m_serverHandshakeResponse.httpHeaderFields().get("set-cookie");
+ return m_serverHandshakeResponse.httpHeaderFields().get(HTTPHeaderName::SetCookie);
}
String WebSocketHandshake::serverSetCookie2() const
{
- return m_serverHandshakeResponse.httpHeaderFields().get("set-cookie2");
+ return m_serverHandshakeResponse.httpHeaderFields().get(HTTPHeaderName::SetCookie2);
}
String WebSocketHandshake::serverUpgrade() const
{
- return m_serverHandshakeResponse.httpHeaderFields().get("upgrade");
+ return m_serverHandshakeResponse.httpHeaderFields().get(HTTPHeaderName::Upgrade);
}
String WebSocketHandshake::serverConnection() const
{
- return m_serverHandshakeResponse.httpHeaderFields().get("connection");
+ return m_serverHandshakeResponse.httpHeaderFields().get(HTTPHeaderName::Connection);
}
String WebSocketHandshake::serverWebSocketAccept() const
{
- return m_serverHandshakeResponse.httpHeaderFields().get("sec-websocket-accept");
+ return m_serverHandshakeResponse.httpHeaderFields().get(HTTPHeaderName::SecWebSocketAccept);
}
String WebSocketHandshake::acceptedExtensions() const
Modified: trunk/Source/WebCore/WebCore.exp.in (169945 => 169946)
--- trunk/Source/WebCore/WebCore.exp.in 2014-06-13 20:34:54 UTC (rev 169945)
+++ trunk/Source/WebCore/WebCore.exp.in 2014-06-13 20:37:08 UTC (rev 169946)
@@ -1609,7 +1609,7 @@
__ZNK7WebCore13GraphicsLayer18accumulatedOpacityEv
__ZNK7WebCore13GraphicsLayer18getDebugBorderInfoERNS_5ColorERf
__ZNK7WebCore13GraphicsLayer26backingStoreMemoryEstimateEv
-__ZNK7WebCore13HTTPHeaderMap3getEPKc
+__ZNK7WebCore13HTTPHeaderMap3getENS_14HTTPHeaderNameE
__ZNK7WebCore13HTTPHeaderMap3getERKN3WTF12AtomicStringE
__ZNK7WebCore13HitTestResult10isLiveLinkEv
__ZNK7WebCore13HitTestResult10isSelectedEv
Modified: trunk/Source/WebCore/platform/network/HTTPHeaderMap.cpp (169945 => 169946)
--- trunk/Source/WebCore/platform/network/HTTPHeaderMap.cpp 2014-06-13 20:34:54 UTC (rev 169945)
+++ trunk/Source/WebCore/platform/network/HTTPHeaderMap.cpp 2014-06-13 20:37:08 UTC (rev 169946)
@@ -99,6 +99,15 @@
}
};
+String HTTPHeaderMap::get(HTTPHeaderName name) const
+{
+ auto it = find(name);
+ if (it == end())
+ return String();
+
+ return it->value;
+}
+
void HTTPHeaderMap::set(HTTPHeaderName name, const String& value)
{
m_headers.set(httpHeaderNameString(name).toStringWithoutCopying(), value);
@@ -109,14 +118,6 @@
return m_headers.contains(httpHeaderNameString(name).toStringWithoutCopying());
}
-String HTTPHeaderMap::get(const char* name) const
-{
- auto it = m_headers.find<CaseFoldingCStringTranslator>(name);
- if (it == end())
- return String();
- return it->value;
-}
-
HTTPHeaderMap::const_iterator HTTPHeaderMap::find(HTTPHeaderName name) const
{
return m_headers.find(httpHeaderNameString(name).toStringWithoutCopying());
Modified: trunk/Source/WebCore/platform/network/HTTPHeaderMap.h (169945 => 169946)
--- trunk/Source/WebCore/platform/network/HTTPHeaderMap.h 2014-06-13 20:34:54 UTC (rev 169945)
+++ trunk/Source/WebCore/platform/network/HTTPHeaderMap.h 2014-06-13 20:37:08 UTC (rev 169946)
@@ -63,13 +63,14 @@
void set(const AtomicString& name, const String& value);
void add(const AtomicString& name, const String& value);
+ String get(HTTPHeaderName) const;
void set(HTTPHeaderName, const String& value);
bool contains(HTTPHeaderName) const;
- String get(const char*) const;
const_iterator find(HTTPHeaderName) const;
bool remove(HTTPHeaderName);
// Instead of passing a string literal to any of these functions, just use a HTTPHeaderName instead.
+ template<size_t length> String get(const char (&)[length]) const = delete;
template<size_t length> void set(const char (&)[length], const String&) = delete;
template<size_t length> void add(const char (&)[length], const String&) = delete;
template<size_t length> bool contains(const char (&)[length]) = delete;
Modified: trunk/Source/WebCore/platform/network/HTTPHeaderNames.in (169945 => 169946)
--- trunk/Source/WebCore/platform/network/HTTPHeaderNames.in 2014-06-13 20:34:54 UTC (rev 169945)
+++ trunk/Source/WebCore/platform/network/HTTPHeaderNames.in 2014-06-13 20:37:08 UTC (rev 169946)
@@ -25,6 +25,7 @@
Accept
Authorization
+Connection
Content-Length
Content-Type
If-Match
@@ -35,5 +36,10 @@
Location
Origin
Referer
+Sec-WebSocket-Accept
+Sec-WebSocket-Protocol
+Set-Cookie
+Set-Cookie2
+Upgrade
User-Agent
X-Frame-Options
Modified: trunk/Source/WebCore/plugins/PluginView.cpp (169945 => 169946)
--- trunk/Source/WebCore/plugins/PluginView.cpp 2014-06-13 20:34:54 UTC (rev 169945)
+++ trunk/Source/WebCore/plugins/PluginView.cpp 2014-06-13 20:37:08 UTC (rev 169946)
@@ -1162,7 +1162,7 @@
// Sometimes plugins like to set Content-Length themselves when they post,
// but WebFoundation does not like that. So we will remove the header
// and instead truncate the data to the requested length.
- String contentLength = headerFields.get("Content-Length");
+ String contentLength = headerFields.get(HTTPHeaderName::ContentLength);
if (!contentLength.isNull())
dataLength = min(contentLength.toInt(), (int)dataLength);
Modified: trunk/Source/WebKit2/ChangeLog (169945 => 169946)
--- trunk/Source/WebKit2/ChangeLog 2014-06-13 20:34:54 UTC (rev 169945)
+++ trunk/Source/WebKit2/ChangeLog 2014-06-13 20:37:08 UTC (rev 169946)
@@ -1,3 +1,13 @@
+2014-06-13 Anders Carlsson <ander...@apple.com>
+
+ Add a HTTPHeaderMap::get overload that takes an HTTPHeaderName
+ https://bugs.webkit.org/show_bug.cgi?id=133877
+
+ Reviewed by Andreas Kling.
+
+ * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
+ (WebKit::parsePostBuffer):
+
2014-06-13 Dan Bernstein <m...@apple.com>
[iOS] Networking process always decodes keys
Modified: trunk/Source/WebKit2/WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp (169945 => 169946)
--- trunk/Source/WebKit2/WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp 2014-06-13 20:34:54 UTC (rev 169945)
+++ trunk/Source/WebKit2/WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp 2014-06-13 20:37:08 UTC (rev 169946)
@@ -246,7 +246,7 @@
// Sometimes plugins like to set Content-Length themselves when they post,
// but WebFoundation does not like that. So we will remove the header
// and instead truncate the data to the requested length.
- String contentLength = headerFields.get("Content-Length");
+ String contentLength = headerFields.get(HTTPHeaderName::ContentLength);
if (!contentLength.isNull())
dataLength = std::min(contentLength.toInt(), (int)dataLength);