| Index: ui/aura/mus/window_port_mus.cc
|
| diff --git a/ui/aura/mus/window_port_mus.cc b/ui/aura/mus/window_port_mus.cc
|
| index 52480e730d8ef10eb5da3ef795f82ebdbcb5d547..305fcfc16b603722063e646d1b5277d4fe8074ba 100644
|
| --- a/ui/aura/mus/window_port_mus.cc
|
| +++ b/ui/aura/mus/window_port_mus.cc
|
| @@ -32,8 +32,8 @@ WindowPortMus::WindowPortMus(WindowTreeClient* client,
|
| : WindowMus(window_mus_type), window_tree_client_(client) {}
|
|
|
| WindowPortMus::~WindowPortMus() {
|
| - if (surface_info_)
|
| - SetSurfaceIdFromServer(nullptr);
|
| + if (surface_info_.id().is_valid())
|
| + SetSurfaceInfoFromServer(cc::SurfaceInfo());
|
|
|
| // DESTROY is only scheduled from DestroyFromServer(), meaning if DESTROY is
|
| // present then the server originated the change.
|
| @@ -244,12 +244,11 @@ void WindowPortMus::SetPropertyFromServer(
|
| property_data);
|
| }
|
|
|
| -void WindowPortMus::SetSurfaceIdFromServer(
|
| - std::unique_ptr<SurfaceInfo> surface_info) {
|
| - if (surface_info_) {
|
| - const cc::SurfaceId& existing_surface_id = surface_info_->surface_id;
|
| - cc::SurfaceId new_surface_id =
|
| - surface_info ? surface_info->surface_id : cc::SurfaceId();
|
| +void WindowPortMus::SetSurfaceInfoFromServer(
|
| + const cc::SurfaceInfo& surface_info) {
|
| + if (surface_info_.id().is_valid()) {
|
| + const cc::SurfaceId& existing_surface_id = surface_info_.id();
|
| + const cc::SurfaceId& new_surface_id = surface_info.id();
|
| if (existing_surface_id.is_valid() &&
|
| existing_surface_id != new_surface_id) {
|
| // TODO(kylechar): Start return reference here?
|
| @@ -258,9 +257,9 @@ void WindowPortMus::SetSurfaceIdFromServer(
|
| WindowPortMus* parent = Get(window_->parent());
|
| if (parent && parent->surface_id_handler_) {
|
| parent->surface_id_handler_->OnChildWindowSurfaceChanged(window_,
|
| - &surface_info);
|
| + surface_info);
|
| }
|
| - surface_info_ = std::move(surface_info);
|
| + surface_info_ = surface_info;
|
| }
|
|
|
| void WindowPortMus::DestroyFromServer() {
|
|
|