| Summary: | Verification of a burn is difficult with a manual load writer (eg laptop) | ||
|---|---|---|---|
| Product: | [Applications] k3b | Reporter: | Daniel O'Connor <darius> |
| Component: | general | Assignee: | Sebastian Trueg <trueg> |
| Status: | RESOLVED FIXED | ||
| Severity: | wishlist | CC: | trueg |
| Priority: | NOR | ||
| Version First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | FreeBSD Ports | ||
| OS: | FreeBSD | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
|
Description
Daniel O'Connor
2006-12-16 00:51:57 UTC
SVN commit 614759 by trueg:
Show the standard "waiting for medium" dialog with a "failed to load" message if the tray could not be closed.
BUG: 138864
M +4 -2 k3bverificationjob.cpp
--- trunk/extragear/multimedia/k3b/libk3b/jobs/k3bverificationjob.cpp #614758:614759
@@ -158,8 +158,10 @@
void K3bVerificationJob::slotMediaReloaded( bool success )
{
if( !success )
- blockingInformation( i18n("Please reload the medium and press 'ok'"),
- i18n("Unable to Close the Tray") );
+ waitForMedia( d->device,
+ K3bDevice::STATE_COMPLETE|K3bDevice::STATE_INCOMPLETE,
+ K3bDevice::MEDIA_WRITABLE,
+ i18n("Unable to Close the Tray") );
emit newTask( i18n("Checking medium") );
This change appears to cause a problem with rewritable media - if I put in a non-blank disk and then say start I will be prompted to format it. I select yes and then wait, unfortunately when the format is done it asks me again if I wish to format it. The third time it formatted it I was not prompted to reformat it. Perhaps it is reading stale information? I just tried it with a fresh blank disk and it failed to verify after detecting the disk was inserted with "Unable to open /dev/cd0". I tried it a second time and I was only prompted to format it once but the verify failed with "Internal error: verification job improperly initialized" and this was in the console.. k3b: (K3bDevice::ScsiCommand) transport command 28, length: 10 k3b: (K3bDevice::ScsiCommand) transport command 28, length: 10 k3b: (K3bDevice::ScsiCommand) transport command 28, length: 10 k3b: (K3bDevice::ScsiCommand) transport command 28, length: 10 k3b: (K3bDevice::ScsiCommand) transport command 28, length: 10 k3b: (K3bMedium) found volume id from start sector 0: 'FreeBSD_bootonly' k3b: (K3bDevice::openDevice) open device /dev/pass0 succeeded. k3b: (K3bDevice::ScsiCommand) transport command 46, length: 10 k3b: (K3bDevice::Device) /dev/cd0: GET CONFIGURATION length det failed. k3b: (K3bDevice::openDevice) open device /dev/pass0 succeeded. k3b: (K3bDevice::ScsiCommand) transport command 46, length: 9 k3b: (K3bDevice::openDevice) open device /dev/pass0 succeeded. SVN commit 615028 by trueg:
dvd+rw-format even exits with a 0 exit code when format fails.
K3b now at least checks for a failed unmount.
BUG: 138864
M +9 -1 k3bdvdformattingjob.cpp
--- trunk/extragear/multimedia/k3b/libk3b/jobs/k3bdvdformattingjob.cpp #615027:615028
@@ -66,6 +66,8 @@
bool running;
bool forceNoEject;
+
+ bool error;
};
@@ -114,6 +116,7 @@
{
d->canceled = false;
d->running = true;
+ d->error = false;
jobStarted();
@@ -219,6 +222,11 @@
else if( !line.startsWith("*") ) {
pos = line.find( QRegExp( "\\d" ) );
}
+ else if( line.startsWith( ":-(" ) ) {
+ if( line.startsWith( ":-( unable to proceed with format" ) ) {
+ d->error = true;
+ }
+ }
if( pos >= 0 ) {
int endPos = line.find( QRegExp("[^\\d\\.]"), pos ) - 1;
@@ -242,7 +250,7 @@
d->success = false;
}
else if( p->normalExit() ) {
- if( p->exitStatus() == 0 ) {
+ if( !d->error && p->exitStatus() == 0 ) {
emit infoMessage( i18n("Formatting successfully completed"), K3bJob::SUCCESS );
if( d->lastProgressValue < 100 ) {
|