| Index: base/win/scoped_handle.h
 | 
| diff --git a/base/win/scoped_handle.h b/base/win/scoped_handle.h
 | 
| index d1eb1d688aeb5410c0cdf34ca45026f7fbd3a202..3e8a7484c137ab37ca2af5a4f3a7cf9304d1875f 100644
 | 
| --- a/base/win/scoped_handle.h
 | 
| +++ b/base/win/scoped_handle.h
 | 
| @@ -36,7 +36,7 @@ namespace win {
 | 
|  //     this explicitly is necessary because of bug 528394 and VC++ 2015.
 | 
|  template <class Traits, class Verifier>
 | 
|  class GenericScopedHandle {
 | 
| -  MOVE_ONLY_TYPE_FOR_CPP_03(GenericScopedHandle, RValue)
 | 
| +  MOVE_ONLY_TYPE_FOR_CPP_03(GenericScopedHandle)
 | 
|  
 | 
|   public:
 | 
|    typedef typename Traits::Handle Handle;
 | 
| @@ -47,9 +47,9 @@ class GenericScopedHandle {
 | 
|      Set(handle);
 | 
|    }
 | 
|  
 | 
| -  // Move constructor for C++03 move emulation of this type.
 | 
| -  GenericScopedHandle(RValue other) : handle_(Traits::NullHandle()) {
 | 
| -    Set(other.object->Take());
 | 
| +  GenericScopedHandle(GenericScopedHandle&& other)
 | 
| +      : handle_(Traits::NullHandle()) {
 | 
| +    Set(other.Take());
 | 
|    }
 | 
|  
 | 
|    ~GenericScopedHandle() {
 | 
| @@ -60,11 +60,9 @@ class GenericScopedHandle {
 | 
|      return Traits::IsHandleValid(handle_);
 | 
|    }
 | 
|  
 | 
| -  // Move operator= for C++03 move emulation of this type.
 | 
| -  GenericScopedHandle& operator=(RValue other) {
 | 
| -    if (this != other.object) {
 | 
| -      Set(other.object->Take());
 | 
| -    }
 | 
| +  GenericScopedHandle& operator=(GenericScopedHandle&& other) {
 | 
| +    DCHECK_NE(this, &other);
 | 
| +    Set(other.Take());
 | 
|      return *this;
 | 
|    }
 | 
|  
 | 
| 
 |