Remove implicit conversions from scoped_refptr to T* in cc/

This patch was generated by running the rewrite_scoped_refptr clang tool
on a Linux build.

BUG=110610

Review URL: https://codereview.chromium.org/502203003

Cr-Commit-Position: refs/heads/master@{#291833}
diff --git a/cc/base/delayed_unique_notifier_unittest.cc b/cc/base/delayed_unique_notifier_unittest.cc
index ffffe35..6c7ae6e 100644
--- a/cc/base/delayed_unique_notifier_unittest.cc
+++ b/cc/base/delayed_unique_notifier_unittest.cc
@@ -58,7 +58,7 @@
 TEST_F(DelayedUniqueNotifierTest, ZeroDelay) {
   base::TimeDelta delay = base::TimeDelta::FromInternalValue(0);
   TestNotifier notifier(
-      task_runner_,
+      task_runner_.get(),
       base::Bind(&DelayedUniqueNotifierTest::Notify, base::Unretained(this)),
       delay);
 
@@ -93,7 +93,7 @@
 TEST_F(DelayedUniqueNotifierTest, SmallDelay) {
   base::TimeDelta delay = base::TimeDelta::FromInternalValue(20);
   TestNotifier notifier(
-      task_runner_,
+      task_runner_.get(),
       base::Bind(&DelayedUniqueNotifierTest::Notify, base::Unretained(this)),
       delay);
 
@@ -153,7 +153,7 @@
 TEST_F(DelayedUniqueNotifierTest, RescheduleDelay) {
   base::TimeDelta delay = base::TimeDelta::FromInternalValue(20);
   TestNotifier notifier(
-      task_runner_,
+      task_runner_.get(),
       base::Bind(&DelayedUniqueNotifierTest::Notify, base::Unretained(this)),
       delay);
 
@@ -195,7 +195,7 @@
 TEST_F(DelayedUniqueNotifierTest, CancelAndHasPendingNotification) {
   base::TimeDelta delay = base::TimeDelta::FromInternalValue(20);
   TestNotifier notifier(
-      task_runner_,
+      task_runner_.get(),
       base::Bind(&DelayedUniqueNotifierTest::Notify, base::Unretained(this)),
       delay);
 
diff --git a/cc/debug/frame_viewer_instrumentation.h b/cc/debug/frame_viewer_instrumentation.h
index 7d97b52e..9a6d459 100644
--- a/cc/debug/frame_viewer_instrumentation.h
+++ b/cc/debug/frame_viewer_instrumentation.h
@@ -29,7 +29,7 @@
     int source_frame_number,
     int layer_id) {
   scoped_refptr<base::debug::TracedValue> res(new base::debug::TracedValue());
-  TracedValue::SetIDRef(tile_id, res, internal::kTileId);
+  TracedValue::SetIDRef(tile_id, res.get(), internal::kTileId);
   res->SetString(internal::kTileResolution,
                  TileResolutionToString(tile_resolution));
   res->SetInteger(internal::kSourceFrameNumber, source_frame_number);
diff --git a/cc/debug/rasterize_and_record_benchmark_impl.cc b/cc/debug/rasterize_and_record_benchmark_impl.cc
index 036fdb8..aee0271 100644
--- a/cc/debug/rasterize_and_record_benchmark_impl.cc
+++ b/cc/debug/rasterize_and_record_benchmark_impl.cc
@@ -229,7 +229,7 @@
     TaskGraph graph;
 
     graph.nodes.push_back(
-        TaskGraph::Node(benchmark_raster_task,
+        TaskGraph::Node(benchmark_raster_task.get(),
                         RasterWorkerPool::kBenchmarkRasterTaskPriority,
                         0u));
 
diff --git a/cc/layers/delegated_frame_provider_unittest.cc b/cc/layers/delegated_frame_provider_unittest.cc
index 5e946a5..8462595c 100644
--- a/cc/layers/delegated_frame_provider_unittest.cc
+++ b/cc/layers/delegated_frame_provider_unittest.cc
@@ -159,16 +159,16 @@
   gfx::RectF damage;
 
   // Both observers get a full frame of damage on the first request.
-  frame_provider_->GetFrameDataAndRefResources(observer1, &damage);
+  frame_provider_->GetFrameDataAndRefResources(observer1.get(), &damage);
   EXPECT_EQ(gfx::RectF(5.f, 5.f).ToString(), damage.ToString());
-  frame_provider_->GetFrameDataAndRefResources(observer2, &damage);
+  frame_provider_->GetFrameDataAndRefResources(observer2.get(), &damage);
   EXPECT_EQ(gfx::RectF(5.f, 5.f).ToString(), damage.ToString());
 
   // And both get no damage on the 2nd request. This adds a second ref to the
   // resources.
-  frame_provider_->GetFrameDataAndRefResources(observer1, &damage);
+  frame_provider_->GetFrameDataAndRefResources(observer1.get(), &damage);
   EXPECT_EQ(gfx::RectF().ToString(), damage.ToString());
-  frame_provider_->GetFrameDataAndRefResources(observer2, &damage);
+  frame_provider_->GetFrameDataAndRefResources(observer2.get(), &damage);
   EXPECT_EQ(gfx::RectF().ToString(), damage.ToString());
 
   EXPECT_FALSE(ReturnAndResetResourcesAvailable());
@@ -217,8 +217,8 @@
   gfx::RectF damage;
 
   // Take a ref on each observer.
-  frame_provider_->GetFrameDataAndRefResources(observer1, &damage);
-  frame_provider_->GetFrameDataAndRefResources(observer2, &damage);
+  frame_provider_->GetFrameDataAndRefResources(observer1.get(), &damage);
+  frame_provider_->GetFrameDataAndRefResources(observer2.get(), &damage);
 
   EXPECT_FALSE(ReturnAndResetResourcesAvailable());
 
@@ -259,8 +259,8 @@
   gfx::RectF damage;
 
   // Take a ref on each observer.
-  frame_provider_->GetFrameDataAndRefResources(observer1, &damage);
-  frame_provider_->GetFrameDataAndRefResources(observer2, &damage);
+  frame_provider_->GetFrameDataAndRefResources(observer1.get(), &damage);
+  frame_provider_->GetFrameDataAndRefResources(observer2.get(), &damage);
 
   EXPECT_FALSE(ReturnAndResetResourcesAvailable());
 
@@ -303,15 +303,15 @@
   gfx::RectF damage;
 
   // Both observers get a full frame of damage on the first request.
-  frame_provider_->GetFrameDataAndRefResources(observer1, &damage);
+  frame_provider_->GetFrameDataAndRefResources(observer1.get(), &damage);
   EXPECT_EQ(gfx::RectF(5.f, 5.f).ToString(), damage.ToString());
-  frame_provider_->GetFrameDataAndRefResources(observer2, &damage);
+  frame_provider_->GetFrameDataAndRefResources(observer2.get(), &damage);
   EXPECT_EQ(gfx::RectF(5.f, 5.f).ToString(), damage.ToString());
 
   // And both get no damage on the 2nd request.
-  frame_provider_->GetFrameDataAndRefResources(observer1, &damage);
+  frame_provider_->GetFrameDataAndRefResources(observer1.get(), &damage);
   EXPECT_EQ(gfx::RectF().ToString(), damage.ToString());
-  frame_provider_->GetFrameDataAndRefResources(observer2, &damage);
+  frame_provider_->GetFrameDataAndRefResources(observer2.get(), &damage);
   EXPECT_EQ(gfx::RectF().ToString(), damage.ToString());
 
   frame = CreateFrameData(gfx::Rect(5, 5), gfx::Rect(2, 2));
@@ -320,15 +320,15 @@
   frame_provider_->SetFrameData(frame.Pass());
 
   // Both observers get the damage for the new frame.
-  frame_provider_->GetFrameDataAndRefResources(observer1, &damage);
+  frame_provider_->GetFrameDataAndRefResources(observer1.get(), &damage);
   EXPECT_EQ(gfx::RectF(2.f, 2.f).ToString(), damage.ToString());
-  frame_provider_->GetFrameDataAndRefResources(observer2, &damage);
+  frame_provider_->GetFrameDataAndRefResources(observer2.get(), &damage);
   EXPECT_EQ(gfx::RectF(2.f, 2.f).ToString(), damage.ToString());
 
   // And both get no damage on the 2nd request.
-  frame_provider_->GetFrameDataAndRefResources(observer1, &damage);
+  frame_provider_->GetFrameDataAndRefResources(observer1.get(), &damage);
   EXPECT_EQ(gfx::RectF().ToString(), damage.ToString());
-  frame_provider_->GetFrameDataAndRefResources(observer2, &damage);
+  frame_provider_->GetFrameDataAndRefResources(observer2.get(), &damage);
   EXPECT_EQ(gfx::RectF().ToString(), damage.ToString());
 }
 
diff --git a/cc/layers/delegated_frame_resource_collection_unittest.cc b/cc/layers/delegated_frame_resource_collection_unittest.cc
index 29f0eb5..9f131df 100644
--- a/cc/layers/delegated_frame_resource_collection_unittest.cc
+++ b/cc/layers/delegated_frame_resource_collection_unittest.cc
@@ -25,13 +25,13 @@
   virtual void TearDown() OVERRIDE { DestroyResourceCollection(); }
 
   void CreateResourceCollection() {
-    DCHECK(!resource_collection_);
+    DCHECK(!resource_collection_.get());
     resource_collection_ = new DelegatedFrameResourceCollection;
     resource_collection_->SetClient(this);
   }
 
   void DestroyResourceCollection() {
-    if (resource_collection_) {
+    if (resource_collection_.get()) {
       resource_collection_->SetClient(NULL);
       resource_collection_ = NULL;
     }
diff --git a/cc/layers/delegated_renderer_layer_unittest.cc b/cc/layers/delegated_renderer_layer_unittest.cc
index 3805f18..ce7dab0 100644
--- a/cc/layers/delegated_renderer_layer_unittest.cc
+++ b/cc/layers/delegated_renderer_layer_unittest.cc
@@ -44,7 +44,8 @@
     provider_ = new DelegatedFrameProvider(resources_, frame_data.Pass());
     root_layer_ = SolidColorLayer::Create();
     layer_before_ = SolidColorLayer::Create();
-    delegated_renderer_layer_ = FakeDelegatedRendererLayer::Create(provider_);
+    delegated_renderer_layer_ =
+        FakeDelegatedRendererLayer::Create(provider_.get());
   }
 
  protected:
diff --git a/cc/layers/layer_lists.cc b/cc/layers/layer_lists.cc
index fda1a1c..7a4df72 100644
--- a/cc/layers/layer_lists.cc
+++ b/cc/layers/layer_lists.cc
@@ -16,7 +16,7 @@
 }
 
 Layer* RenderSurfaceLayerList::at(size_t i) const {
-  return list_.at(i);
+  return list_.at(i).get();
 }
 
 void RenderSurfaceLayerList::pop_back() {
@@ -28,7 +28,7 @@
 }
 
 Layer* RenderSurfaceLayerList::back() {
-  return list_.back();
+  return list_.back().get();
 }
 
 size_t RenderSurfaceLayerList::size() const {
diff --git a/cc/layers/layer_unittest.cc b/cc/layers/layer_unittest.cc
index 61d05270..7a1cb796 100644
--- a/cc/layers/layer_unittest.cc
+++ b/cc/layers/layer_unittest.cc
@@ -167,7 +167,7 @@
   EXPECT_SET_NEEDS_FULL_TREE_SYNC(1, parent->AddChild(child));
 
   ASSERT_EQ(1U, parent->children().size());
-  EXPECT_EQ(child.get(), parent->children()[0]);
+  EXPECT_EQ(child.get(), parent->children()[0].get());
   EXPECT_EQ(parent.get(), child->parent());
   EXPECT_EQ(parent.get(), child->RootLayer());
 
@@ -392,23 +392,23 @@
 
 TEST_F(LayerTest, HasAncestor) {
   scoped_refptr<Layer> parent = Layer::Create();
-  EXPECT_FALSE(parent->HasAncestor(parent));
+  EXPECT_FALSE(parent->HasAncestor(parent.get()));
 
   scoped_refptr<Layer> child = Layer::Create();
   parent->AddChild(child);
 
-  EXPECT_FALSE(child->HasAncestor(child));
-  EXPECT_TRUE(child->HasAncestor(parent));
-  EXPECT_FALSE(parent->HasAncestor(child));
+  EXPECT_FALSE(child->HasAncestor(child.get()));
+  EXPECT_TRUE(child->HasAncestor(parent.get()));
+  EXPECT_FALSE(parent->HasAncestor(child.get()));
 
   scoped_refptr<Layer> child_child = Layer::Create();
   child->AddChild(child_child);
 
-  EXPECT_FALSE(child_child->HasAncestor(child_child));
-  EXPECT_TRUE(child_child->HasAncestor(parent));
-  EXPECT_TRUE(child_child->HasAncestor(child));
-  EXPECT_FALSE(parent->HasAncestor(child));
-  EXPECT_FALSE(parent->HasAncestor(child_child));
+  EXPECT_FALSE(child_child->HasAncestor(child_child.get()));
+  EXPECT_TRUE(child_child->HasAncestor(parent.get()));
+  EXPECT_TRUE(child_child->HasAncestor(child.get()));
+  EXPECT_FALSE(parent->HasAncestor(child.get()));
+  EXPECT_FALSE(parent->HasAncestor(child_child.get()));
 }
 
 TEST_F(LayerTest, GetRootLayerAfterTreeManipulations) {
@@ -782,24 +782,24 @@
   child->SetReplicaLayer(replica.get());
   replica->SetMaskLayer(replica_mask.get());
 
-  EXPECT_EQ(parent, child->parent());
-  EXPECT_EQ(child, mask->parent());
-  EXPECT_EQ(child, replica->parent());
-  EXPECT_EQ(replica, replica_mask->parent());
+  EXPECT_EQ(parent.get(), child->parent());
+  EXPECT_EQ(child.get(), mask->parent());
+  EXPECT_EQ(child.get(), replica->parent());
+  EXPECT_EQ(replica.get(), replica_mask->parent());
 
   replica->SetMaskLayer(replica_mask_replacement.get());
   EXPECT_EQ(NULL, replica_mask->parent());
-  EXPECT_EQ(replica, replica_mask_replacement->parent());
+  EXPECT_EQ(replica.get(), replica_mask_replacement->parent());
 
   child->SetMaskLayer(mask_replacement.get());
   EXPECT_EQ(NULL, mask->parent());
-  EXPECT_EQ(child, mask_replacement->parent());
+  EXPECT_EQ(child.get(), mask_replacement->parent());
 
   child->SetReplicaLayer(replica_replacement.get());
   EXPECT_EQ(NULL, replica->parent());
-  EXPECT_EQ(child, replica_replacement->parent());
+  EXPECT_EQ(child.get(), replica_replacement->parent());
 
-  EXPECT_EQ(replica, replica->mask_layer()->parent());
+  EXPECT_EQ(replica.get(), replica->mask_layer()->parent());
 }
 
 TEST_F(LayerTest, CheckTranformIsInvertible) {
@@ -856,7 +856,7 @@
   gfx::Transform identity_transform;
 
   layer->SetTransform(identity_transform);
-  static_cast<LayerAnimationValueObserver*>(layer)
+  static_cast<LayerAnimationValueObserver*>(layer.get())
       ->OnTransformAnimated(singular_transform);
   layer->PushPropertiesTo(impl_layer.get());
   EXPECT_FALSE(layer->transform_is_invertible());
diff --git a/cc/layers/picture_layer_impl_unittest.cc b/cc/layers/picture_layer_impl_unittest.cc
index 8ccd54f..ca4306c 100644
--- a/cc/layers/picture_layer_impl_unittest.cc
+++ b/cc/layers/picture_layer_impl_unittest.cc
@@ -566,9 +566,9 @@
       EXPECT_TRUE(*iter);
       EXPECT_FALSE(iter.geometry_rect().IsEmpty());
       if (iter.geometry_rect().Intersects(content_invalidation))
-        EXPECT_EQ(pending_pile, iter->picture_pile());
+        EXPECT_EQ(pending_pile.get(), iter->picture_pile());
       else
-        EXPECT_EQ(active_pile, iter->picture_pile());
+        EXPECT_EQ(active_pile.get(), iter->picture_pile());
     }
   }
 }
@@ -635,9 +635,9 @@
           iter.geometry_rect().bottom() >= active_content_bounds.height() ||
           active_tiles[0]->content_rect().size() !=
               pending_tiles[0]->content_rect().size()) {
-        EXPECT_EQ(pending_pile, iter->picture_pile());
+        EXPECT_EQ(pending_pile.get(), iter->picture_pile());
       } else {
-        EXPECT_EQ(active_pile, iter->picture_pile());
+        EXPECT_EQ(active_pile.get(), iter->picture_pile());
       }
     }
   }
@@ -690,9 +690,9 @@
                                               iter.full_tile_geometry_rect());
 
       if (in_pending && !in_active)
