Codebase list doxygen / 1da52ed
Add upstream patch to fix a crash failure in websocketpp and other projects using clang based parsing helper Gianfranco Costamagna 3 years ago
3 changed file(s) with 55 addition(s) and 0 deletion(s). Raw diff Collapse all Expand all
0 doxygen (1.8.20-3) unstable; urgency=medium
1
2 * Team upload (salsa.d.o namespace)
3 * debian/patches/d067baf495d0415283ce724ad32cb9a08dc17c83.patch:
4 - cherry-pick upstream fix for crash during parse with CLANG helper
5 (Closes: #969141)
6
7 -- Gianfranco Costamagna <locutusofborg@debian.org> Thu, 01 Oct 2020 23:23:51 +0200
8
09 doxygen (1.8.20-2) unstable; urgency=medium
110
211 [ Scott Talbert ]
0 From d067baf495d0415283ce724ad32cb9a08dc17c83 Mon Sep 17 00:00:00 2001
1 From: Dimitri van Heesch <doxygen@gmail.com>
2 Date: Thu, 17 Sep 2020 20:14:39 +0200
3 Subject: [PATCH] issue #8034: doxygen crashes
4
5 ---
6 src/definition.cpp | 6 +++---
7 src/util.cpp | 2 +-
8 2 files changed, 4 insertions(+), 4 deletions(-)
9
10 diff --git a/src/definition.cpp b/src/definition.cpp
11 index 7874a5e44..dc968399b 100644
12 --- a/src/definition.cpp
13 +++ b/src/definition.cpp
14 @@ -176,14 +176,14 @@ static bool matchExcludedSymbols(const char *name)
15 QRegExp re(substitute(pattern,"*",".*"),TRUE);
16 int pl;
17 int i = re.match(symName,0,&pl);
18 - //printf(" %d = re.match(%s) pattern=%s\n",i,symName.data(),pattern.data());
19 + //printf(" %d = re.match(%s) pattern=%s pl=%d len=%d\n",i,symName.data(),pattern.data(),pl,symName.length());
20 if (i!=-1) // wildcard match
21 {
22 uint ui=(uint)i;
23 uint sl=symName.length();
24 // check if it is a whole word match
25 - if ((ui==0 || pattern.at(0)=='*' || (!isId(symName.at(ui-1)) && !forceStart)) &&
26 - (ui+pl==sl || pattern.at(ui+pl)=='*' || (!isId(symName.at(ui+pl)) && !forceEnd))
27 + if ((ui==0 || pattern.at(0)=='*' || (!isId(symName.at(ui-1)) && !forceStart)) &&
28 + (ui+pl==sl || pattern.at(pattern.length()-1)=='*' || (!isId(symName.at(ui+pl)) && !forceEnd))
29 )
30 {
31 //printf("--> name=%s pattern=%s match at %d\n",symName.data(),pattern.data(),i);
32 diff --git a/src/util.cpp b/src/util.cpp
33 index 0581b5fad..34df8d7b4 100644
34 --- a/src/util.cpp
35 +++ b/src/util.cpp
36 @@ -5714,7 +5714,7 @@ QCString normalizeNonTemplateArgumentsInString(
37 result += name.mid(p,i-p);
38 QCString n = name.mid(i,l);
39 bool found=FALSE;
40 - for (const Argument formArg : formalArgs)
41 + for (const Argument &formArg : formalArgs)
42 {
43 if (formArg.name == n)
44 {
1313 reproducible_manpages.diff
1414 sass_fix.diff
1515 doxygen-1.8.20-enums-multiple-files.patch
16 d067baf495d0415283ce724ad32cb9a08dc17c83.patch