Package: doxygen
Version: 1.8.1.2-2
Severity: minor

Dear Maintainer,

Doxygen does not close <ul> tags if next TOC item is more than one level
higher in hierarchy. Following patch likely fixes the problem:

Index: doxygen-1.8.1.2/src/definition.cpp
===================================================================
--- doxygen-1.8.1.2.orig/src/definition.cpp     2014-07-09 03:05:37.000000000 
+0400
+++ doxygen-1.8.1.2/src/definition.cpp  2014-07-09 03:25:39.000000000 +0400
@@ -445,8 +445,11 @@
       else if (nextLevel<level)
       {
         if (inLi[level]) ol.writeString("</li>\n");
-        inLi[level]=FALSE;
-        ol.writeString("</ul>\n");
+        for (int i = level; i > nextLevel; i--)
+        {
+          inLi[i]=FALSE;
+          ol.writeString("</ul>\n");
+        }
       }
       cs[0]='0'+nextLevel;
       if (inLi[nextLevel]) ol.writeString("</li>\n");


-- System Information:
Debian Release: 7.4
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.2.0-4-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages doxygen depends on:
ii  libc6       2.13-38+deb7u1
ii  libgcc1     1:4.7.2-5
ii  libstdc++6  4.7.2-5

Versions of packages doxygen recommends:
ii  doxygen-latex  1.8.1.2-2

Versions of packages doxygen suggests:
ii  doxygen-doc  1.8.1.2-2
ii  doxygen-gui  1.8.1.2-2
ii  graphviz     2.26.3-14+deb7u1

-- no debconf information
Index: doxygen-1.8.1.2/src/definition.cpp
===================================================================
--- doxygen-1.8.1.2.orig/src/definition.cpp	2014-07-09 03:05:37.000000000 +0400
+++ doxygen-1.8.1.2/src/definition.cpp	2014-07-09 03:25:39.000000000 +0400
@@ -445,8 +445,11 @@
       else if (nextLevel<level)
       {
         if (inLi[level]) ol.writeString("</li>\n");
-        inLi[level]=FALSE;
-        ol.writeString("</ul>\n");
+        for (int i = level; i > nextLevel; i--)
+        {
+          inLi[i]=FALSE;
+          ol.writeString("</ul>\n");
+        }
       }
       cs[0]='0'+nextLevel;
       if (inLi[nextLevel]) ol.writeString("</li>\n");

Reply via email to