rlutil
rlutil copied to clipboard
`setConsoleTitle` strings
There is a problem with the setConsoleTitle function. It uses const char * as string parameter for the print function when compiling with C++. This seems to be a problem because when compiling with clang++ and with the flag -fsanitizer=memory, I just get a warning about uninitialized value at the line:
RLUTIL_PRINT(true_title);
So, I'd advise to change the code of that function to:
RLUTIL_INLINE void setConsoleTitle(RLUTIL_STRING_T title) {
#if defined(_WIN32) && !defined(RLUTIL_USE_ANSI)
#ifdef __cplusplus
SetConsoleTitleA(title.c_str());
#else
SetConsoleTitleA(title);
#endif
#else
RLUTIL_PRINT(ANSI_CONSOLE_TITLE_PRE);
RLUTIL_PRINT(title);
RLUTIL_PRINT(ANSI_CONSOLE_TITLE_POST);
#endif // defined(_WIN32) && !defined(RLUTIL_USE_ANSI)
}
Looks :+1: if it's not a false positive. Submit a PR.
I just checked and I think it is a false positive, sorry.
It did seem to be :P
@MangaD It could be that whatever you're passing as title has uninitialized bytes or something.
@kirbyfan64 I am inclined to believe that it is related with libstdc++ not being compiled with memory sanitizer, not sure though.