summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorRay <[email protected]>2023-10-11 12:20:03 +0200
committerRay <[email protected]>2023-10-11 12:20:03 +0200
commit61af8e76310cfc23015e0eaee99c55fb72714a30 (patch)
tree3c43a4543c7d5366166a1efa0f4f178fafabd9d8
parent28fb58f0ea11f0b30b8aaf79d7bb148491ed8775 (diff)
downloadraylib-61af8e76310cfc23015e0eaee99c55fb72714a30.tar.gz
raylib-61af8e76310cfc23015e0eaee99c55fb72714a30.zip
REVIEWED: #3399, Fix #3366
-rw-r--r--src/rcore.c9
-rw-r--r--src/rtext.c8
2 files changed, 8 insertions, 9 deletions
diff --git a/src/rcore.c b/src/rcore.c
index c1c9980b..e7868ebb 100644
--- a/src/rcore.c
+++ b/src/rcore.c
@@ -2922,7 +2922,6 @@ static void PlayAutomationEvent(unsigned int frame)
#if !defined(SUPPORT_MODULE_RTEXT)
// Formatting of text with variables to 'embed'
// WARNING: String returned will expire after this function is called MAX_TEXTFORMAT_BUFFERS times
-
const char *TextFormat(const char *text, ...)
{
#ifndef MAX_TEXTFORMAT_BUFFERS
@@ -2941,14 +2940,14 @@ const char *TextFormat(const char *text, ...)
va_list args;
va_start(args, text);
- int charCountRequired = vsnprintf(currentBuffer, MAX_TEXT_BUFFER_LENGTH, text, args);
+ int requiredByteCount = vsnprintf(currentBuffer, MAX_TEXT_BUFFER_LENGTH, text, args);
va_end(args);
- // If charCountRequired is larger than the MAX_TEXT_BUFFER_LENGTH, then overflow occured
- if(charCountRequired > MAX_TEXT_BUFFER_LENGTH)
+ // If requiredByteCount is larger than the MAX_TEXT_BUFFER_LENGTH, then overflow occured
+ if (requiredByteCount >= MAX_TEXT_BUFFER_LENGTH)
{
// We are going to insert [TRUN] at the end of the string so the user knows what happened
- char *truncBuffer = buffers[index] + MAX_TEXT_BUFFER_LENGTH - 7; // 7 = six letters + '\0'
+ char *truncBuffer = buffers[index] + MAX_TEXT_BUFFER_LENGTH - 7; // Adding 7 bytes = six char + '\0'
sprintf(truncBuffer, "[TRUN]");
}
diff --git a/src/rtext.c b/src/rtext.c
index 16b65507..593fdb53 100644
--- a/src/rtext.c
+++ b/src/rtext.c
@@ -1371,14 +1371,14 @@ const char *TextFormat(const char *text, ...)
va_list args;
va_start(args, text);
- int charCountRequired = vsnprintf(currentBuffer, MAX_TEXT_BUFFER_LENGTH, text, args);
+ int requiredByteCount = vsnprintf(currentBuffer, MAX_TEXT_BUFFER_LENGTH, text, args);
va_end(args);
- // If charCountRequired is larger than the MAX_TEXT_BUFFER_LENGTH, then overflow occured
- if(charCountRequired > MAX_TEXT_BUFFER_LENGTH)
+ // If requiredByteCount is larger than the MAX_TEXT_BUFFER_LENGTH, then overflow occured
+ if (requiredByteCount >= MAX_TEXT_BUFFER_LENGTH)
{
// We are going to insert [TRUN] at the end of the string so the user knows what happened
- char *truncBuffer = buffers[index] + MAX_TEXT_BUFFER_LENGTH - 7; // 7 = six letters + '\0'
+ char *truncBuffer = buffers[index] + MAX_TEXT_BUFFER_LENGTH - 7; // Adding 7 bytes = six chars + '\0'
sprintf(truncBuffer, "[TRUN]");
}