[x86_64] Kodi 21.3 SIGSEGV in CPythonInvoker::stop when navigating back in Python addon

  • Hello,

    I can reproducibly crash Kodi on LibreELEC 12.2.1 by repeatedly navigating
    back while using a Python video addon.

    I originally encountered the problem with another Python addon, but I have
    now reproduced it independently using the 3sat Mediathek addon (v5.0.2).

    Hardware:
    - CPU: Intel Celeron J4005 @ 2.00 GHz
    - GPU: Intel Gemini Lake UHD Graphics 600
    - Architecture: x86_64

    Software:
    - LibreELEC: 12.2.1
    - Kodi: 21.3 (Omega)
    - Kernel: Linux 6.16.12
    - Addon used for reproduction: 3sat Mediathek 5.0.2

    Steps to reproduce:

    1. Start Kodi.
    2. Open the "3sat Mediathek" addon.
    3. Navigate through several directory levels.
    4. Press Back repeatedly in quick succession.
    5. Kodi eventually crashes.

    The crash is a SIGSEGV in PyEval_ReleaseThread():

    #0 PyEval_ReleaseThread()
    #1 CPythonInvoker::stop(bool)
    #2 CLanguageInvokerThread::stop(bool)
    #3 CScriptInvocationManager::Stop(int, bool)
    #4 CScriptRunner::WaitOnScriptResult(...)

    The Kodi debug log records Back actions while navigating in the addon.

    Shortly before the crash, Kodi cancels the running 3sat Mediathek Python
    invocation:

    CScriptRunner: cancelling add-on script 3sat Mediathek (id = 12)
    CPythonInvoker(...): script successfully run
    onExecutionDone(...)
    Python interpreter interrupted by user
    CPythonInvoker(...): trigger Monitor abort request

    The same type of crash can therefore be reproduced without using the addon
    with which I originally noticed the problem.

    I have attached the full debug-enabled Kodi log and the corresponding
    crash log:

    kodi_crashlog_20260810121320.log

    kodi.log

    The issue has also been reported to the Kodi developers.

    Please let me know if additional logs, system information or tests are
    required.