Skip to content

MacOS: sometimes I get the exception skia.textlayout.Run.findLimitingClusters(skia.textlayout.SkRange<LongWord>) + 64) #333

@philippjhofmann

Description

@philippjhofmann

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions