Dear all,
The situation is trickier than someone might hope. Aside of the Tcl
version dependencies (as Brian pointed out), Tcl before 8.7 do not
support TCL_UTF_MAX with longer multi-byte sequences than 4 (see Tcl TIP
389), which are also mostly relevant for some newer emojis. So, for full
emoji support, Tcl 8.7 with the proper compilation options is needed.
Anyhow, in the case of Wolfgang's the "Smiling Face with Open Mouth" we
have just a 4-byte UTF-8 character, which is supported by out-of-the-box
Tcl 8.6. However, this emoji is represented Tcl-internally as a 6-byte
sequence. Since NaviServer wrongly assumed that Tcl-internal
representations are also accepted as external representations, a
conversion step was omitted for utf-8 (which is not always true).
In the tip version of NaviServer on Bitbucket, this optimization is now
removed, the examples work as expected, the regression test is extended
for this case.
Many thanks to Wolfgang for the good bug report.
-g
_______________________________________________
naviserver-devel mailing list
naviserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/naviserver-devel