)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":1000438,"name":"R. Diez","email":"rdiez-2006@rd10.de","username":"rdiez"},"change_message_id":"6b606d49ffaad86b2a287a16fda84ca4c9223d79","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":1,"id":"0e95976a_7a8f45b7","updated":"2026-02-16 10:15:02.000000000","message":"By the way, do you know what we are trying to debug with mallinfo.fordblks? Just tracing that value does not seem very helpful.","commit_id":"55a958ee592626adf4e66d9eb0e3a515a738ecbb"},{"author":{"_account_id":1000438,"name":"R. Diez","email":"rdiez-2006@rd10.de","username":"rdiez"},"change_message_id":"07d4e8b1e3e74cdd3844fb03d96b23abaa6cac99","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"4bb8db37_d01fd097","updated":"2026-02-16 15:01:07.000000000","message":"I had forgotten the +1 code review.","commit_id":"55a958ee592626adf4e66d9eb0e3a515a738ecbb"},{"author":{"_account_id":1000438,"name":"R. Diez","email":"rdiez-2006@rd10.de","username":"rdiez"},"change_message_id":"cb8273ef5296e498bb66e3d976aef88cb5ed6ff6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"9aa19048_59291e44","updated":"2026-02-16 09:57:35.000000000","message":"This change is fine. It is a little slower, but the new code is easier to read.","commit_id":"55a958ee592626adf4e66d9eb0e3a515a738ecbb"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"d42ed16134696046b2a850df17834dfc9632aba4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"b6f127f7_bbc0ade9","in_reply_to":"0e95976a_7a8f45b7","updated":"2026-02-16 10:43:37.000000000","message":"It reports the free memory, so during the run of OpenOCD we can track if we have continuous memory leaks or if we allocate by mistake too much memory.\nPersonally I prefer valgring to investigate memory leaks","commit_id":"55a958ee592626adf4e66d9eb0e3a515a738ecbb"}],"src/helper/log.c":[{"author":{"_account_id":1000438,"name":"R. Diez","email":"rdiez-2006@rd10.de","username":"rdiez"},"change_message_id":"cb8273ef5296e498bb66e3d976aef88cb5ed6ff6","unresolved":true,"context_lines":[{"line_number":63,"context_line":"}"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"// whitespace + SIZE_MAX + zero termination"},{"line_number":66,"context_line":"#define MEM_STR_LEN (1 + 21 + 1)"},{"line_number":67,"context_line":"static void get_free_memory_space(char *s)"},{"line_number":68,"context_line":"{"},{"line_number":69,"context_line":"#if defined(HAVE_MALLINFO2)"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"59e74239_c8baf7c3","line":66,"updated":"2026-02-16 09:57:35.000000000","message":"This will break if SIZE_MAX becomes 128 bits wide, so I would add a static assert here. But I guess that is not really a concern at the moment.","commit_id":"55a958ee592626adf4e66d9eb0e3a515a738ecbb"},{"author":{"_account_id":1000021,"name":"Antonio Borneo","email":"borneo.antonio@gmail.com","username":"borneoa"},"change_message_id":"d42ed16134696046b2a850df17834dfc9632aba4","unresolved":false,"context_lines":[{"line_number":63,"context_line":"}"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"// whitespace + SIZE_MAX + zero termination"},{"line_number":66,"context_line":"#define MEM_STR_LEN (1 + 21 + 1)"},{"line_number":67,"context_line":"static void get_free_memory_space(char *s)"},{"line_number":68,"context_line":"{"},{"line_number":69,"context_line":"#if defined(HAVE_MALLINFO2)"}],"source_content_type":"text/x-csrc","patch_set":1,"id":"ab6d261c_9d03cca7","line":66,"in_reply_to":"59e74239_c8baf7c3","updated":"2026-02-16 10:43:37.000000000","message":"Yes, but I have not found a way to compute the length of SIZE_MAX. And by the way, it contains also the `UL` suffix that should not be counted...\nI use `snprintf()` below, so the output would be eventually truncated but no illegal memory access.","commit_id":"55a958ee592626adf4e66d9eb0e3a515a738ecbb"}]}
