servo: Merge #11142 - Fix inline size adjustment when stripping trailing whitespace from fragments (from kaksmet:another-justify-fix); r=mbrubeck

The whitespace range was not properly shifted which caused us to adjust the fragment's inline size by the advance of a different set of characters.
This was causing justified text lines to be too long or too short.

Source-Repo: https://github.com/servo/servo
Source-Revision: 4a274cf58028267b7cbfbcadebf9504eceb14a4a
This commit is contained in:
Ulf Nilsson 2016-05-12 02:56:21 -07:00
Родитель 4f43a25df2
Коммит d230e205b1
1 изменённых файлов: 2 добавлений и 1 удалений

Просмотреть файл

@ -2401,7 +2401,8 @@ impl Fragment {
}
let whitespace_start = ByteIndex(trailing_whitespace_start_byte as isize);
let whitespace_len = scanned_text_fragment_info.range.length() - whitespace_start;
let whitespace_range = Range::new(whitespace_start, whitespace_len);
let mut whitespace_range = Range::new(whitespace_start, whitespace_len);
whitespace_range.shift_by(scanned_text_fragment_info.range.begin());
let text_bounds = scanned_text_fragment_info.run
.metrics_for_range(&whitespace_range)