diff --git a/callerid.c b/callerid.c index 0a0883eb32b8dbff491de220456166861a11f3a3..3766f4b0bd4c59c016d0089b347f8ecdbbd2a887 100755 --- a/callerid.c +++ b/callerid.c @@ -110,8 +110,8 @@ struct callerid_state *callerid_new(void) { struct callerid_state *cid; cid = malloc(sizeof(struct callerid_state)); - memset(cid, 0, sizeof(struct callerid_state)); if (cid) { + memset(cid, 0, sizeof(struct callerid_state)); cid->fskd.spb = 7; /* 1200 baud */ cid->fskd.hdlc = 0; /* Async */ cid->fskd.nbit = 8; /* 8 bits */ diff --git a/channels/chan_zap.c b/channels/chan_zap.c index 723c466b13a79e062e9e887c627be2823b69d8b7..75bead1c116f52c20ecde34f0801aa1904ff37c4 100755 --- a/channels/chan_zap.c +++ b/channels/chan_zap.c @@ -4359,6 +4359,8 @@ static void *ss_thread(void *data) } else ast_log(LOG_WARNING, "Unable to get caller ID space\n"); } + else + cs = NULL; if (name && number) { snprintf(cid, sizeof(cid), "\"%s\" <%s>", name, number); } else if (name) { @@ -4368,6 +4370,8 @@ static void *ss_thread(void *data) } else { strcpy(cid, ""); } + if (cs) + callerid_free(cs); if (strlen(cid)) { chan->callerid = strdup(cid); chan->ani = strdup(cid); diff --git a/frame.c b/frame.c index 36ac0e1da0ec196b760e2b8441fc3671251fa083..0ff9d2a1e08bb97699a7f352e23b71c17ebfac30 100755 --- a/frame.c +++ b/frame.c @@ -455,8 +455,7 @@ static int show_codecs(int fd, int argc, char *argv[]) return RESULT_SHOWUSAGE; if (getenv("I_AM_NOT_AN_IDIOT") == NULL) - ast_cli(fd, "Disclaimer: this command is for informational purposes -only.\n\tIt does not indicate anything about your configuration.\n"); + ast_cli(fd, "Disclaimer: this command is for informational purposes only.\n\tIt does not indicate anything about your configuration.\n"); if ((argc == 2) || (!strcasecmp(argv[1],"audio"))) { found = 1;