














































































































+hello
-this is supported
+ just add \`\`\`diff
+ im greener than weed
+ g r e e n
- r e d






Hacker News • 2023-08-08 10:40:32Z 










void CConsole::RegisterTemp(const char *pName, const char *pParams, int Flags, const char *pHelp)
{
CCommand *pCommand;
if(m_pRecycleList)
{
pCommand = m_pRecycleList;
str_copy(const_cast<char *>(pCommand->m_pName), pName, TEMPCMD_NAME_LENGTH);
str_copy(const_cast<char *>(pCommand->m_pHelp), pHelp, TEMPCMD_HELP_LENGTH);
str_copy(const_cast<char *>(pCommand->m_pParams), pParams, TEMPCMD_PARAMS_LENGTH);
m_pRecycleList = m_pRecycleList->m_pNext;
}
else
{
pCommand = new(m_TempCommands.Allocate(sizeof(CCommand))) CCommand;
char *pMem = static_cast<char *>(m_TempCommands.Allocate(TEMPCMD_NAME_LENGTH));
str_copy(pMem, pName, TEMPCMD_NAME_LENGTH);
pCommand->m_pName = pMem;
pMem = static_cast<char *>(m_TempCommands.Allocate(TEMPCMD_HELP_LENGTH));
str_copy(pMem, pHelp, TEMPCMD_HELP_LENGTH);
pCommand->m_pHelp = pMem;
pMem = static_cast<char *>(m_TempCommands.Allocate(TEMPCMD_PARAMS_LENGTH));
str_copy(pMem, pParams, TEMPCMD_PARAMS_LENGTH);
pCommand->m_pParams = pMem;
}
RegisterTemp should not be called for config variable throughCConsole::Register it just takes the const char *pName directly


char m_aCommandName[IConsole::TEMPCMD_NAME_LENGTH];
char m_aCommandHelp[IConsole::TEMPCMD_HELP_LENGTH];
char m_aCommandParams[IConsole::TEMPCMD_PARAMS_LENGTH];game/client/components/console.h, so the local console is also limited to these valueschar aBuf[sizeof(m_aCommandName)] in console.cpp
"" instead





















=================================================================
==30048==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 72704 byte(s) in 1 object(s) allocated from:
#0 0x5579de1ea43e in malloc (/data1/edgar/ddnet/build/DDNet+0x13c843e)
#1 0x7f2902140f65 (<unknown module>)
#2 0x7f29020c9caa (<unknown module>)
Direct leak of 6360 byte(s) in 5 object(s) allocated from:
#0 0x5579de1ea578 in calloc (/data1/edgar/ddnet/build/DDNet+0x13c8578)
#1 0x7f29165f2150 (<unknown module>)
Direct leak of 1152 byte(s) in 1 object(s) allocated from:
#0 0x5579de1ea705 in realloc (/data1/edgar/ddnet/build/DDNet+0x13c8705)
#1 0x7f29165f28e6 (<unknown module>)
Direct leak of 368 byte(s) in 3 object(s) allocated from:
#0 0x5579de1ea43e in malloc (/data1/edgar/ddnet/build/DDNet+0x13c843e)
#1 0x7f29030a1377 (<unknown module>)
Direct leak of 176 byte(s) in 1 object(s) allocated from:
#0 0x5579de1ea578 in calloc (/data1/edgar/ddnet/build/DDNet+0x13c8578)
#1 0x7f2921c36bde (/usr/lib64/libdbus-1.so.3+0x30bde)
Direct leak of 8 byte(s) in 1 object(s) allocated from:
#0 0x5579de1ea43e in malloc (/data1/edgar/ddnet/build/DDNet+0x13c843e)
#1 0x7f29165f1824 (<unknown module>)
Indirect leak of 164592 byte(s) in 521 object(s) allocated from:
#0 0x5579de1ea578 in calloc (/data1/edgar/ddnet/build/DDNet+0x13c8578)
#1 0x7f29165f2150 (<unknown module>)
Indirect leak of 9650 byte(s) in 264 object(s) allocated from:
#0 0x5579de1ea43e in malloc (/data1/edgar/ddnet/build/DDNet+0x13c843e)
#1 0x7f2902e40e53 (<unknown module>)
Indirect leak of 6156 byte(s) in 1 object(s) allocated from:
#0 0x5579de1ea578 in calloc (/data1/edgar/ddnet/build/DDNet+0x13c8578)
#1 0x7f2902e5b8f5 (<unknown module>)
Indirect leak of 5791 byte(s) in 430 object(s) allocated from:
#0 0x5579de1ea43e in malloc (/data1/edgar/ddnet/build/DDNet+0x13c843e)
#1 0x7f29165f1824 (<unknown module>)
Indirect leak of 5665 byte(s) in 17 object(s) allocated from:
#0 0x5579de1ea43e in malloc (/data1/edgar/ddnet/build/DDNet+0x13c843e)
#1 0x7f29030a1377 (<unknown module>)
Indirect leak of 752 byte(s) in 6 object(s) allocated from:
#0 0x5579de1ea705 in realloc (/data1/edgar/ddnet/build/DDNet+0x13c8705)
#1 0x7f29165f28e6 (<unknown module>)
Indirect leak of 457 byte(s) in 2 object(s) allocated from:
#0 0x5579de1ea705 in realloc (/data1/edgar/ddnet/build/DDNet+0x13c8705)
#1 0x7f2921c480ac (/usr/lib64/libdbus-1.so.3+0x420ac)
Indirect leak of 204 byte(s) in 1 object(s) allocated from:
#0 0x5579de1ea578 in calloc (/data1/edgar/ddnet/build/DDNet+0x13c8578)
#1 0x7f2902e5b469 (<unknown module>)
Indirect leak of 40 byte(s) in 1 object(s) allocated from:
#0 0x5579de1ea43e in malloc (/data1/edgar/ddnet/build/DDNet+0x13c843e)
#1 0x7f2902e4d5e0 (<unknown module>)
SUMMARY: AddressSanitizer: 274075 byte(s) leaked in 1255 allocation(s).

❯ UBSAN_OPTIONS=suppressions=./ubsan.supp:log_path=./SAN:print_stacktrace=1:halt_on_errors=0 ASAN_OPTIONS=log_path=./SAN:print_stacktrace=1:check_initialization_order=1:detect_leaks=1:halt_on_errors=0 LSAN_OPTIONS=suppressions=./lsan.supp ./DDNet


gdb

gdb DDNet, then info symbol 0x13c843eq to quit gdb eventually





DDNet+)?
(gdb) set env UBSAN_OPTIONS=suppressions=./ubsan.supp:log_path=./SAN:print_stacktrace=1:halt_on_errors=0
(gdb) set env ASAN_OPTIONS=log_path=./SAN:print_stacktrace=1:check_initialization_order=1:detect_leaks=1:halt_on_errors=0
(gdb) set env LSAN_OPTIONS=suppressions=./lsan.supp
(gdb) run















libssp-0.dll exist in the folder with DDNet.exe?






exe or how did this happen? Would be interesting to know how these issues during updates happen

exe or how did this happen? Would be interesting to know how these issues during updates happen 


exe or how did this happen? Would be interesting to know how these issues during updates happen 













scripts/languages/update_all.py: this does not change any translations except for reordering some untranslated strings




































dbg_tuning:
dbg_tuning 1): !tuning-full old
dbg_tuning 1, only showing changed parameters): !tuning-compact new
dbg_tuning 2, showing all parameters and the velramp graphs): 













be83d44 Refactor CClient::DebugRender - Robyt3
b98d519 Use textrender for graphs, refactor CGraph::Render - Robyt3
30d3d4f Rename GetTunes to GetTuning and return const pointer - Robyt3
51e1f9d Refactor CDebugHud::RenderHint - Robyt3
738187d Refactor CDebugHud::RenderNetCorrections, improve layout - Robyt3
bfb64a4 Improve dbg_tuning, refactor CDebugHud::RenderTuning - Robyt3
16093de Merge pull request #6985 from Robyt3/Debughud-Improvements - def-










