From 9180fa90473a88837dcdff976298dded20468a46 Mon Sep 17 00:00:00 2001 From: Nedko Arnaudov Date: Sun, 14 Nov 2010 13:08:25 +0200 Subject: [PATCH] ladishd: clear project even if room project state is 'unloaded'. Fix for #117 This is a workaround (that was implemented before too). The proper way of handling this is to create 'unnamed project' when a connection or app is added to the room. --- daemon/room.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/daemon/room.c b/daemon/room.c index 4eafa2f6..526b93f4 100644 --- a/daemon/room.c +++ b/daemon/room.c @@ -654,11 +654,11 @@ ladish_remove_room_app( bool ladish_room_unload_project(ladish_room_handle room_handle) { + unsigned int old_project_state; + switch (room_ptr->project_state) { case ROOM_PROJECT_STATE_UNLOADED: - return true; - case ROOM_PROJECT_STATE_LOADED: if (!ladish_app_supervisor_has_apps(room_ptr->app_supervisor) && !ladish_graph_has_visible_connections(room_ptr->graph)) @@ -716,9 +716,14 @@ bool ladish_room_unload_project(ladish_room_handle room_handle) return false; } + old_project_state = room_ptr->project_state; + ladish_room_clear_project(room_ptr); - ladish_room_emit_project_properties_changed(room_ptr); + if (old_project_state != room_ptr->project_state) + { + ladish_room_emit_project_properties_changed(room_ptr); + } return true; }