LedgerHQ/ledger-live-desktop

Ledger-live crashes if PCI devices exist without idProduct

clinta opened this issue · 0 comments

Ledger Live Version and Operating System

  • tested on Ledger Live 2.40.2
  • Platform and version: Manjaro Linux

Expected behavior

Ledger should not crash

Actual behavior

Ledger crashes with the following error:

Internal process killed by signal (SIGSEGV)
Error
    at createCustomErrorClass (file:///opt/ledger-live-desktop/resources/app.asar/.webpack/renderer.bundle.js:6447:19)
    at deserializeError (file:///opt/ledger-live-desktop/resources/app.asar/.webpack/renderer.bundle.js:6475:35)
    at EventEmitter.handleCommandEvent (file:///opt/ledger-live-desktop/resources/app.asar/.webpack/renderer.bundle.js:860009:61)
    at EventEmitter.emit (events.js:327:22)
    at Object.onMessage (electron/js2c/renderer_init.js:93:1117)

strace reveals that the last operation before crashing:

1952252 newfstatat(AT_FDCWD, "/sys/devices/pci0000:00/0000:00:02.0/0000:03:00.0/i2c-5/5-0037/ddcci5/idProduct", 0x7ffd03b58b00, AT_SYMLINK_NOFOLLOW) = -1 ENOENT (No such file or directory)
1952252 --- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=NULL} ---

In my case this pci device created by the ddcci_backlight module for controlling the backlight on my monitors. It does not have an idProduct file. If I unload the ddcci and ddcci_backlight module ledger-live runs without crashing.

Steps to reproduce the behavior

Use something like the ddcci_backlight module, or some other module that provides pci devices that do not have an idProduct file and try to run ledger-live.