Fix: Take care of the logic for Dialing
authorDenis Kenzior <denkenz@gmail.com>
Wed, 28 Oct 2009 19:36:14 +0000 (14:36 -0500)
committerDenis Kenzior <denkenz@gmail.com>
Wed, 28 Oct 2009 19:36:14 +0000 (14:36 -0500)
commitba9f38b09ee44c275d6824e83966d1c061c54e45
tree3235fe41b30e8639b8d817251f474c60d5d18f43
parent3ad86847ec144cc8d4374997e1b3ced59a16b2b7
Fix: Take care of the logic for Dialing

The logic for dialing a call while other calls are in the system is a
bit more complicated than what was implemented.

There are several cases to consider:

- Active Call and Held Call
In this situation we cannot dial, the user must drop one of the
calls.
- Active Call and Waiting Call -> We have to put the active call on
  hold, unfortunately there is no standard command to do so without
  affecting the waiting call.  If the modem has a vendor specific
  implementation, then try to use that.

- Active Call only -> Put the active call on hold.  We use the
  swap_without_accept implementation (if exists) to be safe, otherwise
  we fall back to hold active calls.

- No Active calls -> Simply dial
src/voicecall.c