diff -r 5e8b14bae8c3 -r 73253677b50a mmserv/sts/stsserver/src/stsserversession.cpp --- a/mmserv/sts/stsserver/src/stsserversession.cpp Fri Jul 09 16:43:35 2010 -0500 +++ b/mmserv/sts/stsserver/src/stsserversession.cpp Fri Jul 23 17:29:03 2010 -0500 @@ -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())