summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDimitri van Heesch <doxygen@gmail.com>2019-05-07 19:05:29 (GMT)
committerDimitri van Heesch <doxygen@gmail.com>2019-05-07 19:05:29 (GMT)
commitc7edc00776fccc54b3ad96b218df8843229a5002 (patch)
tree48de2f3b06d86b84768d4d32c3ceeee97397a894 /src
parenta216d135700190d0b064c872d5c78a286c3682c4 (diff)
parenta0edd8c583aec5bb65c60eb030ad237f65d52b6c (diff)
downloadDoxygen-c7edc00776fccc54b3ad96b218df8843229a5002.zip
Doxygen-c7edc00776fccc54b3ad96b218df8843229a5002.tar.gz
Doxygen-c7edc00776fccc54b3ad96b218df8843229a5002.tar.bz2
Merge branch 'master' of github.com:doxygen/doxygen
Diffstat (limited to 'src')
-rw-r--r--src/CMakeLists.txt4
-rw-r--r--src/config.xml11
-rw-r--r--src/doxygen.cpp2
-rw-r--r--src/message.cpp14
4 files changed, 17 insertions, 14 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 92a302a..37a21ff 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -43,6 +43,10 @@ add_custom_command(
OUTPUT ${GENERATED_SRC}/configvalues.h
)
set_source_files_properties(${GENERATED_SRC}/configvalues.h PROPERTIES GENERATED 1)
+add_custom_target(
+ generate_configvalues_header
+ DEPENDS ${GENERATED_SRC}/configvalues.h
+)
# configvalues.cpp
add_custom_command(
diff --git a/src/config.xml b/src/config.xml
index 8820fe7..0b26571 100644
--- a/src/config.xml
+++ b/src/config.xml
@@ -105,7 +105,6 @@ PROJECT_NAME = Example
INPUT = example.cc example.h
WARNINGS = YES
TAGFILES = qt.tag
-PERL_PATH = /usr/local/bin/perl
SEARCHENGINE = NO
\endverbatim
@@ -120,7 +119,6 @@ INPUT = examples/examples.doc src
FILE_PATTERNS = *.cc *.h
INCLUDE_PATH = examples
TAGFILES = qt.tag
-PERL_PATH = /usr/bin/perl
SEARCHENGINE = YES
\endverbatim
@@ -3229,14 +3227,6 @@ where `loc1` and `loc2` can be relative or absolute paths or URLs.
]]>
</docs>
</option>
- <option type='string' id='PERL_PATH' format='file' defval='/usr/bin/perl' abspath='1'>
- <docs>
-<![CDATA[
- The \c PERL_PATH should be the absolute path and name of the perl script
- interpreter (i.e. the result of `'which perl'`).
-]]>
- </docs>
- </option>
</group>
<group name='Dot' docs='Configuration options related to the dot tool'>
<option type='bool' id='CLASS_DIAGRAMS' defval='1'>
@@ -3639,5 +3629,6 @@ remove the intermediate dot files that are used to generate the various graphs.
<option type='obsolete' id='SYMBOL_CACHE_SIZE'/>
<option type='obsolete' id='XML_SCHEMA'/>
<option type='obsolete' id='XML_DTD'/>
+ <option type='obsolete' id='PERL_PATH'/>
</group>
</doxygenconfig>
diff --git a/src/doxygen.cpp b/src/doxygen.cpp
index 4fcd157..dd32a8e 100644
--- a/src/doxygen.cpp
+++ b/src/doxygen.cpp
@@ -5614,7 +5614,7 @@ static bool findGlobalMember(Entry *root,
warnMsg+=" '";
warnMsg+=substitute(md->declaration(),"%","%%");
warnMsg+="' at line "+QCString().setNum(md->getDefLine())+
- " of file"+md->getDefFileName()+"\n";
+ " of file "+md->getDefFileName()+"\n";
}
}
warn(root->fileName,root->startLine,warnMsg);
diff --git a/src/message.cpp b/src/message.cpp
index 2f3a06f..2e3e41a 100644
--- a/src/message.cpp
+++ b/src/message.cpp
@@ -167,17 +167,25 @@ static void format_warn(const char *file,int line,const char *text)
static void do_warn(bool enabled, const char *file, int line, const char *prefix, const char *fmt, va_list args)
{
if (!enabled) return; // warning type disabled
- const int bufSize = 40960;
- char text[bufSize];
int l=0;
if (prefix)
{
- qstrncpy(text,prefix,bufSize);
l=strlen(prefix);
}
+ // determine needed buffersize based on:
+ // format + arguments
+ // prefix
+ // 1 position for `\0`
+ int bufSize = vsnprintf(NULL, 0, fmt, args) + l + 1;
+ char *text = (char *)malloc(sizeof(char) * bufSize);
+ if (prefix)
+ {
+ qstrncpy(text,prefix,bufSize);
+ }
vsnprintf(text+l, bufSize-l, fmt, args);
text[bufSize-1]='\0';
format_warn(file,line,text);
+ free(text);
}
void warn(const char *file,int line,const char *fmt, ...)