Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-137473

Nullpointer access in destroy_current_thread_data()

    XMLWordPrintable

Details

    • Bug
    • Resolution: Duplicate
    • Not Evaluated
    • None
    • 6.9.0, 6.9.1
    • Core: Threads
    • None
    • MSYS_NT-10.0-19045 hades 3.6.2-a9cfe9f5.x86_64 2025-06-03 09:09 UTC x86_64 Msys
      g++.exe (Rev15, Built by MSYS2 project) 15.1.0 - This is the same as Rev5, just with -march=native compiled

      qbs 3.1.0 or 2.5.0 trigger both
    • Windows

    Description

      I'm not 100% sure if this is a Qt bug, or if qbs does anything wrong, but I've bisected it to qtbase/4578e3f898e2c3221e08c1a39272993cb7790cd1.

      Whenever qbs does a re-resolve of a bigger project (simple 1 product project does not trigger this, but the qbs qbs project does) it gets to this nullpointer access, here in thread #16, for a full trace of all threads see the attachment:

      Thread 16 (Thread 41436.0x474):
      #0  destroy_current_thread_data (p=0x0) at E:/qt5/qtbase/src/corelib/thread/qthread_win.cpp:54
              data = 0x0
              thread = <optimized out>
      #1  0x00007fff5e8224bc in Cleanup::~Cleanup (this=<optimized out>) at E:/qt5/qtbase/src/corelib/thread/qthread_win.cpp:79
      No locals.
      #2  0x00007fff5e8adbad in run_dtor_list (ptr=<optimized out>) at C:/W/B/src/mingw-w64/mingw-w64-crt/crt/tls_atexit.c:62
              cur = 0x27078611970
      #3  run_dtor_list (ptr=0x2705a8def10) at C:/W/B/src/mingw-w64/mingw-w64-crt/crt/tls_atexit.c:56
              cur = <optimized out>
      #4  tls_callback (hDllHandle=<optimized out>, dwReason=<optimized out>, lpReserved=<optimized out>) at C:/W/B/src/mingw-w64/mingw-w64-crt/crt/tls_atexit.c:165
              p = 0x2705a8def10
      #5  0x00007ff805a29a1d in ntdll!RtlActivateActivationContextUnsafeFast () from C:\Windows\SYSTEM32\ntdll.dll
      No symbol table info available.
      #6  0x00007ff805a29aff in ntdll!RtlActivateActivationContextUnsafeFast () from C:\Windows\SYSTEM32\ntdll.dll
      No symbol table info available.
      #7  0x00007ff805a275a3 in ntdll!LdrShutdownThread () from C:\Windows\SYSTEM32\ntdll.dll
      No symbol table info available.
      #8  0x00007ff805a6468e in ntdll!RtlExitUserThread () from C:\Windows\SYSTEM32\ntdll.dll
      No symbol table info available.
      #9  0x00007ff8029ef75a in KERNELBASE!FreeLibraryAndExitThread () from C:\Windows\System32\KernelBase.dll
      No symbol table info available.
      #10 0x00007ff802ee1cc4 in ucrtbase!_configthreadlocale () from C:\Windows\System32\ucrtbase.dll
      No symbol table info available.
      #11 0x00007ff802f34759 in ucrtbase!_endthreadex () from C:\Windows\System32\ucrtbase.dll
      No symbol table info available.
      #12 0x00007fffee7967c4 in ?? () from C:\msys64\ucrt64\bin\libwinpthread-1.dll
      No symbol table info available.
      #13 0x00007ff802ee1bb2 in ucrtbase!_configthreadlocale () from C:\Windows\System32\ucrtbase.dll
      No symbol table info available.
      #14 0x00007ff8053f7344 in KERNEL32!BaseThreadInitThunk () from C:\Windows\System32\kernel32.dll
      No symbol table info available.
      #15 0x00007ff805a626b1 in ntdll!RtlUserThreadStart () from C:\Windows\SYSTEM32\ntdll.dll
      No symbol table info available.
      #16 0x0000000000000000 in ?? ()
      No symbol table info available.

      When I'm not attached with the debugger qbs keeps on running, but starting a lot of WerFault and generating a dump, thus delaying the usage.

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              thiago Thiago Macieira
              hazardy Björn
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes