summaryrefslogtreecommitdiff
path: root/pjlib
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2007-06-23 01:04:16 +0000
committerBenny Prijono <bennylp@teluu.com>2007-06-23 01:04:16 +0000
commit62bcadbaf5ceb07558402720cea236c384a59294 (patch)
tree0f839d168b5ec97f92bb923cb451554772db1fc1 /pjlib
parent06fdbc5384d8a75bfab16a8dc6242061dc184f00 (diff)
Ticket #343: Canceling pending ioqueue operation in Symbian causes assertion failure
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@1384 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjlib')
-rw-r--r--pjlib/src/pj/ioqueue_symbian.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/pjlib/src/pj/ioqueue_symbian.cpp b/pjlib/src/pj/ioqueue_symbian.cpp
index 73f0f04a..90848f5f 100644
--- a/pjlib/src/pj/ioqueue_symbian.cpp
+++ b/pjlib/src/pj/ioqueue_symbian.cpp
@@ -387,6 +387,7 @@ void CIoqueueCallback::DoCancel()
sock_->Socket().CancelAccept();
type_ = TYPE_NONE;
+ pending_data_.common_.op_key_ = NULL;
}
//
@@ -397,13 +398,15 @@ void CIoqueueCallback::CancelOperation(pj_ioqueue_op_key_t *op_key,
{
Type cur_type = type_;
+ pj_assert(op_key == pending_data_.common_.op_key_);
+
Cancel();
if (cur_type == TYPE_READ) {
if (cb_.on_read_complete)
cb_.on_read_complete(key_, op_key, bytes_status);
} else if (cur_type == TYPE_ACCEPT)
- ;
+ ;
}