| Index: webrtc/base/scoped_ref_ptr.h
|
| diff --git a/webrtc/base/scoped_ref_ptr.h b/webrtc/base/scoped_ref_ptr.h
|
| index 26aff03504ac5d71de40b28a79b038e31b790844..259956292f52eed9f4f66a6d242c94d6bc8b7e06 100644
|
| --- a/webrtc/base/scoped_ref_ptr.h
|
| +++ b/webrtc/base/scoped_ref_ptr.h
|
| @@ -63,101 +63,9 @@
|
| #ifndef WEBRTC_BASE_SCOPED_REF_PTR_H_
|
| #define WEBRTC_BASE_SCOPED_REF_PTR_H_
|
|
|
| -#include <memory>
|
|
|
| -namespace rtc {
|
| -
|
| -template <class T>
|
| -class scoped_refptr {
|
| - public:
|
| - scoped_refptr() : ptr_(nullptr) {}
|
| -
|
| - scoped_refptr(T* p) : ptr_(p) {
|
| - if (ptr_)
|
| - ptr_->AddRef();
|
| - }
|
| -
|
| - scoped_refptr(const scoped_refptr<T>& r) : ptr_(r.ptr_) {
|
| - if (ptr_)
|
| - ptr_->AddRef();
|
| - }
|
| -
|
| - template <typename U>
|
| - scoped_refptr(const scoped_refptr<U>& r) : ptr_(r.get()) {
|
| - if (ptr_)
|
| - ptr_->AddRef();
|
| - }
|
| -
|
| - // Move constructors.
|
| - scoped_refptr(scoped_refptr<T>&& r) : ptr_(r.release()) {}
|
| -
|
| - template <typename U>
|
| - scoped_refptr(scoped_refptr<U>&& r) : ptr_(r.release()) {}
|
| -
|
| - ~scoped_refptr() {
|
| - if (ptr_)
|
| - ptr_->Release();
|
| - }
|
| -
|
| - T* get() const { return ptr_; }
|
| - operator T*() const { return ptr_; }
|
| - T* operator->() const { return ptr_; }
|
| -
|
| - // Release a pointer.
|
| - // The return value is the current pointer held by this object.
|
| - // If this object holds a null pointer, the return value is null.
|
| - // After this operation, this object will hold a null pointer,
|
| - // and will not own the object any more.
|
| - T* release() {
|
| - T* retVal = ptr_;
|
| - ptr_ = nullptr;
|
| - return retVal;
|
| - }
|
| -
|
| - scoped_refptr<T>& operator=(T* p) {
|
| - // AddRef first so that self assignment should work
|
| - if (p)
|
| - p->AddRef();
|
| - if (ptr_ )
|
| - ptr_ ->Release();
|
| - ptr_ = p;
|
| - return *this;
|
| - }
|
| -
|
| - scoped_refptr<T>& operator=(const scoped_refptr<T>& r) {
|
| - return *this = r.ptr_;
|
| - }
|
| -
|
| - template <typename U>
|
| - scoped_refptr<T>& operator=(const scoped_refptr<U>& r) {
|
| - return *this = r.get();
|
| - }
|
| -
|
| - scoped_refptr<T>& operator=(scoped_refptr<T>&& r) {
|
| - scoped_refptr<T>(std::move(r)).swap(*this);
|
| - return *this;
|
| - }
|
| -
|
| - template <typename U>
|
| - scoped_refptr<T>& operator=(scoped_refptr<U>&& r) {
|
| - scoped_refptr<T>(std::move(r)).swap(*this);
|
| - return *this;
|
| - }
|
| -
|
| - void swap(T** pp) {
|
| - T* p = ptr_;
|
| - ptr_ = *pp;
|
| - *pp = p;
|
| - }
|
| -
|
| - void swap(scoped_refptr<T>& r) {
|
| - swap(&r.ptr_);
|
| - }
|
| -
|
| - protected:
|
| - T* ptr_;
|
| -};
|
| -
|
| -} // namespace rtc
|
| +// This header is deprecated and is just left here temporarily during
|
| +// refactoring. See https://bugs.webrtc.org/7634 for more details.
|
| +#include "webrtc/rtc_base/scoped_ref_ptr.h"
|
|
|
| #endif // WEBRTC_BASE_SCOPED_REF_PTR_H_
|
|
|