Title: [206087] releases/WebKitGTK/webkit-2.14/Source/WebKit2
- Revision
- 206087
- Author
- carlo...@webkit.org
- Date
- 2016-09-19 00:21:10 -0700 (Mon, 19 Sep 2016)
Log Message
Merge r206086 - [GTK] Empty referer header after WebKit session state restoration trips Bad Behavior Wordpress plugin
https://bugs.webkit.org/show_bug.cgi?id=159606
Reviewed by Carlos Garcia Campos.
Leave the referrer member of FrameState unset when restoring from session state, unless
there is actually a nonempty referrer saved in the state. If we set it to an empty string,
then an empty referrer gets sent to the server, which some servers do not accept. It
triggers the Bad Behavior plugin on my WordPress blog, for instance. It also breaks vox.com.
* UIProcess/API/gtk/WebKitWebViewSessionState.cpp:
(decodeFrameState):
Modified Paths
Diff
Modified: releases/WebKitGTK/webkit-2.14/Source/WebKit2/ChangeLog (206086 => 206087)
--- releases/WebKitGTK/webkit-2.14/Source/WebKit2/ChangeLog 2016-09-19 06:51:23 UTC (rev 206086)
+++ releases/WebKitGTK/webkit-2.14/Source/WebKit2/ChangeLog 2016-09-19 07:21:10 UTC (rev 206087)
@@ -1,3 +1,18 @@
+2016-09-18 Michael Catanzaro <mcatanz...@igalia.com>
+
+ [GTK] Empty referer header after WebKit session state restoration trips Bad Behavior Wordpress plugin
+ https://bugs.webkit.org/show_bug.cgi?id=159606
+
+ Reviewed by Carlos Garcia Campos.
+
+ Leave the referrer member of FrameState unset when restoring from session state, unless
+ there is actually a nonempty referrer saved in the state. If we set it to an empty string,
+ then an empty referrer gets sent to the server, which some servers do not accept. It
+ triggers the Bad Behavior plugin on my WordPress blog, for instance. It also breaks vox.com.
+
+ * UIProcess/API/gtk/WebKitWebViewSessionState.cpp:
+ (decodeFrameState):
+
2016-09-17 Carlos Garcia Campos <cgar...@igalia.com>
[GTK] Move the rendering of auth dialog shadow to the auth dialog widget
Modified: releases/WebKitGTK/webkit-2.14/Source/WebKit2/UIProcess/API/gtk/WebKitWebViewSessionState.cpp (206086 => 206087)
--- releases/WebKitGTK/webkit-2.14/Source/WebKit2/UIProcess/API/gtk/WebKitWebViewSessionState.cpp 2016-09-19 06:51:23 UTC (rev 206086)
+++ releases/WebKitGTK/webkit-2.14/Source/WebKit2/UIProcess/API/gtk/WebKitWebViewSessionState.cpp 2016-09-19 07:21:10 UTC (rev 206087)
@@ -293,7 +293,10 @@
&scrollPositionX, &scrollPositionY, &pageScaleFactor, &httpBodyVariant, &childrenIter.outPtr());
frameState.urlString = String::fromUTF8(urlString);
frameState.originalURLString = String::fromUTF8(originalURLString);
- frameState.referrer = String::fromUTF8(referrer);
+ // frameState.referrer must not be an empty string since we never want to
+ // send an empty Referer header. Bug #159606.
+ if (strlen(referrer))
+ frameState.referrer = String::fromUTF8(referrer);
frameState.target = String::fromUTF8(target);
if (gsize documentStateLength = g_variant_iter_n_children(documentStateIter.get())) {
frameState.documentState.reserveInitialCapacity(documentStateLength);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes