diff options
author | albert-github <albert.tests@gmail.com> | 2019-01-07 17:48:13 (GMT) |
---|---|---|
committer | albert-github <albert.tests@gmail.com> | 2019-01-07 17:48:13 (GMT) |
commit | c26c5fc4fb852098c7188e7762778c87a50771cb (patch) | |
tree | baffab73dd0c2e09c36f26f4b52469b516917392 | |
parent | 62712c703b377777a80b61e3ce7e7595771c2ad5 (diff) | |
download | Doxygen-c26c5fc4fb852098c7188e7762778c87a50771cb.zip Doxygen-c26c5fc4fb852098c7188e7762778c87a50771cb.tar.gz Doxygen-c26c5fc4fb852098c7188e7762778c87a50771cb.tar.bz2 |
issue #6749 doxygen 1.8.15 segfault
An empty string was defined in a `<a href="">` resulting in a null pointer access.
-rw-r--r-- | src/util.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/util.cpp b/src/util.cpp index f9c2492..9a0e513 100644 --- a/src/util.cpp +++ b/src/util.cpp @@ -5444,6 +5444,7 @@ QCString escapeCharsInString(const char *name,bool allowDots,bool allowUnderscor static bool allowUnicodeNames = Config_getBool(ALLOW_UNICODE_NAMES); static GrowBuf growBuf; growBuf.clear(); + if (name==0) return ""; char c; const char *p=name; while ((c=*p++)!=0) @@ -6962,6 +6963,7 @@ void filterLatexString(FTextStream &t,const char *str, QCString latexEscapeLabelName(const char *s) { + if (s==0) return ""; QGString result; QCString tmp(qstrlen(s)+1); FTextStream t(&result); @@ -6999,6 +7001,7 @@ QCString latexEscapeLabelName(const char *s) QCString latexEscapeIndexChars(const char *s) { + if (s==0) return ""; QGString result; QCString tmp(qstrlen(s)+1); FTextStream t(&result); @@ -7037,6 +7040,7 @@ QCString latexEscapeIndexChars(const char *s) QCString latexEscapePDFString(const char *s) { + if (s==0) return ""; QGString result; FTextStream t(&result); const char *p=s; @@ -7061,6 +7065,7 @@ QCString latexEscapePDFString(const char *s) QCString latexFilterURL(const char *s) { + if (s==0) return ""; QGString result; FTextStream t(&result); const char *p=s; |