From 68c41f1dff4ec94ffa78ef772cd1bcd3f8d2d9a0 Mon Sep 17 00:00:00 2001
From: Aleksander Machniak <alec@alec.pl>
Date: Tue, 28 Oct 2014 04:06:29 -0400
Subject: [PATCH] Fix regresion that caused double charset conversion in some messages (#1490121)

---
 program/lib/Roundcube/rcube_message.php |   11 ++++++-----
 1 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/program/lib/Roundcube/rcube_message.php b/program/lib/Roundcube/rcube_message.php
index 0d33ba4..d089713 100644
--- a/program/lib/Roundcube/rcube_message.php
+++ b/program/lib/Roundcube/rcube_message.php
@@ -263,17 +263,18 @@
         $this->storage->set_folder($this->folder);
 
         $body = $this->storage->get_message_part($this->uid, $mime_id, $part,
-            $mode === -1, is_resource($mode) ? $mode : null, !$formatted, $max_bytes, $formatted);
-
-        if (!$mode && $body && $formatted) {
-            $body = self::format_part_body($body, $part, $this->headers->charset);
-        }
+            $mode === -1, is_resource($mode) ? $mode : null,
+            !($mode && $formatted), $max_bytes, $mode && $formatted);
 
         if (is_resource($mode)) {
             rewind($mode);
             return $body !== false;
         }
 
+        if (!$mode && $body && $formatted) {
+            $body = self::format_part_body($body, $part, $this->headers->charset);
+        }
+
         return $body;
     }
 

--
Gitblit v1.9.1