--- dxflib/src/dl_writer_ascii.h.orig 2005-11-22 12:46:58.000000000 +0100
+++ dxflib/src/dl_writer_ascii.h 2010-08-05 23:56:19.000000000 +0200
@@ -50,7 +50,9 @@
class DL_WriterA : public DL_Writer {
public:
DL_WriterA(char* fname, DL_Codes::version version=VER_2000)
- : DL_Writer(version), m_ofile(fname) {}
+ : DL_Writer(version), m_ofile(fname) {
+ m_ofile.exceptions(std::ofstream::failbit);
+ }
virtual ~DL_WriterA() {}
bool openFailed() const;
--- qcadlib/src/filters/rs_filterdxf.cpp.orig 2005-11-22 12:52:41.000000000 +0100
+++ qcadlib/src/filters/rs_filterdxf.cpp 2010-08-05 23:55:40.000000000 +0200
@@ -1187,6 +1187,7 @@
exportVersion = DL_Codes::AC1015;
}
+ try {
//DL_WriterA* dw = dxf.out(file, VER_R12);
DL_WriterA* dw = dxf.out((const char*)QFile::encodeName(file), exportVersion);
@@ -1376,6 +1377,10 @@
dw->close();
delete dw;
+ } catch (std::ios::failure &e) {
+ RS_DEBUG->print("RS_FilterDXF::fileExport: ios::failure exception caught");
+ return false;
+ }
// check if file was actually written (strange world of windoze xp):
if (RS_FileInfo(file).exists()==false) {
--- qcad/src/ts/qcad_en.ts.orig 2005-11-22 12:49:30.000000000 +0100
+++ qcad/src/ts/qcad_en.ts 2010-08-06 00:00:02.000000000 +0200
@@ -238,7 +238,8 @@
+Please check the permissions
+and filesystem status (full?).
--- qcad/src/ts/qcad_de.ts.orig 2005-11-22 12:49:31.000000000 +0100
+++ qcad/src/ts/qcad_de.ts 2010-08-06 00:00:53.000000000 +0200
@@ -319,10 +319,12 @@
+Please check the permissions
+and filesystem status (full?).
Kann Datei
%1
-nicht speichern. Bitte prüfen Sie die Berechtigung.
+nicht speichern. Bitte prüfen Sie die Berechtigung
+sowie den Zustand des Dateisystems (voll?).
--- qcad/src/ts/qcad_cs.ts.orig 2005-11-22 12:49:30.000000000 +0100
+++ qcad/src/ts/qcad_cs.ts 2010-08-06 00:05:58.000000000 +0200
@@ -300,10 +300,12 @@
+Please check the permissions
+and filesystem status (full?).
Nelze uložit soubor
%1
-Zkontrolujte prosím přístupová práva.
+Zkontrolujte prosím přístupová práva
+a místo na zařizení.
--- qcad/src/ts/qcad_ru.ts.orig 2005-11-22 12:49:31.000000000 +0100
+++ qcad/src/ts/qcad_ru.ts 2010-08-06 00:08:18.000000000 +0200
@@ -288,10 +288,12 @@
+Please check the permissions
+and filesystem status (full?).
Невозможно сохранить файл
%1
-Проверьте, пожалуйста, права доступа.
+Проверьте, пожалуйста, права доступа
+и свободное место на файлсистеме.
--- qcad/src/qc_applicationwindow.cpp~ 2010-08-05 23:41:32.000000000 +0200
+++ qcad/src/qc_applicationwindow.cpp 2010-08-05 23:59:26.000000000 +0200
@@ -2111,7 +2111,8 @@
// error
QMessageBox::information(this, QMessageBox::tr("Warning"),
tr("Cannot save the file\n%1\nPlease "
- "check the permissions.")
+ "check the permissions\n"
+ "and filesystem status (full?).")
.arg(w->getDocument()->getFilename()),
QMessageBox::Ok);
}