diff -r 94fc26b6e006 -r 1fa3fb47b1e3 mmserv/sts/stsserver/src/stsserversession.cpp --- a/mmserv/sts/stsserver/src/stsserversession.cpp Tue Jul 06 14:50:35 2010 +0300 +++ b/mmserv/sts/stsserver/src/stsserversession.cpp Wed Aug 18 10:17:22 2010 +0300 @@ -114,6 +114,27 @@ iSts.StopAlarm(context); } +void CStsServerSession::DoPlayToneStopL(const RMessage2& aMessage) + { + CSystemToneService::TToneType tone = + (CSystemToneService::TToneType) aMessage.Int0(); + unsigned int context = 0; + //SR + //iSts.PlayTone(tone, context, *this); + iSts.PlayToneStop(tone, context, *this); + iObserverMap[context] = (MStsPlayAlarmObserver*) aMessage.Ptr2(); + TPckg contextPckg(context); + TRAPD(err,aMessage.WriteL(1,contextPckg)); + aMessage.Complete(err); + // if the context is 0 there was a problem with the PlayAlarm, + // so trigger the PlayAlarmComplete callback. + if (context == 0) + { + PlayAlarmComplete(0); + } + } + + void CStsServerSession::CleanUpObservers() { while (!iObserverMap.empty())