Bug 37722 - Попытка открытия файла аварийно завершает программу
Summary: Попытка открытия файла аварийно завершает программу
Status: CLOSED FIXED
Alias: None
Product: Альт Рабочая станция
Classification: Distributions
Component: Ошибки работы (show other bugs)
Version: 9.0
Hardware: x86_64 Linux
: P3 major
Assignee: Mikhail Efremov
QA Contact: qa-p8@altlinux.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-01-08 16:48 MSK by aleksey-v
Modified: 2021-06-04 15:22 MSK (History)
8 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description aleksey-v 2020-01-08 16:48:34 MSK
Проверено в нескольких программмах: LibreOffice Write, Pluma, Firefox.
При любой попытке вызвать диалог открытия файла, программа, в которой это происходит, аварийно завершается.

На долю секунды появляются границы диалога "Открытые файлы" без заполнения окна, после чего и диалог и сама программа исчезают с экрана и из памяти.
По этой же причине даже не могу прицепить screenshot на странице Bugzilla.

Логи после Pluma:

host-59.localdomain dbus-daemon[1098]: [system] Activating via systemd: service name='org.freedesktop.hostname1' unit='dbus-org.freedesktop.hostname1.service' requested by ':1.63' (uid=500 pid=3447 comm="pluma ")
host-59.localdomain systemd[1]: Starting Hostname Service...
host-59.localdomain dbus-daemon[1098]: [system] Successfully activated service 'org.freedesktop.hostname1'
host-59.localdomain systemd[1]: Started Hostname Service.
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: **
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: Pango:ERROR:../pango/pangofc-fontmap.c:838:filter_fontset_by_format: assertion failed: (res == FcResultMatch)


Более длинные логи после LibreOffice Writer:

