Date: Saturday, December 5, 2015 @ 16:36:01
  Author: bpiotrowski
Revision: 252433

archrelease: copy trunk to staging-i686, staging-x86_64

Added:
  dvd+rw-tools/repos/staging-i686/
  dvd+rw-tools/repos/staging-i686/PKGBUILD
    (from rev 252432, dvd+rw-tools/trunk/PKGBUILD)
  dvd+rw-tools/repos/staging-i686/dvd+rw-tools-7.0-dvddl.patch
    (from rev 252432, dvd+rw-tools/trunk/dvd+rw-tools-7.0-dvddl.patch)
  dvd+rw-tools/repos/staging-i686/dvd+rw-tools-7.0-glibc2.6.90.patch
    (from rev 252432, dvd+rw-tools/trunk/dvd+rw-tools-7.0-glibc2.6.90.patch)
  dvd+rw-tools/repos/staging-i686/dvd+rw-tools-7.0-wctomb.patch
    (from rev 252432, dvd+rw-tools/trunk/dvd+rw-tools-7.0-wctomb.patch)
  dvd+rw-tools/repos/staging-i686/dvd+rw-tools-7.0-wexit.patch
    (from rev 252432, dvd+rw-tools/trunk/dvd+rw-tools-7.0-wexit.patch)
  dvd+rw-tools/repos/staging-i686/dvd+rw-tools-7.1-layerbreaksetup.patch
    (from rev 252432, dvd+rw-tools/trunk/dvd+rw-tools-7.1-layerbreaksetup.patch)
  dvd+rw-tools/repos/staging-x86_64/
  dvd+rw-tools/repos/staging-x86_64/PKGBUILD
    (from rev 252432, dvd+rw-tools/trunk/PKGBUILD)
  dvd+rw-tools/repos/staging-x86_64/dvd+rw-tools-7.0-dvddl.patch
    (from rev 252432, dvd+rw-tools/trunk/dvd+rw-tools-7.0-dvddl.patch)
  dvd+rw-tools/repos/staging-x86_64/dvd+rw-tools-7.0-glibc2.6.90.patch
    (from rev 252432, dvd+rw-tools/trunk/dvd+rw-tools-7.0-glibc2.6.90.patch)
  dvd+rw-tools/repos/staging-x86_64/dvd+rw-tools-7.0-wctomb.patch
    (from rev 252432, dvd+rw-tools/trunk/dvd+rw-tools-7.0-wctomb.patch)
  dvd+rw-tools/repos/staging-x86_64/dvd+rw-tools-7.0-wexit.patch
    (from rev 252432, dvd+rw-tools/trunk/dvd+rw-tools-7.0-wexit.patch)
  dvd+rw-tools/repos/staging-x86_64/dvd+rw-tools-7.1-layerbreaksetup.patch
    (from rev 252432, dvd+rw-tools/trunk/dvd+rw-tools-7.1-layerbreaksetup.patch)

-------------------------------------------------------+
 staging-i686/PKGBUILD                                 |   45 +++++++
 staging-i686/dvd+rw-tools-7.0-dvddl.patch             |   13 ++
 staging-i686/dvd+rw-tools-7.0-glibc2.6.90.patch       |   11 +
 staging-i686/dvd+rw-tools-7.0-wctomb.patch            |   11 +
 staging-i686/dvd+rw-tools-7.0-wexit.patch             |   11 +
 staging-i686/dvd+rw-tools-7.1-layerbreaksetup.patch   |   93 ++++++++++++++++
 staging-x86_64/PKGBUILD                               |   45 +++++++
 staging-x86_64/dvd+rw-tools-7.0-dvddl.patch           |   13 ++
 staging-x86_64/dvd+rw-tools-7.0-glibc2.6.90.patch     |   11 +
 staging-x86_64/dvd+rw-tools-7.0-wctomb.patch          |   11 +
 staging-x86_64/dvd+rw-tools-7.0-wexit.patch           |   11 +
 staging-x86_64/dvd+rw-tools-7.1-layerbreaksetup.patch |   93 ++++++++++++++++
 12 files changed, 368 insertions(+)

