From kde-commits Sat Feb 28 21:58:13 2015 From: Jaroslaw Staniek Date: Sat, 28 Feb 2015 21:58:13 +0000 To: kde-commits Subject: [calligra/calligra/2.9] /: Use QFile::rename because KDE::rename does not work across devices Message-Id: X-MARC-Message: https://marc.info/?l=kde-commits&m=142516070324657 Git commit 3e5abfcffbb968ec9836d9b9eb418a6854352e4d by Jaroslaw Staniek. Committed on 28/02/2015 at 21:32. Pushed by staniek into branch 'calligra/2.9'. Use QFile::rename because KDE::rename does not work across devices KDE::rename fail when source and destination sit on different devices (errno =3D=3D EXDEV -- Cross-device link) This fixes status bar online updates when e.g. /tmp is on different partiti= on than /home. The same fix has been made for compacting .kexi files. M +1 -1 kexi/main/startup/KexiWelcomeStatusBar.cpp M +1 -1 libs/db/drivers/sqlite/sqlitevacuum.cpp http://commits.kde.org/calligra/3e5abfcffbb968ec9836d9b9eb418a6854352e4d diff --git a/kexi/main/startup/KexiWelcomeStatusBar.cpp b/kexi/main/startup= /KexiWelcomeStatusBar.cpp index 545fcb8..1cc4a9b 100644 --- a/kexi/main/startup/KexiWelcomeStatusBar.cpp +++ b/kexi/main/startup/KexiWelcomeStatusBar.cpp @@ -248,7 +248,7 @@ void KexiWelcomeStatusBarGuiUpdater::filesCopyFinished(= KJob* job) QString dir(KStandardDirs::locateLocal("data", basePath() + '/', true = /*create*/)); kDebug() << dir; foreach (const QString &fname, d->fileNamesToUpdate) { - if (0 !=3D KDE::rename(d->tempDir + fname, dir + fname)) { + if (!QFile::rename(d->tempDir + fname, dir + fname)) { kWarning() << "cannot move" << (d->tempDir + fname) << "to" <<= (dir + fname); } } diff --git a/libs/db/drivers/sqlite/sqlitevacuum.cpp b/libs/db/drivers/sqli= te/sqlitevacuum.cpp index f91e64d..b016033 100644 --- a/libs/db/drivers/sqlite/sqlitevacuum.cpp +++ b/libs/db/drivers/sqlite/sqlitevacuum.cpp @@ -198,7 +198,7 @@ void SQLiteVacuum::dumpProcessFinished(int exitCode, QP= rocess::ExitStatus exitSt QFileInfo fi(m_filePath); const uint origSize =3D fi.size(); = - if (0 !=3D KDE::rename(m_tmpFilePath, fi.absoluteFilePath())) { + if (!QFile::rename(m_tmpFilePath, fi.absoluteFilePath())) { kWarning() << "Rename" << m_tmpFilePath << "to" << fi.absoluteFile= Path() << "failed."; m_result =3D false; }