Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
6.4.0
-
-
3a7eb23c2a (qt/qtdeclarative/dev) 0b0ee235f9 (qt/qtdeclarative/6.4) 0b0ee235f9 (qt/tqtc-qtdeclarative/6.4) 3a7eb23c2a (qt/tqtc-qtdeclarative/dev) 0b0ee235f9 (qt/tqtc-qtdeclarative/tqtc/qtinsight-6.4)
Description
Build & Run the attached example ( Deletable87g28712.zip ) in Qt Creator for Qt WebAssembly, 6.4.0 or for macOS. It produces a crash :
For WebAssembly the call stack looks like this :
Uncaught RuntimeError: memory access out of bounds at QHash<unsigned int, QSGDistanceFieldGlyphCache::GlyphData>::find(unsigned int const&) (Deletable87g28712.wasm:0x21a457) at QSGDistanceFieldGlyphCache::glyphData(unsigned int) (Deletable87g28712.wasm:0x21a12b) at QSGDistanceFieldGlyphNode::updateGeometry() (Deletable87g28712.wasm:0x28581c) at QSGDistanceFieldGlyphNode::preprocess() (Deletable87g28712.wasm:0x28556b) at QSGRenderer::preprocess() (Deletable87g28712.wasm:0x223c32) at QSGRenderer::renderScene() (Deletable87g28712.wasm:0x223173) at QSGDefaultRenderContext::renderNextFrame(QSGRenderer*) (Deletable87g28712.wasm:0x2750db) at QQuickWindowPrivate::renderSceneGraph(QSize const&, QSize const&) (Deletable87g28712.wasm:0x20e51e) at QSGGuiThreadRenderLoop::renderWindow(QQuickWindow*) (Deletable87g28712.wasm:0x1dfa3c) at QSGGuiThreadRenderLoop::exposureChanged(QQuickWindow*) (Deletable87g28712.wasm:0x1e0139)
+
Uncaught RuntimeError: memory access out of bounds at QRawFont::pathForGlyph(unsigned int) const (Deletable87g28712.wasm:0xc5396e) at QSGDistanceFieldGlyphCache::glyphData(unsigned int) (Deletable87g28712.wasm:0x21a277) at QSGDistanceFieldGlyphNode::updateGeometry() (Deletable87g28712.wasm:0x28581c) at QSGDistanceFieldGlyphNode::preprocess() (Deletable87g28712.wasm:0x28556b) at QSGRenderer::preprocess() (Deletable87g28712.wasm:0x223c32) at QSGRenderer::renderScene() (Deletable87g28712.wasm:0x223173) at QSGDefaultRenderContext::renderNextFrame(QSGRenderer*) (Deletable87g28712.wasm:0x2750db) at QQuickWindowPrivate::renderSceneGraph(QSize const&, QSize const&) (Deletable87g28712.wasm:0x20e51e) at QSGGuiThreadRenderLoop::renderWindow(QQuickWindow*) (Deletable87g28712.wasm:0x1dfa3c) at QSGGuiThreadRenderLoop::handleUpdateRequest(QQuickWindow*) (Deletable87g28712.wasm:0x1e04f2)
For macOS the crash log looks like this :
crash.log
I did not try to reproduce the issue under Windows.
The exact same code works fine with Qt 6.2.2 and also with Qt 6.3.2 .
Attachments
For Gerrit Dashboard: QTBUG-107594 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
438919,4 | Keep track of glyphs we're asked to reference | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
439236,2 | Keep track of glyphs we're asked to reference | 6.4 | qt/qtdeclarative | Status: MERGED | +2 | 0 |