summaryrefslogtreecommitdiff
path: root/src/messagehandler.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/messagehandler.cc')
-rw-r--r--src/messagehandler.cc14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/messagehandler.cc b/src/messagehandler.cc
index 8217bde..cdc7246 100644
--- a/src/messagehandler.cc
+++ b/src/messagehandler.cc
@@ -63,8 +63,18 @@ MessageList handle_msg(MessageList msgList, clientid_t wsi) {
{
INFO(messagehandler, "Handling remove command\n");
try {
- m.nodes = task_manager.removeTask(m.remove.id);
- outmsgs.push_back(m);
+ TaskIdList ids = task_manager.subTasks(m.remove.id);
+ TaskIdList::reverse_iterator id = ids.rbegin();
+ while(id != ids.rend()) {
+ task_t task = task_manager.task(*id);
+
+ message_t m = create_msg_remove(task);
+ m.nodes = task_manager.removeTask(task.id);
+
+ outmsgs.push_back(m);
+ id++;
+ printf("!!!\n");
+ }
}
catch (std::exception& e) {
DEBUG(messagehandler, "Error remove task\n");