Skip to content

Closing the QML window leaves the Julia process running in latest version(v0.13.0) #237

Description

@rakeshksr

Closing the QML window leaves the Julia process running instead of exiting cleanly.
This happens in latest version only, v0.12.1 works fine.

Steps to reproduce:

  1. Create minimal helloworld project in qml
// helloworld.qml

import QtQuick
import QtQuick.Window

Window {
    visible: true
    width: 400
    height: 300
    title: "Hello World"

    Text {
        anchors.centerIn: parent
        text: "Hello, World!"
        font.pointSize: 20
    }
}
# main.jl

using QML

qml_file = joinpath(dirname(@__FILE__), "helloworld.qml")
loadqml(qml_file)

exec()
  1. Run the file julia --project=. main.jl
  2. Close hello world application window.

Additional information:

Video to demonstrating issue

qml_test.mp4

Activity

  1. barche commented on Apr 16, 2026

    @barche
    Collaborator

    Thanks for reporting this. It is Windows specific and I couldn't immediately find the cause, this will take some debugging on my Windows machine.

  2. KSepetanc commented on Apr 19, 2026

    @KSepetanc

    Closing default dialog window (to browse for path) on Windows 11 (QML 0.13) also causes issue (few seconds lag and then app resumes normally, but Windows crash report gets generated). Appears to be related. Works as expected on Linux. No issues on 0.12.1.

    Crash report.

    Faulting application name: julia.exe, version: 1.12.6.0, time stamp: 0x69d80f52
    Faulting module name: Qt6Core.dll, version: 6.10.2.0, time stamp: 0x00000000
    Exception code: 0xc0000005
    Fault offset: 0x000000000025648c
    Faulting process id: 0x644
    Faulting application start time: 0x1DCD046872B5243
    Faulting application path: C:\Users\karlo\.julia\juliaup\julia-1.12.6+0.x64.w64.mingw32\bin\julia.exe
    Faulting module path: C:\Users\karlo\.julia\artifacts\00509438191d3ba063ec20fd2ebf58cbe32f2390\bin\Qt6Core.dll
    Report Id: 140958f4-4f92-465f-83b4-732a7edb6f61
    Faulting package full name: 
    Faulting package-relative application ID: 
    
  3. barche commented on Apr 25, 2026

    @barche
    Collaborator

    In the mean time I found out that this is caused by the change to Qt 6.10, since building the current jlqml with Qt 6.8 works. Also building a local jlqml with MSVC against Qt 6.10 works.

  4. barche commented on May 2, 2026

    @barche
    Collaborator

    I finally managed to get a backtrace of this:

    Qt6Core.dll!destroy_current_thread_data(void * p) (\workspace\srcdir\qtbase-everywhere-src-6.10.2\src\corelib\thread\qthread_win.cpp:54)
    Qt6Core.dll!Cleanup::~Cleanup(Cleanup * const this) (\workspace\srcdir\qtbase-everywhere-src-6.10.2\src\corelib\thread\qthread_win.cpp:89)
    libstdc++-6.dll!(anonymous namespace)::run(void * p) (\workspace\srcdir\gcc-14.2.0\libstdc++-v3\libsupc++\atexit_thread.cc:98)
    libwinpthread-1.dll!_pthread_cleanup_dest(pthread_t t) (\workspace\srcdir\mingw-w64-v11.0.1\mingw-w64-libraries\winpthreads\src\thread.c:973)
    libwinpthread-1.dll!_pthread_cleanup_dest(pthread_t t) (\workspace\srcdir\mingw-w64-v11.0.1\mingw-w64-libraries\winpthreads\src\thread.c:949)
    libwinpthread-1.dll!__dyn_tls_pthread(HANDLE hDllHandle, DWORD dwReason, LPVOID lpreserved) (\workspace\srcdir\mingw-w64-v11.0.1\mingw-w64-libraries\winpthreads\src\thread.c:456)
    libwinpthread-1.dll!__dyn_tls_pthread(HANDLE hDllHandle, DWORD dwReason, LPVOID lpreserved) (\workspace\srcdir\mingw-w64-v11.0.1\mingw-w64-libraries\winpthreads\src\thread.c:427)
    ntdll.dll!ntdll!RtlTimeToSecondsSince1970 (Unknown Source:0)
    ntdll.dll!ntdll!RtlEncodeRemotePointer (Unknown Source:0)
    ntdll.dll!ntdll!RtlRaiseException (Unknown Source:0)
    ntdll.dll!ntdll!RtlRaiseException (Unknown Source:0)
    ntdll.dll!ntdll!LdrShutdownThread (Unknown Source:0)
    ntdll.dll!ntdll!RtlExitUserThread (Unknown Source:0)
    kernel32.dll!KERNEL32!BaseThreadInitThunk (Unknown Source:0)
    ntdll.dll!ntdll!RtlUserThreadStart (Unknown Source:0)
    [Unknown/Just-In-Time compiled code] (Unknown Source:0)
    

    This is almost certainly a bug in Qt, or at least a buggy interaction between Qt and MinGW and it was introduced in Qt 6.9:

    https://qt-project.atlassian.net/browse/QTBUG-131892#icft=QTBUG-131892

  5. added a commit that references this issue on May 10, 2026
  6. barche commented on May 11, 2026

    @barche
    Collaborator

    Should be fixed by updating Qt6Base_jll.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions