-
-
Notifications
You must be signed in to change notification settings - Fork 147
Description
Hi, our program run for hours on customer system. Sometimes I get the following exception with Skia 6.2.0 on our MacBook (M3 Pro):
Info (Metal is deactivated, there is another ticket for that). Is there a way to avoid such an exception on your or on our side:
Access violation at address 00000001032413B8, accessing address 00000000000002F8
At address: $00000001032413B8 (skia.textlayout.Run.findLimitingClusters(skia.textlayout.SkRange) + 64)
Call stack:
icTrainer $0000000103FA9398 Myerrorreporting.TgoExceptionReporter.GlobalGetExceptionStackInfo(TExceptionRecord*) + 192
icTrainer $00000001032A7778 Sysutils.Exception.RaisingException(TExceptionRecord*) + 88
icTrainer $00000001032E2DB0 Sysutils.RaiseExceptObject(TExceptionRecord*) + 84
icTrainer $000000010328188C _RaiseAtExcept(TObject*, Pointer) + 92
icTrainer $00000001032A614C Internal.Excutils.SignalConverter(UInt64, UInt64, UInt64) + 48
icTrainer $0000000103243C48 skia.textlayout.TextLine.measureTextInsideOneRun(skia.textlayout.SkRange, skia.textlayout.Run const*, Single, Single, Boolean, Boolean) + 432
icTrainer $00000001032442B8 skia.textlayout.TextLine.iterateThroughSingleRunByStyles(skia.textlayout.Run const*, Single, skia.textlayout.SkRange, skia.textlayout.StyleType, std.__1.function<void(skia::textlayout::SkRange, skia::textlayout::TextStyle const&, skia::textlayout::TextLine::ClipContext const&)> const&) const + 732
icTrainer $0000000103246474 std.__1.__function.__func<skia.textlayout.TextLine.getRectsForRange(skia::textlayout::SkRange, skia::textlayout::RectHeightStyle, skia::textlayout::RectWidthStyle, std::__1::vector<skia::textlayout::TextBox, std::__1::allocatorskia::textlayout::TextBox>&)::$_13, std::__1::allocator<skia::textlayout::TextLine::getRectsForRange(skia::textlayout::SkRange, skia::textlayout::RectHeightStyle, skia::textlayout::RectWidthStyle, std::__1::vector<skia::textlayout::TextBox, std::__1::allocatorskia::textlayout::TextBox>&)::$_13>, bool (skia::textlayout::Run const*, float, skia::textlayout::SkRange, float*)>::operator()(skia::textlayout::Run const*&&, float&&, skia::textlayout::SkRange&&, float*&&) + 188
icTrainer $0000000103242690 skia.textlayout.TextLine.iterateThroughVisualRuns(Boolean, std.__1.function<Boolean(skia::textlayout::Run const*, float, skia::textlayout::SkRange, float*)> const&) const + 692
icTrainer $0000000103244688 skia.textlayout.TextLine.getRectsForRange(skia.textlayout.SkRange, skia.textlayout.RectHeightStyle, skia.textlayout.RectWidthStyle, std.__1.vector<skia.textlayout.TextBox, std.__1.allocator<skia.textlayout.TextBox>>&) + 160
icTrainer $000000010323E708 skia.textlayout.ParagraphImpl.getRectsForRange(Cardinal, Cardinal, skia.textlayout.RectHeightStyle, skia.textlayout.RectWidthStyle) + 340
icTrainer $0000000102B4EE3C sk4d_paragraph_get_rects_for_range + 36
icTrainer $0000000103FF3840 Skia.TSkParagraph.GetRectsForRange(Cardinal, Cardinal, Skia.TSkRectHeightStyle, Skia.TSkRectWidthStyle) + 108
icTrainer $0000000104018DA0 Fmx.Skia.Canvas.TSkTextLayout.DoRenderLayout().GetTextRect(Pointer) + 432
icTrainer $000000010401123C Fmx.Skia.Canvas.TSkTextLayout.DoRenderLayout() + 56
icTrainer $00000001035C0AC8 Fmx.Textlayout.TTextLayout.NeedUpdate() + 64
icTrainer $00000001035BAF90 Fmx.Textlayout.TTextLayout.SetText(String) + 80
icTrainer $00000001036F62EC Fmx.Objects.TText.DoSetText(String) + 700
icTrainer $00000001036EB13C Fmx.Objects.TText.SetText(String) + 92
icTrainer $0000000103765884 Fmx.Stdctrls.TPresentedTextControl.UpdateTextObject(Fmx.Controls.TControl*, String) + 176