Hi all! I am using PJSIP 1.4.5 on Symbian platform with the pjsua interface, and I also specify the nameservers for pjsua. If I have outstanding nameserver queries, when I call pjsua_destroy(), a bit later I get an assertation in file os_core_symbian.cpp, line 848. This is the pj_mutex_lock() function. The caller function was on_timeout() in resolver.c. It was easy to figure out, that the assertation is because the querry timeout entry is not removed from the timer, I did the following modification in in resolver.c line 355, pj_dns_resolver_destroy(): /* * Notify pending queries if requested, and cancel timer entries */ it = pj_hash_first(resolver->hquerybyid, &it_buf); while (it) { pj_dns_async_query *q = (pj_dns_async_query *) pj_hash_this(resolver->hquerybyid, it); pj_dns_async_query *cq; if (notify && q->cb) { (*q->cb)(q->user_data, PJ_ECANCELLED, NULL); } pj_timer_heap_cancel( resolver->timer, &q->timer_entry ); cq = q->child_head.next; while (cq != (pj_dns_async_query*)&q->child_head) { if (notify && cq->cb) { (*cq->cb)(cq->user_data, PJ_ECANCELLED, NULL); } pj_timer_heap_cancel( resolver->timer, &cq->timer_entry ); cq = cq->next; } it = pj_hash_next(resolver->hquerybyid, it); } As you can see I canceled the outstanding timer entries, if there are any. I hope this helps. Br, Gabor -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.pjsip.org/pipermail/pjsip_lists.pjsip.org/attachments/20091204/d0006486/attachment-0001.html>