-
Notifications
You must be signed in to change notification settings - Fork 2.5k
Conversation
@datibbaw such a fix needs a failing test case as well... Was this check removed in 5.6? |
@Ocramius A failing test case would cause a crash, I'm not sure how to provide that without breaking the entire test suite :) |
@datibbaw that's pretty much what it should do :-) |
@Ocramius Perhaps I misunderstood what you're asking of me. The test case that should fail is already there; |
@datibbaw the test should be in linking php/php-src#614 |
@Ocramius Ah, it fails |
@datibbaw yeah, but those are all not testing at the source. While they indeed reveal the defect, a unit test on the affected unit should be written - I can eventually poke you in room11 when I have time. |
@Ocramius I'm probably a bit dense, but the affected unit is |
@datibbaw I'll be sure to have an additional cup of coffee tomorrow (was dragged away by the pr title) :-) |
…-arrayobject-infinite-recursion' Close zendframework/zendframework#6096
…-arrayobject-infinite-recursion' into develop Close zendframework/zendframework#6096 Forward Port zendframework/zendframework#6096
In PHP 5.6(next), calling
isset()
on an instance ofArrayObject
will invoke bothoffsetExists()
andoffsetGet()
. Adding anisset()
insideoffsetGet()
will therefore result in an infinite recursion; this is related to php-src/614.It causes
tests/ZendTest/StdLib/ParametersTest.php
to fail.This patch addresses the above issue in a backward compatible manner.