const Evas_Text_Props *text_props, RGBA_Gfx_Func func, int ext_x, int ext_y, int ext_w,
int ext_h, RGBA_Font_Int *fi, int im_w, int im_h __UNUSED__)
{
-#if !defined(OT_SUPPORT) && defined(BIDI_SUPPORT)
- const Eina_Unicode *text = (text_props->info) ?
- text_props->info->shaped_text + text_props->text_offset :
- in_text;
-#else
const Eina_Unicode *text = in_text;
- /* Not relevant in the Harfbuzz case, and will soon will not be relevant
- * at all */
- (void) text;
- /* Should be marked as unused? or should I do something fancy about it to
- * make sure the given fi is relevant? */
- (void) fn;
-#endif
DATA32 *im;
FT_Face pface = NULL;
EVAS_FONT_WALK_TEXT_INIT();
{
struct cinfo *metrics;
const Eina_Unicode *text = in_text;
+ (void) text;
unsigned char *im;
int width;
int height, above, below, baseline, descent;
#ifdef OT_SUPPORT
if (props->info->ot)
free(props->info->ot);
-#endif
-#if !defined(OT_SUPPORT) && defined(BIDI_SUPPORT)
- if (props->info->shaped_text)
- free(props->info->shaped_text);
#endif
free(props->info);
props->info = NULL;
Evas_Coord pen_x = 0;
int adv_d, i;
#if !defined(OT_SUPPORT) && defined(BIDI_SUPPORT)
- text = text_props->info->shaped_text = eina_unicode_strndup(text, len);
- evas_bidi_shape_string(text_props->info->shaped_text, par_props, par_pos,
- len);
+ Eina_Unicode *base_str;
+ text = base_str = eina_unicode_strndup(text, len);
+ evas_bidi_shape_string(base_str, par_props, par_pos, len);
#else
(void) par_props;
(void) par_pos;
prev_index = index;
}
text_props->len = len;
+# if !defined(OT_SUPPORT) && defined(BIDI_SUPPORT)
+ free(base_str);
+# endif
#endif
text_props->text_len = len;
text_props->info->refcount = 1;
unsigned int refcount;
Evas_Font_Glyph_Info *glyph;
Evas_Font_OT_Info *ot;
-#if !defined(OT_SUPPORT) && defined(BIDI_SUPPORT)
- Eina_Unicode *shaped_text;
-#endif
};
/* Sorted in visual order when created */