summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sysutils/cdrdao/distinfo3
-rw-r--r--sysutils/cdrdao/patches/patch-ba47
-rw-r--r--sysutils/gcdmaster/Makefile4
3 files changed, 51 insertions, 3 deletions
diff --git a/sysutils/cdrdao/distinfo b/sysutils/cdrdao/distinfo
index 5f21040f43f..52508c7a85b 100644
--- a/sysutils/cdrdao/distinfo
+++ b/sysutils/cdrdao/distinfo
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.25 2011/07/08 18:18:16 drochner Exp $
+$NetBSD: distinfo,v 1.26 2013/05/03 16:14:47 drochner Exp $
SHA1 (cdrdao-1.2.3.tar.bz2) = 70d6547795a1342631c7ab56709fd1940c2aff9f
RMD160 (cdrdao-1.2.3.tar.bz2) = a162bdf2bc4d65581816d3a9e3c0d3ba66bb6523
@@ -22,3 +22,4 @@ SHA1 (patch-at) = c6379b51f2f81c73a0976d35c62555860b20168d
SHA1 (patch-au) = dd8d9d6b73ea662ef3e936580082f9b733c6596c
SHA1 (patch-av) = 1053b438744ce9e64e0ab093679ed71fbce9a533
SHA1 (patch-aw) = 152cc7d2f58b97ecbb766b9f3682884515a170a1
+SHA1 (patch-ba) = b6b7ccae9edf1e816aac76a7d94b7bf67fc1671a
diff --git a/sysutils/cdrdao/patches/patch-ba b/sysutils/cdrdao/patches/patch-ba
new file mode 100644
index 00000000000..590cfbcb100
--- /dev/null
+++ b/sysutils/cdrdao/patches/patch-ba
@@ -0,0 +1,47 @@
+$NetBSD: patch-ba,v 1.1 2013/05/03 16:14:47 drochner Exp $
+
+adapt to libao's output format
+
+--- trackdb/TrackData.cc.orig 2009-04-20 21:20:17.000000000 +0000
++++ trackdb/TrackData.cc
+@@ -642,7 +642,7 @@ int TrackData::waveLength(const char *fi
+ char magic[4];
+ long headerLen = 0;
+ long len;
+- short waveFormat;
++ unsigned short waveFormat;
+ short waveChannels;
+ long waveRate;
+ short waveBits;
+@@ -715,7 +715,7 @@ int TrackData::waveLength(const char *fi
+
+ waveFormat = readShort(fp);
+
+- if (waveFormat != 1) {
++ if (waveFormat != 1 && waveFormat != 0xfffe) {
+ // not PCM format
+ log_message(-2, "%s: not in PCM format.", filename);
+ fclose(fp);
+@@ -749,7 +749,21 @@ int TrackData::waveLength(const char *fi
+ return 2;
+ }
+
+- len -= 16;
++ if (waveFormat == 1)
++ len -= 16;
++ else {
++ readShort(fp); // cbsize
++ readShort(fp); // validbits
++ readLong(fp); // channelmask
++ waveFormat = readShort(fp); // subformat
++ if (waveFormat != 1) {
++ // not PCM format
++ log_message(-2, "%s: not in PCM format.", filename);
++ fclose(fp);
++ return 2;
++ }
++ len -= 26;
++ }
+
+ // skip chunk data
+ if (fseek(fp, len, SEEK_CUR) != 0) {
diff --git a/sysutils/gcdmaster/Makefile b/sysutils/gcdmaster/Makefile
index 97a91e77c0a..a7ef51a6965 100644
--- a/sysutils/gcdmaster/Makefile
+++ b/sysutils/gcdmaster/Makefile
@@ -1,8 +1,8 @@
-# $NetBSD: Makefile,v 1.66 2013/02/16 11:24:27 wiz Exp $
+# $NetBSD: Makefile,v 1.67 2013/05/03 16:14:47 drochner Exp $
.include "../../sysutils/cdrdao/Makefile.common"
-PKGREVISION= 20
+PKGREVISION= 21
PKGNAME= gcdmaster-${CDRDAO_VER}
COMMENT= Gnome UI frontend to cdrdao