rpms/k3b/devel k3b-1.0.4-kde#151816.patch, NONE, 1.1 k3b.spec, 1.53, 1.54

Rex Dieter (rdieter) fedora-extras-commits at redhat.com
Sat Dec 8 21:43:53 UTC 2007


Author: rdieter

Update of /cvs/pkgs/rpms/k3b/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv10381

Modified Files:
	k3b.spec 
Added Files:
	k3b-1.0.4-kde#151816.patch 
Log Message:
* Sat Dec 08 2007 Rex Dieter <rdieter[AT]fedoraproject.org> - 0:1.0.4-4
- patch for "k3b can't reload media for verification" (kde#151816)


k3b-1.0.4-kde#151816.patch:

--- NEW FILE k3b-1.0.4-kde#151816.patch ---
diff -ur k3b-1.0.4/ChangeLog k3b-1.0.4-verification-always-reload/ChangeLog
--- k3b-1.0.4/ChangeLog	2007-11-02 10:55:57.000000000 +0100
+++ k3b-1.0.4-verification-always-reload/ChangeLog	2007-12-07 19:33:18.000000000 +0100
@@ -4,9 +4,6 @@
  * Unmount medium before DVD formatting
  * Silently (without introducing new strings for translation) allow the burning of files
    bigger than 4 GB with appropriate versions of genisoimage or mkisofs.
- * Do only reload the medium before verification if necessary, i.e. if the newly written
-   track cannot be read otherwise (many old drives depend on this). Hopefully this will
-   at least work around the aweful "DMA disabled" bug for many users.
 	
 1.0.3
 =====
diff -ur k3b-1.0.4/libk3b/jobs/k3bverificationjob.cpp k3b-1.0.4-verification-always-reload/libk3b/jobs/k3bverificationjob.cpp
--- k3b-1.0.4/libk3b/jobs/k3bverificationjob.cpp	2007-11-02 10:55:53.000000000 +0100
+++ k3b-1.0.4-verification-always-reload/libk3b/jobs/k3bverificationjob.cpp	2007-07-21 21:53:53.000000000 +0200
@@ -84,8 +84,6 @@
   K3bPipe pipe;
 
   bool readSuccessful;
-
-  bool mediumHasBeenReloaded;
 };
 
 
@@ -151,13 +149,11 @@
   d->currentTrackIndex = 0;
   d->alreadyReadSectors = 0;
 
-  emit newTask( i18n("Checking medium") );
+  // first we need to reload and mount the device
+  emit newTask( i18n("Reloading the medium") );
 
-  d->mediumHasBeenReloaded = false;
-  connect( K3bDevice::sendCommand( K3bDevice::DeviceHandler::DISKINFO, d->device ),
-           SIGNAL(finished(K3bDevice::DeviceHandler*)),
-           this,
-           SLOT(slotDiskInfoReady(K3bDevice::DeviceHandler*)) );
+  connect( K3bDevice::reload( d->device ), SIGNAL(finished(bool)),
+	   this, SLOT(slotMediaReloaded(bool)) );
 }
 
 
@@ -169,8 +165,6 @@
 		  K3bDevice::MEDIA_WRITABLE,
 		  i18n("Unable to Close the Tray") );
 
-  d->mediumHasBeenReloaded = true;
-
   emit newTask( i18n("Checking medium") );
 
   connect( K3bDevice::sendCommand( K3bDevice::DeviceHandler::DISKINFO, d->device ),
@@ -191,6 +185,12 @@
   d->toc = dh->toc();
   d->totalSectors = 0;
 
+  if ( d->toc.isEmpty() ) {
+      emit infoMessage( i18n( "No tracks to verify found." ), ERROR );
+      jobFinished( false );
+      return;
+  }
+
   // just to be sure check if we actually have all the tracks
   int i = 0;
   for( QValueList<K3bVerificationJobTrackEntry>::iterator it = d->tracks.begin();
@@ -201,21 +201,9 @@
       (*it).trackNumber = d->toc.count();
 
     if( (int)d->toc.count() < (*it).trackNumber ) {
-        if ( d->mediumHasBeenReloaded ) {
-            emit infoMessage( i18n("Internal Error: Verification job improperly initialized (%1)")
-                              .arg( "Specified track number not found on medium" ), ERROR );
-            jobFinished( false );
-            return;
-        }
-        else {
-            // many drives need to reload the medium to return to a proper state
-            emit newTask( i18n("Reloading the medium") );
-            connect( K3bDevice::reload( d->device ),
-                     SIGNAL(finished(bool)),
-                     this,
-                     SLOT(slotMediaReloaded(bool)) );
-            return;
-        }
+      emit infoMessage( i18n("Internal Error: Verification job improperly initialized"), ERROR );
+      jobFinished( false );
+      return;
     }
 
     d->totalSectors += trackLength( i );


Index: k3b.spec
===================================================================
RCS file: /cvs/pkgs/rpms/k3b/devel/k3b.spec,v
retrieving revision 1.53
retrieving revision 1.54
diff -u -r1.53 -r1.54
--- k3b.spec	21 Nov 2007 14:52:16 -0000	1.53
+++ k3b.spec	8 Dec 2007 21:43:20 -0000	1.54
@@ -14,7 +14,7 @@
 Summary: CD/DVD burning application for KDE
 Epoch:   0
 Version: 1.0.4
-Release: 3%{?dist}
+Release: 4%{?dist}
 
 Group:   Applications/Archiving
 License: GPLv2+
@@ -25,6 +25,8 @@
 
 Patch1: k3b-i18n-0.12.17-rellink.patch
 Patch2: k3b-1.0.3-umount.patch
+# http://bugs.kde.org/151816 , k3b can't reload media for verification
+Patch3: k3b-1.0.4-kde#151816.patch
 
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 # TODO: bugzilla/document
@@ -90,6 +92,7 @@
 popd
 
 %patch2 -p1 -b .umount
+%patch3 -p1 -b .kde#151816
 
 
 %build
@@ -232,6 +235,9 @@
 
 
 %changelog
+* Sat Dec 08 2007 Rex Dieter <rdieter[AT]fedoraproject.org> - 0:1.0.4-4
+- patch for "k3b can't reload media for verification" (kde#151816)
+
 * Wed Nov 21 2007 Adam Tkac <atkac redhat com> - 0:1.0.4-3
 - rebuild against new libdvdread
 




More information about the scm-commits mailing list