Index: content/common/gpu/sync_point_manager.cc |
diff --git a/content/common/gpu/sync_point_manager.cc b/content/common/gpu/sync_point_manager.cc |
index 9383574faf9eb1039d8111f0b8ff46389425335f..5aa4b7e8e8c51f07bee35cb715c046c1bf59f579 100644 |
--- a/content/common/gpu/sync_point_manager.cc |
+++ b/content/common/gpu/sync_point_manager.cc |
@@ -26,6 +26,9 @@ SyncPointManager::~SyncPointManager() { |
uint32 SyncPointManager::GenerateSyncPoint() { |
base::AutoLock lock(lock_); |
uint32 sync_point = next_sync_point_++; |
+ // When an integer overflow occurs, don't return 0. |
+ if (!sync_point) |
+ sync_point = next_sync_point_++; |
// Note: wrapping would take days for a buggy/compromized renderer that would |
// insert sync points in a loop, but if that were to happen, better explicitly |