diff --git a/lib/ui/text/paragraph.cc b/lib/ui/text/paragraph.cc index 6b7dc3a1460..c7fc683385b 100644 --- a/lib/ui/text/paragraph.cc +++ b/lib/ui/text/paragraph.cc @@ -42,9 +42,11 @@ Paragraph::Paragraph(PassOwnPtr renderView) : m_renderView(renderView) {} Paragraph::~Paragraph() { - PassOwnPtr renderView = m_renderView.release(); - Threads::UI()->PostTask( - [renderView]() { /* renderView's destructor runs. */ }); + if (m_renderView) { + RenderView* renderView = m_renderView.leakPtr(); + Threads::UI()->PostTask( + [renderView]() { renderView->destroy(); }); + } } double Paragraph::width() { diff --git a/lib/ui/text/paragraph_builder.cc b/lib/ui/text/paragraph_builder.cc index fde8d59a5b9..6745698c755 100644 --- a/lib/ui/text/paragraph_builder.cc +++ b/lib/ui/text/paragraph_builder.cc @@ -208,9 +208,11 @@ ParagraphBuilder::ParagraphBuilder(tonic::Int32List& encoded, } ParagraphBuilder::~ParagraphBuilder() { - PassOwnPtr renderView = m_renderView.release(); - Threads::UI()->PostTask( - [renderView]() { /* renderView's destructor runs. */ }); + if (m_renderView) { + RenderView* renderView = m_renderView.leakPtr(); + Threads::UI()->PostTask( + [renderView]() { renderView->destroy(); }); + } } void ParagraphBuilder::pushStyle(tonic::Int32List& encoded, diff --git a/runtime/asset_font_selector.cc b/runtime/asset_font_selector.cc index 82ca7e8a7c7..1c727dbc53c 100644 --- a/runtime/asset_font_selector.cc +++ b/runtime/asset_font_selector.cc @@ -186,7 +186,7 @@ PassRefPtr AssetFontSelector::getFontData( font_description.orientation(), font_description.useSubpixelPositioning()); - font_data = SimpleFontData::create(platform_data); + font_data = SimpleFontData::create(platform_data, CustomFontData::create()); font_platform_data_cache_.set(key, font_data); }