| Index: chrome/browser/sync/glue/extension_change_processor.cc | 
| =================================================================== | 
| --- chrome/browser/sync/glue/extension_change_processor.cc	(revision 69996) | 
| +++ chrome/browser/sync/glue/extension_change_processor.cc	(working copy) | 
| @@ -49,8 +49,7 @@ | 
| (type != NotificationType::EXTENSION_UNINSTALLED) && | 
| (type != NotificationType::EXTENSION_LOADED) && | 
| (type != NotificationType::EXTENSION_UPDATE_DISABLED) && | 
| -      (type != NotificationType::EXTENSION_UNLOADED) && | 
| -      (type != NotificationType::EXTENSION_UNLOADED_DISABLED)) { | 
| +      (type != NotificationType::EXTENSION_UNLOADED)) { | 
| LOG(DFATAL) << "Received unexpected notification of type " | 
| << type.value; | 
| return; | 
| @@ -69,7 +68,12 @@ | 
| RemoveServerData(traits_, id, profile_->GetProfileSyncService()); | 
| } | 
| } else { | 
| -    const Extension* extension = Details<const Extension>(details).ptr(); | 
| +    const Extension* extension = NULL; | 
| +    if (type == NotificationType::EXTENSION_UNLOADED) { | 
| +      extension = Details<UnloadedExtensionInfo>(details)->extension; | 
| +    } else { | 
| +      extension = Details<const Extension>(details).ptr(); | 
| +    } | 
| CHECK(extension); | 
| VLOG(1) << "Updating server data for extension " << extension->id() | 
| << " (notification type = " << type.value << ")"; | 
| @@ -177,9 +181,6 @@ | 
| notification_registrar_.Add( | 
| this, NotificationType::EXTENSION_UNLOADED, | 
| Source<Profile>(profile_)); | 
| -  notification_registrar_.Add( | 
| -      this, NotificationType::EXTENSION_UNLOADED_DISABLED, | 
| -      Source<Profile>(profile_)); | 
| } | 
|  | 
| void ExtensionChangeProcessor::StopObserving() { | 
|  |