summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Lancaster <alexlan@fedorapeople.org>2011-12-30 13:52:54 -0500
committerAlex Lancaster <alexlan@fedorapeople.org>2011-12-30 13:52:54 -0500
commit8353b1611478e7813f701598f75cd67e16ec4e2d (patch)
treebd0e5facc9b9d0c01644ad2915bb8accf73abb40
parent19c9a1454e07245db3d4639642cb6a7deaae91c9 (diff)
downloadxbmc-rpm-8353b1611478e7813f701598f75cd67e16ec4e2d.tar.gz
xbmc-rpm-8353b1611478e7813f701598f75cd67e16ec4e2d.tar.xz
xbmc-rpm-8353b1611478e7813f701598f75cd67e16ec4e2d.zip
Add additional patch from http://trac.xbmc.org/ticket/12001 to
fix uninitialised pointer with libpng 1.5 Remove upstreamed, or otherwise obsoleted patches
-rw-r--r--xbmc-10-Makefile.patch20
-rw-r--r--xbmc-10-python2.7.patch710
-rw-r--r--xbmc-10.1-Dharma-335-Python_parse_had_wrong_native_type-0.1.patch12
-rw-r--r--xbmc-11.0-libpng-1.5-fix-plt-trn-get.patch51
-rw-r--r--xbmc-support_newer_libbluray.patch217
-rw-r--r--xbmc.spec40
6 files changed, 64 insertions, 986 deletions
diff --git a/xbmc-10-Makefile.patch b/xbmc-10-Makefile.patch
deleted file mode 100644
index ba7aa97..0000000
--- a/xbmc-10-Makefile.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- Makefile.in.orig 2010-08-20 00:24:13.000000000 -0400
-+++ Makefile.in 2010-08-20 00:25:20.956267798 -0400
-@@ -518,7 +518,6 @@
- endif
-
- install-arch:
-- @# Arch dependent files
- @find system addons -regextype posix-extended -type f -not -iregex ".*svn.*|.*script\.module\..*" -iregex ".*$(ARCH).*|.*\.vis|.*\.xbs|.*python.*\.zip" -exec install -D "{}" $(DESTDIR)$(libdir)/xbmc/"{}" \; -printf " -- %-75.75f\r"
- @cp -r addons/script.module.pil $(DESTDIR)$(libdir)/xbmc/addons/
- @cp -r addons/script.module.pysqlite $(DESTDIR)$(libdir)/xbmc/addons/
-@@ -535,9 +534,7 @@
- install -D -m 0644 "$$FILE" "$(DESTDIR)$(docdir)/$$FILE"; done
- @echo "Done!"
- @echo "Copying system files to $(DESTDIR)$(datarootdir)/xbmc"
-- @# Arch independent files
- @find addons language media sounds userdata system -regextype posix-extended -type f -not -iregex ".*script\.module\..*|.*$(ARCH).*|.*\.vis|.*\.xbs|.*svn.*|.*\.so|.*\.dll|.*\.pyd|.*python.*\.zip" -exec install -D -m 0644 "{}" $(DESTDIR)$(datarootdir)/xbmc/"{}" \; -printf " -- %-75.75f\r"
-- @# Icons and links
- @mkdir -p $(DESTDIR)$(datarootdir)/applications
- @cp -a tools/Linux/xbmc.desktop $(DESTDIR)$(datarootdir)/applications/
- @install -D -m 0644 tools/Linux/xbmc-48x48.png $(DESTDIR)$(datadir)/icons/hicolor/48x48/apps/xbmc.png
diff --git a/xbmc-10-python2.7.patch b/xbmc-10-python2.7.patch
deleted file mode 100644
index 91e43fd..0000000
--- a/xbmc-10-python2.7.patch
+++ /dev/null
@@ -1,710 +0,0 @@
-Index: xbmc/lib/libPython/linux/Makefile.in
-===================================================================
---- xbmc/lib/libPython/linux/Makefile.in (revision 32022)
-+++ xbmc/lib/libPython/linux/Makefile.in (working copy)
-@@ -5,7 +5,10 @@
- SHELL=/bin/bash
- SYSDIR=../../../../system/python
-
--ifeq (@USE_PYTHON2_6@,1)
-+ifeq (@USE_PYTHON2_7@,1)
-+ PYVERSION=python2.7
-+ SO=python27-$(ARCH).so
-+else ifeq (@USE_PYTHON2_6@,1)
- PYVERSION=python2.6
- SO=python26-$(ARCH).so
- else ifeq (@USE_PYTHON2_5@,1)
-Index: xbmc/lib/libPython/xbmcmodule/winxmldialog.cpp
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/winxmldialog.cpp (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/winxmldialog.cpp (working copy)
-@@ -24,7 +24,9 @@
- #endif
- #include "winxml.h"
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/dialog.h
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/dialog.h (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/dialog.h (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/xbmcguimodule.cpp
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/xbmcguimodule.cpp (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/xbmcguimodule.cpp (working copy)
-@@ -23,7 +23,10 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #include <python2.7/structmember.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #include <python2.6/structmember.h>
- #elif (defined HAVE_LIBPYTHON2_5)
-Index: xbmc/lib/libPython/xbmcmodule/keyboard.h
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/keyboard.h (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/keyboard.h (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/xbmcaddonmodule.cpp
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/xbmcaddonmodule.cpp (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/xbmcaddonmodule.cpp (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/pyplaylist.cpp
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/pyplaylist.cpp (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/pyplaylist.cpp (working copy)
-@@ -26,7 +26,9 @@
- #include "Util.h"
- #include "pyplaylist.h"
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/controllist.cpp
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/controllist.cpp (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/controllist.cpp (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/winxml.cpp
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/winxml.cpp (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/winxml.cpp (working copy)
-@@ -24,7 +24,9 @@
- #endif
- #include "winxml.h"
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/controllabel.cpp
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/controllabel.cpp (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/controllabel.cpp (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/action.h
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/action.h (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/action.h (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/controlslider.cpp
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/controlslider.cpp (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/controlslider.cpp (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/controlimage.cpp
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/controlimage.cpp (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/controlimage.cpp (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/infotagvideo.h
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/infotagvideo.h (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/infotagvideo.h (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/control.h
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/control.h (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/control.h (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/controlradiobutton.cpp
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/controlradiobutton.cpp (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/controlradiobutton.cpp (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/controlgroup.cpp
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/controlgroup.cpp (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/controlgroup.cpp (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/infotagmusic.h
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/infotagmusic.h (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/infotagmusic.h (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/controltextbox.cpp
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/controltextbox.cpp (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/controltextbox.cpp (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/listitem.h
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/listitem.h (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/listitem.h (working copy)
-@@ -25,7 +25,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/xbmcmodule.cpp
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/xbmcmodule.cpp (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/xbmcmodule.cpp (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/dialog.cpp
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/dialog.cpp (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/dialog.cpp (working copy)
-@@ -24,7 +24,9 @@
- #endif
- #include "dialog.h"
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/controlfadelabel.cpp
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/controlfadelabel.cpp (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/controlfadelabel.cpp (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/player.h
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/player.h (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/player.h (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/PythonPlayer.h
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/PythonPlayer.h (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/PythonPlayer.h (working copy)
-@@ -25,7 +25,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/controlprogress.cpp
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/controlprogress.cpp (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/controlprogress.cpp (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/controlspin.cpp
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/controlspin.cpp (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/controlspin.cpp (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/controlbutton.cpp
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/controlbutton.cpp (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/controlbutton.cpp (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/window.h
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/window.h (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/window.h (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/pyplaylist.h
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/pyplaylist.h (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/pyplaylist.h (working copy)
-@@ -25,7 +25,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/GUIPythonWindow.h
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/GUIPythonWindow.h (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/GUIPythonWindow.h (working copy)
-@@ -26,7 +26,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/winxml.h
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/winxml.h (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/winxml.h (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/controlcheckmark.cpp
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/controlcheckmark.cpp (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/controlcheckmark.cpp (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/listitem.cpp
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/listitem.cpp (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/listitem.cpp (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/pyutil.h
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/pyutil.h (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/pyutil.h (working copy)
-@@ -25,7 +25,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/xbmcmodule/PythonAddon.h
-===================================================================
---- xbmc/lib/libPython/xbmcmodule/PythonAddon.h (revision 32022)
-+++ xbmc/lib/libPython/xbmcmodule/PythonAddon.h (working copy)
-@@ -25,7 +25,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/XBPyThread.h
-===================================================================
---- xbmc/lib/libPython/XBPyThread.h (revision 32022)
-+++ xbmc/lib/libPython/XBPyThread.h (working copy)
-@@ -26,7 +26,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-Index: xbmc/lib/libPython/XBPythonDllFuncs.S
-===================================================================
---- xbmc/lib/libPython/XBPythonDllFuncs.S (revision 32022)
-+++ xbmc/lib/libPython/XBPythonDllFuncs.S (working copy)
-@@ -2,7 +2,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/pyconfig.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/pyconfig.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/pyconfig.h>
-Index: xbmc/lib/libPython/XBPythonDll.cpp
-===================================================================
---- xbmc/lib/libPython/XBPythonDll.cpp (revision 32022)
-+++ xbmc/lib/libPython/XBPythonDll.cpp (working copy)
-@@ -23,7 +23,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/pyconfig.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/pyconfig.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/pyconfig.h>
-Index: xbmc/lib/libPython/XBPyThread.cpp
-===================================================================
---- xbmc/lib/libPython/XBPyThread.cpp (revision 32022)
-+++ xbmc/lib/libPython/XBPyThread.cpp (working copy)
-@@ -24,7 +24,10 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #include <python2.7/osdefs.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #include <python2.6/osdefs.h>
- #elif (defined HAVE_LIBPYTHON2_5)
-Index: xbmc/lib/libPython/XBPython.cpp
-===================================================================
---- xbmc/lib/libPython/XBPython.cpp (revision 32022)
-+++ xbmc/lib/libPython/XBPython.cpp (working copy)
-@@ -24,7 +24,9 @@
- #include "config.h"
- #endif
- #if (defined USE_EXTERNAL_PYTHON)
-- #if (defined HAVE_LIBPYTHON2_6)
-+ #if (defined HAVE_LIBPYTHON2_7)
-+ #include <python2.7/Python.h>
-+ #elif (defined HAVE_LIBPYTHON2_6)
- #include <python2.6/Python.h>
- #elif (defined HAVE_LIBPYTHON2_5)
- #include <python2.5/Python.h>
-@@ -63,7 +63,9 @@
- #define PYTHON_DLL "special://xbmcbin/system/python/python24-x86-osx.so"
- #endif
- #elif defined(__x86_64__)
--#if (defined HAVE_LIBPYTHON2_6)
-+#if (defined HAVE_LIBPYTHON2_7)
-+#define PYTHON_DLL "special://xbmcbin/system/python/python27-x86_64-linux.so"
-+#elif (defined HAVE_LIBPYTHON2_6)
- #define PYTHON_DLL "special://xbmcbin/system/python/python26-x86_64-linux.so"
- #elif (defined HAVE_LIBPYTHON2_5)
- #define PYTHON_DLL "special://xbmcbin/system/python/python25-x86_64-linux.so"
-@@ -71,7 +73,9 @@
- #define PYTHON_DLL "special://xbmcbin/system/python/python24-x86_64-linux.so"
- #endif
- #elif defined(_POWERPC)
--#if (defined HAVE_LIBPYTHON2_6)
-+#if (defined HAVE_LIBPYTHON2_7)
-+#define PYTHON_DLL "special://xbmcbin/system/python/python27-powerpc-linux.so"
-+#elif (defined HAVE_LIBPYTHON2_6)
- #define PYTHON_DLL "special://xbmcbin/system/python/python26-powerpc-linux.so"
- #elif (defined HAVE_LIBPYTHON2_5)
- #define PYTHON_DLL "special://xbmcbin/system/python/python25-powerpc-linux.so"
-@@ -79,7 +83,9 @@
- #define PYTHON_DLL "special://xbmcbin/system/python/python24-powerpc-linux.so"
- #endif
- #elif defined(_POWERPC64)
--#if (defined HAVE_LIBPYTHON2_6)
-+#if (defined HAVE_LIBPYTHON2_7)
-+#define PYTHON_DLL "special://xbmcbin/system/python/python27-powerpc64-linux.so"
-+#elif (defined HAVE_LIBPYTHON2_6)
- #define PYTHON_DLL "special://xbmcbin/system/python/python26-powerpc64-linux.so"
- #elif (defined HAVE_LIBPYTHON2_5)
- #define PYTHON_DLL "special://xbmcbin/system/python/python25-powerpc64-linux.so"
-@@ -87,7 +93,9 @@
- #define PYTHON_DLL "special://xbmcbin/system/python/python24-powerpc64-linux.so"
- #endif
- #elif defined(_ARMEL)
--#if (defined HAVE_LIBPYTHON2_6)
-+#if (defined HAVE_LIBPYTHON2_7)
-+#define PYTHON_DLL "special://xbmc/system/python/python27-arm.so"
-+#elif (defined HAVE_LIBPYTHON2_6)
- #define PYTHON_DLL "special://xbmc/system/python/python26-arm.so"
- #elif (defined HAVE_LIBPYTHON2_5)
- #define PYTHON_DLL "special://xbmc/system/python/python25-arm.so"
-@@ -95,7 +103,9 @@
- #define PYTHON_DLL "special://xbmc/system/python/python24-arm.so"
- #endif
- #else /* !__x86_64__ && !__powerpc__ */
--#if (defined HAVE_LIBPYTHON2_6)
-+#if (defined HAVE_LIBPYTHON2_7)
-+#define PYTHON_DLL "special://xbmcbin/system/python/python27-i486-linux.so"
-+#elif (defined HAVE_LIBPYTHON2_6)
- #define PYTHON_DLL "special://xbmcbin/system/python/python26-i486-linux.so"
- #elif (defined HAVE_LIBPYTHON2_5)
- #define PYTHON_DLL "special://xbmcbin/system/python/python25-i486-linux.so"
-Index: configure.in
-===================================================================
---- configure.in (revision 32022)
-+++ configure.in (working copy)
-@@ -835,7 +835,11 @@
-
- # External Python
- if test "$use_external_python" = "yes"; then
-- AC_CHECK_LIB([python2.6], [main],
-+ AC_CHECK_LIB([python2.7], [main],
-+ [AC_DEFINE([HAVE_LIBPYTHON2_7], [1],
-+ [Define to 1 if you have the 'python2.7' library.])
-+ USE_PYTHON2_7=1],
-+ [AC_CHECK_LIB([python2.6], [main],
- [AC_DEFINE([HAVE_LIBPYTHON2_6], [1],
- [Define to 1 if you have the 'python2.6' library.])
- USE_PYTHON2_6=1],
-@@ -847,9 +851,10 @@
- [AC_DEFINE([HAVE_LIBPYTHON2_4], [1],
- [Define to 1 if you have the 'python2.4' library.])
- USE_PYTHON2_4=1],
-- [AC_MSG_ERROR($missing_library)] )] )] )
-+ [AC_MSG_ERROR($missing_library)] )] )] )] )
-
- AC_MSG_NOTICE($external_python_enabled)
-+ test "$USE_PYTHON2_7" && AC_MSG_NOTICE([Using Python 2.7])
- test "$USE_PYTHON2_6" && AC_MSG_NOTICE([Using Python 2.6])
- test "$USE_PYTHON2_5" && AC_MSG_NOTICE([Using Python 2.5])
- test "$USE_PYTHON2_4" && AC_MSG_NOTICE([Using Python 2.4])
-@@ -1429,6 +1434,7 @@
- AC_SUBST(USE_EXTERNAL_LIBMPEG2)
- AC_SUBST(USE_EXTERNAL_LIBWAVPACK)
- AC_SUBST(USE_EXTERNAL_PYTHON)
-+AC_SUBST(USE_PYTHON2_7)
- AC_SUBST(USE_PYTHON2_6)
- AC_SUBST(USE_PYTHON2_5)
- AC_SUBST(USE_PYTHON2_4)
diff --git a/xbmc-10.1-Dharma-335-Python_parse_had_wrong_native_type-0.1.patch b/xbmc-10.1-Dharma-335-Python_parse_had_wrong_native_type-0.1.patch
deleted file mode 100644
index 27823a1..0000000
--- a/xbmc-10.1-Dharma-335-Python_parse_had_wrong_native_type-0.1.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur xbmc-10.1-Dharma/xbmc/lib/libPython/xbmcmodule/xbmcplugin.cpp xbmc-10.1-Dharma.patch/xbmc/lib/libPython/xbmcmodule/xbmcplugin.cpp
---- xbmc-10.1-Dharma/xbmc/lib/libPython/xbmcmodule/xbmcplugin.cpp 2011-03-08 02:49:14.000000000 +0100
-+++ xbmc-10.1-Dharma.patch/xbmc/lib/libPython/xbmcmodule/xbmcplugin.cpp 2011-08-21 17:13:13.382281536 +0200
-@@ -74,7 +74,7 @@
- if (!PyArg_ParseTupleAndKeywords(
- args,
- kwds,
-- (char*)"iOO|bl",
-+ (char*)"iOO|bi",
- (char**)keywords,
- &handle,
- &pURL,
diff --git a/xbmc-11.0-libpng-1.5-fix-plt-trn-get.patch b/xbmc-11.0-libpng-1.5-fix-plt-trn-get.patch
new file mode 100644
index 0000000..7e6ce67
--- /dev/null
+++ b/xbmc-11.0-libpng-1.5-fix-plt-trn-get.patch
@@ -0,0 +1,51 @@
+
+Update libpng 1.5 patch: check return values of png_get_PLTE() and
+png_get_tRNS() before using the values to avoid using uninitialized values.
+
+--- a/lib/cximage-6.0/CxImage/ximapng.cpp
++++ b/lib/cximage-6.0/CxImage/ximapng.cpp
+@@ -178,12 +178,14 @@ bool CxImagePNG::Decode(CxFile *hFile)
+ int _num_palette;
+ png_colorp _palette;
+ #if PNG_LIBPNG_VER > 10399
+- png_get_PLTE(png_ptr,info_ptr,&_palette,&_num_palette);
++ png_uint_32 _palette_ret;
++ _palette_ret = png_get_PLTE(png_ptr,info_ptr,&_palette,&_num_palette);
++ if (_palette_ret && _num_palette>0){
+ #else
+ _num_palette=info_ptr->num_palette;
+ _palette=info_ptr->palette;
+-#endif
+ if (_num_palette>0){
++#endif
+ SetPalette((rgb_color*)_palette,_num_palette);
+ SetClrImportant(_num_palette);
+ } else if (_bit_depth ==2) { //<DP> needed for 2 bpp grayscale PNGs
+@@ -199,11 +201,13 @@ bool CxImagePNG::Decode(CxFile *hFile)
+ int _num_trans;
+ png_color_16p _trans_color;
+ #if PNG_LIBPNG_VER > 10399
+- png_get_tRNS(png_ptr,info_ptr,&_trans_alpha,&_num_trans,&_trans_color);
++ png_uint_32 _trans_ret;
++ _trans_ret = png_get_tRNS(png_ptr,info_ptr,&_trans_alpha,&_num_trans,&_trans_color);
++ if (_trans_ret && _num_trans!=0){ //palette transparency
+ #else
+ _num_trans=info_ptr->num_trans;
+-#endif
+ if (_num_trans!=0){ //palette transparency
++#endif
+ if (_num_trans==1){
+ if (_color_type == PNG_COLOR_TYPE_PALETTE){
+ #if PNG_LIBPNG_VER > 10399
+@@ -219,7 +223,11 @@ bool CxImagePNG::Decode(CxFile *hFile)
+ #endif
+ }
+ }
++#if PNG_LIBPNG_VER > 10399
++ if (_num_trans>1 && _trans_alpha!=NULL){
++#else
+ if (_num_trans>1){
++#endif
+ RGBQUAD* pal=GetPalette();
+ if (pal){
+ DWORD ip;
diff --git a/xbmc-support_newer_libbluray.patch b/xbmc-support_newer_libbluray.patch
deleted file mode 100644
index a048e86..0000000
--- a/xbmc-support_newer_libbluray.patch
+++ /dev/null
@@ -1,217 +0,0 @@
-diff -Naur xbmc-10.1.orig/configure.in xbmc-10.1/configure.in
---- xbmc-10.1.orig/configure.in 2011-12-14 21:34:38.000000000 +0100
-+++ xbmc-10.1/configure.in 2011-12-14 21:36:57.000000000 +0100
-@@ -56,6 +56,17 @@
- fi
- ])
-
-+# Function to push and pop libs and includes for a command
-+AC_DEFUN([XB_PUSH_FLAGS], [
-+ SAVE_LIBS="$LIBS"
-+ SAVE_INCLUDES="$INCLUDES"
-+ LIBS="[$2]"
-+ INCLUDES="[$1]"
-+ [$3]
-+ LIBS="$SAVE_LIBS"
-+ INCLUDES="$SAVE_INCLUDES"
-+])
-+
- # General message strings
- configure_debug="ERROR: this is a configure debug statement"
- missing_library="Could not find a required library. Please see the README for your platform."
-@@ -614,6 +625,32 @@
- fi;
- AC_DEFINE([HAVE_LIBBLURAY], 1, [System has libbluray library])
- AC_SUBST([HAVE_LIBBLURAY], 1)
-+
-+ XB_PUSH_FLAGS(
-+ [$LIBBLURAY_CFLAGS]
-+ , [$LIBBLURAY_LIBS]
-+
-+ , AC_MSG_CHECKING([libbluray version])
-+ AC_COMPILE_IFELSE(
-+ AC_LANG_PROGRAM(
-+ [#include <libbluray/bluray.h>]
-+ ,[bd_get_playlist_info(0, 0)])
-+ ,[AC_MSG_RESULT(version has old angle api)
-+ AC_DEFINE([HAVE_LIBBLURAY_NOANGLE],[],[System has an old api libbluray without angle support])]
-+ ,[AC_MSG_RESULT(normal)]
-+ )
-+
-+ AC_MSG_CHECKING([for libbluray log control])
-+ AC_LINK_IFELSE(
-+ AC_LANG_PROGRAM(
-+ [#include <libbluray/bluray.h>
-+ #include <libbluray/log_control.h>]
-+ ,[bd_set_debug_mask(0)])
-+ , AC_MSG_RESULT(yes)
-+ ,[AC_MSG_RESULT(no)
-+ AC_DEFINE([HAVE_LIBBLURAY_NOLOGCONTROL],[],[System has an old api libbluray without log support])]
-+ )
-+ )
- ],[
- # AC_DEFINE([HAVE_LIBBLURAY], 0, [System has libbluray library])
- AC_SUBST([HAVE_LIBBLURAY], 0)
-diff -Naur xbmc-10.1.orig/xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreamBluray.cpp xbmc-10.1/xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreamBluray.cpp
---- xbmc-10.1.orig/xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreamBluray.cpp 2011-03-05 04:33:37.000000000 +0100
-+++ xbmc-10.1/xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreamBluray.cpp 2011-12-14 21:36:49.000000000 +0100
-@@ -34,15 +34,18 @@
- {
- #include <libbluray/bluray.h>
- #include <libbluray/filesystem.h>
-+#ifndef HAVE_LIBBLURAY_NOLOGCONTROL
-+#include <libbluray/log_control.h>
-+#endif
- }
-
- class DllLibblurayInterface
- {
- public:
- virtual ~DllLibblurayInterface() {};
-- virtual uint32_t bd_get_titles(BLURAY *bd, uint8_t flags)=0;
-- virtual BLURAY_TITLE_INFO* bd_get_title_info(BLURAY *bd, uint32_t title_idx)=0;
-- virtual BLURAY_TITLE_INFO* bd_get_playlist_info(BLURAY *bd, uint32_t playlist)=0;
-+ virtual uint32_t bd_get_titles(BLURAY *bd, uint8_t flags, uint32_t min_title_length)=0;
-+ virtual BLURAY_TITLE_INFO* bd_get_title_info(BLURAY *bd, uint32_t title_idx, unsigned angle)=0;
-+ virtual BLURAY_TITLE_INFO* bd_get_playlist_info(BLURAY *bd, uint32_t playlist, unsigned angle)=0;
- virtual void bd_free_title_info(BLURAY_TITLE_INFO *title_info)=0;
- virtual BLURAY *bd_open(const char* device_path, const char* keyfile_path)=0;
- virtual void bd_close(BLURAY *bd)=0;
-@@ -64,15 +67,26 @@
- virtual uint64_t bd_tell_time(BLURAY *bd)=0;
- virtual BD_FILE_OPEN bd_register_file(BD_FILE_OPEN p)=0;
- virtual BD_DIR_OPEN bd_register_dir(BD_DIR_OPEN p)=0;
-+
-+#ifndef HAVE_LIBBLURAY_NOLOGCONTROL
-+ virtual void bd_set_debug_handler(BD_LOG_FUNC)=0;
-+ virtual void bd_set_debug_mask(uint32_t mask)=0;
-+ virtual uint32_t bd_get_debug_mask(void)=0;
-+#endif
- };
-
- class DllLibbluray : public DllDynamic, DllLibblurayInterface
- {
- DECLARE_DLL_WRAPPER(DllLibbluray, DLL_PATH_LIBBLURAY)
--
-- DEFINE_METHOD2(uint32_t, bd_get_titles, (BLURAY *p1, uint8_t p2))
-- DEFINE_METHOD2(BLURAY_TITLE_INFO*, bd_get_title_info, (BLURAY *p1, uint32_t p2))
-- DEFINE_METHOD2(BLURAY_TITLE_INFO*, bd_get_playlist_info, (BLURAY *p1, uint32_t p2))
-+#ifdef HAVE_LIBBBLURAY_HAVE_LIBBLURAY_NOANGLE
-+ DEFINE_METHOD3(uint32_t, bd_get_titles, (BLURAY *p1, uint8_t p2))
-+ DEFINE_METHOD3(BLURAY_TITLE_INFO*, bd_get_title_info, (BLURAY *p1, uint32_t p2))
-+ DEFINE_METHOD3(BLURAY_TITLE_INFO*, bd_get_playlist_info, (BLURAY *p1, uint32_t p2))
-+#else
-+ DEFINE_METHOD3(uint32_t, bd_get_titles, (BLURAY *p1, uint8_t p2, uint32_t p3))
-+ DEFINE_METHOD3(BLURAY_TITLE_INFO*, bd_get_title_info, (BLURAY *p1, uint32_t p2, unsigned p3))
-+ DEFINE_METHOD3(BLURAY_TITLE_INFO*, bd_get_playlist_info, (BLURAY *p1, uint32_t p2, unsigned p3))
-+#endif
- DEFINE_METHOD1(void, bd_free_title_info, (BLURAY_TITLE_INFO *p1))
- DEFINE_METHOD2(BLURAY*, bd_open, (const char* p1, const char* p2))
- DEFINE_METHOD1(void, bd_close, (BLURAY *p1))
-@@ -95,10 +109,22 @@
- DEFINE_METHOD1(BD_FILE_OPEN, bd_register_file, (BD_FILE_OPEN p1))
- DEFINE_METHOD1(BD_DIR_OPEN, bd_register_dir, (BD_DIR_OPEN p1))
-
-+#ifndef HAVE_LIBBLURAY_NOLOGCONTROL
-+ DEFINE_METHOD1(void, bd_set_debug_handler, (BD_LOG_FUNC p1))
-+ DEFINE_METHOD1(void, bd_set_debug_mask, (uint32_t p1))
-+ DEFINE_METHOD0(uint32_t, bd_get_debug_mask)
-+#endif
-+
- BEGIN_METHOD_RESOLVE()
-- RESOLVE_METHOD_RENAME(bd_get_titles, bd_get_titles)
-- RESOLVE_METHOD_RENAME(bd_get_title_info, bd_get_title_info)
-- RESOLVE_METHOD_RENAME(bd_get_playlist_info, bd_get_playlist_info)
-+#ifdef HAVE_LIBBBLURAY_HAVE_LIBBLURAY_NOANGLE
-+ RESOLVE_METHOD_RENAME(bd_get_titles, bd_get_titles_noangle)
-+ RESOLVE_METHOD_RENAME(bd_get_title_info, bd_get_title_info_noangle)
-+ RESOLVE_METHOD_RENAME(bd_get_playlist_info, bd_get_playlist_info_noangle)
-+#else
-+ RESOLVE_METHOD(bd_get_titles)
-+ RESOLVE_METHOD(bd_get_title_info)
-+ RESOLVE_METHOD(bd_get_playlist_info)
-+#endif
- RESOLVE_METHOD_RENAME(bd_free_title_info, bd_free_title_info)
- RESOLVE_METHOD_RENAME(bd_open, bd_open)
- RESOLVE_METHOD_RENAME(bd_close, bd_close)
-@@ -120,7 +146,21 @@
- RESOLVE_METHOD_RENAME(bd_tell_time, bd_tell_time)
- RESOLVE_METHOD_RENAME(bd_register_file, bd_register_file)
- RESOLVE_METHOD_RENAME(bd_register_dir, bd_register_dir)
-+#ifndef HAVE_LIBBLURAY_NOLOGCONTROL
-+ RESOLVE_METHOD(bd_set_debug_handler)
-+ RESOLVE_METHOD(bd_set_debug_mask)
-+ RESOLVE_METHOD(bd_get_debug_mask)
-+#endif
- END_METHOD_RESOLVE()
-+
-+#ifdef HAVE_LIBBBLURAY_HAVE_LIBBLURAY_NOANGLE
-+ uint32_t bd_get_titles(BLURAY *bd, uint8_t flags, uint32_t min_title_length)
-+ {return bd_get_titles_noangle(bd, flags); }
-+ BLURAY_TITLE_INFO* bd_get_title_info(BLURAY *bd, uint32_t title_idx, unsigned angle)
-+ {return bd_get_title_info_noangle(bd, title_idx); }
-+ BLURAY_TITLE_INFO* bd_get_playlist_info(BLURAY *bd, uint32_t playlist, unsigned angle)
-+ {return bd_get_playlist_info_noangle(bd, playlist); }
-+#endif
- };
-
-
-@@ -250,6 +290,14 @@
- return dir;
- }
-
-+
-+#ifndef HAVE_LIBBLURAY_NOLOGCONTROL
-+static void bluray_logger(const char* msg)
-+{
-+ CLog::Log(LOGDEBUG, "CDVDInputStreamBluray::Logger - %s", msg);
-+}
-+#endif
-+
- CDVDInputStreamBluray::CDVDInputStreamBluray() :
- CDVDInputStream(DVDSTREAM_TYPE_BLURAY)
- {
-@@ -290,6 +338,10 @@
-
- m_dll->bd_register_dir(dir_open);
- m_dll->bd_register_file(file_open);
-+#ifndef HAVE_LIBBLURAY_NOLOGCONTROL
-+ m_dll->bd_set_debug_handler(bluray_logger);
-+ m_dll->bd_set_debug_mask(DBG_CRIT);
-+#endif
-
- CLog::Log(LOGDEBUG, "CDVDInputStreamBluray::Open - opening %s", strPath.c_str());
- m_bd = m_dll->bd_open(strPath.c_str(), NULL);
-@@ -303,12 +355,12 @@
- CStdString filename = CUtil::GetFileName(strFile);
- if(filename.Equals("index.bdmv"))
- {
-- int titles = m_dll->bd_get_titles(m_bd, TITLES_RELEVANT);
-+ int titles = m_dll->bd_get_titles(m_bd, TITLES_RELEVANT, 0);
-
- BLURAY_TITLE_INFO *t, *s = NULL;
- for(int i=0; i < titles; i++)
- {
-- t = m_dll->bd_get_title_info(m_bd, i);;
-+ t = m_dll->bd_get_title_info(m_bd, i, 0);
- if(!t)
- {
- CLog::Log(LOGDEBUG, "get_main_title - unable to get title %d", i);
-@@ -324,7 +376,7 @@
- }
- else if(CUtil::GetExtension(filename).Equals(".mpls"))
- {
-- int titles = m_dll->bd_get_titles(m_bd, TITLES_ALL);
-+ int titles = m_dll->bd_get_titles(m_bd, TITLES_ALL, 0);
- do
- {
- if(titles < 0)
-@@ -345,7 +397,7 @@
- BLURAY_TITLE_INFO *t;
- for(int i=0; i < titles; i++)
- {
-- t = m_dll->bd_get_title_info(m_bd, i);;
-+ t = m_dll->bd_get_title_info(m_bd, i, 0);
- if(!t)
- {
- CLog::Log(LOGDEBUG, "get_playlist_title - unable to get title %d", i);
diff --git a/xbmc.spec b/xbmc.spec
index d0f3b92..b7d5907 100644
--- a/xbmc.spec
+++ b/xbmc.spec
@@ -5,7 +5,7 @@
Name: xbmc
Version: 11.0
-Release: 0.4.%{PRERELEASE}%{?dist}
+Release: 0.5.%{PRERELEASE}%{?dist}
URL: http://www.xbmc.org/
Source0: %{name}-%{DIRVERSION}-patched.tar.xz
@@ -36,29 +36,14 @@ Patch3: xbmc-10-disable-zlib-in-cximage.patch
# functionality, needs to be able fallback internal version
Patch4: xbmc-11.0-hdhomerun.patch
-# fix "@#" in Makefile which seem to screw things up no trac filed
-# yet, don't know why this isn't a problem on other Linux systems
-Patch5: xbmc-10-Makefile.patch
-
-# add patch from upstream trac http://trac.xbmc.org/ticket/9584
-# to find Python 2.7 (needed for F-14+)
-Patch6: xbmc-10-python2.7.patch
-
-# patch from upstream to fix builds for GCC 4.6.x
-# (committed to git upstream: http://trac.xbmc.org/ticket/11383)
-Patch7: xbmc-Dharma-10.1-gcc-4.6-fixes-0.1.patch
-
-# upstream patches for newer libbluray support
-# commit 8c1504d0a647271ee48ff83c6eac2cd4b7670df0
-# commit e41dd86046cabe84493453c6588baaf5279710fd
-# commit d17f271d6489cc76494fbc4f3e8017a97d947af4
-Patch8: xbmc-support_newer_libbluray.patch
# libpng 1.5 patch from gentoo
# http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/media-tv/xbmc/files/xbmc-10.1-libpng-1.5.patch
-Patch9: xbmc-10.1-libpng-1.5.patch
-
-Patch10: xbmc-10.1-Dharma-335-Python_parse_had_wrong_native_type-0.1.patch
+# following two patches both submitted upstream:
+# http://trac.xbmc.org/ticket/12001
+Patch5: xbmc-10.1-libpng-1.5.patch
+# second libpng 1.5 patch avoids use of uninitialised values
+Patch6: xbmc-11.0-libpng-1.5-fix-plt-trn-get.patch
ExcludeArch: ppc64
Buildroot: %{_tmppath}/%{name}-%{version}
@@ -209,12 +194,8 @@ library.
%patch2 -p0
#patch3 -p0
%patch4 -p0
-#patch5 -p0
-#patch6 -p0
-#patch7 -p1
-#patch8 -p1
-%patch9 -p2
-#patch10 -p1
+%patch5 -p2
+%patch6 -p1
%build
@@ -290,6 +271,11 @@ rm -rf $RPM_BUILD_ROOT
%{_includedir}/xbmc/xbmcclient.h
%changelog
+* Fri Dec 30 2011 Alex Lancaster <alexlan[AT]fedoraproject org> - 11.0-0.5.Eden_beta1
+- Add additional patch from http://trac.xbmc.org/ticket/12001 to
+ fix uninitialised pointer with libpng 1.5
+- Remove upstreamed, or otherwise obsoleted patches
+
* Thu Dec 29 2011 Alex Lancaster <alexlan[AT] fedoraproject org> - 11.0-0.4.Eden_beta1
- Enable libpng 1.5 patch, still needed, upstream bug is at:
http://trac.xbmc.org/ticket/12001