View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0000377||LDMud 3.3||Efuns||public||2005-04-01 06:10||2005-11-24 15:32|
|Fixed in Version||3.3|
|Summary||0000377: convert_charset: MUD takes 100% CPU time and freezes|
|Description||Evaluating following line:|
convert_charset(sprintf("%c%c", 0x2600 >> 8, 0x2600 & 0xff),"utf-16", "utf-8")
will reproducibly completely freeze my MUD (LDMud 3.3.695) and make it take up 100% CPU time.
|Tags||No tags attached.|
results in an immediate error for me.
convert_charset(): Incomplete character sequence at index 0
for both -683 and 695 with iconv 2.3.4 (`iconvconfig -V`)
||Hmm, then it's maybe caused by my iconv (2.2.5 - the current version on debian stable)|
indeed, hangs with iconv 2.2.5.
perl -e 'printf("%c%c", 0x2600 >> 8, 0x2600 & 0xff);' | iconv -f 'utf-16' -t 'utf-8' -
gives the same result on both systems.
upgrading your glibc (sarge comes with 2.3.2) is probably the 'best' option
(as it will probably require several hours of debugging glibc vodoo to 'fix' it)
Lars: you might want to add a version check for iconv > 2.2.5
Starting with 3.3.701, the driver checks if the system is using glibc 2.0-2.2 and disables iconv support in that case.
Keep in mind that BSD systems (incl. Mac OS X) use an external libiconv which currently is at version 1.9.1 and doesn't show the endless loop behavior.
|2005-04-01 06:10||warp||New Issue|
|2005-04-30 15:43||fippo||Note Added: 0000359|
|2005-05-02 12:27||warp||Note Added: 0000360|
|2005-05-04 09:06||fippo||Note Added: 0000362|
||Status||new => resolved|
||Fixed in Version||=> 3.3|
||Resolution||open => fixed|
||Assigned To||=> lars|
||Note Added: 0000364|
||Status||resolved => closed|