Date: Fri, 6 Sep 2024 15:14:49 -0600 From: Warner Losh <imp@bsdimp.com> To: Konstantin Belousov <kostikbel@gmail.com> Cc: Warner Losh <imp@freebsd.org>, src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 07d90ee0a621 - main - kvprintf(): Fix '+' conversion handling Message-ID: <CANCZdfrrQ0eeHPU9qJdvin-daXphHBbExUiuLe0Wq1t_R0rtPg@mail.gmail.com> In-Reply-To: <Zttr1UzRKtHz_6o5@kib.kiev.ua> References: <202409061835.486IZ9Fd010541@gitrepo.freebsd.org> <Zttr1UzRKtHz_6o5@kib.kiev.ua>
next in thread | previous in thread | raw e-mail | index | archive | help
--0000000000006e8382062179e610 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Fri, Sep 6, 2024 at 2:53=E2=80=AFPM Konstantin Belousov <kostikbel@gmail= .com> wrote: > On Fri, Sep 06, 2024 at 06:35:09PM +0000, Warner Losh wrote: > > The branch main has been updated by imp: > > > > URL: > https://cgit.FreeBSD.org/src/commit/?id=3D07d90ee0a62110e5161bb0b8a3a0b1b= 9d2beabad > > > > commit 07d90ee0a62110e5161bb0b8a3a0b1b9d2beabad > > Author: Sebastian Huber <sebastian.huber@embedded-brains.de> > > AuthorDate: 2024-06-14 07:30:28 +0000 > > Commit: Warner Losh <imp@FreeBSD.org> > > CommitDate: 2024-09-06 18:34:30 +0000 > > > > kvprintf(): Fix '+' conversion handling > > > > For example, printf("%+i", 1) prints "+1". However, kvprintf() did > > print just "1" for this example. According to PRINTF(3): > > > > A sign must always be placed before a number produced by a signed > > conversion. > > > > For "%+r" radix conversions, keep the "+" handling as it is, since > this > > is a non-standard conversion. For "%+p" pointer conversions, > continue > > to ignore the sign modifier to be in line with libc. > > > > This change allows to support the ' conversion modifier in the > future. > > > > Reviewed by: imp > > Pull Request: https://github.com/freebsd/freebsd-src/pull/1310 > > --- > > sys/kern/subr_prf.c | 27 +++++++++++++-------------- > > 1 file changed, 13 insertions(+), 14 deletions(-) > Again, isn't rtld_printf needs the same change? > This time I don't think so. I'll double check though. I'd checked when this came in. Thanks for the reminder. --0000000000006e8382062179e610 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div dir=3D"ltr"><br></div><br><div class=3D"gmail_quote">= <div dir=3D"ltr" class=3D"gmail_attr">On Fri, Sep 6, 2024 at 2:53=E2=80=AFP= M Konstantin Belousov <<a href=3D"mailto:kostikbel@gmail.com">kostikbel@= gmail.com</a>> wrote:<br></div><blockquote class=3D"gmail_quote" style= =3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding= -left:1ex">On Fri, Sep 06, 2024 at 06:35:09PM +0000, Warner Losh wrote:<br> > The branch main has been updated by imp:<br> > <br> > URL: <a href=3D"https://cgit.FreeBSD.org/src/commit/?id=3D07d90ee0a621= 10e5161bb0b8a3a0b1b9d2beabad" rel=3D"noreferrer" target=3D"_blank">https://= cgit.FreeBSD.org/src/commit/?id=3D07d90ee0a62110e5161bb0b8a3a0b1b9d2beabad<= /a><br> > <br> > commit 07d90ee0a62110e5161bb0b8a3a0b1b9d2beabad<br> > Author:=C2=A0 =C2=A0 =C2=A0Sebastian Huber <<a href=3D"mailto:sebas= tian.huber@embedded-brains.de" target=3D"_blank">sebastian.huber@embedded-b= rains.de</a>><br> > AuthorDate: 2024-06-14 07:30:28 +0000<br> > Commit:=C2=A0 =C2=A0 =C2=A0Warner Losh <imp@FreeBSD.org><br> > CommitDate: 2024-09-06 18:34:30 +0000<br> > <br> >=C2=A0 =C2=A0 =C2=A0kvprintf(): Fix '+' conversion handling<br> >=C2=A0 =C2=A0 =C2=A0<br> >=C2=A0 =C2=A0 =C2=A0For example, printf("%+i", 1) prints &quo= t;+1".=C2=A0 However, kvprintf() did<br> >=C2=A0 =C2=A0 =C2=A0print just "1" for this example.=C2=A0 Ac= cording to PRINTF(3):<br> >=C2=A0 =C2=A0 =C2=A0<br> >=C2=A0 =C2=A0 =C2=A0 =C2=A0A sign must always be placed before a number= produced by a signed<br> >=C2=A0 =C2=A0 =C2=A0 =C2=A0conversion.<br> >=C2=A0 =C2=A0 =C2=A0<br> >=C2=A0 =C2=A0 =C2=A0For "%+r" radix conversions, keep the &qu= ot;+" handling as it is, since this<br> >=C2=A0 =C2=A0 =C2=A0is a non-standard conversion.=C2=A0 For "%+p&q= uot; pointer conversions, continue<br> >=C2=A0 =C2=A0 =C2=A0to ignore the sign modifier to be in line with libc= .<br> >=C2=A0 =C2=A0 =C2=A0<br> >=C2=A0 =C2=A0 =C2=A0This change allows to support the ' conversion = modifier in the future.<br> >=C2=A0 =C2=A0 =C2=A0<br> >=C2=A0 =C2=A0 =C2=A0Reviewed by: imp<br> >=C2=A0 =C2=A0 =C2=A0Pull Request: <a href=3D"https://github.com/freebsd= /freebsd-src/pull/1310" rel=3D"noreferrer" target=3D"_blank">https://github= .com/freebsd/freebsd-src/pull/1310</a><br> > ---<br> >=C2=A0 sys/kern/subr_prf.c | 27 +++++++++++++--------------<br> >=C2=A0 1 file changed, 13 insertions(+), 14 deletions(-)<br> Again, isn't rtld_printf needs the same change?<br></blockquote><div><b= r></div><div>This time I don't think so. I'll double check though. = I'd checked when this came in. Thanks for the reminder.=C2=A0</div></di= v></div> --0000000000006e8382062179e610--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANCZdfrrQ0eeHPU9qJdvin-daXphHBbExUiuLe0Wq1t_R0rtPg>