-        EXPECT_EQ(pending_pile, iter->picture_pile());
+        EXPECT_EQ(pending_pile.get(), iter->picture_pile());
       else if (in_active)
-        EXPECT_EQ(active_pile, iter->picture_pile());
+        EXPECT_EQ(active_pile.get(), iter->picture_pile());
       else
         EXPECT_FALSE(*iter);
     }
diff --git a/cc/layers/solid_color_layer_impl_unittest.cc b/cc/layers/solid_color_layer_impl_unittest.cc
index e82fa5d..1720ce9a 100644
--- a/cc/layers/solid_color_layer_impl_unittest.cc
+++ b/cc/layers/solid_color_layer_impl_unittest.cc
@@ -120,7 +120,7 @@
 
   RenderSurfaceLayerList render_surface_layer_list;
   LayerTreeHostCommon::CalcDrawPropsMainInputsForTesting inputs(
-      root, gfx::Size(500, 500), &render_surface_layer_list);
+      root.get(), gfx::Size(500, 500), &render_surface_layer_list);
   LayerTreeHostCommon::CalculateDrawProperties(&inputs);
 
   EXPECT_FALSE(layer->contents_opaque());
diff --git a/cc/output/delegating_renderer.cc b/cc/output/delegating_renderer.cc
index 143596bf..8a9f461 100644
--- a/cc/output/delegating_renderer.cc
+++ b/cc/output/delegating_renderer.cc
@@ -113,7 +113,8 @@
 }
 
 void DelegatingRenderer::DidChangeVisibility() {
-  ContextProvider* context_provider = output_surface_->context_provider();
+  scoped_refptr<ContextProvider> context_provider =
+      output_surface_->context_provider();
   if (!visible()) {
     TRACE_EVENT0("cc", "DelegatingRenderer::SetVisible dropping resources");
     resource_provider_->ReleaseCachedData();
diff --git a/cc/output/output_surface.cc b/cc/output/output_surface.cc
index a19a83e..39b2f4c 100644
--- a/cc/output/output_surface.cc
+++ b/cc/output/output_surface.cc
@@ -117,7 +117,7 @@
   client_ = client;
   bool success = true;
 
-  if (context_provider_) {
+  if (context_provider_.get()) {
     success = context_provider_->BindToCurrentThread();
     if (success)
       SetUpContext3d();
@@ -131,8 +131,8 @@
 
 bool OutputSurface::InitializeAndSetContext3d(
     scoped_refptr<ContextProvider> context_provider) {
-  DCHECK(!context_provider_);
-  DCHECK(context_provider);
+  DCHECK(!context_provider_.get());
+  DCHECK(context_provider.get());
   DCHECK(client_);
 
   bool success = false;
@@ -151,13 +151,13 @@
 
 void OutputSurface::ReleaseGL() {
   DCHECK(client_);
-  DCHECK(context_provider_);
+  DCHECK(context_provider_.get());
   client_->ReleaseGL();
-  DCHECK(!context_provider_);
+  DCHECK(!context_provider_.get());
 }
 
 void OutputSurface::SetUpContext3d() {
-  DCHECK(context_provider_);
+  DCHECK(context_provider_.get());
   DCHECK(client_);
 
   context_provider_->SetLostContextCallback(
@@ -173,7 +173,7 @@
 
 void OutputSurface::ReleaseContextProvider() {
   DCHECK(client_);
-  DCHECK(context_provider_);
+  DCHECK(context_provider_.get());
   ResetContext3d();
 }
 
@@ -195,7 +195,7 @@
 }
 
 void OutputSurface::DiscardBackbuffer() {
-  if (context_provider_)
+  if (context_provider_.get())
     context_provider_->ContextGL()->DiscardBackbufferCHROMIUM();
   if (software_device_)
     software_device_->DiscardBackbuffer();
@@ -207,7 +207,7 @@
 
   surface_size_ = size;
   device_scale_factor_ = scale_factor;
-  if (context_provider_) {
+  if (context_provider_.get()) {
     context_provider_->ContextGL()->ResizeCHROMIUM(
         size.width(), size.height(), scale_factor);
   }
@@ -220,7 +220,7 @@
 }
 
 void OutputSurface::BindFramebuffer() {
-  DCHECK(context_provider_);
+  DCHECK(context_provider_.get());
   context_provider_->ContextGL()->BindFramebuffer(GL_FRAMEBUFFER, 0);
 }
 
@@ -231,7 +231,7 @@
     return;
   }
 
-  DCHECK(context_provider_);
+  DCHECK(context_provider_.get());
   DCHECK(frame->gl_frame_data);
 
   if (frame->gl_frame_data->sub_buffer_rect ==
diff --git a/cc/output/renderer_pixeltest.cc b/cc/output/renderer_pixeltest.cc
index a22540db..42ab695 100644
--- a/cc/output/renderer_pixeltest.cc
+++ b/cc/output/renderer_pixeltest.cc
@@ -1769,7 +1769,7 @@
                     texture_format,
                     viewport,
                     1.f,
-                    PicturePileImpl::CreateFromOther(blue_pile));
+                    PicturePileImpl::CreateFromOther(blue_pile.get()));
 
   // One viewport-filling green quad.
   scoped_refptr<FakePicturePileImpl> green_pile =
@@ -1794,7 +1794,7 @@
                      texture_format,
                      viewport,
                      1.f,
-                     PicturePileImpl::CreateFromOther(green_pile));
+                     PicturePileImpl::CreateFromOther(green_pile.get()));
 
   RenderPassList pass_list;
   pass_list.push_back(pass.Pass());
@@ -1840,7 +1840,7 @@
                      texture_format,
                      viewport,
                      1.f,
-                     PicturePileImpl::CreateFromOther(green_pile));
+                     PicturePileImpl::CreateFromOther(green_pile.get()));
 
   // One viewport-filling white quad.
   scoped_refptr<FakePicturePileImpl> white_pile =
@@ -1865,7 +1865,7 @@
                      texture_format,
                      viewport,
                      1.f,
-                     PicturePileImpl::CreateFromOther(white_pile));
+                     PicturePileImpl::CreateFromOther(white_pile.get()));
 
   RenderPassList pass_list;
   pass_list.push_back(pass.Pass());
@@ -1939,7 +1939,7 @@
                texture_format,
                viewport,
                1.f,
-               PicturePileImpl::CreateFromOther(pile));
+               PicturePileImpl::CreateFromOther(pile.get()));
 
   RenderPassList pass_list;
   pass_list.push_back(pass.Pass());
@@ -1996,7 +1996,7 @@
                       texture_format,
                       green_rect1,
                       1.f,
-                      PicturePileImpl::CreateFromOther(green_pile));
+                      PicturePileImpl::CreateFromOther(green_pile.get()));
 
   PictureDrawQuad* green_quad2 =
       pass->CreateAndAppendDrawQuad<PictureDrawQuad>();
@@ -2009,7 +2009,7 @@
                       texture_format,
                       green_rect2,
                       1.f,
-                      PicturePileImpl::CreateFromOther(green_pile));
+                      PicturePileImpl::CreateFromOther(green_pile.get()));
 
   // Add a green clipped checkerboard in the bottom right to help test
   // interleaving picture quad content and solid color content.
@@ -2084,7 +2084,7 @@
                     texture_format,
                     content_union_rect,
                     contents_scale,
-                    PicturePileImpl::CreateFromOther(pile));
+                    PicturePileImpl::CreateFromOther(pile.get()));
 
   // Fill left half of viewport with green.
   gfx::Transform half_green_content_to_target_transform;
@@ -2140,7 +2140,7 @@
                     texture_format,
                     viewport,
                     1.f,
-                    PicturePileImpl::CreateFromOther(blue_pile));
+                    PicturePileImpl::CreateFromOther(blue_pile.get()));
 
   RenderPassList pass_list;
   pass_list.push_back(pass.Pass());
diff --git a/cc/output/renderer_unittest.cc b/cc/output/renderer_unittest.cc
index f103baa..b225dd32 100644
--- a/cc/output/renderer_unittest.cc
+++ b/cc/output/renderer_unittest.cc
@@ -83,7 +83,8 @@
 TYPED_TEST_CASE(RendererTest, RendererTypes);
 
 TYPED_TEST(RendererTest, ContextPurgedWhenRendererBecomesInvisible) {
-  EXPECT_CALL(*(this->context_provider_), DeleteCachedResources()).Times(1);
+  EXPECT_CALL(*(this->context_provider_.get()), DeleteCachedResources())
+      .Times(1);
 
   EXPECT_TRUE(this->renderer_->visible());
   this->renderer_->SetVisible(false);
diff --git a/cc/resources/picture_layer_tiling.cc b/cc/resources/picture_layer_tiling.cc
index 3d132e1..e7a5158 100644
--- a/cc/resources/picture_layer_tiling.cc
+++ b/cc/resources/picture_layer_tiling.cc
@@ -854,7 +854,7 @@
   for (TileMap::iterator it = tiles_.begin(); it != tiles_.end(); ++it) {
     // TODO(vmpstr): This should update the priority if UpdateTilePriorities
     // changes not to do this.
-    Tile* tile = it->second;
+    Tile* tile = it->second.get();
     const TilePriority& priority =
         tile->priority_for_tree_priority(tree_priority);
     switch (priority.priority_bin) {
diff --git a/cc/resources/picture_pile_base.cc b/cc/resources/picture_pile_base.cc
index 4f84bd9..b1132ad 100644
--- a/cc/resources/picture_pile_base.cc
+++ b/cc/resources/picture_pile_base.cc
@@ -218,7 +218,7 @@
   AdvanceInvalidationHistory(frame_number);
   invalidation_history_.set(0);
 
-  bool did_invalidate = !!picture_;
+  bool did_invalidate = !!picture_.get();
   picture_ = NULL;
   return did_invalidate;
 }
@@ -231,7 +231,7 @@
   // need a recording if we're within frequent invalidation distance threshold
   // or the invalidation is not frequent enough (below invalidation frequency
   // threshold).
-  return !picture_ &&
+  return !picture_.get() &&
          ((distance_to_visible <= kFrequentInvalidationDistanceThreshold) ||
           (GetInvalidationFrequency() < kInvalidationFrequencyThreshold));
 }
diff --git a/cc/resources/picture_unittest.cc b/cc/resources/picture_unittest.cc
index 2c7dd4c..e6d692bf 100644
--- a/cc/resources/picture_unittest.cc
+++ b/cc/resources/picture_unittest.cc
@@ -463,7 +463,7 @@
   EXPECT_TRUE(content_layer_client.last_canvas() != NULL);
   EXPECT_EQ(ContentLayerClient::GRAPHICS_CONTEXT_ENABLED,
             content_layer_client.last_context_status());
-  EXPECT_TRUE(picture);
+  EXPECT_TRUE(picture.get());
 
   picture = Picture::Create(layer_rect,
                             &content_layer_client,
@@ -473,7 +473,7 @@
   EXPECT_TRUE(content_layer_client.last_canvas() != NULL);
   EXPECT_EQ(ContentLayerClient::GRAPHICS_CONTEXT_ENABLED,
             content_layer_client.last_context_status());
-  EXPECT_TRUE(picture);
+  EXPECT_TRUE(picture.get());
 
   picture = Picture::Create(layer_rect,
                             &content_layer_client,
@@ -483,7 +483,7 @@
   EXPECT_TRUE(content_layer_client.last_canvas() != NULL);
   EXPECT_EQ(ContentLayerClient::GRAPHICS_CONTEXT_DISABLED,
             content_layer_client.last_context_status());
-  EXPECT_TRUE(picture);
+  EXPECT_TRUE(picture.get());
 
   picture = Picture::Create(layer_rect,
                             &content_layer_client,
@@ -491,7 +491,7 @@
                             false,
                             Picture::RECORD_WITH_SKRECORD);
   EXPECT_TRUE(content_layer_client.last_canvas() != NULL);
-  EXPECT_TRUE(picture);
+  EXPECT_TRUE(picture.get());
 
   EXPECT_EQ(4, Picture::RECORDING_MODE_COUNT);
 }
diff --git a/cc/resources/prioritized_tile_set_unittest.cc b/cc/resources/prioritized_tile_set_unittest.cc
index db006456..f744d60 100644
--- a/cc/resources/prioritized_tile_set_unittest.cc
+++ b/cc/resources/prioritized_tile_set_unittest.cc
@@ -81,7 +81,7 @@
     for (std::vector<scoped_refptr<Tile> >::iterator it = tiles->begin();
          it != tiles->end();
          it++) {
-      Tile* tile = *it;
+      Tile* tile = it->get();
       tile->SetPriority(ACTIVE_TREE, TilePriority());
       tile->SetPriority(PENDING_TREE, TilePriority());
     }
@@ -112,7 +112,7 @@
 TEST_F(PrioritizedTileSetTest, NonEmptyIterator) {
   PrioritizedTileSet set;
   scoped_refptr<Tile> tile = CreateTile();
-  set.InsertTile(tile, NOW_BIN);
+  set.InsertTile(tile.get(), NOW_BIN);
 
   PrioritizedTileSet::Iterator it(&set, true);
   EXPECT_TRUE(it);
@@ -138,7 +138,7 @@
       tile->SetPriority(ACTIVE_TREE, priorities[priority]);
       tile->SetPriority(PENDING_TREE, priorities[priority]);
       tiles.push_back(tile);
-      set.InsertTile(tile, NOW_AND_READY_TO_DRAW_BIN);
+      set.InsertTile(tile.get(), NOW_AND_READY_TO_DRAW_BIN);
     }
   }
 
@@ -172,7 +172,7 @@
       tile->SetPriority(ACTIVE_TREE, priorities[priority]);
       tile->SetPriority(PENDING_TREE, priorities[priority]);
       tiles.push_back(tile);
-      set.InsertTile(tile, NOW_BIN);
+      set.InsertTile(tile.get(), NOW_BIN);
     }
   }
 
