[pushed] Remove useless NULL check in python.c

Christian Biesinger via gdb-patches gdb-patches@sourceware.org
Wed Feb 19 15:16:00 GMT 2020


On Wed, Feb 19, 2020, 18:57 Tom Tromey <tromey@adacore.com> wrote:

> I noticed that do_start_initialization, in python.c, checks the result
> of xmalloc.  However, xmalloc cannot fail, so this check is useless.
> This patch also changes the code to use XNEWVEC.
>
> gdb/ChangeLog
> 2020-02-19  Tom Tromey  <tromey@adacore.com>
>
>         * python/python.c (do_start_initialization): Use XNEWVEC.  Remove
>         NULL check.
> ---
>  gdb/ChangeLog       | 5 +++++
>  gdb/python/python.c | 7 +------
>  2 files changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/gdb/python/python.c b/gdb/python/python.c
> index 27d6042c618..fbbc159ede3 100644
> --- a/gdb/python/python.c
> +++ b/gdb/python/python.c
> @@ -1679,12 +1679,7 @@ do_start_initialization ()
>    std::string oldloc = setlocale (LC_ALL, NULL);
>    setlocale (LC_ALL, "");
>    progsize = strlen (progname.get ());
> -  progname_copy = (wchar_t *) xmalloc ((progsize + 1) * sizeof (wchar_t));
> -  if (!progname_copy)
> -    {
> -      fprintf (stderr, "out of memory\n");
> -      return false;
> -    }
> +  progname_copy = XNEWVEC (wchar_t, progsize + 1);
>

Have you considered using STD::wstring instead of this manual memory
management?

   count = mbstowcs (progname_copy, progname.get (), progsize + 1);

   if (count == (size_t) -1)
>      {
> --
> 2.21.1
>
>



More information about the Gdb-patches mailing list