[RFA 04/13] Use unique_xmalloc_ptr in find_separate_debug_file_by_debuglink

Simon Marchi simon.marchi@polymtl.ca
Fri Nov 3 01:02:00 GMT 2017


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



More information about the Gdb-patches mailing list