[asterisk-commits] seanbright: branch 1.4 r152059 - /branches/1.4/funcs/func_strings.c
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Sun Oct 26 15:23:36 CDT 2008
Author: seanbright
Date: Sun Oct 26 15:23:36 2008
New Revision: 152059
URL: http://svn.digium.com/view/asterisk?view=rev&rev=152059
Log:
Since passing \0 as the second argument to strchr is valid (and will
match the trailing \0 of a string) we need to check that first, otherwise
we end up with incorrect results. Fix suggested by reporter.
(closes issue #13787)
Reported by: meitinger
Modified:
branches/1.4/funcs/func_strings.c
Modified: branches/1.4/funcs/func_strings.c
URL: http://svn.digium.com/view/asterisk/branches/1.4/funcs/func_strings.c?view=diff&rev=152059&r1=152058&r2=152059
==============================================================================
--- branches/1.4/funcs/func_strings.c (original)
+++ branches/1.4/funcs/func_strings.c Sun Oct 26 15:23:36 2008
@@ -573,7 +573,10 @@
char *bufptr, *dataptr;
for (bufptr = buf, dataptr = data; bufptr < buf + len - 1; dataptr++) {
- if (*dataptr == '1') {
+ if (*dataptr == '\0') {
+ *bufptr++ = '\0';
+ break;
+ } else if (*dataptr == '1') {
*bufptr++ = '1';
} else if (strchr("AaBbCc2", *dataptr)) {
*bufptr++ = '2';
@@ -593,9 +596,6 @@
*bufptr++ = '9';
} else if (*dataptr == '0') {
*bufptr++ = '0';
- } else if (*dataptr == '\0') {
- *bufptr++ = '\0';
- break;
}
}
buf[len - 1] = '\0';
More information about the asterisk-commits
mailing list