Investigated this, it is due to the theming code failing to get a
settings object, probably due to the shell not running at the time. The
GTK functions that return the settings object are allowed to return
NULL, and this case was not being handled in GTK. The attached patch
contains three fixes in GTK to handle these cases. These cases were
found by forcing the settings object to be NULL and then running a test
program and fixing the segfaults.

** Patch added: "fix-no-shell.patch"
   
https://bugs.launchpad.net/ubuntu/+source/apport/+bug/1842439/+attachment/5629117/+files/fix-no-shell.patch

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to apport in Ubuntu.
https://bugs.launchpad.net/bugs/1842439

Title:
  apport-gtk crashed with SIGSEGV in
  _gtk_settings_get_screen(settings=0x0) from
  gtk_css_value_icon_theme_compute() from
  gtk_css_static_style_compute_value()

Status in apport package in Ubuntu:
  Triaged
Status in gtk+3.0 package in Ubuntu:
  Confirmed
Status in apport source package in Focal:
  Triaged
Status in gtk+3.0 source package in Focal:
  Confirmed

Bug description:
  Steps to reproduce
  ------------------

  1. Use GNOME with GNOME shell
  2. killall -11 gnome-shell

  Suspicious Apport log:

  gdbus call error: Error:
  GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name
  org.gnome.SessionManager was not provided by any .service files

  Error tracker
  -------------
  https://errors.ubuntu.com/problem/815a179408135a894bbb5921adef3757563c75c5
  https://errors.ubuntu.com/problem/276759c7bf0b6628977c63ca70d26b53c9defd22

  Original report
  ---------------
  Session suddenly stopped and came back to login screen, all opened windows 
lost.

  ProblemType: Crash
  DistroRelease: Ubuntu 19.10
  Package: apport-gtk 2.20.11-0ubuntu7
  ProcVersionSignature: Ubuntu 5.2.0-15.16-generic 5.2.9
  Uname: Linux 5.2.0-15-generic x86_64
  ApportVersion: 2.20.11-0ubuntu7
  Architecture: amd64
  CrashReports:
   640:1000:117:7292709:2019-09-03 16:20:13.909392833 +0200:2019-09-03 
16:20:14.909392833 +0200:/var/crash/_usr_share_apport_apport-gtk.1000.crash
   640:1000:117:48937942:2019-09-03 16:20:11.681426286 +0200:2019-09-03 
16:20:12.681426286 +0200:/var/crash/_usr_bin_gnome-shell.1000.crash
   640:1000:117:32054:2019-08-27 17:39:07.125607490 +0200:2019-08-28 
12:36:17.087672961 +0200:/var/crash/_usr_bin_dbus-daemon.1000.crash
  CurrentDesktop: ubuntu:GNOME
  Date: Tue Sep  3 16:20:13 2019
  ExecutablePath: /usr/share/apport/apport-gtk
  InstallationDate: Installed on 2018-06-16 (443 days ago)
  InstallationMedia: Ubuntu 18.10 "Cosmic Cuttlefish" - Alpha amd64 (20180611)
  InterpreterPath: /usr/bin/python3.7
  PackageArchitecture: all
  ProcCmdline: /usr/bin/python3 /usr/share/apport/apport-gtk
  ProcEnviron:
   PATH=(custom, no user)
   XDG_RUNTIME_DIR=<set>
   LANG=fr_FR.UTF-8
   SHELL=/bin/bash
  Python3Details: /usr/bin/python3.7, Python 3.7.4, python3-minimal, 3.7.3-1
  PythonDetails: /usr/bin/python2.7, Python 2.7.16+, python-minimal, 2.7.16-1
  SegvAnalysis:
   Segfault happened at: 0x7f532548f8c4:        mov    0x18(%rdi),%rax
   PC (0x7f532548f8c4) ok
   source "0x18(%rdi)" (0x00000018) not located in a known VMA region (needed 
readable region)!
   destination "%rax" ok
  SegvReason: reading NULL VMA
  Signal: 11
  SourcePackage: apport
  StacktraceTop:
   ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
   ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
   ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
   ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
   ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
  Title: apport-gtk crashed with SIGSEGV
  UpgradeStatus: Upgraded to eoan on 2019-06-10 (84 days ago)
  UserGroups: adm cdrom dip lpadmin plugdev sambashare sudo
  separator:

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/apport/+bug/1842439/+subscriptions


-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to