Re: [RFA 04/13] Use unique_xmalloc_ptr in find_separate_debug_file_by_debuglink

Simon Marchi
2017-11-03T01:02:30Z

On 2017-11-02 18:36, Tom Tromey wrote:
> @@ -1580,19 +1575,17 @@ find_separate_debug_file_by_debuglink (struct
> objfile *objfile)
> if (lstat (objfile_name (objfile), &st_buf) == 0
> && S_ISLNK (st_buf.st_mode))
> {
> - char *symlink_dir;
> -
> - symlink_dir = lrealpath (objfile_name (objfile));
> + gdb::unique_xmalloc_ptr<char> symlink_dir
> + (lrealpath (objfile_name (objfile)));
> if (symlink_dir != NULL)
> {
> - make_cleanup (xfree, symlink_dir);
> - terminate_after_last_dir_separator (symlink_dir);
> - if (strcmp (dir, symlink_dir) != 0)
> + terminate_after_last_dir_separator (symlink_dir.get ());
> + if (strcmp (dir.c_str (), symlink_dir.get ()) != 0)

Just one tiny nit: when possible, I like to replace strcmp with
std::string's operator==

if (dir == symlink_dir.get ())

but I'll leave it up to you.

Simon