diff options
| author | LostDragonist <lost.dragonist@gmail.com> | 2018-08-21 15:59:22 -0500 |
|---|---|---|
| committer | LostDragonist <lost.dragonist@gmail.com> | 2018-08-21 15:59:22 -0500 |
| commit | 258bddb6b761365c1b4688d5f91885c14f2b1efc (patch) | |
| tree | 503d35ea26183fcff74da1fb4822a00c6b9fa926 /src | |
| parent | ef771fd8ca262a136c95c5141bb0de95712d14c2 (diff) | |
Fix possible crash during write to disk error
Diffstat (limited to 'src')
| -rw-r--r-- | src/downloadmanager.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/downloadmanager.cpp b/src/downloadmanager.cpp index 1e907b3f..f1cbf109 100644 --- a/src/downloadmanager.cpp +++ b/src/downloadmanager.cpp @@ -1845,11 +1845,12 @@ void DownloadManager::writeData(DownloadInfo *info) if (info != nullptr) {
qint64 ret = info->m_Output.write(info->m_Reply->readAll());
if (ret < info->m_Reply->size()) {
+ QString fileName = info->m_FileName; // m_FileName may be destroyed after setState
setState(info, DownloadState::STATE_CANCELED);
qCritical(QString("Unable to write download \"%2\" to drive (return %1)").arg(ret).arg(info->m_FileName).toLocal8Bit());
reportError(tr("Unable to write download to drive (return %1).\n"
"Check the drive's available storage.\n\n"
- "Canceling download \"%2\"...").arg(ret).arg(info->m_FileName));
+ "Canceling download \"%2\"...").arg(ret).arg(fileName));
}
}
}
\ No newline at end of file |