Copied: dvd+rw-tools/repos/staging-i686/PKGBUILD (from rev 252432, 
dvd+rw-tools/trunk/PKGBUILD)
===================================================================
--- staging-i686/PKGBUILD                               (rev 0)
+++ staging-i686/PKGBUILD       2015-12-05 15:36:01 UTC (rev 252433)
@@ -0,0 +1,45 @@
+# $Id$
+# Maintainer: damir <da...@archlinux.org>
+
+pkgname=dvd+rw-tools
+pkgver=7.1
+pkgrel=7
+pkgdesc="dvd burning tools"
+arch=('i686' 'x86_64')
+license=('GPL')
+url="http://fy.chalmers.se/~appro/linux/DVD+RW";
+depends=('cdrkit' 'gcc-libs')
+source=("http://fy.chalmers.se/~appro/linux/DVD+RW/tools/${pkgname}-${pkgver}.tar.gz";
+        'dvd+rw-tools-7.0-dvddl.patch'
+        'dvd+rw-tools-7.0-glibc2.6.90.patch'
+        'dvd+rw-tools-7.0-wctomb.patch'
+        'dvd+rw-tools-7.0-wexit.patch'
+       'dvd+rw-tools-7.1-layerbreaksetup.patch')
+sha1sums=('6400e013934ff589b4b224eced03fd9f42ed719b'
+          'd2c949bc15420f39a9055757b1f5bb5543c46b6c'
+          '6b2f496e8d95738501dcad5fb63a4faa32882202'
+          '08ad4c2309ae1602b855cf1a2bbdbe0dab5037a2'
+          'f50dc64f5d020f0dd64ffb38c18cfa3fbf03f8a2'
+          'dd5224fdd8e94ec9483f651b3579cf9c18381129')
+
+build() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+  # patches from Gentoo/Fedora
+  # see https://bugs.gentoo.org/257360, 
https://bugzilla.redhat.com/show_bug.cgi?id=426068
+  # and https://bugzilla.redhat.com/show_bug.cgi?id=243036
+  patch -p0 -i "${srcdir}/dvd+rw-tools-7.0-dvddl.patch"
+  patch -p1 -i "${srcdir}/dvd+rw-tools-7.0-glibc2.6.90.patch"
+  patch -p0 -i "${srcdir}/dvd+rw-tools-7.0-wctomb.patch"
+  patch -p1 -i "${srcdir}/dvd+rw-tools-7.0-wexit.patch"
+  patch -p1 -i "${srcdir}/dvd+rw-tools-7.1-layerbreaksetup.patch"
+  make
+}
+
+package() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+  install -m755 -d "${pkgdir}/usr/bin"
+  install -m755 -d "${pkgdir}/usr/share/man/man1"
+
+  install -m755 growisofs dvd+rw-booktype dvd+rw-format dvd+rw-mediainfo 
dvd-ram-control "${pkgdir}/usr/bin/"
+  install -m644 growisofs.1 ${pkgdir}/usr/share/man/man1/growisofs.1
+}

Copied: dvd+rw-tools/repos/staging-i686/dvd+rw-tools-7.0-dvddl.patch (from rev 
252432, dvd+rw-tools/trunk/dvd+rw-tools-7.0-dvddl.patch)
===================================================================
--- staging-i686/dvd+rw-tools-7.0-dvddl.patch                           (rev 0)
+++ staging-i686/dvd+rw-tools-7.0-dvddl.patch   2015-12-05 15:36:01 UTC (rev 
252433)
@@ -0,0 +1,13 @@
+--- ./growisofs_mmc.cpp.joe    2006-04-27 20:45:00.788446635 +0200
++++ ./growisofs_mmc.cpp        2006-04-27 20:46:01.666824300 +0200
+@@ -1412,9 +1412,7 @@
+     blocks += 15, blocks &= ~15;
+ 
+     if (blocks <= split)
+-      fprintf (stderr,":-( more than 50%% of space will be *wasted*!\n"
+-                      "    use single layer media for this recording\n"),
+-      exit (FATAL_START(EMEDIUMTYPE));
++      fprintf (stderr,":-? more than 50%% of space will be *wasted*!\n");
+ 
+     blocks /= 16;
+     blocks += 1;