@@ -208,7 +208,7 @@
       tile->SetPriority(ACTIVE_TREE, priorities[priority]);
       tile->SetPriority(PENDING_TREE, priorities[priority]);
       tiles.push_back(tile);
-      set.InsertTile(tile, SOON_BIN);
+      set.InsertTile(tile.get(), SOON_BIN);
     }
   }
 
@@ -245,7 +245,7 @@
       tile->SetPriority(ACTIVE_TREE, priorities[priority]);
       tile->SetPriority(PENDING_TREE, priorities[priority]);
       tiles.push_back(tile);
-      set.InsertTile(tile, SOON_BIN);
+      set.InsertTile(tile.get(), SOON_BIN);
     }
   }
 
@@ -278,7 +278,7 @@
       tile->SetPriority(ACTIVE_TREE, priorities[priority]);
       tile->SetPriority(PENDING_TREE, priorities[priority]);
       tiles.push_back(tile);
-      set.InsertTile(tile, EVENTUALLY_AND_ACTIVE_BIN);
+      set.InsertTile(tile.get(), EVENTUALLY_AND_ACTIVE_BIN);
     }
   }
 
@@ -314,7 +314,7 @@
       tile->SetPriority(ACTIVE_TREE, priorities[priority]);
       tile->SetPriority(PENDING_TREE, priorities[priority]);
       tiles.push_back(tile);
-      set.InsertTile(tile, EVENTUALLY_BIN);
+      set.InsertTile(tile.get(), EVENTUALLY_BIN);
     }
   }
 
@@ -350,7 +350,7 @@
       tile->SetPriority(ACTIVE_TREE, priorities[priority]);
       tile->SetPriority(PENDING_TREE, priorities[priority]);
       tiles.push_back(tile);
-      set.InsertTile(tile, AT_LAST_AND_ACTIVE_BIN);
+      set.InsertTile(tile.get(), AT_LAST_AND_ACTIVE_BIN);
     }
   }
 
@@ -386,7 +386,7 @@
       tile->SetPriority(ACTIVE_TREE, priorities[priority]);
       tile->SetPriority(PENDING_TREE, priorities[priority]);
       tiles.push_back(tile);
-      set.InsertTile(tile, AT_LAST_BIN);
+      set.InsertTile(tile.get(), AT_LAST_BIN);
     }
   }
 
@@ -418,13 +418,13 @@
   scoped_refptr<Tile> at_last_and_active_bin = CreateTile();
 
   PrioritizedTileSet set;
-  set.InsertTile(soon_bin, SOON_BIN);
-  set.InsertTile(at_last_and_active_bin, AT_LAST_AND_ACTIVE_BIN);
-  set.InsertTile(eventually_bin, EVENTUALLY_BIN);
-  set.InsertTile(now_bin, NOW_BIN);
-  set.InsertTile(eventually_and_active_bin, EVENTUALLY_AND_ACTIVE_BIN);
-  set.InsertTile(at_last_bin, AT_LAST_BIN);
-  set.InsertTile(now_and_ready_to_draw_bin, NOW_AND_READY_TO_DRAW_BIN);
+  set.InsertTile(soon_bin.get(), SOON_BIN);
+  set.InsertTile(at_last_and_active_bin.get(), AT_LAST_AND_ACTIVE_BIN);
+  set.InsertTile(eventually_bin.get(), EVENTUALLY_BIN);
+  set.InsertTile(now_bin.get(), NOW_BIN);
+  set.InsertTile(eventually_and_active_bin.get(), EVENTUALLY_AND_ACTIVE_BIN);
+  set.InsertTile(at_last_bin.get(), AT_LAST_BIN);
+  set.InsertTile(now_and_ready_to_draw_bin.get(), NOW_AND_READY_TO_DRAW_BIN);
 
   // Tiles should appear in order.
   PrioritizedTileSet::Iterator it(&set, true);
