| Index: chrome/browser/profiles/profile_keyed_service.h
 | 
| diff --git a/chrome/browser/profiles/profile_keyed_service.h b/chrome/browser/profiles/profile_keyed_service.h
 | 
| index 0a39612d93332250a65397e69aa1126b1bee3024..ce7baf251b744082a90056dcb116009d0958361c 100644
 | 
| --- a/chrome/browser/profiles/profile_keyed_service.h
 | 
| +++ b/chrome/browser/profiles/profile_keyed_service.h
 | 
| @@ -5,7 +5,7 @@
 | 
|  #ifndef CHROME_BROWSER_PROFILES_PROFILE_KEYED_SERVICE_H_
 | 
|  #define CHROME_BROWSER_PROFILES_PROFILE_KEYED_SERVICE_H_
 | 
|  
 | 
| -#include "chrome/browser/profiles/profile_keyed_base.h"
 | 
| +class ProfileKeyedServiceFactory;
 | 
|  
 | 
|  // Base class for all ProfileKeyedServices to allow for correct destruction
 | 
|  // order.
 | 
| @@ -15,11 +15,14 @@
 | 
|  // all services will need this, so there's a default implementation. Only once
 | 
|  // every system has been given a chance to drop references do we start deleting
 | 
|  // objects.
 | 
| -class ProfileKeyedService : public ProfileKeyedBase {
 | 
| +class ProfileKeyedService {
 | 
|   public:
 | 
|    // The first pass is to call Shutdown on a ProfileKeyedService.
 | 
|    virtual void Shutdown() {}
 | 
|  
 | 
| + protected:
 | 
| +  friend class ProfileKeyedServiceFactory;
 | 
| +
 | 
|    // The second pass is the actual deletion of each object.
 | 
|    virtual ~ProfileKeyedService() {}
 | 
|  };
 | 
| 
 |