Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 7 Jul 2008 16:20:06 GMT
From:      pfgshield-freebsd@yahoo.com
To:        freebsd-ports-bugs@FreeBSD.org
Subject:   Re: ports/125348: lang/nawk: support multibyte charsets in tolower/toupper functions
Message-ID:  <200807071620.m67GK6kD096537@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR ports/125348; it has been noted by GNATS.

From: pfgshield-freebsd@yahoo.com
To: FreeBSD-gnats-submit@FreeBSD.org
Cc:  
Subject: Re: ports/125348: lang/nawk: support multibyte charsets in tolower/toupper functions
Date: Mon, 7 Jul 2008 09:16:20 -0700 (PDT)

 --0-562972999-1215447380=:72738
 Content-Type: text/plain; charset=utf-8
 Content-Transfer-Encoding: quoted-printable
 
 The upstream maintainer doesn't want to add extensions or support multibyte=
  chars.
 
 I think FreeBSD might want to adopt them but for the time being it's better=
  to just try to get some patches harmonized among all the BSDs and the main=
 tainer.
 
 Let's just add this minimalistic patch (mostly from OpenBSD):
 - replace sprintf with snprintf
 - use calloc() to avoid malloc(n * m) overflows
 - NetBSD PR 36831: In setfval(), ensure that arithmetic never yields a nega=
 tive zero result.
 =0A=0A=0A      Posta, news, sport, oroscopo: tutto in una sola pagina. =0AC=
 rea l&#39;home page che piace a te!=0Awww.yahoo.it/latuapagina
 --0-562972999-1215447380=:72738
 Content-Type: application/octet-stream; name=patch-nawk
 Content-Transfer-Encoding: base64
 Content-Disposition: attachment; filename=patch-nawk
 
 ZGlmZiAtcnVOIG5hd2sub3JpZy9maWxlcy9wYXRjaC1iLmMgbmF3ay9maWxl
 cy9wYXRjaC1iLmMKLS0tIG5hd2sub3JpZy9maWxlcy9wYXRjaC1iLmMJMTk2
 OS0xMi0zMSAxOTowMDowMC4wMDAwMDAwMDAgLTA1MDAKKysrIG5hd2svZmls
 ZXMvcGF0Y2gtYi5jCTIwMDgtMDctMDcgMDg6NTc6MDMuMDAwMDAwMDAwIC0w
 NTAwCkBAIC0wLDAgKzEsNjcgQEAKKy0tLSBiLmMub3JpZwkyMDA3LTAzLTMx
 IDE1OjU2OjE4LjAwMDAwMDAwMCAtMDUwMAorKysrIGIuYwkyMDA4LTA3LTA3
 IDA4OjQ0OjUwLjAwMDAwMDAwMCAtMDUwMAorQEAgLTg0LDggKzg0LDggQEAK
 KyAKKyAJaWYgKHNldHZlYyA9PSAwKSB7CS8qIGZpcnN0IHRpbWUgdGhyb3Vn
 aCBhbnkgUkUgKi8KKyAJCW1heHNldHZlYyA9IE1BWExJTjsKKy0JCXNldHZl
 YyA9IChpbnQgKikgbWFsbG9jKG1heHNldHZlYyAqIHNpemVvZihpbnQpKTsK
 Ky0JCXRtcHNldCA9IChpbnQgKikgbWFsbG9jKG1heHNldHZlYyAqIHNpemVv
 ZihpbnQpKTsKKysJCXNldHZlYyA9IChpbnQgKikgY2FsbG9jKG1heHNldHZl
 Yywgc2l6ZW9mKGludCkpOworKwkJdG1wc2V0ID0gKGludCAqKSBjYWxsb2Mo
 bWF4c2V0dmVjLCBzaXplb2YoaW50KSk7CisgCQlpZiAoc2V0dmVjID09IDAg
 fHwgdG1wc2V0ID09IDApCisgCQkJb3ZlcmZsbygib3V0IG9mIHNwYWNlIGlu
 aXRpYWxpemluZyBtYWtlZGZhIik7CisgCX0KK0BAIC0xMzcsNyArMTM3LDcg
 QEAKKyAJZi0+YWNjZXB0ID0gcG9zY250LTE7CS8qIHBlbnRlciBoYXMgY29t
 cHV0ZWQgbnVtYmVyIG9mIHBvc2l0aW9ucyBpbiByZSAqLworIAljZm9sbChm
 LCBwMSk7CS8qIHNldCB1cCBmb2xsb3cgc2V0cyAqLworIAlmcmVldHIocDEp
 OworLQlpZiAoKGYtPnBvc25zWzBdID0gKGludCAqKSBjYWxsb2MoMSwgKihm
 LT5yZVswXS5sZm9sbG93KSpzaXplb2YoaW50KSkpID09IE5VTEwpCisrCWlm
 ICgoZi0+cG9zbnNbMF0gPSAoaW50ICopIGNhbGxvYygqKGYtPnJlWzBdLmxm
 b2xsb3cpLCBzaXplb2YoaW50KSkpID09IE5VTEwpCisgCQkJb3ZlcmZsbygi
 b3V0IG9mIHNwYWNlIGluIG1ha2VkZmEiKTsKKyAJaWYgKChmLT5wb3Nuc1sx
 XSA9IChpbnQgKikgY2FsbG9jKDEsIHNpemVvZihpbnQpKSkgPT0gTlVMTCkK
 KyAJCW92ZXJmbG8oIm91dCBvZiBzcGFjZSBpbiBtYWtlZGZhIik7CitAQCAt
 MTU3LDcgKzE1Nyw3IEBACisgCWYtPnJlc2V0ID0gMDsKKyAJayA9ICooZi0+
 cmVbMF0ubGZvbGxvdyk7CisgCXhmcmVlKGYtPnBvc25zWzJdKTsJCQkKKy0J
 aWYgKChmLT5wb3Nuc1syXSA9IChpbnQgKikgY2FsbG9jKDEsIChrKzEpKnNp
 emVvZihpbnQpKSkgPT0gTlVMTCkKKysJaWYgKChmLT5wb3Nuc1syXSA9IChp
 bnQgKikgY2FsbG9jKGsrMSwgc2l6ZW9mKGludCkpKSA9PSBOVUxMKQorIAkJ
 b3ZlcmZsbygib3V0IG9mIHNwYWNlIGluIG1ha2Vpbml0Iik7CisgCWZvciAo
 aT0wOyBpIDw9IGs7IGkrKykgeworIAkJKGYtPnBvc25zWzJdKVtpXSA9IChm
 LT5yZVswXS5sZm9sbG93KVtpXTsKK0BAIC0zNTcsNyArMzU3LDcgQEAKKyAJ
 CQlzZXR2ZWNbaV0gPSAwOworIAkJc2V0Y250ID0gMDsKKyAJCWZvbGxvdyh2
 KTsJLyogY29tcHV0ZXMgc2V0dmVjIGFuZCBzZXRjbnQgKi8KKy0JCWlmICgo
 cCA9IChpbnQgKikgY2FsbG9jKDEsIChzZXRjbnQrMSkqc2l6ZW9mKGludCkp
 KSA9PSBOVUxMKQorKwkJaWYgKChwID0gKGludCAqKSBjYWxsb2Moc2V0Y250
 KzEsIHNpemVvZihpbnQpKSkgPT0gTlVMTCkKKyAJCQlvdmVyZmxvKCJvdXQg
 b2Ygc3BhY2UgYnVpbGRpbmcgZm9sbG93IHNldCIpOworIAkJZi0+cmVbaW5m
 byh2KV0ubGZvbGxvdyA9IHA7CisgCQkqcCA9IHNldGNudDsKK0BAIC01MzEs
 NyArNTMxLDcgQEAKKyAJCQlmb3IgKGkgPSAyOyBpIDw9IGYtPmN1cnN0YXQ7
 IGkrKykKKyAJCQkJeGZyZWUoZi0+cG9zbnNbaV0pOworIAkJCWsgPSAqZi0+
 cG9zbnNbMF07CQkJCistCQkJaWYgKChmLT5wb3Nuc1syXSA9IChpbnQgKikg
 Y2FsbG9jKDEsIChrKzEpKnNpemVvZihpbnQpKSkgPT0gTlVMTCkKKysJCQlp
 ZiAoKGYtPnBvc25zWzJdID0gKGludCAqKSBjYWxsb2MoaysxLCBzaXplb2Yo
 aW50KSkpID09IE5VTEwpCisgCQkJCW92ZXJmbG8oIm91dCBvZiBzcGFjZSBp
 biBwbWF0Y2giKTsKKyAJCQlmb3IgKGkgPSAwOyBpIDw9IGs7IGkrKykKKyAJ
 CQkJKGYtPnBvc25zWzJdKVtpXSA9IChmLT5wb3Nuc1swXSlbaV07CitAQCAt
 NTg4LDcgKzU4OCw3IEBACisgCQkJZm9yIChpID0gMjsgaSA8PSBmLT5jdXJz
 dGF0OyBpKyspCisgCQkJCXhmcmVlKGYtPnBvc25zW2ldKTsKKyAJCQlrID0g
 KmYtPnBvc25zWzBdOwkJCQorLQkJCWlmICgoZi0+cG9zbnNbMl0gPSAoaW50
 ICopIGNhbGxvYygxLCAoaysxKSpzaXplb2YoaW50KSkpID09IE5VTEwpCisr
 CQkJaWYgKChmLT5wb3Nuc1syXSA9IChpbnQgKikgY2FsbG9jKGsrMSwgc2l6
 ZW9mKGludCkpKSA9PSBOVUxMKQorIAkJCQlvdmVyZmxvKCJvdXQgb2Ygc3Rh
 dGUgc3BhY2UiKTsKKyAJCQlmb3IgKGkgPSAwOyBpIDw9IGs7IGkrKykKKyAJ
 CQkJKGYtPnBvc25zWzJdKVtpXSA9IChmLT5wb3Nuc1swXSlbaV07CitAQCAt
 OTIwLDcgKzkyMCw3IEBACisgCWZvciAoaSA9IDA7IGkgPCBOQ0hBUlM7IGkr
 KykKKyAJCWYtPmdvdG90YWJbZi0+Y3Vyc3RhdF1baV0gPSAwOworIAl4ZnJl
 ZShmLT5wb3Nuc1tmLT5jdXJzdGF0XSk7CistCWlmICgocCA9IChpbnQgKikg
 Y2FsbG9jKDEsIChzZXRjbnQrMSkqc2l6ZW9mKGludCkpKSA9PSBOVUxMKQor
 KwlpZiAoKHAgPSAoaW50ICopIGNhbGxvYyhzZXRjbnQrMSwgc2l6ZW9mKGlu
 dCkpKSA9PSBOVUxMKQorIAkJb3ZlcmZsbygib3V0IG9mIHNwYWNlIGluIGNn
 b3RvIik7CisgCisgCWYtPnBvc25zW2YtPmN1cnN0YXRdID0gcDsKZGlmZiAt
 cnVOIG5hd2sub3JpZy9maWxlcy9wYXRjaC1saWIuYyBuYXdrL2ZpbGVzL3Bh
 dGNoLWxpYi5jCi0tLSBuYXdrLm9yaWcvZmlsZXMvcGF0Y2gtbGliLmMJMTk2
 OS0xMi0zMSAxOTowMDowMC4wMDAwMDAwMDAgLTA1MDAKKysrIG5hd2svZmls
 ZXMvcGF0Y2gtbGliLmMJMjAwOC0wNy0wNyAwOTo0MDowMi4wMDAwMDAwMDAg
 LTA1MDAKQEAgLTAsMCArMSwyOSBAQAorLS0tIGxpYi5jLm9yaWcJMjAwNy0x
 MC0yMiAxODoxNzo1Mi4wMDAwMDAwMDAgLTA1MDAKKysrKyBsaWIuYwkyMDA4
 LTA3LTA3IDA5OjM4OjU4LjAwMDAwMDAwMCAtMDUwMAorQEAgLTU5LDcgKzU5
 LDcgQEAKKyB7CisgCWlmICggKHJlY29yZCA9IChjaGFyICopIG1hbGxvYyhu
 KSkgPT0gTlVMTAorIAkgIHx8IChmaWVsZHMgPSAoY2hhciAqKSBtYWxsb2Mo
 bisxKSkgPT0gTlVMTAorLQkgIHx8IChmbGR0YWIgPSAoQ2VsbCAqKikgbWFs
 bG9jKChuZmllbGRzKzEpICogc2l6ZW9mKENlbGwgKikpKSA9PSBOVUxMCisr
 CSAgfHwgKGZsZHRhYiA9IChDZWxsICoqKSBjYWxsb2MoKG5maWVsZHMrMSks
 IHNpemVvZihDZWxsICopKSkgPT0gTlVMTAorIAkgIHx8IChmbGR0YWJbMF0g
 PSAoQ2VsbCAqKSBtYWxsb2Moc2l6ZW9mKENlbGwpKSkgPT0gTlVMTCApCisg
 CQlGQVRBTCgib3V0IG9mIHNwYWNlIGZvciAkMCBhbmQgZmllbGRzIik7Cisg
 CSpmbGR0YWJbMF0gPSBkb2xsYXIwOworQEAgLTc4LDcgKzc4LDcgQEAKKyAJ
 CWlmIChmbGR0YWJbaV0gPT0gTlVMTCkKKyAJCQlGQVRBTCgib3V0IG9mIHNw
 YWNlIGluIG1ha2VmaWVsZHMgJWQiLCBpKTsKKyAJCSpmbGR0YWJbaV0gPSBk
 b2xsYXIxOworLQkJc3ByaW50Zih0ZW1wLCAiJWQiLCBpKTsKKysJCXNucHJp
 bnRmKHRlbXAsIHNpemVvZiB0ZW1wLCAiJWQiLCBpKTsKKyAJCWZsZHRhYltp
 XS0+bnZhbCA9IHRvc3RyaW5nKHRlbXApOworIAl9CisgfQorQEAgLTIyNiw3
 ICsyMjYsNyBAQAorIAljaGFyICpzLCB0ZW1wWzUwXTsKKyAJZXh0ZXJuIEFy
 cmF5ICpBUkdWdGFiOworIAorLQlzcHJpbnRmKHRlbXAsICIlZCIsIG4pOwor
 KwlzbnByaW50Zih0ZW1wLCBzaXplb2YgdGVtcCwgIiVkIiwgbik7CisgCXgg
 PSBzZXRzeW10YWIodGVtcCwgIiIsIDAuMCwgU1RSLCBBUkdWdGFiKTsKKyAJ
 cyA9IGdldHN2YWwoeCk7CisgCSAgIGRwcmludGYoICgiZ2V0YXJndiglZCkg
 cmV0dXJucyB8JXN8XG4iLCBuLCBzKSApOwpkaWZmIC1ydU4gbmF3ay5vcmln
 L2ZpbGVzL3BhdGNoLXRyYW4uYyBuYXdrL2ZpbGVzL3BhdGNoLXRyYW4uYwot
 LS0gbmF3ay5vcmlnL2ZpbGVzL3BhdGNoLXRyYW4uYwkxOTY5LTEyLTMxIDE5
 OjAwOjAwLjAwMDAwMDAwMCAtMDUwMAorKysgbmF3ay9maWxlcy9wYXRjaC10
 cmFuLmMJMjAwOC0wNy0wNyAxMDo1MzoyNi4wMDAwMDAwMDAgLTA1MDAKQEAg
 LTAsMCArMSwyMyBAQAorZGlmZiAtdSAtcCAtcjEuNiAtcjEuOS4xMC4xCist
 LS0gdHJhbi5jLm9yaWcJMjAwNS8wNy8wMyAxNToxODoxMQkxLjYKKysrKyB0
 cmFuLmMJMjAwNy8xMS8wNiAyMzowNzo1MgkxLjkuMTAuMQorQEAgLTIxMCw3
 ICsyMTAsMTAgQEAgQ2VsbCAqc2V0c3ltdGFiKGNvbnN0IGNoYXIgKm4sIGNv
 bnN0IGNoYQorIAlpbnQgaDsKKyAJQ2VsbCAqcDsKKyAKKy0JaWYgKG4gIT0g
 TlVMTCAmJiAocCA9IGxvb2t1cChuLCB0cCkpICE9IE5VTEwpIHsKKysJaWYg
 KG4gPT0gTlVMTCkKKysJCW4gPSAiIjsKKysKKysJaWYgKChwID0gbG9va3Vw
 KG4sIHRwKSkgIT0gTlVMTCkgeworIAkJICAgZHByaW50ZiggKCJzZXRzeW10
 YWIgZm91bmQgJXA6IG49JXMgcz1cIiVzXCIgZj0lZyB0PSVvXG4iLAorIAkJ
 CXAsIE5OKHAtPm52YWwpLCBOTihwLT5zdmFsKSwgcC0+ZnZhbCwgcC0+dHZh
 bCkgKTsKKyAJCXJldHVybihwKTsKK0BAIC0yODIsNiArMjg1LDcgQEAgQXdr
 ZmxvYXQgc2V0ZnZhbChDZWxsICp2cCwgQXdrZmxvYXQgZikJLworIHsKKyAJ
 aW50IGZsZG5vOworIAorKwlmICs9IDAuMDsJCS8qIG5vcm1hbGlzZSBuZWdh
 dGl2ZSB6ZXJvIHRvIHBvc2l0aXZlIHplcm8gKi8KKyAJaWYgKCh2cC0+dHZh
 bCAmIChOVU0gfCBTVFIpKSA9PSAwKSAKKyAJCWZ1bm55dmFyKHZwLCAiYXNz
 aWduIHRvIik7CisgCWlmIChpc2ZsZCh2cCkpIHsK
 
 --0-562972999-1215447380=:72738--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200807071620.m67GK6kD096537>