| Index: sync/sessions/status_controller.cc
|
| diff --git a/sync/sessions/status_controller.cc b/sync/sessions/status_controller.cc
|
| index 19fdbaff76f18d4b714e8728ca4e4d716086a92c..e192bba4e2259f78ddb2237be0109a2f4cf8b456 100644
|
| --- a/sync/sessions/status_controller.cc
|
| +++ b/sync/sessions/status_controller.cc
|
| @@ -68,6 +68,18 @@ ConflictProgress*
|
| return &GetOrCreateModelSafeGroupState(false, group)->conflict_progress;
|
| }
|
|
|
| +std::set<ModelSafeGroup>
|
| + StatusController::GetModelSafeGroupsWithUnappliedUpdates() const {
|
| + std::set<ModelSafeGroup> result;
|
| + std::map<ModelSafeGroup, PerModelSafeGroupState*>::const_iterator it =
|
| + per_model_group_.begin();
|
| + for (; it != per_model_group_.end(); ++it) {
|
| + if (it->second->update_progress.HasUnappliedUpdates())
|
| + result.insert(it->first);
|
| + }
|
| + return result;
|
| +}
|
| +
|
| const UpdateProgress* StatusController::GetUnrestrictedUpdateProgress(
|
| ModelSafeGroup group) const {
|
| const PerModelSafeGroupState* state =
|
| @@ -95,7 +107,8 @@ PerModelSafeGroupState* StatusController::GetOrCreateModelSafeGroupState(
|
| std::map<ModelSafeGroup, PerModelSafeGroupState*>::iterator it =
|
| per_model_group_.find(group);
|
| if (it == per_model_group_.end()) {
|
| - PerModelSafeGroupState* state = new PerModelSafeGroupState(&is_dirty_);
|
| + PerModelSafeGroupState* state =
|
| + new PerModelSafeGroupState(&is_dirty_, group, routing_info_);
|
| it = per_model_group_.insert(std::make_pair(group, state)).first;
|
| }
|
| return it->second;
|
|
|