Dmitry Leonov (leonov) wrote,
Dmitry Leonov
leonov

и еще один луч ненависти

...в сторону авторов функции CGXFont::GetLogFont, не подумавших о том, что при записи длинного имени шрифта в поле lfFaceName хорошо бы проверять его на превышение LF_FACESIZE (=32), и уж по крайней мере не резать его тупо на 32 символе, а дописывать в конец нолик. Наверное год не мог отловить невоспроизводимые глюки в программе при сохранении/чтении, у меня-то на машине шрифтов типа "Microsoft Sans Serif (Кириллический)" отродясь не было.
Update: хотя не исключено, что нужно перенаправить его на CFontDialog::GetCurrentFont, лень разбираться. Главное, что lf.lfFaceName[LF_FACESIZE-1] = 0 перед сохранением лечит все проблемы.
Tags: stingray
Subscribe

  • хадерачное

    Новая Дюна — неожиданно неплохо (возможно, потому, что не было особых ожиданий). Конечно, многое (типа закатывания глаз ментатами) понятно только…

  • телефоточное

    Гениальные ребята из Synology в DSM 7 заменили Photo Station на Synology Photos, поломав совместимость со старыми клиентами DS Photo, которые раньше…

  • разводное

    Какая-то новая для меня попытка разводки. Звонок типа из службы финансового мониторинга ВТБ, как положено, на фоне шумов офиса (хоть и с палёного…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

  • 2 comments