i have an application that reads incoming sms messages via MMsvSessionObserver derived class. another MMsvSessionObserver derived class which is also an Active object (derived from CActive) is responsible for sending replies back. the flow is like this:
1) reader class receives incoming sms, copies the message onto a queue, and calls SetActive() on the sender class.
2) the sender class dequeues the msg and sends a reply back to the sender.
the problem: this works successfully ONCE. when the second sms arrives, the machinery above does not kick in. also, if i inject a CEikonEnv::InfoWinL() call when i receive a msg, it works ALL THE TIME. i'm not sure why this call to InfoWinL() is helping to make things work...