Copied: dvd+rw-tools/repos/staging-i686/dvd+rw-tools-7.0-glibc2.6.90.patch 
(from rev 252432, dvd+rw-tools/trunk/dvd+rw-tools-7.0-glibc2.6.90.patch)
===================================================================
--- staging-i686/dvd+rw-tools-7.0-glibc2.6.90.patch                             
(rev 0)
+++ staging-i686/dvd+rw-tools-7.0-glibc2.6.90.patch     2015-12-05 15:36:01 UTC 
(rev 252433)
@@ -0,0 +1,11 @@
+diff -up dvd+rw-tools-7.0/transport.hxx.glibc2.6.90 
dvd+rw-tools-7.0/transport.hxx
+--- dvd+rw-tools-7.0/transport.hxx.glibc2.6.90 2007-08-15 12:56:17.000000000 
+0200
++++ dvd+rw-tools-7.0/transport.hxx     2007-08-15 12:56:42.000000000 +0200
+@@ -11,6 +11,7 @@
+ #include <stdlib.h>
+ #include <unistd.h>
+ #include <string.h>
++#include <limits.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <fcntl.h>

Copied: dvd+rw-tools/repos/staging-i686/dvd+rw-tools-7.0-wctomb.patch (from rev 
252432, dvd+rw-tools/trunk/dvd+rw-tools-7.0-wctomb.patch)
===================================================================
--- staging-i686/dvd+rw-tools-7.0-wctomb.patch                          (rev 0)
+++ staging-i686/dvd+rw-tools-7.0-wctomb.patch  2015-12-05 15:36:01 UTC (rev 
252433)
@@ -0,0 +1,11 @@
+--- transport.hxx~     2008-03-25 21:24:47.000000000 -0400
++++ transport.hxx      2008-03-25 21:25:36.000000000 -0400
+@@ -116,7 +116,7 @@
+ extern "C" char *plusminus_locale()
+ { static class __plusminus {
+     private:
+-      char str[4];
++      char str[MB_LEN_MAX];
+     public:
+       __plusminus()   {   setlocale(LC_CTYPE,ENV_LOCALE);
+                           int l = wctomb(str,(wchar_t)(unsigned char)'�');

Copied: dvd+rw-tools/repos/staging-i686/dvd+rw-tools-7.0-wexit.patch (from rev 
252432, dvd+rw-tools/trunk/dvd+rw-tools-7.0-wexit.patch)
===================================================================
--- staging-i686/dvd+rw-tools-7.0-wexit.patch                           (rev 0)
+++ staging-i686/dvd+rw-tools-7.0-wexit.patch   2015-12-05 15:36:01 UTC (rev 
252433)
@@ -0,0 +1,11 @@
+--- dvd+rw-tools-7.0/dvd+rw-format.cpp.wexit   2007-06-21 12:42:30.000000000 
+0200
++++ dvd+rw-tools-7.0/dvd+rw-format.cpp 2007-06-21 12:44:13.000000000 +0200
+@@ -245,7 +245,7 @@ int main (int argc, char *argv[])
+       alarm(1);
+       while ((waitpid(pid,&i,0) != pid) && !WIFEXITED(i)) ;
+       if (WEXITSTATUS(i) == 0) fprintf (stderr,"\n");
+-      exit (0);
++      exit (WEXITSTATUS(i));
+     }
+ #endif
+ 

Copied: dvd+rw-tools/repos/staging-i686/dvd+rw-tools-7.1-layerbreaksetup.patch 
(from rev 252432, dvd+rw-tools/trunk/dvd+rw-tools-7.1-layerbreaksetup.patch)
===================================================================
--- staging-i686/dvd+rw-tools-7.1-layerbreaksetup.patch                         
(rev 0)
+++ staging-i686/dvd+rw-tools-7.1-layerbreaksetup.patch 2015-12-05 15:36:01 UTC 
(rev 252433)
@@ -0,0 +1,93 @@
+diff -ur dvd+rw-tools-7.1-orig/growisofs.c dvd+rw-tools-7.1/growisofs.c
+--- dvd+rw-tools-7.1-orig/growisofs.c  2008-03-04 10:15:03.000000000 +0100
++++ dvd+rw-tools-7.1/growisofs.c       2009-09-06 22:39:33.000000000 +0200
+@@ -535,7 +535,7 @@
+  */
+ int        get_mmc_profile    (void *fd);
+ int        plusminus_r_C_parm (void *fd,char *C_parm);
+-pwrite64_t poor_mans_setup    (void *fd,off64_t leadout);
++pwrite64_t poor_mans_setup    (void *fd,off64_t leadout,unsigned int lbreak);
+ char      *plusminus_locale   ();
+ int        __1x                       ();
+ /*
+@@ -2447,7 +2447,7 @@
+                           goto out;
+                       }
+                       if (!progress.final) progress.final = tracksize;
+-                      tracksize = layer_break*CD_BLOCK*2;
++                      //tracksize = layer_break*CD_BLOCK*2;
+                   }
+               }
+               else if (capacity > outoff)
+@@ -2648,7 +2648,7 @@
+        * further details on poor_mans_setup
+        */
+       pwrite64_method = poor_mans_setup (ioctl_handle,
+-                                         outoff+tracksize);
++                                         outoff+tracksize, (unsigned 
int)layer_break);
+     }
+ 
+     if (!progress.final)
+diff -ur dvd+rw-tools-7.1-orig/growisofs_mmc.cpp 
dvd+rw-tools-7.1/growisofs_mmc.cpp
+--- dvd+rw-tools-7.1-orig/growisofs_mmc.cpp    2008-03-04 18:47:49.000000000 
+0100
++++ dvd+rw-tools-7.1/growisofs_mmc.cpp 2009-09-06 20:52:46.000000000 +0200
+@@ -1612,7 +1612,7 @@
+   return 0;
+ }
+ 
+-static void plus_r_dl_split (Scsi_Command &cmd,off64_t size)
++static void plus_r_dl_split (Scsi_Command &cmd,off64_t size,unsigned int 
lbreak)
+ { int           err;
+   unsigned int  blocks,split;
+   unsigned char dvd_20[4+8];
+@@ -1644,10 +1644,17 @@
+                       "    use single layer media for this recording\n"),
+       exit (FATAL_START(EMEDIUMTYPE));
+ 
+-    blocks /= 16;
+-    blocks += 1;
+-    blocks /= 2;
+-    blocks *= 16;
++    if (lbreak)
++      {
++      blocks=lbreak;
++      }
++    else
++      {
++      blocks /= 16;
++      blocks += 1;
++      blocks /= 2;
++      blocks *= 16;
++      }
+ 
+     fprintf (stderr,"%s: splitting layers at %u blocks\n",
+                   ioctl_device,blocks);
+@@ -2010,7 +2017,7 @@
+ typedef ssize_t (*pwrite64_t)(int,const void *,size_t,off64_t);
+ 
+ extern "C"
+-pwrite64_t poor_mans_setup (void *fd,off64_t leadout)
++pwrite64_t poor_mans_setup (void *fd,off64_t leadout,unsigned int lbreak)
+ { Scsi_Command cmd(ioctl_handle=fd);
+   int err,profile=mmc_profile&0xFFFF;
+ 
+@@ -2059,7 +2066,7 @@
+       case 0x2B:      // DVD+R Double Layer
+           plusminus_pages_setup(cmd,profile);
+           if (profile==0x2B && next_track==1 && dvd_compat && leadout)
+-              plus_r_dl_split (cmd,leadout);
++            plus_r_dl_split (cmd,leadout,lbreak);
+           atexit (plus_r_finalize);
+           if (next_wr_addr)
+           {   atsignals (no_r_finalize);
+diff -ur dvd+rw-tools-7.1-orig/transport.hxx dvd+rw-tools-7.1/transport.hxx
+--- dvd+rw-tools-7.1-orig/transport.hxx        2008-03-01 11:34:43.000000000 
+0100
++++ dvd+rw-tools-7.1/transport.hxx     2009-09-06 20:53:53.000000000 +0200
+@@ -9,6 +9,7 @@
+ #if defined(__unix) || defined(__unix__)
+ #include <stdio.h>
+ #include <stdlib.h>
++#include <limits.h>
+ #include <unistd.h>
+ #include <string.h>
+ #include <sys/types.h>

Copied: dvd+rw-tools/repos/staging-x86_64/PKGBUILD (from rev 252432, 
dvd+rw-tools/trunk/PKGBUILD)
===================================================================
--- staging-x86_64/PKGBUILD                             (rev 0)
+++ staging-x86_64/PKGBUILD     2015-12-05 15:36:01 UTC (rev 252433)
@@ -0,0 +1,45 @@
+# $Id$
+# Maintainer: damir <da...@archlinux.org>
+
+pkgname=dvd+rw-tools
+pkgver=7.1
+pkgrel=7
+pkgdesc="dvd burning tools"
+arch=('i686' 'x86_64')
+license=('GPL')
+url="http://fy.chalmers.se/~appro/linux/DVD+RW";
+depends=('cdrkit' 'gcc-libs')
+source=("http://fy.chalmers.se/~appro/linux/DVD+RW/tools/${pkgname}-${pkgver}.tar.gz";
+        'dvd+rw-tools-7.0-dvddl.patch'
+        'dvd+rw-tools-7.0-glibc2.6.90.patch'
+        'dvd+rw-tools-7.0-wctomb.patch'
+        'dvd+rw-tools-7.0-wexit.patch'
+       'dvd+rw-tools-7.1-layerbreaksetup.patch')
+sha1sums=('6400e013934ff589b4b224eced03fd9f42ed719b'
+          'd2c949bc15420f39a9055757b1f5bb5543c46b6c'
+          '6b2f496e8d95738501dcad5fb63a4faa32882202'
+          '08ad4c2309ae1602b855cf1a2bbdbe0dab5037a2'
+          'f50dc64f5d020f0dd64ffb38c18cfa3fbf03f8a2'
+          'dd5224fdd8e94ec9483f651b3579cf9c18381129')
+
+build() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+  # patches from Gentoo/Fedora
+  # see https://bugs.gentoo.org/257360, 
https://bugzilla.redhat.com/show_bug.cgi?id=426068
+  # and https://bugzilla.redhat.com/show_bug.cgi?id=243036
+  patch -p0 -i "${srcdir}/dvd+rw-tools-7.0-dvddl.patch"
+  patch -p1 -i "${srcdir}/dvd+rw-tools-7.0-glibc2.6.90.patch"
+  patch -p0 -i "${srcdir}/dvd+rw-tools-7.0-wctomb.patch"
+  patch -p1 -i "${srcdir}/dvd+rw-tools-7.0-wexit.patch"
+  patch -p1 -i "${srcdir}/dvd+rw-tools-7.1-layerbreaksetup.patch"
+  make
+}
+
+package() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+  install -m755 -d "${pkgdir}/usr/bin"
+  install -m755 -d "${pkgdir}/usr/share/man/man1"
+
+  install -m755 growisofs dvd+rw-booktype dvd+rw-format dvd+rw-mediainfo 
dvd-ram-control "${pkgdir}/usr/bin/"
+  install -m644 growisofs.1 ${pkgdir}/usr/share/man/man1/growisofs.1
+}

