From 31505eb34565b2e39d113b7f5460645d02ad6d2e Mon Sep 17 00:00:00 2001 From: Dimitri van Heesch Date: Sat, 18 Jan 2014 11:56:36 +0100 Subject: [PATCH] Fixed potential crash caused by overloading the variadic warn function --- src/message.cpp | 2 +- src/message.h | 2 +- src/template.cpp | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/message.cpp b/src/message.cpp index ff5dac28bc1..dad3e0eb1e3 100644 --- a/src/message.cpp +++ b/src/message.cpp @@ -172,7 +172,7 @@ void warn(const char *file,int line,const char *fmt, ...) va_end(args); } -void warn(const char *file,int line,const char *fmt,va_list args) +void va_warn(const char *file,int line,const char *fmt,va_list args) { do_warn("WARNINGS", file, line, warning_str, fmt, args); } diff --git a/src/message.h b/src/message.h index 2875e8144a4..ca76a203ccf 100644 --- a/src/message.h +++ b/src/message.h @@ -23,7 +23,7 @@ extern void msg(const char *fmt, ...); extern void warn(const char *file,int line,const char *fmt, ...); -extern void warn(const char *file,int line,const char *fmt, va_list args); +extern void va_warn(const char *file,int line,const char *fmt, va_list args); extern void warn_simple(const char *file,int line,const char *text); extern void warn_undoc(const char *file,int line,const char *fmt, ...); extern void warn_doc_error(const char *file,int line,const char *fmt, ...); diff --git a/src/template.cpp b/src/template.cpp index 793d7693b2b..ea3c67396b2 100644 --- a/src/template.cpp +++ b/src/template.cpp @@ -1713,7 +1713,7 @@ void TemplateContextImpl::warn(const char *fileName,int line,const char *fmt,... { va_list args; va_start(args,fmt); - ::warn(fileName,line,fmt,args); + va_warn(fileName,line,fmt,args); va_end(args); m_engine->printIncludeContext(fileName,line); } @@ -3342,7 +3342,7 @@ void TemplateParser::warn(const char *fileName,int line,const char *fmt,...) con { va_list args; va_start(args,fmt); - ::warn(fileName,line,fmt,args); + va_warn(fileName,line,fmt,args); va_end(args); m_engine->printIncludeContext(fileName,line); }