[GTK] Media tests crashing with gst-plugins-bad 1.4.4 and cpp 5.2
authormario@webkit.org <mario@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 12 Oct 2015 12:37:05 +0000 (12:37 +0000)
committermario@webkit.org <mario@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 12 Oct 2015 12:37:05 +0000 (12:37 +0000)
https://bugs.webkit.org/show_bug.cgi?id=150026

Reviewed by Philippe Normand.

Backport upstream patch from gst-plugins-bad so that the right version
of FAAD2 can be found with newer versions of cpp, so that gst-plugins-bad
gets compiled properly, avoiding crashes on runtime while running tests.

* gtk/patches/gst-plugins-bad-fix-faad2-version-check.patch: Added.
* gtk/jhbuild.modules: Referenced the newly added patch for gst-plugins-bad.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@190854 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Tools/ChangeLog
Tools/gtk/jhbuild.modules
Tools/gtk/patches/gst-plugins-bad-fix-faad2-version-check.patch [new file with mode: 0644]

index b795d67..dc32a0a 100644 (file)
@@ -1,3 +1,17 @@
+2015-10-12  Mario Sanchez Prada  <mario@endlessm.com>
+
+        [GTK] Media tests crashing with gst-plugins-bad 1.4.4 and cpp 5.2
+        https://bugs.webkit.org/show_bug.cgi?id=150026
+
+        Reviewed by Philippe Normand.
+
+        Backport upstream patch from gst-plugins-bad so that the right version
+        of FAAD2 can be found with newer versions of cpp, so that gst-plugins-bad
+        gets compiled properly, avoiding crashes on runtime while running tests.
+
+        * gtk/patches/gst-plugins-bad-fix-faad2-version-check.patch: Added.
+        * gtk/jhbuild.modules: Referenced the newly added patch for gst-plugins-bad.
+
 2015-10-11  Myles C. Maxfield  <mmaxfield@apple.com>
 
         Test font-variant-* and font-feature-settings with mocked preinstalled fonts
index fd73cba..0fec738 100644 (file)
             hash="sha256:e41b36105c0a13a2cb1ff9f559714e839b82dc3841484cd664790fb7947e55c7"
             md5sum="972c6e22dd2e44fcf0b04b9d810a56be">
       <patch file="gst-plugins-bad-remove-gnustep-support.patch" strip="1"/>
+      <patch file="gst-plugins-bad-fix-faad2-version-check.patch" strip="1"/>
     </branch>
   </autotools>
 
diff --git a/Tools/gtk/patches/gst-plugins-bad-fix-faad2-version-check.patch b/Tools/gtk/patches/gst-plugins-bad-fix-faad2-version-check.patch
new file mode 100644 (file)
index 0000000..c037f1e
--- /dev/null
@@ -0,0 +1,35 @@
+From 1f738ca5b8711ca5532a326cd646312e60484863 Mon Sep 17 00:00:00 2001
+From: Wim Taymans <wtaymans@redhat.com>
+Date: Wed, 13 May 2015 16:23:26 +0200
+Subject: [PATCH] fix faad2 version check
+
+On fedora 22, the output of cpp inserts extra debug comments, which
+makes our regexp for the faad2 version check fail. This in turn causes
+it to compile with the wrong arguments passed which then causes stack
+corruption and crashes.
+
+Fix this by only checking for the version (which should be by itself on
+a single line). This is potentially less safe, it might be possible that
+a similar string would appear in a later version in the header file.
+
+Fixes https://bugzilla.gnome.org/show_bug.cgi?id=748571
+---
+ configure.ac | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index f5ce28c..d295253 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -2008,9 +2008,9 @@ AG_GST_CHECK_FEATURE(FAAD, [AAC decoder plug-in], faad, [
+       AC_MSG_CHECKING([Checking FAAD2 version in $faad_hdr])
+       for minor in 10 9 8 7 6 5 0; do
+         if test x$faad2_minor_version = "x"; then
+-          AC_EGREP_CPP([GST_CHECK_FAAD_VERSION \"2\.$minor\"], [
++          AC_EGREP_CPP([\"2\.$minor\"$], [
+               #include <$faad_hdr>
+-              GST_CHECK_FAAD_VERSION FAAD2_VERSION
++              FAAD2_VERSION
+             ], [
+               faad2_minor_version=$minor
+             ])