From db25a2885364d4d1b2198056f7a477f60cb395d6 Mon Sep 17 00:00:00 2001 From: Lawrence Rust Date: Thu, 28 Jul 2011 09:26:11 -0400 Subject: [PATCH] Fix a potential segfault if MDM::downloadNow() times out. Reset the destination QByteArray pointer after a download timeout to make sure the downloadFinished() callback doesn't try to write to it after it has been deallocated. Closes #9950 I'm leaving part 2 of #9950 uncommitted for now since we do not need or use this functionality internally. Signed-off-by: Chris Pinkham --- mythtv/libs/libmythbase/mythdownloadmanager.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/mythtv/libs/libmythbase/mythdownloadmanager.cpp b/mythtv/libs/libmythbase/mythdownloadmanager.cpp index 828ca5ae977..d28750fd773 100644 --- a/mythtv/libs/libmythbase/mythdownloadmanager.cpp +++ b/mythtv/libs/libmythbase/mythdownloadmanager.cpp @@ -665,6 +665,7 @@ bool MythDownloadManager::downloadNow(MythDownloadInfo *dlInfo, bool deleteInfo) if (!dlInfo->m_done) { + dlInfo->m_data = NULL; // Prevent downloadFinished() from updating dlInfo->m_syncMode = false; // Let downloadFinished() cleanup for us if ((dlInfo->m_reply) && (dlInfo->m_errorCode == QNetworkReply::NoError))