Hi,
Comments of Luiz are taken into account in this version.
Dmitriy
Hi Dmitriy,
On Tue, Oct 11, 2011, Dmitriy Paliy wrote:
> If list current calls is requested when there is second incoming call
> and csd call status is CSD_CALL_STATUS_PROCEEDING, then returned 'state
> of the call' value in +CLCC is 4 (incoming, MT call), which is incorrect.
> Indication than proceeds from incoming to waiting state.
>
> This patch sets the corresponding value to 5 (waiting, MT call) in
> maemo6 telephony driver for the second call.
> ---
> audio/telephony-maemo6.c | 12 ++++++++++--
> 1 files changed, 10 insertions(+), 2 deletions(-)
Applied. Thanks.
Johan
Hi Dmitriy,
On Tue, Oct 11, 2011 at 2:34 PM, Dmitriy Paliy <[email protected]> wrote:
> If list current calls is requested when there is second incoming call
> and csd call status is CSD_CALL_STATUS_PROCEEDING, then returned 'state
> of the call' value in +CLCC is 4 (incoming, MT call), which is incorrect.
> Indication than proceeds from incoming to waiting state.
>
> This patch sets the corresponding value to 5 (waiting, MT call) in
> maemo6 telephony driver for the second call.
> ---
> ?audio/telephony-maemo6.c | ? 12 ++++++++++--
> ?1 files changed, 10 insertions(+), 2 deletions(-)
>
> diff --git a/audio/telephony-maemo6.c b/audio/telephony-maemo6.c
> index 102daeb..82cb274 100644
> --- a/audio/telephony-maemo6.c
> +++ b/audio/telephony-maemo6.c
> @@ -932,8 +932,16 @@ static int csd_status_to_hfp(struct csd_call *call)
> ? ? ? ? ? ? ? ?/* PROCEEDING can happen in outgoing/incoming */
> ? ? ? ? ? ? ? ?if (call->originating)
> ? ? ? ? ? ? ? ? ? ? ? ?return CALL_STATUS_DIALING;
> - ? ? ? ? ? ? ? else
> - ? ? ? ? ? ? ? ? ? ? ? return CALL_STATUS_INCOMING;
> +
> + ? ? ? ? ? ? ? /*
> + ? ? ? ? ? ? ? ?* PROCEEDING is followed by WAITING CSD status, therefore
> + ? ? ? ? ? ? ? ?* second incoming call status indication is set immediately
> + ? ? ? ? ? ? ? ?* to waiting.
> + ? ? ? ? ? ? ? ?*/
> + ? ? ? ? ? ? ? if (g_slist_length(active_calls) > 0)
> + ? ? ? ? ? ? ? ? ? ? ? return CALL_STATUS_WAITING;
> +
> + ? ? ? ? ? ? ? return CALL_STATUS_INCOMING;
> ? ? ? ?case CSD_CALL_STATUS_COMING:
> ? ? ? ? ? ? ? ?return CALL_STATUS_INCOMING;
> ? ? ? ?case CSD_CALL_STATUS_MO_ALERTING:
> --
> 1.7.4.1
>
Ack.
--
Luiz Augusto von Dentz
If list current calls is requested when there is second incoming call
and csd call status is CSD_CALL_STATUS_PROCEEDING, then returned 'state
of the call' value in +CLCC is 4 (incoming, MT call), which is incorrect.
Indication than proceeds from incoming to waiting state.
This patch sets the corresponding value to 5 (waiting, MT call) in
maemo6 telephony driver for the second call.
---
audio/telephony-maemo6.c | 12 ++++++++++--
1 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/audio/telephony-maemo6.c b/audio/telephony-maemo6.c
index 102daeb..82cb274 100644
--- a/audio/telephony-maemo6.c
+++ b/audio/telephony-maemo6.c
@@ -932,8 +932,16 @@ static int csd_status_to_hfp(struct csd_call *call)
/* PROCEEDING can happen in outgoing/incoming */
if (call->originating)
return CALL_STATUS_DIALING;
- else
- return CALL_STATUS_INCOMING;
+
+ /*
+ * PROCEEDING is followed by WAITING CSD status, therefore
+ * second incoming call status indication is set immediately
+ * to waiting.
+ */
+ if (g_slist_length(active_calls) > 0)
+ return CALL_STATUS_WAITING;
+
+ return CALL_STATUS_INCOMING;
case CSD_CALL_STATUS_COMING:
return CALL_STATUS_INCOMING;
case CSD_CALL_STATUS_MO_ALERTING:
--
1.7.4.1