Skip to content

Commit 8d60a03

Browse files
committed
- Fixed an issue with references caused a row to be duplicated in some cases
1 parent f272929 commit 8d60a03

File tree

1 file changed

+10
-9
lines changed

1 file changed

+10
-9
lines changed

src/Builder/RunnableSelect.php

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -70,16 +70,17 @@ public function fetchRows(Closure $callback = null) {
7070
}
7171
}
7272
if($callback !== null) {
73-
$resultData = [];
74-
foreach($data as $row) {
75-
$result = $callback($row);
76-
if($result !== null && !($result instanceof DBIgnoreRow)) {
77-
$resultData[] = $result;
78-
} else {
79-
$resultData[] = $row;
73+
return call_user_func(function ($resultData = []) use ($data, $callback) {
74+
foreach($data as $row) {
75+
$result = $callback($row);
76+
if($result !== null && !($result instanceof DBIgnoreRow)) {
77+
$resultData[] = $result;
78+
} else {
79+
$resultData[] = $row;
80+
}
8081
}
81-
}
82-
return $resultData;
82+
return $resultData;
83+
});
8384
}
8485
return $data;
8586
});

0 commit comments

Comments
 (0)