Index: content/renderer/render_widget.cc |
diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc |
index b09cc01adae39af445dc9620bf65e76b9fcce054..a3f2dc5fe4850f9eb0b8dce43c9aa3f4bf79886e 100644 |
--- a/content/renderer/render_widget.cc |
+++ b/content/renderer/render_widget.cc |
@@ -674,10 +674,11 @@ void RenderWidget::PaintRect(const gfx::Rect& rect, |
// If there is a custom background, tile it. |
if (!background_.empty()) { |
SkPaint paint; |
- SkShader* shader = SkShader::CreateBitmapShader(background_, |
- SkShader::kRepeat_TileMode, |
- SkShader::kRepeat_TileMode); |
- paint.setShader(shader)->unref(); |
+ skia::RefPtr<SkShader> shader = skia::AdoptRef( |
+ SkShader::CreateBitmapShader(background_, |
+ SkShader::kRepeat_TileMode, |
+ SkShader::kRepeat_TileMode)); |
+ paint.setShader(shader.get()); |
// Use kSrc_Mode to handle background_ transparency properly. |
paint.setXfermodeMode(SkXfermode::kSrc_Mode); |