@@ -478,13 +478,13 @@
       at_last_bins.push_back(tile);
       at_last_and_active_bins.push_back(tile);
 
-      set.InsertTile(tile, NOW_AND_READY_TO_DRAW_BIN);
-      set.InsertTile(tile, NOW_BIN);
-      set.InsertTile(tile, SOON_BIN);
-      set.InsertTile(tile, EVENTUALLY_AND_ACTIVE_BIN);
-      set.InsertTile(tile, EVENTUALLY_BIN);
-      set.InsertTile(tile, AT_LAST_BIN);
-      set.InsertTile(tile, AT_LAST_AND_ACTIVE_BIN);
+      set.InsertTile(tile.get(), NOW_AND_READY_TO_DRAW_BIN);
+      set.InsertTile(tile.get(), NOW_BIN);
+      set.InsertTile(tile.get(), SOON_BIN);
+      set.InsertTile(tile.get(), EVENTUALLY_AND_ACTIVE_BIN);
+      set.InsertTile(tile.get(), EVENTUALLY_BIN);
+      set.InsertTile(tile.get(), AT_LAST_BIN);
+      set.InsertTile(tile.get(), AT_LAST_AND_ACTIVE_BIN);
     }
   }
 
@@ -495,14 +495,14 @@
   for (vector_it = now_and_ready_to_draw_bins.begin();
        vector_it != now_and_ready_to_draw_bins.end();
        ++vector_it) {
-    EXPECT_TRUE(*vector_it == *it);
+    EXPECT_TRUE(vector_it->get() == *it);
     ++it;
   }
 
   // Now bins are sorted.
   std::sort(now_bins.begin(), now_bins.end(), BinComparator());
   for (vector_it = now_bins.begin(); vector_it != now_bins.end(); ++vector_it) {
-    EXPECT_TRUE(*vector_it == *it);
+    EXPECT_TRUE(vector_it->get() == *it);
     ++it;
   }
 
@@ -510,7 +510,7 @@
   std::sort(soon_bins.begin(), soon_bins.end(), BinComparator());
   for (vector_it = soon_bins.begin(); vector_it != soon_bins.end();
        ++vector_it) {
-    EXPECT_TRUE(*vector_it == *it);
+    EXPECT_TRUE(vector_it->get() == *it);
     ++it;
   }
 
@@ -521,7 +521,7 @@
   for (vector_it = eventually_and_active_bins.begin();
        vector_it != eventually_and_active_bins.end();
        ++vector_it) {
-    EXPECT_TRUE(*vector_it == *it);
+    EXPECT_TRUE(vector_it->get() == *it);
     ++it;
   }
 
@@ -529,7 +529,7 @@
   std::sort(eventually_bins.begin(), eventually_bins.end(), BinComparator());
   for (vector_it = eventually_bins.begin(); vector_it != eventually_bins.end();
        ++vector_it) {
-    EXPECT_TRUE(*vector_it == *it);
+    EXPECT_TRUE(vector_it->get() == *it);
     ++it;
   }
 
@@ -540,7 +540,7 @@
   for (vector_it = at_last_and_active_bins.begin();
        vector_it != at_last_and_active_bins.end();
        ++vector_it) {
-    EXPECT_TRUE(*vector_it == *it);
+    EXPECT_TRUE(vector_it->get() == *it);
     ++it;
   }
 
@@ -548,7 +548,7 @@
   std::sort(at_last_bins.begin(), at_last_bins.end(), BinComparator());
   for (vector_it = at_last_bins.begin(); vector_it != at_last_bins.end();
        ++vector_it) {
-    EXPECT_TRUE(*vector_it == *it);
+    EXPECT_TRUE(vector_it->get() == *it);
     ++it;
   }
 
@@ -597,13 +597,13 @@
       at_last_bins.push_back(tile);
       at_last_and_active_bins.push_back(tile);
 
-      set.InsertTile(tile, NOW_AND_READY_TO_DRAW_BIN);
-      set.InsertTile(tile, NOW_BIN);
-      set.InsertTile(tile, SOON_BIN);
-      set.InsertTile(tile, EVENTUALLY_AND_ACTIVE_BIN);
-      set.InsertTile(tile, EVENTUALLY_BIN);
-      set.InsertTile(tile, AT_LAST_BIN);
-      set.InsertTile(tile, AT_LAST_AND_ACTIVE_BIN);
+      set.InsertTile(tile.get(), NOW_AND_READY_TO_DRAW_BIN);
+      set.InsertTile(tile.get(), NOW_BIN);
+      set.InsertTile(tile.get(), SOON_BIN);
+      set.InsertTile(tile.get(), EVENTUALLY_AND_ACTIVE_BIN);
+      set.InsertTile(tile.get(), EVENTUALLY_BIN);
+      set.InsertTile(tile.get(), AT_LAST_BIN);
+      set.InsertTile(tile.get(), AT_LAST_AND_ACTIVE_BIN);
     }
   }
 
@@ -614,14 +614,14 @@
   for (vector_it = now_and_ready_to_draw_bins.begin();
        vector_it != now_and_ready_to_draw_bins.end();
        ++vector_it) {
-    EXPECT_TRUE(*vector_it == *it);
+    EXPECT_TRUE(vector_it->get() == *it);
     ++it;
   }
 
   // Now bins are sorted.
   std::sort(now_bins.begin(), now_bins.end(), BinComparator());
   for (vector_it = now_bins.begin(); vector_it != now_bins.end(); ++vector_it) {
-    EXPECT_TRUE(*vector_it == *it);
+    EXPECT_TRUE(vector_it->get() == *it);
     ++it;
   }
 
@@ -629,7 +629,7 @@
   std::sort(soon_bins.begin(), soon_bins.end(), BinComparator());
   for (vector_it = soon_bins.begin(); vector_it != soon_bins.end();
        ++vector_it) {
-    EXPECT_TRUE(*vector_it == *it);
+    EXPECT_TRUE(vector_it->get() == *it);
     ++it;
   }
 
@@ -643,14 +643,14 @@
   for (vector_it = eventually_and_active_bins.begin();
        vector_it != eventually_and_active_bins.end();
        ++vector_it) {
-    EXPECT_TRUE(*vector_it == *it);
+    EXPECT_TRUE(vector_it->get() == *it);
     ++it;
   }
 
   // Eventually bins are not sorted.
   for (vector_it = eventually_bins.begin(); vector_it != eventually_bins.end();
        ++vector_it) {
-    EXPECT_TRUE(*vector_it == *it);
+    EXPECT_TRUE(vector_it->get() == *it);
     ++it;
   }
 
