diff options
author | 2013-01-27 11:27:34 -0800 | |
---|---|---|
committer | 2013-01-27 11:27:34 -0800 | |
commit | 80ebb639fbd575864fb9039048c9e90f3a9b4f13 (patch) | |
tree | 81925ef915de02236fa6220f62c1c448762ffe3c | |
parent | 150300dfc789d346d45c90ad240448566e675e38 (diff) |
don't call callback if operation has been cancelled.
-rw-r--r-- | src/core/basetypes/MCOperationQueue.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/core/basetypes/MCOperationQueue.cc b/src/core/basetypes/MCOperationQueue.cc index d235fe91..5309b111 100644 --- a/src/core/basetypes/MCOperationQueue.cc +++ b/src/core/basetypes/MCOperationQueue.cc @@ -90,8 +90,10 @@ void OperationQueue::runOperations() } pthread_mutex_unlock(&mLock); - if (op->callback() != NULL) { - performMethodOnMainThread((Object::Method) &OperationQueue::callbackOnMainThread, op, true); + if (!op->isCancelled()) { + if (op->callback() != NULL) { + performMethodOnMainThread((Object::Method) &OperationQueue::callbackOnMainThread, op, true); + } } if (needsCheckRunning) { |