I'm not completely sure in the patch. Currently the following script prints "C", but with your patch it prints "B".

<?php
class B {
  function foo() {
    echo "B\n";
  }
  function test() {
    $c = new C();
    call_user_func(array($c, 'foo'));
  }
}
class C extends B {
  function foo() {
    echo "C\n";
  }
}
$b = new B;
$b->test();
}