kledgeb UbuntuやLinuxの最新情報を紹介

Ubuntu 26.04 その43 - フォルダー移動時にクラッシュするファイルアプリの不具合修正

クラッシュする不具合の修正

ファイルアプリでフォルダー移動時に、ファイルアプリがクラッシュする不具合が修正されました。


  • Ubuntu 26.04, nautilus (Files) random crashes fixed
  • nautilus have frequent crashes while navigating fast through directories on 26.04 release

ランダムにクラッシュする不具合

ファイルアプリでユーザーがフォルダーを移動する時に、ファイルアプリがクラッシュする現象が発生していました。

ファイルアプリがクラッシュする直接的な原因はヒープメモリーの破損でしたが、再現性が一意ではなく、ランダムにファイルアプリがクラッシュしていました。
またクラッシュが発生する時のファイルアプリの操作にも一貫性がありませんでした。

原因を特定するための調査

さて本来の原因はそのメモリー破損の手前にあるため、不具合を修正するためにはその手前にある原因の特定が必要です。

しかし再現性なくクラッシュし、再現性を追い求めるも GUI アプリには操作の入口がたくさんあり、加えて GUI アプリを支えるソフトウェアも調査の対象になり得るため、原因の特定には困難さを伴いました。

厄介な不具合

この種の不具合は開発者にとって原因の特定が難しく、厄介な不具合になりがちです。
この種の不具合に頭を悩ませた経験のある開発者も多いのではないでしょうか。

実際本不具合でも原因の特定にあたり、バックトレースの収集やクラッシュパターンの調査、現象が発生した PC で物理メモリー自身に問題がないか調査するなど、原因のアタリをつける作業に時間がかけられました。

長い戦いは終わった

しかし Ubuntu と GNOME の開発者が連携し本不具合の調査が続けられ、ついに原因が特定されました。

ドラッグ操作の開始処理が、タイムアウトする前に複数回呼び出されることがあり、その呼び出しによって既存のタイムアウトを識別する ID が上書きされてしまい、古い処理を正しくキャンセルできない状態になっていました。

この不整合によって処理タイミングがずれる競合状態が発生し、メモリーの内容が壊れ、それが最終的にアプリのクラッシュに繋がっていました。

  • GtkDragSource: Fix memory corruption due to uncancelled source

そしてこの原因の特定に基づき、本不具合が修正されました。
修正は1行の修正です。
たった1行の修正だと思われるかもしれませんが、この1行の修正に辿り着くために開発者達が集まり、数ヶ月に渡り多大な労力が費やされてきました。

アップデートを

本不具合に対応した libgtk-4-1(4.22.4+ds-0ubuntu0.1)がリリースされています。
ソフトウェアの更新からアップデートすると良いでしょう。


アップデートした後にアップデートを反映するため、ログインし直すか PC を再起動すると良いでしょう。

Ubuntu
スポンサー
コメント
コメントポリシー
コメントをする前に UbuntuのCode of Conduct(CoC/行動規範) を確認し、CoCに沿ったコメントをお願いします。
コメントの使い方は、コメントの使い方を参照してください。
同一カテゴリーの記事
SNS
人気の記事
  • Ubuntu 26.04 その42 - Ubuntu 26.04.1 LTS のリリーススケジュール
    Ubuntu 26.04.1 LTSのリリーススケジュール Ubuntu 26.04.1 LTS のリリーススケジュールを紹介します。
  • Linux Mint その292 - Linux kernel 7.0 採用の Linux Mint 22.3 リリース・システム管理ツールにカーネル管理機能追加など
    Linux Mint 月刊ニュース Linux Mint 開発チームは Linux Mint 月刊ニュースにて、Linux Mint の開発状況や取り組みを紹介しています。
  • Ubuntu 26.04 その68 - Ubuntu 26.04.1 LTS がリリースされました・ディスクイメージのダウンロード
    Ubuntu 26.04.1 LTS リリース 2026年8月27日、Ubuntu 26.04.1 LTS がリリースされました。
  • Linux その422 - GNOME Boxes の再構築と未来・Flatpak のみの提供やモダンな機能の実装など
    GNOME Boxes の再構築と未来 GNOME Boxes の再構築と未来が以下で紹介されています。
  • Kubuntu その117 - Kubuntu 26.04 LTS にもっと手厚いサポートを・最高の信頼性を誇る KDE 搭載ディストリビューションを目指して
    最高の信頼性を誇る KDE 搭載ディストリビューションを目指して Kubuntu 26.04 LTS に手厚いサポートが導入されました。
  • Linux その421 - GNOME Shell のデザイン構想と長期的な見通し
    GNOME Shell のデザイン構想と長期的な見通し GNOME Shell のデザイン構想と長期的な見通しが、以下で紹介されています。
  • Linux その420 - KDE Plasma で実装予定の新機能や改善・UI レイアウトの調整やリモートデスクトップの改善など
    KDE Plasma で実装予定の新機能や改善 KDE Plasma で実装予定の新機能や改善を紹介します。
  • Windows その29 - Windows 向け Coreutils 登場・Coreutils のインストールやコマンドの一覧など
    Windows 向け Coreutils 登場 Windows 向け Coreutils が登場しました。
  • Linux その386 - Arch Linux の AUR パッケージで悪意あるコミットが続く・今度はソースコードの難読化か
    Arch Linux の AUR パッケージで悪意あるコミットが続く Arch Linux の AUR パッケージで悪意あるコミット(マルウェア)が続いています。
  • Ubuntu 18.04 その195 - PolicyKitにクラッシュや権限の昇格など複数の脆弱性・今すぐアップデートを
    PolicyKitの脆弱性 2018年7月16日、クラッシュや権限の昇格など複数の脆弱性に対応した「PolicyKit」がリリースされました。
記事のピックアップ
オプション