main/libcdio: fix cdtext-related double free

This commit is contained in:
William Pitcock 2018-02-21 19:52:19 +00:00
parent 9d0a6a13b3
commit 48d2d428c9
2 changed files with 29 additions and 3 deletions

View File

@ -2,7 +2,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=libcdio
pkgver=0.94
pkgrel=1
pkgrel=2
pkgdesc="GNU Compact Disc Input and Control Library"
url="https://www.gnu.org/software/libcdio/"
arch="all"
@ -12,7 +12,8 @@ makedepends="libcddb-dev ncurses-dev linux-headers"
install=
subpackages="$pkgname-dev $pkgname-doc $pkgname-tools ${pkgname}++:_cpp"
source="http://ftp.gnu.org/gnu/libcdio/${pkgname}-${pkgver}.tar.gz
disable-broken-test.patch"
disable-broken-test.patch
fix-cdtext-double-free.patch"
build() {
cd "$builddir"
@ -53,4 +54,5 @@ _cpp() {
}
sha512sums="e1d3c96c4acc7be923c97109c3f76223adc00b293278daef7d5008b1e5d67f33402f9f224f05120e9e1e8b3a8d1fa1b0bd5069dc6dd309741e3590e2c19e0e66 libcdio-0.94.tar.gz
be0149128bb2fa131f514bcff848279d826340a99a05b958e104f4640bda1a89d6146b0ec348783f4bbd8a3c313c41297152f75ee04f492f08b337bd79dd9c3e disable-broken-test.patch"
be0149128bb2fa131f514bcff848279d826340a99a05b958e104f4640bda1a89d6146b0ec348783f4bbd8a3c313c41297152f75ee04f492f08b337bd79dd9c3e disable-broken-test.patch
9beb2dcecb6d7d43f4d11c7cca0de8de9eb6e580e92c5665816bd0907960dd32d3573c2591deeb4ab23fe962c16af8043f2101a8fdb8f4163ecee960ce0a545d fix-cdtext-double-free.patch"

View File

@ -0,0 +1,24 @@
From f6f9c48fb40b8a1e8218799724b0b61a7161eb1d Mon Sep 17 00:00:00 2001
From: "R. Bernstein" <rocky@gnu.org>
Date: Fri, 22 Dec 2017 16:06:57 -0500
Subject: Fix double free courtesy of Chris Clayton
---
lib/driver/_cdio_generic.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/lib/driver/_cdio_generic.c b/lib/driver/_cdio_generic.c
index d40ac0d..ae820d2 100644
--- a/lib/driver/_cdio_generic.c
+++ b/lib/driver/_cdio_generic.c
@@ -296,7 +296,6 @@ get_cdtext_generic (void *p_user_data)
if(len <= 0 || 0 != cdtext_data_init (p_env->cdtext, &p_cdtext_data[4], len)) {
p_env->b_cdtext_error = true;
- cdtext_destroy (p_env->cdtext);
free(p_env->cdtext);
p_env->cdtext = NULL;
}
--
cgit v1.0-41-gc330