| diff --git content/browser/renderer_host/render_widget_host_view_aura.cc content/browser/renderer_host/render_widget_host_view_aura.cc |
| index f7f9dafb9798..a378394c2d41 100644 |
| --- content/browser/renderer_host/render_widget_host_view_aura.cc |
| +++ content/browser/renderer_host/render_widget_host_view_aura.cc |
| @@ -745,10 +745,12 @@ gfx::Rect RenderWidgetHostViewAura::GetViewBounds() { |
| void RenderWidgetHostViewAura::UpdateBackgroundColor() { |
| DCHECK(GetBackgroundColor()); |
| |
| - SkColor color = *GetBackgroundColor(); |
| - bool opaque = SkColorGetA(color) == SK_AlphaOPAQUE; |
| - window_->layer()->SetFillsBoundsOpaquely(opaque); |
| - window_->layer()->SetColor(color); |
| + if (window_) { |
| + SkColor color = *GetBackgroundColor(); |
| + bool opaque = SkColorGetA(color) == SK_AlphaOPAQUE; |
| + window_->layer()->SetFillsBoundsOpaquely(opaque); |
| + window_->layer()->SetColor(color); |
| + } |
| } |
| |
| void RenderWidgetHostViewAura::WindowTitleChanged() { |
| @@ -2029,6 +2031,15 @@ void RenderWidgetHostViewAura::CreateAuraWindow(aura::client::WindowType type) { |
| // Init(), because it needs to have the layer. |
| if (frame_sink_id_.is_valid()) |
| window_->SetEmbedFrameSinkId(frame_sink_id_); |
| + |
| + // Do this after |window_| is created to avoid crashes on Win10. |
| + // See https://crbug.com/761389. |
| + RenderViewHost* rvh = RenderViewHost::From(host_); |
| + if (rvh) { |
| + // TODO(mostynb): actually use prefs. Landing this as a separate CL |
| + // first to rebaseline some unreliable layout tests. |
| + ignore_result(rvh->GetWebkitPreferences()); |
| + } |
| } |
| |
| void RenderWidgetHostViewAura::CreateDelegatedFrameHostClient() { |