i3: i3 segfault (invalid bytes in UTF8 string)

Output of i3 --moreversion 2>&- || i3 --version: Binary i3 version: 4.14.1 (2017-09-24) © 2009 Michael Stapelberg and contributors Running i3 version: 4.14.1 (2017-09-24) (pid 25806)bort…) Loaded i3 config: /home/localuser/.config/i3/config (Last modified: Fri 02 Mar 2018 05:19:28 PM MSK, 9472 seconds ago)

The i3 binary you just called: /usr/bin/i3 The i3 binary you are running: i3

URL to a logfile as per https://i3wm.org/docs/debugging.html: https://logs.i3wm.org/logs/5751016104394752.bz2 rofi and compton: https://transfer.sh/PKhat/rofi-compton.tar.gz

What I did: Pressed mod+Shift+r to restart i3.

What I saw: Logging out out and bare bones console.

What I expected instead: Restarted and pretty good looking i3.

In dmesg after relogin: [28804.609429] i3[22650]: segfault at 0 ip 0000558acbb7c6c7 sp 00007fff195eee40 error 6 in i3[558acbb5b000+6b000]

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Comments: 32 (18 by maintainers)

Commits related to this issue

Most upvoted comments

I’m not entirely sure whether allowing invalid UTF-8 is a good choice. It seems like invalid UTF-8 could cause trouble down the line. Apparently not in pango/cairo, but perhaps in IPC scripts?

Well, cairo tries hard to stay out of the business of turning utf8 into a list of glyphs. Pango explicitly checks for valid UTF8: https://sources.debian.org/src/pango1.0/1.40.5-1/pango/pango-layout.c/?hl=1084#L1106 Since i3 is already using Pango, it already depends on GLib and so could just use g_utf8_validate directly as well. (But I guess Pango (and thus also GLib) is an optional dependency…?) Also, notice that Pango prints out a warning via g_warning if passed invalid utf8.

Of course. Installing git version at the moment. Next time i get this bug i will post the log.