Thomas Bruederli
2012-05-17 9603477e958e231c14e57380a1861454da17c2a0
Merge branch 'master' of github.com:roundcube/roundcubemail
3 files modified
33 ■■■■■ changed files
program/include/rcube_mime.php 8 ●●●● patch | view | raw | blame | history
program/lib/Mail/mime.php 15 ●●●● patch | view | raw | blame | history
program/lib/Mail/mimePart.php 10 ●●●● patch | view | raw | blame | history
program/include/rcube_mime.php
@@ -214,7 +214,7 @@
                // Append everything that is before the text to be decoded
                if ($start != $pos) {
                    $substr = substr($input, $start, $pos-$start);
                    $out   .= rcube_charset_convert($substr, $default_charset);
                    $out   .= rcube_charset::convert($substr, $default_charset);
                    $start  = $pos;
                }
                $start += $length;
@@ -255,13 +255,13 @@
                    $text = quoted_printable_decode($text);
                }
                $out .= rcube_charset_convert($text, $charset);
                $out .= rcube_charset::convert($text, $charset);
                $tmp = array();
            }
            // add the last part of the input string
            if ($start != strlen($input)) {
                $out .= rcube_charset_convert(substr($input, $start), $default_charset);
                $out .= rcube_charset::convert(substr($input, $start), $default_charset);
            }
            // return the results
@@ -269,7 +269,7 @@
        }
        // no encoding information, use fallback
        return rcube_charset_convert($input, $default_charset);
        return rcube_charset::convert($input, $default_charset);
    }
program/lib/Mail/mime.php
@@ -48,7 +48,7 @@
 * @author    Aleksander Machniak <alec@php.net>
 * @copyright 2003-2006 PEAR <pear-group@php.net>
 * @license   http://www.opensource.org/licenses/bsd-license.php BSD License
 * @version   CVS: $Id$
 * @version   1.8.4
 * @link      http://pear.php.net/package/Mail_mime
 *
 *            This class is based on HTML Mime Mail class from
@@ -89,7 +89,7 @@
 * @author    Sean Coates <sean@php.net>
 * @copyright 2003-2006 PEAR <pear-group@php.net>
 * @license   http://www.opensource.org/licenses/bsd-license.php BSD License
 * @version   Release: @package_version@
 * @version   Release: 1.8.4
 * @link      http://pear.php.net/package/Mail_mime
 */
class Mail_mime
@@ -387,6 +387,7 @@
     * @param string $description Content-Description header
     * @param string $h_charset   The character set of the headers e.g. filename
     *                            If not specified, $charset will be used
     * @param array  $add_headers Additional part headers
     *
     * @return mixed              True on success or PEAR_Error object
     * @access public
@@ -403,7 +404,8 @@
        $n_encoding  = null,
        $f_encoding  = null,
        $description = '',
        $h_charset   = null
        $h_charset   = null,
        $add_headers = array()
    ) {
        $bodyfile = null;
@@ -442,6 +444,7 @@
            'location'    => $location,
            'disposition' => $disposition,
            'description' => $description,
            'add_headers' => $add_headers,
            'name_encoding'     => $n_encoding,
            'filename_encoding' => $f_encoding,
            'headers_charset'   => $h_charset,
@@ -679,6 +682,9 @@
        }
        if (!empty($value['description'])) {
            $params['description'] = $value['description'];
        }
        if (is_array($value['add_headers'])) {
            $params['headers'] = $value['add_headers'];
        }
        $ret = $obj->addSubpart($value['body'], $params);
@@ -1319,7 +1325,8 @@
     */
    function encodeHeader($name, $value, $charset, $encoding)
    {
        return Mail_mimePart::encodeHeader(
        $mime_part = new Mail_mimePart;
        return $mime_part->encodeHeader(
            $name, $value, $charset, $encoding, $this->_build_params['eol']
        );
    }
program/lib/Mail/mimePart.php
@@ -48,7 +48,7 @@
 * @author    Aleksander Machniak <alec@php.net>
 * @copyright 2003-2006 PEAR <pear-group@php.net>
 * @license   http://www.opensource.org/licenses/bsd-license.php BSD License
 * @version   CVS: $Id$
 * @version   1.8.4
 * @link      http://pear.php.net/package/Mail_mime
 */
@@ -70,7 +70,7 @@
 * @author    Aleksander Machniak <alec@php.net>
 * @copyright 2003-2006 PEAR <pear-group@php.net>
 * @license   http://www.opensource.org/licenses/bsd-license.php BSD License
 * @version   Release: @package_version@
 * @version   Release: 1.8.4
 * @link      http://pear.php.net/package/Mail_mime
 */
class Mail_mimePart
@@ -156,6 +156,7 @@
    *     headers_charset   - Charset of the headers e.g. filename, description.
    *                         If not set, 'charset' will be used
    *     eol               - End of line sequence. Default: "\r\n"
    *     headers           - Hash array with additional part headers
    *     body_file         - Location of file with part's body (instead of $body)
    *
    * @access public
@@ -168,6 +169,11 @@
            $this->_eol = MAIL_MIMEPART_CRLF;
        }
        // Additional part headers
        if (!empty($params['headers']) && is_array($params['headers'])) {
            $headers = $params['headers'];
        }
        foreach ($params as $key => $value) {
            switch ($key) {
            case 'encoding':