[PATCH 2/4] Fix: No need to put active call on hold

Zhenhua Zhang zhenhua.zhang at intel.com
Mon Nov 16 06:11:44 PST 2009


First, call->status should be 1 stead of 2 in the loop. Second,
it's incorrect to set status to hold because later callheld=1
will swap call status back. So active->hold->active again is
not correct.
---
 drivers/hfpmodem/voicecall.c |   12 ------------
 1 files changed, 0 insertions(+), 12 deletions(-)

diff --git a/drivers/hfpmodem/voicecall.c b/drivers/hfpmodem/voicecall.c
index ba4b4d5..d9c3c2a 100644
--- a/drivers/hfpmodem/voicecall.c
+++ b/drivers/hfpmodem/voicecall.c
@@ -285,7 +285,6 @@ static void atd_cb(gboolean ok, GAtResult *result,
gpointer user_data)
 	int validity = 2;
 	struct ofono_error error;
 	struct ofono_call *call;
-	GSList *l;
 
 	dump_response("atd_cb", ok, result);
 
@@ -294,17 +293,6 @@ static void atd_cb(gboolean ok, GAtResult *result,
gpointer user_data)
 	if (!ok)
 		goto out;
 
-	/* On a success, make sure to put all active calls on hold */
-	for (l = vd->calls; l; l = l->next) {
-		call = l->data;
-
-		if (call->status != 0)
-			continue;
-
-		call->status = 2;
-		ofono_voicecall_notify(vc, call);
-	}
-
 	call = create_call(vd, 0, 0, CALL_STATUS_DIALING, NULL, type,
validity);
 
 	if (!call) {
-- 
1.6.2.5





More information about the ofono mailing list