From be461b8f1bf608f79fe68cf017974e387dbe46c3 Mon Sep 17 00:00:00 2001 From: Daniel Hirt Date: Mon, 8 Aug 2016 15:10:56 +0300 Subject: [PATCH] Canvas.text: fix segfault with ellipsis cases The specific handling for (0.0 <= ellip < 1) doesn't support multi-line cases. One of the main reasons is that we haven't had the chance to define the wanted behavior for multi-line. This is a temporary hack to fix a segfault. The behavior is still undefined, though. Fixes T3885. --- src/lib/evas/canvas/evas_object_textblock.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/lib/evas/canvas/evas_object_textblock.c b/src/lib/evas/canvas/evas_object_textblock.c index f06d876..a48cda4 100644 --- a/src/lib/evas/canvas/evas_object_textblock.c +++ b/src/lib/evas/canvas/evas_object_textblock.c @@ -5245,10 +5245,11 @@ _layout_par(Ctxt *c) Currently, we assume that ellipsis is at the beginning of the paragraph. This is a safe assumption for now, as other usages seem a bit unnatural.*/ + // FIXME: revisit this for multi-line. { double ellip; ellip = it->format->ellipsis; - if ((0 <= ellip) && (ellip < 1.0)) + if ((0 <= ellip) && (ellip < 1.0) && c->line_no == 0) _layout_par_ellipsis_items(c, ellip); } -- 2.7.4