I hate it when you are right. Adding. Thanks, Tom.
On Mon, 2011-04-11 at 14:09 +0200, Vincent Torri wrote: > > changelog ? > > Vincent > > On Sun, 10 Apr 2011, Enlightenment SVN wrote: > > > Log: > > Evas textblock: *_markup_prepend should use the passed cursor. > > > > This fixes a bug that caused evas_object_textblock_text_markup_prepend > > to use the object's cursor, instead of the passed cursor when prepending > > text. > > Thanks to WooHyun for the catch. > > > > Author: tasn > > Date: 2011-04-10 00:27:07 -0700 (Sun, 10 Apr 2011) > > New Revision: 58531 > > Trac: http://trac.enlightenment.org/e/changeset/58531 > > > > Modified: > > trunk/evas/src/lib/canvas/evas_object_textblock.c > > > > Modified: trunk/evas/src/lib/canvas/evas_object_textblock.c > > =================================================================== > > --- trunk/evas/src/lib/canvas/evas_object_textblock.c 2011-04-09 > > 20:36:35 UTC (rev 58530) > > +++ trunk/evas/src/lib/canvas/evas_object_textblock.c 2011-04-10 > > 07:27:07 UTC (rev 58531) > > @@ -851,12 +851,12 @@ > > * @internal > > * Appends the text between s and p to the main cursor of the object. > > * > > - * @param o The textblock to append to. > > + * @param cur the cursor to append to. > > * @param[in] s start of the string > > * @param[in] p end of the string > > */ > > static void __UNUSED__ > > -_append_text_run(Evas_Object_Textblock *o, const char *s, const char *p) > > +_append_text_run(Evas_Textblock_Cursor *cur, const char *s, const char *p) > > { > > if ((s) && (p > s)) > > { > > @@ -865,7 +865,7 @@ > > ts = alloca(p - s + 1); > > strncpy(ts, s, p - s); > > ts[p - s] = 0; > > - evas_textblock_cursor_text_append(o->cursor, ts); > > + evas_textblock_cursor_text_append(cur, ts); > > } > > } > > > > @@ -873,12 +873,12 @@ > > * @internal > > * Prepends the text between s and p to the main cursor of the object. > > * > > - * @param o The textblock to prepend to. > > + * @param cur the cursor to prepend to. > > * @param[in] s start of the string > > * @param[in] p end of the string > > */ > > static void > > -_prepend_text_run(Evas_Object_Textblock *o, const char *s, const char *p) > > +_prepend_text_run(Evas_Textblock_Cursor *cur, const char *s, const char *p) > > { > > if ((s) && (p > s)) > > { > > @@ -887,7 +887,7 @@ > > ts = alloca(p - s + 1); > > strncpy(ts, s, p - s); > > ts[p - s] = 0; > > - evas_textblock_cursor_text_prepend(o->cursor, ts); > > + evas_textblock_cursor_text_prepend(cur, ts); > > } > > } > > > > @@ -4350,7 +4350,7 @@ > > match = _style_match_tag(o->style, ttag, > > ttag_len, &replace_len); > > if (match) > > { > > - > > evas_textblock_cursor_format_prepend(o->cursor, match); > > + evas_textblock_cursor_format_prepend(cur, > > match); > > } > > else > > { > > @@ -4369,7 +4369,7 @@ > > strcpy(ttag2, "+ "); > > strcat(ttag2, ttag); > > } > > - > > evas_textblock_cursor_format_prepend(o->cursor, ttag2); > > + > > evas_textblock_cursor_format_prepend(cur, ttag2); > > free(ttag2); > > } > > } > > @@ -4379,12 +4379,12 @@ > > } > > else if (esc_end) > > { > > - _prepend_escaped_char(o->cursor, esc_start, > > esc_end); > > + _prepend_escaped_char(cur, esc_start, esc_end); > > esc_start = esc_end = NULL; > > } > > else if (*p == 0) > > { > > - _prepend_text_run(o, s, p); > > + _prepend_text_run(cur, s, p); > > s = NULL; > > } > > if (*p == 0) > > @@ -4398,7 +4398,7 @@ > > * the start of the tag */ > > tag_start = p; > > tag_end = NULL; > > - _prepend_text_run(o, s, p); > > + _prepend_text_run(cur, s, p); > > s = NULL; > > } > > } > > @@ -4418,7 +4418,7 @@ > > * the start of the escape sequence */ > > esc_start = p; > > esc_end = NULL; > > - _prepend_text_run(o, s, p); > > + _prepend_text_run(cur, s, p); > > s = NULL; > > } > > } > > @@ -4436,7 +4436,7 @@ > > /*FIXME: currently just remove them, maybe do something > > * fancier in the future, atm it breaks if this char > > * is inside <> */ > > - _prepend_text_run(o, s, p); > > + _prepend_text_run(cur, s, p); > > p += 2; /* it's also advanced later in this loop need +3 > > * in total*/ > > s = p + 1; /* One after the end of the replacement char */ > > @@ -4445,10 +4445,6 @@ > > } > > } > > _evas_textblock_changed(o, obj); > > - /* If the node is NULL it means we just created paragraphs, > > - * and not edited, so no need to mark anything */ > > - if (o->cursor->node) > > - o->cursor->node->dirty = EINA_TRUE; > > } > > > > > > > > > > ------------------------------------------------------------------------------ > > Xperia(TM) PLAY > > It's a major breakthrough. An authentic gaming > > smartphone on the nation's most reliable network. > > And it wants your games. > > http://p.sf.net/sfu/verizon-sfdev > > _______________________________________________ > > enlightenment-svn mailing list > > [email protected] > > https://lists.sourceforge.net/lists/listinfo/enlightenment-svn > > > > > > ------------------------------------------------------------------------------ > Xperia(TM) PLAY > It's a major breakthrough. An authentic gaming > smartphone on the nation's most reliable network. > And it wants your games. > http://p.sf.net/sfu/verizon-sfdev > _______________________________________________ > enlightenment-devel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel ------------------------------------------------------------------------------ Xperia(TM) PLAY It's a major breakthrough. An authentic gaming smartphone on the nation's most reliable network. And it wants your games. http://p.sf.net/sfu/verizon-sfdev _______________________________________________ enlightenment-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
