アビワードはなぜユーザーに命を得るように言うのでしょうか?

アビワードはなぜユーザーに命を得るように言うのでしょうか?

ヘッドレスコンピュータでワードプロセッサを呼び出すときに表示されるabiword警告の1つは次のとおりです(強調表示)。

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

この警告はどういう意味ですか?これはイースターエッグですか?なぜそのような過酷な発言をしますかabiword? GUIセッションもなく、生命もありません。それはどういう意味ですか?

AbiwordのSVNリポジトリは以下にあります。abisource.com

答え1

AbiWordは名前を使用します錯乱、GTK+およびClutter-GTK。後者のライブラリは最初の2つを一緒に貼り付けます。必要な部分の1つは、という関数を呼び出すことですgtk_clutter_init()。初期化に失敗した場合はエラーコードが返され、表示されない場合はエラーコードが返されます。

この関数呼び出しの結果を無視して潜在的なエラーに関係なく実行を続行するプログラムは、コンパイル時にコンパイラー警告を発行します。プログラマーはさまざまな方法でこの問題を解決しました。 Colin Watsonは、GNOME Shellがやや軽量で致命的なエラーメッセージを発行するようにします。Hubert FiguièreがAbiWordを作成しました。目の前に見えるメッセージを送ってください。どちらのメッセージも、GUIの初期化に問題があることを知らせる必要があり、「Clutter」が何を意味するのかわからないエンドユーザーには役に立ちません。

興味深いことに、エラーメッセージによると、結果コードは0です。 ~によるとドコエラーの結果はゼロ以外の負の整数でなければなりません。実際には、成功(値1)でも否定的な失敗コードでもなく、文書化されていない「不明」エラー条件があります。gtk_init_check()ライブラリ機能はGUIを初期化できません。

関連情報