@@ -658,14 +658,14 @@
   for (vector_it = at_last_and_active_bins.begin();
        vector_it != at_last_and_active_bins.end();
        ++vector_it) {
-    EXPECT_TRUE(*vector_it == *it);
+    EXPECT_TRUE(vector_it->get() == *it);
     ++it;
   }
 
   // At last bins are not sorted.
   for (vector_it = at_last_bins.begin(); vector_it != at_last_bins.end();
        ++vector_it) {
-    EXPECT_TRUE(*vector_it == *it);
+    EXPECT_TRUE(vector_it->get() == *it);
     ++it;
   }
 
@@ -688,8 +688,8 @@
   scoped_refptr<Tile> at_last_bin = CreateTile();
 
   PrioritizedTileSet set;
-  set.InsertTile(at_last_bin, AT_LAST_BIN);
-  set.InsertTile(now_and_ready_to_draw_bin, NOW_AND_READY_TO_DRAW_BIN);
+  set.InsertTile(at_last_bin.get(), AT_LAST_BIN);
+  set.InsertTile(now_and_ready_to_draw_bin.get(), NOW_AND_READY_TO_DRAW_BIN);
 
   // Only two tiles should appear and they should appear in order.
   PrioritizedTileSet::Iterator it(&set, true);
@@ -710,11 +710,11 @@
   scoped_refptr<Tile> at_last_bin = CreateTile();
 
   PrioritizedTileSet set;
-  set.InsertTile(soon_bin, SOON_BIN);
-  set.InsertTile(eventually_bin, EVENTUALLY_BIN);
-  set.InsertTile(now_bin, NOW_BIN);
-  set.InsertTile(at_last_bin, AT_LAST_BIN);
-  set.InsertTile(now_and_ready_to_draw_bin, NOW_AND_READY_TO_DRAW_BIN);
+  set.InsertTile(soon_bin.get(), SOON_BIN);
+  set.InsertTile(eventually_bin.get(), EVENTUALLY_BIN);
+  set.InsertTile(now_bin.get(), NOW_BIN);
+  set.InsertTile(at_last_bin.get(), AT_LAST_BIN);
+  set.InsertTile(now_and_ready_to_draw_bin.get(), NOW_AND_READY_TO_DRAW_BIN);
 
   // Tiles should appear in order.
   PrioritizedTileSet::Iterator it(&set, true);
diff --git a/cc/resources/raster_worker_pool_unittest.cc b/cc/resources/raster_worker_pool_unittest.cc
index f93e0fc7..29ecae0 100644
--- a/cc/resources/raster_worker_pool_unittest.cc
+++ b/cc/resources/raster_worker_pool_unittest.cc
@@ -203,7 +203,7 @@
     for (RasterTaskVector::const_iterator it = tasks_.begin();
          it != tasks_.end();
          ++it)
-      queue.items.push_back(RasterTaskQueue::Item(*it, false));
+      queue.items.push_back(RasterTaskQueue::Item(it->get(), false));
 
     raster_worker_pool_->AsRasterizer()->ScheduleTasks(&queue);
   }
diff --git a/cc/resources/resource_provider.cc b/cc/resources/resource_provider.cc
index 521eb13..c9340ca6 100644
--- a/cc/resources/resource_provider.cc
+++ b/cc/resources/resource_provider.cc
@@ -1060,7 +1060,7 @@
 
   resource->lock_for_read_count++;
   if (resource->read_lock_fences_enabled) {
-    if (current_read_lock_fence_)
+    if (current_read_lock_fence_.get())
       current_read_lock_fence_->Set();
     resource->read_lock_fence = current_read_lock_fence_;
   }
@@ -1524,7 +1524,7 @@
     // Need to wait for the current read lock fence to pass before we can
     // recycle this resource.
     if (resource->read_lock_fences_enabled) {
-      if (current_read_lock_fence_)
+      if (current_read_lock_fence_.get())
         current_read_lock_fence_->Set();
       resource->read_lock_fence = current_read_lock_fence_;
     }
@@ -2261,12 +2261,12 @@
 }
 
 GLES2Interface* ResourceProvider::ContextGL() const {
-  ContextProvider* context_provider = output_surface_->context_provider();
+  ContextProvider* context_provider = output_surface_->context_provider().get();
   return context_provider ? context_provider->ContextGL() : NULL;
 }
 
 class GrContext* ResourceProvider::GrContext() const {
-  ContextProvider* context_provider = output_surface_->context_provider();
+  ContextProvider* context_provider = output_surface_->context_provider().get();
   return context_provider ? context_provider->GrContext() : NULL;
 }
 
