[Tickets #6660] Fatal error with very big strings conversion
bugs at horde.org
bugs at horde.org
Mon Apr 28 18:08:00 UTC 2008
DO NOT REPLY TO THIS MESSAGE. THIS EMAIL ADDRESS IS NOT MONITORED.
Ticket URL: http://bugs.horde.org/ticket/6660
-----------------------------------------------------------------------
Ticket | 6660
Created By | admin at elektordi.net
Summary | Fatal error with very big strings conversion
Queue | Horde Framework Packages
Version | FRAMEWORK_3
Type | Bug
State | Unconfirmed
Priority | 3. High
Milestone |
Patch | [See the hack in the description.]
Owners |
-----------------------------------------------------------------------
admin at elektordi.net (2008-04-28 14:07) wrote:
Hello,
I got a problem today with a very big text mail (~4Mo) due to an infinite
loop in a log deamon. This causes my whole mailbox page to crash with an
PHP Fatal error:
PHP Fatal error: Allowed memory size of 33554432 bytes exhausted (tried
to allocate 16187725 bytes) in /usr/share/horde3/lib/Horde/String.php on
line 128
I managed to prevent the error with the following hack:
/* HACK by Elektordi 2008-04-28: Prevent crashs caused by very big
text mails */
if(strlen($input)>1048576 && String::extensionExists('mbstring'))
{
return @mb_convert_encoding($input, $to, $from);
}
in file String.php and function _convertCharset, just before the line /*
Use utf8_[en|de]code() if possible. */
I did this because Mbstring seems to allocate much less memory than
utf8_xxcode functions. But a better test in the "if" is to check the free
memory instead of using the constant 1048576 (=1024*1024)
Hope this will help you!
Regards,
Elektordi
More information about the bugs
mailing list