diff --git a/php/midi/src/Midi/Koala/ParseRecorded.php b/php/midi/src/Midi/Koala/ParseRecorded.php index 218692c..e731753 100644 --- a/php/midi/src/Midi/Koala/ParseRecorded.php +++ b/php/midi/src/Midi/Koala/ParseRecorded.php @@ -256,6 +256,7 @@ private static function buildActions($recordedSession) } foreach ($fixOutboundsIdx as $identifier => $todoFixIdxs) { + $lastFixIdx = ''; $c = count($todoFixIdxs); for ($i = 0; $i < $c;) { $todoFixIdx = $todoFixIdxs[$i]; @@ -264,9 +265,13 @@ private static function buildActions($recordedSession) if (empty($outbounds[$nextIdx]["Request"])) { $outbounds[$todoFixIdx]['Response'] = $outbounds[$nextIdx]["Response"]; unset($outbounds[$nextIdx]); + $lastFixIdx = $todoFixIdx; $i += 2; continue; } + } elseif (empty($outbounds[$todoFixIdx]["Request"]) && !empty($lastFixIdx)) { + $outbounds[$lastFixIdx]['Response'] .= $outbounds[$todoFixIdx]["Response"]; + unset($outbounds[$todoFixIdx]); } ++$i; }