From f6d652197d4a632059029f04745b4136d0d31e0a Mon Sep 17 00:00:00 2001 From: Nanang Izzuddin Date: Mon, 23 Mar 2009 13:18:19 +0000 Subject: Ticket #712: back-porting ticket #695 git-svn-id: http://svn.pjsip.org/repos/pjproject/branches/1.0@2540 74dad513-b988-da41-8d7b-12977e46ad98 --- pjmedia/src/pjmedia/symbian_sound_aps.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/pjmedia/src/pjmedia/symbian_sound_aps.cpp b/pjmedia/src/pjmedia/symbian_sound_aps.cpp index 6a8976b2..ea419c51 100644 --- a/pjmedia/src/pjmedia/symbian_sound_aps.cpp +++ b/pjmedia/src/pjmedia/symbian_sound_aps.cpp @@ -367,6 +367,18 @@ CPjAudioEngine::~CPjAudioEngine() delete iRecCommHandler; iRecCommHandler = NULL; + // On some devices, immediate closing after stopping may cause APS server + // panic KERN-EXEC 0, so let's wait for sometime before really closing + // the client session. + TTime start, now; + enum { APS_CLOSE_WAIT_TIME = 200 }; /* in msecs */ + + start.UniversalTime(); + do { + pj_symbianos_poll(-1, APS_CLOSE_WAIT_TIME); + now.UniversalTime(); + } while (now.MicroSecondsFrom(start) < APS_CLOSE_WAIT_TIME * 1000); + iSession.Close(); if (state_ == STATE_READY) { -- cgit v1.2.3