[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

adachan at apple.com adachan at apple.com
Wed Dec 22 11:36:48 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit 93410d2483c7689158a9fb798ff81f1efbeb399b
Author: adachan at apple.com <adachan at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Fri Jul 30 22:38:54 2010 +0000

            Reviewed by John Sullivan.
    
            Fix issue with populating the back list when limit is a huge number.
            https://bugs.webkit.org/show_bug.cgi?id=43270
    
            * UIProcess/WebBackForwardList.cpp:
            (WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
    
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@64381 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKit2/ChangeLog b/WebKit2/ChangeLog
index eed64fd..537d7df 100644
--- a/WebKit2/ChangeLog
+++ b/WebKit2/ChangeLog
@@ -1,3 +1,13 @@
+2010-07-30  Ada Chan  <adachan at apple.com>
+
+        Reviewed by John Sullivan.
+
+        Fix issue with populating the back list when limit is a huge number.
+        https://bugs.webkit.org/show_bug.cgi?id=43270
+
+        * UIProcess/WebBackForwardList.cpp:
+        (WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
+
 2010-07-29  Sam Weinig  <sam at webkit.org>
 
         Reviewed by Anders Carlsson.
diff --git a/WebKit2/UIProcess/WebBackForwardList.cpp b/WebKit2/UIProcess/WebBackForwardList.cpp
index 637a91b..50de52b 100644
--- a/WebKit2/UIProcess/WebBackForwardList.cpp
+++ b/WebKit2/UIProcess/WebBackForwardList.cpp
@@ -168,12 +168,14 @@ BackForwardListItemVector WebBackForwardList::forwardListWithLimit(unsigned limi
 
 PassRefPtr<ImmutableArray> WebBackForwardList::backListAsImmutableArrayWithLimit(unsigned limit)
 {
-    unsigned size = std::min(static_cast<unsigned>(backListCount()), limit);
+    unsigned backListSize = static_cast<unsigned>(backListCount());
+    unsigned size = std::min(backListSize, limit);
     if (!size)
         return ImmutableArray::create();
 
     APIObject** array = new APIObject*[size];
-    for (unsigned i = std::max<int>(m_current - limit, 0), j = 0; i < m_current; ++i, ++j) {
+    ASSERT(backListSize >= size);
+    for (unsigned i = backListSize - size, j = 0; i < backListSize; ++i, ++j) {
         APIObject* item = m_entries[i].get();
         item->ref();
         array[j] = item;

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list