This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFA 14/23] Use unique_xmalloc_ptr in jit.c


On 05/03/2017 11:46 PM, Tom Tromey wrote:
>  static void
>  jit_reader_load_command (char *args, int from_tty)
>  {
> -  char *so_name;
> -  struct cleanup *prev_cleanup;
> -
>    if (args == NULL)
>      error (_("No reader name provided."));
> -  args = tilde_expand (args);
> -  prev_cleanup = make_cleanup (xfree, args);
> +  gdb::unique_xmalloc_ptr<char> file (tilde_expand (args));
>  
>    if (loaded_jit_reader != NULL)
>      error (_("JIT reader already loaded.  Run jit-reader-unload first."));
>  
> -  if (IS_ABSOLUTE_PATH (args))
> -    so_name = args;
> +  gdb::unique_xmalloc_ptr<char> so_name;
> +  if (IS_ABSOLUTE_PATH (file.get ()))
> +    so_name = std::move (file);

I think we don't really need two unique pointers, and then
moving.  I.e., this should do, I think:

  if (loaded_jit_reader != NULL)
    error (_("JIT reader already loaded.  Run jit-reader-unload first."));

  gdb::unique_xmalloc_ptr<char> so_name (tilde_expand (args));
  if (!IS_ABSOLUTE_PATH (so_name.get ()))
    so_name.reset (xstrprintf ("%s%s%s", jit_reader_dir, SLASH_STRING,
			       so_name.get ()));

Thanks,
Pedro Alves


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]