PEAR is archived and read-only

This mirror preserves historical PEAR package releases and metadata so existing references remain available.

Home » Mail » Mail_mimeDecode » Bug #7875

Impossible to extende Mail_mimeDecode

Details

Submitted2006-06-12 15:21 UTC
Frompavel dot hlousek at gmail dot com
Assignedalan_k
StatusClosed
PackageMail_mimeDecode
PHP Version4.4.1
Roadmaps1.6.0

Comments

[2006-06-12 15:21 UTC] pavel dot hlousek at gmail dot com

Description:
------------
The line (178) in function decode():

$isStatic = !(isset($this) && get_class($this) == __CLASS__);

disables extending the Mail_mimeDecode class. I suggest to replace it with more general:

$isStatic = !(isset($this) && is_a($this, __CLASS__));

that works perfectly.

Test script:
---------------
class My_mimeDecode extends Mail_mimeDecode {

var $_output_encoding_headers = false;

function My_mimeDecode($input) {
parent::Mail_mimeDecode($input);
}

function decode($params = null) {
$this->_output_encoding_headers = isset($params['output_encoding_headers']) ? $params['output_encoding_headers'] : false;
return parent::decode($params);
}

}

$decoder =& new My_mimeDecode($my_email_message);
$email = $decoder->decode();

Expected result:
----------------
A decoded email message in $email.

Actual result:
--------------
Raises error (line 189):

Called statically and no input given