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

tst_examples crashes on font examples on Mac OS X

    XMLWordPrintable

Details

    • Bug
    • Resolution: Duplicate
    • P1: Critical
    • None
    • 5.0.0
    • Quick: SceneGraph
    • None
    • macOS

    Description

      Compile and run qtdeclarative/tests/auto/quick/examples on Mac OS X

      It will crash, though not every time on the font examples.

      PASS   : tst_examples::sgexamples(/Users/gunnar/dev/qt5-stable/qtdeclarative/examples/quick/righttoleft/textalignment/textalignment.qml)
      PASS   : tst_examples::sgexamples(/Users/gunnar/dev/qt5-stable/qtdeclarative/examples/quick/text/fonts/availableFonts.qml)
      PASS   : tst_examples::sgexamples(/Users/gunnar/dev/qt5-stable/qtdeclarative/examples/quick/text/fonts/banner.qml)
      
      Program received signal EXC_BAD_ACCESS, Could not access memory.
      Reason: KERN_INVALID_ADDRESS at address: 0x0000000159461f66
      [Switching to process 53486 thread 0x5007]
      0x00007fff816aa8b9 in TFont::FindColourBitmapForGlyph ()
      (gdb) bt
      #0  0x00007fff816aa8b9 in TFont::FindColourBitmapForGlyph ()
      #1  0x00007fff816aa1fc in TFont::CreatePathForGlyph ()
      #2  0x0000000102751854 in QCoreTextFontEngine::addGlyphsToPath ()
      #3  0x0000000100e618b5 in QRawFont::pathForGlyph ()
      #4  0x0000000100089a44 in QSGDistanceFieldGlyphCache::glyphData ()
      #5  0x0000000100093e0b in QSGDistanceFieldTextMaterialShader::updateState ()
      #6  0x00000001000952a5 in QSGHiQSubPixelDistanceFieldTextMaterialShader::updateState ()
      #7  0x000000010007c81a in QSGDefaultRenderer::renderNodes ()
      #8  0x000000010007bd33 in QSGDefaultRenderer::render ()
      #9  0x0000000100081ff0 in QSGRenderer::renderScene ()
      #10 0x0000000100081f5c in QSGRenderer::renderScene ()
      #11 0x000000010008b945 in QSGContext::renderNextFrame ()
      #12 0x00000001000b9dac in QQuickWindowPrivate::renderSceneGraph ()
      #13 0x000000010019b0db in QQuickRenderThreadSingleContextWindowManager::run ()
      #14 0x000000010080d4ba in QThreadPrivate::start ()
      #15 0x00007fff8b971782 in _pthread_start ()
      #16 0x00007fff8b95e1c1 in thread_start ()
      (gdb) info threads
        14 "Thread (pooled)"                0x00007fff8617a0fa in __psynch_cvwait ()
        13 "httpThread"                     0x00007fff8617a322 in select$DARWIN_EXTSN ()
        12 "bearerThread"                   0x00007fff8617a322 in select$DARWIN_EXTSN ()
        11 "QQuickXmlQueryEngine"           0x00007fff8617a322 in select$DARWIN_EXTSN ()
        10 "QQuickPixmapReader"             0x00007fff8617a322 in select$DARWIN_EXTSN ()
         9                                  0x00007fff8617a6d6 in __workq_kernreturn ()
      *  8 "QQuickRenderThreadSingleContex" 0x00007fff816aa8b9 in TFont::FindColourBitmapForGlyph ()
         7                                  0x00007fff8617a6d6 in __workq_kernreturn ()
         6 "SamplerThread"                  0x00007fff861786c2 in semaphore_wait_trap ()
         5 "QThread"                        0x00007fff8617a322 in select$DARWIN_EXTSN ()
         4                                  0x00007fff8617a6d6 in __workq_kernreturn ()
         3                                  0x00007fff8617a6d6 in __workq_kernreturn ()
         2 "com.apple.libdispatch-manager"  0x00007fff8617ad16 in kevent ()
         1 "com.apple.main-thread"          0x00007fff8b997459 in tiny_malloc_from_free_list ()
      (gdb) thread 1
      [Switching to thread 1 (process 53486), "com.apple.main-thread"]
      0x00007fff8b997459 in tiny_malloc_from_free_list ()
      (gdb) bt
      #0  0x00007fff8b997459 in tiny_malloc_from_free_list ()
      #1  0x00007fff8b997b08 in szone_malloc_should_clear ()
      #2  0x00007fff8b98a183 in malloc_zone_malloc ()
      #3  0x00007fff8d0f6b62 in _CFRuntimeCreateInstance ()
      #4  0x00007fff8d0f6693 in __CFStringCreateImmutableFunnel3 ()
      #5  0x00007fff8d10e60b in CFStringCreateWithSubstring ()
      #6  0x00007fff8d116ad3 in _retainedComponentString ()
      #7  0x00007fff8d16d0b0 in CFURLCopyFragment ()
      #8  0x00007fff8165a1e7 in CopyPostScriptNameFromFontURL ()
      #9  0x00007fff81659cad in TBaseFont::CopyName ()
      #10 0x00007fff81659b99 in TBaseFont::CreateDescriptorAttributes ()
      #11 0x00007fff81659b2d in TDescriptor::GetAttributes ()
      #12 0x00007fff81659ae5 in TDescriptor::CopyAttributes ()
      #13 0x00007fff81659aaa in TDescriptor::TDescriptor ()
      #14 0x00007fff816b3c7f in AddDescriptorForURLToArray ()
      #15 0x00007fff8d123e44 in CFArrayApplyFunction ()
      #16 0x00007fff816b3b98 in TDescriptorSource::GetAllDescriptors ()
      #17 0x00007fff816b3cd6 in TDescriptorSource::CopyAllDescriptors ()
      #18 0x00007fff8164f1d8 in TCollection::CopyMatchingFontDescriptorsUnlocked ()
      #19 0x00007fff8164f0d5 in TCollection::CopyMatchingFontDescriptors ()
      #20 0x0000000102753d23 in QCoreTextFontDatabase::populateFontDatabase ()
      #21 0x0000000100dcb3a5 in initializeDb ()
      #22 0x0000000100dcabb2 in QFontDatabase::findFont ()
      #23 0x0000000100dccb0f in QFontDatabase::load ()
      #24 0x0000000100db38c2 in QFontPrivate::engineForScript ()
      #25 0x0000000100dd710c in QTextEngine::fontEngine ()
      #26 0x0000000100dd571c in QTextEngine::shapeTextWithHarfbuzz ()
      #27 0x0000000100dd536c in QTextEngine::shapeText ()
      #28 0x0000000100dd52d1 in QTextEngine::shape ()
      #29 0x0000000100de97de in QTextLine::layout_helper ()
      #30 0x0000000100de8e0f in QTextLine::setLineWidth ()
      #31 0x00000001001006b0 in QQuickTextPrivate::setLineGeometry ()
      #32 0x00000001000fee0a in QQuickTextPrivate::setupTextLayout ()
      #33 0x00000001000fd284 in QQuickTextPrivate::updateSize ()
      #34 0x00000001000fdc91 in QQuickTextPrivate::updateLayout ()
      #35 0x00000001001031cf in QQuickText::componentComplete ()
      #36 0x0000000100452b52 in QQmlVME::complete ()
      #37 0x0000000100441461 in QQmlComponentPrivate::complete ()
      #38 0x000000010043ec2b in QQmlComponentPrivate::completeCreate ()
      #39 0x00000001000071ed in tst_examples::sgexamples (this=0x7fff5fbff950) at tst_examples.cpp:282
      #40 0x00000001000081b3 in tst_examples::qt_static_metacall (_o=0x7fff5fbff950, _c=QMetaObject::InvokeMetaMethod, _id=3, _a=0x7fff5fbfede0) at tst_examples.moc:90
      #41 0x00000001009924df in QMetaMethod::invoke ()
      #42 0x000000010099215e in QMetaObject::invokeMethod ()
      #43 0x000000010111d2ba in QTest::qInvokeTestMethod ()
      #44 0x000000010111a1e2 in QTest::qExec ()
      #45 0x0000000100008098 in main (argc=1, argv=0x7fff5fbff9e0) at tst_examples.cpp:331
      (gdb) 
      

      The tst_examples test disables running these examples until this task has been fixex. Once the problem is resolved, these tests should be enabled again. Search for the task number in the tst_examples.cpp file to enable.

      Attachments

        Issue Links

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

          Activity

            People

              esabraha Eskil Abrahamsen Blomfeldt
              sletta Gunnar Sletta
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes