summaryrefslogtreecommitdiff
path: root/drumgizmo/audiooutputenginedl.cc
diff options
context:
space:
mode:
authorBent Bisballe Nyeng <deva@aasimon.org>2015-12-20 16:54:07 +0100
committerBent Bisballe Nyeng <deva@aasimon.org>2015-12-20 16:54:07 +0100
commit4c5b1b6713628d91554d934ee72661b83232bbf7 (patch)
tree21ce6867bb467f47d32af3a64b2c0955082df58a /drumgizmo/audiooutputenginedl.cc
parent89cfec5ae70d3770bc1fb55c658c2551c9a9dd42 (diff)
Free dlopen resources.
Diffstat (limited to 'drumgizmo/audiooutputenginedl.cc')
-rw-r--r--drumgizmo/audiooutputenginedl.cc4
1 files changed, 3 insertions, 1 deletions
diff --git a/drumgizmo/audiooutputenginedl.cc b/drumgizmo/audiooutputenginedl.cc
index dad2c5c..042db4a 100644
--- a/drumgizmo/audiooutputenginedl.cc
+++ b/drumgizmo/audiooutputenginedl.cc
@@ -36,7 +36,7 @@ AudioOutputEngineDL::AudioOutputEngineDL(std::string name)
is_jack_plugin = strstr(name.c_str(), "jack");
std::string plugin = OUTPUT_PLUGIN_DIR"/" + name + ".so";
- void *lib = dlopen(plugin.c_str(), RTLD_LAZY);
+ lib = dlopen(plugin.c_str(), RTLD_LAZY);
if(!lib) {
printf("Cannot load device: %s\n", dlerror());
return;
@@ -132,6 +132,8 @@ AudioOutputEngineDL::~AudioOutputEngineDL()
{
o_destroy(ptr);
if(is_jack_plugin) close_jack_client();
+ dlclose(lib);
+ lib = nullptr;
}
bool AudioOutputEngineDL::init(Channels channels)