From: lordhavoc Date: Fri, 2 Nov 2001 10:54:24 +0000 (+0000) Subject: minor buffer-size-safe improvement in Sys_Printf, and some other changes to it X-Git-Tag: RELEASE_0_2_0_RC1~743 X-Git-Url: https://git.xonotic.org/?a=commitdiff_plain;h=0f4297bb7875109e0ebb376790b0561fd1287d2c;p=xonotic%2Fdarkplaces.git minor buffer-size-safe improvement in Sys_Printf, and some other changes to it git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@999 d7cf8633-e32d-0410-b094-e92efae38249 --- diff --git a/sys_shared.c b/sys_shared.c index 85ad4648..719bce79 100644 --- a/sys_shared.c +++ b/sys_shared.c @@ -84,25 +84,27 @@ void Sys_Printf (char *fmt, ...) mytime = time (NULL); local = localtime (&mytime); strftime (stamp, sizeof (stamp), timeformat.string, local); - + snprintf (final, sizeof (final), "%s%s", stamp, start); } else snprintf (final, sizeof (final), "%s", start); - for (p = (unsigned char *) final; *p; p++) + // LordHavoc: make sure the string is terminated + final[MAX_PRINT_MSG - 1] = 0; + for (p = (unsigned char *) final;*p; p++) *p = qfont_table[*p]; #ifdef WIN32 if (cls.state == ca_dedicated) - WriteFile(houtput, final, strlen (final), &dummy, NULL); + WriteFile(houtput, final, strlen (final), &dummy, NULL); #else - puts(final); + printf("%s", final); #endif // for (p = (unsigned char *) final; *p; p++) // putc (qfont_table[*p], stdout); -#ifndef WIN32 - fflush (stdout); -#endif +//#ifndef WIN32 +// fflush (stdout); +//#endif } void Sys_Shared_Init(void)