Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
6.2.3, 6.3
-
None
-
11409f4c02 (qt/qtbase/dev) 11409f4c02 (qt/tqtc-qtbase/dev) 4b2c03a6de (qt/qtbase/6.2) 5e45fe2a4e (qt/qtbase/6.3) 4b2c03a6de (qt/tqtc-qtbase/6.2) 5e45fe2a4e (qt/tqtc-qtbase/6.3)
Description
The recent optimizations for QStringBuilder cause QDoc to crash for multiple Qt modules.
For example, backtrace for qdoc running in generate phase in qtopengl:
Thread 1 "qdoc" received signal SIGABRT, Aborted. 0x00007ffff24cf438 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54 54 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory. (gdb) bt #0 0x00007ffff24cf438 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54 #1 0x00007ffff24d103a in __GI_abort () at abort.c:89 #2 0x00007ffff25117fa in __libc_message (do_abort=2, fmt=fmt@entry=0x7ffff262af98 "*** Error in `%s': %s: 0x%s ***\n") at ../sysdeps/posix/libc_fatal.c:175 #3 0x00007ffff251ae0b in malloc_printerr (ar_ptr=0x7ffff285eb20 <main_arena>, ptr=0x55e9c90, str=0x7ffff2627d35 "corrupted size vs. prev_size", action=3) at malloc.c:5020 #4 _int_free (av=0x7ffff285eb20 <main_arena>, p=<optimized out>, have_lock=0) at malloc.c:4021 #5 0x00007ffff251e58c in __GI___libc_free (mem=<optimized out>) at malloc.c:2975 #6 0x00007ffff31cc082 in QArrayData::deallocate (data=0x55e9a90, objectSize=2, alignment=8) at qtbase/src/corelib/tools/qarraydata.cpp:279 #7 0x00007ffff2f6399a in QTypedArrayData<char16_t>::deallocate (data=0x55e9a90) at qtbase/include/QtCore/../../src/corelib/tools/qarraydata.h:160 #8 0x00007ffff2f6305e in QArrayDataPointer<char16_t>::~QArrayDataPointer (this=0x7fffffffc350, __in_chrg=<optimized out>) at qtbase/include/QtCore/../../src/corelib/tools/qarraydatapointer.h:131 #9 0x00007ffff3135cf2 in QArrayDataPointer<char16_t>::operator= (this=0x7fffffffc550, other=...) at qtbase/include/QtCore/../../src/corelib/tools/qarraydatapointer.h:92 #10 0x00007ffff317dfb6 in QString::reallocData (this=0x7fffffffc550, alloc=236, option=QArrayData::Grow) at qtbase/src/corelib/text/qstring.cpp:2634 #11 0x00007ffff317dd55 in QString::resize (this=0x7fffffffc550, size=236) at qtbase/src/corelib/text/qstring.cpp:2524 #12 0x000000000048f4c3 in operator+=<char [4], QString> (a=..., b=...) at qtbase/include/QtCore/../../src/corelib/text/qstringbuilder.h:487 #13 0x000000000048a897 in CppCodeMarker::markedUpSynopsis (this=0x7fffffffd4a8, node=0x356f250, style=Section::Details) at qttools/src/qdoc/cppcodemarker.cpp:146 #14 0x000000000057527f in HtmlGenerator::generateSynopsis (this=0x7fffffffd980, node=0x356f250, relative=0x35532a0, marker=0x7fffffffd4a8, style=Section::Details, alignNames=false, prefix=0x0) at qttools/src/qdoc/htmlgenerator.cpp:3075 #15 0x00000000005777b2 in HtmlGenerator::generateDetailedMember (this=0x7fffffffd980, node=0x356f250, relative=0x35532a0, marker=0x7fffffffd4a8) at qttools/src/qdoc/htmlgenerator.cpp:3385 #16 0x0000000000565431 in HtmlGenerator::generateCppReferencePage (this=0x7fffffffd980, aggregate=0x35532a0, marker=0x7fffffffd4a8) at qttools/src/qdoc/htmlgenerator.cpp:1151 #17 0x0000000000522843 in Generator::generateDocumentation (this=0x7fffffffd980, node=0x35532a0) at qttools/src/qdoc/generator.cpp:1086 #18 0x0000000000522bf7 in Generator::generateDocumentation (this=0x7fffffffd980, node=0x3488d90) at qttools/src/qdoc/generator.cpp:1111 #19 0x00000000005264d7 in Generator::generateDocs (this=0x7fffffffd980) at qttools/src/qdoc/generator.cpp:1560 #20 0x000000000055e168 in HtmlGenerator::generateDocs (this=0x7fffffffd980) at qttools/src/qdoc/htmlgenerator.cpp:259 #21 0x000000000058e42c in processQdocconfFile (fileName=...) at qttools/src/qdoc/main.cpp:508 #22 0x000000000058ebc7 in main (argc=10, argv=0x7fffffffe118) at qttools/src/qdoc/main.cpp:598