Hello community,

here is the log from the commit of package k3b for openSUSE:Factory checked in 
at 2012-12-19 20:50:05
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/k3b (Old)
 and      /work/SRC/openSUSE:Factory/.k3b.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "k3b", Maintainer is "[email protected]"

Changes:
--------
--- /work/SRC/openSUSE:Factory/k3b/k3b.changes  2012-07-30 17:13:01.000000000 
+0200
+++ /work/SRC/openSUSE:Factory/.k3b.new/k3b.changes     2012-12-19 
20:50:08.000000000 +0100
@@ -1,0 +2,12 @@
+Mon Dec 17 12:41:18 UTC 2012 - [email protected]
+
+- Add various bugfixes from upstream 2.0 branch
+  * k3b-dont-count-used-capacity-twice.patch (kde#276002)
+  * k3b-fixed-crash-on-detecting-writing-speeds.patch (kde#272427)
+  * k3b-fixed-improper-track-number-in-CDDB-track-edit-window-title.patch 
(kde#276681)
+  * k3b-fixed-solid-predicates.patch (kde#265819)
+  * k3b-increase-tolerance.patch (kde#276002)
+  * k3b-prefer-growisofs-to-wodim-for-DVD-burning.patch
+  * k3b-set-error-status-when-CDDB-query-fails.patch
+
+-------------------------------------------------------------------

New:
----
  k3b-dont-count-used-capacity-twice.patch
  k3b-fixed-crash-on-detecting-writing-speeds.patch
  k3b-fixed-improper-track-number-in-CDDB-track-edit-window-title.patch
  k3b-fixed-solid-predicates.patch
  k3b-increase-tolerance.patch
  k3b-prefer-growisofs-to-wodim-for-DVD-burning.patch
  k3b-set-error-status-when-CDDB-query-fails.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ k3b.spec ++++++
--- /var/tmp/diff_new_pack.toqc3Y/_old  2012-12-19 20:50:09.000000000 +0100
+++ /var/tmp/diff_new_pack.toqc3Y/_new  2012-12-19 20:50:09.000000000 +0100
@@ -37,6 +37,21 @@
 Patch2:         k3b-short-trackinfo.patch
 # PATCH-FIX-UPSTREAM k3b-2.0.2-ffmpeg011.patch [email protected] -- Make 
it compile with the latest ffmpeg.
 Patch3:         k3b-2.0.2-ffmpeg011.patch
+# PATCH-FIX-UPSTREAM k3b-increase-tolerance.patch kde#276002 
[email protected] -- K3b::IsOverburnAllowed: Increase tolerance
+Patch4:         k3b-increase-tolerance.patch
+# PATCH-FIX-UPSTREAM k3b-fixed-crash-on-detecting-writing-speeds.patch 
kde#272427 [email protected] -- Fixed crash on detecting writing speeds
+Patch5:         k3b-fixed-crash-on-detecting-writing-speeds.patch
+# PATCH-FIX-UPSTREAM 
k3b-fixed-improper-track-number-in-CDDB-track-edit-window-title.patch 
kde#276681 [email protected] -- Fixed improper track number in CDDB track 
edit window title
+Patch6:         
k3b-fixed-improper-track-number-in-CDDB-track-edit-window-title.patch
+# PATCH-FIX-UPSTREAM k3b-fixed-solid-predicates.patch  kde#265819 
[email protected] -- Starting ripping directly from device notifier is 
possible again
+Patch7:         k3b-fixed-solid-predicates.patch
+# PATCH-FIX-UPSTREAM k3b-dont-count-used-capacity-twice.patch kde#276002 
[email protected] -- Don't count used capacity twice
+Patch8:         k3b-dont-count-used-capacity-twice.patch
+# PATCH-FIX-UPSTREAM k3b-prefer-growisofs-to-wodim-for-DVD-burning.patch 
[email protected] -- This patch makes K3b default to growisofs for all 
DVD or BluRay burning tasks if cdrecord is actually wodim.
+Patch9:         k3b-prefer-growisofs-to-wodim-for-DVD-burning.patch
+# PATCH-FIX-UPSTREAM k3b-set-error-status-when-CDDB-query-fails.patch 
[email protected] -- Set error status when CDDB query fails. Without it 
the error is buing not reported and as a result all entries in audio project 
are cleared up.
+Patch10:        k3b-set-error-status-when-CDDB-query-fails.patch
+
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 
 # only needed to patch broken images in the upstream tarball
@@ -105,6 +120,13 @@
 %patch0
 %patch1
 %patch2 -p1
+%patch4 -p1
+%patch5 -p1
+%patch6 -p1
+%patch7 -p1
+%patch8 -p1
+%patch9 -p1
+%patch10 -p1
 %if %{with ffmpeg}
 %patch3 -p1
 %endif

++++++ k3b-dont-count-used-capacity-twice.patch ++++++
From: Kevin Kofler <[email protected]>
Date: Sat, 17 Sep 2011 21:34:23 +0000
Subject: K3b::IsOverburnAllowed: Don't count used capacity twice.
X-Git-Url: 
http://quickgit.kde.org/?p=k3b.git&a=commitdiff&h=8270d2853f2962facdf6f9ea6d669922d6c78aba
---
K3b::IsOverburnAllowed: Don't count used capacity twice.

CCBUG: 276002
---


--- a/libk3b/core/k3bglobals.cpp
+++ b/libk3b/core/k3bglobals.cpp
@@ -595,7 +595,7 @@
 bool K3b::IsOverburnAllowed( const Msf& projectSize, const Msf& capacity, 
const Msf& usedCapacity )
 {
     return( k3bcore->globalSettings()->overburn() &&
-        (projectSize + usedCapacity) <= ( capacity.lba() - usedCapacity.lba() 
+ capacity.lba() / 4 ) ); // 25% tolerance in overburn mode
+        (projectSize + usedCapacity) <= ( capacity.lba() + capacity.lba() / 4 
) ); // 25% tolerance in overburn mode
 }
 
 

++++++ k3b-fixed-crash-on-detecting-writing-speeds.patch ++++++
From: Michal Malek <[email protected]>
Date: Sat, 09 Jul 2011 22:03:55 +0000
Subject: Fixed crash on detecting writing speeds
X-Git-Url: 
http://quickgit.kde.org/?p=k3b.git&a=commitdiff&h=61ee818030f29e57556248adf1398b6c9e5ee7de
---
Fixed crash on detecting writing speeds

Device::Device::determineSupportedWriteSpeeds() method
lacked checking if data array is of enough size before accessing
it.

BUG: 272427
FIXED-IN: 2.0.3

Conflicts:

libk3bdevice/k3bdevice.cpp
libk3bdevice/k3bdevice_mmc.cpp
---


--- a/libk3bdevice/k3bdevice.cpp
+++ b/libk3bdevice/k3bdevice.cpp
@@ -3253,7 +3253,7 @@
             int max = 0;
             unsigned char* data = 0;
             unsigned int dataLen = 0;
-            if( modeSense( &data, dataLen, 0x2A ) ) {
+            if( modeSense( &data, dataLen, 0x2A ) && dataLen >= 8 ) {
                 mm_cap_page_2A* mm = (mm_cap_page_2A*)&data[8];
 
                 // MMC1 used byte 18 and 19 for the max write speed

++++++ k3b-fixed-improper-track-number-in-CDDB-track-edit-window-title.patch 
++++++
From: Michal Malek <[email protected]>
Date: Sun, 03 Jul 2011 21:55:16 +0000
Subject: Fixed improper track number in CDDB track edit window title
X-Git-Url: 
http://quickgit.kde.org/?p=k3b.git&a=commitdiff&h=6110dc547b118a6aecc64f15bbcef04636854958
---
Fixed improper track number in CDDB track edit window title

The title showed track index instead of a track number (which equals to
track index + 1).

BUG: 276681
FIXED-IN: 2.0.3
---


--- a/src/rip/k3baudiocdview.cpp
+++ b/src/rip/k3baudiocdview.cpp
@@ -324,7 +324,7 @@
         int trackIndex = items.first();
 
         KDialog dialog( this);
-        dialog.setCaption(i18n("CDDB Track %1", trackIndex) );
+        dialog.setCaption(i18n("CDDB Track %1", trackIndex+1) );
         dialog.setButtons(KDialog::Ok|KDialog::Cancel);
         dialog.setDefaultButton(KDialog::Ok);
         dialog.setModal(true);

++++++ k3b-fixed-solid-predicates.patch ++++++
From: Michal Malek <[email protected]>
Date: Wed, 27 Apr 2011 22:29:18 +0000
Subject: Fixed Solid predicates for AudioCd and VideoDvd media. Starting 
ripping directly from device notifier is possible again.
X-Git-Url: 
http://quickgit.kde.org/?p=k3b.git&a=commitdiff&h=031c6c4e7595c9280768f512b7f82f1681c41351
---
Fixed Solid predicates for AudioCd and VideoDvd media. Starting ripping 
directly from device notifier is possible again.
BUG: 265819
---


--- a/src/services/k3b_audiocd_rip.desktop
+++ b/src/services/k3b_audiocd_rip.desktop
@@ -1,5 +1,5 @@
 [Desktop Entry]
-X-KDE-Solid-Predicate=[StorageVolume.ignored == false AND 
OpticalDisc.availableContent == 'Audio']
+X-KDE-Solid-Predicate=OpticalDisc.availableContent & 'Audio'
 Actions=K3bRip;
 Type=Service
 X-KDE-Priority=TopLevel

--- a/src/services/k3b_copy_disc.desktop
+++ b/src/services/k3b_copy_disc.desktop
@@ -1,5 +1,5 @@
 [Desktop Entry]
-X-KDE-Solid-Predicate=[ StorageVolume.ignored == false AND 
OpticalDisc.availableContent & 'Audio|Data|VideoDvd' ]
+X-KDE-Solid-Predicate=OpticalDisc.availableContent & 'Audio|Data|VideoDvd'
 Actions=K3bCopy;
 Type=Service
 X-KDE-Priority=TopLevel

--- a/src/services/k3b_videodvd_rip.desktop
+++ b/src/services/k3b_videodvd_rip.desktop
@@ -1,5 +1,5 @@
 [Desktop Entry]
-X-KDE-Solid-Predicate=[StorageVolume.ignored == false AND 
OpticalDisc.availableContent & 'VideoDvd']
+X-KDE-Solid-Predicate=OpticalDisc.availableContent & 'VideoDvd'
 Actions=K3bRip;
 Type=Service
 X-KDE-Priority=TopLevel

++++++ k3b-increase-tolerance.patch ++++++
From: Kevin Kofler <[email protected]>
Date: Sat, 17 Sep 2011 16:18:24 +0000
Subject: K3b::IsOverburnAllowed: Increase tolerance from 10% to 25%.
X-Git-Url: 
http://quickgit.kde.org/?p=k3b.git&a=commitdiff&h=b0df9e7771ac9148004187bb53ba13ac40b01cae
---
K3b::IsOverburnAllowed: Increase tolerance from 10% to 25%.

10% are not enough to allow using CD-R90 and CD-R99 media to full capacity.
The new 25% tolerance allows using those media while still catching the common
case of DVD ISO vs. CD media.

BUG: 276002
REVIEW: 102648
---


--- a/libk3b/core/k3bglobals.cpp
+++ b/libk3b/core/k3bglobals.cpp
@@ -595,7 +595,7 @@
 bool K3b::IsOverburnAllowed( const Msf& projectSize, const Msf& capacity, 
const Msf& usedCapacity )
 {
     return( k3bcore->globalSettings()->overburn() &&
-        (projectSize + usedCapacity) <= ( capacity.lba() - usedCapacity.lba() 
+ capacity.lba() * 10 / 100 ) ); // 10% tolerance in overburn mode
+        (projectSize + usedCapacity) <= ( capacity.lba() - usedCapacity.lba() 
+ capacity.lba() / 4 ) ); // 25% tolerance in overburn mode
 }
 
 

++++++ k3b-prefer-growisofs-to-wodim-for-DVD-burning.patch ++++++
From: Kevin Kofler <[email protected]>
Date: Sat, 23 Apr 2011 13:44:23 +0000
Subject: Prefer growisofs to wodim for DVD/BluRay burning.
X-Git-Url: 
http://quickgit.kde.org/?p=k3b.git&a=commitdiff&h=1853eee0f15d9d5a1ab0407d5d87e36167e5c9eb
---
Prefer growisofs to wodim for DVD/BluRay burning.

K3b 2 defaults to cdrecord for all burning tasks, including DVDs and BluRay
discs. Unfortunately, it also does this when cdrecord is actually wodim. This
is a bad idea, because wodim's DVD burning code is not the "ProDVD" code in
Jörg Schilling's current cdrecord releases, but a much older, buggier and
basically unmaintained DVD patch. We cannot ship the ProDVD code in wodim
because of licensing conflicts: That code was never released under the GPL, it
was relicensed directly from its original proprietary license to the CDDL. But
wodim is GPLed, and cannot be relicensed to the CDDL, in fact this was the
whole reason for the fork: Jörg Schilling's cdrecord distributes mixed CDDL and
GPL code linked together. So the DVD code in wodim is based on an ancient
experimental community-contributed DVD support patch for cdrecord (from the
times where ProDVD was entirely proprietary). So it's a bad idea to use wodim
for DVDs. As for BluRay discs, those aren't currently supported by wodim at
all; K3b should detect this, but still, it's better to explicitly default to
growisofs there too, in case wodim grows some experimental BluRay support.

One concrete known issue with wodim's DVD burning code is that it fails to burn
dual-layer DVD+Rs: https://bugzilla.redhat.com/show_bug.cgi?id=610976 . But
chances are there are many more DVD burning bugs in wodim, which are unlikely
to get fixed promptly.

Growisofs, on the other hand, is designed specifically for DVDs and BluRay
disks, doesn't have licensing issues and has been used successfully for DVDs
for years (in fact, K3b 1 always used growisofs for DVDs).

This patch makes K3b default to growisofs for all DVD or BluRay burning tasks
if cdrecord is actually wodim.

REVIEW: 101208
---


--- a/libk3b/jobs/k3bdvdcopyjob.cpp
+++ b/libk3b/jobs/k3bdvdcopyjob.cpp
@@ -169,13 +169,20 @@
         // first let's determine which application to use
         d->usedWritingApp = writingApp();
         if ( d->usedWritingApp == K3b::WritingAppAuto ) {
-            // let's default to cdrecord for the time being
+            // prefer growisofs to wodim, which doesn't work all that great 
for DVDs
+            // (and doesn't support BluRay at all)
+            if ( 
k3bcore->externalBinManager()->binObject("cdrecord")->hasFeature( "wodim" ) )
+                d->usedWritingApp = K3b::WritingAppGrowisofs;
+            // otherwise, let's default to cdrecord for the time being
             // FIXME: use growisofs for non-dao and non-auto mode
-            if ( K3b::Device::isBdMedia( d->sourceDiskInfo.mediaType() ) ) {
-                if ( 
k3bcore->externalBinManager()->binObject("cdrecord")->hasFeature( "blu-ray" ) )
+            else {
+                if ( K3b::Device::isBdMedia( d->sourceDiskInfo.mediaType() ) ) 
{
+                    if ( 
k3bcore->externalBinManager()->binObject("cdrecord")->hasFeature( "blu-ray" ) )
+                        d->usedWritingApp = K3b::WritingAppCdrecord;
+                    else
+                        d->usedWritingApp = K3b::WritingAppGrowisofs;
+                } else
                     d->usedWritingApp = K3b::WritingAppCdrecord;
-                else
-                    d->usedWritingApp = K3b::WritingAppGrowisofs;
             }
         }
 

--- a/libk3b/jobs/k3bmetawriter.cpp
+++ b/libk3b/jobs/k3bmetawriter.cpp
@@ -261,11 +261,13 @@
     bool cdrecordOnTheFly = false;
     bool cdrecordCdText = false;
     bool cdrecordBluRay = false;
+    bool cdrecordWodim = false;
     bool growisofsBluRay = false;
     if( k3bcore->externalBinManager()->binObject("cdrecord") ) {
         cdrecordOnTheFly = 
k3bcore->externalBinManager()->binObject("cdrecord")->hasFeature( "audio-stdin" 
);
         cdrecordCdText = 
k3bcore->externalBinManager()->binObject("cdrecord")->hasFeature( "cdtext" );
         cdrecordBluRay = 
k3bcore->externalBinManager()->binObject("cdrecord")->hasFeature( "blu-ray" );
+        cdrecordWodim = 
k3bcore->externalBinManager()->binObject("cdrecord")->hasFeature( "wodim" );
     }
     if( k3bcore->externalBinManager()->binObject("growisofs") ) {
         growisofsBluRay = 
k3bcore->externalBinManager()->binObject("growisofs")->hasFeature( "blu-ray" );
@@ -316,10 +318,16 @@
                 d->usedWritingApp = WritingAppGrowisofs;
             }
             else if( mediaType & Device::MEDIA_DVD_ALL ) {
-                d->usedWritingApp = WritingAppCdrecord;
+                // wodim (at least on fedora) doesn't do DVDs all that well, 
use growisofs instead
+                if ( cdrecordWodim ) {
+                    d->usedWritingApp = WritingAppGrowisofs;
+                }
+                else {
+                    d->usedWritingApp = WritingAppCdrecord;
+                }
             }
             else if( mediaType & Device::MEDIA_BD_ALL ) {
-                if( cdrecordBluRay ) {
+                if( cdrecordBluRay && ! cdrecordWodim ) {
                     d->usedWritingApp = WritingAppCdrecord;
                 }
                 else if( growisofsBluRay ) {

--- a/libk3b/projects/datacd/k3bdatajob.cpp
+++ b/libk3b/projects/datacd/k3bdatajob.cpp
@@ -58,7 +58,7 @@
 {
 public:
     Private()
-        : usedWritingApp(K3b::WritingAppCdrecord),
+        : usedWritingApp(K3b::WritingAppAuto),
           verificationJob( 0 ),
           pipe( 0 ) {
     }
@@ -813,8 +813,12 @@
 
         d->usedWritingApp = writingApp();
         // let's default to cdrecord for the time being (except for special 
cases below)
+        // but prefer growisofs to wodim for DVDs
         if ( d->usedWritingApp == K3b::WritingAppAuto ) {
-            d->usedWritingApp = K3b::WritingAppCdrecord;
+            if 
(k3bcore->externalBinManager()->binObject("cdrecord")->hasFeature( "wodim" ))
+                d->usedWritingApp = K3b::WritingAppGrowisofs;
+            else
+                d->usedWritingApp = K3b::WritingAppCdrecord;
         }
 
         // -------------------------------
@@ -930,7 +934,10 @@
     else if ( foundMedium & K3b::Device::MEDIA_BD_ALL ) {
         d->usedWritingApp = writingApp();
         if( d->usedWritingApp == K3b::WritingAppAuto ) {
-            d->usedWritingApp = K3b::WritingAppCdrecord;
+            if 
(k3bcore->externalBinManager()->binObject("cdrecord")->hasFeature( "wodim" ))
+                d->usedWritingApp = K3b::WritingAppGrowisofs;
+            else
+                d->usedWritingApp = K3b::WritingAppCdrecord;
         }
 
         if ( d->usedWritingApp == K3b::WritingAppCdrecord &&

++++++ k3b-set-error-status-when-CDDB-query-fails.patch ++++++
From: Michal Malek <[email protected]>
Date: Sun, 01 May 2011 10:27:12 +0000
Subject: Set error status when CDDB query fails. Without it the error is buing 
not reported and as a result all entries in audio project are cleared up.
X-Git-Url: 
http://quickgit.kde.org/?p=k3b.git&a=commitdiff&h=fb10bb8fc296335488472468be107b8c4cdb9251
---
Set error status when CDDB query fails. Without it the error is buing not 
reported and as a result all entries in audio project are cleared up.
---


--- a/libk3b/tools/k3bcddb.cpp
+++ b/libk3b/tools/k3bcddb.cpp
@@ -116,6 +116,7 @@
         }
     }
     else {
+        q->setError( KJob::UserDefinedError );
         q->setErrorText( KCDDB::resultToString( result ) );
     }
 

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to