为什么 abiword 告诉用户要获得生命?

为什么 abiword 告诉用户要获得生命?

当在无头机器上调用文字处理器时abiword,发出的警告之一如下(强调我的):

** (abiword:2020): WARNING **: clutter failed 0, get a life.

这个警告是什么意思?这是复活节彩蛋吗?为什么会abiword说出这样尖酸刻薄的言论呢?没有 GUI 会话,就没有生命——是这个意思吗?

Abiword 的 SVN 存储库可以在以下位置找到abisource.com

答案1

AbiWord 使用名为混乱、GTK+ 和 Clutter-GTK。后一个库将前两个库粘合在一起。其必要部分之一是调用名为 的函数gtk_clutter_init()。如果初始化失败,这将返回一个错误代码,如果没有显示,它确实会这样做。

忽略调用此函数的结果并继续执行而不考虑潜在错误的程序在编译时会发出编译器警告。程序员以不同的方式解决了这个问题。 Colin Watson 让 GNOME Shell 发出相当温和的致命错误消息Hubert Figuière 制作了 AbiWord发出您面前看到的消息。这两条消息对最终用户来说都没有真正的帮助,他们确实需要被告知初始化 GUI 时存在某种问题,并且可能不知道“Clutter”指的是什么。

有趣的是,根据您的错误消息,结果代码为零。根据多科错误结果应该是非零负整数。事实上,有一个未记录的“未知”错误条件,它既不是成功(值为 1)也不是负数失败代码;这是由于gtk_init_check()库函数无法初始化 GUI。

相关内容