aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Formula
diff options
context:
space:
mode:
authoriXô2011-07-21 20:45:23 +0200
committerMisty De Meo2011-12-11 16:29:16 -0600
commit2c8e0aec27e5b9f6df1c410481a875f5219e22f6 (patch)
treed1c1549a5eeab9be8fa275fb472990214b494745 /Library/Formula
parentd7acdf18e7fa3f1f031304ee0cbcf81cd89ef155 (diff)
downloadhomebrew-2c8e0aec27e5b9f6df1c410481a875f5219e22f6.tar.bz2
libid3tag: add patches to correct memory leaks
libid3tag has some serious memory leaks which are unlikely to be corrected upstream, since the original project hasn't updated since 2004. These Gentoo patches resolve the issues. Closes #6517. Signed-off-by: Misty De Meo <mistydemeo@gmail.com>
Diffstat (limited to 'Library/Formula')
-rw-r--r--Library/Formula/libid3tag.rb22
1 files changed, 22 insertions, 0 deletions
diff --git a/Library/Formula/libid3tag.rb b/Library/Formula/libid3tag.rb
index 79423b339..07c34b651 100644
--- a/Library/Formula/libid3tag.rb
+++ b/Library/Formula/libid3tag.rb
@@ -26,6 +26,28 @@ Cflags: -I${includedir}
Formula.factory('mad').homepage
end
+ # Fixes serious memory leaks; see https://bugs.launchpad.net/mixxx/+bug/403586
+ def patches
+ base = "http://mirror.ovh.net/gentoo-portage/media-libs/libid3tag/files/0.15.1b/"
+ # patch for utf-16 (memory leaks)
+ { :p1 => ["libid3tag-0.15.1b-utf16.patchlibid3tag-0.15.1b-utf16.patch",
+ "libid3tag-0.15.1b-unknown-encoding.patch",
+ "libid3tag-0.15.1b-compat.patch",
+ "libid3tag-0.15.1b-file-write.patch",
+ ].map { |file_name| "#{base}/#{file_name}" },
+
+ # typedef for 64-bit long + buffer overflow
+ :p0 => ["libid3tag-0.15.1b-64bit-long.patch",
+ "libid3tag-0.15.1b-fix_overflow.patch",
+ "libid3tag-0.15.1b-tag.patch",
+ ].map { |file_name| "#{base}/#{file_name}" },
+
+ # corrects "a cappella" typo
+ :p2 => ["libid3tag-0.15.1b-a_capella.patch",
+ ].map { |file_name| "#{base}/#{file_name}" }
+ }
+ end
+
def install
system "./configure", "--prefix=#{prefix}", "--disable-debug", "--disable-dependency-tracking"
system "make install"