Fix small logic errors (bug #242)

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1494 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Mark Spencer 2003-09-10 05:24:49 +00:00
parent c874416036
commit ac19ba51bd
6 changed files with 18 additions and 11 deletions

View File

@ -1383,7 +1383,7 @@ static int queues_show(int fd, int argc, char **argv)
pos = 1;
ast_cli(fd, " Callers: \n");
for (qe = q->head; qe; qe = qe->next)
ast_cli(fd, " %d. %s (wait: %d:%02.2d)\n", pos++, qe->chan->name,
ast_cli(fd, " %d. %s (wait: %d:%2.2d)\n", pos++, qe->chan->name,
(now - qe->start) / 60, (now - qe->start) % 60);
} else
ast_cli(fd, " No Callers\n");
@ -1441,7 +1441,7 @@ static int manager_queues_status( struct mansession *s, struct message *m )
"Wait: %ld\r\n"
"%s"
"\r\n",
q->name, pos++, qe->chan->name, (qe->chan->callerid ? qe->chan->callerid : ""), now - qe->start), idText;
q->name, pos++, qe->chan->name, (qe->chan->callerid ? qe->chan->callerid : ""), (long)(now - qe->start), idText);
ast_mutex_unlock(&q->lock);
q = q->next;
}

View File

@ -20,7 +20,8 @@ extern "C" {
#include <stdarg.h>
extern void ast_cli(int fd, char *fmt, ...);
extern void ast_cli(int fd, char *fmt, ...)
__attribute__ ((format (printf, 2, 3)));
#define RESULT_SUCCESS 0
#define RESULT_SHOWUSAGE 1

16
pbx.c
View File

@ -1134,7 +1134,7 @@ static int pbx_extension_helper(struct ast_channel *c, char *context, char *exte
ast_mutex_unlock(&conlock);
if (app) {
if (c->context != context)
strncpy(c->context, context, sizeof(c->context-1));
strncpy(c->context, context, sizeof(c->context)-1);
if (c->exten != exten)
strncpy(c->exten, exten, sizeof(c->exten)-1);
c->priority = priority;
@ -2512,7 +2512,7 @@ static int handle_show_dialplan(int fd, int argc, char *argv[])
/* try to lock contexts */
if (ast_lock_contexts()) {
ast_cli(LOG_WARNING, "Failed to lock contexts list\n");
ast_log(LOG_WARNING, "Failed to lock contexts list\n");
return RESULT_FAILURE;
}
@ -3798,12 +3798,16 @@ int ast_pbx_outgoing_exten(char *type, int format, void *data, int timeout, char
res = 0;
if (option_verbose > 3)
ast_verbose(VERBOSE_PREFIX_4 "Channel %s was answered.\n", chan->name);
if (context && strlen(context))
if (context && *context)
strncpy(chan->context, context, sizeof(chan->context) - 1);
if (exten && strlen(exten))
if (exten && *exten)
strncpy(chan->exten, exten, sizeof(chan->exten) - 1);
if (callerid && strlen(callerid))
strncpy(chan->callerid, callerid, sizeof(chan->callerid) - 1);
if (callerid && *callerid) {
/* XXX call ast_set_callerid? */
if (chan->callerid)
free(chan->callerid);
chan->callerid = strdup(callerid);
}
if (priority > 0)
chan->priority = priority;
if (sync > 1) {

View File

@ -1334,7 +1334,7 @@ static int handle_context_remove_ignorepat(int fd, int argc, char *argv[])
break;
default:
ast_cli(fd, "Failed to remove ignore pattern '%s' from '%s' context\n");
ast_cli(fd, "Failed to remove ignore pattern '%s' from '%s' context\n", argv[2], argv[4]);
break;
}
return RESULT_FAILURE;

View File

@ -2,6 +2,8 @@
#include <stdlib.h>
#include <errno.h>
#include <string.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <asterisk/lock.h>
#include <asterisk/channel.h>

View File

@ -582,7 +582,7 @@ static int handle_parkedcalls(int fd, int argc, char *argv[])
cur=parkinglot;
while(cur) {
ast_cli(fd, "%4d %25s (%-15s %-12s %-4d) %6ds\n"
ast_cli(fd, "%4d %25s (%-15s %-12s %-4d) %6lds\n"
,cur->parkingnum, cur->chan->name, cur->context, cur->exten
,cur->priority, cur->start.tv_sec + (cur->parkingtime/1000) - time(NULL));