X-Git-Url: http://git.eversberg.eu/gitweb.cgi?p=lcr.git;a=blobdiff_plain;f=chan_lcr.c;h=59687339a7c29ae51ac4d05c39d6f899436264b7;hp=05ac231c100aeae99d870a4da86d94e7a9d164a9;hb=ec4c180567d94ada2940ca106b45e5876d6bbf3a;hpb=7b14ecc400935f9fff7e6a3a9f36d72e4e888585 diff --git a/chan_lcr.c b/chan_lcr.c index 05ac231..5968733 100644 --- a/chan_lcr.c +++ b/chan_lcr.c @@ -254,8 +254,9 @@ void chan_lcr_log(int type, const char *file, int line, const char *function, st if (ast) strncpy(ast_text, ast->name, sizeof(ast_text)-1); ast_text[sizeof(ast_text)-1] = '\0'; - - ast_log(type, file, line, function, "[call=%s ast=%s] %s", call_text, ast_text, buffer); + +printf("\n[call=%s ast=%s] %s\n", call_text, ast_text, buffer); +// ast_log(type, file, line, function, "[call=%s ast=%s] %s", call_text, ast_text, buffer); ast_mutex_unlock(&log_lock); lock_debug("l"); @@ -1264,6 +1265,7 @@ int receive_message(int message_type, unsigned int ref, union parameter *param) if (message_type == MESSAGE_BCHANNEL) { switch(param->bchannel.type) { case BCHANNEL_ASSIGN: +lock_debug("rx1"); CDEBUG(NULL, NULL, "Received BCHANNEL_ASSIGN message. (handle=%08lx) for ref %d\n", param->bchannel.handle, ref); if ((bchannel = find_bchannel_handle(param->bchannel.handle))) { CERROR(NULL, NULL, "bchannel handle %x already assigned.\n", (int)param->bchannel.handle); @@ -1556,7 +1558,9 @@ static int handle_socket(struct lcr_fd *fd, unsigned int what, void *instance, i CERROR(NULL, NULL, "Socket received illegal message %d.\n", msg.message); goto error; } + lock_debug("handleX"); receive_message(msg.u.msg.type, msg.u.msg.ref, &msg.u.msg.param); + lock_debug("handleY"); } else { CERROR(NULL, NULL, "Socket failed (errno %d).\n", errno); goto error; @@ -1689,7 +1693,11 @@ static void handle_queue() ast = call->ast; if (*p && ast) { lock_debug("A1+"); - ast_channel_lock(ast); + while (ast_channel_trylock(ast)) { + lock_debug(""); + usleep(1000); + lock_debug("A1++"); + } lock_debug("A1-"); while(*p) { switch (*p) { @@ -2012,8 +2020,8 @@ static void send_digit_to_chan(struct ast_channel * ast, char digit ) ast_playtones_start(ast,0,dtmf_tones[15], 0); else { /* not handled */ - ast_log(LOG_DEBUG, "Unable to handle DTMF tone " - "'%c' for '%s'\n", digit, ast->name); +// ast_log(LOG_DEBUG, "Unable to handle DTMF tone " +// "'%c' for '%s'\n", digit, ast->name); } }