From: Pawel Andruszkiewicz Date: Wed, 3 Jun 2015 12:53:47 +0000 (+0200) Subject: [Archive] Reorganized the code to protect from dereferencing null. X-Git-Tag: submit/tizen_mobile/20150612.133019^2~2^2~51^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=9fee93df12960f36a34a9f807565ff74cec798e9;p=platform%2Fcore%2Fapi%2Fwebapi-plugins.git [Archive] Reorganized the code to protect from dereferencing null. Prevent CID: 386876 [Verification] TCT pass rate: 100%. Change-Id: Ieb3e7eb1b8d97e986cc6d750ea526996f9584a05 Signed-off-by: Pawel Andruszkiewicz --- diff --git a/src/archive/archive_file.cc b/src/archive/archive_file.cc index cb568417..e1f6756f 100755 --- a/src/archive/archive_file.cc +++ b/src/archive/archive_file.cc @@ -204,21 +204,23 @@ void* ArchiveFile::taskManagerThread(void *data) callback = archive_file_holder->ptr->m_task_queue.back().second; } - if(callback && !callback->isCanceled()){ - result = callback->executeOperation(archive_file_holder->ptr); - } + if (callback) { + if (!callback->isCanceled()){ + result = callback->executeOperation(archive_file_holder->ptr); + } - if (ErrorCode::OPERATION_CANCELED_ERR == result.error_code()) { - delete callback; - callback = NULL; - } else if (ErrorCode::NO_ERROR != result.error_code()) { - LoggerE("taskManagerThread fails, %d: %s", result.error_code(), - result.message().c_str()); - callback->setError(result.error_code(), result.message().c_str()); - if (!g_idle_add(callErrorCallback, static_cast(callback))) { - LoggerE("g_idle_add fails"); + if (ErrorCode::OPERATION_CANCELED_ERR == result.error_code()) { delete callback; callback = NULL; + } else if (ErrorCode::NO_ERROR != result.error_code()) { + LoggerE("taskManagerThread fails, %d: %s", result.error_code(), + result.message().c_str()); + callback->setError(result.error_code(), result.message().c_str()); + if (!g_idle_add(callErrorCallback, static_cast(callback))) { + LoggerE("g_idle_add fails"); + delete callback; + callback = NULL; + } } }