X-Git-Url: http://git.eversberg.eu/gitweb.cgi?p=lcr.git;a=blobdiff_plain;f=asterisk_client.c;h=105bfb44697d4019687c30c7400d84082d34f0c6;hp=ddf1c49962eb099eb179ed266e1a090887debf2d;hb=2c5382eb3fc36633445056004c26b9b7cff74fa7;hpb=fa633bd13b00f66103dc2f818dc88b011e2b4a4e diff --git a/asterisk_client.c b/asterisk_client.c index ddf1c49..105bfb4 100644 --- a/asterisk_client.c +++ b/asterisk_client.c @@ -204,7 +204,7 @@ int receive_message(int message_type, unsigned long ref, union parameter *param) switch(param->bchannel.type) { case BCHANNEL_ASSIGN: - if (find_bchannel_addr(param->bchannel.addr)) + if ((bchannel = find_bchannel_addr(param->bchannel.addr))) { fprintf(stderr, "error: bchannel addr %x already assigned.\n", param->bchannel.addr); return(-1); @@ -214,10 +214,10 @@ int receive_message(int message_type, unsigned long ref, union parameter *param) bchannel->addr = param->bchannel.addr; /* in case, ref is not set, this bchannel instance must * be created until it is removed again by LCR */ - bchannel->ref = ref; /* link to call */ if ((call = find_call_ref(ref))) { + bchannel->ref = ref; call->addr = param->bchannel.addr; } @@ -231,7 +231,7 @@ int receive_message(int message_type, unsigned long ref, union parameter *param) case BCHANNEL_REMOVE: if (!(bchannel = find_bchannel_addr(param->bchannel.addr))) { - fprintf(stderr, "error: bchannel addr %x already assigned.\n", param->bchannel.addr); + fprintf(stderr, "error: bchannel addr %x not assigned.\n", param->bchannel.addr); return(-1); } /* unlink from call */