Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:27121 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 87077 invoked by uid 1010); 19 Dec 2006 21:08:05 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 87062 invoked from network); 19 Dec 2006 21:08:05 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 19 Dec 2006 21:08:05 -0000 Authentication-Results: pb1.pair.com header.from=helly@php.net; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=helly@php.net; spf=permerror; sender-id=unknown Received-SPF: error (pb1.pair.com: domain php.net from 81.169.182.136 cause and error) X-PHP-List-Original-Sender: helly@php.net X-Host-Fingerprint: 81.169.182.136 ajaxatwork.net Linux 2.4/2.6 Received: from [81.169.182.136] ([81.169.182.136:54809] helo=strato.aixcept.de) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id A5/15-53121-19458854 for ; Tue, 19 Dec 2006 16:08:04 -0500 Received: from baumbart.mbo (dslb-084-063-026-199.pools.arcor-ip.net [84.63.26.199]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by strato.aixcept.de (Postfix) with ESMTP id E0B3661029B for ; Tue, 19 Dec 2006 22:07:26 +0100 (CET) Date: Tue, 19 Dec 2006 22:07:35 +0100 Reply-To: Marcus Boerger X-Priority: 3 (Normal) Message-ID: <1191790276.20061219220735@marcus-boerger.de> To: internals@lists.php.net MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----------44100C027CC7795" Subject: Unicoding From: helly@php.net (Marcus Boerger) ------------44100C027CC7795 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Hello all, i am doing some unicode stuff and missng a few things and found a few issues: - ZVAL_STRL() is inconsistent with the rest of the ZVAL_*L(). The former has order: zval, zstr, len, type, flags while the others have the order: zval, value, len, flags Since a zstr value is defined by the string and the type the order should be: zval, zstr, type, len, flags I discussed this with Andrei and will commit in a bit. - zend_call_methods has no zend_u_call_method version, see patch - parameter parsing doesn't allow to receive a string in current run-time setting. I will introduce a new parameter parsing option 'x' that gets replaced by either 's' or 'u' depending on UG(unicode). This is pretty useful inside spl, pdo, reflection and anything else that deals with functions, classes, ..., see patch Comments? Best regards, Marcus ------------44100C027CC7795 Content-Type: text/plain; name="ze3-unicode-20061219.diff.txt" Content-transfer-encoding: base64 Content-Disposition: attachment; filename="ze3-unicode-20061219.diff.txt" SW5kZXg6IFplbmQvemVuZF9pbnRlcmZhY2VzLmMKPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTog L3JlcG9zaXRvcnkvWmVuZEVuZ2luZTIvemVuZF9pbnRlcmZhY2VzLmMsdgpyZXRyaWV2aW5n IHJldmlzaW9uIDEuNTUKZGlmZiAtdSAtcCAtZCAtcjEuNTUgemVuZF9pbnRlcmZhY2VzLmMK LS0tIFplbmQvemVuZF9pbnRlcmZhY2VzLmMJMjggQXVnIDIwMDYgMTA6MjU6NDkgLTAwMDAJ MS41NQorKysgWmVuZC96ZW5kX2ludGVyZmFjZXMuYwkxOSBEZWMgMjAwNiAyMDo1Nzo0NCAt MDAwMApAQCAtMzEsNyArMzEsNyBAQCBaRU5EX0FQSSB6ZW5kX2NsYXNzX2VudHJ5ICp6ZW5k X2NlX3NlcmlhCiAKIC8qIHt7eyB6ZW5kX2NhbGxfbWV0aG9kCiAgT25seSByZXR1cm5zIHRo ZSByZXR1cm5lZCB6dmFsIGlmIHJldHZhbF9wdHIgIT0gTlVMTCAqLwotWkVORF9BUEkgenZh bCogemVuZF9jYWxsX21ldGhvZCh6dmFsICoqb2JqZWN0X3BwLCB6ZW5kX2NsYXNzX2VudHJ5 ICpvYmpfY2UsIHplbmRfZnVuY3Rpb24gKipmbl9wcm94eSwgY2hhciAqZnVuY3Rpb25fbmFt ZSwgaW50IGZ1bmN0aW9uX25hbWVfbGVuLCB6dmFsICoqcmV0dmFsX3B0cl9wdHIsIGludCBw YXJhbV9jb3VudCwgenZhbCogYXJnMSwgenZhbCogYXJnMiBUU1JNTFNfREMpCitaRU5EX0FQ SSB6dmFsKiB6ZW5kX3VfY2FsbF9tZXRob2QoenZhbCAqKm9iamVjdF9wcCwgemVuZF9jbGFz c19lbnRyeSAqb2JqX2NlLCB6ZW5kX2Z1bmN0aW9uICoqZm5fcHJveHksIGludCBmdW5jdGlv bl9uYW1lX3R5cGUsIHpzdHIgZnVuY3Rpb25fbmFtZSwgaW50IGZ1bmN0aW9uX25hbWVfbGVu LCB6dmFsICoqcmV0dmFsX3B0cl9wdHIsIGludCBwYXJhbV9jb3VudCwgenZhbCogYXJnMSwg enZhbCogYXJnMiBUU1JNTFNfREMpCiB7CiAJaW50IHJlc3VsdDsKIAl6ZW5kX2ZjYWxsX2lu Zm8gZmNpOwpAQCAtNTcsNyArNTcsNyBAQCBaRU5EX0FQSSB6dmFsKiB6ZW5kX2NhbGxfbWV0 aG9kKHp2YWwgKipvCiAJaWYgKCFmbl9wcm94eSAmJiAhb2JqX2NlKSB7CiAJCS8qIG5vIGlu dGVyZXN0IGluIGNhY2hpbmcgYW5kIG5vIGluZm9ybWF0aW9uIGFscmVhZHkgcHJlc2VudCB0 aGF0IGlzCiAJCSAqIG5lZWRlZCBsYXRlciBpbnNpZGUgemVuZF9jYWxsX2Z1bmN0aW9uLiAq LwotCQlaVkFMX0FTQ0lJX1NUUklOR0woJnpfZm5hbWUsIGZ1bmN0aW9uX25hbWUsIGZ1bmN0 aW9uX25hbWVfbGVuLCAxKTsKKwkJWlZBTF9aU1RSKCZ6X2ZuYW1lLCBmdW5jdGlvbl9uYW1l LCBmdW5jdGlvbl9uYW1lX3R5cGUsIGZ1bmN0aW9uX25hbWVfbGVuLCAxKTsKIAkJZmNpLmZ1 bmN0aW9uX3RhYmxlID0gIW9iamVjdF9wcCA/IEVHKGZ1bmN0aW9uX3RhYmxlKSA6IE5VTEw7 CiAJCXJlc3VsdCA9IHplbmRfY2FsbF9mdW5jdGlvbigmZmNpLCBOVUxMIFRTUk1MU19DQyk7 CiAJCXp2YWxfZHRvcigmel9mbmFtZSk7CkluZGV4OiBaZW5kL3plbmRfaW50ZXJmYWNlcy5o Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9yZXBvc2l0b3J5L1plbmRFbmdpbmUyL3plbmRf aW50ZXJmYWNlcy5oLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjIwCmRpZmYgLXUgLXAgLWQg LXIxLjIwIHplbmRfaW50ZXJmYWNlcy5oCi0tLSBaZW5kL3plbmRfaW50ZXJmYWNlcy5oCTIx IEZlYiAyMDA2IDIwOjEyOjQxIC0wMDAwCTEuMjAKKysrIFplbmQvemVuZF9pbnRlcmZhY2Vz LmgJMTkgRGVjIDIwMDYgMjA6NTc6NDQgLTAwMDAKQEAgLTM4LDcgKzM4LDcgQEAgdHlwZWRl ZiBzdHJ1Y3QgX3plbmRfdXNlcl9pdGVyYXRvciB7CiAJenZhbCAgICAgICAgICAgICAgICAg ICAgICp2YWx1ZTsKIH0gemVuZF91c2VyX2l0ZXJhdG9yOwogCi1aRU5EX0FQSSB6dmFsKiB6 ZW5kX2NhbGxfbWV0aG9kKHp2YWwgKipvYmplY3RfcHAsIHplbmRfY2xhc3NfZW50cnkgKm9i al9jZSwgemVuZF9mdW5jdGlvbiAqKmZuX3Byb3h5LCBjaGFyICpmdW5jdGlvbl9uYW1lLCBp bnQgZnVuY3Rpb25fbmFtZV9sZW4sIHp2YWwgKipyZXR2YWxfcHRyX3B0ciwgaW50IHBhcmFt X2NvdW50LCB6dmFsKiBhcmcxLCB6dmFsKiBhcmcyIFRTUk1MU19EQyk7CitaRU5EX0FQSSB6 dmFsKiB6ZW5kX3VfY2FsbF9tZXRob2QoenZhbCAqKm9iamVjdF9wcCwgemVuZF9jbGFzc19l bnRyeSAqb2JqX2NlLCB6ZW5kX2Z1bmN0aW9uICoqZm5fcHJveHksIGludCBmdW5jdGlvbl9u YW1lX3R5cGUsIHpzdHIgZnVuY3Rpb25fbmFtZSwgaW50IGZ1bmN0aW9uX25hbWVfbGVuLCB6 dmFsICoqcmV0dmFsX3B0cl9wdHIsIGludCBwYXJhbV9jb3VudCwgenZhbCogYXJnMSwgenZh bCogYXJnMiBUU1JNTFNfREMpOwogCiAjZGVmaW5lIHplbmRfY2FsbF9tZXRob2Rfd2l0aF8w X3BhcmFtcyhvYmosIG9ial9jZSwgZm5fcHJveHksIGZ1bmN0aW9uX25hbWUsIHJldHZhbCkg XAogCXplbmRfY2FsbF9tZXRob2Qob2JqLCBvYmpfY2UsIGZuX3Byb3h5LCBmdW5jdGlvbl9u YW1lLCBzaXplb2YoZnVuY3Rpb25fbmFtZSktMSwgcmV0dmFsLCAwLCBOVUxMLCBOVUxMIFRT Uk1MU19DQykKQEAgLTQ5LDYgKzQ5LDExIEBAIFpFTkRfQVBJIHp2YWwqIHplbmRfY2FsbF9t ZXRob2QoenZhbCAqKm8KICNkZWZpbmUgemVuZF9jYWxsX21ldGhvZF93aXRoXzJfcGFyYW1z KG9iaiwgb2JqX2NlLCBmbl9wcm94eSwgZnVuY3Rpb25fbmFtZSwgcmV0dmFsLCBhcmcxLCBh cmcyKSBcCiAJemVuZF9jYWxsX21ldGhvZChvYmosIG9ial9jZSwgZm5fcHJveHksIGZ1bmN0 aW9uX25hbWUsIHNpemVvZihmdW5jdGlvbl9uYW1lKS0xLCByZXR2YWwsIDIsIGFyZzEsIGFy ZzIgVFNSTUxTX0NDKQogCitzdGF0aWMgaW5saW5lIHp2YWwqIHplbmRfY2FsbF9tZXRob2Qo enZhbCAqKm9iaiwgemVuZF9jbGFzc19lbnRyeSAqb2JqX2NlLCB6ZW5kX2Z1bmN0aW9uICoq Zm5fcHJveHksIGNoYXIgKmZ1bmN0aW9uX25hbWUsIGludCBmdW5jdGlvbl9uYW1lX2xlbiwg enZhbCAqKnJldHZhbF9wdHJfcHRyLCBpbnQgcGFyYW1fY291bnQsIHp2YWwqIGFyZzEsIHp2 YWwqIGFyZzIgVFNSTUxTX0RDKQoreworCXJldHVybiB6ZW5kX3VfY2FsbF9tZXRob2Qob2Jq LCBvYmpfY2UsIGZuX3Byb3h5LCBJU19TVFJJTkcsIFpTVFIoZnVuY3Rpb25fbmFtZSksIGZ1 bmN0aW9uX25hbWVfbGVuLCByZXR2YWxfcHRyX3B0ciwgcGFyYW1fY291bnQsIGFyZzEsIGFy ZzIgVFNSTUxTX0NDKTsKK30KKwogWkVORF9BUEkgdm9pZCB6ZW5kX3VzZXJfaXRfcmV3aW5k KHplbmRfb2JqZWN0X2l0ZXJhdG9yICpfaXRlciBUU1JNTFNfREMpOwogWkVORF9BUEkgaW50 IHplbmRfdXNlcl9pdF92YWxpZCh6ZW5kX29iamVjdF9pdGVyYXRvciAqX2l0ZXIgVFNSTUxT X0RDKTsKIFpFTkRfQVBJIGludCB6ZW5kX3VzZXJfaXRfZ2V0X2N1cnJlbnRfa2V5KHplbmRf b2JqZWN0X2l0ZXJhdG9yICpfaXRlciwgenN0ciAqc3RyX2tleSwgdWludCAqc3RyX2tleV9s ZW4sIHVsb25nICppbnRfa2V5IFRTUk1MU19EQyk7CkluZGV4OiBaZW5kL3plbmRfQVBJLmMK PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQpSQ1MgZmlsZTogL3JlcG9zaXRvcnkvWmVuZEVuZ2luZTIvemVuZF9B UEkuYyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS40MTcKZGlmZiAtdSAtcCAtZCAtcjEuNDE3 IHplbmRfQVBJLmMKLS0tIFplbmQvemVuZF9BUEkuYwkxIERlYyAyMDA2IDE0OjU3OjQ0IC0w MDAwCTEuNDE3CisrKyBaZW5kL3plbmRfQVBJLmMJMTkgRGVjIDIwMDYgMjA6NTc6NDUgLTAw MDAKQEAgLTMzMyw2ICszMzMsMTAgQEAgc3RhdGljIGNoYXIgKnplbmRfcGFyc2VfYXJnX2lt cGwoaW50IGFyZwogCQlzcGVjX3dhbGsrKzsKIAl9CiAKKwlpZiAoYyA9PSAneCcpIHsKKwkJ YyA9IFVHKHVuaWNvZGUpID8gJ3UnIDogJ3MnOworCX0KKwogCXN3aXRjaCAoYykgewogCQlj YXNlICdsJzoKIAkJCXsKQEAgLTg2Nyw3ICs4NzEsNyBAQCBzdGF0aWMgaW50IHplbmRfcGFy c2VfdmFfYXJncyhpbnQgbnVtX2FyCiAJCQljYXNlICd0JzogY2FzZSAndSc6CiAJCSAgIAlj YXNlICdDJzogY2FzZSAnaCc6CiAJCQljYXNlICdVJzogY2FzZSAnUyc6Ci0JCQljYXNlICdm JzoKKwkJCWNhc2UgJ2YnOiBjYXNlICd4JzoKIAkJCQltYXhfbnVtX2FyZ3MrKzsKIAkJCQli cmVhazsKIAo= ------------44100C027CC7795--