Skip to content

Commit 85302c1

Browse files
authored
Merge pull request #54 from junjihashimoto/fix/va_list
Fix va_list reuse
2 parents 56b9325 + 8c3c5f0 commit 85302c1

1 file changed

Lines changed: 5 additions & 2 deletions

File tree

utils/logging.h

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,15 +59,17 @@ namespace gpu
5959
if (level <= logger.level)
6060
{
6161
va_list args;
62+
va_list args2;
6263
va_start(args, message);
64+
va_copy(args2, args);
6365

6466
int size = vsnprintf(nullptr, 0, message, args) + 1;
6567
std::unique_ptr<char[]> buffer(new char[size]);
6668

6769
#ifdef _WIN32
68-
_vsnprintf_s(buffer.get(), size, _TRUNCATE, message, args);
70+
_vsnprintf_s(buffer.get(), size, _TRUNCATE, message, args2);
6971
#else
70-
vsnprintf(buffer.get(), size, message, args);
72+
vsnprintf(buffer.get(), size, message, args2);
7173
#endif
7274

7375
// Brackets and messages are white.
@@ -77,6 +79,7 @@ namespace gpu
7779
logger.stream << buffer.get();
7880
logger.stream << reset << std::endl;
7981
va_end(args);
82+
va_end(args2);
8083
}
8184
}
8285
#else

0 commit comments

Comments
 (0)