alsa/0022-control_hw-fix-potential-memory-leak.patch
Takashi Iwai 62cc03c4bc Accepting request 225572 from home:tiwai:branches:multimedia:libs
- Update alsa-info.sh to match dmesg with snd_
- Run spec-cleaner
- Add missing Loopback.conf manually
- Upstream fixes: minor clean ups, 2.1 PCM channel config support,
  portability improvements, PCM float format conversion fix,
  fix for ioplug 32bit hwptr wrap, etc.
  0020-minor-malloc-changes.patch
  0021-alsa-lib-minor-typo-in-pcm-doc.patch
  0022-control_hw-fix-potential-memory-leak.patch
  0023-pcm-initialize-pcm_dmix-monotonic-field.patch
  0024-pcm-initialize-monotonic-field-for-dshare-and-dsnoop.patch
  0025-pcm-use-CLOCK_REALTIME-for-non-monotonic-ts.patch
  0026-alsa-lib-heavy-pcm-atomics-cleanup.patch
  0027-conf-Add-basic-infrastructure-for-2.1-surround-sound.patch
  0028-conf-Add-surround-2.1-support-to-all-cards.patch
  0029-Portability-fix-look-for-sys-endian.h-as-well-as-end.patch
  0030-autotools-update-style.patch
  0031-pcm-Insert-linear-to-float-conversion-when-rate-or-c.patch
  0032-pcm-route-Allow-chmap-syntax-for-slave-channels-in-t.patch
  0033-pcm-route-Select-slave-chmap-based-on-ttable-informa.patch
  0034-conf-Allow-2.1-surround-to-use-different-number-of-c.patch
  0035-pcm-Wrap-hw_ptr-to-boundary-in-pcm_ioplug.patch
  0036-src-conf-cards-Add-missing-entry-for-Loopback.conf.patch

OBS-URL: https://build.opensuse.org/request/show/225572
OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/alsa?expand=0&rev=152
2014-03-11 11:08:29 +00:00

31 lines
939 B
Diff

From 336dc58beba0ca7cf5650dc12ed3eb72d61ac6d3 Mon Sep 17 00:00:00 2001
From: Ivan Sorokin <vanyacpp@gmail.com>
Date: Wed, 22 Jan 2014 00:12:50 +0400
Subject: [PATCH] control_hw: fix potential memory leak
Signed-off-by: Ivan Sorokin <vanyacpp@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
src/control/control_hw.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/control/control_hw.c b/src/control/control_hw.c
index 148097facd90..dfc9dcd51e20 100644
--- a/src/control/control_hw.c
+++ b/src/control/control_hw.c
@@ -240,8 +240,10 @@ static int snd_ctl_hw_elem_tlv(snd_ctl_t *handle, int op_flag,
return -errno;
}
if (op_flag == 0) {
- if (xtlv->tlv[1] + 2 * sizeof(unsigned int) > tlv_size)
+ if (xtlv->tlv[1] + 2 * sizeof(unsigned int) > tlv_size) {
+ free(xtlv);
return -EFAULT;
+ }
memcpy(tlv, xtlv->tlv, xtlv->tlv[1] + 2 * sizeof(unsigned int));
}
free(xtlv);
--
1.9.0