rpms/nautilus-dropbox/devel add_startup_delay.patch, NONE, 1.1 nautilus-dropbox.spec, 1.2, 1.3
by Leigh Scott
Author: leigh123linux
Update of /cvs/nonfree/rpms/nautilus-dropbox/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv30459
Modified Files:
nautilus-dropbox.spec
Added Files:
add_startup_delay.patch
Log Message:
* Sun May 31 2015 Leigh Scott <leigh123linux(a)googlemail.com> - 1:2.10.0-3
- add 10 second delay to autostart to ensure it loads on session startup
add_startup_delay.patch:
dropbox.desktop | 1 +
1 file changed, 1 insertion(+)
--- NEW FILE add_startup_delay.patch ---
--- a/data/dropbox.desktop 2010-04-09 00:21:32.000000000 +0100
+++ b/data/dropbox.desktop 2015-05-31 13:35:10.060606793 +0100
@@ -8,3 +8,4 @@ Type=Application
Icon=dropbox
Categories=Network;FileTransfer;
StartupNotify=false
+X-GNOME-Autostart-Delay=10
Index: nautilus-dropbox.spec
===================================================================
RCS file: /cvs/nonfree/rpms/nautilus-dropbox/devel/nautilus-dropbox.spec,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- nautilus-dropbox.spec 7 Jan 2015 09:59:18 -0000 1.2
+++ nautilus-dropbox.spec 31 May 2015 12:41:33 -0000 1.3
@@ -1,13 +1,16 @@
Name: nautilus-dropbox
Epoch: 1
Version: 2.10.0
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: Dropbox extension for Nautilus
License: GPLv3+
Group: User Interface/Desktops
URL: https://www.dropbox.com
Source: https://linux.dropbox.com/packages/%{name}-%{version}.tar.bz2
+# add 10 second delay to autostart to ensure it loads on session startup
+Patch0: add_startup_delay.patch
+
ExclusiveArch: i686 x86_64
BuildRequires: desktop-file-utils
@@ -37,6 +40,7 @@
%prep
%setup -q
+%patch0 -p1
%build
%configure --disable-static
@@ -77,6 +81,9 @@
%{_libdir}/nautilus/extensions-3.0/libnautilus-dropbox.so
%changelog
+* Sun May 31 2015 Leigh Scott <leigh123linux(a)googlemail.com> - 1:2.10.0-3
+- add 10 second delay to autostart to ensure it loads on session startup
+
* Wed Jan 07 2015 Leigh Scott <leigh123linux(a)googlemail.com> - 1:2.10.0-2
- add ExclusiveArch
9 years, 5 months
rpms/vdr-skindesigner/devel .cvsignore, 1.35, 1.36 sources, 1.36, 1.37 vdr-skindesigner.spec, 1.39, 1.40
by Martin Gansser
Author: martinkg
Update of /cvs/free/rpms/vdr-skindesigner/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv17338/devel
Modified Files:
.cvsignore sources vdr-skindesigner.spec
Log Message:
Index: .cvsignore
===================================================================
RCS file: /cvs/free/rpms/vdr-skindesigner/devel/.cvsignore,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -r1.35 -r1.36
--- .cvsignore 22 May 2015 19:05:51 -0000 1.35
+++ .cvsignore 30 May 2015 19:17:59 -0000 1.36
@@ -1 +1 @@
-vdr-plugin-skindesigner-0.4.8.tar.bz2
+vdr-plugin-skindesigner-0.5.0.tar.bz2
Index: sources
===================================================================
RCS file: /cvs/free/rpms/vdr-skindesigner/devel/sources,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -r1.36 -r1.37
--- sources 22 May 2015 19:05:51 -0000 1.36
+++ sources 30 May 2015 19:17:59 -0000 1.37
@@ -1 +1 @@
-83ce29f192727a27c60412a86143aa68 vdr-plugin-skindesigner-0.4.8.tar.bz2
+95e6fbd21791be2f59326cf9376a6012 vdr-plugin-skindesigner-0.5.0.tar.bz2
Index: vdr-skindesigner.spec
===================================================================
RCS file: /cvs/free/rpms/vdr-skindesigner/devel/vdr-skindesigner.spec,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -r1.39 -r1.40
--- vdr-skindesigner.spec 22 May 2015 19:05:51 -0000 1.39
+++ vdr-skindesigner.spec 30 May 2015 19:17:59 -0000 1.40
@@ -1,5 +1,5 @@
Name: vdr-skindesigner
-Version: 0.4.8
+Version: 0.5.0
Release: 1%{?dist}
Summary: A VDR skinning engine that displays XML based Skins
@@ -113,6 +113,9 @@
%{_includedir}/libskindesignerapi/
%changelog
+* Sat May 30 2015 Martin Gansser <martinkg(a)fedoraproject.org> - 0.5.0-1
+- Update to 0.5.0
+
* Fri May 22 2015 Martin Gansser <martinkg(a)fedoraproject.org> - 0.4.8-1
- Update to 0.4.8
9 years, 6 months
rpms/openmw/devel .cvsignore, 1.9, 1.10 openmw.spec, 1.14, 1.15 sources, 1.9, 1.10
by Alexandre Moine
Author: nobrakal
Update of /cvs/free/rpms/openmw/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv7002
Modified Files:
.cvsignore openmw.spec sources
Log Message:
* Sat May 30 2015 Alexandre Moine <nobrakal(a)gmail.com> 0.36.0-1
- Update to new upstream.
Index: .cvsignore
===================================================================
RCS file: /cvs/free/rpms/openmw/devel/.cvsignore,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- .cvsignore 16 Mar 2015 19:14:34 -0000 1.9
+++ .cvsignore 30 May 2015 10:42:01 -0000 1.10
@@ -1 +1 @@
-openmw-0.35.1.tar.gz
+openmw-0.36.0.tar.gz
Index: openmw.spec
===================================================================
RCS file: /cvs/free/rpms/openmw/devel/openmw.spec,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- openmw.spec 16 Mar 2015 20:25:36 -0000 1.14
+++ openmw.spec 30 May 2015 10:42:01 -0000 1.15
@@ -1,6 +1,6 @@
Name: openmw
-Version: 0.35.1
-Release: 2%{?dist}
+Version: 0.36.0
+Release: 1%{?dist}
Summary: Unofficial open source engine re-implementation of the game Morrowind
License: GPLv3 and MIT and zlib
@@ -106,8 +106,8 @@
%changelog
-* Mon Mar 16 2015 Alexandre Moine <nobrakal(a)fedoraproject.org> 0.35.1-2
-- Rebuild.
+* Sat May 30 2015 Alexandre Moine <nobrakal(a)gmail.com> 0.36.0-1
+- Update to new upstream.
* Mon Mar 16 2015 Alexandre Moine <nobrakal(a)fedoraproject.org> 0.35.1-1
- New maintenance update.
Index: sources
===================================================================
RCS file: /cvs/free/rpms/openmw/devel/sources,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- sources 16 Mar 2015 19:14:34 -0000 1.9
+++ sources 30 May 2015 10:42:01 -0000 1.10
@@ -1 +1 @@
-d6a90cbc8c73fe8111eacb88dad412fd openmw-0.35.1.tar.gz
+4d5e039029f0b95e9109a763434536cc openmw-0.36.0.tar.gz
9 years, 6 months
rpms/k9copy/devel k9copy-mimetype.patch, NONE, 1.1 unbundled_dvdread_dvdnav.patch, NONE, 1.1 .cvsignore, 1.13, 1.14 k9copy-2.3.8-mimetype.patch, 1.1, 1.2 k9copy.spec, 1.28, 1.29 sources, 1.13, 1.14
by Sérgio M. Basto
Author: sergiomb
Update of /cvs/free/rpms/k9copy/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv5968
Modified Files:
.cvsignore k9copy-2.3.8-mimetype.patch k9copy.spec sources
Added Files:
k9copy-mimetype.patch unbundled_dvdread_dvdnav.patch
Log Message:
* Thu May 28 2015 Sérgio Basto <sergio(a)serjux.com> - 3.0.3-1
- Update to k9copy-3.0.3 .
- New upstream URL http://k9copy-reloaded.sourceforge.net/ .
- Unbundle libdvdread and libdvdnav .
- Clean up the spec file and trailing withspaces .
k9copy-mimetype.patch:
k9copy_assistant.desktop | 3 +--
k9copy_assistant_open.desktop | 2 +-
2 files changed, 2 insertions(+), 3 deletions(-)
--- NEW FILE k9copy-mimetype.patch ---
--- k9copy.orig/k9copy_assistant.desktop 2014-09-29 16:00:12.000000000 +0100
+++ k9copy/k9copy_assistant.desktop 2015-05-28 20:08:49.318602109 +0100
@@ -14,9 +14,8 @@ GenericName[fr]=Backup de DVD Video
GenericName[tr]=DVD Vidyo Yedekleme Aracı
GenericName[ru]=ÐПпОÑПваМОе Ñ Ð²ÐžÐŽÐµÐŸ-DVD
GenericName[uk]=ÐПпÑÑÐ²Ð°ÐœÐœÑ Ð²ÑЎеП-DVD
-MimeTypes=
Terminal=false
Icon=k9copy
X-DocPath=k9copy/index.html
Categories=Qt;KDE;AudioVideo;DiscBurning;
-X-KDE-StartupNotify=true
\ No newline at end of file
+X-KDE-StartupNotify=true
--- k9copy.orig/k9copy_assistant_open.desktop 2014-09-29 16:00:12.000000000 +0100
+++ k9copy/k9copy_assistant_open.desktop 2015-05-28 20:06:11.140619453 +0100
@@ -11,4 +11,4 @@ NAme[uk]=ÐПпÑÑваÑО за ЎПпÐ
[Desktop Entry]
X-KDE-Solid-Predicate=[[ StorageVolume.ignored == false AND OpticalDisc.availableContent == 'Data|VideoDvd' ] OR [ StorageVolume.ignored == false AND OpticalDisc.availableContent == 'Data|VideoDvd' ]]
Type=Service
-Actions=open;
\ No newline at end of file
+Actions=open;
unbundled_dvdread_dvdnav.patch:
CMakeLists.txt | 28 +++++++++----------
cmake/FindAvformat.cmake | 68 ++++++++++++++++++++++++-----------------------
2 files changed, 49 insertions(+), 47 deletions(-)
--- NEW FILE unbundled_dvdread_dvdnav.patch ---
--- k9copy/CMakeLists.txt.orig 2014-10-16 12:58:20.000000000 +0100
+++ k9copy/CMakeLists.txt 2015-05-28 19:42:03.942426473 +0100
@@ -58,11 +58,11 @@ INCLUDE(CMakeDetermineSystem)
INCLUDE(CheckIncludeFiles)
INCLUDE(FindLibMpeg2)
INCLUDE(FindXine)
-#INCLUDE(FindAvcodec)
+INCLUDE(FindAvcodec)
INCLUDE(FindAvformat)
#INCLUDE(FindAvutil)
INCLUDE(FindFFmpegScale)
-#INCLUDE(FindLibDvdread)
+INCLUDE(FindLibDvdread)
# usage: CHECK_INCLUDE_FILES (<header> <RESULT_VARIABLE> )
CHECK_INCLUDE_FILES(inttypes.h HAVE_INTTYPES_H) # inttypes.h
@@ -102,17 +102,17 @@ ELSE (LIBDL_LIBRARY)
FIND_LIBRARY(LIBDL_LIBRARY NAMES "c" PATHS )
MESSAGE(STATUS "Found library libc: ${LIBDL_LIBRARY}")
ENDIF (LIBDL_LIBRARY)
-#FINDLIBDVDREAD("dvdread/ifo_types.h" "dvdread")
+FINDLIBDVDREAD("dvdread/ifo_types.h" "dvdread")
-#FINDAVFORMAT("avformat")
-#FINDAVCODEC("avcodec")
+FINDAVFORMAT("avformat")
+FINDAVCODEC("avcodec")
#FINDAVUTIL("avutil")
add_definitions( -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS)
-add_subdirectory( src/libdvdnav-NOW) #from dvdnav
-add_subdirectory( src/libdvdnav-NOW/dvdnav)
-add_subdirectory( src/libdvdnav-NOW/vm)
+#add_subdirectory( src/libdvdnav-NOW) #from dvdnav
+#add_subdirectory( src/libdvdnav-NOW/dvdnav)
+#add_subdirectory( src/libdvdnav-NOW/vm)
add_subdirectory( src/core )
add_subdirectory( src/mpeg2)
add_subdirectory(src/vamps)
@@ -127,7 +127,7 @@ add_subdirectory(po)
add_subdirectory(doc)
include_directories(
- ${CMAKE_CURRENT_SOURCE_DIR}/src/libdvdnav-NOW #from dvdnav
+ #${CMAKE_CURRENT_SOURCE_DIR}/src/libdvdnav-NOW #from dvdnav
${CMAKE_CURRENT_SOURCE_DIR}/src/devices
${CMAKE_CURRENT_SOURCE_DIR}/src/core
${CMAKE_CURRENT_SOURCE_DIR}/src/vamps
@@ -139,10 +139,10 @@ include_directories(
${CMAKE_CURRENT_SOURCE_DIR}/src/import
${CMAKE_CURRENT_SOURCE_DIR}/src/player
${CMAKE_CURRENT_SOURCE_DIR}/src/subtitles
- ${CMAKE_CURRENT_SOURCE_DIR}/src/libdvdread-NOW #from dvdread
+# ${CMAKE_CURRENT_SOURCE_DIR}/src/libdvdread-NOW #from dvdread
${CMAKE_CURRENT_SOURCE_DIR}/src/batch
${KDE4_INCLUDES} ${QT_INCLUDES}
-#${LIBDVDREAD_INCLUDE_DIR}/dvdread
+${LIBDVDREAD_INCLUDE_DIR}/dvdread
${AVCODEC_INCLUDE_DIR}
${AVFORMAT_INCLUDE_DIR}
${AVUTIL_INCLUDE_DIR}
@@ -490,9 +490,9 @@ set (k9xineplayer_SRCS
)
-add_library(dvdread STATIC ${dvdread_SRCS})
-add_library(dvdnav STATIC ${libdvdnav_SRCS})
-target_link_libraries(dvdnav dvdread)
+#add_library(dvdread STATIC ${dvdread_SRCS})
+#add_library(dvdnav STATIC ${libdvdnav_SRCS})
+#target_link_libraries(dvdnav dvdread)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu99")
if(QT5_BUILD)
message("Qt5 Version")
--- k9copy/cmake/FindAvformat.cmake.orig 2014-09-29 16:00:12.000000000 +0100
+++ k9copy/cmake/FindAvformat.cmake 2015-05-28 19:42:03.942426473 +0100
@@ -1,33 +1,35 @@
-# - Try to find LibAvformat
-# Once done this will define
-# LIBAVFORMAT_FOUND - System has LibAvformat
-# LIBAVFORMAT_INCLUDE_DIRS - The LibAvformat include directories
-# LIBAVFORMAT_LIBRARIES - The libraries needed to use LibAvformat
-# LIBAVFORMAT_DEFINITIONS - Compiler switches required for using LibAvformat
-
-#find_package(PkgConfig)
-#pkg_check_modules(PC_LIBAVFORMAT QUIET libAvFormat)
-#set(LIBAVFORMAT_DEFINITIONS ${PC_LIBAVFORMAT_CFLAGS_OTHER})
-
-#find_path(LIBAVFORMAT_INCLUDE_DIR ffmpeg/libAvformat/avformat.h
-# HINTS ${PC_LIBAVFORMAT_INCLUDEDIR} ${PC_LIBAVFORMAT_INCLUDE_DIRS}
-# PATH_SUFFIXES ffmpeg )
-
-#find_library(LIBAVFORMAT_LIBRARY NAMES libavformat libAvFormat LibAvformat
-# HINTS ${PC_LIBAVFORMAT_LIBDIR} ${PC_LIBAVFORMAT_LIBRARY_DIRS} )
-
-#set(LIBAVFORMAT_LIBRARIES ${LIBAVFORMAT_LIBRARY} )
-#set(LIBAVFORMAT_INCLUDE_DIRS ${LIBAVFORMAT_INCLUDE_DIR} )
-
-#include(FindPackageHandleStandardArgs)
-# handle the QUIETLY and REQUIRED arguments and set LIBAVFORMAT_FOUND to TRUE
-# if all listed variables are TRUE
-#find_package_handle_standard_args(LibAvformat DEFAULT_MSG
-# LIBAVFORMAT_LIBRARY LIBAVFORMAT_INCLUDE_DIR)
-
-#mark_as_advanced(LIBAVFORMAT_INCLUDE_DIR LIBAVFORMAT_LIBRARY )
-
-
-INCLUDE(FindPkgConfig)
-PKG_SEARCH_MODULE(LIBAVFORMAT REQUIRED libavformat)
-INCLUDE_DIRECTORIES(${LIBAVFORMAT_INCLUDE_DIRS})
+MACRO (FINDAVFORMAT _lib)
+
+FIND_PATH(AVFORMAT_INCLUDE_DIR_FF "ffmpeg/avformat.h" PATHS)
+IF (AVFORMAT_INCLUDE_DIR_FF)
+ SET (AVFORMAT_INCLUDE_DIR "${AVCODEC_INCLUDE_DIR_FF}/ffmpeg")
+ELSE (AVFORMAT_INCLUDE_DIR_FF)
+ FIND_PATH(AVFORMAT_INCLUDE_DIR_LAVC "libavformat/avformat.h" PATHS)
+ IF (AVFORMAT_INCLUDE_DIR_LAVC)
+ SET (AVFORMAT_INCLUDE_DIR "${AVFORMAT_INCLUDE_DIR_LAVC}/libavformat")
+ ELSE (AVFORMAT_INCLUDE_DIR_LAVC)
+ FIND_PATH(AVFORMAT_INCLUDE_DIR_FF_LAVF "ffmpeg/libavformat/avformat.h" PATHS)
+ IF (AVFORMAT_INCLUDE_DIR_FF_LAVF)
+ SET (AVFORMAT_INCLUDE_DIR "${AVFORMAT_INCLUDE_DIR_FF_LAVF}/ffmpeg/libavformat")
+ ENDIF (AVFORMAT_INCLUDE_DIR_FF_LAVF)
+ ENDIF (AVFORMAT_INCLUDE_DIR_LAVC)
+ENDIF (AVFORMAT_INCLUDE_DIR_FF)
+
+
+
+FIND_LIBRARY(AVFORMAT_LIBRARY NAMES ${_lib} PATHS )
+
+IF (AVFORMAT_INCLUDE_DIR AND AVFORMAT_LIBRARY)
+ SET(INC_FOUND TRUE)
+ELSE (AVFORMAT_INCLUDE_DIR AND AVFORMAT_LIBRARY)
+ SET(INC_FOUND FALSE)
+ENDIF (AVFORMAT_INCLUDE_DIR AND AVFORMAT_LIBRARY)
+
+
+IF (INC_FOUND)
+ MESSAGE(STATUS "Found include avformat.h: ${AVFORMAT_INCLUDE_DIR}")
+ MESSAGE(STATUS "Found library ${_lib}: ${AVFORMAT_LIBRARY}")
+ELSE (INC_FOUND)
+ MESSAGE(FATAL_ERROR "Could not find ${_lib}")
+ENDIF (INC_FOUND)
+ENDMACRO (FINDAVFORMAT _lib )
\ No newline at end of file
Index: .cvsignore
===================================================================
RCS file: /cvs/free/rpms/k9copy/devel/.cvsignore,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- .cvsignore 10 Feb 2012 15:14:05 -0000 1.13
+++ .cvsignore 28 May 2015 23:02:28 -0000 1.14
@@ -1 +1 @@
-k9copy-2.3.8-Source.tar.gz
+k9copy-3.0.3.tar.gz
k9copy-2.3.8-mimetype.patch:
k9copy_assistant.desktop | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
Index: k9copy-2.3.8-mimetype.patch
===================================================================
RCS file: /cvs/free/rpms/k9copy/devel/k9copy-2.3.8-mimetype.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- k9copy-2.3.8-mimetype.patch 10 Feb 2012 15:14:05 -0000 1.1
+++ k9copy-2.3.8-mimetype.patch 28 May 2015 23:02:28 -0000 1.2
@@ -14,19 +14,3 @@
-X-KDE-StartupNotify=true
\ No newline at end of file
+X-KDE-StartupNotify=true
-diff -up k9copy-2.3.8-Source/k9copy.desktop.mimetype k9copy-2.3.8-Source/k9copy.desktop
---- k9copy-2.3.8-Source/k9copy.desktop.mimetype 2011-12-09 15:08:41.000000000 -0600
-+++ k9copy-2.3.8-Source/k9copy.desktop 2012-02-10 09:01:02.330098511 -0600
-@@ -14,9 +14,9 @@ GenericName[fr]=Backup de DVD Video
- GenericName[tr]=DVD Vidyo Yedekleme Aracı
- GenericName[ru]=ÐПпОÑПваМОе Ñ Ð²ÐžÐŽÐµÐŸ-DVD
- GenericName[uk]=ÐПпÑÑÐ²Ð°ÐœÐœÑ Ð²ÑЎеП-DVD
--MimeTypes=
-+MimeType=
- Terminal=false
- Icon=k9copy
- X-DocPath=k9copy/index.html
- Categories=Qt;KDE;AudioVideo;DiscBurning;
--X-KDE-StartupNotify=true
-\ No newline at end of file
-+X-KDE-StartupNotify=true
Index: k9copy.spec
===================================================================
RCS file: /cvs/free/rpms/k9copy/devel/k9copy.spec,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -r1.28 -r1.29
--- k9copy.spec 31 Aug 2014 03:49:14 -0000 1.28
+++ k9copy.spec 28 May 2015 23:02:28 -0000 1.29
@@ -1,28 +1,27 @@
Name: k9copy
-Version: 2.3.8
-Release: 7%{?dist}
+Version: 3.0.3
+Release: 1%{?dist}
Summary: Video DVD backup and creation program
Group: Applications/Multimedia
License: GPLv2+
-URL: http://k9copy.sourceforge.net/
-Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}-Source.tar.gz
-BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-
-Patch01: FindAv-compat.patch
-## upstreamable patches
-# https://sourceforge.net/tracker/?func=detail&aid=3016058&group_id=157868&...
-Patch52: k9copy-2.3.8-mimetype.patch
+URL: http://k9copy-reloaded.sourceforge.net/
+Source0: http://downloads.sourceforge.net/%{name}-reloaded/%{name}-%{version}.tar.gz
+
+#Patch01: FindAv-compat.patch
+Patch02: unbundled_dvdread_dvdnav.patch
+# upstreamable patches
+Patch52: k9copy-mimetype.patch
BuildRequires: cmake
BuildRequires: desktop-file-utils
-BuildRequires: ffmpeg-compat-devel
+BuildRequires: ffmpeg-devel
BuildRequires: gettext
%if 0%{?fedora} && 0%{?fedora} < 16
BuildRequires: hal-devel
%endif
BuildRequires: kdelibs4-devel
-BuildRequires: libdvdread-devel
+BuildRequires: libdvdread-devel libdvdnav-devel
BuildRequires: libmpeg2-devel
BuildRequires: pkgconfig
BuildRequires: xine-lib-devel
@@ -46,23 +45,26 @@
%prep
-%setup -q -n %{name}-%{version}-Source
+%setup -q -n %{name}
+
+%{__rm} -rf src/libdvdnav-NOW/
+%{__rm} -rf src/libdvdread-NOW/
+#patch1 -p0 -b .ffmpeg-compat
+%patch2 -p1 -b .unbundle
-%patch1 -p0 -b .ffmpeg-compat
%patch52 -p1 -b .mimetype
%build
mkdir -p %{_target_platform}
pushd %{_target_platform}
-%{cmake_kde4} ..
+%{cmake_kde4} ..
popd
make %{?_smp_mflags} -C %{_target_platform}
%install
-rm -rf %{buildroot}
make install/fast DESTDIR=%{buildroot} -C %{_target_platform}
@@ -74,10 +76,6 @@
desktop-file-validate %{buildroot}%{_kde4_datadir}/applications/kde4/k9copy_assistant.desktop
-%clean
-rm -rf %{buildroot}
-
-
%post
touch --no-create %{_kde4_iconsdir}/hicolor &> /dev/null ||:
@@ -92,7 +90,6 @@
%files -f %{name}.lang
-%defattr(-,root,root,-)
%doc COPYING
%{_kde4_bindir}/k9copy
%{_kde4_bindir}/k9play
@@ -105,6 +102,12 @@
%changelog
+* Thu May 28 2015 Sérgio Basto <sergio(a)serjux.com> - 3.0.3-1
+- Update to k9copy-3.0.3 .
+- New upstream URL http://k9copy-reloaded.sourceforge.net/ .
+- Unbundle libdvdread and libdvdnav .
+- Clean up the spec file and trailing withspaces .
+
* Sun Aug 31 2014 Sérgio Basto <sergio(a)serjux.com> - 2.3.8-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
@@ -114,7 +117,7 @@
* Mon May 27 2013 Nicolas Chauvet <kwizart(a)gmail.com> - 2.3.8-5
- Rebuilt for x264/FFmpeg
-* Sat Apr 27 2013 Sérgio Basto <sergio(a)serjux.com>
+* Sat Apr 27 2013 Sérgio Basto <sergio(a)serjux.com> - 2.3.8-4
- Switch to ffmpeg-compat.
* Sun Mar 03 2013 Nicolas Chauvet <kwizart(a)gmail.com> - 2.3.8-3
Index: sources
===================================================================
RCS file: /cvs/free/rpms/k9copy/devel/sources,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- sources 10 Feb 2012 15:14:05 -0000 1.13
+++ sources 28 May 2015 23:02:28 -0000 1.14
@@ -1 +1 @@
-584f6cc50f28befbeb0d5c1ec9476456 k9copy-2.3.8-Source.tar.gz
+53158282e23a4aa4fb8f4336f1424521 k9copy-3.0.3.tar.gz
9 years, 6 months
rpms/libdca/devel libdca.spec,1.6,1.7
by Nicolas Chauvet
Author: kwizart
Update of /cvs/free/rpms/libdca/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv3828
Modified Files:
libdca.spec
Log Message:
Fix build in rawhide - rfbz#3674
Index: libdca.spec
===================================================================
RCS file: /cvs/free/rpms/libdca/devel/libdca.spec,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- libdca.spec 31 Aug 2014 04:17:18 -0000 1.6
+++ libdca.spec 28 May 2015 12:43:44 -0000 1.7
@@ -1,14 +1,13 @@
Summary: DTS Coherent Acoustics decoder library
Name: libdca
Version: 0.0.5
-Release: 8%{?dist}
+Release: 9%{?dist}
URL: http://www.videolan.org/developers/libdca.html
Group: System Environment/Libraries
Source: http://download.videolan.org/pub/videolan/libdca/0.0.5/%{name}-%{version}...
Patch0: libdca-0.0.5-relsymlinks.patch
Patch1: libdca-0.0.5-strict-aliasing.patch
License: GPLv2+
-BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
%description
libdca is a free library for decoding DTS Coherent Acoustics streams. It is
@@ -49,38 +48,35 @@
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
# Force PIC as applications fail to recompile against the lib on x86_64 without
-%{__make} %{?_smp_mflags} OPT_CFLAGS="$RPM_OPT_FLAGS -fPIC"
+%{__make} %{?_smp_mflags} OPT_CFLAGS="$RPM_OPT_FLAGS -fPIC" LIBS="-lm"
%install
-rm -rf $RPM_BUILD_ROOT
make DESTDIR=$RPM_BUILD_ROOT install INSTALL="install -p"
rm $RPM_BUILD_ROOT%{_libdir}/%{name}.la
-%clean
-rm -rf $RPM_BUILD_ROOT
-
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
-%defattr(-,root,root,-)
%doc AUTHORS COPYING ChangeLog NEWS README
%{_libdir}/%{name}.so.*
%files tools
-%defattr(-,root,root,-)
%{_bindir}/*
%{_mandir}/man1/*
%files devel
-%defattr(-,root,root,-)
%doc TODO doc/%{name}.txt
%{_libdir}/pkgconfig/libd??.pc
%{_includedir}/d??.h
%{_libdir}/%{name}.so
%changelog
+* Thu May 28 2015 Nicolas Chauvet <kwizart(a)gmail.com> - 0.0.5-9
+- Fix build with rawhide - rfbz#3674
+- Spec file clean-up
+
* Sun Aug 31 2014 Sérgio Basto <sergio(a)serjux.com> - 0.0.5-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
9 years, 6 months
rpms/live555/devel live555.spec,1.28,1.29
by Nicolas Chauvet
Author: kwizart
Update of /cvs/free/rpms/live555/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv25678
Modified Files:
live555.spec
Log Message:
Fix for rhbz#3673
Index: live555.spec
===================================================================
RCS file: /cvs/free/rpms/live555/devel/live555.spec,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -r1.28 -r1.29
--- live555.spec 28 Oct 2014 16:18:12 -0000 1.28
+++ live555.spec 28 May 2015 09:44:33 -0000 1.29
@@ -69,7 +69,7 @@
%prep
%setup -q -n live
-sed -i -e "s/-O2/$RPM_OPT_FLAGS/" \
+sed -i -e "s|-O2|$RPM_OPT_FLAGS|" \
config.linux-with-shared-libraries
9 years, 6 months
rpms/gstreamer-plugins-bad/devel 0001-fix-faad2-version-check.patch, NONE, 1.1 gstreamer-plugins-bad.spec, 1.52, 1.53
by jwrdegoede
Author: jwrdegoede
Update of /cvs/free/rpms/gstreamer-plugins-bad/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv23095
Modified Files:
gstreamer-plugins-bad.spec
Added Files:
0001-fix-faad2-version-check.patch
Log Message:
* Wed May 27 2015 Hans de Goede <j.w.r.degoede(a)gmail.com> - 0.10.23-7
- Add a patch from upstream fixing a faad2 crash (rf3664)
0001-fix-faad2-version-check.patch:
configure.ac | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
--- NEW FILE 0001-fix-faad2-version-check.patch ---
>From ea2cf4aae775c36793b31fa2726fa084c426d0cf Mon Sep 17 00:00:00 2001
From: Wim Taymans <wtaymans(a)redhat.com>
Date: Wed, 13 May 2015 16:23:26 +0200
Subject: 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
diff --git a/configure.ac b/configure.ac
index 29b10a6..ceaf31f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1132,9 +1132,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
])
--
cgit v0.10.2
Index: gstreamer-plugins-bad.spec
===================================================================
RCS file: /cvs/free/rpms/gstreamer-plugins-bad/devel/gstreamer-plugins-bad.spec,v
retrieving revision 1.52
retrieving revision 1.53
diff -u -r1.52 -r1.53
--- gstreamer-plugins-bad.spec 1 Sep 2014 02:20:54 -0000 1.52
+++ gstreamer-plugins-bad.spec 27 May 2015 15:31:18 -0000 1.53
@@ -15,11 +15,12 @@
Summary: GStreamer streaming media framework "bad" plug-ins
Name: gstreamer-plugins-bad
Version: 0.10.23
-Release: 6%{?dist}
+Release: 7%{?dist}
License: LGPLv2+
Group: Applications/Multimedia
URL: http://gstreamer.freedesktop.org/
Source: http://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-%{ve...
+Patch1: 0001-fix-faad2-version-check.patch
Requires: %{gstreamer} >= %{gst_minver}
# Drag in the free plugins which are in Fedora now, for upgrade path
Requires: gstreamer-plugins-bad-free >= %{version}
@@ -40,6 +41,8 @@
BuildRequires: libmimic-devel
BuildRequires: librtmp-devel
BuildRequires: vo-amrwbenc-devel
+# For autoreconf
+BuildRequires: libtool
%description
GStreamer is a streaming media framework, based on graphs of elements which
@@ -51,6 +54,9 @@
%prep
%setup -q -n gst-plugins-bad-%{version}
+%patch1 -p1
+# For patch1
+autoreconf -ivf
%build
@@ -82,7 +88,6 @@
%files
-%defattr(-,root,root,-)
%doc AUTHORS COPYING README REQUIREMENTS
# Take the whole dir for proper dir ownership (shared with other plugin pkgs)
%{_datadir}/gstreamer-0.10
@@ -107,6 +112,9 @@
%changelog
+* Wed May 27 2015 Hans de Goede <j.w.r.degoede(a)gmail.com> - 0.10.23-7
+- Add a patch from upstream fixing a faad2 crash (rf3664)
+
* Mon Sep 01 2014 Sérgio Basto <sergio(a)serjux.com> - 0.10.23-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
@@ -357,7 +365,7 @@
- Re-add devel package now that we have a main shared lib and header files.
- Add check build requirement.
-* Wed Mar 30 2007 Matthias Saou <http://freshrpms.net/> 0.10.4-1
+* Fri Mar 30 2007 Matthias Saou <http://freshrpms.net/> 0.10.4-1
- Update to 0.10.4 for F7.
- Disable swfdec... does anything/anyone even use it here? Once it stabilizes
somewhat more, maybe then it'll be worth re-enabling.
9 years, 6 months
rpms/mythweb/F-20 ChangeLog, 1.9, 1.10 mythweb-0.27-fixes.patch, 1.2, 1.3 mythweb.spec, 1.14, 1.15
by Richard Shaw
Author: hobbes1069
Update of /cvs/free/rpms/mythweb/F-20
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv22282
Modified Files:
ChangeLog mythweb-0.27-fixes.patch mythweb.spec
Log Message:
* Wed May 27 2015 Richard Shaw <hobbes1069(a)gmail.com> - 0.27.4-2
- Update to latest fixes release.
Index: ChangeLog
===================================================================
RCS file: /cvs/free/rpms/mythweb/F-20/ChangeLog,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- ChangeLog 5 Nov 2014 03:24:50 -0000 1.9
+++ ChangeLog 27 May 2015 14:32:58 -0000 1.10
@@ -0,0 +1,52 @@
+commit 799db438533acd7fed7b9137b63badb6f163b7da
+Author: Jim Stichnoth <jstichnoth(a)mythtv.org>
+Date: Sun May 3 14:35:19 2015 -0700
+
+ Move .type_* entries above .cat_* entries. Refs #12351
+
+ This makes categories take precedence over types when deciding on
+ colors, resulting in a more colorful (and easier to read) search
+ results page.
+
+ (cherry picked from commit cb588d870f215a4e65854a4665cc01b95dc4547e)
+
+commit c50228f1b8505ca5d4420ae5a696b08d4fb9c909
+Author: Alex Tomlins <alex(a)tomlins.org.uk>
+Date: Wed Mar 18 22:14:53 2015 +0000
+
+ Reduce cache headers for program details ajax popup.
+
+ As it stands, these are being set to 10 days beyond the program start
+ time. This means that mythweb will often show stale data for programs
+ that have been updated since they were initially added to the guide.
+
+ This reduces the cache time to 2 hours, which seems like a reasonable
+ time to cache for, yet still get timely updates.
+
+ Fixes #12415
+
+ (cherry picked from commit 97a33211bd8d4dee6e0badb88760f07d66fe5d40)
+
+commit a8c6695bc851887ed6d9ae565b9c2788f1d60a6a
+Author: Josu Lazkano <josu.lazkano(a)gmail.com>
+Date: Sat Apr 4 16:34:34 2015 -0400
+
+ Spanish MythWeb translation update
+
+ OKed by the Spanish translation maintainer, Antonion Marcos Lopez Alonso.
+
+ Thank you Josu!
+
+ Close #12353
+
+commit e0c2a3aea94bc96be5836472a1c53e62b5e43c93
+Author: Karl Dietz <dekarl(a)mythtv.org>
+Date: Thu Jan 22 20:57:13 2015 +0100
+
+ unbreak guide colors based on category_type
+
+ It appears as if changes around other areas of the guide code uncovered
+ this issue which has been around for a long time.
+
+ Fixes #12351
+ (cherry picked from commit 1b86b5763e4c55bed4428bb227079a1ce0568e80)
mythweb-0.27-fixes.patch:
modules/_shared/lang/Spanish.lang | 8 ++++----
modules/tv/get_show_details.php | 4 ++--
skins/clean_blue/programming.css | 8 ++++----
skins/default/programming.css | 8 ++++----
skins/elkin/programming.css | 8 ++++----
skins/grey/programming.css | 8 ++++----
skins/haze_dark/programming.css | 8 ++++----
skins/haze_light/programming.css | 8 ++++----
skins/wap/handheld.css | 6 +++---
skins/wap/style.css | 8 ++++----
10 files changed, 37 insertions(+), 37 deletions(-)
Index: mythweb-0.27-fixes.patch
===================================================================
RCS file: /cvs/free/rpms/mythweb/F-20/mythweb-0.27-fixes.patch,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- mythweb-0.27-fixes.patch 5 Nov 2014 03:24:51 -0000 1.2
+++ mythweb-0.27-fixes.patch 27 May 2015 14:32:58 -0000 1.3
@@ -0,0 +1,260 @@
+ modules/_shared/lang/Spanish.lang | 8 ++++----
+ modules/tv/get_show_details.php | 4 ++--
+ skins/clean_blue/programming.css | 8 ++++----
+ skins/default/programming.css | 8 ++++----
+ skins/elkin/programming.css | 8 ++++----
+ skins/grey/programming.css | 8 ++++----
+ skins/haze_dark/programming.css | 8 ++++----
+ skins/haze_light/programming.css | 8 ++++----
+ skins/wap/handheld.css | 6 +++---
+ skins/wap/style.css | 8 ++++----
+ 10 files changed, 37 insertions(+), 37 deletions(-)
+
+diff --git a/modules/_shared/lang/Spanish.lang b/modules/_shared/lang/Spanish.lang
+index 8758a65..5a23a6d 100644
+--- a/modules/_shared/lang/Spanish.lang
++++ b/modules/_shared/lang/Spanish.lang
+@@ -360,7 +360,7 @@
+ "Don't Record"
+ No grabar
+ "Don't record this program."
+- No borrar este programa
++ No grabar este programa
+ "Done, Unknown Status"
+ Terminado, Estado Desconocido
+ "Down"
+@@ -894,7 +894,7 @@
+ "recstatus: willrecord"
+ estado: se grabará
+ "rectype-long: always"
+- rectype-long: siempre
++ Grabar a cualquier hora y y canal.
+ "rectype-long: daily"
+ rectype-long: diario
+ "rectype-long: dontrec"
+@@ -902,11 +902,11 @@
+ "rectype-long: finddaily"
+ rectype-long: buscar diario
+ "rectype-long: findone"
+- rectype-long: buscar uno
++ Encontrar y grabar un episodio con este titulo.
+ "rectype-long: findweekly"
+ rectype-long: buscar semana
+ "rectype-long: once"
+- rectype-long: una vez
++ Grabar solo este episodio.
+ "rectype-long: override"
+ rectype-long: excepción
+ "rectype-long: weekly"
+diff --git a/modules/tv/get_show_details.php b/modules/tv/get_show_details.php
+index 1ac0dec..23b53f0 100644
+--- a/modules/tv/get_show_details.php
++++ b/modules/tv/get_show_details.php
+@@ -1,8 +1,8 @@
+ <?php
+ // Attempt to force some caching, will make secondary views so much faster.
+- header('Cache-Control: max-age-'.($_REQUEST['starttime'] - time() + 604800));
++ header('Cache-Control: max-age=7200, public');
+ header('Pragma: ');
+- header('Expires: '.date('D, d M Y H:i:s e', $_REQUEST['starttime'] + 604800));
++ header('Expires: '.date('D, d M Y H:i:s e', time() + 7200));
+ header('Content-Type: application/json');
+
+ $program = load_one_program($_REQUEST['starttime'], $_REQUEST['chanid'], false);
+diff --git a/skins/clean_blue/programming.css b/skins/clean_blue/programming.css
+index 14bf223..fd97019 100644
+--- a/skins/clean_blue/programming.css
++++ b/skins/clean_blue/programming.css
+@@ -110,6 +110,10 @@
+ .ManualOverride { color: #D03060; }
+ .Overlap { color: #FF0000; }
+
++.type_movie { background-color: #809090; }
++.type_series { background-color: #C0C0C0; }
++.type_tvshow { }
++
+ .cat_Action { background-color: #A6A38A; }
+ .cat_Adult { background-color: #FF0066; }
+ .cat_Animals { background-color: #33FF66; }
+@@ -143,10 +147,6 @@
+ .cat_Western { background-color: #806040; }
+ .cat_Unknown { background-color: #9999FF; }
+
+-.cat_movie { background-color: #809090 !important; }
+-.cat_series { background-color: #C0C0C0; }
+-.cat_tvshow { }
+-
+ .tv_Cine { background-color: blue; }
+ .tv_Classic { background-color: gray; }
+ .tv_Collectibles { background-color: #708090; }
+diff --git a/skins/default/programming.css b/skins/default/programming.css
+index 4c1789c..62cc9b3 100644
+--- a/skins/default/programming.css
++++ b/skins/default/programming.css
+@@ -101,6 +101,10 @@
+ .ManualOverride { color: #D03060; }
+ .Overlap { color: #FF0000; }
+
++.type_movie { background-color: #809090; }
++.type_series { }
++.type_tvshow { }
++
+ .cat_Action { background-color: #906020; }
+ .cat_Adult { background-color: #702020; }
+ .cat_Animals { background-color: #609060; }
+@@ -134,10 +138,6 @@
+ .cat_Western { background-color: #806040; }
+ .cat_Unknown { background-color: #303030; }
+
+-.cat_movie { background-color: #809090 !important; }
+-.cat_series { }
+-.cat_tvshow { }
+-
+ /* deprecated show categories that need to be integreted into the above list via regex, or have new categories created for them */
+ .tv_Cine { background-color: blue; }
+ .tv_Classic { background-color: gray; }
+diff --git a/skins/elkin/programming.css b/skins/elkin/programming.css
+index 2b21966..6a72a1f 100644
+--- a/skins/elkin/programming.css
++++ b/skins/elkin/programming.css
+@@ -105,6 +105,10 @@
+ .ManualOverride { color: #D03060; }
+ .Overlap { color: #FF0000; }
+
++.type_movie { background-color: #CCCC00; }
++.type_series { }
++.type_tvshow { }
++
+ .cat_Action { background-color: #FFCC66; }
+ .cat_Adult { background-color: #FF9999; }
+ .cat_Animals { background-color: #CCFF33; }
+@@ -138,10 +142,6 @@
+ .cat_Western { background-color: #806040; }
+ .cat_Unknown { background-color: #FFFFFF; }
+
+-.cat_movie { background-color: #CCCC00 !important; }
+-.cat_series { }
+-.cat_tvshow { }
+-
+ /* deprecated show categories that need to be integreted into the above list via regex, or have new categories created for them */
+ .tv_Cine { background-color: blue; }
+ .tv_Classic { background-color: gray; }
+diff --git a/skins/grey/programming.css b/skins/grey/programming.css
+index d15046f..401731b 100644
+--- a/skins/grey/programming.css
++++ b/skins/grey/programming.css
+@@ -47,6 +47,10 @@
+ .ManualOverride { color: #D03060; }
+ .Overlap { color: #FF0000; }
+
++.type_movie { background-color: #809090; }
++.type_series { }
++.type_tvshow { }
++
+ .cat_Action { background-color: #906020; }
+ .cat_Adult { background-color: #702020; }
+ .cat_Animals { background-color: #609060; }
+@@ -80,10 +84,6 @@
+ .cat_Western { background-color: #806040; }
+ .cat_Unknown { background-color: #303030; }
+
+-.cat_movie { background-color: #809090 !important; }
+-.cat_series { }
+-.cat_tvshow { }
+-
+ /* deprecated show categories that need to be integreted into the above list via regex, or have new categories created for them */
+ .tv_Cine { background-color: blue; }
+ .tv_Classic { background-color: gray; }
+diff --git a/skins/haze_dark/programming.css b/skins/haze_dark/programming.css
+index 5c70a13..b261eca 100644
+--- a/skins/haze_dark/programming.css
++++ b/skins/haze_dark/programming.css
+@@ -49,6 +49,10 @@
+ .manualOverride { color: #D03060; }
+ .overlap { color: #FF0000; }
+
++.type_movie { background-color: #A31418; } /*hsl(358,78%,36%)*/
++.type_series { }
++.type_tvshow { }
++
+ .cat_Action { background-color: #6B1E0F; } /*hsl(10,75%,24%)*/
+ .cat_Adult { background-color: #A34614; } /*hsl(21,78%,36%)*/
+ .cat_Animals { background-color: #6B400F; } /*hsl(32,75%,24%)*/
+@@ -82,10 +86,6 @@
+ .cat_Western { background-color: #6B0F23; } /*hsl(347,75%,24%)*/
+ .cat_Unknown { background-color: #303030; } /*hsl(0,0%,19%)*/
+
+-.cat_movie { background-color: #A31418; !important; } /*hsl(358,78%,36%)*/
+-.cat_series { }
+-.cat_tvshow { }
+-
+ /* deprecated show categories that need to be integreted into the above list via regex, or have new categories created for them */
+ .tv_Cine { background-color: blue; }
+ .tv_Classic { background-color: gray; }
+diff --git a/skins/haze_light/programming.css b/skins/haze_light/programming.css
+index edac335..df28937 100644
+--- a/skins/haze_light/programming.css
++++ b/skins/haze_light/programming.css
+@@ -49,6 +49,10 @@
+ .manualOverride { color: #D03060; }
+ .overlap { color: #FF0000; }
+
++.type_movie { background-color: #F8B3B5; } /*hsl(358,85%,84%)*/
++.type_series { }
++.type_tvshow { }
++
+ .cat_Action { background-color: #FBCEC4; } /*hsl(10,90%,88%)*/
+ .cat_Adult { background-color: #F8CBB3; } /*hsl(21,85%,84%)*/
+ .cat_Animals { background-color: #FBE2C4; } /*hsl(32,90%,88%)*/
+@@ -82,10 +86,6 @@
+ .cat_Western { background-color: #FBC4D0; } /*hsl(347,90%,88%)*/
+ .cat_Unknown { background-color: #EDEDED; } /*hsl(0,0%,93%)*/
+
+-.cat_movie { background-color: #F8B3B5; !important; } /*hsl(358,85%,84%)*/
+-.cat_series { }
+-.cat_tvshow { }
+-
+ /* deprecated show categories that need to be integreted into the above list via regex, or have new categories created for them */
+ .tv_Cine { background-color: blue; }
+ .tv_Classic { background-color: gray; }
+diff --git a/skins/wap/handheld.css b/skins/wap/handheld.css
+index 12ed3a7..51d809a 100644
+--- a/skins/wap/handheld.css
++++ b/skins/wap/handheld.css
+@@ -172,9 +172,9 @@ TextArea {
+ .cat_Western { background-color: #806040 }
+ .cat_Unknown { background-color: #303030 }
+
+-.cat_movie { background-color: #809090 !important; }
+-.cat_series { }
+-.cat_tvshow { }
++.type_movie { background-color: #809090 !important; }
++.type_series { }
++.type_tvshow { }
+
+ /* deprecated show categories that need to be integreted into the above list via regex, or have new categories created for them */
+ .tv_Cine { background-color: Blue }
+diff --git a/skins/wap/style.css b/skins/wap/style.css
+index 95ead32..fef7df3 100644
+--- a/skins/wap/style.css
++++ b/skins/wap/style.css
+@@ -172,9 +172,9 @@ TextArea {
+ .cat_Western { background-color: #806040 }
+ .cat_Unknown { background-color: #303030 }
+
+-.cat_movie { background-color: #809090 !important; }
+-.cat_series { }
+-.cat_tvshow { }
++.type_movie { background-color: #809090 !important; }
++.type_series { }
++.type_tvshow { }
+
+ /* deprecated show categories that need to be integreted into the above list via regex, or have new categories created for them */
+ .tv_Cine { background-color: Blue }
+@@ -184,4 +184,4 @@ TextArea {
+ .tv_Movies { background-color: Blue }
+ .tv_Serie { background-color: DarkOrchid }
+ .tv_SHOW { background-color: sienna }
+-.tv_Tiempo { background-color: #33ff99 }
+\ No newline at end of file
++.tv_Tiempo { background-color: #33ff99 }
Index: mythweb.spec
===================================================================
RCS file: /cvs/free/rpms/mythweb/F-20/mythweb.spec,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- mythweb.spec 5 Nov 2014 03:24:51 -0000 1.14
+++ mythweb.spec 27 May 2015 14:32:58 -0000 1.15
@@ -1,11 +1,11 @@
-%global ver_string v0.27.4
+%global vers_string v0.27.4-4-g799db43
Name: mythweb
Summary: The web interface to MythTV
URL: http://www.mythtv.org/
Version: 0.27.4
-Release: 1%{?dist}
+Release: 2%{?dist}
License: GPLv2 and LGPLv2 and MIT
@@ -39,7 +39,7 @@
%prep
%setup -q -n %{name}-%{version}
-#patch0 -p1
+%patch0 -p1
# Fix directory permissions
#find ./ -type d -exec chmod 0755 {} \;
@@ -105,6 +105,9 @@
%changelog
+* Wed May 27 2015 Richard Shaw <hobbes1069(a)gmail.com> - 0.27.4-2
+- Update to latest fixes release.
+
* Thu Oct 23 2014 Richard Shaw <hobbes1069(a)gmail.com> - 0.27.4-1
- Update to latest upstream release.
9 years, 6 months
rpms/mythweb/devel ChangeLog, 1.9, 1.10 mythweb-0.27-fixes.patch, 1.2, 1.3 mythweb.spec, 1.14, 1.15
by Richard Shaw
Author: hobbes1069
Update of /cvs/free/rpms/mythweb/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv22147
Modified Files:
ChangeLog mythweb-0.27-fixes.patch mythweb.spec
Log Message:
* Wed May 27 2015 Richard Shaw <hobbes1069(a)gmail.com> - 0.27.4-2
- Update to latest fixes release.
Index: ChangeLog
===================================================================
RCS file: /cvs/free/rpms/mythweb/devel/ChangeLog,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- ChangeLog 5 Nov 2014 03:17:48 -0000 1.9
+++ ChangeLog 27 May 2015 14:31:53 -0000 1.10
@@ -0,0 +1,52 @@
+commit 799db438533acd7fed7b9137b63badb6f163b7da
+Author: Jim Stichnoth <jstichnoth(a)mythtv.org>
+Date: Sun May 3 14:35:19 2015 -0700
+
+ Move .type_* entries above .cat_* entries. Refs #12351
+
+ This makes categories take precedence over types when deciding on
+ colors, resulting in a more colorful (and easier to read) search
+ results page.
+
+ (cherry picked from commit cb588d870f215a4e65854a4665cc01b95dc4547e)
+
+commit c50228f1b8505ca5d4420ae5a696b08d4fb9c909
+Author: Alex Tomlins <alex(a)tomlins.org.uk>
+Date: Wed Mar 18 22:14:53 2015 +0000
+
+ Reduce cache headers for program details ajax popup.
+
+ As it stands, these are being set to 10 days beyond the program start
+ time. This means that mythweb will often show stale data for programs
+ that have been updated since they were initially added to the guide.
+
+ This reduces the cache time to 2 hours, which seems like a reasonable
+ time to cache for, yet still get timely updates.
+
+ Fixes #12415
+
+ (cherry picked from commit 97a33211bd8d4dee6e0badb88760f07d66fe5d40)
+
+commit a8c6695bc851887ed6d9ae565b9c2788f1d60a6a
+Author: Josu Lazkano <josu.lazkano(a)gmail.com>
+Date: Sat Apr 4 16:34:34 2015 -0400
+
+ Spanish MythWeb translation update
+
+ OKed by the Spanish translation maintainer, Antonion Marcos Lopez Alonso.
+
+ Thank you Josu!
+
+ Close #12353
+
+commit e0c2a3aea94bc96be5836472a1c53e62b5e43c93
+Author: Karl Dietz <dekarl(a)mythtv.org>
+Date: Thu Jan 22 20:57:13 2015 +0100
+
+ unbreak guide colors based on category_type
+
+ It appears as if changes around other areas of the guide code uncovered
+ this issue which has been around for a long time.
+
+ Fixes #12351
+ (cherry picked from commit 1b86b5763e4c55bed4428bb227079a1ce0568e80)
mythweb-0.27-fixes.patch:
modules/_shared/lang/Spanish.lang | 8 ++++----
modules/tv/get_show_details.php | 4 ++--
skins/clean_blue/programming.css | 8 ++++----
skins/default/programming.css | 8 ++++----
skins/elkin/programming.css | 8 ++++----
skins/grey/programming.css | 8 ++++----
skins/haze_dark/programming.css | 8 ++++----
skins/haze_light/programming.css | 8 ++++----
skins/wap/handheld.css | 6 +++---
skins/wap/style.css | 8 ++++----
10 files changed, 37 insertions(+), 37 deletions(-)
Index: mythweb-0.27-fixes.patch
===================================================================
RCS file: /cvs/free/rpms/mythweb/devel/mythweb-0.27-fixes.patch,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- mythweb-0.27-fixes.patch 5 Nov 2014 03:17:48 -0000 1.2
+++ mythweb-0.27-fixes.patch 27 May 2015 14:31:53 -0000 1.3
@@ -0,0 +1,260 @@
+ modules/_shared/lang/Spanish.lang | 8 ++++----
+ modules/tv/get_show_details.php | 4 ++--
+ skins/clean_blue/programming.css | 8 ++++----
+ skins/default/programming.css | 8 ++++----
+ skins/elkin/programming.css | 8 ++++----
+ skins/grey/programming.css | 8 ++++----
+ skins/haze_dark/programming.css | 8 ++++----
+ skins/haze_light/programming.css | 8 ++++----
+ skins/wap/handheld.css | 6 +++---
+ skins/wap/style.css | 8 ++++----
+ 10 files changed, 37 insertions(+), 37 deletions(-)
+
+diff --git a/modules/_shared/lang/Spanish.lang b/modules/_shared/lang/Spanish.lang
+index 8758a65..5a23a6d 100644
+--- a/modules/_shared/lang/Spanish.lang
++++ b/modules/_shared/lang/Spanish.lang
+@@ -360,7 +360,7 @@
+ "Don't Record"
+ No grabar
+ "Don't record this program."
+- No borrar este programa
++ No grabar este programa
+ "Done, Unknown Status"
+ Terminado, Estado Desconocido
+ "Down"
+@@ -894,7 +894,7 @@
+ "recstatus: willrecord"
+ estado: se grabará
+ "rectype-long: always"
+- rectype-long: siempre
++ Grabar a cualquier hora y y canal.
+ "rectype-long: daily"
+ rectype-long: diario
+ "rectype-long: dontrec"
+@@ -902,11 +902,11 @@
+ "rectype-long: finddaily"
+ rectype-long: buscar diario
+ "rectype-long: findone"
+- rectype-long: buscar uno
++ Encontrar y grabar un episodio con este titulo.
+ "rectype-long: findweekly"
+ rectype-long: buscar semana
+ "rectype-long: once"
+- rectype-long: una vez
++ Grabar solo este episodio.
+ "rectype-long: override"
+ rectype-long: excepción
+ "rectype-long: weekly"
+diff --git a/modules/tv/get_show_details.php b/modules/tv/get_show_details.php
+index 1ac0dec..23b53f0 100644
+--- a/modules/tv/get_show_details.php
++++ b/modules/tv/get_show_details.php
+@@ -1,8 +1,8 @@
+ <?php
+ // Attempt to force some caching, will make secondary views so much faster.
+- header('Cache-Control: max-age-'.($_REQUEST['starttime'] - time() + 604800));
++ header('Cache-Control: max-age=7200, public');
+ header('Pragma: ');
+- header('Expires: '.date('D, d M Y H:i:s e', $_REQUEST['starttime'] + 604800));
++ header('Expires: '.date('D, d M Y H:i:s e', time() + 7200));
+ header('Content-Type: application/json');
+
+ $program = load_one_program($_REQUEST['starttime'], $_REQUEST['chanid'], false);
+diff --git a/skins/clean_blue/programming.css b/skins/clean_blue/programming.css
+index 14bf223..fd97019 100644
+--- a/skins/clean_blue/programming.css
++++ b/skins/clean_blue/programming.css
+@@ -110,6 +110,10 @@
+ .ManualOverride { color: #D03060; }
+ .Overlap { color: #FF0000; }
+
++.type_movie { background-color: #809090; }
++.type_series { background-color: #C0C0C0; }
++.type_tvshow { }
++
+ .cat_Action { background-color: #A6A38A; }
+ .cat_Adult { background-color: #FF0066; }
+ .cat_Animals { background-color: #33FF66; }
+@@ -143,10 +147,6 @@
+ .cat_Western { background-color: #806040; }
+ .cat_Unknown { background-color: #9999FF; }
+
+-.cat_movie { background-color: #809090 !important; }
+-.cat_series { background-color: #C0C0C0; }
+-.cat_tvshow { }
+-
+ .tv_Cine { background-color: blue; }
+ .tv_Classic { background-color: gray; }
+ .tv_Collectibles { background-color: #708090; }
+diff --git a/skins/default/programming.css b/skins/default/programming.css
+index 4c1789c..62cc9b3 100644
+--- a/skins/default/programming.css
++++ b/skins/default/programming.css
+@@ -101,6 +101,10 @@
+ .ManualOverride { color: #D03060; }
+ .Overlap { color: #FF0000; }
+
++.type_movie { background-color: #809090; }
++.type_series { }
++.type_tvshow { }
++
+ .cat_Action { background-color: #906020; }
+ .cat_Adult { background-color: #702020; }
+ .cat_Animals { background-color: #609060; }
+@@ -134,10 +138,6 @@
+ .cat_Western { background-color: #806040; }
+ .cat_Unknown { background-color: #303030; }
+
+-.cat_movie { background-color: #809090 !important; }
+-.cat_series { }
+-.cat_tvshow { }
+-
+ /* deprecated show categories that need to be integreted into the above list via regex, or have new categories created for them */
+ .tv_Cine { background-color: blue; }
+ .tv_Classic { background-color: gray; }
+diff --git a/skins/elkin/programming.css b/skins/elkin/programming.css
+index 2b21966..6a72a1f 100644
+--- a/skins/elkin/programming.css
++++ b/skins/elkin/programming.css
+@@ -105,6 +105,10 @@
+ .ManualOverride { color: #D03060; }
+ .Overlap { color: #FF0000; }
+
++.type_movie { background-color: #CCCC00; }
++.type_series { }
++.type_tvshow { }
++
+ .cat_Action { background-color: #FFCC66; }
+ .cat_Adult { background-color: #FF9999; }
+ .cat_Animals { background-color: #CCFF33; }
+@@ -138,10 +142,6 @@
+ .cat_Western { background-color: #806040; }
+ .cat_Unknown { background-color: #FFFFFF; }
+
+-.cat_movie { background-color: #CCCC00 !important; }
+-.cat_series { }
+-.cat_tvshow { }
+-
+ /* deprecated show categories that need to be integreted into the above list via regex, or have new categories created for them */
+ .tv_Cine { background-color: blue; }
+ .tv_Classic { background-color: gray; }
+diff --git a/skins/grey/programming.css b/skins/grey/programming.css
+index d15046f..401731b 100644
+--- a/skins/grey/programming.css
++++ b/skins/grey/programming.css
+@@ -47,6 +47,10 @@
+ .ManualOverride { color: #D03060; }
+ .Overlap { color: #FF0000; }
+
++.type_movie { background-color: #809090; }
++.type_series { }
++.type_tvshow { }
++
+ .cat_Action { background-color: #906020; }
+ .cat_Adult { background-color: #702020; }
+ .cat_Animals { background-color: #609060; }
+@@ -80,10 +84,6 @@
+ .cat_Western { background-color: #806040; }
+ .cat_Unknown { background-color: #303030; }
+
+-.cat_movie { background-color: #809090 !important; }
+-.cat_series { }
+-.cat_tvshow { }
+-
+ /* deprecated show categories that need to be integreted into the above list via regex, or have new categories created for them */
+ .tv_Cine { background-color: blue; }
+ .tv_Classic { background-color: gray; }
+diff --git a/skins/haze_dark/programming.css b/skins/haze_dark/programming.css
+index 5c70a13..b261eca 100644
+--- a/skins/haze_dark/programming.css
++++ b/skins/haze_dark/programming.css
+@@ -49,6 +49,10 @@
+ .manualOverride { color: #D03060; }
+ .overlap { color: #FF0000; }
+
++.type_movie { background-color: #A31418; } /*hsl(358,78%,36%)*/
++.type_series { }
++.type_tvshow { }
++
+ .cat_Action { background-color: #6B1E0F; } /*hsl(10,75%,24%)*/
+ .cat_Adult { background-color: #A34614; } /*hsl(21,78%,36%)*/
+ .cat_Animals { background-color: #6B400F; } /*hsl(32,75%,24%)*/
+@@ -82,10 +86,6 @@
+ .cat_Western { background-color: #6B0F23; } /*hsl(347,75%,24%)*/
+ .cat_Unknown { background-color: #303030; } /*hsl(0,0%,19%)*/
+
+-.cat_movie { background-color: #A31418; !important; } /*hsl(358,78%,36%)*/
+-.cat_series { }
+-.cat_tvshow { }
+-
+ /* deprecated show categories that need to be integreted into the above list via regex, or have new categories created for them */
+ .tv_Cine { background-color: blue; }
+ .tv_Classic { background-color: gray; }
+diff --git a/skins/haze_light/programming.css b/skins/haze_light/programming.css
+index edac335..df28937 100644
+--- a/skins/haze_light/programming.css
++++ b/skins/haze_light/programming.css
+@@ -49,6 +49,10 @@
+ .manualOverride { color: #D03060; }
+ .overlap { color: #FF0000; }
+
++.type_movie { background-color: #F8B3B5; } /*hsl(358,85%,84%)*/
++.type_series { }
++.type_tvshow { }
++
+ .cat_Action { background-color: #FBCEC4; } /*hsl(10,90%,88%)*/
+ .cat_Adult { background-color: #F8CBB3; } /*hsl(21,85%,84%)*/
+ .cat_Animals { background-color: #FBE2C4; } /*hsl(32,90%,88%)*/
+@@ -82,10 +86,6 @@
+ .cat_Western { background-color: #FBC4D0; } /*hsl(347,90%,88%)*/
+ .cat_Unknown { background-color: #EDEDED; } /*hsl(0,0%,93%)*/
+
+-.cat_movie { background-color: #F8B3B5; !important; } /*hsl(358,85%,84%)*/
+-.cat_series { }
+-.cat_tvshow { }
+-
+ /* deprecated show categories that need to be integreted into the above list via regex, or have new categories created for them */
+ .tv_Cine { background-color: blue; }
+ .tv_Classic { background-color: gray; }
+diff --git a/skins/wap/handheld.css b/skins/wap/handheld.css
+index 12ed3a7..51d809a 100644
+--- a/skins/wap/handheld.css
++++ b/skins/wap/handheld.css
+@@ -172,9 +172,9 @@ TextArea {
+ .cat_Western { background-color: #806040 }
+ .cat_Unknown { background-color: #303030 }
+
+-.cat_movie { background-color: #809090 !important; }
+-.cat_series { }
+-.cat_tvshow { }
++.type_movie { background-color: #809090 !important; }
++.type_series { }
++.type_tvshow { }
+
+ /* deprecated show categories that need to be integreted into the above list via regex, or have new categories created for them */
+ .tv_Cine { background-color: Blue }
+diff --git a/skins/wap/style.css b/skins/wap/style.css
+index 95ead32..fef7df3 100644
+--- a/skins/wap/style.css
++++ b/skins/wap/style.css
+@@ -172,9 +172,9 @@ TextArea {
+ .cat_Western { background-color: #806040 }
+ .cat_Unknown { background-color: #303030 }
+
+-.cat_movie { background-color: #809090 !important; }
+-.cat_series { }
+-.cat_tvshow { }
++.type_movie { background-color: #809090 !important; }
++.type_series { }
++.type_tvshow { }
+
+ /* deprecated show categories that need to be integreted into the above list via regex, or have new categories created for them */
+ .tv_Cine { background-color: Blue }
+@@ -184,4 +184,4 @@ TextArea {
+ .tv_Movies { background-color: Blue }
+ .tv_Serie { background-color: DarkOrchid }
+ .tv_SHOW { background-color: sienna }
+-.tv_Tiempo { background-color: #33ff99 }
+\ No newline at end of file
++.tv_Tiempo { background-color: #33ff99 }
Index: mythweb.spec
===================================================================
RCS file: /cvs/free/rpms/mythweb/devel/mythweb.spec,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- mythweb.spec 5 Nov 2014 03:17:48 -0000 1.14
+++ mythweb.spec 27 May 2015 14:31:53 -0000 1.15
@@ -1,11 +1,11 @@
-%global ver_string v0.27.4
+%global vers_string v0.27.4-4-g799db43
Name: mythweb
Summary: The web interface to MythTV
URL: http://www.mythtv.org/
Version: 0.27.4
-Release: 1%{?dist}
+Release: 2%{?dist}
License: GPLv2 and LGPLv2 and MIT
@@ -39,7 +39,7 @@
%prep
%setup -q -n %{name}-%{version}
-#patch0 -p1
+%patch0 -p1
# Fix directory permissions
#find ./ -type d -exec chmod 0755 {} \;
@@ -105,6 +105,9 @@
%changelog
+* Wed May 27 2015 Richard Shaw <hobbes1069(a)gmail.com> - 0.27.4-2
+- Update to latest fixes release.
+
* Thu Oct 23 2014 Richard Shaw <hobbes1069(a)gmail.com> - 0.27.4-1
- Update to latest upstream release.
9 years, 6 months
rpms/mythtv/F-20 ChangeLog, 1.19, 1.20 mythtv-0.27-fixes.patch, 1.10, 1.11 mythtv.spec, 1.144, 1.145
by Richard Shaw
Author: hobbes1069
Update of /cvs/free/rpms/mythtv/F-20
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv21831
Modified Files:
ChangeLog mythtv-0.27-fixes.patch mythtv.spec
Log Message:
* Tue May 26 2015 Richard Shaw <hobbes1069(a)gmail.com> - 0.27.4-6
- Update to latest bugfix release.
- Add conditional for udisks for Fedora 22+ (BZ#3660).
Index: ChangeLog
===================================================================
RCS file: /cvs/free/rpms/mythtv/F-20/ChangeLog,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- ChangeLog 15 Apr 2015 19:55:55 -0000 1.19
+++ ChangeLog 27 May 2015 14:19:15 -0000 1.20
@@ -1,3 +1,287 @@
+commit 8fd277bb1ecab938e57059dc9472b6f922d5fca7
+Author: Paul Harrison <pharrison(a)mythtv.org>
+Date: Wed May 20 23:40:17 2015 +0100
+
+ MythDownloadManager: fix a bug when downloading URL's with percent encoding
+
+ This avoids converting a url to a QUrl only to later use its toString() method
+ which was causing problems with percent encoded URL's not being removed from the
+ download queue because we ended up comparing a human readable URL with a percent
+ encoded one.
+
+ Refs #12356
+
+ (cherry picked from commit d620cb9e1b19a5fa1e693a91d9ea6271e03640b4)
+
+commit e7af3a08c6b6f385d9d4b93948c812a394110a4a
+Author: Paul Harrison <pharrison(a)mythtv.org>
+Date: Wed May 20 23:30:13 2015 +0100
+
+ MythDownloadManager: put the lock around m_downloadInfos when removing a url
+
+ Also log an error if we fail to remove a download url from m_downloadInfos after
+ a download completes.
+
+ Refs #12356
+
+ (cherry picked from commit 58694eb41a528467c7d54b85c211479204ee24ac)
+
+commit 8332919c43b51ab06db9516150a2762498713c86
+Author: Richard Hulme <peper03(a)mythtv.org>
+Date: Tue May 19 12:17:34 2015 +0200
+
+ Make sure the PCR PID is not discarded if it is not listed in the PMT (i.e. the PCR PID contains only PCR packets).
+
+ Fixes #12422
+ (cherry picked from commit 98c47b5c70014e741d4a9fd964ef1d0f5fe2a4f3)
+
+commit 1983b6b97983619a2e0c9905fb1da9a6ce4f63e1
+Author: David Matthews <dm(a)prolingua.co.uk>
+Date: Mon Jan 5 18:22:14 2015 +0000
+
+ Apply UK EIT fix-up on additional transports.
+
+ (cherry picked from commit 7ee28ce83d9cf41b797f40f095a1572c89f36fa2)
+ (cherry picked from commit ef2895ea02197c1cce4026203387bd9bb17107de)
+
+commit a14b34bf706f11ba5d2af11bc92d1f9a5e82c550
+Author: Stuart Morgan <smorgan(a)mythtv.org>
+Date: Wed Jan 7 23:02:13 2015 +0000
+
+ Fix PCR packets being stripped from transport stream following [0f0e6787]
+
+ (cherry picked from commit d947e91eedf73a43dde79446b87e0095e54bf628)
+
+ Refs #12422
+
+commit 6b7397699b5a356ecfb78497a26094b0fbbd334e
+Author: Paul Harrison <pharrison(a)mythtv.org>
+Date: Wed May 13 10:43:41 2015 +0100
+
+ MythDownloadManager: add some logging to try to track down the 100% cpu bug
+
+ This also allows the theme checker to be run once a minute rather than the
+ usual once an hour to try to trigger the bug quicker. Setting the
+ MYTHTV_DEBUGMDM environment variable will run the checker every minute.
+
+ So for 0.27.4-fixes use :-
+ MYTHTV_DEBUGMDM="1" mythfrontend -v file --loglevel=debug
+
+ Refs #12356
+
+ (cherry picked from commit 7e0441c38166ded77b3a1b3a869e40a5af389fa0)
+
+commit 45d2d5173aa1cd27ef15180b4afe3e4779d26019
+Author: Jim Stichnoth <jstichnoth(a)mythtv.org>
+Date: Tue May 5 21:12:59 2015 -0700
+
+ Subtitles: Fix cc608 preamble indents. Fixes #12051.
+
+ Cherry-picked from 366c428708682420bbf53a301d145ca441aedbdd .
+
+ Thanks to Helen (faginbagin) for the analysis and patch.
+
+ As Helen points out in the ticket, it would be all-around better if we
+ took an approach like the cc708 captions and rendered everything onto
+ an internal grid of characters and then converted that to strings to
+ draw on the screen, but that's a lot of work for a mostly deprecated
+ caption format.
+
+commit 8b6d4da2a185e7b07c432267dc9fb80075f9565c
+Author: Jonatan Lindblad <jlindblad(a)mythtv.org>
+Date: Sun Apr 19 23:41:00 2015 +0200
+
+ Video output: Fix OpenGL 1 output after b9971146
+
+ (cherry picked from commit 2b01ed3894be8374b6c143449fa563fbd945da5a)
+ Signed-off-by: Stuart Auchterlonie <stuarta(a)squashedfrog.net>
+
+ Refs #12421
+
+commit a848edd7a4450db1c0eb839cc41ebdd6c6b2dbb6
+Author: Jonatan Lindblad <jlindblad(a)mythtv.org>
+Date: Mon Mar 23 23:46:13 2015 +0100
+
+ Video output: Add default fragment shader for OpenGL 2
+
+ When there were no color conversions with the YUV->RGB shader, there was no
+ other fragment shader active and because of that the video was black.
+
+ (cherry picked from commit b997114683759562dbaf6b80a651070d099195ac)
+ Signed-off-by: Stuart Auchterlonie <stuarta(a)squashedfrog.net>
+
+ Refs #12421
+
+commit 974d1ae9b6fe2f12b8cfc48aafcf10fc730e414e
+Author: Jim Stichnoth <jstichnoth(a)mythtv.org>
+Date: Mon May 4 22:38:58 2015 -0700
+
+ Reduce "Watch Recordings" sluggishness by caching jobqueue state.
+
+ Refs #8962, refs #7990.
+
+ This is essentially a cherry-pick of b43b11ca.
+
+commit d7e08d2d228809e47e8b40c42dfc966b6a17ba6d
+Author: Paul Harrison <pharrison(a)mythtv.org>
+Date: Mon Nov 10 11:19:09 2014 +0000
+
+ UI: Optimize updates to MythUIButtonList when an item's state changes
+
+ This patch checks if a MythUIButtonListItem is visible and only calls
+ the parent's Update() if it is visible thus speeding up the update
+ and also reduces flicker when updating buttonlists with a large number of
+ items.
+
+ Based on a patch by Lawrence Rust.
+
+ (cherry picked from commit 4e5ce7fe25faf3df617b4f633b0e6c58afa34912)
+
+commit 7962008be23de99d3bd69e1603d69749f4678a3c
+Author: Jim Stichnoth <jstichnoth(a)mythtv.org>
+Date: Sat Apr 25 06:56:51 2015 -0700
+
+ Subtitles: Yet another state calculation fix.
+
+ 0925cc05806a057b6549a3471ee043d68948d0bd doesn't count AV subtitles as
+ "text" subtitles, but it should.
+
+ (cherry picked from commit 017cc5c8bb66109500e2c4ff771abcac4f87c034)
+
+commit 74dba3599fd7fa042b253dce1a6742d553c0e54c
+Author: Jim Stichnoth <jstichnoth(a)mythtv.org>
+Date: Thu Apr 23 17:35:29 2015 -0700
+
+ Subtitles: Fix state calculation in EnableCaptions/DisableCaptions.
+
+ 26f6437b874d84c87a52df6d33e449c0d5d9a4bc was too aggressive in
+ assuming that EnableCaptions would actually enable text subtitles, and
+ DisableCaptions would actually disable text subtitles. They only
+ enable/disable a particular type of subtitles (which may have already
+ been enabled/disabled), so we need to check the overall state after
+ the operation is performed.
+
+ (cherry picked from commit 0925cc05806a057b6549a3471ee043d68948d0bd)
+
+commit bcdaa8865ef8700ccbb7214ec39dcbcd8392b2af
+Author: Jim Stichnoth <jstichnoth(a)mythtv.org>
+Date: Wed Apr 22 05:19:14 2015 -0700
+
+ Subtitles: Allow transitions between ATSC and SCTE captions.
+
+ In changeset d526385aa4c1466b064e9544cdb663f357007e35 (refs #9829),
+ code was added such that the first time ATSC caption data is seen, any
+ future SCTE caption data is explicitly ignored. This was to deal with
+ broadcasts containing duplicate caption data.
+
+ This policy causes problems when the recording switches back and forth
+ between the two sources of caption data, such as when the broadcaster
+ splices in commercials.
+
+ The updated solution continues to favor ATSC data, but allows a switch
+ back to SCTE after SCTE data is seen 10 times in a row (a somewhat
+ arbitrarily chosen number) without intervening ATSC data.
+
+ Refs #12054.
+
+ (cherry picked from commit 68bd03ffe5b7bb6456519639caac77486ea0941c)
+
+commit 8f14d3d1e8c798f8a45b3338a33bb71aec877dc7
+Author: Jim Stichnoth <jstichnoth(a)mythtv.org>
+Date: Wed Apr 22 15:05:18 2015 -0700
+
+ Send REC_STARTED_WRITING event for NuppelVideoRecorder.
+
+ This recorder doesn't go through the usual path of the other
+ recorders, where keyframes are identified (and where frames prior to
+ the first keyframe are discarded) and the event is sent after the
+ first keyframe is found.
+
+ Refs #12328.
+
+ (cherry picked from commit c07c21e6c5b7f1380cf7e36e7cbcc8763a5cb225)
+
+commit 5d5eb048e9356ed43bcbb87294c0c1030ddc8c8e
+Author: Richard Hulme <peper03(a)mythtv.org>
+Date: Sat Apr 18 13:02:34 2015 +0200
+
+ Make MythWelcome spawn MythFrontend in the UI thread again due to problems with LIRC but allow events to be processed. This prevents extra key presses being queued and allows them to be ignored until MythFrontend has returned.
+
+commit 554046a5ccdf81e66d6cf3a8be2a080bf7505ffe
+Author: Jim Stichnoth <jstichnoth(a)mythtv.org>
+Date: Sun Apr 19 12:10:29 2015 -0700
+
+ Subtitles: Don't reset subtitle state after seeking.
+
+ After a seek, ac3a988 caused the subtitle-enabled state to be reset to
+ the desired state at playback start, rather than left unchanged.
+
+ (cherry picked from commit 26f6437b874d84c87a52df6d33e449c0d5d9a4bc)
+
+commit 7860e917d2c264f160f14b56b0d49530467d31dc
+Author: Jim Stichnoth <jstichnoth(a)mythtv.org>
+Date: Thu Apr 16 20:33:25 2015 -0700
+
+ Network control: Handle "space" key properly.
+
+ Fixes #12361.
+
+ (cherry picked from commit 72c4abdc6a80add3035be8bdb1f31e20c4cc3b28)
+
+commit 65ada0cff0b1a5c8c06846303cf2dad51980d1aa
+Author: Richard Hulme <peper03(a)mythtv.org>
+Date: Tue Apr 14 23:44:53 2015 +0200
+
+ Spawn MythFrontend from a separate thread in MythWelcome to avoid multiple key events being queued and restarting MythFrontend as soon as it exits.
+
+ Problem discussed here: http://www.gossamer-threads.com/lists/mythtv/users/585218
+ (cherry picked from commit 72de5f444fa094564ec6c2a136ef79c74bf2650b with a minor change to an include file to compile with QT4)
+
+commit e4c6d162627be8bc30548f9b59f719d4f645c057
+Author: Richard Hulme <peper03(a)mythtv.org>
+Date: Mon Apr 13 20:14:06 2015 +0200
+
+ Don't show the miniplayer in MythMusic when starting the next track if we're not playing any more.
+
+ This makes playback stop correctly when 'Repeat mode' is off and we've reached the end of the playlist. Otherwise showing the miniplayer causes playback to start again.
+ (cherry picked from commit bc1ffba7e48db13db589082968422d02ba0c1fda)
+
+commit bcf888fdd4034997c2f2a5d0d877da0e1f463c2e
+Author: Jim Stichnoth <jstichnoth(a)mythtv.org>
+Date: Sun Apr 12 07:30:55 2015 -0700
+
+ Subtitles: Fix automatic display of captions/subtitles.
+
+ There was something of a race condition in the previous code. At
+ startup of playback, the decoder thread runs ahead and updates track
+ lists as it encounters them, including audio, cc608, cc708, etc. If
+ no subtitle tracks are found before the UI thread gets to a certain
+ point, the UI thread commits to keeping subtitles disabled, regardless
+ of the "automatically display subtitles" setting.
+
+ In the new version, at startup of playback, the UI thread keeps the
+ original intention alive so that subtitles will automatically start
+ displaying when they eventually arrive.
+
+ Note that this fix doesn't address the problem where the player ought
+ to switch to a "better" subtitle track type when it comes along, such
+ as switching from cc608 to cc708.
+
+ Refs #10740 (only because this fixes a fix with that ref)
+
+ (cherry picked from commit ac3a988f2e9140322b1a15c34d6ac87071c69d7e)
+
+commit 483f8dd5674acd127bcf342900ea18230b9c2ce3
+Author: Jim Stichnoth <jstichnoth(a)mythtv.org>
+Date: Sun Jul 13 08:38:30 2014 -0700
+
+ Subtitles: Avoid changing subtitle state in the decoder thread.
+
+ This addresses the clearing of stale subtitles after a seek.
+ Refs #10740.
+
+ (cherry picked from commit 438d29a4a64b38ac239f61208262e35a3e486d91)
+
commit 628183a01b66a010e9cf510b9d1d08a348ed5889
Author: Warren Falk <warren(a)warrenfalk.com>
Date: Tue Mar 3 12:57:58 2015 -0500
mythtv-0.27-fixes.patch:
mythplugins/configure | 10
mythplugins/mythmusic/mythmusic/musicplayer.cpp | 2
mythtv/bindings/python/MythTV/methodheap.py | 2
mythtv/configure | 11
mythtv/libs/libmyth/programtypes.cpp | 1
mythtv/libs/libmythbase/mythdownloadmanager.cpp | 26
mythtv/libs/libmythbase/mythversion.h | 2
mythtv/libs/libmythbase/serverpool.cpp | 3
mythtv/libs/libmythmetadata/metadatafactory.cpp | 8
mythtv/libs/libmythtv/avformatdecoder.cpp | 18
mythtv/libs/libmythtv/avformatdecoder.h | 2
mythtv/libs/libmythtv/cc608decoder.cpp | 4
mythtv/libs/libmythtv/channelscan/channelscanmiscsettings.h | 2
mythtv/libs/libmythtv/datadirect.cpp | 56 +
mythtv/libs/libmythtv/datadirect.h | 2
mythtv/libs/libmythtv/eitcache.cpp | 15
mythtv/libs/libmythtv/eitcache.h | 2
mythtv/libs/libmythtv/eithelper.cpp | 40
mythtv/libs/libmythtv/jobqueue.cpp | 26
mythtv/libs/libmythtv/jobqueue.h | 2
mythtv/libs/libmythtv/mhegic.cpp | 9
mythtv/libs/libmythtv/mpeg/dvbdescriptors.h | 50 +
mythtv/libs/libmythtv/mpeg/mpegdescriptors.h | 16
mythtv/libs/libmythtv/mpeg/mpegstreamdata.cpp | 14
mythtv/libs/libmythtv/mythplayer.cpp | 12
mythtv/libs/libmythtv/mythplayer.h | 2
mythtv/libs/libmythtv/openglvideo.cpp | 19
mythtv/libs/libmythtv/recorders/NuppelVideoRecorder.cpp | 4
mythtv/libs/libmythtv/recorders/dtvrecorder.cpp | 13
mythtv/libs/libmythtv/subtitlescreen.cpp | 7
mythtv/libs/libmythtv/test/test_mpegtables/test_mpegtables.h | 52 +
mythtv/libs/libmythtv/test/test_mpegtables/test_mpegtables.pro | 4
mythtv/libs/libmythtv/transporteditor.cpp | 2
mythtv/libs/libmythtv/tv_play.cpp | 14
mythtv/libs/libmythtv/videosource.cpp | 1
mythtv/libs/libmythui/mythuibuttonlist.cpp | 28
mythtv/libs/libmythui/mythuibuttonlist.h | 4
mythtv/libs/libmythui/mythuiimage.cpp | 122 +-
mythtv/libs/libmythui/mythuiimage.h | 5
mythtv/libs/libmythui/mythuitext.cpp | 2
mythtv/libs/libmythupnp/msocketdevice.h | 4
mythtv/libs/libmythupnp/msocketdevice_unix.cpp | 27
mythtv/libs/libmythupnp/ssdp.cpp | 28
mythtv/locales/de_at.xml | 37
mythtv/programs/mythbackend/mainserver.cpp | 3
mythtv/programs/mythfilldatabase/xmltvparser.cpp | 19
mythtv/programs/mythfrontend/globalsettings.cpp | 13
mythtv/programs/mythfrontend/networkcontrol.cpp | 1
mythtv/programs/mythfrontend/playbackbox.cpp | 68 +
mythtv/programs/mythfrontend/playbackbox.h | 27
mythtv/programs/mythfrontend/programrecpriority.cpp | 69 -
mythtv/programs/mythfrontend/themechooser.cpp | 12
mythtv/programs/mythtranscode/transcode.cpp | 2
mythtv/programs/mythtv-setup/importicons.cpp | 6
mythtv/programs/mythwelcome/welcomedialog.cpp | 2
mythtv/themes/default/keyboard/el.xml | 270 ++++++
mythtv/themes/default/keyboard/el_ui.xml | 410 ++++++++++
57 files changed, 1398 insertions(+), 214 deletions(-)
Index: mythtv-0.27-fixes.patch
===================================================================
RCS file: /cvs/free/rpms/mythtv/F-20/mythtv-0.27-fixes.patch,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- mythtv-0.27-fixes.patch 15 Apr 2015 19:55:55 -0000 1.10
+++ mythtv-0.27-fixes.patch 27 May 2015 14:19:15 -0000 1.11
@@ -1,28 +1,40 @@
mythplugins/configure | 10 +-
+ mythplugins/mythmusic/mythmusic/musicplayer.cpp | 2 +-
mythtv/bindings/python/MythTV/methodheap.py | 2 +-
mythtv/configure | 11 +-
mythtv/libs/libmyth/programtypes.cpp | 1 +
- mythtv/libs/libmythbase/mythdownloadmanager.cpp | 3 +
+ mythtv/libs/libmythbase/mythdownloadmanager.cpp | 26 +-
mythtv/libs/libmythbase/mythversion.h | 2 +-
mythtv/libs/libmythbase/serverpool.cpp | 3 +-
mythtv/libs/libmythmetadata/metadatafactory.cpp | 8 +-
+ mythtv/libs/libmythtv/avformatdecoder.cpp | 18 +-
+ mythtv/libs/libmythtv/avformatdecoder.h | 2 +-
+ mythtv/libs/libmythtv/cc608decoder.cpp | 4 +-
.../channelscan/channelscanmiscsettings.h | 2 +
mythtv/libs/libmythtv/datadirect.cpp | 56 ++-
mythtv/libs/libmythtv/datadirect.h | 2 +
mythtv/libs/libmythtv/eitcache.cpp | 15 +-
mythtv/libs/libmythtv/eitcache.h | 2 +-
- mythtv/libs/libmythtv/eithelper.cpp | 36 +-
+ mythtv/libs/libmythtv/eithelper.cpp | 40 +-
+ mythtv/libs/libmythtv/jobqueue.cpp | 26 +-
+ mythtv/libs/libmythtv/jobqueue.h | 2 +
mythtv/libs/libmythtv/mhegic.cpp | 9 +-
mythtv/libs/libmythtv/mpeg/dvbdescriptors.h | 50 ++-
mythtv/libs/libmythtv/mpeg/mpegdescriptors.h | 16 +
- mythtv/libs/libmythtv/mpeg/mpegstreamdata.cpp | 9 +-
- mythtv/libs/libmythtv/recorders/dtvrecorder.cpp | 7 +-
+ mythtv/libs/libmythtv/mpeg/mpegstreamdata.cpp | 14 +-
+ mythtv/libs/libmythtv/mythplayer.cpp | 12 +-
+ mythtv/libs/libmythtv/mythplayer.h | 2 +
+ mythtv/libs/libmythtv/openglvideo.cpp | 19 +-
+ .../libmythtv/recorders/NuppelVideoRecorder.cpp | 4 +
+ mythtv/libs/libmythtv/recorders/dtvrecorder.cpp | 13 +-
+ mythtv/libs/libmythtv/subtitlescreen.cpp | 7 -
.../test/test_mpegtables/test_mpegtables.h | 52 +++
.../test/test_mpegtables/test_mpegtables.pro | 4 +
mythtv/libs/libmythtv/transporteditor.cpp | 2 +
mythtv/libs/libmythtv/tv_play.cpp | 14 +
mythtv/libs/libmythtv/videosource.cpp | 1 +
- mythtv/libs/libmythui/mythuibuttonlist.cpp | 2 +-
+ mythtv/libs/libmythui/mythuibuttonlist.cpp | 28 +-
+ mythtv/libs/libmythui/mythuibuttonlist.h | 4 +
mythtv/libs/libmythui/mythuiimage.cpp | 122 +++---
mythtv/libs/libmythui/mythuiimage.h | 5 +
mythtv/libs/libmythui/mythuitext.cpp | 2 +-
@@ -33,12 +45,17 @@
mythtv/programs/mythbackend/mainserver.cpp | 3 +
mythtv/programs/mythfilldatabase/xmltvparser.cpp | 19 +-
mythtv/programs/mythfrontend/globalsettings.cpp | 13 +
+ mythtv/programs/mythfrontend/networkcontrol.cpp | 1 +
+ mythtv/programs/mythfrontend/playbackbox.cpp | 68 +++-
+ mythtv/programs/mythfrontend/playbackbox.h | 27 ++
.../programs/mythfrontend/programrecpriority.cpp | 69 ++--
+ mythtv/programs/mythfrontend/themechooser.cpp | 12 +-
mythtv/programs/mythtranscode/transcode.cpp | 2 +-
mythtv/programs/mythtv-setup/importicons.cpp | 6 +-
+ mythtv/programs/mythwelcome/welcomedialog.cpp | 2 +-
mythtv/themes/default/keyboard/el.xml | 270 ++++++++++++++
mythtv/themes/default/keyboard/el_ui.xml | 410 +++++++++++++++++++++
- 40 files changed, 1177 insertions(+), 159 deletions(-)
+ 57 files changed, 1398 insertions(+), 214 deletions(-)
diff --git a/mythplugins/configure b/mythplugins/configure
index b9086ba..f14a405 100755
@@ -64,6 +81,19 @@
else
die "qmake for Qt4.8 or newer not found.\nPlease specify the correct qmake with --qmake="
fi
+diff --git a/mythplugins/mythmusic/mythmusic/musicplayer.cpp b/mythplugins/mythmusic/mythmusic/musicplayer.cpp
+index 867c765..713408d 100644
+--- a/mythplugins/mythmusic/mythmusic/musicplayer.cpp
++++ b/mythplugins/mythmusic/mythmusic/musicplayer.cpp
+@@ -504,7 +504,7 @@ void MusicPlayer::nextAuto(void)
+ }
+
+ // if we don't already have a gui attached show the miniplayer if configured to do so
+- if (m_isAutoplay && m_canShowPlayer && m_autoShowPlayer)
++ if (m_isAutoplay && m_canShowPlayer && m_autoShowPlayer && m_isPlaying)
+ {
+ MythScreenStack *popupStack =
+ GetMythMainWindow()->GetStack("popup stack");
diff --git a/mythtv/bindings/python/MythTV/methodheap.py b/mythtv/bindings/python/MythTV/methodheap.py
index d598b2f..b41b2da 100644
--- a/mythtv/bindings/python/MythTV/methodheap.py
@@ -123,10 +153,51 @@
#include "programtypes.h"
#include "mythdate.h"
diff --git a/mythtv/libs/libmythbase/mythdownloadmanager.cpp b/mythtv/libs/libmythbase/mythdownloadmanager.cpp
-index 02d27a0..63e2e51 100644
+index 02d27a0..dbf061f 100644
--- a/mythtv/libs/libmythbase/mythdownloadmanager.cpp
+++ b/mythtv/libs/libmythbase/mythdownloadmanager.cpp
-@@ -312,7 +312,10 @@ void MythDownloadManager::run(void)
+@@ -11,6 +11,7 @@
+ #include <QTextStream>
+ #include <QNetworkProxy>
+ #include <QMutexLocker>
++#include <QUrl>
+
+ #include "stdlib.h"
+
+@@ -27,7 +28,6 @@
+
+ #include "mythdownloadmanager.h"
+ #include "mythlogging.h"
+-#include <QUrl>
+
+ using namespace std;
+
+@@ -276,6 +276,8 @@ void MythDownloadManager::run(void)
+ updateCookieJar();
+ }
+ m_infoLock->lock();
++ LOG(VB_FILE, LOG_DEBUG, LOC + QString("items downloading %1").arg(m_downloadInfos.count()));
++ LOG(VB_FILE, LOG_DEBUG, LOC + QString("items queued %1").arg(m_downloadQueue.count()));
+ downloading = !m_downloadInfos.isEmpty();
+ itemsInCancellationQueue = !m_cancellationQueue.isEmpty();
+ m_infoLock->unlock();
+@@ -297,9 +299,15 @@ void MythDownloadManager::run(void)
+ m_queueWaitLock.lock();
+
+ if (downloading)
++ {
++ LOG(VB_FILE, LOG_DEBUG, LOC + QString("waiting 200ms"));
+ m_queueWaitCond.wait(&m_queueWaitLock, 200);
++ }
+ else
++ {
++ LOG(VB_FILE, LOG_DEBUG, LOC + QString("waiting for more items to download"));
+ m_queueWaitCond.wait(&m_queueWaitLock);
++ }
+
+ m_queueWaitLock.unlock();
+ }
+@@ -312,10 +320,12 @@ void MythDownloadManager::run(void)
m_downloadQueue.pop_front();
if (!dlInfo)
@@ -135,8 +206,38 @@
continue;
+ }
- QUrl qurl(dlInfo->m_url);
- if (m_downloadInfos.contains(qurl.toString()))
+- QUrl qurl(dlInfo->m_url);
+- if (m_downloadInfos.contains(qurl.toString()))
++ if (m_downloadInfos.contains(dlInfo->m_url))
+ {
+ // Push request to the end of the queue to let others process.
+ // If this is the only item in the queue, force the loop to
+@@ -335,7 +345,7 @@ void MythDownloadManager::run(void)
+ downloadQNetworkRequest(dlInfo);
+ }
+
+- m_downloadInfos[qurl.toString()] = dlInfo;
++ m_downloadInfos[dlInfo->m_url] = dlInfo;
+ }
+ m_infoLock->unlock();
+ }
+@@ -1210,9 +1220,15 @@ void MythDownloadManager::downloadFinished(MythDownloadInfo *dlInfo)
+ // else we downloaded via QNetworkAccessManager
+ // AND the caller is handling the reply
+
+- m_downloadInfos.remove(dlInfo->m_url);
++ m_infoLock->lock();
++ if (!m_downloadInfos.remove(dlInfo->m_url))
++ LOG(VB_GENERAL, LOG_ERR, LOC +
++ QString("ERROR download finished but failed to remove url: %1")
++ .arg(dlInfo->m_url));
++
+ if (reply)
+ m_downloadReplies.remove(reply);
++ m_infoLock->unlock();
+
+ dlInfo->SetDone(true);
+
diff --git a/mythtv/libs/libmythbase/mythversion.h b/mythtv/libs/libmythbase/mythversion.h
index b097b21..26d37ff 100644
--- a/mythtv/libs/libmythbase/mythversion.h
@@ -184,6 +285,94 @@
info.url = fanartlist.takeAt(index).url;
map.insert(kArtworkFanart, info);
}
+diff --git a/mythtv/libs/libmythtv/avformatdecoder.cpp b/mythtv/libs/libmythtv/avformatdecoder.cpp
+index 8507d6b..e35e675 100644
+--- a/mythtv/libs/libmythtv/avformatdecoder.cpp
++++ b/mythtv/libs/libmythtv/avformatdecoder.cpp
+@@ -410,7 +410,7 @@ AvFormatDecoder::AvFormatDecoder(MythPlayer *parent,
+ video_codec_id(kCodec_NONE),
+ maxkeyframedist(-1),
+ // Closed Caption & Teletext decoders
+- ignore_scte(false),
++ ignore_scte(0),
+ invert_scte_field(0),
+ last_scte_field(0),
+ ccd608(new CC608Decoder(parent->GetCC608Reader())),
+@@ -3676,17 +3676,31 @@ bool AvFormatDecoder::ProcessVideoFrame(AVStream *stream, AVFrame *mpa_pic)
+ {
+ AVCodecContext *context = stream->codec;
+
++ // We need to mediate between ATSC and SCTE data when both are present. If
++ // both are present, we generally want to prefer ATSC. However, there may
++ // be large sections of the recording where ATSC is used and other sections
++ // where SCTE is used. In that case, we want to allow a natural transition
++ // from ATSC back to SCTE. We do this by allowing 10 consecutive SCTE
++ // frames, without an intervening ATSC frame, to cause a switch back to
++ // considering SCTE frames. The number 10 is somewhat arbitrarily chosen.
++
+ uint cc_len = (uint) max(mpa_pic->scte_cc_len,0);
+ uint8_t *cc_buf = mpa_pic->scte_cc_buf;
+ bool scte = true;
+
++ // If we saw SCTE, then decrement a nonzero ignore_scte count.
++ if (cc_len > 0 && ignore_scte)
++ --ignore_scte;
++
+ // If both ATSC and SCTE caption data are available, prefer ATSC
+ if ((mpa_pic->atsc_cc_len > 0) || ignore_scte)
+ {
+- ignore_scte = true;
+ cc_len = (uint) max(mpa_pic->atsc_cc_len, 0);
+ cc_buf = mpa_pic->atsc_cc_buf;
+ scte = false;
++ // If we explicitly saw ATSC, then reset ignore_scte count.
++ if (cc_len > 0)
++ ignore_scte = 10;
+ }
+
+ // Decode CEA-608 and CEA-708 captions
+diff --git a/mythtv/libs/libmythtv/avformatdecoder.h b/mythtv/libs/libmythtv/avformatdecoder.h
+index 36e2714..70c8991 100644
+--- a/mythtv/libs/libmythtv/avformatdecoder.h
++++ b/mythtv/libs/libmythtv/avformatdecoder.h
+@@ -328,7 +328,7 @@ class AvFormatDecoder : public DecoderBase
+ int maxkeyframedist;
+
+ // Caption/Subtitle/Teletext decoders
+- bool ignore_scte;
++ uint ignore_scte;
+ uint invert_scte_field;
+ uint last_scte_field;
+ CC608Decoder *ccd608;
+diff --git a/mythtv/libs/libmythtv/cc608decoder.cpp b/mythtv/libs/libmythtv/cc608decoder.cpp
+index f9768c1..035ea42 100644
+--- a/mythtv/libs/libmythtv/cc608decoder.cpp
++++ b/mythtv/libs/libmythtv/cc608decoder.cpp
+@@ -323,6 +323,7 @@ void CC608Decoder::FormatCCField(int tc, int field, int data)
+ .arg(b2, 2, 16));
+ // Encode as 0x7000 through 0x700f for the
+ // 16 possible values of b2.
++ ccbuf[mode] += ' ';
+ ccbuf[mode] += QChar(0x7000 + (b2 & 0xf));
+ len = ccbuf[mode].length();
+ col[mode]++;
+@@ -690,7 +691,7 @@ QString CC608Decoder::ToASCII(const QString &cc608str, bool suppress_unknown)
+ if (cpu >= 0x7000 && cpu < 0x7000 + 0x30)
+ {
+ if (!suppress_unknown)
+- ret += QString("[%1]").arg(cpu - 0x7000, 2, 16);
++ ret += QString("[%1]").arg(cpu, 2, 16);
+ }
+ else if (cpu <= 0x80)
+ ret += QString(cp.toLatin1());
+@@ -856,7 +857,6 @@ int CC608Decoder::NewRowCC(int mode, int len)
+ {
+ ccbuf[mode] += QChar(newattr[mode] + 0x7000);
+ len++;
+- col[mode]++;
+ }
+
+ newcol[mode] = 0;
diff --git a/mythtv/libs/libmythtv/channelscan/channelscanmiscsettings.h b/mythtv/libs/libmythtv/channelscan/channelscanmiscsettings.h
index 8a81f07..6a167b7 100644
--- a/mythtv/libs/libmythtv/channelscan/channelscanmiscsettings.h
@@ -396,7 +585,7 @@
// event key cache
key_map_t channelMap;
diff --git a/mythtv/libs/libmythtv/eithelper.cpp b/mythtv/libs/libmythtv/eithelper.cpp
-index bf980ed..e34714f 100644
+index bf980ed..ab14a71 100644
--- a/mythtv/libs/libmythtv/eithelper.cpp
+++ b/mythtv/libs/libmythtv/eithelper.cpp
@@ -566,17 +566,49 @@ void EITHelper::AddEIT(const DVBEventInformationTable *eit)
@@ -451,6 +640,84 @@
QDateTime starttime = eit->StartTimeUTC(i);
// fix starttime only if the duration is a multiple of a minute
if (!(eit->DurationInSeconds(i) % 60))
+@@ -989,6 +1021,8 @@ static void init_fixup(QMap<uint64_t,uint> &fix)
+ fix[ 2057LL << 32 | 2U << 16] = EITFixUp::kFixUK;
+ fix[ 2061LL << 32 | 2U << 16] = EITFixUp::kFixUK;
+ fix[ 2063LL << 32 | 2U << 16] = EITFixUp::kFixUK;
++ fix[ 2064LL << 32 | 2U << 16] = EITFixUp::kFixUK;
++ fix[ 2066LL << 32 | 2U << 16] = EITFixUp::kFixUK;
+ fix[ 2068LL << 32 | 2U << 16] = EITFixUp::kFixUK;
+ fix[ 2301LL << 32 | 2U << 16] = EITFixUp::kFixUK;
+ fix[ 2302LL << 32 | 2U << 16] = EITFixUp::kFixUK;
+@@ -1014,6 +1048,8 @@ static void init_fixup(QMap<uint64_t,uint> &fix)
+ fix[ 2052LL << 32 | 2U << 16] = EITFixUp::kFixUK;
+ fix[ 2055LL << 32 | 2U << 16] = EITFixUp::kFixUK;
+ fix[ 2056LL << 32 | 2U << 16] = EITFixUp::kFixUK;
++ fix[ 2076LL << 32 | 2U << 16] = EITFixUp::kFixUK;
++ fix[ 2081LL << 32 | 2U << 16] = EITFixUp::kFixUK;
+ fix[ 2315LL << 32 | 2U << 16] = EITFixUp::kFixUK;
+ fix[ 2316LL << 32 | 2U << 16] = EITFixUp::kFixUK;
+ for (int i = 2402; i <= 2412; ++i)
+diff --git a/mythtv/libs/libmythtv/jobqueue.cpp b/mythtv/libs/libmythtv/jobqueue.cpp
+index f426309..ff79a47 100644
+--- a/mythtv/libs/libmythtv/jobqueue.cpp
++++ b/mythtv/libs/libmythtv/jobqueue.cpp
+@@ -1062,16 +1062,21 @@ int JobQueue::GetRunningJobID(uint chanid, const QDateTime &recstartts)
+ return 0;
+ }
+
+-bool JobQueue::IsJobRunning(int jobType,
+- uint chanid, const QDateTime &recstartts)
++bool JobQueue::IsJobStatusQueued(int status)
+ {
+- int tmpStatus = GetJobStatus(jobType, chanid, recstartts);
++ return (status == JOB_QUEUED);
++}
+
+- if ((tmpStatus != JOB_UNKNOWN) && (tmpStatus != JOB_QUEUED) &&
+- (!(tmpStatus & JOB_DONE)))
+- return true;
++bool JobQueue::IsJobStatusRunning(int status)
++{
++ return ((status != JOB_UNKNOWN) && (status != JOB_QUEUED) &&
++ (!(status & JOB_DONE)));
++}
+
+- return false;
++bool JobQueue::IsJobRunning(int jobType,
++ uint chanid, const QDateTime &recstartts)
++{
++ return IsJobStatusRunning(GetJobStatus(jobType, chanid, recstartts));
+ }
+
+ bool JobQueue::IsJobRunning(int jobType, const ProgramInfo &pginfo)
+@@ -1094,12 +1099,7 @@ bool JobQueue::IsJobQueuedOrRunning(
+ bool JobQueue::IsJobQueued(
+ int jobType, uint chanid, const QDateTime &recstartts)
+ {
+- int tmpStatus = GetJobStatus(jobType, chanid, recstartts);
+-
+- if (tmpStatus & JOB_QUEUED)
+- return true;
+-
+- return false;
++ return IsJobStatusQueued(GetJobStatus(jobType, chanid, recstartts));
+ }
+
+ QString JobQueue::JobText(int jobType)
+diff --git a/mythtv/libs/libmythtv/jobqueue.h b/mythtv/libs/libmythtv/jobqueue.h
+index e799912..ee7dcaa 100644
+--- a/mythtv/libs/libmythtv/jobqueue.h
++++ b/mythtv/libs/libmythtv/jobqueue.h
+@@ -161,6 +161,8 @@ class MTV_PUBLIC JobQueue : public QObject, public QRunnable
+ static bool IsJobRunning(int jobType, const ProgramInfo &pginfo);
+ static bool IsJobQueued(int jobType,
+ uint chanid, const QDateTime &recstartts);
++ static bool IsJobStatusQueued(int status);
++ static bool IsJobStatusRunning(int status);
+ static bool PauseJob(int jobID);
+ static bool ResumeJob(int jobID);
+ static bool RestartJob(int jobID);
diff --git a/mythtv/libs/libmythtv/mhegic.cpp b/mythtv/libs/libmythtv/mhegic.cpp
index d8a5fbb..31456c1 100644
--- a/mythtv/libs/libmythtv/mhegic.cpp
@@ -595,7 +862,7 @@
{
public:
diff --git a/mythtv/libs/libmythtv/mpeg/mpegstreamdata.cpp b/mythtv/libs/libmythtv/mpeg/mpegstreamdata.cpp
-index e295975..9738c7f 100644
+index e295975..cc293e8 100644
--- a/mythtv/libs/libmythtv/mpeg/mpegstreamdata.cpp
+++ b/mythtv/libs/libmythtv/mpeg/mpegstreamdata.cpp
@@ -147,9 +147,8 @@ void MPEGStreamData::SetRecordingType(const QString &recording_type)
@@ -622,8 +889,156 @@
#ifdef DEBUG_MPEG_RADIO
if (is_video)
+@@ -596,12 +601,13 @@ bool MPEGStreamData::CreatePMTSingleProgram(const ProgramMapTable &pmt)
+ // Filter out streams not used for basic television
+ if (_recording_type == "tv" && !is_audio && !is_video &&
+ !MPEGDescriptor::Find(desc, DescriptorID::teletext) &&
+- !MPEGDescriptor::Find(desc, DescriptorID::subtitling))
++ !MPEGDescriptor::Find(desc, DescriptorID::subtitling) &&
++ pid != pmt.PCRPID()) // We must not strip the PCR!
+ {
+ continue;
+ }
+
+- if (!is_audio && !is_video)
++ if (!is_audio && !is_video) //NOTE: Anything which isn't audio or video is data
+ dataPIDs.push_back(pid);
+
+ pdesc.push_back(desc);
+diff --git a/mythtv/libs/libmythtv/mythplayer.cpp b/mythtv/libs/libmythtv/mythplayer.cpp
+index 0381063..59ebd1b 100644
+--- a/mythtv/libs/libmythtv/mythplayer.cpp
++++ b/mythtv/libs/libmythtv/mythplayer.cpp
+@@ -1377,6 +1377,7 @@ void MythPlayer::DisableCaptions(uint mode, bool osd_msg)
+
+ QMutexLocker locker(&osdLock);
+
++ textDesired = textDisplayMode & kDisplayAllTextCaptions;
+ QString msg = "";
+ if (kDisplayNUVTeletextCaptions & mode)
+ msg += tr("TXT CAP");
+@@ -1413,7 +1414,8 @@ void MythPlayer::DisableCaptions(uint mode, bool osd_msg)
+ void MythPlayer::EnableCaptions(uint mode, bool osd_msg)
+ {
+ QMutexLocker locker(&osdLock);
+- QString msg;
++ textDesired = mode & kDisplayAllTextCaptions;
++ QString msg = "";
+ if ((kDisplayCC608 & mode) || (kDisplayCC708 & mode) ||
+ (kDisplayAVSubtitle & mode) || kDisplayRawTextSubtitle & mode)
+ {
+@@ -1510,8 +1512,8 @@ void MythPlayer::SetCaptionsEnabled(bool enable, bool osd_msg)
+ {
+ EnableCaptions(mode, osd_msg);
+ }
+- ResetCaptions();
+ }
++ ResetCaptions();
+ }
+
+ bool MythPlayer::GetCaptionsEnabled(void)
+@@ -3975,7 +3977,11 @@ void MythPlayer::ClearAfterSeek(bool clearvideobuffers)
+ tc_wrap[TC_AUDIO] = savedAudioTimecodeOffset;
+
+ audio.Reset();
+- ResetCaptions();
++ // Reenable (or re-disable) subtitles, which ultimately does
++ // nothing except to call ResetCaptions() to erase any captions
++ // currently on-screen. The key is that the erasing is done in
++ // the UI thread, not the decoder thread.
++ EnableSubtitles(textDesired);
+ deleteMap.TrackerReset(framesPlayed);
+ commBreakMap.SetTracker(framesPlayed);
+ commBreakMap.ResetLastSkip();
+diff --git a/mythtv/libs/libmythtv/mythplayer.h b/mythtv/libs/libmythtv/mythplayer.h
+index 541a0d5..a1df5f2 100644
+--- a/mythtv/libs/libmythtv/mythplayer.h
++++ b/mythtv/libs/libmythtv/mythplayer.h
+@@ -77,6 +77,8 @@ enum
+ kDisplayRawTextSubtitle = 0x080,
+ kDisplayAllCaptions = 0x0FF,
+ kDisplayTeletextMenu = 0x100,
++ kDisplayAllTextCaptions = ~kDisplayDVDButton &
++ kDisplayAllCaptions,
+ };
+
+ enum PlayerFlags
+diff --git a/mythtv/libs/libmythtv/openglvideo.cpp b/mythtv/libs/libmythtv/openglvideo.cpp
+index 2de7d4c..e16af76 100644
+--- a/mythtv/libs/libmythtv/openglvideo.cpp
++++ b/mythtv/libs/libmythtv/openglvideo.cpp
+@@ -469,7 +469,9 @@ bool OpenGLVideo::AddFilter(OpenGLFilterType filter)
+ success = false;
+ }
+
+- if (success && (filter != kGLFilterNone) && (filter != kGLFilterResize))
++ if (success &&
++ (((filter != kGLFilterNone) && (filter != kGLFilterResize)) ||
++ ((gl_features & kGLSL) && (filter == kGLFilterResize))))
+ {
+ program = AddFragmentProgram(filter);
+ if (!program)
+@@ -1040,7 +1042,8 @@ void OpenGLVideo::PrepareFrame(bool topfieldfirst, FrameScanType scan,
+
+ // enable fragment program and set any environment variables
+ GLuint program = 0;
+- if ((type != kGLFilterNone) && (type != kGLFilterResize))
++ if (((type != kGLFilterNone) && (type != kGLFilterResize)) ||
++ ((gl_features & kGLSL) && (type == kGLFilterResize)))
+ {
+ GLuint prog_ref = 0;
+
+@@ -1575,6 +1578,16 @@ static const QString BicubicShader =
+ " gl_FragColor = mix(tex00, tex10, parmx.z);\n"
+ "}\n";
+
++static const QString DefaultFragmentShader =
++"GLSL_DEFINES"
++"uniform GLSL_SAMPLER s_texture0;\n"
++"varying vec2 v_texcoord0;\n"
++"void main(void)\n"
++"{\n"
++" vec4 color = GLSL_TEXTURE(s_texture0, v_texcoord0);\n"
++" gl_FragColor = vec4(color.xyz, 1.0);\n"
++"}\n";
++
+ void OpenGLVideo::GetProgramStrings(QString &vertex, QString &fragment,
+ OpenGLFilterType filter,
+ QString deint, FrameScanType field)
+@@ -1601,7 +1614,9 @@ void OpenGLVideo::GetProgramStrings(QString &vertex, QString &fragment,
+ break;
+ }
+ case kGLFilterNone:
++ break;
+ case kGLFilterResize:
++ fragment = DefaultFragmentShader;
+ break;
+ case kGLFilterBicubic:
+ fragment = BicubicShader;
+diff --git a/mythtv/libs/libmythtv/recorders/NuppelVideoRecorder.cpp b/mythtv/libs/libmythtv/recorders/NuppelVideoRecorder.cpp
+index ed57a6b..323729f 100644
+--- a/mythtv/libs/libmythtv/recorders/NuppelVideoRecorder.cpp
++++ b/mythtv/libs/libmythtv/recorders/NuppelVideoRecorder.cpp
+@@ -64,6 +64,7 @@ extern "C" {
+ #include "RTjpegN.h"
+
+ #include "programinfo.h"
++#include "mythsystemevent.h"
+
+ #define LOC QString("NVR(%1): ").arg(videodevice)
+
+@@ -3076,6 +3077,9 @@ void NuppelVideoRecorder::WriteVideo(VideoFrame *frame, bool skipsync,
+ ringBuffer->Write(out, out_len);
+ }
+
++ if (framesWritten == 0)
++ SendMythSystemRecEvent("REC_STARTED_WRITING", curRecording);
++
+ frameofgop++;
+ framesWritten++;
+
diff --git a/mythtv/libs/libmythtv/recorders/dtvrecorder.cpp b/mythtv/libs/libmythtv/recorders/dtvrecorder.cpp
-index 099f8a6..df05491 100644
+index 099f8a6..9b627ff 100644
--- a/mythtv/libs/libmythtv/recorders/dtvrecorder.cpp
+++ b/mythtv/libs/libmythtv/recorders/dtvrecorder.cpp
@@ -1135,7 +1135,7 @@ void DTVRecorder::FindPSKeyFrames(const uint8_t *buffer, uint len)
@@ -635,7 +1050,20 @@
}
if ((aspectRatio > 0) && (aspectRatio != m_videoAspect))
-@@ -1336,6 +1336,11 @@ bool DTVRecorder::ProcessTSPacket(const TSPacket &tspacket)
+@@ -1299,6 +1299,12 @@ void DTVRecorder::HandleSingleProgramPMT(ProgramMapTable *pmt, bool insert)
+ for (uint i = 0; i < pmt->StreamCount(); ++i)
+ _stream_id[pmt->StreamPID(i)] = pmt->StreamType(i);
+
++ // If the PCRPID is valid and the PCR is not contained
++ // in another stream, make sure the PCR stream is not
++ // discarded (use PrivSec type as dummy 'valid' value)
++ if(pmt->PCRPID() != 0x1fff && pmt->FindPID(pmt->PCRPID()) == -1)
++ _stream_id[pmt->PCRPID()] = StreamID::PrivSec;
++
+ if (!ringBuffer)
+ return;
+
+@@ -1336,6 +1342,11 @@ bool DTVRecorder::ProcessTSPacket(const TSPacket &tspacket)
FindOtherKeyframes(&tspacket);
_buffer_packets = false;
}
@@ -647,6 +1075,24 @@
else
{
// There are audio/video streams. Only write the packet
+diff --git a/mythtv/libs/libmythtv/subtitlescreen.cpp b/mythtv/libs/libmythtv/subtitlescreen.cpp
+index a3863f6..b48fb9c 100644
+--- a/mythtv/libs/libmythtv/subtitlescreen.cpp
++++ b/mythtv/libs/libmythtv/subtitlescreen.cpp
+@@ -1311,13 +1311,6 @@ static QString extract_cc608(QString &text, int &color,
+ else
+ {
+ result = text.left(nextControl);
+- // Print the space character before handling the next control
+- // character, otherwise the space character will be lost due
+- // to the text.trimmed() operation in the MythUISimpleText
+- // constructor, combined with the left-justification of
+- // captions.
+- if (text[nextControl] < (0x7000 + 0x10))
+- result += " ";
+ text = text.mid(nextControl);
+ }
+
diff --git a/mythtv/libs/libmythtv/test/test_mpegtables/test_mpegtables.h b/mythtv/libs/libmythtv/test/test_mpegtables/test_mpegtables.h
index fa1412b..84e9a6d 100644
--- a/mythtv/libs/libmythtv/test/test_mpegtables/test_mpegtables.h
@@ -777,10 +1223,120 @@
QObject::tr("Some Linux DVB drivers, in particular for the "
"Hauppauge Nova-T, require that we slow down "
diff --git a/mythtv/libs/libmythui/mythuibuttonlist.cpp b/mythtv/libs/libmythui/mythuibuttonlist.cpp
-index 95966a5..24669b5 100644
+index 95966a5..ea0d634 100644
--- a/mythtv/libs/libmythui/mythuibuttonlist.cpp
+++ b/mythtv/libs/libmythui/mythuibuttonlist.cpp
-@@ -3508,7 +3508,7 @@ void MythUIButtonListItem::SetToRealButton(MythUIStateType *button, bool selecte
+@@ -1408,7 +1408,6 @@ void MythUIButtonList::CalculateButtonPositions(void)
+
+ for (; button < (int)m_itemsVisible; button++)
+ m_ButtonList[button]->SetVisible(false);
+-
+ }
+
+ void MythUIButtonList::SanitizePosition(void)
+@@ -1432,6 +1431,14 @@ void MythUIButtonList::CalculateArrowStates()
+
+ m_needsUpdate = false;
+
++ // mark the visible buttons as invisible
++ QMap<int, MythUIButtonListItem*>::const_iterator i = m_ButtonToItem.constBegin();
++ while (i != m_ButtonToItem.constEnd())
++ {
++ i.value()->setVisible(false);
++ ++i;
++ }
++
+ // set topitem, top position
+ SanitizePosition();
+ m_ButtonToItem.clear();
+@@ -3042,6 +3049,7 @@ MythUIButtonListItem::MythUIButtonListItem(MythUIButtonList *lbtype,
+ m_state = state;
+ m_showArrow = showArrow;
+ m_data = 0;
++ m_isVisible = false;
+
+ if (state >= NotChecked)
+ m_checkable = true;
+@@ -3066,6 +3074,7 @@ MythUIButtonListItem::MythUIButtonListItem(MythUIButtonList *lbtype,
+ m_checkable = false;
+ m_state = CantCheck;
+ m_showArrow = false;
++ m_isVisible = false;
+
+ if (m_parent)
+ m_parent->InsertItem(this, listPosition);
+@@ -3101,7 +3110,7 @@ void MythUIButtonListItem::SetText(const QString &text, const QString &name,
+ else
+ m_text = text;
+
+- if (m_parent)
++ if (m_parent && m_isVisible)
+ m_parent->Update();
+ }
+
+@@ -3119,7 +3128,7 @@ void MythUIButtonListItem::SetTextFromMap(const InfoMap &infoMap,
+ ++map_it;
+ }
+
+- if (m_parent)
++ if (m_parent && m_isVisible)
+ m_parent->Update();
+ }
+
+@@ -3216,7 +3225,7 @@ void MythUIButtonListItem::SetFontState(const QString &state,
+ else
+ m_fontState = state;
+
+- if (m_parent)
++ if (m_parent && m_isVisible)
+ m_parent->Update();
+ }
+
+@@ -3248,7 +3257,7 @@ void MythUIButtonListItem::SetImage(MythImage *image, const QString &name)
+ m_image = image;
+ }
+
+- if (m_parent)
++ if (m_parent && m_isVisible)
+ m_parent->Update();
+ }
+
+@@ -3304,7 +3313,7 @@ void MythUIButtonListItem::SetImage(
+ do_update = true;
+ }
+
+- if (m_parent && do_update)
++ if (m_parent && do_update && m_isVisible)
+ m_parent->Update();
+ }
+
+@@ -3341,7 +3350,7 @@ void MythUIButtonListItem::DisplayState(const QString &state,
+ do_update = true;
+ }
+
+- if (m_parent && do_update)
++ if (m_parent && do_update && m_isVisible)
+ m_parent->Update();
+ }
+
+@@ -3373,7 +3382,7 @@ void MythUIButtonListItem::setChecked(MythUIButtonListItem::CheckState state)
+
+ m_state = state;
+
+- if (m_parent)
++ if (m_parent && m_isVisible)
+ m_parent->Update();
+ }
+
+@@ -3411,6 +3420,7 @@ void MythUIButtonListItem::SetToRealButton(MythUIStateType *button, bool selecte
+ return;
+
+ m_parent->ItemVisible(this);
++ m_isVisible = true;
+
+ QString state;
+
+@@ -3508,7 +3518,7 @@ void MythUIButtonListItem::SetToRealButton(MythUIStateType *button, bool selecte
QString newText = text->GetTemplateText();
@@ -789,6 +1345,28 @@
regexp.setMinimal(true);
if (!newText.isEmpty() && newText.contains(regexp))
+diff --git a/mythtv/libs/libmythui/mythuibuttonlist.h b/mythtv/libs/libmythui/mythuibuttonlist.h
+index c62862c..de27a79 100644
+--- a/mythtv/libs/libmythui/mythuibuttonlist.h
++++ b/mythtv/libs/libmythui/mythuibuttonlist.h
+@@ -85,6 +85,9 @@ class MUI_PUBLIC MythUIButtonListItem
+ void DisplayState(const QString &state, const QString &name);
+ void SetStatesFromMap(const InfoMap &stateMap);
+
++ bool isVisible() const { return m_isVisible; }
++ void setVisible(bool flag) { m_isVisible = flag; }
++
+ bool checkable() const;
+ void setCheckable(bool flag);
+
+@@ -110,6 +113,7 @@ class MUI_PUBLIC MythUIButtonListItem
+ CheckState m_state;
+ QVariant m_data;
+ bool m_showArrow;
++ bool m_isVisible;
+
+ QMap<QString, TextProperties> m_strings;
+ QMap<QString, MythImage*> m_images;
diff --git a/mythtv/libs/libmythui/mythuiimage.cpp b/mythtv/libs/libmythui/mythuiimage.cpp
index 4707f01..5674bf1 100644
--- a/mythtv/libs/libmythui/mythuiimage.cpp
@@ -1275,6 +1853,174 @@
osd->addChild(PersistentBrowseMode());
osd->addChild(BrowseAllTuners());
osd->addChild(DefaultCCMode());
+diff --git a/mythtv/programs/mythfrontend/networkcontrol.cpp b/mythtv/programs/mythfrontend/networkcontrol.cpp
+index eb147ed..d71ac0d 100644
+--- a/mythtv/programs/mythfrontend/networkcontrol.cpp
++++ b/mythtv/programs/mythfrontend/networkcontrol.cpp
+@@ -187,6 +187,7 @@ NetworkControl::NetworkControl() :
+ keyMap["f23"] = Qt::Key_F23;
+ keyMap["f24"] = Qt::Key_F24;
+
++ keyTextMap[Qt::Key_Space] = " ";
+ keyTextMap[Qt::Key_Plus] = "+";
+ keyTextMap[Qt::Key_Comma] = ",";
+ keyTextMap[Qt::Key_Minus] = "-";
+diff --git a/mythtv/programs/mythfrontend/playbackbox.cpp b/mythtv/programs/mythfrontend/playbackbox.cpp
+index d01293f..18ba2ac 100644
+--- a/mythtv/programs/mythfrontend/playbackbox.cpp
++++ b/mythtv/programs/mythfrontend/playbackbox.cpp
+@@ -280,17 +280,17 @@ static QString extract_main_state(const ProgramInfo &pginfo, const TV *player)
+ return state;
+ }
+
+-static QString extract_job_state(const ProgramInfo &pginfo)
++QString PlaybackBox::extract_job_state(const ProgramInfo &pginfo)
+ {
+ QString job = "default";
+
+ if (pginfo.GetRecordingStatus() == rsRecording)
+ job = "recording";
+- else if (JobQueue::IsJobQueuedOrRunning(
++ else if (m_jobQueue.IsJobQueuedOrRunning(
+ JOB_TRANSCODE, pginfo.GetChanID(),
+ pginfo.GetRecordingStartTime()))
+ job = "transcoding";
+- else if (JobQueue::IsJobQueuedOrRunning(
++ else if (m_jobQueue.IsJobQueuedOrRunning(
+ JOB_COMMFLAG, pginfo.GetChanID(),
+ pginfo.GetRecordingStartTime()))
+ job = "commflagging";
+@@ -298,15 +298,16 @@ static QString extract_job_state(const ProgramInfo &pginfo)
+ return job;
+ }
+
+-static QString extract_commflag_state(const ProgramInfo &pginfo)
++QString PlaybackBox::extract_commflag_state(const ProgramInfo &pginfo)
+ {
+ QString job = "default";
+
+ // commflagged can be yes, no or processing
+- if (JobQueue::IsJobRunning(JOB_COMMFLAG, pginfo))
++ if (m_jobQueue.IsJobRunning(JOB_COMMFLAG, pginfo.GetChanID(),
++ pginfo.GetRecordingStartTime()))
+ return "running";
+- if (JobQueue::IsJobQueued(JOB_COMMFLAG, pginfo.GetChanID(),
+- pginfo.GetRecordingStartTime()))
++ if (m_jobQueue.IsJobQueued(JOB_COMMFLAG, pginfo.GetChanID(),
++ pginfo.GetRecordingStartTime()))
+ return "queued";
+
+ return (pginfo.GetProgramFlags() & FL_COMMFLAG ? "yes" : "no");
+@@ -5535,4 +5536,57 @@ void HelpPopup::addItem(const QString &state, const QString &text)
+ item->DisplayState(state, "icons");
+ }
+
++void PlaybackBox::PbbJobQueue::Update()
++{
++ QDateTime now = QDateTime::currentDateTime();
++ if (!m_lastUpdated.isValid() ||
++ m_lastUpdated.msecsTo(now) >= kInvalidateTimeMs)
++ {
++ QMap<int, JobQueueEntry> jobs;
++ JobQueue::GetJobsInQueue(jobs, JOB_LIST_ALL);
++ m_jobs.clear();
++ for (int i = 0; i < jobs.size(); ++i)
++ {
++ JobQueueEntry &entry = jobs[i];
++ m_jobs.insert(qMakePair(entry.chanid, entry.recstartts), entry);
++ }
++ m_lastUpdated = now;
++ }
++}
++
++bool PlaybackBox::PbbJobQueue::IsJobQueued(int jobType, uint chanid,
++ const QDateTime &recstartts)
++{
++ Update();
++ QList<JobQueueEntry> values = m_jobs.values(qMakePair(chanid, recstartts));
++ QList<JobQueueEntry>::const_iterator iter, end = values.end();
++ for (iter = values.begin(); iter != end; ++iter)
++ {
++ if (iter->type == jobType)
++ return JobQueue::IsJobStatusQueued(iter->status);
++ }
++ return false;
++}
++
++bool PlaybackBox::PbbJobQueue::IsJobRunning(int jobType, uint chanid,
++ const QDateTime &recstartts)
++{
++ Update();
++ QList<JobQueueEntry> values = m_jobs.values(qMakePair(chanid, recstartts));
++ QList<JobQueueEntry>::const_iterator iter, end = values.end();
++ for (iter = values.begin(); iter != end; ++iter)
++ {
++ if (iter->type == jobType)
++ return JobQueue::IsJobStatusRunning(iter->status);
++ }
++ return false;
++}
++
++bool PlaybackBox::PbbJobQueue::IsJobQueuedOrRunning(int jobType, uint chanid,
++ const QDateTime &recstartts)
++{
++ return IsJobQueued(jobType, chanid, recstartts) ||
++ IsJobRunning(jobType, chanid, recstartts);
++}
++
+ /* vim: set expandtab tabstop=4 shiftwidth=4: */
+diff --git a/mythtv/programs/mythfrontend/playbackbox.h b/mythtv/programs/mythfrontend/playbackbox.h
+index 836c433..444ab75 100644
+--- a/mythtv/programs/mythfrontend/playbackbox.h
++++ b/mythtv/programs/mythfrontend/playbackbox.h
+@@ -13,6 +13,7 @@ using namespace std;
+
+ #include <QStringList>
+ #include <QDateTime>
++#include <QMultiMap>
+ #include <QObject>
+ #include <QMutex>
+ #include <QMap>
+@@ -336,6 +337,9 @@ class PlaybackBox : public ScheduleCommon
+
+ QString CreateProgramInfoString(const ProgramInfo &program) const;
+
++ QString extract_job_state(const ProgramInfo &pginfo);
++ QString extract_commflag_state(const ProgramInfo &pginfo);
++
+
+ QRegExp m_prefixes; ///< prefixes to be ignored when sorting
+ QRegExp m_titleChaff; ///< stuff to remove for search rules
+@@ -444,6 +448,29 @@ class PlaybackBox : public ScheduleCommon
+ bool m_usingGroupSelector;
+ bool m_groupSelected;
+ bool m_passwordEntered;
++
++ // This class caches the contents of the jobqueue table to avoid excessive
++ // DB queries each time the PBB selection changes (currently 4 queries per
++ // displayed item). The cache remains valid for 15 seconds
++ // (kInvalidateTimeMs).
++ class PbbJobQueue
++ {
++ public:
++ PbbJobQueue() { Update(); }
++ bool IsJobQueued(int jobType, uint chanid,
++ const QDateTime &recstartts);
++ bool IsJobRunning(int jobType, uint chanid,
++ const QDateTime &recstartts);
++ bool IsJobQueuedOrRunning(int jobType, uint chanid,
++ const QDateTime &recstartts);
++ private:
++ static const qint64 kInvalidateTimeMs = 15000;
++ void Update();
++ QDateTime m_lastUpdated;
++ // Maps <chanid, recstartts> to a set of JobQueueEntry values.
++ typedef QMultiMap<QPair<uint, QDateTime>, JobQueueEntry> MapType;
++ MapType m_jobs;
++ } m_jobQueue;
+ };
+
+ class GroupSelector : public MythScreenType
diff --git a/mythtv/programs/mythfrontend/programrecpriority.cpp b/mythtv/programs/mythfrontend/programrecpriority.cpp
index 22e561a..ea6914b 100644
--- a/mythtv/programs/mythfrontend/programrecpriority.cpp
@@ -1370,6 +2116,29 @@
}
if (m_recProfileText)
+diff --git a/mythtv/programs/mythfrontend/themechooser.cpp b/mythtv/programs/mythfrontend/themechooser.cpp
+index a14beb0..b5950bc 100644
+--- a/mythtv/programs/mythfrontend/themechooser.cpp
++++ b/mythtv/programs/mythfrontend/themechooser.cpp
+@@ -1027,7 +1027,17 @@ ThemeUpdateChecker::ThemeUpdateChecker(void) :
+ gCoreContext->SaveSetting("ThemeUpdateStatus", "");
+
+ connect(m_updateTimer, SIGNAL(timeout()), SLOT(checkForUpdate()));
+- m_updateTimer->start(60 * 60 * 1000); // Run once an hour
++
++ if (getenv("MYTHTV_DEBUGMDM"))
++ {
++ LOG(VB_GENERAL, LOG_INFO, "Checking for theme updates every minute");
++ m_updateTimer->start(60 * 1000); // Run once a minute
++ }
++ else
++ {
++ LOG(VB_GENERAL, LOG_INFO, "Checking for theme updates every hour");
++ m_updateTimer->start(60 * 60 * 1000); // Run once an hour
++ }
+
+ // Run once 15 seconds from now
+ QTimer::singleShot(15 * 1000, this, SLOT(checkForUpdate()));
diff --git a/mythtv/programs/mythtranscode/transcode.cpp b/mythtv/programs/mythtranscode/transcode.cpp
index 343834b..50f9e22 100644
--- a/mythtv/programs/mythtranscode/transcode.cpp
@@ -1407,6 +2176,19 @@
m_statusText->SetText(tr("No matches found for %1")
.arg((*m_missingIter).strName));
else
+diff --git a/mythtv/programs/mythwelcome/welcomedialog.cpp b/mythtv/programs/mythwelcome/welcomedialog.cpp
+index 5b88219..fec68ef 100644
+--- a/mythtv/programs/mythwelcome/welcomedialog.cpp
++++ b/mythtv/programs/mythwelcome/welcomedialog.cpp
+@@ -107,7 +107,7 @@ void WelcomeDialog::startFrontend(void)
+ QString startFECmd = gCoreContext->GetSetting("MythWelcomeStartFECmd",
+ m_installDir + "/bin/mythfrontend");
+
+- myth_system(startFECmd, kMSDisableUDPListener);
++ myth_system(startFECmd, kMSDisableUDPListener | kMSProcessEvents);
+ updateAll();
+ m_frontendIsRunning = false;
+ }
diff --git a/mythtv/themes/default/keyboard/el.xml b/mythtv/themes/default/keyboard/el.xml
new file mode 100644
index 0000000..da192cf
Index: mythtv.spec
===================================================================
RCS file: /cvs/free/rpms/mythtv/F-20/mythtv.spec,v
retrieving revision 1.144
retrieving revision 1.145
diff -u -r1.144 -r1.145
--- mythtv.spec 15 Apr 2015 19:55:55 -0000 1.144
+++ mythtv.spec 27 May 2015 14:19:15 -0000 1.145
@@ -60,7 +60,7 @@
%define desktop_vendor RPMFusion
# MythTV Version string -- preferably the output from git --describe
-%define vers_string v0.27.4-42-g628183a
+%define vers_string v0.27.4-64-g8fd277b
%define branch fixes/0.27
# Git revision and branch ID
@@ -78,7 +78,7 @@
%if "%{branch}" == "master"
Release: 0.1.git.%{_gitrev}%{?dist}
%else
-Release: 5%{?dist}
+Release: 6%{?dist}
%endif
# The primary license is GPLv2+, but bits are borrowed from a number of
@@ -352,7 +352,7 @@
Requires: mythffmpeg = %{version}-%{release}
Requires: mariadb-server >= 5, mariadb >= 5
Requires: xmltv
-%if 0%{?rhel} >= 7
+%if 0%{?rhel} >= 7 || 0%{?fedora} >= 22
Requires: udisks2
%else
Requires: udisks
@@ -1417,6 +1417,10 @@
%changelog
+* Tue May 26 2015 Richard Shaw <hobbes1069(a)gmail.com> - 0.27.4-6
+- Update to latest bugfix release.
+- Add conditional for udisks for Fedora 22+ (BZ#3660).
+
* Tue Apr 7 2015 Richard Shaw <hobbes1069(a)gmail.com> - 0.27.4-5
- Update to latest bugfix release.
- Fix owner on /etc/mythtv (BZ#3558).
9 years, 6 months