aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/Output/alsa/outputalsa.cpp
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2014-10-14 16:49:48 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2014-10-14 16:49:48 +0000
commit6cb3ac8c74073690251106994df24d5bcc74788e (patch)
tree860d3fff7e0fb2fc568502c4d6d7a2b3b40f1ca8 /src/plugins/Output/alsa/outputalsa.cpp
parentb6d8baaae1260798536f1679123a7e3a63665e4a (diff)
downloadqmmp-6cb3ac8c74073690251106994df24d5bcc74788e.tar.gz
qmmp-6cb3ac8c74073690251106994df24d5bcc74788e.tar.bz2
qmmp-6cb3ac8c74073690251106994df24d5bcc74788e.zip
fixed memory leak
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@4574 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/Output/alsa/outputalsa.cpp')
-rw-r--r--src/plugins/Output/alsa/outputalsa.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/plugins/Output/alsa/outputalsa.cpp b/src/plugins/Output/alsa/outputalsa.cpp
index 1d3c08b27..a01eed88a 100644
--- a/src/plugins/Output/alsa/outputalsa.cpp
+++ b/src/plugins/Output/alsa/outputalsa.cpp
@@ -209,6 +209,8 @@ bool OutputALSA::initialize(quint32 freq, ChannelMap map, Qmmp::AudioFormat form
m_can_pause = snd_pcm_hw_params_can_pause(hwparams) && use_pause;
qDebug("OutputALSA: can pause: %d", m_can_pause);
+ ChannelMap out_map;
+#if (SND_LIB_VERSION >= 0x01001B)
//channel map configuration
snd_pcm_chmap_t *chmap = snd_pcm_get_chmap(pcm_handle);
if(!chmap)
@@ -216,8 +218,6 @@ bool OutputALSA::initialize(quint32 freq, ChannelMap map, Qmmp::AudioFormat form
qWarning("OutputALSA: Unable to receive current channel map: %s", snd_strerror(err));
return false;
}
- ChannelMap out_map;
-#if (SND_LIB_VERSION >= 0x01001B)
char tmp[256];
memset(tmp,0,256);
snd_pcm_chmap_print(chmap, 256, tmp);
@@ -230,6 +230,7 @@ bool OutputALSA::initialize(quint32 freq, ChannelMap map, Qmmp::AudioFormat form
else
out_map.append(Qmmp::CHAN_NULL);
}
+ free(chmap);
#else
out_map = map;
#endif