Skip to content

[ExtractorProcess] Handle extractor process crashes even when DrKonqi messes up process signals

Stefan Brüns requested to merge work/bruns/fix_drkonqi_breakage into master

DrKonqui catches the SIGSEGV or SIGILL from a misbehaving extractor, and then eventually quits the process. This may happen either by re-raising the signal, or just are regular _exit(253).

Which one is used depends on the kernel /proc/sys/kernel/core_pattern setting - if it uses a pipe, the signal will be reraised, otherwise the parent process sees only a regular exit (QProcess::NormalExit).

The unexpected exit status was not handled before, and could cause a blocking indexer, as neither a done() or failed() signal would ever be emitted.

This also causes the list of failed files to stay empty, i.e. balooctl failed would not return anything.

CCBUG: 421317

Merge request reports