felipe Wed, 15 Jul 2009 01:08:15 +0000 URL: http://svn.php.net/viewvc?view=revision&revision=284091
Changed paths: A php/php-src/trunk/Zend/tests/bug48899.phpt U php/php-src/trunk/Zend/zend_API.c Log: - Fixed bug #48899 (is_callable returns true even if method does not exist in parent class) Added: php/php-src/trunk/Zend/tests/bug48899.phpt =================================================================== --- php/php-src/trunk/Zend/tests/bug48899.phpt (rev 0) +++ php/php-src/trunk/Zend/tests/bug48899.phpt 2009-07-15 01:08:15 UTC (rev 284091) @@ -0,0 +1,24 @@ +--TEST-- +Bug #48899 (is_callable returns true even if method does not exist in parent class) +--FILE-- +<?php + +class ParentClass { } + +class ChildClass extends ParentClass { + public function testIsCallable() { + var_dump(is_callable(array($this, 'parent::testIsCallable'))); + } + public function testIsCallable2() { + var_dump(is_callable(array($this, 'static::testIsCallable2'))); + } +} + +$child = new ChildClass(); +$child->testIsCallable(); +$child->testIsCallable2(); + +?> +--EXPECT-- +bool(false) +bool(true) Property changes on: php/php-src/trunk/Zend/tests/bug48899.phpt ___________________________________________________________________ Added: svn:keywords + Id Rev Revision Added: svn:eol-style + native Modified: php/php-src/trunk/Zend/zend_API.c =================================================================== --- php/php-src/trunk/Zend/zend_API.c 2009-07-14 21:54:59 UTC (rev 284090) +++ php/php-src/trunk/Zend/zend_API.c 2009-07-15 01:08:15 UTC (rev 284091) @@ -2907,7 +2907,7 @@ } } else { get_function_via_handler: - if (fcc->object_ptr) { + if (fcc->object_ptr && fcc->calling_scope == ce_org) { if (Z_OBJ_HT_P(fcc->object_ptr)->get_method) { zstr method = mname; int method_len = mlen;
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php