diff options
author | David Robillard <d@drobilla.net> | 2017-02-12 15:04:20 +0100 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2017-02-12 15:31:47 +0100 |
commit | b1198f0842e6e4d6b1c01f07d91b42ef4a212788 (patch) | |
tree | 93fdf4da89a6f5f634707fb8c989e0d9ee1a3c65 /src/server/events/CreateGraph.cpp | |
parent | 81d45973412c675e3c0b4a10b64d811a219feeae (diff) | |
download | ingen-b1198f0842e6e4d6b1c01f07d91b42ef4a212788.tar.gz ingen-b1198f0842e6e4d6b1c01f07d91b42ef4a212788.tar.bz2 ingen-b1198f0842e6e4d6b1c01f07d91b42ef4a212788.zip |
Use smart pointers to handle real-time memory disposal
Diffstat (limited to 'src/server/events/CreateGraph.cpp')
-rw-r--r-- | src/server/events/CreateGraph.cpp | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/src/server/events/CreateGraph.cpp b/src/server/events/CreateGraph.cpp index a59aadc6..7ebaeedc 100644 --- a/src/server/events/CreateGraph.cpp +++ b/src/server/events/CreateGraph.cpp @@ -42,7 +42,6 @@ CreateGraph::CreateGraph(Engine& engine, , _properties(properties) , _graph(NULL) , _parent(NULL) - , _compiled_graph(NULL) {} CreateGraph::~CreateGraph() @@ -50,8 +49,6 @@ CreateGraph::~CreateGraph() for (Event* ev : _child_events) { delete ev; } - - delete _compiled_graph; } void @@ -173,9 +170,7 @@ CreateGraph::pre_process(PreProcessContext& ctx) if (_parent->enabled()) { _graph->enable(); } - if (ctx.must_compile(_parent)) { - _compiled_graph = CompiledGraph::compile(_parent); - } + _compiled_graph = ctx.maybe_compile(*_engine.maid(), *_parent); } _graph->activate(*_engine.buffer_factory()); @@ -201,7 +196,7 @@ CreateGraph::execute(RunContext& context) { if (_graph) { if (_parent && _compiled_graph) { - _compiled_graph = _parent->swap_compiled_graph(_compiled_graph); + _parent->set_compiled_graph(std::move(_compiled_graph)); } for (Event* ev : _child_events) { |