diff -r d8fccb2cd802 -r 468f4c8d3d5b Orb/Doxygen/src/mangen.cpp --- a/Orb/Doxygen/src/mangen.cpp Fri Apr 23 20:47:58 2010 +0100 +++ b/Orb/Doxygen/src/mangen.cpp Wed Aug 11 14:49:30 2010 +0100 @@ -2,7 +2,7 @@ * * * - * Copyright (C) 1997-2008 by Dimitri van Heesch. + * Copyright (C) 1997-2010 by Dimitri van Heesch. * * Permission to use, copy, modify, and distribute this software and its * documentation under the terms of the GNU General Public License is hereby @@ -100,6 +100,7 @@ static QCString buildFileName(const char *name) { QCString fileName; + if (name==0) return "noname"; const char *p=name; char c; @@ -254,7 +255,7 @@ upperCase=FALSE; } -void ManGenerator::startMemberHeader() +void ManGenerator::startMemberHeader(const char *) { if (!firstCol) t << endl; t << ".SS \""; @@ -407,8 +408,11 @@ // the name of the link file is derived from the name of the anchor: // - truncate after an (optional) :: QCString baseName = name; - int i=baseName.findRev(':'); - if (i!=-1) baseName=baseName.right(baseName.length()-i-1); + int i=baseName.findRev("::"); + if (i!=-1) baseName=baseName.right(baseName.length()-i-2); + + //printf("Converting man link '%s'->'%s'->'%s'\n", + // name,baseName.data(),buildFileName(baseName).data()); // - remove dangerous characters and append suffix, then add dir prefix QCString fileName=dir+"/"+buildFileName( baseName ); @@ -584,9 +588,9 @@ { case SectionInfo::Page: startGroupHeader(); break; case SectionInfo::Section: startGroupHeader(); break; - case SectionInfo::Subsection: startMemberHeader(); break; - case SectionInfo::Subsubsection: startMemberHeader(); break; - case SectionInfo::Paragraph: startMemberHeader(); break; + case SectionInfo::Subsection: startMemberHeader(0); break; + case SectionInfo::Subsubsection: startMemberHeader(0); break; + case SectionInfo::Paragraph: startMemberHeader(0); break; default: ASSERT(0); break; } }