Index: main/channel.c =================================================================== --- main/channel.c (revision 51180) +++ main/channel.c (working copy) @@ -803,7 +803,8 @@ ast_log(LOG_WARNING, "Exceptionally long queue length queuing to %s\n", chan->name); CRASH; } else { - ast_log(LOG_DEBUG, "Dropping voice to exceptionally long queue on %s\n", chan->name); + if (option_debug) + ast_log(LOG_DEBUG, "Dropping voice to exceptionally long queue on %s\n", chan->name); ast_frfree(f); ast_channel_unlock(chan); return 0; @@ -940,7 +941,8 @@ /* this is slightly unsafe, as we _should_ hold the lock to access c->name */ done = c == NULL || ast_channel_trylock(c) == 0; if (!done) - ast_log(LOG_DEBUG, "Avoiding %s for channel '%p'\n", msg, c); + if (option_debug) + ast_log(LOG_DEBUG, "Avoiding %s for channel '%p'\n", msg, c); AST_LIST_UNLOCK(&channels); if (done) return c; @@ -950,8 +952,9 @@ * c is surely not null, but we don't have the lock so cannot * access c->name */ - ast_log(LOG_DEBUG, "Failure, could not lock '%p' after %d retries!\n", - c, retries); + if (option_debug) + ast_log(LOG_DEBUG, "Failure, could not lock '%p' after %d retries!\n", + c, retries); return NULL; } @@ -1260,8 +1263,9 @@ ast_clear_flag(spy, CHANSPY_TRIGGER_WRITE); } - ast_log(LOG_DEBUG, "Spy %s added to channel %s\n", - spy->type, chan->name); + if (option_debug) + ast_log(LOG_DEBUG, "Spy %s added to channel %s\n", + spy->type, chan->name); return 0; } @@ -1296,7 +1300,8 @@ } /* Print it out while we still have a lock so the structure can't go away (if signalled above) */ - ast_log(LOG_DEBUG, "Spy %s removed from channel %s\n", spy->type, chan->name); + if (option_debug) + ast_log(LOG_DEBUG, "Spy %s removed from channel %s\n", spy->type, chan->name); ast_mutex_unlock(&spy->lock); @@ -1441,8 +1446,9 @@ trans->path = NULL; } if (!trans->path) { - ast_log(LOG_DEBUG, "Building translator from %s to SLINEAR for spies on channel %s\n", - ast_getformatname(f->subclass), chan->name); + if (option_debug) + ast_log(LOG_DEBUG, "Building translator from %s to SLINEAR for spies on channel %s\n", + ast_getformatname(f->subclass), chan->name); if ((trans->path = ast_translator_build_path(AST_FORMAT_SLINEAR, f->subclass)) == NULL) { ast_log(LOG_WARNING, "Cannot build a path from %s to %s\n", ast_getformatname(f->subclass), ast_getformatname(AST_FORMAT_SLINEAR)); @@ -1686,7 +1692,8 @@ res = generate(chan, tmp, 0, 160); chan->generatordata = tmp; if (res) { - ast_log(LOG_DEBUG, "Auto-deactivating generator\n"); + if (option_debug) + ast_log(LOG_DEBUG, "Auto-deactivating generator\n"); ast_deactivate_generator(chan); } return 0; @@ -1905,7 +1912,8 @@ samples = 0; data = 0; } - ast_log(LOG_DEBUG, "Scheduling timer at %d sample intervals\n", samples); + if (option_debug) + ast_log(LOG_DEBUG, "Scheduling timer at %d sample intervals\n", samples); res = ioctl(c->timingfd, ZT_TIMERCONFIG, &samples); c->timingfunc = func; c->timingdata = data; @@ -2110,11 +2118,13 @@ case AST_FRAME_CONTROL: if (f->subclass == AST_CONTROL_ANSWER) { if (!ast_test_flag(chan, AST_FLAG_OUTGOING)) { - ast_log(LOG_DEBUG, "Ignoring answer on an inbound call!\n"); + if (option_debug) + ast_log(LOG_DEBUG, "Ignoring answer on an inbound call!\n"); ast_frfree(f); f = &ast_null_frame; } else if (prestate == AST_STATE_UP) { - ast_log(LOG_DEBUG, "Dropping duplicate answer!\n"); + if (option_debug) + ast_log(LOG_DEBUG, "Dropping duplicate answer!\n"); ast_frfree(f); f = &ast_null_frame; } else { @@ -2324,7 +2334,8 @@ break; } if (ts && ts->data[0]) { - ast_log(LOG_DEBUG, "Driver for channel '%s' does not support indication %d, emulating it\n", chan->name, condition); + if (option_debug) + ast_log(LOG_DEBUG, "Driver for channel '%s' does not support indication %d, emulating it\n", chan->name, condition); ast_playtones_start(chan,0,ts->data, 1); res = 0; } else if (condition == AST_CONTROL_PROGRESS) { @@ -2437,7 +2448,8 @@ ast_playtones_start(chan, 0, dtmf_tones[15], 0); else { /* not handled */ - ast_log(LOG_DEBUG, "Unable to generate DTMF tone '%c' for '%s'\n", digit, chan->name); + if (option_debug) + ast_log(LOG_DEBUG, "Unable to generate DTMF tone '%c' for '%s'\n", digit, chan->name); } } @@ -2473,7 +2485,8 @@ /* Send an empty audio frame to get things moving */ if (chan->_state != AST_STATE_UP) { - ast_log(LOG_DEBUG, "Prodding channel '%s'\n", chan->name); + if (option_debug) + ast_log(LOG_DEBUG, "Prodding channel '%s'\n", chan->name); a.subclass = chan->rawwriteformat; a.data = nothing + AST_FRIENDLY_OFFSET; a.src = "ast_prod"; @@ -3118,8 +3131,9 @@ return -1; } - ast_log(LOG_DEBUG, "Planning to masquerade channel %s into the structure of %s\n", - clone->name, original->name); + if (option_debug) + ast_log(LOG_DEBUG, "Planning to masquerade channel %s into the structure of %s\n", + clone->name, original->name); if (original->masq) { ast_log(LOG_WARNING, "%s is already going to masquerade as %s\n", original->masq->name, original->name); @@ -3131,7 +3145,8 @@ clone->masqr = original; ast_queue_frame(original, &ast_null_frame); ast_queue_frame(clone, &ast_null_frame); - ast_log(LOG_DEBUG, "Done planning to masquerade channel %s into the structure of %s\n", clone->name, original->name); + if (option_debug) + ast_log(LOG_DEBUG, "Done planning to masquerade channel %s into the structure of %s\n", clone->name, original->name); res = 0; } @@ -3490,7 +3505,8 @@ ); ast_channel_free(clone); } else { - ast_log(LOG_DEBUG, "Released clone lock on '%s'\n", clone->name); + if (option_debug) + ast_log(LOG_DEBUG, "Released clone lock on '%s'\n", clone->name); ast_set_flag(clone, AST_FLAG_ZOMBIE); ast_queue_frame(clone, &ast_null_frame); ast_channel_unlock(clone); @@ -3681,7 +3697,8 @@ if (!f) { *fo = NULL; *rc = who; - ast_log(LOG_DEBUG, "Didn't get a frame from channel: %s\n",who->name); + if (option_debug) + ast_log(LOG_DEBUG, "Didn't get a frame from channel: %s\n",who->name); break; } @@ -3703,7 +3720,8 @@ *fo = f; *rc = who; bridge_exit = 1; - ast_log(LOG_DEBUG, "Got a FRAME_CONTROL (%d) frame on channel %s\n", f->subclass, who->name); + if (option_debug) + ast_log(LOG_DEBUG, "Got a FRAME_CONTROL (%d) frame on channel %s\n", f->subclass, who->name); break; } if (bridge_exit) @@ -3725,9 +3743,10 @@ f->frametype == AST_FRAME_DTMF_BEGIN)) { *fo = f; *rc = who; - ast_log(LOG_DEBUG, "Got DTMF %s on channel (%s)\n", - f->frametype == AST_FRAME_DTMF_END ? "end" : "begin", - who->name); + if (option_debug) + ast_log(LOG_DEBUG, "Got DTMF %s on channel (%s)\n", + f->frametype == AST_FRAME_DTMF_END ? "end" : "begin", + who->name); break; } /* Write immediately frames, not passed through jb */ @@ -3880,7 +3899,8 @@ c1->_softhangup = 0; c0->_bridge = c1; c1->_bridge = c0; - ast_log(LOG_DEBUG, "Unbridge signal received. Ending native bridge.\n"); + if (option_debug) + ast_log(LOG_DEBUG, "Unbridge signal received. Ending native bridge.\n"); continue; } @@ -3891,12 +3911,13 @@ if (who) *rc = who; res = 0; - ast_log(LOG_DEBUG, "Bridge stops because we're zombie or need a soft hangup: c0=%s, c1=%s, flags: %s,%s,%s,%s\n", - c0->name, c1->name, - ast_test_flag(c0, AST_FLAG_ZOMBIE) ? "Yes" : "No", - ast_check_hangup(c0) ? "Yes" : "No", - ast_test_flag(c1, AST_FLAG_ZOMBIE) ? "Yes" : "No", - ast_check_hangup(c1) ? "Yes" : "No"); + if (option_debug) + ast_log(LOG_DEBUG, "Bridge stops because we're zombie or need a soft hangup: c0=%s, c1=%s, flags: %s,%s,%s,%s\n", + c0->name, c1->name, + ast_test_flag(c0, AST_FLAG_ZOMBIE) ? "Yes" : "No", + ast_check_hangup(c0) ? "Yes" : "No", + ast_test_flag(c1, AST_FLAG_ZOMBIE) ? "Yes" : "No", + ast_check_hangup(c1) ? "Yes" : "No"); break; } @@ -3919,7 +3940,8 @@ "CallerID1: %s\r\n" "CallerID2: %s\r\n", c0->name, c1->name, c0->uniqueid, c1->uniqueid, c0->cid.cid_num, c1->cid.cid_num); - ast_log(LOG_DEBUG, "Returning from native bridge, channels: %s, %s\n", c0->name, c1->name); + if (option_debug) + ast_log(LOG_DEBUG, "Returning from native bridge, channels: %s, %s\n", c0->name, c1->name); ast_clear_flag(c0, AST_FLAG_NBRIDGE); ast_clear_flag(c1, AST_FLAG_NBRIDGE); @@ -3985,7 +4007,8 @@ "CallerID1: %s\r\n" "CallerID2: %s\r\n", c0->name, c1->name, c0->uniqueid, c1->uniqueid, c0->cid.cid_num, c1->cid.cid_num); - ast_log(LOG_DEBUG, "Bridge stops bridging channels %s and %s\n", c0->name, c1->name); + if (option_debug) + ast_log(LOG_DEBUG, "Bridge stops bridging channels %s and %s\n", c0->name, c1->name); return res; } @@ -4510,7 +4533,8 @@ ast_log(LOG_DEBUG, "::::==== Unlocking AST channel %s\n", chan->name); if (!chan) { - ast_log(LOG_DEBUG, "::::==== Unlocking non-existing channel \n"); + if (option_debug) + ast_log(LOG_DEBUG, "::::==== Unlocking non-existing channel \n"); return 0; } @@ -4523,9 +4547,11 @@ ast_log(LOG_DEBUG, ":::=== Still have %d locks (recursive)\n", count); #endif if (!res) - ast_log(LOG_DEBUG, "::::==== Channel %s was unlocked\n", chan->name); + if (option_debug) + ast_log(LOG_DEBUG, "::::==== Channel %s was unlocked\n", chan->name); if (res == EINVAL) { - ast_log(LOG_DEBUG, "::::==== Channel %s had no lock by this thread. Failed unlocking\n", chan->name); + if (option_debug) + ast_log(LOG_DEBUG, "::::==== Channel %s had no lock by this thread. Failed unlocking\n", chan->name); } } if (res == EPERM) {