Copied: dvd+rw-tools/repos/staging-x86_64/dvd+rw-tools-7.0-dvddl.patch (from 
rev 252432, dvd+rw-tools/trunk/dvd+rw-tools-7.0-dvddl.patch)
===================================================================
--- staging-x86_64/dvd+rw-tools-7.0-dvddl.patch                         (rev 0)
+++ staging-x86_64/dvd+rw-tools-7.0-dvddl.patch 2015-12-05 15:36:01 UTC (rev 
252433)
@@ -0,0 +1,13 @@
+--- ./growisofs_mmc.cpp.joe    2006-04-27 20:45:00.788446635 +0200
++++ ./growisofs_mmc.cpp        2006-04-27 20:46:01.666824300 +0200
+@@ -1412,9 +1412,7 @@
+     blocks += 15, blocks &= ~15;
+ 
+     if (blocks <= split)
+-      fprintf (stderr,":-( more than 50%% of space will be *wasted*!\n"
+-                      "    use single layer media for this recording\n"),
+-      exit (FATAL_START(EMEDIUMTYPE));
++      fprintf (stderr,":-? more than 50%% of space will be *wasted*!\n");
+ 
+     blocks /= 16;
+     blocks += 1;

Copied: dvd+rw-tools/repos/staging-x86_64/dvd+rw-tools-7.0-glibc2.6.90.patch 
(from rev 252432, dvd+rw-tools/trunk/dvd+rw-tools-7.0-glibc2.6.90.patch)
===================================================================
--- staging-x86_64/dvd+rw-tools-7.0-glibc2.6.90.patch                           
(rev 0)
+++ staging-x86_64/dvd+rw-tools-7.0-glibc2.6.90.patch   2015-12-05 15:36:01 UTC 
(rev 252433)
@@ -0,0 +1,11 @@
+diff -up dvd+rw-tools-7.0/transport.hxx.glibc2.6.90 
dvd+rw-tools-7.0/transport.hxx
+--- dvd+rw-tools-7.0/transport.hxx.glibc2.6.90 2007-08-15 12:56:17.000000000 
+0200
++++ dvd+rw-tools-7.0/transport.hxx     2007-08-15 12:56:42.000000000 +0200
+@@ -11,6 +11,7 @@
+ #include <stdlib.h>
+ #include <unistd.h>
+ #include <string.h>
++#include <limits.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <fcntl.h>

