プロジェクト

全般

プロフィール

バグ #1040

ユーザのプロフィールを開くと落ちる

Tajima Hidenari3ヶ月前に追加. 2ヶ月前に更新.

ステータス:
終了
優先度:
通常
担当者:
-
対象バージョン:
開始日:
2017-05-15
期日:
進捗率:

0%

プラグイン名:
再現手順:

説明

こんにちは.初めて投稿します.よろしくお願いします.

RubyとRuby/Gtk2のバージョンのせいかもしれませんが,プロフィールを開くとmikutterが落ちます.

エラーの内容は,uninitialized constant Pango::FontDescription::WEIGHT_BOLD (name error)というものです.

これに伴い./core/plugin/user_detail_view/user_detail_view.rbの298行目と299行目のPango::FontDescription::WEIGHT_BOLDとPango::AttrUnderline::SINGLEを削除したところ,動きはしましたが,見た目の変化はよくわかりませんでした.添付ファイルに変更箇所のスクリーンショットをつけます.

Rubyのバージョンは2.4.1p111,Ruby/Gtk2は3.1.3を使っております.また,mikutterのバージョンは3.5.7です,

Screenshot_at_2017-05-14-00-15-06.png 表示 - 変更箇所のスクリーンショット (22.4 KB) Tajima Hidenari, 2017-05-15 18:47


関連するチケット

関連している バグ #1050: pango 3.1.1以前を利用していると、ユーザのプロフィールを開いたときにクラッシュする 終了 2017-06-14
ブロック元 環境対応 #1041: gtk2 3.1.6を使用する 終了 2017-05-16

履歴

#1 toshi_a 初音3ヶ月前に更新

ググっても同様の問題は出てきませんね。

見た目の変化はよくわかりませんでした

定数名の通り、ユーザのスクリーンネームに下線を引くのと、太字にするためのコードです。ここを削除すると、これらの装飾が外れると思います。

gtk2 gemを3.1.1ではなく3.1.3に変更してみたところ、同様の問題が再現しました。mikutterではgtk2 gemは3.1.1にしか対応していないため、gtk2 gemのバージョンを合わせるか、見た目の些細な変化しかないのであれば、mikutter側が対応するまで説明にあったような修正を適用したものを利用してください。

調査結果

簡単に調査したところ、どうやらgtk2ではなく、pangoの問題のよう。

notice: {MIKUTTER_DIR}/core/boot/delayer.rb:37:in `block in terminate': uninitialized constant Pango::FontDescription::WEIGHT_BOLD
Did you mean?  Pango::Weight
from {MIKUTTER_DIR}/core/plugin/user_detail_view/user_detail_view.rb:303:in `user_name'
from {MIKUTTER_DIR}/core/plugin/user_detail_view/user_detail_view.rb:282:in `profile_head'
from {MIKUTTER_DIR}/core/plugin/user_detail_view/user_detail_view.rb:49:in `show_profile'
from {MIKUTTER_DIR}/core/plugin/user_detail_view/user_detail_view.rb:20:in `block (4 levels) in <top (required)>'
from {MIKUTTER_DIR}/vendor/bundle/ruby/2.4.0/gems/delayer-deferred-1.1.1/lib/delayer/deferred/deferredable.rb:94:in `_execute'
from {MIKUTTER_DIR}/vendor/bundle/ruby/2.4.0/gems/delayer-deferred-1.1.1/lib/delayer/deferred/deferredable.rb:72:in `block (3 levels) in _call'
from {MIKUTTER_DIR}/vendor/bundle/ruby/2.4.0/gems/delayer-deferred-1.1.1/lib/delayer/deferred/deferredable.rb:71:in `catch'
from {MIKUTTER_DIR}/vendor/bundle/ruby/2.4.0/gems/delayer-deferred-1.1.1/lib/delayer/deferred/deferredable.rb:71:in `block (2 levels) in _call'
from {MIKUTTER_DIR}/vendor/bundle/ruby/2.4.0/gems/delayer-deferred-1.1.1/lib/delayer/deferred/deferred.rb:73:in `block (2 levels) in _gen_new_fiber'
from {MIKUTTER_DIR}/vendor/bundle/ruby/2.4.0/gems/delayer-deferred-1.1.1/lib/delayer/deferred/deferred.rb:72:in `loop'
from {MIKUTTER_DIR}/vendor/bundle/ruby/2.4.0/gems/delayer-deferred-1.1.1/lib/delayer/deferred/deferred.rb:72:in `block in _gen_new_fiber'

また、Ruby-GNOME2のWebページ を軽く見たところ、PangoがGIを使って書き直されたようで、今までの傾向から言っても定数名が大幅に変わっていそう。

Ruby/Pango
Improvements
Migrated to GObject Introspection bindings. [GitHub#1007][GitHub#1008][GitHub#1009][GitHub#1010] [GitHub#1011][Patch by cedlemo] [GitHub#1013][GitHub#1014][Patch by Detlef Wagner]

Gemfileではgtk2 gemは3.1.1に縛っているが、ディストリによっては最新の3.1.3を利用してしまうので、mikutter側も早く3.1.3を使うように変更したほうがよさそう。

#2 toshi_a 初音3ヶ月前に更新

#3 toshi_a 初音2ヶ月前に更新

  • ステータス新規 から 終了 に変更

#1041 で対応しました

#4 toshi_a 初音約2ヶ月前に更新

  • 関連している バグ #1050: pango 3.1.1以前を利用していると、ユーザのプロフィールを開いたときにクラッシュする を追加

他の形式にエクスポート: Atom PDF