зеркало из https://github.com/mozilla/gecko-dev.git
Backed out changeset 7ba410f45f42
This commit is contained in:
Родитель
f8d507aa2b
Коммит
ffb4b3d6d5
|
@ -9408,7 +9408,6 @@ nsDocShell::AddState(nsIVariant *aData, const nsAString& aTitle,
|
|||
// a. cloned data as the state object,
|
||||
// b. if the third argument was present, the absolute URL found in
|
||||
// step 2
|
||||
// Also clear the new history entry's POST data (see bug 580069).
|
||||
// 5. If aReplace is false (i.e. we're doing a pushState instead of a
|
||||
// replaceState), notify bfcache that we've navigated to a new page.
|
||||
// 6. If the third argument is present, set the document's current address
|
||||
|
@ -9571,10 +9570,8 @@ nsDocShell::AddState(nsIVariant *aData, const nsAString& aTitle,
|
|||
newSHEntry->SetURI(newURI);
|
||||
}
|
||||
|
||||
// Step 4: Modify new/original session history entry and clear its POST
|
||||
// data, if there is any.
|
||||
// Step 4: Modify new/original session history entry
|
||||
newSHEntry->SetStateData(dataStr);
|
||||
newSHEntry->SetPostData(nsnull);
|
||||
|
||||
// Step 5: If aReplace is false, indicating that we're doing a pushState
|
||||
// rather than a replaceState, notify bfcache that we've added a page to
|
||||
|
|
|
@ -87,9 +87,6 @@ _TEST_FILES = \
|
|||
bug529119-window.html \
|
||||
test_bug540462.html \
|
||||
file_bug540462.html \
|
||||
test_bug580069.html \
|
||||
file_bug580069_1.html \
|
||||
file_bug580069_2.sjs \
|
||||
$(NULL)
|
||||
|
||||
ifeq ($(MOZ_WIDGET_TOOLKIT),cocoa)
|
||||
|
|
|
@ -1,8 +0,0 @@
|
|||
<html>
|
||||
<body onload='parent.page1Load();'>
|
||||
file_bug580069_1.html
|
||||
|
||||
<form id='form' action='file_bug580069_2.sjs' method='POST'></form>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -1,5 +0,0 @@
|
|||
function handleRequest(request, response)
|
||||
{
|
||||
response.setHeader("Content-Type", "text/html", false);
|
||||
response.write('<html><body onload=\'parent.page2Load("' + request.method + '")\'>file_bug580069_2.sjs</body></html>');
|
||||
}
|
|
@ -1,61 +0,0 @@
|
|||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<!--
|
||||
https://bugzilla.mozilla.org/show_bug.cgi?id=580069
|
||||
-->
|
||||
<head>
|
||||
<title>Test for Bug 580069</title>
|
||||
<script type="application/javascript" src="/MochiKit/packed.js"></script>
|
||||
<script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
|
||||
<script type="application/javascript" src="/tests/SimpleTest/EventUtils.js"></script>
|
||||
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
|
||||
</head>
|
||||
<body>
|
||||
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=580069">Mozilla Bug 580069</a>
|
||||
|
||||
<iframe id='iframe' src='file_bug580069_1.html'></iframe>
|
||||
|
||||
<script type="application/javascript">
|
||||
SimpleTest.waitForExplicitFinish();
|
||||
|
||||
var iframe = document.getElementById('iframe');
|
||||
var iframeCw = iframe.contentWindow;
|
||||
|
||||
// Called when file_bug580069_1.html loads.
|
||||
function page1Load() {
|
||||
// This should cause us to load file 2.
|
||||
dump('page1Load\n');
|
||||
iframeCw.document.getElementById('form').submit();
|
||||
}
|
||||
|
||||
// Called when file_bug580069_2.html loads.
|
||||
var page2Loads = 0;
|
||||
function page2Load(method) {
|
||||
|
||||
dump("iframe's location is: " + iframeCw.location + ", method is " + method + "\n");
|
||||
|
||||
if (page2Loads == 0) {
|
||||
is(method, "POST", "Method for first load should be POST.");
|
||||
iframeCw.history.replaceState('', '', '?replaced');
|
||||
|
||||
// This refresh shouldn't pop up the "are you sure you want to refresh a page
|
||||
// with POST data?" dialog. If it does, this test will hang and fail, and
|
||||
// we'll see 'Refreshing iframe...' at the end of the test log.
|
||||
dump('Refreshing iframe...\n');
|
||||
iframeCw.location.reload();
|
||||
}
|
||||
else if (page2Loads == 1) {
|
||||
is(method, "GET", "Method for second load should be GET.");
|
||||
is(iframeCw.location.search, "?replaced", "Wrong search on iframe after refresh.");
|
||||
SimpleTest.finish();
|
||||
}
|
||||
else {
|
||||
ok(false, "page2Load should only be called twice.");
|
||||
}
|
||||
|
||||
page2Loads++;
|
||||
}
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
Загрузка…
Ссылка в новой задаче