Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

doxypress aborts with SIGABRT processing headers from wt-4.3.0 #36

Closed
marlowa opened this issue Mar 26, 2020 · 5 comments
Closed

doxypress aborts with SIGABRT processing headers from wt-4.3.0 #36

marlowa opened this issue Mar 26, 2020 · 5 comments

Comments

@marlowa
Copy link

marlowa commented Mar 26, 2020

This issue is with doxypress version 1.3.7 on linux (KDE neon which is like ubuntu). While investigating the SEGV that occurs with doxypress when it is processing the wt source code, I made it so it would only process the header files (.h and .hpp only). doxypress gave SIGABRT .This is due to an assertion failure. The stack trace is shown below:

doxypress: src/docparser.cpp:6516: int DocPara::handleCommand(const QString &): Assertion `0' failed.

Program received signal SIGABRT, Aborted.
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
51 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) where
#0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
#1 0x00007ffff1e9a801 in __GI_abort () at abort.c:79
#2 0x00007ffff1e8a39a in __assert_fail_base (fmt=0x7ffff20117d8 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x208527c "0", file=file@entry=0x19d97d1 "src/docparser.cpp", line=line@entry=6516,
function=function@entry=0x19daffb "int DocPara::handleCommand(const QString &)") at assert.c:92
#3 0x00007ffff1e8a412 in __GI___assert_fail (assertion=0x208527c "0", file=0x19d97d1 "src/docparser.cpp", line=6516, function=0x19daffb "int DocPara::handleCommand(const QString &)") at assert.c:101
#4 0x0000000000625d56 in DocPara::handleCommand(QString8 const&) ()
#5 0x000000000060addf in DocPara::parse(bool, int) ()
#6 0x000000000062f094 in DocRoot::parse() ()
#7 0x00000000006305e8 in validatingParseDoc(QString8 const&, int, QSharedPointer, QSharedPointer, QString8 const&, bool, bool, QString8 const&, bool, bool) ()
#8 0x000000000085c9d6 in OutputList::generateDoc(QString8 const&, int, QSharedPointer, QSharedPointer, QString8 const&, bool, bool, QString8 const&, bool, bool) ()
#9 0x0000000000820b04 in MemberDef::writeDocumentation(QSharedPointer, OutputList&, QString8 const&, QSharedPointer, bool, bool, bool) ()
#10 0x0000000000842b80 in MemberList::writeDocumentation(OutputList&, QString8 const&, QSharedPointer, QString8 const&, bool, bool) ()
#11 0x0000000000564c3a in ClassDef::writeMemberDocumentation(OutputList&, MemberListType, QString8 const&, bool) ()
#12 0x0000000000566706 in ClassDef::writeDocumentationContents(OutputList&, QString8 const&) ()
#13 0x0000000000566ffd in ClassDef::writeDocumentation(OutputList&) ()
#14 0x0000000000488405 in Doxy_Work::generateNamespaceDocs() ()
#15 0x0000000000481bb0 in generateOutput() ()
#16 0x00000000007e508f in main ()
(gdb)

@marlowa
Copy link
Author

marlowa commented Mar 27, 2020

After a bit of binary chopping in the Wt source code I finally found what is causing this assertion failure. It is the directive \includedoc. If the filename that follows does not exist then you get the problem. The example header below triggers the assertion.

#ifndef INCLUDED_EXAMPLE
#define INCLUDED_EXAMPLE

class myclass
{
public:
/*! \brief hello

  • \includedoc does_not_exist.dox
    */
    myclass();
    };

#endif

@bgeller
Copy link
Member

bgeller commented Apr 19, 2020

We have not been able to repeat this issue as of yet.

@bgeller
Copy link
Member

bgeller commented May 12, 2020

We generated DoxyPress documentation from a git repo clone of wt and it completed with no crash. Would it be possible for you to email your json project file?

@marlowa
Copy link
Author

marlowa commented May 13, 2020 via email

@agserm
Copy link
Member

agserm commented Nov 6, 2020

Closing, has been resolved. Feel free to reopen if you still have an issue.

@agserm agserm closed this as completed Nov 6, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants