diff options
Diffstat (limited to 'src/corelib/io/qfile.cpp')
-rw-r--r-- | src/corelib/io/qfile.cpp | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/src/corelib/io/qfile.cpp b/src/corelib/io/qfile.cpp index 1fb9af576c..37de4450cc 100644 --- a/src/corelib/io/qfile.cpp +++ b/src/corelib/io/qfile.cpp @@ -454,7 +454,13 @@ QFile::exists(const QString &fileName) \sa fileName(), setFileName() */ +QString QFile::symLinkTarget() const +{ + Q_D(const QFile); + return d->engine()->fileName(QAbstractFileEngine::LinkName); +} +#if QT_DEPRECATED_SINCE(5, 13) /*! \obsolete @@ -463,9 +469,9 @@ QFile::exists(const QString &fileName) QString QFile::readLink() const { - Q_D(const QFile); - return d->engine()->fileName(QAbstractFileEngine::LinkName); + return symLinkTarget(); } +#endif /*! \fn static QString QFile::symLinkTarget(const QString &fileName) @@ -478,7 +484,12 @@ QFile::readLink() const This name may not represent an existing file; it is only a string. QFile::exists() returns \c true if the symlink points to an existing file. */ +QString QFile::symLinkTarget(const QString &fileName) +{ + return QFileInfo(fileName).symLinkTarget(); +} +#if QT_DEPRECATED_SINCE(5, 13) /*! \obsolete @@ -487,8 +498,9 @@ QFile::readLink() const QString QFile::readLink(const QString &fileName) { - return QFileInfo(fileName).readLink(); + return symLinkTarget(fileName); } +#endif /*! Removes the file specified by fileName(). Returns \c true if successful; @@ -808,7 +820,7 @@ QFile::copy(const QString &newName) if (error) { out.close(); close(); - d->setError(QFile::CopyError, tr("Cannot open for output")); + d->setError(QFile::CopyError, tr("Cannot open for output: %1").arg(out.errorString())); } else { if (!d->engine()->cloneTo(out.d_func()->engine())) { char block[4096]; |