Browse files

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 <>
  • Loading branch information...
Lawrence Rust authored and cpinkham committed Jul 28, 2011
1 parent 1e235eb commit db25a2885364d4d1b2198056f7a477f60cb395d6
Showing with 1 addition and 0 deletions.
  1. +1 −0 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))

0 comments on commit db25a28

Please sign in to comment.