Mozart: Correctly unregister views. We need to tell ViewStub that we're releasing the view before we actually unregister. This was caught by a safety check in ViewStub's destructor to ensure everything the ViewStub owns is cleaned up properly before the ViewStub itself is dropped on the floor. BUG= R=abarth@google.com Review URL: https://codereview.chromium.org/1759003002 .
diff --git a/services/ui/view_manager/view_registry.cc b/services/ui/view_manager/view_registry.cc index 410537e..4868d0d 100644 --- a/services/ui/view_manager/view_registry.cc +++ b/services/ui/view_manager/view_registry.cc
@@ -459,8 +459,9 @@ void ViewRegistry::UnregisterViewStub(std::unique_ptr<ViewStub> view_stub) { DCHECK(view_stub); - if (view_stub->state()) - UnregisterView(view_stub->state()); + ViewState* view_state = view_stub->ReleaseView(); + if (view_state) + UnregisterView(view_state); } void ViewRegistry::SetLayout(ViewStub* view_stub,