Index: cc/playback/display_item_list.cc |
diff --git a/cc/playback/display_item_list.cc b/cc/playback/display_item_list.cc |
index a9fbfaa37e0b33ddd99f93abacf318b7e22bf037..9acd7d87da969c5b4d02284186597591f4520fde 100644 |
--- a/cc/playback/display_item_list.cc |
+++ b/cc/playback/display_item_list.cc |
@@ -35,7 +35,9 @@ bool DisplayItemsTracingEnabled() { |
return tracing_enabled; |
} |
-const int kDefaultNumDisplayItemsToReserve = 100; |
+// 16 "typically sized items" is the same as this many large items: |
+const int kDefaultNumDisplayItemsToReserve = |
+ 8 * TypicalDisplayItemSize() / LargestDisplayItemSize() + 1; |
} // namespace |
@@ -108,7 +110,7 @@ void DisplayItemList::Raster(SkCanvas* canvas, |
void DisplayItemList::ProcessAppendedItemsOnTheFly() { |
if (retain_individual_display_items_) |
return; |
- if (items_.size() >= kDefaultNumDisplayItemsToReserve) { |
+ if (items_.size() >= static_cast<size_t>(kDefaultNumDisplayItemsToReserve)) { |
ProcessAppendedItems(); |
// This function exists to keep the |items_| from growing indefinitely if |
// we're not going to store them anyway. So the items better be deleted |