diff --git a/htdocs/lib/databases/mssql.lib.php b/htdocs/lib/databases/mssql.lib.php
index 04525727aefbe9c725c9aa6c585d50a86a806953..7c04d8daa4030ee3efc12dddae6998c93a008fde 100644
--- a/htdocs/lib/databases/mssql.lib.php
+++ b/htdocs/lib/databases/mssql.lib.php
@@ -237,7 +237,7 @@ class DoliDb
 	function close()
 	{
 		dol_syslog("DoliDB::disconnect",LOG_DEBUG);
-		return mssql_close($this->db);
+		return $this->db?mssql_close($this->db):0;
 	}
 
 
diff --git a/htdocs/lib/databases/mysql.lib.php b/htdocs/lib/databases/mysql.lib.php
index 3f0b28f4c77c200ae061ccea95b61cca6a01493d..ba447cd2787c6222f252a34c2e76d4034a3a8d5f 100644
--- a/htdocs/lib/databases/mysql.lib.php
+++ b/htdocs/lib/databases/mysql.lib.php
@@ -281,7 +281,7 @@ class DoliDb
 	function close()
 	{
 		dol_syslog("DoliDB::disconnect",LOG_DEBUG);
-		return mysql_close($this->db);
+		return ($this->db?mysql_close($this->db):0);
 	}
 
 
diff --git a/htdocs/lib/databases/mysqli.lib.php b/htdocs/lib/databases/mysqli.lib.php
index 4cfcb534e5be065a55e38ed83b17aa3358acbc15..fb8d5b534f28e0cf336f1c12737543ee65def8b9 100644
--- a/htdocs/lib/databases/mysqli.lib.php
+++ b/htdocs/lib/databases/mysqli.lib.php
@@ -288,7 +288,7 @@ class DoliDb
 	function close()
 	{
 		dol_syslog("DoliDB::disconnect",LOG_DEBUG);
-		return mysqli_close($this->db);
+		return $this->db?mysqli_close($this->db):0;
 	}
 
 
diff --git a/htdocs/lib/databases/pgsql.lib.php b/htdocs/lib/databases/pgsql.lib.php
index 9ad226662fe25ec0bdd673078ab9e6a25748d2ce..fc4c24bbf277fdc308edb39cc6f416a7fa1d6d25 100644
--- a/htdocs/lib/databases/pgsql.lib.php
+++ b/htdocs/lib/databases/pgsql.lib.php
@@ -404,7 +404,7 @@ class DoliDb
 	function close()
 	{
 		dol_syslog("DoliDB::disconnect",LOG_DEBUG);
-		return pg_close($this->db);
+		return $this->db?pg_close($this->db):0;
 	}
 
 	/**