From c793c6e811845a3332e1d8961a050e758498dc00 Mon Sep 17 00:00:00 2001
From: thomascube <thomas@roundcube.net>
Date: Wed, 08 Jul 2009 04:04:50 -0400
Subject: [PATCH] Check abort flag and display error message from plugin if available

---
 program/steps/mail/attachments.inc |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/program/steps/mail/attachments.inc b/program/steps/mail/attachments.inc
index 52c09b4..6015703 100644
--- a/program/steps/mail/attachments.inc
+++ b/program/steps/mail/attachments.inc
@@ -84,11 +84,11 @@
 
     $attachment = $RCMAIL->plugins->exec_hook('upload_attachment', $attachment);
 
-    if ($attachment['status']) {
+    if ($attachment['status'] && !$attachment['abort']) {
       $id = $attachment['id'];
       
       // store new attachment in session
-      unset($attachment['status']);
+      unset($attachment['status'], $attachment['abort']);
       $_SESSION['compose']['attachments'][$id] = $attachment;
       
       if (($icon = $_SESSION['compose']['deleteicon']) && is_file($icon)) {
@@ -116,6 +116,9 @@
       if ($err == UPLOAD_ERR_INI_SIZE || $err == UPLOAD_ERR_FORM_SIZE) {
         $msg = rcube_label(array('name' => 'filesizeerror', 'vars' => array('size' => show_bytes(parse_bytes(ini_get('upload_max_filesize'))))));
       }
+      else if ($attachment['error']) {
+        $msg = $attachment['error'];
+      }
       else {
         $msg = rcube_label('fileuploaderror');
       }

--
Gitblit v1.9.1