diff options
-rwxr-xr-x | pbx.c | 6 | ||||
-rwxr-xr-x | res/res_musiconhold.c | 2 |
2 files changed, 5 insertions, 3 deletions
@@ -1115,8 +1115,10 @@ static int pbx_extension_helper(struct ast_channel *c, char *context, char *exte app = pbx_findapp(e->app); pthread_mutex_unlock(&conlock); if (app) { - strncpy(c->context, context, sizeof(c->context-1)); - strncpy(c->exten, exten, sizeof(c->exten)-1); + if (c->context != context) + strncpy(c->context, context, sizeof(c->context-1)); + if (c->exten != exten) + strncpy(c->exten, exten, sizeof(c->exten)-1); c->priority = priority; pbx_substitute_variables(passdata, sizeof(passdata), c, e); if (option_debug) diff --git a/res/res_musiconhold.c b/res/res_musiconhold.c index b9a680d39..7dd88572b 100755 --- a/res/res_musiconhold.c +++ b/res/res_musiconhold.c @@ -496,7 +496,7 @@ static int moh_register(char *classname, char *mode, char *param, char *miscargs if (!strcasecmp(mode, "mp3") || !strcasecmp(mode, "quietmp3") || !strcasecmp(mode, "httpmp3")) { if (!strcasecmp(mode, "quietmp3")) moh->quiet = 1; - strncpy(moh->dir, param, sizeof(moh->dir)); + strncpy(moh->dir, param, sizeof(moh->dir) - 1); moh->srcfd = -1; #ifdef ZAPATA_MOH /* It's an MP3 Moh -- Open /dev/zap/pseudo for timing... Is |