From 96f5def2e2d0d1cfbedead1cbffcab3f58774b4e Mon Sep 17 00:00:00 2001 From: David Grudl Date: Wed, 30 Jun 2021 12:07:55 +0200 Subject: [PATCH] SqlsrvDriver: better option 'resource' check --- src/Dibi/Drivers/SqlsrvDriver.php | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/Dibi/Drivers/SqlsrvDriver.php b/src/Dibi/Drivers/SqlsrvDriver.php index 03ae091d..98287fbd 100644 --- a/src/Dibi/Drivers/SqlsrvDriver.php +++ b/src/Dibi/Drivers/SqlsrvDriver.php @@ -53,6 +53,9 @@ public function __construct(array $config) if (isset($config['resource'])) { $this->connection = $config['resource']; + if (!is_resource($this->connection)) { + throw new \InvalidArgumentException("Configuration option 'resource' is not resource."); + } } else { $options = $config['options']; @@ -65,13 +68,13 @@ public function __construct(array $config) sqlsrv_configure('WarningsReturnAsErrors', 0); $this->connection = sqlsrv_connect($config['host'], $options); + if (!is_resource($this->connection)) { + $info = sqlsrv_errors(SQLSRV_ERR_ERRORS); + throw new Dibi\DriverException($info[0]['message'], $info[0]['code']); + } sqlsrv_configure('WarningsReturnAsErrors', 1); } - if (!is_resource($this->connection)) { - $info = sqlsrv_errors(SQLSRV_ERR_ERRORS); - throw new Dibi\DriverException($info[0]['message'], $info[0]['code']); - } $this->version = sqlsrv_server_info($this->connection)['SQLServerVersion']; }