Index: components/sync_sessions/sessions_sync_manager.cc |
diff --git a/components/sync_sessions/sessions_sync_manager.cc b/components/sync_sessions/sessions_sync_manager.cc |
index f985b3db1e34608ee6d25fbcfa61ec780fb92c79..271ea77e3028fda3ccabedeeb22f387c81c3a25a 100644 |
--- a/components/sync_sessions/sessions_sync_manager.cc |
+++ b/components/sync_sessions/sessions_sync_manager.cc |
@@ -499,9 +499,13 @@ void SessionsSyncManager::TrackTasks( |
tab_specifics->current_navigation_index(); |
int64_t current_navigation_global_id = |
tab_specifics->navigation(current_index_in_tab_specifics).global_id(); |
+ SessionID::id_type source_tab_id = tab_delegate->GetSourceTabID(); |
TabTasks* tab_tasks = |
- task_tracker_->GetTabTasks(tab_delegate->GetSessionId()); |
+ source_tab_id == kInvalidTabID |
+ ? task_tracker_->GetTabTasks(tab_delegate->GetSessionId()) |
+ : task_tracker_->GetTabTasks(tab_delegate->GetSessionId(), |
+ source_tab_id); |
tab_tasks->UpdateWithNavigation( |
current_navigation_index, |
tab_delegate->GetTransitionAtIndex(current_navigation_index), |