diff options
| author | Aleksander Machniak <alec@alec.pl> | 2013-10-12 13:03:31 +0200 | 
|---|---|---|
| committer | Aleksander Machniak <alec@alec.pl> | 2013-10-12 13:03:31 +0200 | 
| commit | 0f15219a93c7f6de97223d004125fb32438ffaf7 (patch) | |
| tree | b060cebc308c531a1249e79dfc8d1b5b0c965c48 /program/lib | |
| parent | d1abd8e339a1346b02ebbca5365cd824adf5f897 (diff) | |
Fix text wrapping issue with long unwrappable lines (#1489371)
Diffstat (limited to 'program/lib')
| -rw-r--r-- | program/lib/Roundcube/rcube_mime.php | 14 | 
1 files changed, 7 insertions, 7 deletions
| diff --git a/program/lib/Roundcube/rcube_mime.php b/program/lib/Roundcube/rcube_mime.php index 96a8eac61..9c2220328 100644 --- a/program/lib/Roundcube/rcube_mime.php +++ b/program/lib/Roundcube/rcube_mime.php @@ -637,7 +637,8 @@ class rcube_mime                      if ($nextChar === ' ' || $nextChar === $separator) {                          $afterNextChar = mb_substr($string, $width + 1, 1); -                        if ($afterNextChar === false) { +                        // Note: mb_substr() does never return False +                        if ($afterNextChar === false || $afterNextChar === '') {                              $subString .= $nextChar;                          } @@ -650,24 +651,23 @@ class rcube_mime                              $subString = mb_substr($subString, 0, $spacePos);                              $cutLength = $spacePos + 1;                          } -                        else if ($cut === false && $breakPos === false) { -                            $subString = $string; -                            $cutLength = null; -                        }                          else if ($cut === false) {                              $spacePos = mb_strpos($string, ' ', 0); -                            if ($spacePos !== false && $spacePos < $breakPos) { +                            if ($spacePos !== false && ($breakPos === false || $spacePos < $breakPos)) {                                  $subString = mb_substr($string, 0, $spacePos);                                  $cutLength = $spacePos + 1;                              } +                            else if ($breakPos === false) { +                                $subString = $string; +                                $cutLength = null; +                            }                              else {                                  $subString = mb_substr($string, 0, $breakPos);                                  $cutLength = $breakPos + 1;                              }                          }                          else { -                            $subString = mb_substr($subString, 0, $width);                              $cutLength = $width;                          }                      } | 
