diff --git a/AUTHORS b/AUTHORS index bd94ff3fe631e71d382ac71a9f4fba65e75b758e..ddcf4d7bd4e184456552a5c79075ea74df5ab3a8 100644 --- a/AUTHORS +++ b/AUTHORS @@ -11,3 +11,4 @@ Dan Field Victor Choueiri Simon Lightfoot Dwayne Slater +Tetsuhiro Ueda diff --git a/third_party/txt/src/txt/paragraph.cc b/third_party/txt/src/txt/paragraph.cc index 78aa0911d392928c15c038b1f55ff0eaaa1469e9..e034bc5df7f8ca801c8cb0e185de4da9190983c0 100644 --- a/third_party/txt/src/txt/paragraph.cc +++ b/third_party/txt/src/txt/paragraph.cc @@ -504,6 +504,7 @@ void Paragraph::Layout(double width, bool force) { uint16_t* text_ptr = text_.data(); size_t text_start = run.start(); size_t text_count = run.end() - run.start(); + size_t text_size = text_.size(); // Apply ellipsizing if the run was not completely laid out and this // is the last line (or lines are unlimited). @@ -541,6 +542,7 @@ void Paragraph::Layout(double width, bool force) { text_ptr = ellipsized_text.data(); text_start = 0; text_count = ellipsized_text.size(); + text_size = text_count; // If there is no line limit, then skip all lines after the ellipsized // line. @@ -550,9 +552,8 @@ void Paragraph::Layout(double width, bool force) { } } - layout.doLayout(text_ptr, text_start, text_count, text_.size(), - run.is_rtl(), font, minikin_paint, - minikin_font_collection); + layout.doLayout(text_ptr, text_start, text_count, text_size, run.is_rtl(), + font, minikin_paint, minikin_font_collection); if (layout.nGlyphs() == 0) continue;