diff --git a/server/lib/app.inc.php b/server/lib/app.inc.php
index 4bd7360218e6f39cf77dad1ad9e42498da4f8b9d..7f35b05a3b2ef73007ce0de6591ecbf52c929f35 100644
--- a/server/lib/app.inc.php
+++ b/server/lib/app.inc.php
@@ -83,7 +83,10 @@ class app extends stdClass {
 				if we are in a multiserver setup
 			*/
 
-			if($conf['dbmaster_host'] != '' && ($conf['dbmaster_host'] != $conf['db_host'] || ($conf['dbmaster_host'] == $conf['db_host'] && $conf['dbmaster_database'] != $conf['db_database']))) {
+			if($conf['dbmaster_host'] != ''
+					&& ($conf['dbmaster_host'] != $conf['db_host']
+						|| ($conf['dbmaster_host'] == $conf['db_host']
+								&& ($conf['dbmaster_database'] != $conf['db_database'] || $conf['dbmaster_port'] != $conf['db_port'])))) {
 				try {
 					$this->dbmaster = new db($conf['dbmaster_host'], $conf['dbmaster_user'], $conf['dbmaster_password'], $conf['dbmaster_database'], $conf['dbmaster_port'], $conf['dbmaster_client_flags']);
 				} catch (Exception $e) {