From 00d5e04c1e8312e536d9920baca6e9201f48d7f3 Mon Sep 17 00:00:00 2001 From: Holger Kohnen Date: Sat, 22 Jun 2019 16:14:58 +0200 Subject: [PATCH] Fix for #14 - Buffer events always and check buffer always after socket polling. --- src/ChromeDevtoolsProtocol/DevtoolsClient.php | 14 +++++++------- src/ChromeDevtoolsProtocol/Session.php | 14 +++++++------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/src/ChromeDevtoolsProtocol/DevtoolsClient.php b/src/ChromeDevtoolsProtocol/DevtoolsClient.php index 749dea4d..31e83934 100644 --- a/src/ChromeDevtoolsProtocol/DevtoolsClient.php +++ b/src/ChromeDevtoolsProtocol/DevtoolsClient.php @@ -111,9 +111,9 @@ public function awaitEvent(ContextInterface $ctx, string $method) $this->handleMessage($message); } - if (!empty($this->eventBuffers[$method])) { - return array_shift($this->eventBuffers[$method])->params; - } + if (!empty($this->eventBuffers[$method])) { + return array_shift($this->eventBuffers[$method])->params; + } } } @@ -129,10 +129,10 @@ private function handleMessage($message) } } - if (!isset($this->eventBuffers[$message->method])) { - $this->eventBuffers[$message->method] = []; - } - array_push($this->eventBuffers[$message->method], $message); + if (!isset($this->eventBuffers[$message->method])) { + $this->eventBuffers[$message->method] = []; + } + array_push($this->eventBuffers[$message->method], $message); } else if (isset($message->id)) { $this->commandResults[$message->id] = $message->result ?? new \stdClass(); diff --git a/src/ChromeDevtoolsProtocol/Session.php b/src/ChromeDevtoolsProtocol/Session.php index 502ac1fa..cbc2cee4 100644 --- a/src/ChromeDevtoolsProtocol/Session.php +++ b/src/ChromeDevtoolsProtocol/Session.php @@ -121,9 +121,9 @@ public function awaitEvent(ContextInterface $ctx, string $method) $this->handleMessage(json_decode($receivedMessage->message)); } - if (!empty($this->eventBuffers[$method])) { - return array_shift($this->eventBuffers[$method])->params; - } + if (!empty($this->eventBuffers[$method])) { + return array_shift($this->eventBuffers[$method])->params; + } } } @@ -142,10 +142,10 @@ private function handleMessage($message) } } - if (!isset($this->eventBuffers[$message->method])) { - $this->eventBuffers[$message->method] = []; - } - array_push($this->eventBuffers[$message->method], $message); + if (!isset($this->eventBuffers[$message->method])) { + $this->eventBuffers[$message->method] = []; + } + array_push($this->eventBuffers[$message->method], $message); } else if (isset($message->id)) { $this->commandResults[$message->id] = $message->result ?? new \stdClass();