Подробности
[В начало]
Проблема в реализации № V0030
Краткое описание
Вызов FT_Get_PFR_Metrics для шрифта, не являющегося PFR-шрифтом, приводит к segmentation fault
Подробное описание
Согласно описанию функции FT_Get_PFR_Metrics,
If the input face is not a PFR, this function will return an error. However, in all cases, it will return valid values.
- aoutline_resolution
- ametrics_resolution
- ametrics_x_scale
- ametrics_y_scale
Однако, если вызвать FT_Get_PFR_Metrics для шрифта, не являющегося PFR-шрифтом (например, для FreeMono.ttf), и при этом хотя бы один из указанных выше аргументов равен NULL, будет segmentation fault. Прикреплённый пример демонстрирует данную проблему.
Раздел стандарта
Linux Standard Base Desktop Specification 3.2, Chapter 12. Libraries, 12.1 Interfaces for libfreetype, который ссылается на FreeType-2.1.10 API Reference, section "PFR Fonts"
Способ воспроизведения
- Распакуйте прикреплённый архив
- Скомпилируйте и скомпонуйте программу-пример, которая в нём содержится
- Запустите программу-пример следующим образом:
./ft_get_pfr_metrics FreeMono.ttf a b c d,
где a, b, c и d - целые числа, по крайней мере, одно из которых равно 0.
Компонент
freetype 2.1.10 or later
Принято
freetype-devel mailing list, #49, 2008.12
Статус
Reported
[В начало]