From d8096a402c9262b938e64d1c75b3cd5c3d3fb3a6 Mon Sep 17 00:00:00 2001
From: Hypolite Petovan <mrpetovan@gmail.com>
Date: Fri, 6 Jul 2018 21:08:48 -0400
Subject: [PATCH] Update use of environment variables in loadDatabase

---
 src/App.php | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/src/App.php b/src/App.php
index 6773140f26..be4c7785ee 100644
--- a/src/App.php
+++ b/src/App.php
@@ -504,22 +504,22 @@ class App
 
 		// Use environment variables for mysql if they are set beforehand
 		if (!empty(getenv('MYSQL_HOST'))
-			&& !empty(getenv('MYSQL_PORT'))
 			&& (!empty(getenv('MYSQL_USERNAME')) || !empty(getenv('MYSQL_USER')))
-			&& !empty(getenv('MYSQL_PASSWORD'))
+			&& !getenv('MYSQL_PASSWORD') === false
 			&& !empty(getenv('MYSQL_DATABASE')))
 		{
-			$db_host = getenv('MYSQL_HOST') . ':' . getenv('MYSQL_PORT');
-
+			$db_host = getenv('MYSQL_HOST');
+			if (!empty(getenv('MYSQL_PORT'))) {
+				$db_host .= ':' . getenv('MYSQL_PORT');
+			}
 			if (!empty(getenv('MYSQL_USERNAME'))) {
 				$db_user = getenv('MYSQL_USERNAME');
-			} elseif (!empty(getenv('MYSQL_USER'))) {
+			} else {
 				$db_user = getenv('MYSQL_USER');
 			}
-
-			$db_pass = getenv('MYSQL_PASSWORD');
+			$db_pass = (string) getenv('MYSQL_PASSWORD');
 			$db_data = getenv('MYSQL_DATABASE');
-		}elseif (file_exists($this->basepath . DIRECTORY_SEPARATOR . '.htconfig.php')) {
+		} elseif (file_exists($this->basepath . DIRECTORY_SEPARATOR . '.htconfig.php')) {
 			$a = new \stdClass();
 			include $this->basepath . DIRECTORY_SEPARATOR . '.htconfig.php';
 			$charset = isset($a->config["system"]["db_charset"]) ? $a->config["system"]["db_charset"] : $charset;
-- 
2.39.5