Permalink
Browse files

Use cdrecord for burning blueray instead of wodim.

Because wodim from cdrkit (CD only, DVD deprecated, unmaintained) https://wiki.archlinux.org/index.php/Optical_disc_drive
and the website http://www.cdrkit.org/ was down, so could not package it any more.

CCBUG: 367639
  • Loading branch information...
1 parent 569bb86 commit fcb0ff1f36c319fd1e2b4bd92c2c08fdc690212c @xiangzhai xiangzhai committed Aug 30, 2016
@@ -172,16 +172,13 @@ QString K3b::AbstractCdrtoolsProgram::versionIdentifier( const ExternalBin& bin
K3b::CdrecordProgram::CdrecordProgram()
- : K3b::AbstractCdrtoolsProgram( QLatin1String( "cdrecord" ), QLatin1String( "wodim" ) )
+ : K3b::AbstractCdrtoolsProgram( QLatin1String( "cdrecord" ), QLatin1String("cdrecord") )
{
}
void K3b::CdrecordProgram::parseFeatures( const QString& output, ExternalBin& bin ) const
{
- if( usingCdrkit( bin ) )
- bin.addFeature( "wodim" );
-
if( bin.version().suffix().endsWith( "-dvd" ) ) {
bin.addFeature( "dvd-patch" );
bin.setVersion( QString(bin.version().versionString()).remove("-dvd") );
@@ -169,9 +169,8 @@ void K3b::DvdCopyJob::slotDiskInfoReady( K3b::Device::DeviceHandler* dh )
// first let's determine which application to use
d->usedWritingApp = writingApp();
if ( d->usedWritingApp == K3b::WritingAppAuto ) {
- // 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" ) )
+ // wodim from cdrkit (CD only, DVD deprecated, unmaintained)
+ if ( false )
d->usedWritingApp = K3b::WritingAppGrowisofs;
// otherwise, let's default to cdrecord for the time being
// FIXME: use growisofs for non-dao and non-auto mode
@@ -266,7 +266,6 @@ bool K3b::MetaWriter::determineUsedAppAndMode()
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" );
@@ -811,12 +811,9 @@ bool K3b::DataJob::waitForBurnMedium()
d->usedWritingApp = writingApp();
// let's default to cdrecord for the time being (except for special cases below)
- // but prefer growisofs to wodim for DVDs
+ // but prefer growisofs for DVDs
if ( d->usedWritingApp == K3b::WritingAppAuto ) {
- if (k3bcore->externalBinManager()->binObject("cdrecord")->hasFeature( "wodim" ))
- d->usedWritingApp = K3b::WritingAppGrowisofs;
- else
- d->usedWritingApp = K3b::WritingAppCdrecord;
+ d->usedWritingApp = K3b::WritingAppCdrecord;
}
// -------------------------------
@@ -932,10 +929,7 @@ bool K3b::DataJob::waitForBurnMedium()
else if ( foundMedium & K3b::Device::MEDIA_BD_ALL ) {
d->usedWritingApp = writingApp();
if( d->usedWritingApp == K3b::WritingAppAuto ) {
- if (k3bcore->externalBinManager()->binObject("cdrecord")->hasFeature( "wodim" ))
- d->usedWritingApp = K3b::WritingAppGrowisofs;
- else
- d->usedWritingApp = K3b::WritingAppCdrecord;
+ d->usedWritingApp = K3b::WritingAppCdrecord;
}
if ( d->usedWritingApp == K3b::WritingAppCdrecord &&
@@ -399,7 +399,7 @@ void K3b::CdrecordWriter::start()
if( !d->cdrecordBinObject->copyright().isEmpty() )
emit infoMessage( i18n("Using %1 %2 – Copyright © %3"
- ,(d->cdrecordBinObject->hasFeature( "wodim" ) ? "Wodim" : "Cdrecord" )
+ ,QLatin1String("Cdrecord")
,d->cdrecordBinObject->version()
,d->cdrecordBinObject->copyright()), MessageInfo );
@@ -3611,7 +3611,7 @@ int K3b::Device::Device::nextWritableAddress() const
//
// The state of the last session has to be "empty" (0x0) or "incomplete" (0x1)
- // The procedure here is taken from the dvd+rw-tools and wodim
+ // The procedure here is taken from the dvd+rw-tools
//
if( !(inf->border & 0x2) ) {
// the incomplete track number is the first track in the last session (the empty session)
@@ -231,8 +231,7 @@ void K3b::SystemProblemDialog::checkSystem( QWidget* parent, NotificationLevel l
// Kernel 2.6.16.something seems to introduce another problem which was apparently worked around in cdrecord 2.01.01a05
//
if( K3b::simpleKernelVersion() >= K3b::Version( 2, 6, 8 ) &&
- k3bcore->externalBinManager()->binObject( "cdrecord" )->version() < K3b::Version( 2, 1, 1, "a05" ) &&
- !k3bcore->externalBinManager()->binObject( "cdrecord" )->hasFeature( "wodim" ) ) {
+ k3bcore->externalBinManager()->binObject( "cdrecord" )->version() < K3b::Version( 2, 1, 1, "a05" ) ) {
if( k3bcore->externalBinManager()->binObject( "cdrecord" )->hasFeature( "suidroot" ) ) {
showBinSettingsButton = true;
problems.append( K3b::SystemProblem( K3b::SystemProblem::CRITICAL,
@@ -46,8 +46,7 @@ bool shouldRunSuidRoot( const K3b::ExternalBin* bin )
if( bin->name() == "cdrecord" ) {
return ( K3b::simpleKernelVersion() < K3b::Version( 2, 6, 8 ) ||
- bin->version() >= K3b::Version( 2, 1, 1, "a05" ) ||
- bin->hasFeature( "wodim" ) );
+ bin->version() >= K3b::Version( 2, 1, 1, "a05" ) );
}
else if( bin->name() == "cdrdao" ) {
return true;

0 comments on commit fcb0ff1

Please sign in to comment.