From 7f37b879fd102f9e96f1242abbeb6c481be8e162 Mon Sep 17 00:00:00 2001 From: thomascube Date: Fri, 31 Jul 2009 09:13:11 +0000 Subject: Cleanup temporary attachment files when killing session + fix indentation --- .../filesystem_attachments.php | 27 +++++++++++----------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/plugins/filesystem_attachments/filesystem_attachments.php b/plugins/filesystem_attachments/filesystem_attachments.php index f4b9b6d7d..fcdcea7a5 100644 --- a/plugins/filesystem_attachments/filesystem_attachments.php +++ b/plugins/filesystem_attachments/filesystem_attachments.php @@ -40,6 +40,7 @@ class filesystem_attachments extends rcube_plugin // 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 @@ class filesystem_attachments extends rcube_plugin function save($args) { $args['status'] = false; - - if (!$args['path']) { - $rcmail = rcmail::get_instance(); + + 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; - } + $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 -- cgit v1.2.3