-rw-r--r-- | core/apps/textedit/textedit.cpp | 45 |
1 files changed, 21 insertions, 24 deletions
diff --git a/core/apps/textedit/textedit.cpp b/core/apps/textedit/textedit.cpp index 4bbc62b..1c81a55 100644 --- a/core/apps/textedit/textedit.cpp +++ b/core/apps/textedit/textedit.cpp @@ -782,3 +782,3 @@ void TextEdit::showEditTools() { bool TextEdit::save() { - QString name, file; + QString name, file; odebug << "saveAsFile " + currentFileName << oendl; @@ -788,12 +788,11 @@ bool TextEdit::save() { } - name = currentFileName; - if(doc) { - file = doc->file(); - odebug << "saver file "+file << oendl; - name = doc->name(); - odebug << "File named "+name << oendl; - } else { - file = currentFileName; + if(doc) { + file = doc->file(); + odebug << "saver file "+file << oendl; + name = doc->name(); + odebug << "File named "+name << oendl; + } else { + file = currentFileName; name = QFileInfo(currentFileName).baseName(); - } + } @@ -809,3 +808,4 @@ bool TextEdit::save() { mode_t mode; - stat(file.latin1(), &buf); + QFile f(file); + fstat(f.handle(), &buf); mode = buf.st_mode; @@ -816,3 +816,3 @@ bool TextEdit::save() { if ( !fm.saveFile( *doc, rt ) ) { - QMessageBox::message(tr("Text Edit"),tr("Save Failed")); + QMessageBox::message(tr("Text Edit"),tr("Save Failed")); return false; @@ -821,11 +821,9 @@ bool TextEdit::save() { odebug << "regular save file" << oendl; - QFile f(file); - if( f.open(IO_WriteOnly)) { - QCString crt = rt.utf8(); - f.writeBlock(crt,crt.length()); - } else { - QMessageBox::message(tr("Text Edit"),tr("Write Failed")); - return false; - } - + if( f.open(IO_WriteOnly)) { + QCString crt = rt.utf8(); + f.writeBlock(crt,crt.length()); + } else { + QMessageBox::message(tr("Text Edit"),tr("Write Failed")); + return false; + } } @@ -835,6 +833,5 @@ bool TextEdit::save() { if(caption().left(1)=="*") - setCaption(caption().right(caption().length()-1)); - + setCaption(caption().right(caption().length()-1)); - chmod( file.latin1(), mode); + fchmod( f.handle(), mode); } |