From f6ef057e40714b827b85c65a5a29862a27e90c9c Mon Sep 17 00:00:00 2001 From: Konstantin Grachev Date: Mon, 1 Feb 2021 02:40:00 +0300 Subject: [PATCH] Snappy throw exception if extension not installed --- src/Socket/SnappySocket.php | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/Socket/SnappySocket.php b/src/Socket/SnappySocket.php index 775ae8a..50d41d3 100644 --- a/src/Socket/SnappySocket.php +++ b/src/Socket/SnappySocket.php @@ -8,8 +8,6 @@ use PHPinnacle\Buffer\ByteBuffer; use Psr\Log\LoggerInterface; use function hash; use function pack; -use function snappy_compress; -use function snappy_uncompress; use function str_split; use function unpack; @@ -23,6 +21,14 @@ final class SnappySocket implements Socket private Socket $socket, private LoggerInterface $logger, ) { + if ( + !\function_exists('snappy_compress') + || !\function_exists('snappy_uncompress') + || !\extension_loaded('snappy') + ) { + throw new \LogicException('Snappy extension not installed.'); + } + $this->output = new ByteBuffer(); $this->input = new ByteBuffer(); }