Change grfmsg to be a macro which checks the debug level first

This is to avoid doing a sprintf when the result will be thrown away
This commit is contained in:
Jonathan G Rennison
2018-05-27 22:28:07 +01:00
parent 0d0d55f81d
commit 641e877441
3 changed files with 5 additions and 2 deletions

View File

@@ -377,7 +377,7 @@ static GRFLineToSpriteOverride _grf_line_to_action6_sprite_override;
* @param severity debugging severity level, see debug.h
* @param str message in printf() format
*/
void CDECL grfmsg(int severity, const char *str, ...)
void CDECL _intl_grfmsg(int severity, const char *str, ...)
{
char buf[1024];
va_list va;

View File

@@ -15,6 +15,7 @@
#include "cargotype.h"
#include "rail_type.h"
#include "fileio_type.h"
#include "debug.h"
#include "core/bitmath_func.hpp"
#include "core/alloc_type.hpp"
#include "core/smallvec_type.hpp"
@@ -188,7 +189,8 @@ void ReloadNewGRFData(); // in saveload/afterload.cpp
void ResetNewGRFData();
void ResetPersistentNewGRFData();
void CDECL grfmsg(int severity, const char *str, ...) WARN_FORMAT(2, 3);
#define grfmsg(severity, ...) if ((severity) == 0 || _debug_grf_level >= (severity)) _intl_grfmsg(severity, __VA_ARGS__)
void CDECL _intl_grfmsg(int severity, const char *str, ...) WARN_FORMAT(2, 3);
bool GetGlobalVariable(byte param, uint32 *value, const GRFFile *grffile);

View File

@@ -9,6 +9,7 @@
/** @file newgrf_class_func.h Implementation of the NewGRF class' functions. */
#include "newgrf.h"
#include "newgrf_class.h"
#include "table/strings.h"