Hi Frédéric, On 02/28/2012 07:33 AM, Frédéric Danis wrote: > RING event should only be sent when callsetup indicator is set to > Incoming and there is no active call. > > If call indicator is set to inactive while callsetup is > already set to Incoming (waiting call has generated +CCWA), > RING event should be sent after all calls' state have been updated. > > As state of calls are updated one by one, generating multiple calls > to ofono_emulator_set_indicator(), do not call notify_ring() just > after call indicator went from active/held to inactive (only start > ring timer). > In ring_timer(), in case of a call in waiting state, just exit and > wait for next timeout. > --- > src/emulator.c | 21 +++++++++++---------- > 1 files changed, 11 insertions(+), 10 deletions(-) It seems like you're covering up the symptoms, not really addressing the real issue. The logic we have right now is mostly correct, we're just not handling the CHLD=1 case properly. Can you try the attached patch and see if it makes the PTS test case pass? Regards, -Denis