Rev 3449 | Rev 3819 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3449 | Rev 3476 | ||
---|---|---|---|
Line 820... | Line 820... | ||
820 | if (call->flags & IPC_CALL_ANSWERED) { |
820 | if (call->flags & IPC_CALL_ANSWERED) { |
821 | process_answer(call); |
821 | process_answer(call); |
822 | 822 | ||
823 | ASSERT(! (call->flags & IPC_CALL_STATIC_ALLOC)); |
823 | ASSERT(! (call->flags & IPC_CALL_STATIC_ALLOC)); |
824 | 824 | ||
825 | if (!(call->flags & IPC_CALL_DISCARD_ANSWER)) |
- | |
826 | atomic_dec(&TASK->active_calls); |
- | |
827 | - | ||
828 | if (call->flags & IPC_CALL_DISCARD_ANSWER) { |
825 | if (call->flags & IPC_CALL_DISCARD_ANSWER) { |
829 | ipc_call_free(call); |
826 | ipc_call_free(call); |
830 | goto restart; |
827 | goto restart; |
- | 828 | } else { |
|
- | 829 | /* |
|
- | 830 | * Decrement the counter of active calls only if the |
|
- | 831 | * call is not an answer to IPC_M_PHONE_HUNGUP, |
|
- | 832 | * which doesn't contribute to the counter. |
|
- | 833 | */ |
|
- | 834 | atomic_dec(&TASK->active_calls); |
|
831 | } |
835 | } |
832 | 836 | ||
833 | STRUCT_TO_USPACE(&calldata->args, &call->data.args); |
837 | STRUCT_TO_USPACE(&calldata->args, &call->data.args); |
834 | ipc_call_free(call); |
838 | ipc_call_free(call); |
835 | 839 |