desktop: [ubuntu 19.04] open folder picker crashes app

Description

When ever I tried cloning a repository on a newly created Desktop instance and OS, Desktop simply crashed. It happened several times and often after this, the UI fails to load with Desktop. When it does, artifacts may appear.

Version

  • GitHub Desktop: 1.6.6-linux2

  • Operating system: Ubuntu 19.04

Steps to Reproduce

  1. Open GitHub Desktop
  2. Attempt to clone repository
  3. Click "choose" for local path under URL

Expected Behavior

Continue with cloning process

Actual Behavior

Crashes and reopens in a blank white screen

Additional Information

Screenshot from 2019-04-19 10-26-09

Screenshot from 2019-04-19 10-22-51

Screenshot from 2019-04-19 10-27-26

Logs

2019-04-19.desktop.production.log

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Comments: 20 (10 by maintainers)

Most upvoted comments

I found that whenever I click the “choose” button in any context in Desktop it crashes. I tried to add a local repository and it crashed on the “choose” button.

Нет такого файла

вс, 21 апр. 2019 г., 23:31 cyndre notifications@github.com:

I ran Desktop in terminal, I got the same result it seems:

[pid 5500] openat(AT_FDCWD, “/snap/github-desktop/59/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/…/…/…/…/…/…/lib/x86_64-linux-gnu/tls/haswell/x86_64/libpng12.so.0”, O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) [pid 5500] stat(“/snap/github-desktop/59/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/…/…/…/…/…/…/lib/x86_64-linux-gnu/tls/haswell/x86_64”, 0x7ffd4e2991c0) = -1 ENOENT (No such file or directory) [pid 5500] openat(AT_FDCWD, “/snap/github-desktop/59/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/…/…/…/…/…/…/lib/x86_64-linux-gnu/tls/haswell/libpng12.so.0”, O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) [pid 5500] stat(“/snap/github-desktop/59/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/…/…/…/…/…/…/lib/x86_64-linux-gnu/tls/haswell”, 0x7ffd4e2991c0) = -1 ENOENT (No such file or directory) [pid 5500] openat(AT_FDCWD, “/snap/github-desktop/59/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/…/…/…/…/…/…/lib/x86_64-linux-gnu/tls/x86_64/libpng12.so.0”, O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) [pid 5500] stat(“/snap/github-desktop/59/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/…/…/…/…/…/…/lib/x86_64-linux-gnu/tls/x86_64”, 0x7ffd4e2991c0) = -1 ENOENT (No such file or directory) [pid 5500] openat(AT_FDCWD, “/snap/github-desktop/59/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/…/…/…/…/…/…/lib/x86_64-linux-gnu/tls/libpng12.so.0”, O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) [pid 5500] stat(“/snap/github-desktop/59/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/…/…/…/…/…/…/lib/x86_64-linux-gnu/tls”, 0x7ffd4e2991c0) = -1 ENOENT (No such file or directory) [pid 5500] openat(AT_FDCWD, “/snap/github-desktop/59/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/…/…/…/…/…/…/lib/x86_64-linux-gnu/haswell/x86_64/libpng12.so.0”, O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) [pid 5500] stat(“/snap/github-desktop/59/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/…/…/…/…/…/…/lib/x86_64-linux-gnu/haswell/x86_64”, 0x7ffd4e2991c0) = -1 ENOENT (No such file or directory) [pid 5500] openat(AT_FDCWD, “/snap/github-desktop/59/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/…/…/…/…/…/…/lib/x86_64-linux-gnu/haswell/libpng12.so.0”, O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) [pid 5500] stat(“/snap/github-desktop/59/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/…/…/…/…/…/…/lib/x86_64-linux-gnu/haswell”, 0x7ffd4e2991c0) = -1 ENOENT (No such file or directory) [pid 5500] openat(AT_FDCWD, “/snap/github-desktop/59/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/…/…/…/…/…/…/lib/x86_64-linux-gnu/x86_64/libpng12.so.0”, O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) [pid 5500] stat(“/snap/github-desktop/59/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/…/…/…/…/…/…/lib/x86_64-linux-gnu/x86_64”, 0x7ffd4e2991c0) = -1 ENOENT (No such file or directory) [pid 5500] openat(AT_FDCWD, “/snap/github-desktop/59/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/…/…/…/…/…/…/lib/x86_64-linux-gnu/libpng12.so.0”, O_RDONLY|O_CLOEXEC) = 118 [pid 5500] read(118, “\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p:\0\0\0\0\0\0”…, 832) = 832 [pid 5500] lseek(118, 151552, SEEK_SET) = 151552 [pid 5500] read(118, “\1\0\0\0\5\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0”…, 448) = 448 [pid 5500] fstat(118, {st_mode=S_IFREG|0644, st_size=156960, …}) = 0 [pid 5500] lseek(118, 151552, SEEK_SET) = 151552 [pid 5500] read(118, “\1\0\0\0\5\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0”…, 448) = 448 [pid 5500] mmap(NULL, 2254112, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 118, 0) = 0x7f087e727000 [pid 5500] mprotect(0x7f087e74b000, 2101248, PROT_NONE) = 0 [pid 5500] mmap(0x7f087e94a000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 118, 0x23000) = 0x7f087e94a000 [pid 5500] mmap(0x7f087e94c000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 118, 0x25000) = 0x7f087e94c000 [pid 5500] close(118) = 0 [pid 5500] mprotect(0x7f087e94a000, 4096, PROT_READ) = 0 [pid 5500] mprotect(0x7f087eb52000, 4096, PROT_READ) = 0 [pid 5500] — SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=NULL} —

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/shiftkey/desktop/issues/142#issuecomment-485283727, or mute the thread https://github.com/notifications/unsubscribe-auth/ALMGMGIY223NK7OEBAV76WLPRTMJTANCNFSM4HHE4DUA .

