From owner-freebsd-hackers Sun Jul 2 21:21:48 2000 Delivered-To: freebsd-hackers@freebsd.org Received: from iclub.nsu.ru (iclub.nsu.ru [193.124.222.66]) by hub.freebsd.org (Postfix) with ESMTP id A104337B5E6 for ; Sun, 2 Jul 2000 21:21:34 -0700 (PDT) (envelope-from fjoe@iclub.nsu.ru) Received: from localhost (fjoe@localhost) by iclub.nsu.ru (8.9.3/8.9.3) with ESMTP id LAA77177 for ; Mon, 3 Jul 2000 11:21:26 +0700 (NSS) (envelope-from fjoe@iclub.nsu.ru) Date: Mon, 3 Jul 2000 11:21:26 +0700 (NSS) From: Max Khon To: hackers@freebsd.org Subject: mbstowcs/wcstombs Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-550152396-962598086=:76752" Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --0-550152396-962598086=:76752 Content-Type: TEXT/PLAIN; charset=US-ASCII hi, there! sorry for posting here but freebsd-i18n list seems to be dead (is it?) some products (e.g. Xerces for C from XML Apache Project) rely on the following behaviour of mbstowcs/wcstombs: when `dest' param is NULL then `len' parameter is ignored and these functions return required length to store the result. This feature is implemented at least in Solaris' libc and glibc 2.1.2. attached patch implements this behaviour (with updated man page and one minor fix in man 3 multibyte). btw is there ongoing effort to merge Citrus libxpg4 to our base tree? freebsd-i18n archives are empty. searching yields nothing except links to Citrus homepage and NetBSD `whatsnew' pages. /fjoe --0-550152396-962598086=:76752 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="mbstowcs.diff" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename="mbstowcs.diff" LS0tIGxpYi9saWJjL2xvY2FsZS9hbnNpLmMub3JpZwlNb24gSnVsICAzIDA5 OjU4OjMyIDIwMDANCisrKyBsaWIvbGliYy9sb2NhbGUvYW5zaS5jCU1vbiBK dWwgIDMgMTA6MDU6MjkgMjAwMA0KQEAgLTEwNSwxNSArMTA1LDIxIEBADQog CWNoYXIgY29uc3QgKmU7DQogCWludCBjbnQgPSAwOw0KIA0KLQlpZiAoIXB3 Y3MgfHwgIXMpDQorCWlmICghcykNCiAJCXJldHVybiAoLTEpOw0KIA0KLQl3 aGlsZSAobi0tID4gMCkgew0KLQkJKnB3Y3MgPSBzZ2V0cnVuZShzLCBNQl9M RU5fTUFYLCAmZSk7DQotCQlpZiAoKnB3Y3MgPT0gX0lOVkFMSURfUlVORSkN CisJd2hpbGUgKCFwd2NzIHx8IG4tLSA+IDApIHsNCisJCXdjaGFyX3Qgd2M7 DQorDQorCQl3YyA9IHNnZXRydW5lKHMsIE1CX0xFTl9NQVgsICZlKTsNCisJ CWlmIChwd2NzKQ0KKwkJCSpwd2NzID0gd2M7DQorCQlpZiAod2MgPT0gX0lO VkFMSURfUlVORSkNCiAJCQlyZXR1cm4gKC0xKTsNCi0JCWlmICgqcHdjcysr ID09IDApDQorCQlpZiAod2MgPT0gMCkNCiAJCQlicmVhazsNCisJCWlmIChw d2NzKQ0KKwkJCXB3Y3MrKzsNCiAJCXMgPSBlOw0KIAkJKytjbnQ7DQogCX0N CkBAIC0xMjksMjMgKzEzNSwzMCBAQA0KIAljaGFyICplOw0KIAlpbnQgY250 LCBuYjsNCiANCi0JaWYgKCFwd2NzIHx8ICFzIHx8IG4gPiBJTlRfTUFYKQ0K KwlpZiAoIXB3Y3MgfHwgKHMgJiYgbiA+IElOVF9NQVgpKQ0KIAkJcmV0dXJu ICgtMSk7DQogDQogCW5iID0gbjsNCiAJY250ID0gMDsNCi0Jd2hpbGUgKG5i ID4gMCkgew0KKwl3aGlsZSAoIXMgfHwgbmIgPiAwKSB7DQorCQljaGFyIGNb TUJfTEVOX01BWCArIDFdOw0KKwkJc2l6ZV90IGNfY250Ow0KKw0KIAkJaWYg KCpwd2NzID09IDApIHsNCi0JCQkqcyA9IDA7DQorCQkJaWYgKHMpDQorCQkJ CSpzID0gMDsNCiAJCQlicmVhazsNCiAJCX0NCi0JCWlmICghc3B1dHJ1bmUo KnB3Y3MrKywgcywgbmIsICZlKSkNCisJCWlmICghc3B1dHJ1bmUoKnB3Y3Mr KywgcyA/IHMgOiBjLCBzID8gbmIgOiBNQl9MRU5fTUFYLCAmZSkpDQogCQkJ cmV0dXJuICgtMSk7CQkvKiBlbmNvZGluZyBlcnJvciAqLw0KIAkJaWYgKCFl KQkJCS8qIHRvbyBsb25nICovDQogCQkJcmV0dXJuIChjbnQpOw0KLQkJY250 ICs9IGUgLSBzOw0KLQkJbmIgLT0gZSAtIHM7DQotCQlzID0gZTsNCisJCWNf Y250ID0gcyA/IGUgLSBzIDogZSAtIGM7DQorCQljbnQgKz0gY19jbnQ7DQor CQlpZiAocykgew0KKwkJCW5iIC09IGNfY250Ow0KKwkJCXMgKz0gY19jbnQ7 DQorCQl9DQogCX0NCiAJcmV0dXJuIChjbnQpOw0KIH0NCi0tLSBsaWIvbGli Yy9sb2NhbGUvbXVsdGlieXRlLjMub3JpZwlNb24gSnVsICAzIDEwOjA4OjAw IDIwMDANCisrKyBsaWIvbGliYy9sb2NhbGUvbXVsdGlieXRlLjMJTW9uIEp1 bCAgMyAxMDoyMDo1MCAyMDAwDQpAQCAtNzcsNyArNzcsNyBAQA0KIGFuZCBj b2RlIGVhY2ggYmFzaWMgZWxlbWVudCBhcyBhIHNlcXVlbmNlIG9mIEMNCiAu VmEgY2hhciBOcyBzIC4NCiBJbmRpdmlkdWFsIGJhc2ljIGVsZW1lbnRzIG1h eSBtYXAgaW50byBvbmUgb3IgbW9yZQ0KLS5QcSB1cCB0byBEdiBNQl9DSEFS X01BWA0KKy5QcSB1cCB0byBEdiBNQl9MRU5fTUFYDQogYnl0ZXMgaW4gYSBt dWx0aWJ5dGUgY2hhcmFjdGVyLg0KIC5QcA0KIFRoZSBjdXJyZW50IGxvY2Fs ZQ0KQEAgLTE3Niw2ICsxNzYsMTQgQEANCiAuRmEgbndjaGFycw0KIHdpZGUg Y2hhcmFjdGVycyBhcmUgc3RvcmVkLg0KIEEgdGVybWluYXRpbmcgbnVsbCB3 aWRlIGNoYXJhY3RlciBpcyBhcHBlbmRlZCBpZiB0aGVyZSBpcyByb29tLg0K K0lmDQorLkZhIHdjc3RyaW5nDQoraXMgYSBudWxsIHBvaW50ZXIsDQorLkZu IG1ic3Rvd2NzDQorcmV0dXJucyB0aGUgbGVuZ3RoIHJlcXVpcmVkIHRvIGNv bnZlcnQgdGhlIGVudGlyZSBhcnJheSByZWdhcmRsZXNzDQorb2YgdGhlIHZh bHVlIG9mDQorLkZhIG53Y2hhcnMgLA0KK2J1dCBubyB2YWx1ZXMgYXJlIHN0 b3JlZC4NCiAuUHANCiBUaGUNCiAuRm4gd2NzdG9tYnMNCkBAIC0xODksNiAr MTk3LDE0IEBADQogLkZhIG1ic3RyaW5nIC4NCiBQYXJ0aWFsIG11bHRpYnl0 ZSBjaGFyYWN0ZXJzIGF0IHRoZSBlbmQgb2YgdGhlIHN0cmluZyBhcmUgbm90 IHN0b3JlZC4NCiBUaGUgbXVsdGlieXRlIGNoYXJhY3RlciBzdHJpbmcgaXMg bnVsbCB0ZXJtaW5hdGVkIGlmIHRoZXJlIGlzIHJvb20uDQorSWYNCisuRmEg bWJzdHJpbmcNCitpcyBhIG51bGwgcG9pbnRlciwNCisuRm4gd2NzdG9tYnMN CityZXR1cm5zIHRoZSBsZW5ndGggcmVxdWlyZWQgdG8gY29udmVydCB0aGUg ZW50aXJlIGFycmF5IHJlZ2FyZGxlc3MNCitvZiB0aGUgdmFsdWUgb2YNCisu RmEgbmJ5dGVzICwNCitidXQgbm8gdmFsdWVzIGFyZSBzdG9yZWQuDQogLlNo ICJSRVRVUk4gVkFMVUVTDQogSWYgbXVsdGlieXRlIGNoYXJhY3RlcnMgYXJl IG5vdCBzdXBwb3J0ZWQgaW4gdGhlIGN1cnJlbnQgbG9jYWxlLA0KIGFsbCBv ZiB0aGVzZSBmdW5jdGlvbnMgd2lsbCByZXR1cm4gXC0xIGlmIGNoYXJhY3Rl cnMgY2FuIGJlIHByb2Nlc3NlZCwNCkBAIC0yMTYsMTEgKzIzMiwxNSBAQA0K IC5QcA0KIFRoZQ0KIC5GbiBtYnN0b3djcw0KLWZ1bmN0aW9uIHJldHVybnMg dGhlIG51bWJlciBvZiB3aWRlIGNoYXJhY3RlcnMgY29udmVydGVkLA0KK2Z1 bmN0aW9uIHJldHVybnMgdGhlIG51bWJlciBvZiB3aWRlIGNoYXJhY3RlcnMg Y29udmVydGVkIChvciByZXF1aXJlZCBpZg0KKy5GYSB3Y3N0cmluZw0KK2lz IE5VTEwpLA0KIG5vdCBjb3VudGluZyBhbnkgdGVybWluYXRpbmcgbnVsbCB3 aWRlIGNoYXJhY3Rlci4NCiBUaGUNCiAuRm4gd2NzdG9tYnMNCi1mdW5jdGlv biByZXR1cm5zIHRoZSBudW1iZXIgb2YgYnl0ZXMgY29udmVydGVkLA0KK2Z1 bmN0aW9uIHJldHVybnMgdGhlIG51bWJlciBvZiBieXRlcyBjb252ZXJ0ZWQg KG9yIHJlcXVpcmVkIGlmDQorLkZhIG1ic3RyaW5nDQoraXMgTlVMTCksDQog bm90IGNvdW50aW5nIGFueSB0ZXJtaW5hdGluZyBudWxsIGJ5dGUuDQogSWYg YW55IGludmFsaWQgbXVsdGlieXRlIGNoYXJhY3RlcnMgYXJlIGVuY291bnRl cmVkLA0KIGJvdGggZnVuY3Rpb25zIHJldHVybiBcLTEuDQo= --0-550152396-962598086=:76752-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message