celluloid-player / celluloid

A simple GTK+ frontend for mpv
https://celluloid-player.github.io
GNU General Public License v3.0
1.16k stars 92 forks source link

Segfault at end of playlist with `keep-open=no` script #972

Closed 0n-s closed 3 months ago

0n-s commented 3 months ago

Overview Description: The keep-open=no script mentioned in the title is here: https://github.com/celluloid-player/celluloid/issues/650#issuecomment-814989876

When Celluloid reaches the end of its playlist & quits, it segfaults & coredumps.

Steps to Reproduce:

  1. Add the script above to Celluloid, then restart.
  2. Play a video in Celluloid, then let it play until it exits.
  3. Check your system log (dmesg or such). There should be a fresh new segfault.

Actual Results:

kernel: traps: celluloid[58256] general protection fault ip:7f29dfcbefaf sp:7fffc8b4fc20 error:0 in libmpv.so.2.3.0[befaf,7f29dfc43000+133000]
systemd-coredump[58338]: Process 58256 (celluloid) of user 1000 terminated abnormally with signal 11/SEGV, processing...
systemd[1]: Started Process Core Dump (PID 58338/UID 0).
[...]
systemd-coredump[58339]: Process 58256 (celluloid) of user 1000 dumped core.

                         Stack trace of thread 2:
                         #0  0x00007f29dfcbefaf n/a (/app/lib/libmpv.so.2.3.0 + 0xbefaf)
                         #1  0x00005637425ef7b1 n/a (/app/bin/celluloid + 0x2e7b1)
                         #2  0x00007f29e0085697 n/a (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.8000.4 + 0x60697)
                         #3  0x00007f29e00877b7 n/a (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.8000.4 + 0x627b7)
                         #4  0x00007f29e0087e73 n/a (/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.8000.4 + 0x62e73)
                         #5  0x00007f29e02d314d n/a (/usr/lib/x86_64-linux-gnu/libgio-2.0.so.0.8000.4 + 0xf814d)
                         #6  0x00005637425d8979 n/a (/app/bin/celluloid + 0x17979)
                         #7  0x00007f29df84a08a n/a (/usr/lib/x86_64-linux-gnu/libc.so.6 + 0x2808a)
                         #8  0x00007f29df84a14b n/a (/usr/lib/x86_64-linux-gnu/libc.so.6 + 0x2814b)
                         #9  0x00005637425d89c5 n/a (/app/bin/celluloid + 0x179c5)
                         ELF object binary architecture: AMD x86-64
systemd[1]: systemd-coredump@6-58338-0.service: Deactivated successfully.
systemd[1]: systemd-coredump@6-58338-0.service: Consumed 576ms CPU time, 324.6M memory peak.
systemd[1718]: app-flatpak-io.github.celluloid_player.Celluloid-58245.scope: Consumed 9.405s CPU time, 679.6M memory peak.

Expected Results: Celluloid should exit cleanly.

Version: 0.27 (Flatpak), also reproducible with the 0.27 nixpkgs derivation.

Additional Information: