From f779881b6a50cd80534b605f955b088ce55946e9 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Sun, 29 Mar 2020 16:52:36 +0100 Subject: [PATCH] Updated to latest RakLib bleeding edge this version brings quite a few inter-thread communication improvements. --- composer.lock | 9 ++++----- src/network/mcpe/raklib/RakLibInterface.php | 6 +++--- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/composer.lock b/composer.lock index 597001ca0..5eceef78d 100644 --- a/composer.lock +++ b/composer.lock @@ -529,16 +529,15 @@ "source": { "type": "git", "url": "https://github.com/pmmp/RakLib.git", - "reference": "48c67e3325bc222cbba51de7bd5d7e9847b8de7b" + "reference": "76e8d9f15c5ecc0d08d39968023380a2086f0d31" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/pmmp/RakLib/zipball/48c67e3325bc222cbba51de7bd5d7e9847b8de7b", - "reference": "48c67e3325bc222cbba51de7bd5d7e9847b8de7b", + "url": "https://api.github.com/repos/pmmp/RakLib/zipball/76e8d9f15c5ecc0d08d39968023380a2086f0d31", + "reference": "76e8d9f15c5ecc0d08d39968023380a2086f0d31", "shasum": "" }, "require": { - "ext-bcmath": "*", "ext-pthreads": "~3.2.0", "ext-sockets": "*", "php": ">=7.2.0", @@ -564,7 +563,7 @@ "GPL-3.0" ], "description": "A RakNet server implementation written in PHP", - "time": "2020-03-28T01:04:17+00:00" + "time": "2020-03-29T10:00:16+00:00" }, { "name": "pocketmine/snooze", diff --git a/src/network/mcpe/raklib/RakLibInterface.php b/src/network/mcpe/raklib/RakLibInterface.php index c6f3f8860..7618a953e 100644 --- a/src/network/mcpe/raklib/RakLibInterface.php +++ b/src/network/mcpe/raklib/RakLibInterface.php @@ -139,15 +139,15 @@ class RakLibInterface implements ServerInstance, AdvancedNetworkInterface{ $this->sessions[$sessionId] = $session; } - public function handleEncapsulated(int $sessionId, EncapsulatedPacket $packet, int $flags) : void{ + public function handleEncapsulated(int $sessionId, string $packet) : void{ if(isset($this->sessions[$sessionId])){ - if($packet->buffer === "" or $packet->buffer{0} !== self::MCPE_RAKNET_PACKET_ID){ + if($packet === "" or $packet[0] !== self::MCPE_RAKNET_PACKET_ID){ return; } //get this now for blocking in case the player was closed before the exception was raised $session = $this->sessions[$sessionId]; $address = $session->getIp(); - $buf = substr($packet->buffer, 1); + $buf = substr($packet, 1); try{ $session->handleEncoded($buf); }catch(BadPacketException $e){