From 20790eb168583a39a76851cf255de1019a31c87f Mon Sep 17 00:00:00 2001
From: ftimme <ft@falkotimme.com>
Date: Thu, 31 Jan 2013 09:19:29 -0500
Subject: [PATCH] - Symlink removal when client is deleted: added check for empty array + logging.

---
 server/plugins-available/nginx_plugin.inc.php |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/server/plugins-available/nginx_plugin.inc.php b/server/plugins-available/nginx_plugin.inc.php
index e9be604..7fa3570 100644
--- a/server/plugins-available/nginx_plugin.inc.php
+++ b/server/plugins-available/nginx_plugin.inc.php
@@ -2443,9 +2443,14 @@
 			if(is_dir($client_dir) && !stristr($client_dir,'..')) {
 				// remove symlinks from $client_dir
 				$files = array_diff(scandir($client_dir), array('.','..'));
-				foreach($files as $file){
-					if(is_link($client_dir.'/'.$file)) unlink($client_dir.'/'.$file);
-				} 
+				if(is_array($files) && !empty($files)){
+					foreach($files as $file){
+						if(is_link($client_dir.'/'.$file)){
+							unlink($client_dir.'/'.$file);
+							$app->log('Removed symlink: '.$client_dir.'/'.$file,LOGLEVEL_DEBUG);
+						}
+					}
+				}
 				
 				@rmdir($client_dir);
 				$app->log('Removed client directory: '.$client_dir,LOGLEVEL_DEBUG);

--
Gitblit v1.9.1