--- manager.c (svn) +++ manager.c (working copy) @@ -998,13 +998,13 @@ if (!ast_strlen_zero(in->app)) { res = ast_pbx_outgoing_app(in->tech, AST_FORMAT_SLINEAR, in->data, in->timeout, in->app, in->appdata, &reason, 1, - !ast_strlen_zero(in->cid_num) ? in->cid_num : NULL, - !ast_strlen_zero(in->cid_name) ? in->cid_name : NULL, + S_OR(in->cid_num, NULL), + S_OR(in->cid_name, NULL), in->vars, in->account, &chan); } else { res = ast_pbx_outgoing_exten(in->tech, AST_FORMAT_SLINEAR, in->data, in->timeout, in->context, in->exten, in->priority, &reason, 1, - !ast_strlen_zero(in->cid_num) ? in->cid_num : NULL, - !ast_strlen_zero(in->cid_name) ? in->cid_name : NULL, + S_OR(in->cid_num, NULL), + S_OR(in->cid_name, NULL), in->vars, in->account, &chan); } --- cdr.c (svn) +++ cdr.c (working copy) @@ -439,7 +439,7 @@ while (cdr) { next = cdr->next; - chan = !ast_strlen_zero(cdr->channel) ? cdr->channel : ""; + chan = S_OR(cdr->channel, ""); if (!ast_test_flag(cdr, AST_CDR_FLAG_POSTED) && !ast_test_flag(cdr, AST_CDR_FLAG_POST_DISABLED)) ast_log(LOG_WARNING, "CDR on channel '%s' not posted\n", chan); if (ast_tvzero(cdr->end)) @@ -464,7 +464,7 @@ while (cdr) { if (!ast_test_flag(cdr, AST_CDR_FLAG_LOCKED)) { - chan = !ast_strlen_zero(cdr->channel) ? cdr->channel : ""; + chan = S_OR(cdr->channel, ""); if (ast_test_flag(cdr, AST_CDR_FLAG_POSTED)) ast_log(LOG_WARNING, "CDR on channel '%s' already posted\n", chan); if (!ast_tvzero(cdr->start)) @@ -480,7 +480,7 @@ char *chan; while (cdr) { - chan = !ast_strlen_zero(cdr->channel) ? cdr->channel : ""; + chan = S_OR(cdr->channel, ""); if (ast_test_flag(cdr, AST_CDR_FLAG_POSTED)) ast_log(LOG_WARNING, "CDR on channel '%s' already posted\n", chan); if (cdr->disposition < AST_CDR_ANSWERED) @@ -497,7 +497,7 @@ while (cdr) { if (!ast_test_flag(cdr, AST_CDR_FLAG_LOCKED)) { - chan = !ast_strlen_zero(cdr->channel) ? cdr->channel : ""; + chan = S_OR(cdr->channel, ""); if (ast_test_flag(cdr, AST_CDR_FLAG_POSTED)) ast_log(LOG_WARNING, "CDR on channel '%s' already posted\n", chan); if (cdr->disposition < AST_CDR_BUSY) @@ -512,7 +512,7 @@ char *chan; while (cdr) { - chan = !ast_strlen_zero(cdr->channel) ? cdr->channel : ""; + chan = S_OR(cdr->channel, ""); if (ast_test_flag(cdr, AST_CDR_FLAG_POSTED)) ast_log(LOG_WARNING, "CDR on channel '%s' already posted\n", chan); if (!ast_test_flag(cdr, AST_CDR_FLAG_LOCKED)) { @@ -554,7 +554,7 @@ char *chan; while (cdr) { - chan = !ast_strlen_zero(cdr->channel) ? cdr->channel : ""; + chan = S_OR(cdr->channel, ""); if (ast_test_flag(cdr, AST_CDR_FLAG_POSTED)) ast_log(LOG_WARNING, "CDR on channel '%s' already posted\n", chan); if (!ast_test_flag(cdr, AST_CDR_FLAG_LOCKED)) @@ -569,7 +569,7 @@ while (cdr) { if (!ast_test_flag(cdr, AST_CDR_FLAG_LOCKED)) { - chan = !ast_strlen_zero(cdr->channel) ? cdr->channel : ""; + chan = S_OR(cdr->channel, ""); if (ast_test_flag(cdr, AST_CDR_FLAG_POSTED)) ast_log(LOG_WARNING, "CDR on channel '%s' already posted\n", chan); if (!app) @@ -617,7 +617,7 @@ while (cdr) { if (!ast_test_flag(cdr, AST_CDR_FLAG_LOCKED)) { - chan = !ast_strlen_zero(cdr->channel) ? cdr->channel : ""; + chan = S_OR(cdr->channel, ""); if (!ast_strlen_zero(cdr->channel)) ast_log(LOG_WARNING, "CDR already initialized on '%s'\n", chan); ast_copy_string(cdr->channel, c->name, sizeof(cdr->channel)); @@ -652,7 +652,7 @@ char *chan; while (cdr) { - chan = !ast_strlen_zero(cdr->channel) ? cdr->channel : ""; + chan = S_OR(cdr->channel, ""); if (ast_test_flag(cdr, AST_CDR_FLAG_POSTED)) ast_log(LOG_WARNING, "CDR on channel '%s' already posted\n", chan); if (ast_tvzero(cdr->end)) @@ -778,8 +778,8 @@ /* Copy account code et-al */ ast_copy_string(cdr->accountcode, c->accountcode, sizeof(cdr->accountcode)); /* Destination information */ - ast_copy_string(cdr->dst, (ast_strlen_zero(c->macroexten)) ? c->exten : c->macroexten, sizeof(cdr->dst)); - ast_copy_string(cdr->dcontext, (ast_strlen_zero(c->macrocontext)) ? c->context : c->macrocontext, sizeof(cdr->dcontext)); + ast_copy_string(cdr->dst, S_OR(c->macroexten, c->exten), sizeof(cdr->dst)); + ast_copy_string(cdr->dcontext, S_OR(c->macrocontext, c->context), sizeof(cdr->dcontext)); } cdr = cdr->next; } @@ -806,7 +806,7 @@ struct ast_cdr_beitem *i; while (cdr) { - chan = !ast_strlen_zero(cdr->channel) ? cdr->channel : ""; + chan = S_OR(cdr->channel, ""); if (ast_test_flag(cdr, AST_CDR_FLAG_POSTED)) ast_log(LOG_WARNING, "CDR on channel '%s' already posted\n", chan); if (ast_tvzero(cdr->end)) --- channels/chan_agent.c (svn) +++ channels/chan_agent.c (working copy) @@ -1230,7 +1230,7 @@ if(!chan) return 0; - snprintf(loginchan, sizeof(loginchan), "%s@%s", chan, !ast_strlen_zero(context) ? context : "default"); + snprintf(loginchan, sizeof(loginchan), "%s@%s", chan, S_OR( context,"default") ); AST_LIST_TRAVERSE(&agents, p, list) { if(!strcasecmp(chan, p->loginchan))