summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkh1 <karsten.heimrich@nokia.com>2011-11-02 15:16:14 +0100
committerKarsten Heimrich <karsten.heimrich@nokia.com>2011-11-02 16:22:30 +0100
commit5fa552cd96793e42132a9bc154952f9d005fb3c0 (patch)
treeccc32d26afd994d2a877056889c625d0e579d451
parente08254ae3e10e24bff061be2b5d34278ae1d8485 (diff)
Fix NULL pointer access in case of error.
Change-Id: I4475a9e7e13a34570548fb93aff8c06d301159af Reviewed-by: Tim Jenssen <tim.jenssen@nokia.com>
-rw-r--r--installerbuilder/libinstaller/3rdparty/kdtools/KDUpdater/kdupdaterfiledownloader.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/installerbuilder/libinstaller/3rdparty/kdtools/KDUpdater/kdupdaterfiledownloader.cpp b/installerbuilder/libinstaller/3rdparty/kdtools/KDUpdater/kdupdaterfiledownloader.cpp
index 61ca9fc9d..b852d1c8c 100644
--- a/installerbuilder/libinstaller/3rdparty/kdtools/KDUpdater/kdupdaterfiledownloader.cpp
+++ b/installerbuilder/libinstaller/3rdparty/kdtools/KDUpdater/kdupdaterfiledownloader.cpp
@@ -861,9 +861,13 @@ void KDUpdater::FtpDownloader::cancelDownload()
void KDUpdater::FtpDownloader::ftpDone(bool error)
{
if (error) {
- d->ftp->deleteLater();
- d->ftp = 0;
- d->ftpCmdId = -1;
+ QString errorString;
+ if (d->ftp) {
+ errorString = d->ftp->errorString();
+ d->ftp->deleteLater();
+ d->ftp = 0;
+ d->ftpCmdId = -1;
+ }
onError();
@@ -871,7 +875,7 @@ void KDUpdater::FtpDownloader::ftpDone(bool error)
d->aborted = false;
setDownloadCanceled();
} else {
- setDownloadAborted(d->ftp->errorString());
+ setDownloadAborted(errorString);
}
}
//PENDING what about the non-error case??