Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(317)

Side by Side Diff: chrome/browser/prerender/prerender_handle.cc

Issue 16207005: Fix remaining uses of WeakPtr<T>'s operator T* conversion (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/prerender/prerender_handle.h" 5 #include "chrome/browser/prerender/prerender_handle.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "chrome/browser/prerender/prerender_contents.h" 10 #include "chrome/browser/prerender/prerender_contents.h"
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
66 : observer_(NULL), 66 : observer_(NULL),
67 weak_ptr_factory_(this) { 67 weak_ptr_factory_(this) {
68 if (prerender_data) { 68 if (prerender_data) {
69 prerender_data_ = prerender_data->AsWeakPtr(); 69 prerender_data_ = prerender_data->AsWeakPtr();
70 prerender_data->OnHandleCreated(this); 70 prerender_data->OnHandleCreated(this);
71 } 71 }
72 } 72 }
73 73
74 void PrerenderHandle::AdoptPrerenderDataFrom(PrerenderHandle* other_handle) { 74 void PrerenderHandle::AdoptPrerenderDataFrom(PrerenderHandle* other_handle) {
75 DCHECK_EQ(static_cast<PrerenderManager::PrerenderData*>(NULL), 75 DCHECK_EQ(static_cast<PrerenderManager::PrerenderData*>(NULL),
76 prerender_data_); 76 prerender_data_.get());
77 if (other_handle->prerender_data_.get() && 77 if (other_handle->prerender_data_.get() &&
78 other_handle->prerender_data_->contents()) { 78 other_handle->prerender_data_->contents()) {
79 other_handle->prerender_data_->contents()->RemoveObserver(other_handle); 79 other_handle->prerender_data_->contents()->RemoveObserver(other_handle);
80 } 80 }
81 81
82 prerender_data_ = other_handle->prerender_data_; 82 prerender_data_ = other_handle->prerender_data_;
83 other_handle->prerender_data_.reset(); 83 other_handle->prerender_data_.reset();
84 84
85 if (prerender_data_.get()) { 85 if (prerender_data_.get()) {
86 DCHECK_NE(static_cast<PrerenderContents*>(NULL), 86 DCHECK_NE(static_cast<PrerenderContents*>(NULL),
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
123 // so we expect to not have our new contents in our PrerenderData yet. The 123 // so we expect to not have our new contents in our PrerenderData yet. The
124 // switch occurs in 124 // switch occurs in
125 // PrerenderManager::PrerenderData::MakeIntoMatchCompleteReplacement, so 125 // PrerenderManager::PrerenderData::MakeIntoMatchCompleteReplacement, so
126 // this method only needs to switch observing. 126 // this method only needs to switch observing.
127 127
128 contents->RemoveObserver(this); 128 contents->RemoveObserver(this);
129 replacement->AddObserver(this); 129 replacement->AddObserver(this);
130 } 130 }
131 131
132 } // namespace prerender 132 } // namespace prerender
OLDNEW
« no previous file with comments | « base/memory/weak_ptr_unittest.cc ('k') | chrome/browser/spellchecker/spellcheck_hunspell_dictionary.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698