wayland: remove surfaces that got destroyed
[staging/windowmanager.git] / src / wayland.cpp
index b81f140..38092e3 100644 (file)
@@ -507,6 +507,10 @@ void controller::surface_destroyed(uint32_t id) {
 void controller::surface_content(uint32_t id, int32_t content_state) {
    logdebug("genivi::surface %s @ %p s %i", __func__, this->proxy,
             content_state);
+
+   if (content_state == IVI_CONTROLLER_SURFACE_CONTENT_STATE_CONTENT_REMOVED) {
+      this->surfaces.erase(id);
+   }
 }
 
 //