diff options
author | Dimitri van Heesch <doxygen@gmail.com> | 2019-04-21 18:39:15 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-04-21 18:39:15 (GMT) |
commit | f1d248c6873253b0c0628ad69b0aa917601a0fa5 (patch) | |
tree | 71a91ce0901b4104a07e751d508cd8159a6a1c27 /src/util.cpp | |
parent | f241f6c736a5fb59728cfe1af7d1d4d3f384e9a6 (diff) | |
parent | 5428d2fe73e5e80bcf580d0c0506c0e3cff23cc6 (diff) | |
download | Doxygen-f1d248c6873253b0c0628ad69b0aa917601a0fa5.zip Doxygen-f1d248c6873253b0c0628ad69b0aa917601a0fa5.tar.gz Doxygen-f1d248c6873253b0c0628ad69b0aa917601a0fa5.tar.bz2 |
Merge pull request #6922 from albert-github/feature/issue_6917
issue #6917 Crash in php with UTF-8 character
Diffstat (limited to 'src/util.cpp')
-rw-r--r-- | src/util.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/util.cpp b/src/util.cpp index e6fece3..5a69bcb 100644 --- a/src/util.cpp +++ b/src/util.cpp @@ -1869,7 +1869,7 @@ QCString removeRedundantWhiteSpace(const QCString &s) case '@': // '@name' -> ' @name' case '$': // '$name' -> ' $name' case '\'': // ''name' -> '' name' - if (i>0 && i<l-1 && pc!='=' && pc!=':' && !isspace(pc) && + if (i>0 && i<l-1 && pc!='=' && pc!=':' && !isspace((uchar)pc) && isId(nc) && osp<8) // ")id" -> ") id" { *dst++=' '; @@ -1913,14 +1913,14 @@ QCString removeRedundantWhiteSpace(const QCString &s) default: *dst++=c; if (c=='t' && csp==5 && i<l-1 && // found 't' in 'const' - !(isId(nc) || nc==')' || nc==',' || isspace(nc)) + !(isId(nc) || nc==')' || nc==',' || isspace((uchar)nc)) ) // prevent const ::A from being converted to const::A { *dst++=' '; csp=0; } else if (c=='l' && vsp==7 && i<l-1 && // found 'l' in 'virtual' - !(isId(nc) || nc==')' || nc==',' || isspace(nc)) + !(isId(nc) || nc==')' || nc==',' || isspace((uchar)nc)) ) // prevent virtual ::A from being converted to virtual::A { *dst++=' '; @@ -7199,7 +7199,7 @@ bool findAndRemoveWord(QCString &s,const QCString &word) { if (i>0 && isspace((uchar)s.at(i-1))) i--,l++; - else if (i+l<(int)s.length() && isspace(s.at(i+l))) + else if (i+l<(int)s.length() && isspace((uchar)s.at(i+l))) l++; s = s.left(i)+s.mid(i+l); // remove word + spacing return TRUE; |