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)
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