~timo-jyrinki/ubuntu/saucy/qtcreator/add_workaround_back

« back to all changes in this revision

Viewing changes to src/libs/utils/savefile.cpp

  • Committer: Package Import Robot
  • Author(s): Felix Geyer
  • Date: 2011-11-18 16:18:49 UTC
  • mfrom: (1.1.16)
  • Revision ID: package-import@ubuntu.com-20111118161849-5t8jugl6egvs4iev
Tags: 2.4.0~rc-0ubuntu1
* New upstream release candidate.
* Drop 04_fix_ftbfs_arm_qreal.diff, merged upstream.
* Refresh 01_fix_installation_paths.diff.
* Compress binary packages with xz.

Show diffs side-by-side

added added

removed removed

Lines of Context:
4
4
**
5
5
** Copyright (c) 2011 Nokia Corporation and/or its subsidiary(-ies).
6
6
**
7
 
** Contact: Nokia Corporation (info@qt.nokia.com)
 
7
** Contact: Nokia Corporation (qt-info@nokia.com)
8
8
**
9
9
**
10
10
** GNU Lesser General Public License Usage
26
26
** conditions contained in a signed written agreement between you and Nokia.
27
27
**
28
28
** If you have questions regarding the use of this file, please contact
29
 
** Nokia at info@qt.nokia.com.
 
29
** Nokia at qt-info@nokia.com.
30
30
**
31
31
**************************************************************************/
32
32
 
33
33
#include "savefile.h"
34
34
#include "qtcassert.h"
 
35
#include "fileutils.h"
35
36
 
36
37
namespace Utils {
37
38
 
84
85
        return false;
85
86
    }
86
87
 
87
 
    QString bakname = m_finalFileName + QLatin1Char('~');
 
88
    QString finalFileName = Utils::FileUtils::resolveSymlinks(m_finalFileName);
 
89
    QString bakname = finalFileName + QLatin1Char('~');
88
90
    QFile::remove(bakname); // Kill old backup
89
 
    QFile::rename(m_finalFileName, bakname); // Backup current file
90
 
    if (!rename(m_finalFileName)) { // Replace current file
91
 
        QFile::rename(bakname, m_finalFileName); // Rollback to current file
 
91
    QFile::rename(finalFileName, bakname); // Backup current file
 
92
    if (!rename(finalFileName)) { // Replace current file
 
93
        QFile::rename(bakname, finalFileName); // Rollback to current file
92
94
        return false;
93
95
    }
94
96
    if (!m_backup)