Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:62 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 77881 invoked from network); 16 Mar 2003 00:05:01 -0000 Received: from unknown (HELO vckyb2.nw.wakwak.com) (211.9.230.145) by pb1.pair.com with SMTP; 16 Mar 2003 00:05:01 -0000 Received: from at.wakwak.com (at.wakwak.com [211.9.230.135:25]) by vckyb2.nw.wakwak.com (Postfix) with ESMTP id 21AC140064 for ; Sun, 16 Mar 2003 09:05:00 +0900 (JST) Received: from at.wakwak.com (z244.61-115-69.ppp.wakwak.ne.jp [61.115.69.244]) by at.wakwak.com (8.12.8/8.12.8/2003-03-04) with SMTP id h2G04x9r088734 for ; Sun, 16 Mar 2003 09:05:00 +0900 (JST) (envelope-from moriyoshi@at.wakwak.com) Date: Sun, 16 Mar 2003 09:07:49 +0900 X-Mailer: EdMax Ver2.85.3F MIME-Version: 1.0 To: internals@lists.php.net Message-ID: <20030316090749HoJfhF@at.wakwak.com> Content-Type: multipart/mixed; boundary="------------Boundary_7xGdpqs(4cNEU6Q" Subject: Suggested fix for bug #22592 From: moriyoshi@at.wakwak.com (Moriyoshi Koizumi) --------------Boundary_7xGdpqs(4cNEU6Q Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Attached is a suggested fix for bug #22592, which has finally come out of a successful long-hour-introspection with zend_execute.c. Although the patch actually does somewhat hackish things and should appear to be invalid, I believe it's the right one. Moriyoshi --------------Boundary_7xGdpqs(4cNEU6Q Content-Type: text/plain; name="bug22592-patch.diff.txt" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="bug22592-patch.diff.txt" SW5kZXg6IFplbmQvemVuZF9leGVjdXRlLmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL3Jl cG9zaXRvcnkvWmVuZEVuZ2luZTIvemVuZF9leGVjdXRlLmMsdgpyZXRyaWV2aW5nIHJldmlz aW9uIDEuNDQ1CmRpZmYgLXUgLXIxLjQ0NSB6ZW5kX2V4ZWN1dGUuYwotLS0gWmVuZC96ZW5k X2V4ZWN1dGUuYwkxMSBNYXIgMjAwMyAyMzoxOTo0NSAtMDAwMAkxLjQ0NQorKysgWmVuZC96 ZW5kX2V4ZWN1dGUuYwkxNSBNYXIgMjAwMyAyMzoyODo1MSAtMDAwMApAQCAtNDQxLDcgKzQ0 MSw3IEBACiAJCQkJCQkJYnJlYWs7CiAJCQkJCQl9CiAJCQkJCQlpZiAoVC0+RUEuZGF0YS5z dHJfb2Zmc2V0Lm9mZnNldCA+PSBULT5FQS5kYXRhLnN0cl9vZmZzZXQuc3RyLT52YWx1ZS5z dHIubGVuKSB7Ci0JCQkJCQkJemVuZF91aW50IGk7CisJCQkJCQkJaW50IGk7CiAKIAkJCQkJ CQlpZiAoVC0+RUEuZGF0YS5zdHJfb2Zmc2V0LnN0ci0+dmFsdWUuc3RyLmxlbj09MCkgewog CQkJCQkJCQlTVFJfRlJFRShULT5FQS5kYXRhLnN0cl9vZmZzZXQuc3RyLT52YWx1ZS5zdHIu dmFsKTsKQEAgLTQ2NywzNyArNDY3LDI1IEBACiAKIAkJCQkJCVQtPkVBLmRhdGEuc3RyX29m ZnNldC5zdHItPnZhbHVlLnN0ci52YWxbVC0+RUEuZGF0YS5zdHJfb2Zmc2V0Lm9mZnNldF0g PSBmaW5hbF92YWx1ZS0+dmFsdWUuc3RyLnZhbFswXTsKIAkJCQkJCQotCQkJCQkJaWYgKG9w MikgewotCQkJCQkJCWlmIChvcDItPm9wX3R5cGUgPT0gSVNfVkFSKSB7Ci0JCQkJCQkJCWlm ICh2YWx1ZSA9PSAmVChvcDItPnUudmFyKS50bXBfdmFyKSB7Ci0JCQkJCQkJCQlTVFJfRlJF RSh2YWx1ZS0+dmFsdWUuc3RyLnZhbCk7Ci0JCQkJCQkJCX0KLQkJCQkJCQl9IGVsc2Ugewot CQkJCQkJCQlpZiAoZmluYWxfdmFsdWUgPT0gJlQob3AyLT51LnZhcikudG1wX3Zhcikgewot CQkJCQkJCQkJLyogd2UgY2FuIHNhZmVseSBmcmVlIGZpbmFsX3ZhbHVlIGhlcmUKLQkJCQkJ CQkJCSAqIGJlY2F1c2Ugc2VwYXJhdGlvbiBpcyBkb25lIG9ubHkKLQkJCQkJCQkJCSAqIGlu IGNhc2Ugb3AyLT5vcF90eXBlID09IElTX1ZBUiAqLwotCQkJCQkJCQkJU1RSX0ZSRUUoZmlu YWxfdmFsdWUtPnZhbHVlLnN0ci52YWwpOwotCQkJCQkJCQl9Ci0JCQkJCQkJfQotCQkJCQkJ fQogCQkJCQkJaWYgKGZpbmFsX3ZhbHVlID09ICZ0bXApIHsKIAkJCQkJCQl6dmFsX2R0b3Io ZmluYWxfdmFsdWUpOwogCQkJCQkJfQotCQkJCQkJLyoKLQkJCQkJCSAqIHRoZSB2YWx1ZSBv ZiBhbiBhc3NpZ25tZW50IHRvIGEgc3RyaW5nIG9mZnNldCBpcyB1bmRlZmluZWQKLQkJCQkJ CVQocmVzdWx0LT51LnZhcikudmFyID0gJlQtPkVBLmRhdGEuc3RyX29mZnNldC5zdHI7Ci0J CQkJCQkqLwogCQkJCQl9IHdoaWxlICgwKTsKLQkJCQkJLyogenZhbF9wdHJfZHRvcigmVC0+ RUEuZGF0YS5zdHJfb2Zmc2V0LnN0cik7IE51a2UgdGhpcyBsaW5lIGlmIGl0IGRvZXNuJ3Qg Y2F1c2UgYSBsZWFrICovCi0JCQkJCVQtPnRtcF92YXIudHlwZSA9IElTX1NUUklORzsKIAkJ CQl9CiAJCQkJYnJlYWs7CiAJCQlFTVBUWV9TV0lUQ0hfREVGQVVMVF9DQVNFKCkKIAkJfQot CQlUKHJlc3VsdC0+dS52YXIpLnZhci5wdHJfcHRyID0gJkVHKHVuaW5pdGlhbGl6ZWRfenZh bF9wdHIpOwotCQlTRUxFQ1RJVkVfUFpWQUxfTE9DSygqVChyZXN1bHQtPnUudmFyKS52YXIu cHRyX3B0ciwgcmVzdWx0KTsKKworCQlpZiAodHlwZSA9PSBJU19UTVBfVkFSKSB7CisJCQlt ZW1jcHkoVChyZXN1bHQtPnUudmFyKS52YXIudG1wX3N0ciwgdmFsdWUtPnZhbHVlLnN0ci52 YWwsIDIpOworCQkJU1RSX0ZSRUUodmFsdWUtPnZhbHVlLnN0ci52YWwpOworCQkJdmFsdWUt PnZhbHVlLnN0ci52YWwgPSBUKHJlc3VsdC0+dS52YXIpLnZhci50bXBfc3RyOworCQkJdmFs dWUtPnZhbHVlLnN0ci5sZW4gPSAxOworCQl9CisJCVQocmVzdWx0LT51LnZhcikudmFyLnB0 cl9wdHIgPSAmdmFsdWU7CisJCVNFTEVDVElWRV9QWlZBTF9MT0NLKHZhbHVlLCByZXN1bHQp OwogCQlBSV9VU0VfUFRSKFQocmVzdWx0LT51LnZhcikudmFyKTsKKwogCQlyZXR1cm47CiAJ fQogCkluZGV4OiBaZW5kL3plbmRfZXhlY3V0ZS5oCj09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6 IC9yZXBvc2l0b3J5L1plbmRFbmdpbmUyL3plbmRfZXhlY3V0ZS5oLHYKcmV0cmlldmluZyBy ZXZpc2lvbiAxLjUyCmRpZmYgLXUgLXIxLjUyIHplbmRfZXhlY3V0ZS5oCi0tLSBaZW5kL3pl bmRfZXhlY3V0ZS5oCTE2IEZlYiAyMDAzIDExOjEyOjQyIC0wMDAwCTEuNTIKKysrIFplbmQv emVuZF9leGVjdXRlLmgJMTUgTWFyIDIwMDMgMjM6Mjg6NTEgLTAwMDAKQEAgLTMyLDYgKzMy LDcgQEAKIAlzdHJ1Y3QgewogCQl6dmFsICoqcHRyX3B0cjsKIAkJenZhbCAqcHRyOworCQlj aGFyIHRtcF9zdHJbNF07CiAJfSB2YXI7CiAJc3RydWN0IHsKIAkJenZhbCB0bXBfdmFyOyAv KiBhIGR1bW15ICovCkBAIC0zOSw3ICs0MCw3IEBACiAJCXVuaW9uIHsKIAkJCXN0cnVjdCB7 CiAJCQkJenZhbCAqc3RyOwotCQkJCXplbmRfdWludCBvZmZzZXQ7CisJCQkJaW50IG9mZnNl dDsKIAkJCX0gc3RyX29mZnNldDsKIAkJCXplbmRfcHJvcGVydHlfcmVmZXJlbmNlIG92ZXJs b2FkZWRfZWxlbWVudDsKIAkJfSBkYXRhOwp= --------------Boundary_7xGdpqs(4cNEU6Q--