Parcourir la source

REVIEWED: `TraceLog()`, avoid possible buffer overflow

pull/2958/head
Ray il y a 2 ans
Parent
révision
ad2067340f
1 fichiers modifiés avec 3 ajouts et 2 suppressions
  1. +3
    -2
      src/utils.c

+ 3
- 2
src/utils.c Voir le fichier

@ -54,7 +54,7 @@
// Defines and Macros
//----------------------------------------------------------------------------------
#ifndef MAX_TRACELOG_MSG_LENGTH
#define MAX_TRACELOG_MSG_LENGTH 128 // Max length of one trace-log message
#define MAX_TRACELOG_MSG_LENGTH 256 // Max length of one trace-log message
#endif
//----------------------------------------------------------------------------------
@ -145,7 +145,8 @@ void TraceLog(int logType, const char *text, ...)
default: break;
}
strcat(buffer, text);
unsigned int textSize = strlen(text);
memcpy(buffer + strlen(buffer), text, (textSize < (MAX_TRACELOG_MSG_LENGTH - 12))? textSize : (MAX_TRACELOG_MSG_LENGTH - 12));
strcat(buffer, "\n");
vprintf(buffer, args);
fflush(stdout);

Chargement…
Annuler
Enregistrer