diff --git a/install/dist/lib/centos52.lib.php b/install/dist/lib/centos52.lib.php
index 911152804e9fb5bbcd10aa14c8c2443ee229aa8e..7e7cf7354d46817f51e2a9f1655c4d78c26be8ed 100644
--- a/install/dist/lib/centos52.lib.php
+++ b/install/dist/lib/centos52.lib.php
@@ -51,7 +51,7 @@ class installer extends installer_dist {
 			if (trim($line) != '' && substr($line, 0, 1) != '#')
 			{
 				@list($key, $value) = @explode("=", $line);
-				if (!empty($value))
+				if (isset($value) && $value !== '')
 				{
 					$key = rtrim($key);
 					$old_options[$key] = trim($value);
@@ -112,6 +112,7 @@ class installer extends installer_dist {
 
 		// amavisd user config file
 		$configfile = 'fedora_amavisd_conf';
+		if(!is_dir($conf["amavis"]["config_dir"])) mkdir($conf["amavis"]["config_dir"]);
 		if(is_file($conf["amavis"]["config_dir"].'/amavisd.conf')) copy($conf["amavis"]["config_dir"].'/amavisd.conf', $conf["amavis"]["config_dir"].'/amavisd.conf~');
 		if(is_file($conf["amavis"]["config_dir"].'/amavisd.conf~')) exec('chmod 400 '.$conf["amavis"]["config_dir"].'/amavisd.conf~');
 		$content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', "tpl/".$configfile.".master");
diff --git a/install/dist/lib/centos53.lib.php b/install/dist/lib/centos53.lib.php
index 0ac99f266a4687390fe6c9e77a35f0e5b27ef3d7..81156da9dcbd0a01f38bd981e754639d4f8bcbe4 100644
--- a/install/dist/lib/centos53.lib.php
+++ b/install/dist/lib/centos53.lib.php
@@ -51,7 +51,7 @@ class installer extends installer_dist {
 			if (trim($line) != '' && substr($line, 0, 1) != '#')
 			{
 				@list($key, $value) = @explode("=", $line);
-				if (!empty($value))
+				if (isset($value) && $value !== '')
 				{
 					$key = rtrim($key);
 					$old_options[$key] = trim($value);
@@ -112,9 +112,9 @@ class installer extends installer_dist {
 
 		// amavisd user config file
 		$configfile = 'fedora_amavisd_conf';
+		if(!is_dir($conf["amavis"]["config_dir"])) mkdir($conf["amavis"]["config_dir"]);
 		if(is_file($conf["amavis"]["config_dir"].'/amavisd.conf')) copy($conf["amavis"]["config_dir"].'/amavisd.conf', $conf["amavis"]["config_dir"].'/amavisd.conf~');
 		if(is_file($conf["amavis"]["config_dir"].'/amavisd.conf~')) exec('chmod 400 '.$conf["amavis"]["config_dir"].'/amavisd.conf~');
-		if(!is_dir($conf["amavis"]["config_dir"])) mkdir($conf["amavis"]["config_dir"]);
 		$content = rfsel($conf['ispconfig_install_dir'].'/server/conf-custom/install/'.$configfile.'.master', "tpl/".$configfile.".master");
 		$content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content);
 		$content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content);
diff --git a/install/dist/lib/centos70.lib.php b/install/dist/lib/centos70.lib.php
index 9cee55ff2d88dcf7a2db8df0e4e5111658ce963d..54542dd69bf4aa6627c4da549b4eb650eaefccc2 100644
--- a/install/dist/lib/centos70.lib.php
+++ b/install/dist/lib/centos70.lib.php
@@ -51,7 +51,7 @@ class installer extends installer_dist {
 			if (trim($line) != '' && substr($line, 0, 1) != '#')
 			{
 				@list($key, $value) = @explode("=", $line);
-				if (!empty($value))
+				if (isset($value) && $value !== '')
 				{
 					$key = rtrim($key);
 					$old_options[$key] = trim($value);
diff --git a/install/dist/lib/fedora.lib.php b/install/dist/lib/fedora.lib.php
index f017ea544e90747c6f9e911edb19b09811ad1675..658af9bcb55cdaf3777ddd0defaa7f13f267fd93 100644
--- a/install/dist/lib/fedora.lib.php
+++ b/install/dist/lib/fedora.lib.php
@@ -51,7 +51,7 @@ class installer_dist extends installer_base {
 			if (trim($line) != '' && substr($line, 0, 1) != '#')
 			{
 				@list($key, $value) = @explode("=", $line);
-				if (!empty($value))
+				if (isset($value) && $value !== '')
 				{
 					$key = rtrim($key);
 					$old_options[$key] = trim($value);
diff --git a/install/dist/lib/opensuse.lib.php b/install/dist/lib/opensuse.lib.php
index b452c2f2e1635a361946061a272dee9ab57f4c2e..ec278b9c1148e34b0f671c78ad089cc4e2844c97 100644
--- a/install/dist/lib/opensuse.lib.php
+++ b/install/dist/lib/opensuse.lib.php
@@ -67,7 +67,7 @@ class installer_dist extends installer_base {
 			if (trim($line) != '' && substr($line, 0, 1) != '#')
 			{
 				@list($key, $value) = @explode("=", $line);
-				if (!empty($value))
+				if (isset($value) && $value !== '')
 				{
 					$key = rtrim($key);
 					$old_options[$key] = trim($value);
diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php
index f867f04df8f1773d18190ede7889b0a75cb75a54..12fc8a066a03cb094e5da785d37d5dc7738dbea6 100644
--- a/install/lib/installer_base.lib.php
+++ b/install/lib/installer_base.lib.php
@@ -616,7 +616,7 @@ class installer_base {
 			if (trim($line) != '' && substr($line, 0, 1) != '#')
 			{
 				@list($key, $value) = @explode("=", $line);
-				if (!empty($value))
+				if (isset($value) && $value !== '')
 				{
 					$key = rtrim($key);
 					$old_options[$key] = trim($value);
diff --git a/interface/lib/app.inc.php b/interface/lib/app.inc.php
index 949f1643cf1f12d78611adf0f027b3452ffa387e..e23b6cab70bc43149141128677e03a48df73f9b4 100755
--- a/interface/lib/app.inc.php
+++ b/interface/lib/app.inc.php
@@ -240,7 +240,7 @@ class app {
 			}
 			$this->_language_inc = 1;
 		}
-		if(!empty($this->_wb[$text])) {
+		if(isset($this->_wb[$text]) && $this->wb[$text] !== '') {
 			$text = $this->_wb[$text];
 		} else {
 			if($this->_conf['debug_language']) {
diff --git a/interface/lib/classes/tform_base.inc.php b/interface/lib/classes/tform_base.inc.php
index 749ea5c708abceb8f9e0a489b55730b8d7bdf022..f5de5585f3f61848303e21ee429d539a325fdc0b 100644
--- a/interface/lib/classes/tform_base.inc.php
+++ b/interface/lib/classes/tform_base.inc.php
@@ -447,7 +447,7 @@ class tform_base {
 						if(is_array($field['value'])) {
 							foreach($field['value'] as $k => $v) {
 								$selected = ($k == $val)?' SELECTED':'';
-								if(!empty($this->wordbook[$v]))
+								if(isset($this->wordbook[$v]))
 									$v = $this->wordbook[$v];
 								$out .= "<option value='$k'$selected>".$this->lng($v)."</option>\r\n";
 							}
@@ -881,7 +881,7 @@ class tform_base {
 				}
 				break;
 			case 'NOTEMPTY':
-				if(empty($field_value)) {
+				if(!isset($field_value) || $field_value === '') {
 					$errmsg = $validator['errmsg'];
 					if(isset($this->wordbook[$errmsg])) {
 						$this->errorMessage .= $this->wordbook[$errmsg]."<br />\r\n";
diff --git a/server/lib/classes/file.inc.php b/server/lib/classes/file.inc.php
index a5f4c84d56ac1f9b8f0db72186cae3cb455c4298..eadb38b789f0cfd9f80d6fd951e53be403616821 100644
--- a/server/lib/classes/file.inc.php
+++ b/server/lib/classes/file.inc.php
@@ -190,7 +190,7 @@ class file{
 		// @ext_save : 1 for YES, 0 for NO - meaning it will filter out system files or not (such as .htaccess)
 
 		$dirname = realpath($dirname);
-		if (!$exts || empty($exts) || $exts == '') {
+		if (empty($exts)) {
 			$exts = array('jpg', 'gif', 'jpeg', 'png');
 		}
 		if ($handle = opendir($dirname)) {
diff --git a/server/plugins-available/mailman_plugin.inc.php b/server/plugins-available/mailman_plugin.inc.php
index 9ebb2aa9a73f326f48d2c7b7d97f33a0c40eb4a7..0d282f50bf3bc4a17392bc464ef9072eb6a070b0 100644
--- a/server/plugins-available/mailman_plugin.inc.php
+++ b/server/plugins-available/mailman_plugin.inc.php
@@ -115,7 +115,7 @@ class mailman_plugin {
 	function update_config() {
 		global $app, $conf;
 
-		copy($this->mailman_config_dir.'mm_cfg.py', $this->mailman_config_dir.'mm_cfg.py');
+		copy($this->mailman_config_dir.'mm_cfg.py', $this->mailman_config_dir.'mm_cfg.py~');
 
 		// load the server configuration options
 		$app->uses('getconf');
@@ -136,7 +136,7 @@ class mailman_plugin {
 			if (strlen($line) && substr($line, 0, 1) != '#')
 			{
 				list($key, $value) = explode("=", $line);
-				if (!empty($value))
+				if ($value && $value !== '')
 				{
 					$key = rtrim($key);
 					$old_options[$key] = trim($value);