Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

--TEST-- Bug #80719: Iterating after failed ArrayObject::setIteratorClass() causes Segment..

Decoded Output download

--TEST--
Bug #80719: Iterating after failed ArrayObject::setIteratorClass() causes Segmentation fault
--FILE--
<?php

$array = new ArrayObject([42]);
try {
    $array->setIteratorClass(FilterIterator::class);
} catch (TypeError $e) {
    echo $e->getMessage(), "
";
}
foreach ($array as $v) {
    var_dump($v);
}

?>
--EXPECT--
ArrayObject::setIteratorClass(): Argument #1 ($iteratorClass) must be a class name derived from ArrayIterator, FilterIterator given
int(42)

Did this file decode correctly?

Original Code

--TEST--
Bug #80719: Iterating after failed ArrayObject::setIteratorClass() causes Segmentation fault
--FILE--
<?php

$array = new ArrayObject([42]);
try {
    $array->setIteratorClass(FilterIterator::class);
} catch (TypeError $e) {
    echo $e->getMessage(), "\n";
}
foreach ($array as $v) {
    var_dump($v);
}

?>
--EXPECT--
ArrayObject::setIteratorClass(): Argument #1 ($iteratorClass) must be a class name derived from ArrayIterator, FilterIterator given
int(42)

Function Calls

None

Variables

None

Stats

MD5 0160c1c0cf2ba25d4f0914148b93f855
Eval Count 0
Decode Time 75 ms