Hello community, here is the log from the commit of package libdvdnav for openSUSE:Factory checked in at 2018-01-28 20:29:50 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libdvdnav (Old) and /work/SRC/openSUSE:Factory/.libdvdnav.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libdvdnav" Sun Jan 28 20:29:50 2018 rev:27 rq:570236 version:6.0.0 Changes: -------- --- /work/SRC/openSUSE:Factory/libdvdnav/libdvdnav.changes 2016-09-09 10:20:06.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.libdvdnav.new/libdvdnav.changes 2018-01-28 20:29:51.748869541 +0100 @@ -1,0 +2,10 @@ +Sat Jan 27 13:24:31 UTC 2018 - [email protected] + +- Update to version 6.0.0: + * fix crashes on some DVD on describe_title call + * fix various crashes related to PGC validity + * fix compilation issues + * fix API return codes +- Add gpg signature + +------------------------------------------------------------------- Old: ---- libdvdnav-5.0.3.tar.bz2 New: ---- libdvdnav-6.0.0.tar.bz2 libdvdnav-6.0.0.tar.bz2.asc ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libdvdnav.spec ++++++ --- /var/tmp/diff_new_pack.mfMjn9/_old 2018-01-28 20:29:52.520833483 +0100 +++ /var/tmp/diff_new_pack.mfMjn9/_new 2018-01-28 20:29:52.524833296 +0100 @@ -1,7 +1,7 @@ # # spec file for package libdvdnav # -# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -21,14 +21,15 @@ License: GPL-2.0+ Group: Productivity/Multimedia/Other Url: http://www.mplayerhq.hu/ -Version: 5.0.3 +Version: 6.0.0 Release: 0 -Source0: http://download.videolan.org/videolan/libdvdnav/%{version}/libdvdnav-%{version}.tar.bz2 +Source0: http://download.videolan.org/videolan/%{name}/%{version}/%{name}-%{version}.tar.bz2 +Source1: http://download.videolan.org/videolan/%{name}/%{version}/%{name}-%{version}.tar.bz2.asc Source1000: baselibs.conf Patch0: libdvdnav-dvdread.patch Patch1: libdvdnav-strict-aliasing.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build -BuildRequires: libdvdread-devel >= 5.0.2 +BuildRequires: libdvdread-devel >= 5.0.3 BuildRequires: libtool BuildRequires: pkg-config ++++++ libdvdnav-5.0.3.tar.bz2 -> libdvdnav-6.0.0.tar.bz2 ++++++ ++++ 4174 lines of diff (skipped) ++++ retrying with extended exclude list diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libdvdnav-5.0.3/ChangeLog new/libdvdnav-6.0.0/ChangeLog --- old/libdvdnav-5.0.3/ChangeLog 2015-01-27 16:56:26.000000000 +0100 +++ new/libdvdnav-6.0.0/ChangeLog 2018-01-18 10:16:25.000000000 +0100 @@ -1,3 +1,9 @@ +libdvdnav (6.0.0) + * fix crashes on some DVD on describe_title call + * fix various crashes related to PGC validity + * fix compilation issues + * fix API return codes + libdvdnav (5.0.3) * added dvdnav_open_stream to read from external read/seek callbacks * fixed reading DVD label regression diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libdvdnav-5.0.3/compile new/libdvdnav-6.0.0/compile --- old/libdvdnav-5.0.3/compile 2015-01-03 01:26:16.000000000 +0100 +++ new/libdvdnav-6.0.0/compile 2018-01-18 10:28:55.000000000 +0100 @@ -3,7 +3,7 @@ scriptversion=2012-10-14.11; # UTC -# Copyright (C) 1999-2013 Free Software Foundation, Inc. +# Copyright (C) 1999-2014 Free Software Foundation, Inc. # Written by Tom Tromey <[email protected]>. # # This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libdvdnav-5.0.3/configure.ac new/libdvdnav-6.0.0/configure.ac --- old/libdvdnav-5.0.3/configure.ac 2015-01-27 16:57:43.000000000 +0100 +++ new/libdvdnav-6.0.0/configure.ac 2018-01-18 10:16:04.000000000 +0100 @@ -3,9 +3,9 @@ dnl dnl These are defined in m4 so they can be passed to AC_INIT dnl -------------------------------------------------------------- -m4_define([dvdnav_major], [5]) +m4_define([dvdnav_major], [6]) m4_define([dvdnav_minor], [0]) -m4_define([dvdnav_sub], [3]) +m4_define([dvdnav_sub], [0]) m4_define([dvdnav_pre], []) AC_INIT([libdvdnav], [dvdnav_major.dvdnav_minor.dvdnav_sub[]dvdnav_pre]) @@ -97,7 +97,7 @@ AC_SUBST(THREAD_LIBS) AC_SUBST(THREAD_CFLAGS) -PKG_CHECK_MODULES([DVDREAD], [dvdread >= 5.0.2]) +PKG_CHECK_MODULES([DVDREAD], [dvdread >= 5.0.3]) dnl --------------------------------------------- dnl Check for bitfield compiler flag diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libdvdnav-5.0.3/m4/libtool.m4 new/libdvdnav-6.0.0/m4/libtool.m4 --- old/libdvdnav-5.0.3/m4/libtool.m4 2015-01-03 01:26:12.000000000 +0100 +++ new/libdvdnav-6.0.0/m4/libtool.m4 2018-01-18 10:28:52.000000000 +0100 @@ -1,6 +1,6 @@ # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- # -# Copyright (C) 1996-2001, 2003-2014 Free Software Foundation, Inc. +# Copyright (C) 1996-2001, 2003-2015 Free Software Foundation, Inc. # Written by Gordon Matzigkeit, 1996 # # This file is free software; the Free Software Foundation gives @@ -103,19 +103,36 @@ dnl AC_DEFUN([AM_PROG_LIBTOOL], []) +# _LT_PREPARE_CC_BASENAME +# ----------------------- +m4_defun([_LT_PREPARE_CC_BASENAME], [ +# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +func_cc_basename () +{ + for cc_temp in @S|@*""; do + case $cc_temp in + compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; + distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; + \-*) ;; + *) break;; + esac + done + func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` +} +])# _LT_PREPARE_CC_BASENAME + + # _LT_CC_BASENAME(CC) # ------------------- -# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +# It would be clearer to call AC_REQUIREs from _LT_PREPARE_CC_BASENAME, +# but that macro is also expanded into generated libtool script, which +# arranges for $SED and $ECHO to be set by different means. m4_defun([_LT_CC_BASENAME], -[for cc_temp in $1""; do - case $cc_temp in - compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; - distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; - \-*) ;; - *) break;; - esac -done -cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` +[m4_require([_LT_PREPARE_CC_BASENAME])dnl +AC_REQUIRE([_LT_DECL_SED])dnl +AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl +func_cc_basename $1 +cc_basename=$func_cc_basename_result ]) @@ -711,7 +728,6 @@ cat <<_LT_EOF >> "$cfgfile" #! $SHELL # Generated automatically by $as_me ($PACKAGE) $VERSION -# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: # NOTE: Changes made to this file will be lost: look at ltmain.sh. # Provide generalized library-building support services. @@ -720,6 +736,9 @@ _LT_COPYING _LT_LIBTOOL_TAGS +# Configured defaults for sys_lib_dlsearch_path munging. +: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"} + # ### BEGIN LIBTOOL CONFIG _LT_LIBTOOL_CONFIG_VARS _LT_LIBTOOL_TAG_VARS @@ -727,6 +746,17 @@ _LT_EOF + cat <<'_LT_EOF' >> "$cfgfile" + +# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE + +_LT_PREPARE_MUNGE_PATH_LIST +_LT_PREPARE_CC_BASENAME + +# ### END FUNCTIONS SHARED WITH CONFIGURE + +_LT_EOF + case $host_os in aix3*) cat <<\_LT_EOF >> "$cfgfile" @@ -2202,6 +2232,47 @@ ])# _LT_CMD_STRIPLIB +# _LT_PREPARE_MUNGE_PATH_LIST +# --------------------------- +# Make sure func_munge_path_list() is defined correctly. +m4_defun([_LT_PREPARE_MUNGE_PATH_LIST], +[[# func_munge_path_list VARIABLE PATH +# ----------------------------------- +# VARIABLE is name of variable containing _space_ separated list of +# directories to be munged by the contents of PATH, which is string +# having a format: +# "DIR[:DIR]:" +# string "DIR[ DIR]" will be prepended to VARIABLE +# ":DIR[:DIR]" +# string "DIR[ DIR]" will be appended to VARIABLE +# "DIRP[:DIRP]::[DIRA:]DIRA" +# string "DIRP[ DIRP]" will be prepended to VARIABLE and string +# "DIRA[ DIRA]" will be appended to VARIABLE +# "DIR[:DIR]" +# VARIABLE will be replaced by "DIR[ DIR]" +func_munge_path_list () +{ + case x@S|@2 in + x) + ;; + *:) + eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\" + ;; + x:*) + eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\" + ;; + *::*) + eval @S|@1=\"\@S|@@S|@1\ `$ECHO @S|@2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" + eval @S|@1=\"`$ECHO @S|@2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \@S|@@S|@1\" + ;; + *) + eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'`\" + ;; + esac +} +]])# _LT_PREPARE_PATH_LIST + + # _LT_SYS_DYNAMIC_LINKER([TAG]) # ----------------------------- # PORTME Fill in your ld.so characteristics @@ -2212,6 +2283,7 @@ m4_require([_LT_DECL_OBJDUMP])dnl m4_require([_LT_DECL_SED])dnl m4_require([_LT_CHECK_SHELL_FEATURES])dnl +m4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl AC_MSG_CHECKING([dynamic linker characteristics]) m4_if([$1], [], [ @@ -2306,6 +2378,9 @@ # flags to be left without arguments need_version=unknown +AC_ARG_VAR([LT_SYS_LIBRARY_PATH], +[User-defined run-time library search path.]) + case $host_os in aix3*) version_type=linux # correct to gnu/linux during the next big refactor @@ -2594,6 +2669,7 @@ case $version_type in freebsd-elf*) library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' need_version=no need_lib_prefix=no ;; @@ -2653,10 +2729,11 @@ soname_spec='$libname$release$shared_ext$major' if test 32 = "$HPUX_IA64_MODE"; then sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" + sys_lib_dlsearch_path_spec=/usr/lib/hpux32 else sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" + sys_lib_dlsearch_path_spec=/usr/lib/hpux64 fi - sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; hppa*64*) shrext_cmds='.sl' @@ -2789,7 +2866,12 @@ # before this can be enabled. hardcode_into_libs=yes - # Append ld.so.conf contents to the search path + # Ideally, we could use ldconfig to report *all* directores which are + # searched for libraries, however this is still not possible. Aside from not + # being certain /sbin/ldconfig is available, command + # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64, + # even though it is searched at run-time. Try to do the best guess by + # appending ld.so.conf contents (and includes) to the search path. if test -f /etc/ld.so.conf; then lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '` sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" @@ -2804,6 +2886,18 @@ dynamic_linker='GNU/Linux ld.so' ;; +netbsdelf*-gnu) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='NetBSD ld.elf_so' + ;; + netbsd*) version_type=sunos need_lib_prefix=no @@ -3013,10 +3107,20 @@ if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec fi + if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec fi +# remember unaugmented sys_lib_dlsearch_path content for libtool script decls... +configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec + +# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code +func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH" + +# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool +configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH + _LT_DECL([], [variables_saved_for_relink], [1], [Variables whose values should be saved in libtool wrapper scripts and restored at link time]) @@ -3049,8 +3153,10 @@ [Whether we should hardcode library paths into libraries]) _LT_DECL([], [sys_lib_search_path_spec], [2], [Compile-time system search path for libraries]) -_LT_DECL([], [sys_lib_dlsearch_path_spec], [2], - [Run-time system search path for libraries]) +_LT_DECL([sys_lib_dlsearch_path_spec], [configure_time_dlsearch_path], [2], + [Detected run-time system search path for libraries]) +_LT_DECL([], [configure_time_lt_sys_library_path], [2], + [Explicit LT_SYS_LIBRARY_PATH set during ./configure time]) ])# _LT_SYS_DYNAMIC_LINKER @@ -3451,7 +3557,7 @@ lt_cv_deplibs_check_method=pass_all ;; -netbsd*) +netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' else @@ -4329,7 +4435,7 @@ ;; esac ;; - netbsd*) + netbsd* | netbsdelf*-gnu) ;; *qnx* | *nto*) # QNX uses GNU C++, but need to define -shared option too, otherwise @@ -4841,6 +4947,9 @@ ;; esac ;; + linux* | k*bsd*-gnu | gnu*) + _LT_TAGVAR(link_all_deplibs, $1)=no + ;; *) _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' ;; @@ -4903,6 +5012,9 @@ openbsd* | bitrig*) with_gnu_ld=no ;; + linux* | k*bsd*-gnu | gnu*) + _LT_TAGVAR(link_all_deplibs, $1)=no + ;; esac _LT_TAGVAR(ld_shlibs, $1)=yes @@ -5157,7 +5269,7 @@ fi ;; - netbsd*) + netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= @@ -5678,6 +5790,7 @@ if test yes = "$lt_cv_irix_exported_symbol"; then _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib' fi + _LT_TAGVAR(link_all_deplibs, $1)=no else _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib' @@ -5699,7 +5812,7 @@ esac ;; - netbsd*) + netbsd* | netbsdelf*-gnu) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out else @@ -7350,6 +7463,7 @@ } # func_stripname_cnf ])# _LT_FUNC_STRIPNAME_CNF + # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME]) # --------------------------------- # Figure out "hidden" library dependencies from verbose @@ -7528,51 +7642,6 @@ _LT_TAGVAR(postdep_objects,$1)= _LT_TAGVAR(postdeps,$1)= ;; - -linux*) - case `$CC -V 2>&1 | sed 5q` in - *Sun\ C*) - # Sun C++ 5.9 - - # The more standards-conforming stlport4 library is - # incompatible with the Cstd library. Avoid specifying - # it if it's in CXXFLAGS. Ignore libCrun as - # -library=stlport4 depends on it. - case " $CXX $CXXFLAGS " in - *" -library=stlport4 "*) - solaris_use_stlport4=yes - ;; - esac - - if test yes != "$solaris_use_stlport4"; then - _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' - fi - ;; - esac - ;; - -solaris*) - case $cc_basename in - CC* | sunCC*) - # The more standards-conforming stlport4 library is - # incompatible with the Cstd library. Avoid specifying - # it if it's in CXXFLAGS. Ignore libCrun as - # -library=stlport4 depends on it. - case " $CXX $CXXFLAGS " in - *" -library=stlport4 "*) - solaris_use_stlport4=yes - ;; - esac - - # Adding this requires a known-good setup of shared libraries for - # Sun compiler versions before 5.6, else PIC objects from an old - # archive will be linked into the output, leading to subtle bugs. - if test yes != "$solaris_use_stlport4"; then - _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' - fi - ;; - esac - ;; esac ]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libdvdnav-5.0.3/m4/ltoptions.m4 new/libdvdnav-6.0.0/m4/ltoptions.m4 --- old/libdvdnav-5.0.3/m4/ltoptions.m4 2015-01-03 01:26:12.000000000 +0100 +++ new/libdvdnav-6.0.0/m4/ltoptions.m4 2018-01-18 10:28:52.000000000 +0100 @@ -1,6 +1,6 @@ # Helper functions for option handling. -*- Autoconf -*- # -# Copyright (C) 2004-2005, 2007-2009, 2011-2014 Free Software +# Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software # Foundation, Inc. # Written by Gary V. Vaughan, 2004 # diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libdvdnav-5.0.3/m4/ltsugar.m4 new/libdvdnav-6.0.0/m4/ltsugar.m4 --- old/libdvdnav-5.0.3/m4/ltsugar.m4 2015-01-03 01:26:12.000000000 +0100 +++ new/libdvdnav-6.0.0/m4/ltsugar.m4 2018-01-18 10:28:52.000000000 +0100 @@ -1,6 +1,6 @@ # ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*- # -# Copyright (C) 2004-2005, 2007-2008, 2011-2014 Free Software +# Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software # Foundation, Inc. # Written by Gary V. Vaughan, 2004 # diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libdvdnav-5.0.3/m4/ltversion.m4 new/libdvdnav-6.0.0/m4/ltversion.m4 --- old/libdvdnav-5.0.3/m4/ltversion.m4 2015-01-03 01:26:12.000000000 +0100 +++ new/libdvdnav-6.0.0/m4/ltversion.m4 2018-01-18 10:28:52.000000000 +0100 @@ -1,6 +1,6 @@ # ltversion.m4 -- version numbers -*- Autoconf -*- # -# Copyright (C) 2004, 2011-2014 Free Software Foundation, Inc. +# Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc. # Written by Scott James Remnant, 2004 # # This file is free software; the Free Software Foundation gives @@ -9,15 +9,15 @@ # @configure_input@ -# serial 4151 ltversion.m4 +# serial 4179 ltversion.m4 # This file is part of GNU Libtool -m4_define([LT_PACKAGE_VERSION], [2.4.4]) -m4_define([LT_PACKAGE_REVISION], [2.4.4]) +m4_define([LT_PACKAGE_VERSION], [2.4.6]) +m4_define([LT_PACKAGE_REVISION], [2.4.6]) AC_DEFUN([LTVERSION_VERSION], -[macro_version='2.4.4' -macro_revision='2.4.4' +[macro_version='2.4.6' +macro_revision='2.4.6' _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) _LT_DECL(, macro_revision, 0) ]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libdvdnav-5.0.3/m4/lt~obsolete.m4 new/libdvdnav-6.0.0/m4/lt~obsolete.m4 --- old/libdvdnav-5.0.3/m4/lt~obsolete.m4 2015-01-03 01:26:12.000000000 +0100 +++ new/libdvdnav-6.0.0/m4/lt~obsolete.m4 2018-01-18 10:28:52.000000000 +0100 @@ -1,6 +1,6 @@ # lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*- # -# Copyright (C) 2004-2005, 2007, 2009, 2011-2014 Free Software +# Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software # Foundation, Inc. # Written by Scott James Remnant, 2004. # diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libdvdnav-5.0.3/missing new/libdvdnav-6.0.0/missing --- old/libdvdnav-5.0.3/missing 2015-01-03 01:26:16.000000000 +0100 +++ new/libdvdnav-6.0.0/missing 2018-01-18 10:28:55.000000000 +0100 @@ -3,7 +3,7 @@ scriptversion=2013-10-28.13; # UTC -# Copyright (C) 1996-2013 Free Software Foundation, Inc. +# Copyright (C) 1996-2014 Free Software Foundation, Inc. # Originally written by Fran,cois Pinard <[email protected]>, 1996. # This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libdvdnav-5.0.3/src/dvdnav/dvdnav.h new/libdvdnav-6.0.0/src/dvdnav/dvdnav.h --- old/libdvdnav-5.0.3/src/dvdnav/dvdnav.h 2015-01-27 16:54:04.000000000 +0100 +++ new/libdvdnav-6.0.0/src/dvdnav/dvdnav.h 2017-11-23 01:40:06.000000000 +0100 @@ -26,7 +26,7 @@ #ifndef LIBDVDNAV_DVDNAV_H #define LIBDVDNAV_DVDNAV_H -#define MP_DVDNAV 1 +#define DVDNAV_VERSION 50400 #ifdef __cplusplus extern "C" { @@ -571,7 +571,7 @@ /* * Get video resolution. */ -int dvdnav_get_video_resolution(dvdnav_t *self, uint32_t *width, uint32_t *height); +dvdnav_status_t dvdnav_get_video_resolution(dvdnav_t *self, uint32_t *width, uint32_t *height); /* * Get video scaling permissions. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libdvdnav-5.0.3/src/dvdnav.c new/libdvdnav-6.0.0/src/dvdnav.c --- old/libdvdnav-5.0.3/src/dvdnav.c 2015-01-27 16:50:52.000000000 +0100 +++ new/libdvdnav-6.0.0/src/dvdnav.c 2018-01-17 22:21:38.000000000 +0100 @@ -39,6 +39,7 @@ #include <dvdread/ifo_types.h> /* For vm_cmd_t */ #include "vm/decoder.h" #include "vm/vm.h" +#include "vm/getset.h" #include "dvdnav_internal.h" #include "read_cache.h" #include <dvdread/nav_read.h> @@ -485,6 +486,9 @@ int64_t tm=0; dvd_state_t *state = &this->vm->state; + if(! state->pgc) + return 0; + for(i=0; i<state->cellN-1; i++) { if(! (state->pgc->cell_playback[i].block_type == BLOCK_TYPE_ANGLE_BLOCK && @@ -517,6 +521,12 @@ this->started = 1; } + if (!this->vm->state.pgc) { + printerr("No current PGC."); + pthread_mutex_unlock(&this->vm_lock); + return DVDNAV_STATUS_ERR; + } + state = &(this->vm->state); (*event) = DVDNAV_NOP; (*len) = 0; @@ -781,6 +791,14 @@ fprintf(MSG_OUT, "libdvdnav: SPU_STREAM_CHANGE stream_id_pan_scan=%d\n",stream_change->physical_pan_scan); fprintf(MSG_OUT, "libdvdnav: SPU_STREAM_CHANGE returning DVDNAV_STATUS_OK\n"); #endif + /* This is not realy the right place to do this. FOSL_BTNN should set the register + * at HLI_S_PTM rather than when we enter the SPU. As well we should activate FOAC_BTNN + * at HLI_E_PTM + */ + if (this->pci.hli.hl_gi.fosl_btnn != 0) { + set_HL_BTN(this->vm, this->pci.hli.hl_gi.fosl_btnn); + } + pthread_mutex_unlock(&this->vm_lock); return DVDNAV_STATUS_OK; } @@ -935,12 +953,12 @@ return retval; } -int dvdnav_get_video_resolution(dvdnav_t *this, uint32_t *width, uint32_t *height) { +dvdnav_status_t dvdnav_get_video_resolution(dvdnav_t *this, uint32_t *width, uint32_t *height) { int w, h; if(!this->started) { printerr("Virtual DVD machine not started."); - return -1; + return DVDNAV_STATUS_ERR; } pthread_mutex_lock(&this->vm_lock); @@ -949,7 +967,7 @@ *width = w; *height = h; - return 0; + return DVDNAV_STATUS_OK; } uint8_t dvdnav_get_video_scale_permission(dvdnav_t *this) { @@ -1079,13 +1097,13 @@ dvdnav_status_t dvdnav_get_audio_attr(dvdnav_t *this, uint8_t audio_num, audio_attr_t *audio_attr) { if(!this->started) { printerr("Virtual DVD machine not started."); - return -1; + return DVDNAV_STATUS_ERR; } pthread_mutex_lock(&this->vm_lock); if (!this->vm->state.pgc) { printerr("No current PGC."); pthread_mutex_unlock(&this->vm_lock); - return -1; + return DVDNAV_STATUS_ERR; } *audio_attr=vm_get_audio_attr(this->vm, audio_num); pthread_mutex_unlock(&this->vm_lock); @@ -1116,13 +1134,13 @@ dvdnav_status_t dvdnav_get_spu_attr(dvdnav_t *this, uint8_t audio_num, subp_attr_t *subp_attr) { if(!this->started) { printerr("Virtual DVD machine not started."); - return -1; + return DVDNAV_STATUS_ERR; } pthread_mutex_lock(&this->vm_lock); if (!this->vm->state.pgc) { printerr("No current PGC."); pthread_mutex_unlock(&this->vm_lock); - return -1; + return DVDNAV_STATUS_ERR; } *subp_attr=vm_get_subp_attr(this->vm, audio_num); pthread_mutex_unlock(&this->vm_lock); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libdvdnav-5.0.3/src/highlight.c new/libdvdnav-6.0.0/src/highlight.c --- old/libdvdnav-5.0.3/src/highlight.c 2014-03-25 10:40:17.000000000 +0100 +++ new/libdvdnav-6.0.0/src/highlight.c 2018-01-14 10:49:08.000000000 +0100 @@ -42,7 +42,7 @@ #ifdef BUTTON_TESTING -#include "nav_print.h" +#include <dvdread/nav_print.h> static void print_time(dvd_time_t *dtime) { const char *rate; @@ -343,6 +343,12 @@ } pthread_mutex_lock(&this->vm_lock); + if(!this->vm->state.pgc) { + printerr("No current PGC."); + pthread_mutex_unlock(&this->vm_lock); + return DVDNAV_STATUS_ERR; + } + button = this->vm->state.HL_BTNN_REG >> 10; if((button <= 0) || (button > pci->hli.hl_gi.btn_ns)) { @@ -394,6 +400,13 @@ dvdnav_status_t dvdnav_button_activate_cmd(dvdnav_t *this, int32_t button, vm_cmd_t *cmd) { pthread_mutex_lock(&this->vm_lock); + + if(!this->vm->state.pgc) { + printerr("No current PGC."); + pthread_mutex_unlock(&this->vm_lock); + return DVDNAV_STATUS_ERR; + } + /* make the VM execute the appropriate code and probably * schedule a jump */ #ifdef BUTTON_TESTING diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libdvdnav-5.0.3/src/navigation.c new/libdvdnav-6.0.0/src/navigation.c --- old/libdvdnav-5.0.3/src/navigation.c 2014-07-27 01:16:34.000000000 +0200 +++ new/libdvdnav-6.0.0/src/navigation.c 2018-01-14 10:49:08.000000000 +0100 @@ -269,6 +269,12 @@ /* A nice easy function... delegate to the VM */ int retval; pthread_mutex_lock(&this->vm_lock); + if (!this->vm->state.pgc) { + printerr("No current PGC."); + pthread_mutex_unlock(&this->vm_lock); + return DVDNAV_STATUS_ERR; + } + retval = vm_jump_up(this->vm); pthread_mutex_unlock(&this->vm_lock); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libdvdnav-5.0.3/src/searching.c new/libdvdnav-6.0.0/src/searching.c --- old/libdvdnav-5.0.3/src/searching.c 2014-11-06 19:40:23.000000000 +0100 +++ new/libdvdnav-6.0.0/src/searching.c 2015-09-01 18:54:13.000000000 +0200 @@ -644,6 +644,11 @@ if(!tmp) goto fail; + if(!ptt) { + printerr("ptt NULL"); + goto fail; + } + length = 0; for(i=0; i<parts; i++) { uint32_t cellnr, endcellnr; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libdvdnav-5.0.3/src/vm/getset.c new/libdvdnav-6.0.0/src/vm/getset.c --- old/libdvdnav-5.0.3/src/vm/getset.c 2014-08-31 00:43:30.000000000 +0200 +++ new/libdvdnav-6.0.0/src/vm/getset.c 2018-01-17 22:20:27.000000000 +0100 @@ -172,6 +172,9 @@ int new_pgN = 0; int dummy, part = 0; + if ((vm->state).pgc == NULL) + return 0; + while(new_pgN < (vm->state).pgc->nr_of_programs && (vm->state).cellN >= (vm->state).pgc->program_map[new_pgN]) new_pgN++; @@ -213,6 +216,13 @@ } } + +/* Force the highlight button number register */ +void set_HL_BTN(vm_t *vm, int btnn) +{ + (vm->state).HL_BTNN_REG = btnn << 10; +} + /* Get functions */ /* Searches the TT tables, to find the current TT. @@ -280,6 +290,10 @@ pgcit_t *pgcit; int pgcN = 1; + if ((vm->state).pgc == NULL) { + return 0; /* error */ + } + pgcit = get_PGCIT(vm); if (pgcit) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libdvdnav-5.0.3/src/vm/getset.h new/libdvdnav-6.0.0/src/vm/getset.h --- old/libdvdnav-5.0.3/src/vm/getset.h 2014-01-04 12:30:23.000000000 +0100 +++ new/libdvdnav-6.0.0/src/vm/getset.h 2018-01-17 22:22:05.000000000 +0100 @@ -38,6 +38,7 @@ int set_PGCN(vm_t *vm, int pgcN); int set_PGN(vm_t *vm); /* Set PGN based on (vm->state).CellN */ void set_RSMinfo(vm_t *vm, int cellN, int blockN); +void set_HL_BTN(vm_t *vm, int btnn); /* Get */ int get_TT(vm_t *vm, int vtsN, int vts_ttn); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libdvdnav-5.0.3/src/vm/play.c new/libdvdnav-6.0.0/src/vm/play.c --- old/libdvdnav-5.0.3/src/vm/play.c 2014-08-16 01:04:45.000000000 +0200 +++ new/libdvdnav-6.0.0/src/vm/play.c 2018-01-14 10:49:08.000000000 +0100 @@ -216,8 +216,8 @@ } #endif break; - case 2: /* ?? */ - case 3: /* ?? */ + case 2: /* reserved */ + case 3: /* reserved */ default: fprintf(MSG_OUT, "libdvdnav: Invalid? Cell block_mode (%d), block_type (%d)\n", (vm->state).pgc->cell_playback[(vm->state).cellN - 1].block_mode, @@ -304,8 +304,8 @@ (vm->state).cellN++; } break; - case 2: /* ?? */ - case 3: /* ?? */ + case 2: /* reserved */ + case 3: /* reserved */ default: fprintf(MSG_OUT, "libdvdnav: Invalid? Cell block_mode (%d), block_type (%d)\n", (vm->state).pgc->cell_playback[(vm->state).cellN - 1].block_mode,