host-59.localdomain dbus-daemon[1098]: [system] Activating via systemd: service name='org.freedesktop.hostname1' u
nit='dbus-org.freedesktop.hostname1.service' requested by ':1.79' (uid=500 pid=3710 comm="/usr/lib64/LibreOffice-still/program/soffice.bin -")
host-59.localdomain systemd[1]: Starting Hostname Service...
host-59.localdomain dbus-daemon[1098]: [system] Successfully activated service 'org.freedesktop.hostname1'
host-59.localdomain systemd[1]: Started Hostname Service.
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: **
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: Pango:ERROR:../pango/pangofc-fontmap.c:838:
filter_fontset_by_format: assertion failed: (res == FcResultMatch)
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: **
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: Pango:ERROR:../pango/pangofc-fontmap.c:838:
filter_fontset_by_format: assertion failed: (res == FcResultMatch)
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: Fatal exception: Signal 6
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: Stack:
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/LibreOffice-still/program/libuno
_sal.so.3(+0x3c133)[0x7fa4b4e60133]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/LibreOffice-still/program/libuno
_sal.so.3(+0x3c343)[0x7fa4b4e60343]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /lib64/libc.so.6(+0x37770)[0x7fa4b4bbb770]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /lib64/libc.so.6(gsignal+0x10b)[0x7fa4b4bbb
6eb]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /lib64/libc.so.6(abort+0x121)[0x7fa4b4ba6515]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /lib64/libglib-2.0.so.0(+0x1fde3)[0x7fa4ad22ede3]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /lib64/libglib-2.0.so.0(g_assertion_message_expr+0x4a)[0x7fa4ad28975a]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/libpangoft2-1.0.so.0(+0xc17c)[0x7fa4aa8eb17c]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/libpangoft2-1.0.so.0(+0xc3dd)[0x7fa4aa8eb3dd]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/libpango-1.0.so.0(+0x1ff6c)[0x7fa4aa9f6f6c]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/libpango-1.0.so.0(+0x202d3)[0x7fa4aa9f72d3]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/libpango-1.0.so.0(pango_itemize_with_base_dir+0xb8)[0x7fa4aa9f80b8]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/libpango-1.0.so.0(+0x29f5e)[0x7fa4aaa00f5e]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/libpango-1.0.so.0(+0x2bdc8)[0x7fa4aaa02dc8]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/libgtk-3.so.0(+0x14f818)[0x7fa4aac75818]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/libgtk-3.so.0(gtk_cell_renderer_get_preferred_width+0x14d)[0x7fa4aac6d98d]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/libgtk-3.so.0(gtk_cell_area_request_renderer+0x249)[0x7fa4aac657d9]
... пропустим несколько строк ...
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/LibreOffice-still/program/libsfxlo.so(_ZN13SfxDispatcher14PostMsgHandlerESt10unique_ptrI10SfxRequestSt14default_deleteIS1_EE+0x13c)[0x7fa4b365fc3c]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/LibreOffice-still/program/libsfxlo.so(+0x2d6dc2)[0x7fa4b3661dc2]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/LibreOffice-still/program/libsfxlo.so(+0x4ad3cd)[0x7fa4b38383cd]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/LibreOffice-still/program/libvcllo.so(+0x3c4890)[0x7fa4b1325890]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/LibreOffice-still/program/libvcllo.so(_ZN16SalUserEventList18DispatchUserEventsEb+0x188)[0x7fa4b1571518]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/LibreOffice-still/program/libvclplug_gtk3lo.so(+0xa0839)[0x7fa4ab2d9839]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /lib64/libglib-2.0.so.0(g_main_context_dispatch+0x158)[0x7fa4ad261598]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /lib64/libglib-2.0.so.0(+0x52988)[0x7fa4ad261988]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /lib64/libglib-2.0.so.0(g_main_context_iteration+0x2c)[0x7fa4ad261a1c]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/LibreOffice-still/program/libvclplug_gtk3lo.so(+0xa1ae3)[0x7fa4ab2daae3]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/LibreOffice-still/program/libvcllo.so(+0x6368f2)[0x7fa4b15978f2]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/LibreOffice-still/program/libvcllo.so(_ZN11Application7ExecuteEv+0x45)[0x7fa4b1599675]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/LibreOffice-still/program/libsofficeapp.so(+0x32033)[0x7fa4b4d92033]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/LibreOffice-still/program/libvcllo.so(_Z10ImplSVMainv+0x62)[0x7fa4b159fe12]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/LibreOffice-still/program/libsofficeapp.so(soffice_main+0x91)[0x7fa4b4db96b1]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/LibreOffice-still/program/soffice.bin[0x40106b]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /lib64/libc.so.6(__libc_start_main+0xeb)[0x7fa4b4ba808b]
host-59.localdomain org.mate.panel.applet.MateMenuAppletFactory[2287]: /usr/lib64/LibreOffice-still/program/soffice.bin[0x4010aa]
Comment 1 aleksey-v 2020-02-02 21:22:39 MSK
На чистой установке AltLinux ошибка не воспроизводится.

Опытным путём выяснил, что это последствия установки DrWeb.

Каких-то явных проблем при установке DrWeb не замечено, только две строки были выведены на экран после установки DrWeb.

XOpenIM() failed
Running "/opt/drweb.com/bin/drweb-ctl cfset Root.UseCloud yes"

Установка с официального сайта, стандартный запуск, активация демо на 30 дней.
Сразу же перестали открываться диалоговые окна, даже перезагрузки не потребовалось.
Comment 2 aleksey-v 2020-02-02 21:39:49 MSK
Но при этом проблема не затрагивает программы, написанные на Java, они открывают диалоги без проблем.
Comment 3 aleksey-v 2020-02-08 23:17:08 MSK
В Ubuntu MATE 19.10 и Fedora 31 DrWeb устанавливается, но не приводит к крушению программ.

