summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/gui/GraphCanvas.cpp2
-rw-r--r--src/server/events/Delete.cpp3
-rw-r--r--src/server/events/Disconnect.cpp7
-rw-r--r--src/server/events/Disconnect.hpp2
4 files changed, 8 insertions, 6 deletions
diff --git a/src/gui/GraphCanvas.cpp b/src/gui/GraphCanvas.cpp
index 5a0c365a..ecd03aff 100644
--- a/src/gui/GraphCanvas.cpp
+++ b/src/gui/GraphCanvas.cpp
@@ -527,8 +527,8 @@ destroy_arc(GanvEdge* arc, void* data)
void
GraphCanvas::destroy_selection()
{
- for_each_selected_node(destroy_node, &_app);
for_each_selected_edge(destroy_arc, &_app);
+ for_each_selected_node(destroy_node, &_app);
}
static void
diff --git a/src/server/events/Delete.cpp b/src/server/events/Delete.cpp
index 2d324515..efbf124b 100644
--- a/src/server/events/Delete.cpp
+++ b/src/server/events/Delete.cpp
@@ -157,9 +157,6 @@ Delete::post_process()
_block->deactivate();
}
- if (_disconnect_event) {
- _disconnect_event->post_process();
- }
_engine.broadcaster()->del(_uri);
}
diff --git a/src/server/events/Disconnect.cpp b/src/server/events/Disconnect.cpp
index 39b5da00..202a3b09 100644
--- a/src/server/events/Disconnect.cpp
+++ b/src/server/events/Disconnect.cpp
@@ -52,6 +52,11 @@ Disconnect::Disconnect(Engine& engine,
{
}
+Disconnect::~Disconnect()
+{
+ delete _impl;
+}
+
Disconnect::Impl::Impl(Engine& e,
GraphImpl* graph,
OutputPort* s,
@@ -211,8 +216,6 @@ Disconnect::post_process()
if (respond() == Status::SUCCESS) {
_engine.broadcaster()->disconnect(_tail_path, _head_path);
}
-
- delete _impl;
}
} // namespace Events
diff --git a/src/server/events/Disconnect.hpp b/src/server/events/Disconnect.hpp
index 058104f6..083efe5b 100644
--- a/src/server/events/Disconnect.hpp
+++ b/src/server/events/Disconnect.hpp
@@ -52,6 +52,8 @@ public:
const Raul::Path& tail_path,
const Raul::Path& head_path);
+ ~Disconnect();
+
bool pre_process();
void execute(ProcessContext& context);
void post_process();