Re: [PATCH] vsprintf: sanely handle NULL passed to %pe

From: Andy Shevchenko
Date: Wed Feb 19 2020 - 06:25:35 EST


On Wed, Feb 19, 2020 at 1:21 PM Ilya Dryomov <idryomov@xxxxxxxxx> wrote:
> On Wed, Feb 19, 2020 at 9:21 AM Rasmus Villemoes
> <linux@xxxxxxxxxxxxxxxxxx> wrote:
> >
> > Extend %pe to pretty-print NULL in addition to ERR_PTRs,
> > i.e. everything IS_ERR_OR_NULL().

...

> > + [0] = "NULL",

> > + test("[NULL]", "[%pe]", NULL);

> FWIW I was about to post a patch that just special cases NULL here.
>
> I think changing errname() to return "NULL" for 0 is overkill.
> People will sooner or later discover that function and start using it
> in contexts that don't have anything to do with pointers. Returning
> _some_ string for 0 (instead of NULL) makes it very close to standard
> strerror(), and "NULL" for 0 (i.e. success) seems rather odd.

%pe is specifically for _pointers_. I don't see a point in your comment.

--
With Best Regards,
Andy Shevchenko