Posted on: 07/17/05 05:06am
By: zap
There's a bug in kses.class.php that prevents entering some symbols in any HTML-formatted content. function _no_null() removes any characters with the code 0xa9, unfortunately in UTF-8 mode this code should be fairly often encountered in non-latin characters, I've found it for the Cyrillic letter 'Э' in UTF-8 mode.
I'm not even sure it makes sense to remove this character from text even in non-UTF-8 modes since I bet there are a lot of codepages where this code represents a valid letter. For now I just commented out the line:
$string = preg_replace('/xad+/', '', $string); # deals with Opera "feature"
I'm not sure what Opera "feature" it refers to, but I'm pretty sure this fixes my problem. So if the line above is actually needed, it would be wise to use it at least for known encodings where it doesn't represent a letter, although as far as I see right now the kses class doesn't even know what encoding the text is in.
GeekLog bug with some particular symbols
Posted on: 07/17/05 12:45pm
By: Dirk
You could try installing kses 0.2.2 (Geeklog currently ships with version 0.2.1). It needs a few
adjustments[*1] in lib-common.php, though.
bye, Dirk