diff --git a/cc/resources/tile.cc b/cc/resources/tile.cc
index 3c5ac75..413ccdf 100644
--- a/cc/resources/tile.cc
+++ b/cc/resources/tile.cc
@@ -118,7 +118,7 @@
 
 bool Tile::HasRasterTask() const {
   for (int mode = 0; mode < NUM_RASTER_MODES; ++mode) {
-    if (managed_state_.tile_versions[mode].raster_task_)
+    if (managed_state_.tile_versions[mode].raster_task_.get())
       return true;
   }
   return false;
diff --git a/cc/resources/tile_manager.cc b/cc/resources/tile_manager.cc
index 3e35dbe..0dcdd791 100644
--- a/cc/resources/tile_manager.cc
+++ b/cc/resources/tile_manager.cc
@@ -65,7 +65,7 @@
   virtual void RunOnWorkerThread() OVERRIDE {
     TRACE_EVENT0("cc", "RasterizerTaskImpl::RunOnWorkerThread");
 
-    DCHECK(picture_pile_);
+    DCHECK(picture_pile_.get());
     if (!canvas_)
       return;
 
@@ -373,7 +373,7 @@
       did_initialize_visible_tile_(false),
       did_check_for_completed_tasks_since_last_schedule_tasks_(true),
       ready_to_activate_check_notifier_(
-          task_runner_,
+          task_runner_.get(),
           base::Bind(&TileManager::CheckIfReadyToActivate,
                      base::Unretained(this))) {
   rasterizer_->SetClient(this);
@@ -556,7 +556,7 @@
         tile->GetTileVersionForDrawing();
     bool tile_is_ready_to_draw = tile_version.IsReadyToDraw();
     bool tile_is_active = tile_is_ready_to_draw ||
-                          mts.tile_versions[mts.raster_mode].raster_task_;
+                          mts.tile_versions[mts.raster_mode].raster_task_.get();
 
     // Get the active priority and bin.
     TilePriority active_priority = tile->priority(ACTIVE_TREE);
@@ -642,7 +642,7 @@
     // should keep it in the prioritized tile set to ensure that AssignGpuMemory
     // can visit it.
     if (mts.bin == NEVER_BIN &&
-        !mts.tile_versions[mts.raster_mode].raster_task_) {
+        !mts.tile_versions[mts.raster_mode].raster_task_.get()) {
       FreeResourcesForTileAndNotifyClientIfTileWasReadyToDraw(tile);
       continue;
     }
@@ -828,7 +828,7 @@
     if (!reached_scheduled_raster_tasks_limit) {
       // If we don't have the required version, and it's not in flight
       // then we'll have to pay to create a new task.
-      if (!tile_version.resource_ && !tile_version.raster_task_) {
+      if (!tile_version.resource_ && !tile_version.raster_task_.get()) {
         tile_bytes += bytes_if_allocated;
         tile_resources++;
       }
@@ -971,7 +971,7 @@
     DCHECK(tile_version.requires_resource());
     DCHECK(!tile_version.resource_);
 
-    if (!tile_version.raster_task_)
+    if (!tile_version.raster_task_.get())
       tile_version.raster_task_ = CreateRasterTask(tile);
 
     raster_queue_.items.push_back(RasterTaskQueue::Item(
@@ -1092,7 +1092,7 @@
   Tile* tile = tiles_[tile_id];
   ManagedTileState& mts = tile->managed_state();
   ManagedTileState::TileVersion& tile_version = mts.tile_versions[raster_mode];
-  DCHECK(tile_version.raster_task_);
+  DCHECK(tile_version.raster_task_.get());
   orphan_raster_tasks_.push_back(tile_version.raster_task_);
   tile_version.raster_task_ = NULL;
 
@@ -1141,7 +1141,7 @@
                                                          flags));
   DCHECK(tiles_.find(tile->id()) == tiles_.end());
 
-  tiles_[tile->id()] = tile;
+  tiles_[tile->id()] = tile.get();
   used_layer_counts_[tile->layer_id()]++;
   prioritized_tiles_dirty_ = true;
   return tile;
diff --git a/cc/resources/tile_manager_unittest.cc b/cc/resources/tile_manager_unittest.cc
index 030f8ab..b85c286 100644
--- a/cc/resources/tile_manager_unittest.cc
+++ b/cc/resources/tile_manager_unittest.cc
@@ -126,7 +126,7 @@
 
   void ReleaseTiles(TileVector* tiles) {
     for (TileVector::iterator it = tiles->begin(); it != tiles->end(); it++) {
-      Tile* tile = *it;
+      Tile* tile = it->get();
       tile->SetPriority(ACTIVE_TREE, TilePriority());
       tile->SetPriority(PENDING_TREE, TilePriority());
     }
@@ -138,7 +138,7 @@
     int has_memory_count = 0;
     for (TileVector::const_iterator it = tiles.begin(); it != tiles.end();
          ++it) {
-      if (tile_manager_->HasBeenAssignedMemory(*it))
+      if (tile_manager_->HasBeenAssignedMemory(it->get()))
         ++has_memory_count;
     }
     return has_memory_count;
diff --git a/cc/scheduler/scheduler.cc b/cc/scheduler/scheduler.cc
index a20bfd2b..d08d387a 100644
--- a/cc/scheduler/scheduler.cc
+++ b/cc/scheduler/scheduler.cc
@@ -274,7 +274,7 @@
 }
 
 void Scheduler::SetupNextBeginFrameIfNeeded() {
-  if (!task_runner_)
+  if (!task_runner_.get())
     return;
 
   bool needs_begin_frame = state_machine_.BeginFrameNeeded();
@@ -690,11 +690,11 @@
   scoped_refptr<base::debug::TracedValue> state =
       new base::debug::TracedValue();
   state->BeginDictionary("state_machine");
-  state_machine_.AsValueInto(state);
+  state_machine_.AsValueInto(state.get());
   state->EndDictionary();
   if (synthetic_begin_frame_source_) {
     state->BeginDictionary("synthetic_begin_frame_source_");
-    synthetic_begin_frame_source_->AsValueInto(state);
+    synthetic_begin_frame_source_->AsValueInto(state.get());
     state->EndDictionary();
   }
 
@@ -717,7 +717,7 @@
   state->SetBoolean("advance_commit_state_task_",
                     !advance_commit_state_task_.IsCancelled());
   state->BeginDictionary("begin_impl_frame_args");
-  begin_impl_frame_args_.AsValueInto(state);
+  begin_impl_frame_args_.AsValueInto(state.get());
   state->EndDictionary();
 
   state->EndDictionary();
diff --git a/cc/scheduler/scheduler_state_machine.cc b/cc/scheduler/scheduler_state_machine.cc
index c66b650..2bec4de8 100644
--- a/cc/scheduler/scheduler_state_machine.cc
+++ b/cc/scheduler/scheduler_state_machine.cc
@@ -152,7 +152,7 @@
 SchedulerStateMachine::AsValue() const {
   scoped_refptr<base::debug::TracedValue> state =
       new base::debug::TracedValue();
-  AsValueInto(state);
+  AsValueInto(state.get());
   return state;
 }
 
diff --git a/cc/scheduler/scheduler_unittest.cc b/cc/scheduler/scheduler_unittest.cc
index fbdadb7..cb04c5e 100644
--- a/cc/scheduler/scheduler_unittest.cc
+++ b/cc/scheduler/scheduler_unittest.cc
@@ -116,7 +116,7 @@
     return posted_begin_impl_frame_deadline_;
   }
 
-  OrderedSimpleTaskRunner& task_runner() { return *task_runner_; }
+  OrderedSimpleTaskRunner& task_runner() { return *task_runner_.get(); }
 
   int ActionIndex(const char* action) const {
     for (size_t i = 0; i < actions_.size(); i++)
diff --git a/cc/test/layer_tree_json_parser_unittest.cc b/cc/test/layer_tree_json_parser_unittest.cc
index 61a2f7f..4f9c562 100644
--- a/cc/test/layer_tree_json_parser_unittest.cc
+++ b/cc/test/layer_tree_json_parser_unittest.cc
@@ -50,9 +50,8 @@
                 layer->touch_event_handler_region()));
 
   for (size_t i = 0; i < layer_impl->children().size(); ++i) {
-    RETURN_IF_EXPECTATION_FAILS(
-        EXPECT_TRUE(LayerTreesMatch(layer_impl->children()[i],
-                                    layer->children()[i])));
+    RETURN_IF_EXPECTATION_FAILS(EXPECT_TRUE(LayerTreesMatch(
+        layer_impl->children()[i], layer->children()[i].get())));
   }
 
   return true;
@@ -89,7 +88,7 @@
 
   std::string json = host_impl.LayerTreeAsJson();
   scoped_refptr<Layer> root = ParseTreeFromJson(json, NULL);
-  ASSERT_TRUE(root);
+  ASSERT_TRUE(root.get());
   EXPECT_TRUE(LayerTreesMatch(host_impl.RootLayer(), root.get()));
 }
 
@@ -115,7 +114,7 @@
 
   std::string json = host_impl.LayerTreeAsJson();
   scoped_refptr<Layer> root = ParseTreeFromJson(json, NULL);
-  ASSERT_TRUE(root);
+  ASSERT_TRUE(root.get());
   EXPECT_TRUE(LayerTreesMatch(host_impl.RootLayer(), root.get()));
 }