| Summary: | K3B wrong status on cancelling. | ||
|---|---|---|---|
| Product: | [Applications] k3b | Reporter: | Warlock_BA <warlock_ba> |
| Component: | Burning/Hardware | Assignee: | Sebastian Trueg <trueg> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | ||
| Priority: | NOR | ||
| Version First Reported In: | 0.12.x | ||
| Target Milestone: | --- | ||
| Platform: | Fedora RPMs | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
| Attachments: | Burn Window Screenshot | ||
|
Description
Warlock_BA
2006-04-03 01:08:31 UTC
Created attachment 15430 [details]
Burn Window Screenshot
yes, please provide a screenshot. well, the screenshot is attached :) just check it :D SVN commit 605883 by trueg:
A little improved cancellation handling. This will get all much better after the libk3b rewrite post-1.0
BUG: 124799
M +16 -4 datacd/k3bdatajob.cpp
M +1 -1 datadvd/k3bdvdjob.cpp
--- trunk/extragear/multimedia/k3b/libk3b/projects/datacd/k3bdatajob.cpp #605882:605883
@@ -792,10 +792,22 @@
void K3bDataJob::slotDetermineMultiSessionMode( K3bDevice::DeviceHandler* dh )
{
- d->usedMultiSessionMode = getMultiSessionMode( dh->diskInfo() );
+ //
+ // This is a little workaround for the bad cancellation handling in this job
+ // see cancel()
+ //
+ if( d->canceled ) {
+ if( active() ) {
+ cleanup();
+ jobFinished( false );
+ }
+ }
+ else {
+ d->usedMultiSessionMode = getMultiSessionMode( dh->diskInfo() );
- // carry on with the writing
- prepareWriting();
+ // carry on with the writing
+ prepareWriting();
+ }
}
@@ -872,7 +884,7 @@
return false;
}
else
- return true;
+ return !d->canceled;
}
--- trunk/extragear/multimedia/k3b/libk3b/projects/datadvd/k3bdvdjob.cpp #605882:605883
@@ -197,7 +197,7 @@
K3bDevice::STATE_INCOMPLETE :
K3bDevice::STATE_EMPTY );
- if( foundMedium < 0 ) {
+ if( foundMedium < 0 || hasBeenCanceled() ) {
return false;
}
|