From eebfa5ed0b38f4b25dd48065aa62bd2ab1a61507 Mon Sep 17 00:00:00 2001
From: alecpl <alec@alec.pl>
Date: Mon, 25 May 2009 07:34:51 -0400
Subject: [PATCH] - small LF fix in quoted-printable convertion

---
 program/lib/imap.inc |    8 +++++---
 1 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/program/lib/imap.inc b/program/lib/imap.inc
index 932be4a..1b8bec0 100644
--- a/program/lib/imap.inc
+++ b/program/lib/imap.inc
@@ -2396,9 +2396,8 @@
 		                }
             			$bytes -= strlen($line);
 
-				$line = rtrim($line, "\t\r\n\0\x0B");
-
 		                if ($mode == 1) {
+					$line = rtrim($line, "\t\r\n\0\x0B");
 					// create chunks with proper length for base64 decoding
 					$line = $prev.$line;
 					$length = strlen($line);
@@ -2417,7 +2416,7 @@
 					else
 						$result .= base64_decode($line);
 				} else if ($mode == 2) {
-					$line .= $line[sizeof($line)-1] != '=' ? "\n" : '';
+					$line = rtrim($line, "\t\r\0\x0B");
 					if ($file)
 						fwrite($file, quoted_printable_decode($line));
             				else if ($print)
@@ -2425,6 +2424,7 @@
 					else
 						$result .= quoted_printable_decode($line);
 				} else if ($mode == 3) {
+					$line = rtrim($line, "\t\r\n\0\x0B");
 					if ($line == 'end' || preg_match('/^begin\s+[0-7]+\s+.+$/', $line))
 						continue;
 					if ($file)
@@ -2434,6 +2434,7 @@
 					else
 						$result .= convert_uudecode($line);
 				} else {
+					$line = rtrim($line, "\t\r\n\0\x0B");
 					if ($file)
 						fwrite($file, $line . "\n");
             			        else if ($print)
@@ -2443,6 +2444,7 @@
 				}
         		}
     		}
+
 	        // read in anything up until last line
 		if (!$end)
 			do {

--
Gitblit v1.9.1