> The following functions, immediately after they all
> Mail::SpamAssassin::Message::Node::decode, need to call a
> function that does charset normalization.
>
> * Mail::SpamAssassin::Message::get_rendered_body_text_array
> * Mail::SpamAssassin::Message::get_visible_rendered_body_text_array
> * Mail::SpamAssassin::Message::get_decoded_body_text_array
This sounds like it might be possible to decode the entire body text at
least three times per message. This would likely be more overhead than
decoding it once, if that is possible. Perhaps there is (or could be) a
common function all of these would call to get text, or a common data
repository, that has been decoded. A common function might be able to
decode once and cache the decoded text for the next call.
> * Mail::SpamAssassin::Message::Node::_decode_header
> * Mail::SpamAssassin::Message::Node::__decode_header
>
> also need to call a function to do charset normalization.
> _decode_header for unlabeled charset data, __decode_header for for
> MIME encoded-words.
This again sounds like it might be possibly to decode many times per
message?
Loren