From 7f37b879fd102f9e96f1242abbeb6c481be8e162 Mon Sep 17 00:00:00 2001
From: thomascube <thomas@roundcube.net>
Date: Fri, 31 Jul 2009 05:13:11 -0400
Subject: [PATCH] Cleanup temporary attachment files when killing session + fix indentation

---
 plugins/filesystem_attachments/filesystem_attachments.php |   27 ++++++++++++++-------------
 1 files changed, 14 insertions(+), 13 deletions(-)

diff --git a/plugins/filesystem_attachments/filesystem_attachments.php b/plugins/filesystem_attachments/filesystem_attachments.php
index f4b9b6d..fcdcea7 100644
--- a/plugins/filesystem_attachments/filesystem_attachments.php
+++ b/plugins/filesystem_attachments/filesystem_attachments.php
@@ -40,6 +40,7 @@
 
         // Delete all temp files associated with this user
         $this->add_hook('cleanup_attachments', array($this, 'cleanup'));
+        $this->add_hook('kill_session', array($this, 'cleanup'));
     }
 
     /**
@@ -73,21 +74,21 @@
     function save($args)
     {
         $args['status'] = false;
-	
-	if (!$args['path']) {
-    	    $rcmail = rcmail::get_instance();
-            $temp_dir = unslashify($rcmail->config->get('temp_dir'));
-    	    $tmp_path = tempnam($temp_dir, 'rcmAttmnt');
 
-    	    if ($fp = fopen($tmp_path, 'w')) {
-        	fwrite($fp, $args['data']);
-        	fclose($fp);
-        	$args['path'] = $tmp_path;
-    	    } else
-		return $args;
-	}
+        if (!$args['path']) {
+            $rcmail = rcmail::get_instance();
+            $temp_dir = unslashify($rcmail->config->get('temp_dir'));
+            $tmp_path = tempnam($temp_dir, 'rcmAttmnt');
+
+            if ($fp = fopen($tmp_path, 'w')) {
+                fwrite($fp, $args['data']);
+                fclose($fp);
+                $args['path'] = $tmp_path;
+            } else
+                return $args;
+        }
         
-	$args['id'] = count($_SESSION['plugins']['filesystem_attachments']['tmp_files'])+1;
+        $args['id'] = count($_SESSION['plugins']['filesystem_attachments']['tmp_files'])+1;
         $args['status'] = true;
             
         // Note the file for later cleanup

--
Gitblit v1.9.1