Junio C Hamano <gitster@xxxxxxxxx> writes: > > lidongyan <502024330056@xxxxxxxxxxxxxxxx> writes: > >> Alex via GitGitGadget <gitgitgadget@xxxxxxxxx> writes: >>> >>> From: jinyaoguo <guo846@xxxxxxxxxx> >>> >>> In parse_reuse_arg, we previously called xmalloc and strbuf_init >>> before resolving the ref and reading the object, leading to a >>> leaked msg on die() paths. This change moves the allocation of >> >> A memory leak on the die() path shouldn't be considered a real leak, >> right? Since the OS will clean up all memory once the process >> terminates, explicitly freeing msg isn't necessary in this case. > > It may not matter in practice, but I think the leak checking > machinery like sanitizers would still complain, so I view efforts on > plugging such leaks in the error code paths more about decluttering > the leak checker output to help us spot the real leaks. Makes sense. However, inserting a free-like statement in die() would be messier than using goto, since each die() has a unique message and we need to free stuff at each die().