diff options
Diffstat (limited to 'win32/SurfaceD2D.cxx')
-rw-r--r-- | win32/SurfaceD2D.cxx | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/win32/SurfaceD2D.cxx b/win32/SurfaceD2D.cxx index 0a3385a5b..492e34349 100644 --- a/win32/SurfaceD2D.cxx +++ b/win32/SurfaceD2D.cxx @@ -1008,10 +1008,11 @@ COM_DECLSPEC_NOTHROW HRESULT STDMETHODCALLTYPE BlobInline::GetBreakConditions( } class ScreenLineLayout : public IScreenLineLayout { - TextLayout textLayout; std::string text; std::wstring buffer; std::vector<BlobInline> blobs; + // textLayout depends on blobs so must be declared after blobs so it is destroyed before blobs. + TextLayout textLayout; static void FillTextLayoutFormats(const IScreenLine *screenLine, IDWriteTextLayout *textLayout, std::vector<BlobInline> &blobs); static std::wstring ReplaceRepresentation(std::string_view text); static size_t GetPositionInLayout(std::string_view text, size_t position); |