| 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 First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | unspecified | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented 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() );
|