Skip to content

Commit 9943b55

Browse files
authored
Merge pull request #160 from clue-labs/trace
Avoid PHP warnings due to lack of args in exception trace on PHP 7.4
2 parents cab1464 + b096892 commit 9943b55

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

src/Query/RetryExecutor.php

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,13 +53,19 @@ public function tryQuery(Query $query, $retries)
5353
$r = new \ReflectionProperty('Exception', 'trace');
5454
$r->setAccessible(true);
5555
$trace = $r->getValue($e);
56+
57+
// Exception trace arguments are not available on some PHP 7.4 installs
58+
// @codeCoverageIgnoreStart
5659
foreach ($trace as &$one) {
57-
foreach ($one['args'] as &$arg) {
58-
if ($arg instanceof \Closure) {
59-
$arg = 'Object(' . \get_class($arg) . ')';
60+
if (isset($one['args'])) {
61+
foreach ($one['args'] as &$arg) {
62+
if ($arg instanceof \Closure) {
63+
$arg = 'Object(' . \get_class($arg) . ')';
64+
}
6065
}
6166
}
6267
}
68+
// @codeCoverageIgnoreEnd
6369
$r->setValue($e, $trace);
6470
} else {
6571
--$retries;

0 commit comments

Comments
 (0)