Summary: | Non-existant temp directory causes "IO error" | ||
---|---|---|---|
Product: | [Applications] k3b | Reporter: | Kde <kde> |
Component: | general | Assignee: | Sebastian Trueg <trueg> |
Status: | RESOLVED FIXED | ||
Severity: | normal | ||
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | unspecified | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Kde
2005-02-26 17:00:55 UTC
I have been able to reproduce the bug on 0.12.4a as well. SVN commit 519980 by trueg: check image directory and create it if necessary. BUG: 100312 M +18 -1 k3bprojectburndialog.cpp --- trunk/extragear/multimedia/k3b/src/projects/k3bprojectburndialog.cpp #519979:519980 @@ -169,7 +169,7 @@ saveSettings(); // check if enough space in tempdir if not on-the-fly - if( m_tempDirSelectionWidget ) + if( m_tempDirSelectionWidget ) { if( (!doc()->onTheFly() || doc()->onlyCreateImages()) && doc()->size()/1024 > m_tempDirSelectionWidget->freeTempSpace() ) { if( KMessageBox::warningContinueCancel( this, i18n("There seems to be not enough free space in temporary directory. " @@ -177,6 +177,23 @@ return; } + // check if the temp dir exists + if( !m_checkOnTheFly->isChecked() || m_checkOnlyCreateImage->isChecked() ) { + QString tempDir = m_tempDirSelectionWidget->tempDirectory(); + if( !QFile::exists( tempDir ) ) { + if( KMessageBox::warningYesNo( this, i18n("Image folder '%1' does not exist. Do you want K3b to create it?").arg( tempDir ) ) + == KMessageBox::Yes ) { + if( !KStandardDirs::makeDir( tempDir ) ) { + KMessageBox::error( this, i18n("Failed to create folder '%1'.").arg( tempDir ) ); + return; + } + } + else + return; + } + } + } + K3bJobProgressDialog* dlg = 0; if( m_checkOnlyCreateImage && m_checkOnlyCreateImage->isChecked() ) dlg = new K3bJobProgressDialog( parentWidget() ); |