Open UnknownNull opened 9 months ago
It will cost some time to work on this issue. I currently don't have so much time. But I'll work on it as soon as I have enough time again.
Why not to use libasynql instead of using php native mysql library? Using this traditional method is may cause problems with queries specially when mysql connection is slow.
Bug: Crash
Informations
BetterBan Version: 4.2.2 Server-OS: Windows 2012 r2 PHP Version: 8.2 PocketMine-MP Version: 5.6.1
Error
[Console Error:] 2023-10-01 [06:19:26.203] [Server thread/EMERGENCY]: Crash occurred while handling a packet from session: 127.0.0.1 62267 2023-10-01 [06:19:26.213] [Server thread/CRITICAL]: mysqli_sql_exception: "Malformed packet" (2027) in "plugins/BetterBan_dev-104 (1).phar/src/supercrafter333/BetterBan/Permission/MySQLBanList" at line 76 --- Stack trace ---
0 plugins/BetterBan_dev-104 (1).phar/src/supercrafter333/BetterBan/Permission/MySQLBanList(76): mysqli->ping()
1 plugins/BetterBan_dev-104 (1).phar/src/supercrafter333/BetterBan/Permission/MySQLBanList(150): supercrafter333\BetterBan\Permission\MySQLBanList->reconnect()
2 plugins/BetterBan_dev-104 (1).phar/src/supercrafter333/BetterBan/BetterBan(195): supercrafter333\BetterBan\Permission\MySQLBanList->isBanned(string[11] parham_king)
3 plugins/BetterBan_dev-104 (1).phar/src/supercrafter333/BetterBan/EventListener(148): supercrafter333\BetterBan\BetterBan::isBanned(string[11] parham_king)
4 pmsrc/src/event/RegisteredListener(61): supercrafter333\BetterBan\EventListener->onPreLogin(object pocketmine\event\player\PlayerPreLoginEvent#159782)
5 pmsrc/src/event/Event(63): pocketmine\event\RegisteredListener->callEvent(object pocketmine\event\player\PlayerPreLoginEvent#159782)
6 pmsrc/src/network/mcpe/handler/LoginPacketHandler(146): pocketmine\event\Event->call()
7 pmsrc/vendor/arabskills/bedrock-protocol/src/LoginPacket(105): pocketmine\network\mcpe\handler\LoginPacketHandler->handleLogin(object pocketmine\network\mcpe\protocol\LoginPacket#185296)
8 pmsrc/src/network/mcpe/NetworkSession(514): pocketmine\network\mcpe\protocol\LoginPacket->handle(object pocketmine\network\mcpe\handler\LoginPacketHandler#158784)
9 pmsrc/src/network/mcpe/NetworkSession(452): pocketmine\network\mcpe\NetworkSession->handleDataPacket(object pocketmine\network\mcpe\protocol\LoginPacket#185296, string[596392] ....j..$....{"chain":["eyJ4NXUiOiJNSFl3RUFZSEtvWkl6ajBDQVFZRks0RUVBQ0lEWWdBRXVwX)
10 pmsrc/src/network/mcpe/raklib/RakLibInterface(219): pocketmine\network\mcpe\NetworkSession->handleEncoded(string[26341] .....J.......|.o..O.*....V..Q.j!H...C.z.J ..J..8.{...3...Z.............b....$..2)
11 pmsrc/vendor/pocketmine/raklib-ipc/src/RakLibToUserThreadMessageReceiver(40): pocketmine\network\mcpe\raklib\RakLibInterface->onPacketReceive(int 0, string[26342] ......J.......|.o..O.*....V..Q.j!H...C.z.J ..J..8.{...3...Z.............b....$..)
12 pmsrc/src/network/mcpe/raklib/RakLibInterface(111): raklib\server\ipc\RakLibToUserThreadMessageReceiver->handle(object pocketmine\network\mcpe\raklib\RakLibInterface#157042)
13 pmsrc/vendor/pocketmine/snooze/src/SleeperHandler(120): pocketmine\network\mcpe\raklib\RakLibInterface->pocketmine\network\mcpe\raklib{closure}()
14 pmsrc/src/TimeTrackingSleeperHandler(58): pocketmine\snooze\SleeperHandler->processNotifications()
15 pmsrc/vendor/pocketmine/snooze/src/SleeperHandler(79): pocketmine\TimeTrackingSleeperHandler->processNotifications()
16 pmsrc/src/Server(1707): pocketmine\snooze\SleeperHandler->sleepUntil(float 1696141166.154)
17 pmsrc/src/Server(1089): pocketmine\Server->tickProcessor()
18 pmsrc/src/PocketMine(334): pocketmine\Server->__construct(object pocketmine\thread\ThreadSafeClassLoader#6, object pocketmine\utils\MainLogger#3, string[50] C:\Users\Administrator\Documents\MV - RL\5.Arcade\, string[58] C:\Users\Administrator\Documents\MV - RL\5.Arcade\plugins)
19 pmsrc/src/PocketMine(357): pocketmine\server()
20 pmsrc(11): require(string[94] phar://C:/Users/Administrator/Documents/MV - RL/5.Arcade/PocketMine-MP.phar/src/)