Index: sftp/kio_sftp.cpp =================================================================== --- sftp/kio_sftp.cpp +++ sftp/kio_sftp.cpp @@ -1967,53 +1967,54 @@ finished(); } -void sftpProtocol::mkdir(const QUrl &url, int permissions) { - qCDebug(KIO_SFTP_LOG) << "create directory: " << url; +void sftpProtocol::mkdir(const QUrl &url, int permissions) +{ + qCDebug(KIO_SFTP_LOG) << "create directory: " << url; - if (!sftpLogin()) { - return; - } + if (!sftpLogin()) { + return; + } - if (url.path().isEmpty()) { - error(KIO::ERR_MALFORMED_URL, url.toDisplayString()); - return; - } - const QString path = url.path(); - const QByteArray path_c = path.toUtf8(); + if (url.path().isEmpty()) { + error(KIO::ERR_MALFORMED_URL, url.toDisplayString()); + return; + } + const QString path = url.path(); + const QByteArray path_c = path.toUtf8(); - // Remove existing file or symlink, if requested. - if (metaData(QLatin1String("overwrite")) == QLatin1String("true")) { - qCDebug(KIO_SFTP_LOG) << "overwrite set, remove existing file or symlink: " << url; - sftp_unlink(mSftp, path_c.constData()); - } + // Remove existing file or symlink, if requested. + if (metaData(QLatin1String("overwrite")) == QLatin1String("true")) { + qCDebug(KIO_SFTP_LOG) << "overwrite set, remove existing file or symlink: " << url; + sftp_unlink(mSftp, path_c.constData()); + } - qCDebug(KIO_SFTP_LOG) << "Trying to create directory: " << path; - sftp_attributes sb = sftp_lstat(mSftp, path_c.constData()); - if (sb == nullptr) { - if (sftp_mkdir(mSftp, path_c.constData(), 0777) < 0) { - reportError(url, sftp_get_error(mSftp)); - sftp_attributes_free(sb); - return; - } else { - qCDebug(KIO_SFTP_LOG) << "Successfully created directory: " << url; - if (permissions != -1) { - chmod(url, permissions); - } else { - finished(); - } - sftp_attributes_free(sb); - return; + qCDebug(KIO_SFTP_LOG) << "Trying to create directory: " << path; + sftp_attributes sb = sftp_lstat(mSftp, path_c.constData()); + if (sb == nullptr) { + if (sftp_mkdir(mSftp, path_c.constData(), 0777) < 0) { + reportError(url, sftp_get_error(mSftp)); + sftp_attributes_free(sb); + return; + } else { + qCDebug(KIO_SFTP_LOG) << "Successfully created directory: " << url; + if (permissions != -1) { + chmod(url, permissions); + } else { + finished(); + } + sftp_attributes_free(sb); + return; + } } - } - if (sb->type == SSH_FILEXFER_TYPE_DIRECTORY) { - error(KIO::ERR_DIR_ALREADY_EXIST, path); - } else { - error(KIO::ERR_FILE_ALREADY_EXIST, path); - } + if (sb->type == SSH_FILEXFER_TYPE_DIRECTORY) { + error(KIO::ERR_DIR_ALREADY_EXIST, path); + } else { + error(KIO::ERR_FILE_ALREADY_EXIST, path); + } - sftp_attributes_free(sb); - return; + sftp_attributes_free(sb); + return; } void sftpProtocol::rename(const QUrl& src, const QUrl& dest, KIO::JobFlags flags) {