mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-17 10:11:53 +00:00
Merged revisions 46200 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r46200 | kpfleming | 2006-10-25 09:32:08 -0500 (Wed, 25 Oct 2006) | 2 lines apparently developers are still not aware that they should be use ast_copy_string instead of strncpy... fix up many more users, and fix some bugs in the process ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@46201 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -7278,23 +7278,22 @@ static int load_config(void)
|
||||
char *tmpread, *tmpwrite;
|
||||
emailbody = ast_strdup(s);
|
||||
|
||||
/* substitute strings \t and \n into the apropriate characters */
|
||||
/* substitute strings \t and \n into the appropriate characters */
|
||||
tmpread = tmpwrite = emailbody;
|
||||
while ((tmpwrite = strchr(tmpread,'\\'))) {
|
||||
int len = strlen("\n");
|
||||
switch (tmpwrite[1]) {
|
||||
case 'n':
|
||||
strncpy(tmpwrite + len, tmpwrite + 2, strlen(tmpwrite + 2) + 1);
|
||||
strncpy(tmpwrite, "\n", len);
|
||||
*tmpwrite++ = '\n';
|
||||
memmove(tmpwrite, tmpwrite + 1, strlen(tmpwrite + 1) + 1);
|
||||
break;
|
||||
case 't':
|
||||
strncpy(tmpwrite + len, tmpwrite + 2, strlen(tmpwrite + 2) + 1);
|
||||
strncpy(tmpwrite, "\t", len);
|
||||
*tmpwrite++ = '\t';
|
||||
memmove(tmpwrite, tmpwrite + 1, strlen(tmpwrite + 1) + 1);
|
||||
break;
|
||||
default:
|
||||
ast_log(LOG_NOTICE, "Substitution routine does not support this character: %c\n", tmpwrite[1]);
|
||||
}
|
||||
tmpread = tmpwrite + len;
|
||||
tmpread = tmpwrite + 1;
|
||||
}
|
||||
}
|
||||
if ((s = ast_variable_retrieve(cfg, "general", "pagersubject")))
|
||||
@@ -7303,23 +7302,22 @@ static int load_config(void)
|
||||
char *tmpread, *tmpwrite;
|
||||
pagerbody = ast_strdup(s);
|
||||
|
||||
/* substitute strings \t and \n into the apropriate characters */
|
||||
/* substitute strings \t and \n into the appropriate characters */
|
||||
tmpread = tmpwrite = pagerbody;
|
||||
while ((tmpwrite = strchr(tmpread, '\\'))) {
|
||||
int len = strlen("\n");
|
||||
switch (tmpwrite[1]) {
|
||||
case 'n':
|
||||
strncpy(tmpwrite + len, tmpwrite + 2, strlen(tmpwrite + 2) + 1);
|
||||
strncpy(tmpwrite, "\n", len);
|
||||
break;
|
||||
case 't':
|
||||
strncpy(tmpwrite + len, tmpwrite + 2, strlen(tmpwrite + 2) + 1);
|
||||
strncpy(tmpwrite, "\t", len);
|
||||
break;
|
||||
default:
|
||||
ast_log(LOG_NOTICE, "Substitution routine does not support this character: %c\n", tmpwrite[1]);
|
||||
case 'n':
|
||||
*tmpwrite++ = '\n';
|
||||
memmove(tmpwrite, tmpwrite + 1, strlen(tmpwrite + 1) + 1);
|
||||
break;
|
||||
case 't':
|
||||
*tmpwrite++ = '\t';
|
||||
memmove(tmpwrite, tmpwrite + 1, strlen(tmpwrite + 1) + 1);
|
||||
break;
|
||||
default:
|
||||
ast_log(LOG_NOTICE, "Substitution routine does not support this character: %c\n", tmpwrite[1]);
|
||||
}
|
||||
tmpread = tmpwrite + len;
|
||||
tmpread = tmpwrite + 1;
|
||||
}
|
||||
}
|
||||
AST_LIST_UNLOCK(&users);
|
||||
|
Reference in New Issue
Block a user