I was able to point strace at the problem app from the command line (snap run --strace github-desktop and then try and open the file picker) and see the underlying issue (a SIGSEGV brings down the process). The likely culprits are some openat syscalls before this that return ENOENT that don’t seem to be handled correctly:

[pid  3733] openat(AT_FDCWD, "/snap/github-desktop/x1/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/../../../../../../lib/x86_64-linux-gnu/tls/haswell/libpng12.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  3733] stat("/snap/github-desktop/x1/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/../../../../../../lib/x86_64-linux-gnu/tls/haswell", 0x7fff07f840a0) = -1 ENOENT (No such file or directory)
[pid  3733] openat(AT_FDCWD, "/snap/github-desktop/x1/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/../../../../../../lib/x86_64-linux-gnu/tls/x86_64/libpng12.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  3733] stat("/snap/github-desktop/x1/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/../../../../../../lib/x86_64-linux-gnu/tls/x86_64", 0x7fff07f840a0) = -1 ENOENT (No such file or directory)
[pid  3733] openat(AT_FDCWD, "/snap/github-desktop/x1/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/../../../../../../lib/x86_64-linux-gnu/tls/libpng12.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  3733] stat("/snap/github-desktop/x1/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/../../../../../../lib/x86_64-linux-gnu/tls", 0x7fff07f840a0) = -1 ENOENT (No such file or directory)
[pid  3733] openat(AT_FDCWD, "/snap/github-desktop/x1/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/../../../../../../lib/x86_64-linux-gnu/haswell/x86_64/libpng12.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  3733] stat("/snap/github-desktop/x1/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/../../../../../../lib/x86_64-linux-gnu/haswell/x86_64", 0x7fff07f840a0) = -1 ENOENT (No such file or directory)
[pid  3733] openat(AT_FDCWD, "/snap/github-desktop/x1/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/../../../../../../lib/x86_64-linux-gnu/haswell/libpng12.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  3733] stat("/snap/github-desktop/x1/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/../../../../../../lib/x86_64-linux-gnu/haswell", 0x7fff07f840a0) = -1 ENOENT (No such file or directory)
[pid  3733] openat(AT_FDCWD, "/snap/github-desktop/x1/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/../../../../../../lib/x86_64-linux-gnu/x86_64/libpng12.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid  3733] stat("/snap/github-desktop/x1/usr/lib/x86_64-linux-gnu/gdk-pixbuf-2.0/2.10.0/loaders/../../../../../../lib/x86_64-linux-gnu/x86_64", 0x7fff07f840a0) = -1 ENOENT (No such file or directory)
...
[pid  3733] --- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=NULL} ---

@cyndre are you able to run through the same steps and see it SIGSEGV in the same way? I gather there’s something wrong with how the app is being packaged currently that isn’t working on the latest Ubuntu…

@cyndre thanks for the report!

Click “choose” for local path under URL

Can you share what was in the Local path value at the time? There might be some unexpected input that we’re not handling correctly…