Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 21 Apr 2016 10:22:48 +0300
From:      Andrey Chernov <ache@freebsd.org>
To:        Baptiste Daroussin <bapt@FreeBSD.org>
Cc:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r298367 - head/lib/libc/locale
Message-ID:  <7ef69cc0-4f38-788d-3fab-5058749cee8e@freebsd.org>
In-Reply-To: <20160421062953.GI26116@ivaldir.etoilebsd.net>
References:  <201604202044.u3KKiUMq081452@repo.freebsd.org> <a2485516-9b18-6323-934d-45ed915b52ff@freebsd.org> <b8387257-5354-6a66-332b-7d07f1bdb25c@freebsd.org> <20160421062953.GI26116@ivaldir.etoilebsd.net>

next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--XtDbF0Vtl2grLCnSw0t66Ww52sUnl4lqD
Content-Type: multipart/mixed; boundary="VVij2iOfPhGTeF73fnksGQjjx0KA9f4xh"
From: Andrey Chernov <ache@freebsd.org>
To: Baptiste Daroussin <bapt@FreeBSD.org>
Cc: src-committers@freebsd.org, svn-src-all@freebsd.org,
 svn-src-head@freebsd.org
Message-ID: <7ef69cc0-4f38-788d-3fab-5058749cee8e@freebsd.org>
Subject: Re: svn commit: r298367 - head/lib/libc/locale
References: <201604202044.u3KKiUMq081452@repo.freebsd.org>
 <a2485516-9b18-6323-934d-45ed915b52ff@freebsd.org>
 <b8387257-5354-6a66-332b-7d07f1bdb25c@freebsd.org>
 <20160421062953.GI26116@ivaldir.etoilebsd.net>
In-Reply-To: <20160421062953.GI26116@ivaldir.etoilebsd.net>

--VVij2iOfPhGTeF73fnksGQjjx0KA9f4xh
Content-Type: multipart/mixed;
 boundary="------------55479B238AAE8B7ABC0D9A3B"

This is a multi-part message in MIME format.
--------------55479B238AAE8B7ABC0D9A3B
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

