操作
バグ #1078
未完了Gtk::TreeIter が指す行の存在を確認していない箇所がある
プラグイン名:
ブランチ:
クラッシュする:
説明
Gtk::TreeIter が指し示す行が存在しない場合を考慮していないため、 #1077 のような問題が発生した。
Gtk::TreeIterインスタンスの作成後に行が削除される可能性がある場合は、存在をチェックしなければならない。
潜在的には、Photo Modelのload_pixbufメソッドのような振る舞いをするメソッドを利用する箇所すべてを見直す必要がある。
source:core/mui/gtk_inneruserlist.rb#L37
iter[COL_ICON] = user.icon.load_pixbuf(width: 24, height: 24){|pixbuf|
iter[COL_ICON] = pixbuf unless destroyed?
}
source:core/plugin/activity/model_selector.rb#L22
iter[ICON] = record.icon.load_pixbuf(width: 24, height: 24) do |loaded_icon|
iter[ICON] = loaded_icon
end
source:core/plugin/shortcutkey/shortcutkey_listview.rb#L39
iter[COLUMN_COMMAND_ICON] = icon.load_pixbuf(width: 16, height: 16){ |pixbuf|
if not destroyed?
iter[COLUMN_COMMAND_ICON] = pixbuf end } end end } end
source:core/plugin/shortcutkey/shortcutkey_listview.rb#L192
iter[COL_ICON] = icon.load_pixbuf(width: 16, height: 16) do |pixbuf|
iter[COL_ICON] = pixbuf if not destroyed?
end
source:core/plugin/change_account/account_control.rb#24
iter[COL_ICON] = service.user_obj.icon.load_pixbuf(width: 16, height: 16) { |new_pixbuf|
iter[COL_ICON] = new_pixbuf if not self.destroyed? }
関連するチケット
toshi_a 初音 さんが約7年前に更新
- 関連している 致命的 #1077: Gtk-CRITICAL **: IA__gtk_list_store_set_value の出力を繰り返した後、特定の行でクラッシュする。 を追加
操作