[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc
beidson at apple.com
beidson at apple.com
Wed Dec 22 12:15:32 UTC 2010
The following commit has been merged in the debian/experimental branch:
commit 6e84785c171e348c69cdd36daf8a910aa9344e67
Author: beidson at apple.com <beidson at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Tue Aug 17 22:44:33 2010 +0000
WebCore: Navigating back/forward during a modal dialog causes a crash when the modal dialog is dismissed.
<rdar://problem/8313579> and https://bugs.webkit.org/show_bug.cgi?id=44131
Reviewed by Sam Weinig.
No new tests. (Especially since DRT doesn't spin inner run loops at all, it would be a significant
effort to give it the ability to perform the back/forward navigation in the background to reproduce
this bug)
Manual tests in place of layout tests:
* manual-tests/back-forward-during-alert-1.html: Added.
* manual-tests/back-forward-during-alert-2.html: Added.
* page/Page.cpp:
(WebCore::Page::goToItem):
WebKit: Remove developmentRegion from the project file as it shouldn't have been checked in.
Reviewed by Sam Weinig.
* WebKit.xcodeproj/project.pbxproj:
WebKit/mac: Navigating back/forward during a modal dialog causes a crash when the modal dialog is dismissed.
<rdar://problem/8313579> and https://bugs.webkit.org/show_bug.cgi?id=44131
Reviewed by Sam Weinig.
* WebView/WebView.mm:
(-[WebView canGoBack]): Return false if loads are deferred.
(-[WebView canGoForward]): Ditto.
WebKit/win: Navigating back/forward during a modal dialog causes a crash when the modal dialog is dismissed.
<rdar://problem/8313579> and https://bugs.webkit.org/show_bug.cgi?id=44131
Reviewed by Sam Weinig.
* WebView.cpp:
(WebView::canGoBack): Return false if loads are deferred.
(WebView::canGoForward): Ditto.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@65566 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 29dd4cd..bf8e422 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,21 @@
+2010-08-17 Brady Eidson <beidson at apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Navigating back/forward during a modal dialog causes a crash when the modal dialog is dismissed.
+ <rdar://problem/8313579> and https://bugs.webkit.org/show_bug.cgi?id=44131
+
+ No new tests. (Especially since DRT doesn't spin inner run loops at all, it would be a significant
+ effort to give it the ability to perform the back/forward navigation in the background to reproduce
+ this bug)
+
+ Manual tests in place of layout tests:
+ * manual-tests/back-forward-during-alert-1.html: Added.
+ * manual-tests/back-forward-during-alert-2.html: Added.
+
+ * page/Page.cpp:
+ (WebCore::Page::goToItem):
+
2010-08-17 Ojan Vafai <ojan at chromium.org>
Reviewed by Tony Chang.
diff --git a/WebCore/manual-tests/back-forward-during-alert-1.html b/WebCore/manual-tests/back-forward-during-alert-1.html
new file mode 100644
index 0000000..41a6e6a
--- /dev/null
+++ b/WebCore/manual-tests/back-forward-during-alert-1.html
@@ -0,0 +1,3 @@
+<body>
+View this page, then click <a href="back-forward-during-alert-2.html">here.</a>
+</body>
diff --git a/WebCore/manual-tests/back-forward-during-alert-2.html b/WebCore/manual-tests/back-forward-during-alert-2.html
new file mode 100644
index 0000000..931af01
--- /dev/null
+++ b/WebCore/manual-tests/back-forward-during-alert-2.html
@@ -0,0 +1,10 @@
+<script>
+function loaded()
+{
+ alert("While this alert is showing, two-fingered swipe back using a MacBook trackpad, Magic Trackpad, or Magic Mouse. You should not be able to navigate back. If you can, dismissing this dialog will likely result in a crash.");
+}
+</script>
+
+<body onload="loaded();">
+Follow the instructions in the alert that shows up on page load.
+</body>
diff --git a/WebCore/page/Page.cpp b/WebCore/page/Page.cpp
index 5f461e0..5d42752 100644
--- a/WebCore/page/Page.cpp
+++ b/WebCore/page/Page.cpp
@@ -341,6 +341,9 @@ void Page::goBackOrForward(int distance)
void Page::goToItem(HistoryItem* item, FrameLoadType type)
{
+ if (defersLoading())
+ return;
+
// Abort any current load unless we're navigating the current document to a new state object
HistoryItem* currentItem = m_mainFrame->loader()->history()->currentItem();
if (!item->stateObject() || !currentItem || item->documentSequenceNumber() != currentItem->documentSequenceNumber() || item == currentItem) {
diff --git a/WebKit/ChangeLog b/WebKit/ChangeLog
index eb7e953..baa384d 100644
--- a/WebKit/ChangeLog
+++ b/WebKit/ChangeLog
@@ -1,3 +1,11 @@
+2010-08-17 Brady Eidson <beidson at apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Remove developmentRegion from the project file as it shouldn't have been checked in.
+
+ * WebKit.xcodeproj/project.pbxproj:
+
2010-08-16 Leandro Pereira <leandro at profusion.mobi>
[EFL] Build fix after r65366.
diff --git a/WebKit/WebKit.xcodeproj/project.pbxproj b/WebKit/WebKit.xcodeproj/project.pbxproj
index 2db6c86..f6be649 100644
--- a/WebKit/WebKit.xcodeproj/project.pbxproj
+++ b/WebKit/WebKit.xcodeproj/project.pbxproj
@@ -1623,7 +1623,6 @@
isa = PBXProject;
buildConfigurationList = 149C283208902B0F008A9EFC /* Build configuration list for PBXProject "WebKit" */;
compatibilityVersion = "Xcode 2.4";
- developmentRegion = English;
hasScannedForEncodings = 1;
knownRegions = (
English,
diff --git a/WebKit/mac/ChangeLog b/WebKit/mac/ChangeLog
index 1684748..8fc44fe 100644
--- a/WebKit/mac/ChangeLog
+++ b/WebKit/mac/ChangeLog
@@ -1,3 +1,14 @@
+2010-08-17 Brady Eidson <beidson at apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Navigating back/forward during a modal dialog causes a crash when the modal dialog is dismissed.
+ <rdar://problem/8313579> and https://bugs.webkit.org/show_bug.cgi?id=44131
+
+ * WebView/WebView.mm:
+ (-[WebView canGoBack]): Return false if loads are deferred.
+ (-[WebView canGoForward]): Ditto.
+
2010-08-14 Joseph Pecoraro <joepeck at webkit.org>
Reviewed by Pavel Feldman.
diff --git a/WebKit/mac/WebView/WebView.mm b/WebKit/mac/WebView/WebView.mm
index aefd56b..d6faeca 100644
--- a/WebKit/mac/WebView/WebView.mm
+++ b/WebKit/mac/WebView/WebView.mm
@@ -3908,7 +3908,7 @@ static WebFrame *incrementFrame(WebFrame *frame, BOOL forward, BOOL wrapFlag)
- (BOOL)canGoBack
{
- if (!_private->page)
+ if (!_private->page || _private->page->defersLoading())
return NO;
return !!_private->page->backForwardList()->backItem();
@@ -3916,7 +3916,7 @@ static WebFrame *incrementFrame(WebFrame *frame, BOOL forward, BOOL wrapFlag)
- (BOOL)canGoForward
{
- if (!_private->page)
+ if (!_private->page || _private->page->defersLoading())
return NO;
return !!_private->page->backForwardList()->forwardItem();
diff --git a/WebKit/win/ChangeLog b/WebKit/win/ChangeLog
index d2d1422..7858908 100644
--- a/WebKit/win/ChangeLog
+++ b/WebKit/win/ChangeLog
@@ -1,3 +1,14 @@
+2010-08-17 Brady Eidson <beidson at apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Navigating back/forward during a modal dialog causes a crash when the modal dialog is dismissed.
+ <rdar://problem/8313579> and https://bugs.webkit.org/show_bug.cgi?id=44131
+
+ * WebView.cpp:
+ (WebView::canGoBack): Return false if loads are deferred.
+ (WebView::canGoForward): Ditto.
+
2010-08-16 Kinuko Yasuda <kinuko at chromium.org>
Unreviewed; build fix attempt for Windows.
diff --git a/WebKit/win/WebView.cpp b/WebKit/win/WebView.cpp
index c307c02..6d610a1 100644
--- a/WebKit/win/WebView.cpp
+++ b/WebKit/win/WebView.cpp
@@ -3694,7 +3694,7 @@ HRESULT STDMETHODCALLTYPE WebView::canGoBack(
/* [in] */ IUnknown* /*sender*/,
/* [retval][out] */ BOOL* result)
{
- *result = !!m_page->backForwardList()->backItem();
+ *result = !!(m_page->backForwardList()->backItem() && !m_page->defersLoading());
return S_OK;
}
@@ -3709,7 +3709,7 @@ HRESULT STDMETHODCALLTYPE WebView::canGoForward(
/* [in] */ IUnknown* /*sender*/,
/* [retval][out] */ BOOL* result)
{
- *result = !!m_page->backForwardList()->forwardItem();
+ *result = !!(m_page->backForwardList()->forwardItem() && !m_page->defersLoading());
return S_OK;
}
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list