Add compile-time check for trailing con_printf newline
This commit is contained in:
parent
7f2974ea69
commit
2088dcc0f3
|
@ -51,7 +51,16 @@ static inline void con_puts_literal(int level, const char (&str)[len])
|
|||
}
|
||||
#define con_puts(A1,S,...) (con_puts(A1,S, _dxx_call_puts_parameter2(1, ## __VA_ARGS__, strlen(S))))
|
||||
void con_printf(int level, const char *fmt, ...) __attribute_format_printf(2, 3);
|
||||
#define con_printf(A1,F,...) dxx_call_printf_checked(con_printf,con_puts_literal,(A1),(F),##__VA_ARGS__)
|
||||
#ifdef DXX_HAVE_BUILTIN_CONSTANT_P
|
||||
#define _dxx_con_printf_check_trailing_newline(F) \
|
||||
(sizeof((F)) > 1 && (F)[sizeof((F)) - 2] == '\n' && \
|
||||
(DXX_ALWAYS_ERROR_FUNCTION(dxx_trap_trailing_newline, "trailing literal newline on con_printf"), 0)),
|
||||
#else
|
||||
#define _dxx_con_printf_check_trailing_newline(C)
|
||||
#endif
|
||||
#define con_printf(A1,F,...) \
|
||||
_dxx_con_printf_check_trailing_newline(F) \
|
||||
dxx_call_printf_checked(con_printf,con_puts_literal,(A1),(F),##__VA_ARGS__)
|
||||
void con_showup(void);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -411,16 +411,16 @@ int main(int argc, char *argv[])
|
|||
con_printf(CON_NORMAL, "%s %s", DESCENT_VERSION, g_descent_build_datetime); // D1X version
|
||||
con_printf(CON_NORMAL, "This is a MODIFIED version of Descent, based on %s.", BASED_VERSION);
|
||||
con_printf(CON_NORMAL, "%s\n%s",TXT_COPYRIGHT,TXT_TRADEMARK);
|
||||
con_printf(CON_NORMAL, "Copyright (C) 2005-2013 Christian Beckhaeuser\n");
|
||||
con_printf(CON_NORMAL, "Copyright (C) 2005-2013 Christian Beckhaeuser");
|
||||
#elif defined(DXX_BUILD_DESCENT_II)
|
||||
con_printf(CON_NORMAL, "%s%s %s", DESCENT_VERSION, PHYSFSX_exists(MISSION_DIR "d2x.hog",1) ? " Vertigo Enhanced" : "", g_descent_build_datetime); // D2X version
|
||||
con_printf(CON_NORMAL, "This is a MODIFIED version of Descent 2, based on %s.", BASED_VERSION);
|
||||
con_printf(CON_NORMAL, "%s\n%s",TXT_COPYRIGHT,TXT_TRADEMARK);
|
||||
con_printf(CON_NORMAL, "Copyright (C) 1999 Peter Hawkins, 2002 Bradley Bell, 2005-2013 Christian Beckhaeuser\n");
|
||||
con_printf(CON_NORMAL, "Copyright (C) 1999 Peter Hawkins, 2002 Bradley Bell, 2005-2013 Christian Beckhaeuser");
|
||||
#endif
|
||||
|
||||
if (GameArg.DbgVerbose)
|
||||
con_printf(CON_VERBOSE,"%s%s", TXT_VERBOSE_1, "");
|
||||
con_puts(CON_VERBOSE, TXT_VERBOSE_1);
|
||||
|
||||
ReadConfigFile();
|
||||
|
||||
|
|
Loading…
Reference in a new issue