OK, I think I understood it properly and these uploads (which are
waiting in the queues currently) should fix it.

** Description changed:

  [ Description ]
  
  When xdg-screensaver suspend <wid> refers to a window with invalid UTF-8
  in its title, it will spawn a perl process that crashes with an
  assertion:
  
-   dbus[19455]: arguments to dbus_message_iter_append_basic() were incorrect, 
assertion "_dbus_check_is_valid_utf8 (*string_p)" failed in file 
../../../dbus/dbus-message.c line 2754.
-   This is normally a bug in some application using the D-Bus library.
+   dbus[19455]: arguments to dbus_message_iter_append_basic() were incorrect, 
assertion "_dbus_check_is_valid_utf8 (*string_p)" failed in file 
../../../dbus/dbus-message.c line 2754.
+   This is normally a bug in some application using the D-Bus library.
+ 
+ [ Fix ]
+ 
+ Use decode() from the Encode module to replace invalid character
+ sequences with U+FFFD, the replacement symbol. This is not a new
+ dependency as Encode has been a perl core module since 5.8.
  
  [ QA ]
  
  I don't know how to get a window with such a title, so we can do two
  things.
  
  1)
  
  1. $ sudo -e $(which xdg-screensaver) # hack the script
  2. Find the line "# Inhibit idle detection (flags = 8) with window name and 
ID."
  3. Find the } on its own above that.  Insert a new line afterwards and set 
the window name to be the same as the one in this bug, by pasting the code
-   $window_name = "\253\062\065 Meter fehlten bis zur Katastrophe\273 - News 
Panorama: Vermischtes - tagesanzeiger.ch - Mozilla Firefox";
+   $window_name = "\253\062\065 Meter fehlten bis zur Katastrophe\273 - News 
Panorama: Vermischtes - tagesanzeiger.ch - Mozilla Firefox";
  4. Save and exit
  5. $ xwininfo
  6. click some window, and copy the "Window id", which will be 0x<something>
  7. $ xdg-screensaver suspend <that window id>
  
  In the bad case (before this bug is fixed) it should crash, and in the
  good case it should work.
  
  8. Undo what you just did by running $ xdg-screensaver resume <that
  window id>
  
  2)
  
  Observe that the error bucket
  
  https://errors.ubuntu.com/problem/b386f287972198daca290969b0ea5182ce8e5d52
  
  has a reduction in report rate with the new versions.
  
  [ Regression potential ]
  
  If the code is bad then the window name passed to Inhibit() could be
  wrong. That shouldn't matter too much.
  
  If it is really bad then the program might crash for everybody and we'll
  see an increase in errors.
  
  [ Original description ]
  
  Errors Bucket
  -------------
  https://errors.ubuntu.com/problem/b386f287972198daca290969b0ea5182ce8e5d52
  
  crashed after launching the software updater
  
  ProblemType: CrashDistroRelease: Ubuntu 18.04
  Package: perl-base 5.26.1-4
  ProcVersionSignature: Ubuntu 4.14.0-16.19-generic 4.14.12
  Uname: Linux 4.14.0-16-generic x86_64
  ApportVersion: 2.20.8-0ubuntu6
  Architecture: amd64
  CurrentDesktop: ubuntu:GNOME
  Date: Sun Jan 14 13:30:52 2018
  ExecutablePath: /usr/bin/perl
  InstallationDate: Installed on 2017-12-28 (17 days ago)
  InstallationMedia: Ubuntu 18.04 LTS "Bionic Beaver" - Alpha amd64 (20171201)
  Signal: 6SourcePackage: perl
  StacktraceTop:
   _dbus_abort () from /lib/x86_64-linux-gnu/libdbus-1.so.3
   _dbus_warn_check_failed () from /lib/x86_64-linux-gnu/libdbus-1.so.3
   dbus_message_iter_append_basic () from /lib/x86_64-linux-gnu/libdbus-1.so.3
   ?? () from /usr/lib/x86_64-linux-gnu/perl5/5.26/auto/Net/DBus/DBus.so
   Perl_pp_entersub ()
  Title: perl crashed with SIGABRT in _dbus_abort()
  UpgradeStatus: No upgrade log present (probably fresh install)
  UserGroups: adm cdrom dip lpadmin lxd plugdev sambashare sudo

** Changed in: xdg-utils (Ubuntu Cosmic)
       Status: Confirmed => In Progress

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1743216

Title:
  perl crashed with SIGABRT in _dbus_abort()

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

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to