Drag & dropping a file from file explorer SEGFAULTs on Linux #44460
Description
Preflight Checklist
- I have read the Contributing Guidelines for this project.
- I agree to follow the Code of Conduct that this project adheres to.
- I have searched the issue tracker for a bug report that matches the one I want to file, without success.
Electron Version
33.0.2
What operating system(s) are you using?
Ubuntu
Operating System Version
Linux 6.8.0-47-generic #47-Ubuntu SMP PREEMPT_DYNAMIC Fri Sep 27 21:40:26 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux (Linux Mint 22 Cinnnamon for us mere mortals)
What arch are you using?
x64
Last Known Working Electron version
I don't know would like to develop a new feature
Expected Behavior
When drag & dropping a file from file explorer on Linux Mint the Electron app should not crash.
Actual Behavior
After drag & dropping a file from file explorer on Linux Mint the Electron app SEGFAULTs.
Testcase Gist URL
No response
Additional Information
I have created a repro in https://github.com/miikaah/electron-file-drop-crash. A lot more details there.
I think this might be upstream in V8. It is somewhat undeterministic but not really. Sometimes it just takes a while to crash. I can create a 99,9999999 % failure case if this repro is not enough.
What happens is that after dropping a file to the app it works somewhere between 0 - 60 seconds and then it just goes blank, because it segfaults.
The error output is something like this:
Received signal 11 SEGV_MAPERR 000000000008
#0 0x57b1d22cb24a (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x60fc249)
#1 0x57b1d22db709 (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x610c708)
#2 0x7754c9a45320 (/usr/lib/x86_64-linux-gnu/libc.so.6+0x4531f)
#3 0x57b1cfcc2021 (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x3af3020)
#4 0x57b1cfdbef08 (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x3beff07)
#5 0x57b1cfd3be93 (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x3b6ce92)
#6 0x57b1cfd3b3a4 (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x3b6c3a3)
#7 0x57b1cfd50689 (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x3b81688)
#8 0x57b1cfd5055f (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x3b8155e)
#9 0x57b1d05951ab (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x43c61aa)
#10 0x57b1cfd37955 (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x3b68954)
#11 0x57b1cfd968f4 (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x3bc78f3)
#12 0x57b1d226e36f (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x609f36e)
#13 0x57b1d228ebf2 (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x60bfbf1)
#14 0x57b1d22269c7 (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x60579c6)
#15 0x57b1d228f371 (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x60c0370)
#16 0x57b1d224e79e (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x607f79d)
#17 0x57b1d44fc99c (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x832d99b)
#18 0x57b1ce9edad4 (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x281ead3)
#19 0x57b1ce9ee2f8 (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x281f2f7)
#20 0x57b1ce9ef3a6 (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x28203a5)
#21 0x57b1ce9ed03a (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x281e039)
#22 0x57b1ce9ed120 (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x281e11f)
#23 0x57b1ce69bf97 (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x24ccf96)
#24 0x7754c9a2a1ca (/usr/lib/x86_64-linux-gnu/libc.so.6+0x2a1c9)
#25 0x7754c9a2a28b (/usr/lib/x86_64-linux-gnu/libc.so.6+0x2a28a)
#26 0x57b1ce27802a (/home/miika/repos/electron-file-drop-crash/node_modules/electron/dist/electron+0x20a9029)
r8: 00000000000006b5 r9: 0000000000000004 r10: 0000000080022018 r11: 0000000000000000
r12: 00001b940198fc00 r13: 00001b94019905f0 r14: 00000000000009b0 r15: 00000000000013b0
di: 0000000000000000 si: 00007ffc7f579740 bp: 00007ffc7f579710 bx: 0000000000000000
dx: 000077546b000000 ax: 00001e4400413659 cx: 00001b94019905f0 sp: 00007ffc7f579700
ip: 000057b1d1a24855 efl: 0000000000010246 cgf: 002b000000000033 erf: 0000000000000004
trp: 000000000000000e msk: 0000000000000000 cr2: 0000000000000008
[end of stack trace]
../../sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc:**CRASHING**:seccomp-bpf failure in syscall nr=0x25 arg1=0x5 arg2=0x7ffc7f578230 arg3=0x0 arg4=0x8
Renderer process crashed