diff --git a/src/core/copyjob.cpp b/src/core/copyjob.cpp --- a/src/core/copyjob.cpp +++ b/src/core/copyjob.cpp @@ -884,7 +884,25 @@ slotReport(); qCDebug(KIO_COPYJOB_DEBUG)<<"Stating finished. To copy:"< m_freeSpace) { + q->setError(ERR_DISK_FULL); + m_bCurrentSrcIsDir ? q->setErrorText(xi18nc("@info", "There is not enough space available at %1 to hold the folder." + "%2 are required but only %3 are available", + m_globalDest.toLocalFile(), + KIO::convertSize(m_totalSize), + KIO::convertSize(m_freeSpace) + ) + ) + : q->setErrorText(xi18nc("@info", "There is not enough space available at %1 to hold the file." + "%2 are required but only %3 are available", + m_globalDest.toLocalFile(), + KIO::convertSize(m_totalSize), + KIO::convertSize(m_freeSpace) + ) + ); + q->emitResult(); + return; + } if (!dirs.isEmpty()) { emit q->aboutToCreate(q, dirs);