При этом на Ubuntu и Fedora Dr.Web работает, eicar успешно ловит даже в SSL/TLS после импорта сертификата.
Comment 4 Sergey Y. Afonin 2020-02-29 13:54:28 MSK
(In reply to aleksey-v from comment #1)

> Установка с официального сайта, стандартный запуск, активация демо на 30
> дней. Сразу же перестали открываться диалоговые окна, даже перезагрузки не
> потребовалось.

Следует проинформировать разработчиков DrWeb, если они заявляют поддержку в ALT Linux. Вероятнее всего пакет содержит какую-то устаревшую библиотеку, которая не ломает ничего в дистрибутивах, где аналогичная библиотека так же не новая.
Comment 5 Dmitry Mikhirev 2020-03-04 19:26:33 MSK
Причина в freetype версии 2.10.0, который содержит ошибку обработки PCF-шрифтов[1]. В версии 2.10.1 она была исправлена[2]. Инсталлятор Dr.Web использует исправленную библиотеку версии 2.10.1, и информация о проблемном шрифте благополучно оседает в кеше fontconfig. После этого системный fontconfig, использующий поломанную версию freetype, оказывается неспособен обработать файл кеша, что и приводит к падению.

[1]: https://savannah.nongnu.org/bugs/?56067
[2]: https://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/?id=c149f7397e484c97f45fb75fa1c7fdda2fc646cd
Comment 6 Alexander Makeenkov 2020-03-05 12:26:20 MSK
Система ALT Workstation 9 x86_64, обновлённая до актуального p9 репозитория.

Установил DrWeb с официального сайта, ошибка при открытии диалоговых окон воспроизводится (проверил в firefox и LibreOffice Writer).

Обновился до задания 247340 (libfreetype-2.10.1-alt1), перезагрузил систему - ошибка всё равно воспроизводится, диалоговые окна не открываются.

Попробовал сначала обновить систему до таска, и уже после устанавливать DrWeb - диалоговые окна не открываются.

При падении firefox возникают такие ошибки:

test@workstation-9-x86-64-20200305 ~ $ firefox 
**
Pango:ERROR:../pango/pangofc-fontmap.c:838:filter_fontset_by_format: assertion failed: (res == FcResultMatch)
Redirecting call to abort() to mozalloc_abort

Exiting due to channel error.
Exiting due to channel error.
Exiting due to channel error.
Crash Annotation GraphicsCriticalError: |[C0][GFX1-]: Receive IPC close with reason=AbnormalShutdown (t=1.72256) Exiting due to channel error.

test@workstation-9-x86-64-20200305 ~ $ rpm -q libfreetype 
libfreetype-2.10.1-alt1.x86_64
Comment 7 Alexander Makeenkov 2020-03-05 12:49:22 MSK
В задание 247340 добавили пакет fontconfig 2.13.1-alt1 - теперь после обновления ошибка не воспроизводится.
Comment 8 aleksey-v 2020-03-06 11:11:25 MSK
Сейчас прилетели пакеты для обновления. Это они?

Следующие пакеты будут обновлены:
fontconfig i586-fontconfig.32bit i586-libfreetype.32bit libfreetype libqmi-glib
Comment 9 Sergey V Turchin 2020-03-06 11:17:59 MSK
(Ответ для aleksey-v на комментарий #8)
> Это они?
Да.
Comment 10 Mikhail Efremov 2021-06-04 13:20:04 MSK
В 9.1.900 fontconfig 2.13.1-alt1. Т.е. должно работать.
Comment 11 Sergey V Turchin 2021-06-04 13:34:57 MSK
(Ответ для Mikhail Efremov на комментарий #10)
> В 9.1.900 fontconfig 2.13.1-alt1. Т.е. должно работать.
Дело не только в старом libfreetype.
fontconfig нужно было пересобрать после обновления libfreetype, иначе проприетарщина падала.
Comment 12 Mikhail Efremov 2021-06-04 15:22:22 MSK
Ну, главное, что теперь должно работать.