Hi, I have a question regarding the escape strings in the textblock object.
In evas_object_textblock_text_markup_get the _escaped_char_match function
is called in the while(*p) loop, but it seem to return incorrect values when
dealing
with codepoints greater than the last escape string in escape_strings. This
hangs the
entire application, because adv will be 0 while escape is != null. I think
the problem is
that escape_strings contains an extra '\0' character at the end that is not
taken into account
when calculating map_end in _escaped_char_match. When
_advance_after_end_of_string
is called for the last escape code point, map_itr will point to the extra
'\0' added by the compiler
and map_itr < map_end will be true, but *mc will be 0 which will leave match
== 1 which in the
end will result in *adv = mc - map_itr = 0 which will make the while(*p)
loop indefinitely.

map_end = map_itr + sizeof(escape_strings) - 1; is my suggestion or to
remove the last '\0'
in escape_strings, or perhaps to use the null character as an end-of-string
marker in the loop
instead of map_end.

/Mikael
**
------------------------------------------------------------------------------
Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
easily build your RIAs with Flex Builder, the Eclipse(TM)based development
software that enables intelligent coding and step-through debugging.
Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to