如何解决尝试清理 PangoCairo / FontConfig 时的 SIGABRT
操作系统:Arch Linux
我在窗口管理器中使用 pango cairo 来绘制文本。到目前为止,我一直在退出窗口管理器后使用这三个语句来清理 pangocairo。
pango_cairo_font_map_set_default(nullptr);
cairo_debug_reset_static_data();
FcFini();
但是自从将 pango 更新为 1:1.48.3-1(从 1:1.48.2-1 开始)。
cairo_debug_reset_static_data(); ( causes SIGABRT )
FcFini(); ( causes SIGABRT when live above removed )
如果我删除这些语句,valgrind 会显示一些直接丢失的块和许多 (3k+) 个间接丢失的块,这些行和以前的 pango 版本通常分别为 0 和少量 (~900) 块。
我目前的解决方案是从 /var/cache/pacman/pkg/
安装 pango 1:1.48.2-1 并忽略更新。
编辑: 我正在链接到 gist,其中包含 valgrind 报告和不使用 3 行时内存泄漏的情况。 https://gist.github.com/Abh15h3k/6bfd9c17d6a6714676626df1eb4b02cf
编辑2: 我正在添加一个简短的 c 代码来演示这个问题。 我已经添加了关于我如何编译它以及问题发生在哪里以及它们是什么的评论。 https://gist.github.com/Abh15h3k/45df35e56bcc4fd55662d51d53620a16
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。