diff options
author | albert-github <albert.tests@gmail.com> | 2019-05-01 17:53:08 (GMT) |
---|---|---|
committer | albert-github <albert.tests@gmail.com> | 2019-05-01 17:53:08 (GMT) |
commit | 1532b5ae1b607857b85d6f94944e570dd597a08b (patch) | |
tree | 575442aed9e281726e3204d15b0bb3bd03b523db /src/util.cpp | |
parent | ac76b9a7a70b3c828c76442f5977937fcb87811a (diff) | |
download | Doxygen-1532b5ae1b607857b85d6f94944e570dd597a08b.zip Doxygen-1532b5ae1b607857b85d6f94944e570dd597a08b.tar.gz Doxygen-1532b5ae1b607857b85d6f94944e570dd597a08b.tar.bz2 |
issue #6950 XML - <initializer> for array of structure only contains references in first array element
Don't stop at a hexadecimal number, but output the hexadecimal number (plus the part that has not been printed yet) and continue with the next input part.
Diffstat (limited to 'src/util.cpp')
-rw-r--r-- | src/util.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/util.cpp b/src/util.cpp index 2719c73..bbd5773 100644 --- a/src/util.cpp +++ b/src/util.cpp @@ -2031,10 +2031,16 @@ void linkifyText(const TextGeneratorIntf &out, const Definition *scope, int floatingIndex=0; if (strLen==0) return; // read a word from the text string - while ((newIndex=regExp.match(txtStr,index,&matchLen))!=-1 && - (newIndex==0 || !(txtStr.at(newIndex-1)>='0' && txtStr.at(newIndex-1)<='9')) // avoid matching part of hex numbers - ) + newIndex=regExp.match(txtStr,index,&matchLen); + while ((newIndex=regExp.match(txtStr,index,&matchLen))!=-1) { + if (!(newIndex == 0 || !(txtStr.at(newIndex-1)>='0' && txtStr.at(newIndex-1)<='9'))) // avoid matching part of hex numbers + { + out.writeString(txtStr.mid(skipIndex,newIndex+matchLen-skipIndex),keepSpaces); + floatingIndex+=newIndex-skipIndex+matchLen; + skipIndex=index=newIndex+matchLen; + continue; + } // add non-word part to the result floatingIndex+=newIndex-skipIndex+matchLen; bool insideString=FALSE; |