On 21.04.2016 9:29, Baptiste Daroussin wrote:
>>>> Modified: head/lib/libc/locale/ascii.c
>>>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D
>>>> --- head/lib/libc/locale/ascii.c	Wed Apr 20 20:43:05 2016	(r298366)
>>>> +++ head/lib/libc/locale/ascii.c	Wed Apr 20 20:44:30 2016	(r298367)
>>>> @@ -133,11 +133,14 @@ _ascii_mbsnrtowcs(wchar_t * __restrict d
>>>> =20
>>>>  	if (dst =3D=3D NULL) {
>>>>  		s =3D memchr(*src, '\0', nms);
>>>> +		if (s =3D=3D NULL)
>>>> +			return (nms);
>>>> +
>>>>  		if (*s & 0x80) {
>>>>  			errno =3D EILSEQ;
>>>>  			return ((size_t)-1);
>>>>  		}
>>>> -		return (s !=3D NULL ? s - *src : nms);
>>>> +		return (s - *src);
>>>>  	}
>>>> =20
>>>>  	s =3D *src;
>>>>
>>>
>>> The whole code is incorrect, only the very first char is checked, the=
re
>>> must be a loop like in -stable:
>>>
>>> 	if (dst =3D=3D NULL) {
>>>                 for (s =3D *src; nms > 0 && *s !=3D '\0'; s++, nms--)=
 {
>>>                         if (*s & 0x80) {
>>>                                 errno =3D EILSEQ;
>>>                                 return ((size_t)-1);
>>>                         }
>>>                 }
>>>                 return (s - *src);
>>> 	}
>>>
>>> Since svn history is lost on deleting, I don't know why incorrect
>>> version was committed.
>>>
>>
>> Typo, the very first =3D=3D the very last, i.e. only NUL char is check=
ed
>> which always pass.
>>
>=20
> I have restored the history (I hope correctly)
>=20
> Bapt
>=20

All the restored history is related to none.c, but ascii.c was made
afterwards a bit differently and transition history between none.c ->
ascii.c is lost in any case somehow.
We still have correct version in -stable.
The diff is attached.
BTW, recent none.c from which ascii.c is made don't have this two
copyrights too:
- * Copyright 2013 Garrett D'Amore <garrett@damore.org>
- * Copyright 2010 Nexenta Systems, Inc.  All rights reserved.

--------------55479B238AAE8B7ABC0D9A3B
Content-Type: text/plain; charset=UTF-8;
 name="patch.txt"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
 filename="patch.txt"

SW5kZXg6IGFzY2lpLmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gYXNjaWkuYwkoLi4uL2hlYWQvbGli
L2xpYmMvbG9jYWxlL2FzY2lpLmMpCShyZXZpc2lvbiAyOTgzOTUpCisrKyBhc2NpaS5jCSgu
Li4vc3RhYmxlLzEwL2xpYi9saWJjL2xvY2FsZS9hc2NpaS5jKQkod29ya2luZyBjb3B5KQpA
QCAtMSw2ICsxLDQgQEAKLS8qCi0gKiBDb3B5cmlnaHQgMjAxMyBHYXJyZXR0IEQnQW1vcmUg
PGdhcnJldHRAZGFtb3JlLm9yZz4KLSAqIENvcHlyaWdodCAyMDEwIE5leGVudGEgU3lzdGVt
cywgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8qLQogICogQ29weXJpZ2h0IChjKSAy
MDAyLTIwMDQgVGltIEouIFJvYmJpbnMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKiBDb3B5
cmlnaHQgKGMpIDE5OTMKICAqCVRoZSBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENh
bGlmb3JuaWEuICBBbGwgcmlnaHRzIHJlc2VydmVkLgpAQCAtMzYsOCArMzQsNiBAQAogICog
TElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWQogICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgogICogU1VDSCBEQU1B
R0UuCi0gKgotICogQCgjKW5vbmUuYwk4LjEgKEJlcmtlbGV5KSA2LzQvOTMKICAqLwogCiAj
aW5jbHVkZSA8c3lzL2NkZWZzLmg+CkBAIC02NSw3ICs2MSw3IEBACiAJCSAgICBzaXplX3Qs
IHNpemVfdCwgbWJzdGF0ZV90ICogX19yZXN0cmljdCk7CiAKIGludAotX2FzY2lpX2luaXQo
c3RydWN0IHhsb2NhbGVfY3R5cGUgKmwsIF9SdW5lTG9jYWxlICpybCkKK19hc2NpaV9pbml0
KHN0cnVjdCB4bG9jYWxlX2N0eXBlICpsLF9SdW5lTG9jYWxlICpybCkKIHsKIAogCWwtPl9f
bWJydG93YyA9IF9hc2NpaV9tYnJ0b3djOwpAQCAtODIsNiArNzgsNyBAQAogc3RhdGljIGlu
dAogX2FzY2lpX21ic2luaXQoY29uc3QgbWJzdGF0ZV90ICpwcyBfX3VudXNlZCkKIHsKKwog
CS8qCiAJICogRW5jb2RpbmcgaXMgbm90IHN0YXRlIGRlcGVuZGVudCAtIHdlIGFyZSBhbHdh
eXMgaW4gdGhlCiAJICogaW5pdGlhbCBzdGF0ZS4KQEAgLTkzLDYgKzkwLDcgQEAKIF9hc2Np
aV9tYnJ0b3djKHdjaGFyX3QgKiBfX3Jlc3RyaWN0IHB3YywgY29uc3QgY2hhciAqIF9fcmVz
dHJpY3Qgcywgc2l6ZV90IG4sCiAgICAgbWJzdGF0ZV90ICogX19yZXN0cmljdCBwcyBfX3Vu
dXNlZCkKIHsKKwogCWlmIChzID09IE5VTEwpCiAJCS8qIFJlc2V0IHRvIGluaXRpYWwgc2hp
ZnQgc3RhdGUgKG5vLW9wKSAqLwogCQlyZXR1cm4gKDApOwpAQCAtMTMyLDEzICsxMzAsMTEg
QEAKIAlzaXplX3QgbmNocjsKIAogCWlmIChkc3QgPT0gTlVMTCkgewotCQlzID0gbWVtY2hy
KCpzcmMsICdcMCcsIG5tcyk7Ci0JCWlmIChzID09IE5VTEwpCi0JCQlyZXR1cm4gKG5tcyk7
Ci0KLQkJaWYgKCpzICYgMHg4MCkgewotCQkJZXJybm8gPSBFSUxTRVE7Ci0JCQlyZXR1cm4g
KChzaXplX3QpLTEpOworCQlmb3IgKHMgPSAqc3JjOyBubXMgPiAwICYmICpzICE9ICdcMCc7
IHMrKywgbm1zLS0pIHsKKwkJCWlmICgqcyAmIDB4ODApIHsKKwkJCQllcnJubyA9IEVJTFNF
UTsKKwkJCQlyZXR1cm4gKChzaXplX3QpLTEpOworCQkJfQogCQl9CiAJCXJldHVybiAocyAt
ICpzcmMpOwogCX0KQEAgLTE5MywzICsxODksNCBAQAogCSpzcmMgPSBzOwogCXJldHVybiAo
bmNocik7CiB9CisK
--------------55479B238AAE8B7ABC0D9A3B--

--VVij2iOfPhGTeF73fnksGQjjx0KA9f4xh--

--XtDbF0Vtl2grLCnSw0t66Ww52sUnl4lqD
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQEcBAEBCAAGBQJXGH/JAAoJEKUckv0MjfbKiyAH/iDtX/ll0B4/LstaxfwmK01M
nw18knxhuX6YfnjEYQHUXZTMAeb8B73egJx9yirhwxp+AwbXu39v2IVrssZvEe/O
X5mfa5NQ66a9YvLy3idVEKbI7A/t4uJeqyms2K8zVv3BVp6BXPYrfegKMNHeT4YO
EHuaa9ZjIrN3L2p47tz8Mxjq0jEjQRzauIKsCWKk11wfd3q1zawXHBrRbmzx31HS
NcXNNyiGLEpCQ4XNfIXSTWkugs8brUQ+XGAghMsAdl+39JfSZ1k7Gamvh4mRpMFV
MnxKNUYtcyIgh2sxBMH7FqPkhEnj0lkqjGQbCteRW7ntHViOK+CWIU314v6CMK4=
=639G
-----END PGP SIGNATURE-----

--XtDbF0Vtl2grLCnSw0t66Ww52sUnl4lqD--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?7ef69cc0-4f38-788d-3fab-5058749cee8e>