Hello community,
here is the log from the commit of package libdvdread for openSUSE:Factory checked in at 2015-04-03 14:32:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libdvdread (Old)
and /work/SRC/openSUSE:Factory/.libdvdread.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libdvdread"
Changes:
--------
--- /work/SRC/openSUSE:Factory/libdvdread/libdvdread.changes 2015-02-06 10:48:09.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.libdvdread.new/libdvdread.changes 2015-04-03 14:32:17.000000000 +0200
@@ -1,0 +2,8 @@
+Sat Mar 28 17:47:08 UTC 2015 - joerg.lorenzen@ki.tng.de
+
+- Update to version 5.0.3:
+ * Cache IFO and BUP files (only for ImageFiles) in order to reduce
+ the number of read/seek access
+ * Fix compilation warnings for OS/2
+
+-------------------------------------------------------------------
Old:
----
libdvdread-5.0.2.tar.bz2
New:
----
libdvdread-5.0.3.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libdvdread.spec ++++++
--- /var/tmp/diff_new_pack.ztoK4b/_old 2015-04-03 14:32:18.000000000 +0200
+++ /var/tmp/diff_new_pack.ztoK4b/_new 2015-04-03 14:32:18.000000000 +0200
@@ -21,7 +21,7 @@
License: GPL-2.0+
Group: Productivity/Multimedia/Other
Url: http://www.mplayerhq.hu/
-Version: 5.0.2
+Version: 5.0.3
Release: 0
Source0: http://download.videolan.org/videolan/%{name}/%{version}/%{name}-%{version}.tar.bz2
Source1: baselibs.conf
++++++ libdvdread-5.0.2.tar.bz2 -> libdvdread-5.0.3.tar.bz2 ++++++
++++ 2503 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/libdvdread-5.0.2/ChangeLog new/libdvdread-5.0.3/ChangeLog
--- old/libdvdread-5.0.2/ChangeLog 2015-01-28 17:20:32.000000000 +0100
+++ new/libdvdread-5.0.3/ChangeLog 2015-03-25 14:58:27.000000000 +0100
@@ -1,3 +1,43 @@
+commit 2b8f60f0c4efd85f17116a5443851d4bb4a288b7
+Author: Jean-Baptiste Kempf
+Date: Wed Mar 25 14:55:05 2015 +0100
+
+ Update NEWS for 5.0.3
+
+commit 107ca98775df1eb953881acd8df5471e8bcc88cd
+Author: Jean-Baptiste Kempf
+Date: Wed Mar 25 14:32:38 2015 +0100
+
+ Update dvd_reader version too
+
+commit a76a31f0f909200a96eecffe6ea3292f3aa2374f
+Author: Thomas Guillem
+Date: Fri Mar 13 17:03:13 2015 +0100
+
+ Update NEWS for 5.0.3
+
+ Signed-off-by: Jean-Baptiste Kempf
+
+commit 85b6663a59290f1cda175690daaf89eb433430bc
+Author: Thomas Guillem
+Date: Fri Mar 13 17:03:12 2015 +0100
+
+ dvd_reader: cache IFO and BUP files (only for images files)
+
+ It reduces the number of read/seek accesses
+
+ Signed-off-by: Jean-Baptiste Kempf
+
+commit af446d463a15fb08f95f8b84bfc89af395b6e1bc
+Author: KO Myung-Hun
+Date: Thu Jan 29 17:29:03 2015 +0900
+
+ ifo_types.h: fix 'warning: `gcc_struct' attribute directive ignored'
+
+ gcc_struct has been supported since gcc 3.4.
+
+ Signed-off-by: Jean-Baptiste Kempf
+
commit 574b886b733e8737e8cf17d9330049289e837ac3
Author: Jean-Baptiste Kempf
Date: Wed Jan 28 17:17:32 2015 +0100
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/libdvdread-5.0.2/NEWS new/libdvdread-5.0.3/NEWS
--- old/libdvdread-5.0.2/NEWS 2015-01-27 16:37:08.000000000 +0100
+++ new/libdvdread-5.0.3/NEWS 2015-03-25 14:55:03.000000000 +0100
@@ -1,3 +1,8 @@
+libdvdread (5.0.3)
+ * Cache IFO and BUP files (only for ImageFiles) in order to reduce the number
+ of read/seek access
+ * Fix compilation warnings for OS/2
+
libdvdread (5.0.2)
* Add DVDOpenStream to open a dvd from a set of callbacks
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/libdvdread-5.0.2/compile new/libdvdread-5.0.3/compile
--- old/libdvdread-5.0.2/compile 2015-01-03 01:17:26.000000000 +0100
+++ new/libdvdread-5.0.3/compile 2015-03-14 19:08:09.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 .
#
# 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/libdvdread-5.0.2/configure.ac new/libdvdread-5.0.3/configure.ac
--- old/libdvdread-5.0.2/configure.ac 2015-01-27 16:37:28.000000000 +0100
+++ new/libdvdread-5.0.3/configure.ac 2015-03-14 19:09:18.000000000 +0100
@@ -1,4 +1,4 @@
-AC_INIT(libdvdread, 5.0.2)
+AC_INIT(libdvdread, 5.0.3)
AC_CONFIG_SRCDIR([src/dvd_reader.c])
AC_PREREQ(2.53)
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/libdvdread-5.0.2/m4/libtool.m4 new/libdvdread-5.0.3/m4/libtool.m4
--- old/libdvdread-5.0.2/m4/libtool.m4 2015-01-03 01:17:22.000000000 +0100
+++ new/libdvdread-5.0.3/m4/libtool.m4 2015-03-14 19:08:05.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
])
@@ -720,6 +737,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 +747,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 +2233,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 +2284,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 +2379,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 +2670,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 +2730,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 +2867,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"
@@ -3013,10 +3096,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 +3142,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
@@ -7350,6 +7445,7 @@
} # func_stripname_cnf
])# _LT_FUNC_STRIPNAME_CNF
+
# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
# ---------------------------------
# Figure out "hidden" library dependencies from verbose
@@ -7528,51 +7624,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/libdvdread-5.0.2/m4/ltoptions.m4 new/libdvdread-5.0.3/m4/ltoptions.m4
--- old/libdvdread-5.0.2/m4/ltoptions.m4 2015-01-03 01:17:22.000000000 +0100
+++ new/libdvdread-5.0.3/m4/ltoptions.m4 2015-03-14 19:08:05.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/libdvdread-5.0.2/m4/ltsugar.m4 new/libdvdread-5.0.3/m4/ltsugar.m4
--- old/libdvdread-5.0.2/m4/ltsugar.m4 2015-01-03 01:17:22.000000000 +0100
+++ new/libdvdread-5.0.3/m4/ltsugar.m4 2015-03-14 19:08:05.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/libdvdread-5.0.2/m4/ltversion.m4 new/libdvdread-5.0.3/m4/ltversion.m4
--- old/libdvdread-5.0.2/m4/ltversion.m4 2015-01-03 01:17:22.000000000 +0100
+++ new/libdvdread-5.0.3/m4/ltversion.m4 2015-03-14 19:08:05.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/libdvdread-5.0.2/m4/lt~obsolete.m4 new/libdvdread-5.0.3/m4/lt~obsolete.m4
--- old/libdvdread-5.0.2/m4/lt~obsolete.m4 2015-01-03 01:17:22.000000000 +0100
+++ new/libdvdread-5.0.3/m4/lt~obsolete.m4 2015-03-14 19:08:05.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/libdvdread-5.0.2/missing new/libdvdread-5.0.3/missing
--- old/libdvdread-5.0.2/missing 2015-01-03 01:17:26.000000000 +0100
+++ new/libdvdread-5.0.3/missing 2015-03-14 19:08:09.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 , 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/libdvdread-5.0.2/src/dvd_reader.c new/libdvdread-5.0.3/src/dvd_reader.c
--- old/libdvdread-5.0.2/src/dvd_reader.c 2015-01-27 16:24:31.000000000 +0100
+++ new/libdvdread-5.0.3/src/dvd_reader.c 2015-03-14 19:09:18.000000000 +0100
@@ -118,6 +118,10 @@
/* Calculated at open-time, size in blocks. */
ssize_t filesize;
+
+ /* Cache of the dvd_file. If not NULL, the cache corresponds to the whole
+ * dvd_file. Used only for IFO and BUP. */
+ unsigned char *cache;
};
int InternalUDFReadBlocksRaw( const dvd_reader_t *device, uint32_t lb_number,
@@ -647,7 +651,8 @@
/**
* Open an unencrypted file on a DVD image file.
*/
-static dvd_file_t *DVDOpenFileUDF( dvd_reader_t *dvd, char *filename )
+static dvd_file_t *DVDOpenFileUDF( dvd_reader_t *dvd, char *filename,
+ int do_cache )
{
uint32_t start, len;
dvd_file_t *dvd_file;
@@ -669,6 +674,25 @@
memset( dvd_file->title_sizes, 0, sizeof( dvd_file->title_sizes ) );
memset( dvd_file->title_devs, 0, sizeof( dvd_file->title_devs ) );
dvd_file->filesize = len / DVD_VIDEO_LB_LEN;
+ dvd_file->cache = NULL;
+
+ /* Read the whole file in cache (unencrypted) if asked and if it doesn't
+ * exceed 128KB */
+ if( do_cache && len < 64 * DVD_VIDEO_LB_LEN ) {
+ int ret;
+
+ dvd_file->cache = malloc( len );
+ if( !dvd_file->cache )
+ return dvd_file;
+
+ ret = InternalUDFReadBlocksRaw( dvd, dvd_file->lb_start,
+ dvd_file->filesize, dvd_file->cache,
+ DVDINPUT_NOFLAGS );
+ if( ret != dvd_file->filesize ) {
+ free( dvd_file->cache );
+ dvd_file->cache = NULL;
+ }
+ }
return dvd_file;
}
@@ -766,6 +790,7 @@
memset( dvd_file->title_sizes, 0, sizeof( dvd_file->title_sizes ) );
memset( dvd_file->title_devs, 0, sizeof( dvd_file->title_devs ) );
dvd_file->filesize = 0;
+ dvd_file->cache = NULL;
if( stat( full_path, &fileinfo ) < 0 ) {
fprintf( stderr, "libdvdread: Can't stat() %s.\n", filename );
@@ -803,6 +828,7 @@
memset( dvd_file->title_sizes, 0, sizeof( dvd_file->title_sizes ) );
memset( dvd_file->title_devs, 0, sizeof( dvd_file->title_devs ) );
dvd_file->filesize = len / DVD_VIDEO_LB_LEN;
+ dvd_file->cache = NULL;
/* Calculate the complete file size for every file in the VOBS */
if( !menu ) {
@@ -845,6 +871,7 @@
memset( dvd_file->title_sizes, 0, sizeof( dvd_file->title_sizes ) );
memset( dvd_file->title_devs, 0, sizeof( dvd_file->title_devs ) );
dvd_file->filesize = 0;
+ dvd_file->cache = NULL;
if( menu ) {
dvd_input_t dev;
@@ -909,6 +936,7 @@
dvd_read_domain_t domain )
{
char filename[ MAX_UDF_FILE_NAME_LEN ];
+ int do_cache = 0;
/* Check arguments. */
if( dvd == NULL || titlenum < 0 )
@@ -921,6 +949,7 @@
} else {
sprintf( filename, "/VIDEO_TS/VTS_%02i_0.IFO", titlenum );
}
+ do_cache = 1;
break;
case DVD_READ_INFO_BACKUP_FILE:
if( titlenum == 0 ) {
@@ -928,6 +957,7 @@
} else {
sprintf( filename, "/VIDEO_TS/VTS_%02i_0.BUP", titlenum );
}
+ do_cache = 1;
break;
case DVD_READ_MENU_VOBS:
if( dvd->isImageFile ) {
@@ -950,7 +980,7 @@
}
if( dvd->isImageFile ) {
- return DVDOpenFileUDF( dvd, filename );
+ return DVDOpenFileUDF( dvd, filename, do_cache );
} else {
return DVDOpenFilePath( dvd, filename );
}
@@ -969,6 +999,7 @@
}
}
+ free( dvd_file->cache );
free( dvd_file );
dvd_file = NULL;
}
@@ -1182,8 +1213,25 @@
size_t block_count, unsigned char *data,
int encrypted )
{
- return InternalUDFReadBlocksRaw( dvd_file->dvd, dvd_file->lb_start + offset,
- block_count, data, encrypted );
+ /* If the cache is present and we don't need to decrypt, use the cache to
+ * feed the data */
+ if( dvd_file->cache && (encrypted & DVDINPUT_READ_DECRYPT) == 0 ) {
+ /* Check if we don't exceed the cache (or file) size */
+ if( block_count + offset > (size_t) dvd_file->filesize )
+ return 0;
+
+ /* Copy the cache at a specified offset into data. offset and block_count
+ * must be converted into bytes */
+ memcpy( data, dvd_file->cache + (off_t)offset * (off_t)DVD_VIDEO_LB_LEN,
+ (off_t)block_count * (off_t)DVD_VIDEO_LB_LEN );
+
+ /* return the amount of blocks copied */
+ return block_count;
+ } else {
+ /* use dvdinput access */
+ return InternalUDFReadBlocksRaw( dvd_file->dvd, dvd_file->lb_start + offset,
+ block_count, data, encrypted );
+ }
}
/* This is using possibly several inputs and starting from an offset of '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/libdvdread-5.0.2/src/dvdread/dvd_reader.h new/libdvdread-5.0.3/src/dvdread/dvd_reader.h
--- old/libdvdread-5.0.2/src/dvdread/dvd_reader.h 2015-01-27 16:24:31.000000000 +0100
+++ new/libdvdread-5.0.3/src/dvdread/dvd_reader.h 2015-03-25 14:32:32.000000000 +0100
@@ -43,7 +43,7 @@
/**
* The current version.
*/
-#define DVDREAD_VERSION 50000
+#define DVDREAD_VERSION 50300
/**
* The length of one Logical Block of a DVD.
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/libdvdread-5.0.2/src/dvdread/ifo_types.h new/libdvdread-5.0.3/src/dvdread/ifo_types.h
--- old/libdvdread-5.0.2/src/dvdread/ifo_types.h 2014-08-28 08:50:25.000000000 +0200
+++ new/libdvdread-5.0.3/src/dvdread/ifo_types.h 2015-01-29 13:37:56.000000000 +0100
@@ -32,7 +32,11 @@
#if defined(__GNUC__)
#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)
+#if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
#define ATTRIBUTE_PACKED __attribute__ ((packed,gcc_struct))
+#else
+#define ATTRIBUTE_PACKED __attribute__ ((packed))
+#endif
#define PRAGMA_PACK 0
#endif
#endif