summaryrefslogtreecommitdiffstats
path: root/src/engine/events/Disconnect.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine/events/Disconnect.cpp')
-rw-r--r--src/engine/events/Disconnect.cpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/engine/events/Disconnect.cpp b/src/engine/events/Disconnect.cpp
index aa59b618..9618826c 100644
--- a/src/engine/events/Disconnect.cpp
+++ b/src/engine/events/Disconnect.cpp
@@ -52,6 +52,7 @@ Disconnect::Disconnect(
, _patch(NULL)
, _src_port(NULL)
, _dst_port(NULL)
+ , _impl(NULL)
, _compiled_patch(NULL)
{
}
@@ -164,11 +165,10 @@ Disconnect::pre_process()
return;
}
- _impl = SharedPtr<Impl>(
- new Impl(_engine,
- _patch,
- dynamic_cast<OutputPort*>(_src_port),
- dynamic_cast<InputPort*>(_dst_port)));
+ _impl = new Impl(_engine,
+ _patch,
+ dynamic_cast<OutputPort*>(_src_port),
+ dynamic_cast<InputPort*>(_dst_port));
if (_patch->enabled())
_compiled_patch = _patch->compile();
@@ -259,6 +259,8 @@ Disconnect::post_process()
if (_request)
_request->respond_error(msg);
}
+
+ delete _impl;
}
} // namespace Engine