https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r272921 | tilghman | 2010-06-28 16:29:27 -0500 (Mon, 28 Jun 2010) | 8 lines
Change the way that we read include files, to accommodate for changes in GCC 4.4.
(closes issue #17472)
Reported by: seandarcy
Patches:
config2.patch uploaded by nivan (license 1066)
Tested by: nivan
........
r272922 | tilghman | 2010-06-28 16:38:49 -0500 (Mon, 28 Jun 2010) | 2 lines
Also trim trailing blanks on #includes
........
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@272923
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
if (*c) {
*c = '\0';
/* Find real argument */
- c = ast_skip_blanks(c + 1);
+ c = ast_strip(c + 1);
if (!(*c)) {
c = NULL;
}
- } else
+ } else {
c = NULL;
+ }
if (!strcasecmp(cur, "include")) {
do_include = 1;
} else if (!strcasecmp(cur, "exec")) {
cur = c;
/* Strip off leading and trailing "'s and <>'s */
- if (*c == '"') {
- /* Dequote */
- while (*c) {
- if (*c == '"') {
- strcpy(c, c + 1); /* SAFE */
- c--;
- } else if (*c == '\\') {
- strcpy(c, c + 1); /* SAFE */
- }
- c++;
+ /* Dequote */
+ if ((*c == '"') || (*c == '<')) {
+ char quote_char = *c;
+ if (quote_char == '<') {
+ quote_char = '>';
}
- } else if (*c == '<') {
- /* C-style include */
- if (*(c + strlen(c) - 1) == '>') {
+
+ if (*(c + strlen(c) - 1) == quote_char) {
cur++;
*(c + strlen(c) - 1) = '\0';
}