On 01/03/2018 17:20, Alex Williamson wrote: >> basename(3) and dirname(3) modify their argument and may return >> pointers to statically allocated memory which may be overwritten by >> subsequent calls. >> g_path_get_basename and g_path_get_dirname have no such issues, and >> therefore more preferable. > > I think it's quite a bit arguable whether it's preferable, afaict there > are no bugs fixed here. The basic functions are being used correctly > and are more conservative of memory usage than the glib variants. In > several cases below the basic functions seem far more efficient and we > don't need to worry about freeing unnecessarily allocated memory, the > diffstat seems to attest to this. Is the inefficiency and possibility > of leaking unintentionally allocated memory a statistical improvement > over the claimed perils of these absolutely standard and well known > functions? > > I know mine is a losing battle against glib, but the changelog might as > well just say "Succumb to glib" because I fail to see that there's > actually an improvement here. If Paolo wants to take this, > > Acked-by: Alex Williamson <alex.william...@redhat.com>
Fair enough, I'll apply only the obvious cases like g_strdup(basename()). Paolo