{
empathy_call_handler_start_tpfs (handler);
- if (tp_call_channel_get_state (priv->call, NULL, NULL, NULL) ==
- TP_CALL_STATE_INITIALISED)
- tp_call_channel_accept_async (priv->call, on_call_accepted_cb, NULL);
+ if (tp_channel_get_requested (TP_CHANNEL (priv->call)))
+ {
+ /* accept outgoing channels immediately */
+ tp_call_channel_accept_async (priv->call,
+ on_call_accepted_cb, NULL);
+ }
else
- priv->accept_when_initialised = TRUE;
+ {
+ /* accepting incoming channels when they are INITIALISED */
+ if (tp_call_channel_get_state (priv->call, NULL, NULL, NULL) ==
+ TP_CALL_STATE_INITIALISED)
+ tp_call_channel_accept_async (priv->call,
+ on_call_accepted_cb, NULL);
+ else
+ priv->accept_when_initialised = TRUE;
+ }
return;
}