diff options
| author | John Reck <jreck@google.com> | 2011-07-08 14:10:37 -0700 |
|---|---|---|
| committer | John Reck <jreck@google.com> | 2011-07-08 14:21:28 -0700 |
| commit | a169628f9424256e5bcf45807869c4c4eaa114c0 (patch) | |
| tree | 509f340f67c5c045d67113df4688a576202d1743 | |
| parent | 15bdd87d767fc105f53e74a83e71967a80b78f89 (diff) | |
| download | packages_apps_Browser-a169628f9424256e5bcf45807869c4c4eaa114c0.tar.gz packages_apps_Browser-a169628f9424256e5bcf45807869c4c4eaa114c0.tar.bz2 packages_apps_Browser-a169628f9424256e5bcf45807869c4c4eaa114c0.zip | |
Fix bing images crash
Bug: 4517571
Caused by receiving onPageFinished callbacks for in page navigation links
(eg, url#something).
Also, only post an UPDATE_BOOKMARK_THUMBNAIL message if one is not already
pending for the tab.
Change-Id: Ia45ae93206507b93ad6fc841ad291b97bc947675
| -rw-r--r-- | src/com/android/browser/Controller.java | 13 | ||||
| -rw-r--r-- | src/com/android/browser/Tab.java | 5 |
2 files changed, 13 insertions, 5 deletions
diff --git a/src/com/android/browser/Controller.java b/src/com/android/browser/Controller.java index 09c7cd122..f4563bd16 100644 --- a/src/com/android/browser/Controller.java +++ b/src/com/android/browser/Controller.java @@ -819,13 +819,16 @@ public class Controller if (!tab.isPrivateBrowsingEnabled() && !TextUtils.isEmpty(tab.getUrl()) && !tab.isSnapshot()) { + // Only update the bookmark screenshot if the user did not + // cancel the load early and there is not already + // a pending update for the tab. if (tab.inForeground() && !didUserStopLoading() || !tab.inForeground()) { - // Only update the bookmark screenshot if the user did not - // cancel the load early. - mHandler.sendMessageDelayed(mHandler.obtainMessage( - UPDATE_BOOKMARK_THUMBNAIL, 0, 0, tab), - 500); + if (!mHandler.hasMessages(UPDATE_BOOKMARK_THUMBNAIL, tab)) { + mHandler.sendMessageDelayed(mHandler.obtainMessage( + UPDATE_BOOKMARK_THUMBNAIL, 0, 0, tab), + 500); + } } } // pause the WebView timer and release the wake lock if it is finished diff --git a/src/com/android/browser/Tab.java b/src/com/android/browser/Tab.java index d8a3af96a..62b574df4 100644 --- a/src/com/android/browser/Tab.java +++ b/src/com/android/browser/Tab.java @@ -555,6 +555,11 @@ class Tab { @Override public void onPageFinished(WebView view, String url) { + if (!mInPageLoad) { + // In page navigation links (www.something.com#footer) will + // trigger an onPageFinished which we don't care about. + return; + } if (!isPrivateBrowsingEnabled()) { LogTag.logPageFinishedLoading( url, SystemClock.uptimeMillis() - mLoadStartTime); |
