libburn/libburn-1.5.2-pl01.patch

245 lines
9.8 KiB
Diff
Raw Normal View History

diff -Naur libburn-1.5.2/cdrskin/cdrfifo.c libburn-1.5.2.pl01/cdrskin/cdrfifo.c
--- libburn-1.5.2/cdrskin/cdrfifo.c 2018-09-06 12:03:40.000000000 +0200
+++ libburn-1.5.2.pl01/cdrskin/cdrfifo.c 2019-11-25 19:38:34.000000000 +0100
@@ -28,7 +28,20 @@
#ifndef Cdrfifo_standalonE
/* for burn_os_alloc_buffer() */
#include "../libburn/libburn.h"
-#define Libburn_has_open_trac_srC 1
+
+/* ts B91124:
+ DISABLED, because this spoils multi-track burning by slowing down first
+ track and stalling before the second track begins. Obviously a problem
+ with chained input and waiting for full O_DRIECT suitable read chunks.
+ DO NOT ENABLE before the wait code in this source file is fixed.
+ That long, ./configure option --enable-track-src-odirect must not
+ get into effect in libburn. NO -DLibburn_read_o_direcT either.
+
+ For extra safety, O_DIRECT has been banned in libburn/sg-linux.c too.
+
+ # def ine Libburn_has_open_trac_srC 1
+*/
+
#endif
#include "cdrfifo.h"
diff -Naur libburn-1.5.2/cdrskin/cdrskin_eng.html libburn-1.5.2.pl01/cdrskin/cdrskin_eng.html
--- libburn-1.5.2/cdrskin/cdrskin_eng.html 2019-10-26 16:59:32.000000000 +0200
+++ libburn-1.5.2.pl01/cdrskin/cdrskin_eng.html 2019-11-25 19:44:07.000000000 +0100
@@ -67,7 +67,7 @@
GPL software included:<BR>
</H2>
<DL>
-<DT>libburn-1.5.2</DT>
+<DT>libburn-1.5.2.pl01</DT>
<DD>(founded by Derek Foreman and Ben Jansens,
developed and maintained since August 2006 by
Thomas Schmitt from team of libburnia-project.org)
@@ -202,13 +202,13 @@
<P>
<DL>
<DT>Download as source code (see README):</DT>
-<DD><A HREF="cdrskin-1.5.2.tar.gz">cdrskin-1.5.2.tar.gz</A>
+<DD><A HREF="cdrskin-1.5.2.pl01.tar.gz">cdrskin-1.5.2.pl01.tar.gz</A>
(1060 KB).
</DD>
-<DD><A HREF="cdrskin-1.5.2.tar.gz.sig">cdrskin-1.5.2.tar.gz.sig</A></DD>
+<DD><A HREF="cdrskin-1.5.2.pl01.tar.gz.sig">cdrskin-1.5.2.pl01.tar.gz.sig</A></DD>
<DD>
(detached GPG signature for verification by
-<KBD>gpg --verify cdrskin-1.5.2.tar.gz.sig cdrskin-1.5.2.tar.gz</KBD>
+<KBD>gpg --verify cdrskin-1.5.2.pl01.tar.gz.sig cdrskin-1.5.2.pl01.tar.gz</KBD>
<BR>
after <KBD>gpg --keyserver keys.gnupg.net --recv-keys ABC0A854</KBD>).
</DD>
@@ -280,9 +280,16 @@
This caused Xfburn failures with some MATSHITA laptop drives.
</LI>
</UL>
+Bug fixes towards cdrskin-1.5.2 (without .pl01):
+<UL>
+<LI>
+cdrskin multi-track burning was slow and stalled after track 1.
+Regression introduced in version 1.5.0 by commit 84fad99, 2018.02.05
+</LI>
+</UL>
<!--
<LI>none</LI>
-Bug fixes towards cdrskin-1.4.2 (without .pl01):
+Bug fixes towards cdrskin-1.5.2 (without .pl01):
<UL>
</UL>
-->
@@ -300,7 +307,7 @@
</UL>
</DD>
-<DD>Bug fixes towards cdrskin-1.5.2:
+<DD>Bug fixes towards cdrskin-1.5.2.pl01:
<UL>
<LI>none yet</LI>
<!--
diff -Naur libburn-1.5.2/cdrskin/cdrskin_timestamp.h libburn-1.5.2.pl01/cdrskin/cdrskin_timestamp.h
--- libburn-1.5.2/cdrskin/cdrskin_timestamp.h 2019-10-26 16:57:47.000000000 +0200
+++ libburn-1.5.2.pl01/cdrskin/cdrskin_timestamp.h 2019-11-25 19:35:10.000000000 +0100
@@ -1 +1 @@
-#define Cdrskin_timestamP "2019.10.26.143001"
+#define Cdrskin_timestamP "2019.11.25.094931"
diff -Naur libburn-1.5.2/cdrskin/changelog.txt libburn-1.5.2.pl01/cdrskin/changelog.txt
--- libburn-1.5.2/cdrskin/changelog.txt 2019-10-26 17:09:41.000000000 +0200
+++ libburn-1.5.2.pl01/cdrskin/changelog.txt 2019-11-25 19:42:40.000000000 +0100
@@ -13945,6 +13945,19 @@
* New cdrskin option --list_features
+2019.11.25.091234 [91f7d4d]
+configure.ac
+libburn/sg-linux.c
+cdrskin/cdrfifo.c
+Bug fix: cdrskin multi-track burning was slow and stalled after track 1.
+ Regression introduced in version 1.5.0 by commit 84fad99, 2018.02.05
+
+--------------------- bug fix release - cdrskin-1.5.2.pl01 - 2019.11.25.094931
+* Bug fix: cdrskin multi-track burning was slow and stalled after track 1.
+ Regression introduced in version 1.5.0 by commit 84fad99, 2018.02.05
+ O_DIRECT is now disabled for track sources.
+
+
[]
ChangeLog
cdrskin/cdrskin_eng.html
diff -Naur libburn-1.5.2/cdrskin/README libburn-1.5.2.pl01/cdrskin/README
--- libburn-1.5.2/cdrskin/README 2019-10-26 16:55:47.000000000 +0200
+++ libburn-1.5.2.pl01/cdrskin/README 2019-11-25 19:40:52.000000000 +0100
@@ -4,7 +4,7 @@
cdrskin. By Thomas Schmitt <scdbackup@gmx.net>
Integrated sub project of libburnia-project.org but also published via:
http://scdbackup.sourceforge.net/cdrskin_eng.html
-http://scdbackup.sourceforge.net/cdrskin-1.5.2.tar.gz
+http://scdbackup.sourceforge.net/cdrskin-1.5.2.pl01.tar.gz
Copyright (C) 2006-2019 Thomas Schmitt, provided under GPL version 2 or later.
------------------------------------------------------------------------------
@@ -26,9 +26,9 @@
Compilation, First Glimpse, Installation
-Obtain cdrskin-1.5.2.tar.gz, take it to a directory of your choice and do:
+Obtain cdrskin-1.5.2.pl01.tar.gz, take it to a directory of your choice and do:
- tar xzf cdrskin-1.5.2.tar.gz
+ tar xzf cdrskin-1.5.2.pl01.tar.gz
cd cdrskin-1.5.2
Within that directory execute:
diff -Naur libburn-1.5.2/ChangeLog libburn-1.5.2.pl01/ChangeLog
--- libburn-1.5.2/ChangeLog 2019-10-26 17:03:00.000000000 +0200
+++ libburn-1.5.2.pl01/ChangeLog 2019-11-25 19:41:12.000000000 +0100
@@ -1,3 +1,9 @@
+libburn-1.5.2.pl01.tar.gz Mon Nov 25 2019
+===============================================================================
+* Bug fix: cdrskin multi-track burning was slow and stalled after track 1.
+ Regression introduced in version 1.5.0 by commit 84fad99, 2018.02.05
+ O_DIRECT is now disabled for track sources.
+
libburn-1.5.2.tar.gz Sat Oct 26 2019
===============================================================================
* Bug fix: No lock was obtained for setting up a fifo object
diff -Naur libburn-1.5.2/configure libburn-1.5.2.pl01/configure
--- libburn-1.5.2/configure 2019-10-26 17:21:16.000000000 +0200
+++ libburn-1.5.2.pl01/configure 2019-11-25 19:45:43.000000000 +0100
@@ -1444,7 +1444,7 @@
--enable-fast-install[=PKGS]
optimize for fast installation [default=yes]
--disable-libtool-lock avoid locking (might break parallel builds)
- --enable-track-src-odirect Enable use of O_DIRECT with track input, default=no
+ --enable-track-src-odirect Banned for now: (Enable use of O_DIRECT with track input, default=no)
--enable-dvd-obs-64k 64 KB default size for DVD writing, default=no
--enable-dvd-obs-pad pad DVD DAO sessions to 32 or 64 KB, default=no
--enable-pkg-check-modules Enable pkg-config check for libcdio , default=no
@@ -12310,8 +12310,9 @@
fi
if test x$enable_track_src_odirect = xyes; then
- LIBBURN_O_DIRECT_DEF="-DLibburn_read_o_direcT"
- echo "enabled use of O_DIRECT with track input"
+# LIBBURN_O_DIRECT_DEF="-DLibburn_read_o_direcT"
+# echo "enabled use of O_DIRECT with track input"
+ echo "REFUSED to enable use of O_DIRECT with track input because of cdrskin multi-track bug"
else
LIBBURN_O_DIRECT_DEF=
echo "disabled use of O_DIRECT with track input"
diff -Naur libburn-1.5.2/configure.ac libburn-1.5.2.pl01/configure.ac
--- libburn-1.5.2/configure.ac 2019-10-26 16:53:10.000000000 +0200
+++ libburn-1.5.2.pl01/configure.ac 2019-11-25 19:36:22.000000000 +0100
@@ -218,11 +218,12 @@
dnl ts A91122
AC_ARG_ENABLE(track-src-odirect,
-[ --enable-track-src-odirect Enable use of O_DIRECT with track input, default=no],
+[ --enable-track-src-odirect Banned for now: (Enable use of O_DIRECT with track input, default=no)],
, enable_track_src_odirect=no)
if test x$enable_track_src_odirect = xyes; then
- LIBBURN_O_DIRECT_DEF="-DLibburn_read_o_direcT"
- echo "enabled use of O_DIRECT with track input"
+# LIBBURN_O_DIRECT_DEF="-DLibburn_read_o_direcT"
+# echo "enabled use of O_DIRECT with track input"
+ echo "REFUSED to enable use of O_DIRECT with track input because of cdrskin multi-track bug"
else
LIBBURN_O_DIRECT_DEF=
echo "disabled use of O_DIRECT with track input"
diff -Naur libburn-1.5.2/libburn/sg-linux.c libburn-1.5.2.pl01/libburn/sg-linux.c
--- libburn-1.5.2/libburn/sg-linux.c 2019-07-05 15:29:49.000000000 +0200
+++ libburn-1.5.2.pl01/libburn/sg-linux.c 2019-11-25 19:37:56.000000000 +0100
@@ -111,6 +111,15 @@
/** PORTING : ------- OS dependent headers and definitions ------ */
+#ifdef Libburn_read_o_direcT
+/* ts B91124:
+ DISABLED, because this spoils multi-track burning of cdrskin by a hard to
+ fix bug in cdrskin/cdrfifo.c
+ DO NOT ENABLE before the wait code in that source file is fixed.
+*/
+#undef Libburn_read_o_direcT
+#endif
+
#ifdef Libburn_read_o_direcT
# ifndef _GNU_SOURCE
diff -Naur libburn-1.5.2/README libburn-1.5.2.pl01/README
--- libburn-1.5.2/README 2019-10-26 16:53:51.000000000 +0200
+++ libburn-1.5.2.pl01/README 2019-11-25 19:40:35.000000000 +0100
@@ -11,7 +11,7 @@
and Ben Jansens <xor@orodu.net>
Copyright (C) 2002-2006 Derek Foreman and Ben Jansens
- http://files.libburnia-project.org/releases/libburn-1.5.2.tar.gz
+ http://files.libburnia-project.org/releases/libburn-1.5.2.pl01.tar.gz
------------------------------------------------------------------------------
@@ -19,9 +19,9 @@
From tarball
-Obtain libburn-1.5.2.tar.gz, take it to a directory of your choice and do:
+Obtain libburn-1.5.2.pl01.tar.gz, take it to a directory of your choice and do:
- tar xzf libburn-1.5.2.tar.gz
+ tar xzf libburn-1.5.2.pl01.tar.gz
cd libburn-1.5.2
./configure --prefix=/usr
make
@@ -791,6 +791,10 @@
partitions and the ISO partition.
All three libraries got some rarely triggered bugs fixed.
+- Mon Nov 25 2019 patch release 1.5.2.pl01
+ cdrskin did not properly burn multiple tracks. Track 1 was slow and burning
+ stalled before track 2. Regression introduced by 1.5.0.
+
------------------------------------------------------------------------------
This program is free software; you can redistribute it and/or modify