Copied: dvd+rw-tools/repos/staging-x86_64/dvd+rw-tools-7.0-wctomb.patch (from 
rev 252432, dvd+rw-tools/trunk/dvd+rw-tools-7.0-wctomb.patch)
===================================================================
--- staging-x86_64/dvd+rw-tools-7.0-wctomb.patch                                
(rev 0)
+++ staging-x86_64/dvd+rw-tools-7.0-wctomb.patch        2015-12-05 15:36:01 UTC 
(rev 252433)
@@ -0,0 +1,11 @@
+--- transport.hxx~     2008-03-25 21:24:47.000000000 -0400
++++ transport.hxx      2008-03-25 21:25:36.000000000 -0400
+@@ -116,7 +116,7 @@
+ extern "C" char *plusminus_locale()
+ { static class __plusminus {
+     private:
+-      char str[4];
++      char str[MB_LEN_MAX];
+     public:
+       __plusminus()   {   setlocale(LC_CTYPE,ENV_LOCALE);
+                           int l = wctomb(str,(wchar_t)(unsigned char)'�');

Copied: dvd+rw-tools/repos/staging-x86_64/dvd+rw-tools-7.0-wexit.patch (from 
rev 252432, dvd+rw-tools/trunk/dvd+rw-tools-7.0-wexit.patch)
===================================================================
--- staging-x86_64/dvd+rw-tools-7.0-wexit.patch                         (rev 0)
+++ staging-x86_64/dvd+rw-tools-7.0-wexit.patch 2015-12-05 15:36:01 UTC (rev 
252433)
@@ -0,0 +1,11 @@
+--- dvd+rw-tools-7.0/dvd+rw-format.cpp.wexit   2007-06-21 12:42:30.000000000 
+0200
++++ dvd+rw-tools-7.0/dvd+rw-format.cpp 2007-06-21 12:44:13.000000000 +0200
+@@ -245,7 +245,7 @@ int main (int argc, char *argv[])
+       alarm(1);
+       while ((waitpid(pid,&i,0) != pid) && !WIFEXITED(i)) ;
+       if (WEXITSTATUS(i) == 0) fprintf (stderr,"\n");
+-      exit (0);
++      exit (WEXITSTATUS(i));
+     }
+ #endif
+ 

Copied: 
dvd+rw-tools/repos/staging-x86_64/dvd+rw-tools-7.1-layerbreaksetup.patch (from 
rev 252432, dvd+rw-tools/trunk/dvd+rw-tools-7.1-layerbreaksetup.patch)
===================================================================
--- staging-x86_64/dvd+rw-tools-7.1-layerbreaksetup.patch                       
        (rev 0)
+++ staging-x86_64/dvd+rw-tools-7.1-layerbreaksetup.patch       2015-12-05 
15:36:01 UTC (rev 252433)
@@ -0,0 +1,93 @@
+diff -ur dvd+rw-tools-7.1-orig/growisofs.c dvd+rw-tools-7.1/growisofs.c
+--- dvd+rw-tools-7.1-orig/growisofs.c  2008-03-04 10:15:03.000000000 +0100
++++ dvd+rw-tools-7.1/growisofs.c       2009-09-06 22:39:33.000000000 +0200
+@@ -535,7 +535,7 @@
+  */
+ int        get_mmc_profile    (void *fd);
+ int        plusminus_r_C_parm (void *fd,char *C_parm);
+-pwrite64_t poor_mans_setup    (void *fd,off64_t leadout);
++pwrite64_t poor_mans_setup    (void *fd,off64_t leadout,unsigned int lbreak);
+ char      *plusminus_locale   ();
+ int        __1x                       ();
+ /*
+@@ -2447,7 +2447,7 @@
+                           goto out;
+                       }
+                       if (!progress.final) progress.final = tracksize;
+-                      tracksize = layer_break*CD_BLOCK*2;
++                      //tracksize = layer_break*CD_BLOCK*2;
+                   }
+               }
+               else if (capacity > outoff)
+@@ -2648,7 +2648,7 @@
+        * further details on poor_mans_setup
+        */
+       pwrite64_method = poor_mans_setup (ioctl_handle,
+-                                         outoff+tracksize);
++                                         outoff+tracksize, (unsigned 
int)layer_break);
+     }
+ 
+     if (!progress.final)
+diff -ur dvd+rw-tools-7.1-orig/growisofs_mmc.cpp 
dvd+rw-tools-7.1/growisofs_mmc.cpp
+--- dvd+rw-tools-7.1-orig/growisofs_mmc.cpp    2008-03-04 18:47:49.000000000 
+0100
++++ dvd+rw-tools-7.1/growisofs_mmc.cpp 2009-09-06 20:52:46.000000000 +0200
+@@ -1612,7 +1612,7 @@
+   return 0;
+ }
+ 
+-static void plus_r_dl_split (Scsi_Command &cmd,off64_t size)
++static void plus_r_dl_split (Scsi_Command &cmd,off64_t size,unsigned int 
lbreak)
+ { int           err;
+   unsigned int  blocks,split;
+   unsigned char dvd_20[4+8];
+@@ -1644,10 +1644,17 @@
+                       "    use single layer media for this recording\n"),
+       exit (FATAL_START(EMEDIUMTYPE));
+ 
+-    blocks /= 16;
+-    blocks += 1;
+-    blocks /= 2;
+-    blocks *= 16;
++    if (lbreak)
++      {
++      blocks=lbreak;
++      }
++    else
++      {
++      blocks /= 16;
++      blocks += 1;
++      blocks /= 2;
++      blocks *= 16;
++      }
+ 
+     fprintf (stderr,"%s: splitting layers at %u blocks\n",
+                   ioctl_device,blocks);
+@@ -2010,7 +2017,7 @@
+ typedef ssize_t (*pwrite64_t)(int,const void *,size_t,off64_t);
+ 
+ extern "C"
+-pwrite64_t poor_mans_setup (void *fd,off64_t leadout)
++pwrite64_t poor_mans_setup (void *fd,off64_t leadout,unsigned int lbreak)
+ { Scsi_Command cmd(ioctl_handle=fd);
+   int err,profile=mmc_profile&0xFFFF;
+ 
+@@ -2059,7 +2066,7 @@
+       case 0x2B:      // DVD+R Double Layer
+           plusminus_pages_setup(cmd,profile);
+           if (profile==0x2B && next_track==1 && dvd_compat && leadout)
+-              plus_r_dl_split (cmd,leadout);
++            plus_r_dl_split (cmd,leadout,lbreak);
+           atexit (plus_r_finalize);
+           if (next_wr_addr)
+           {   atsignals (no_r_finalize);
+diff -ur dvd+rw-tools-7.1-orig/transport.hxx dvd+rw-tools-7.1/transport.hxx
+--- dvd+rw-tools-7.1-orig/transport.hxx        2008-03-01 11:34:43.000000000 
+0100
++++ dvd+rw-tools-7.1/transport.hxx     2009-09-06 20:53:53.000000000 +0200
+@@ -9,6 +9,7 @@
+ #if defined(__unix) || defined(__unix__)
+ #include <stdio.h>
+ #include <stdlib.h>
++#include <limits.h>
+ #include <unistd.h>
+ #include <string.h>
+ #include <sys/types.h>

Reply via email to