Index: chrome/browser/profiles/profile_io_data.cc |
diff --git a/chrome/browser/profiles/profile_io_data.cc b/chrome/browser/profiles/profile_io_data.cc |
index 31a9e1aba971abb34018b75e15a06a566e786500..7c6b3fe42b98d1dbd78e1876e14a86a642b402a6 100644 |
--- a/chrome/browser/profiles/profile_io_data.cc |
+++ b/chrome/browser/profiles/profile_io_data.cc |
@@ -191,6 +191,8 @@ void ProfileIOData::InitializeProfileParams(Profile* profile) { |
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
PrefService* pref_service = profile->GetPrefs(); |
+ next_download_id_thunk_ = profile->GetDownloadManager()->GetNextIdThunk(); |
+ |
scoped_ptr<ProfileParams> params(new ProfileParams); |
params->is_incognito = profile->IsOffTheRecord(); |
params->clear_local_state_on_exit = |
@@ -485,6 +487,11 @@ void ProfileIOData::LazyInitialize() const { |
resource_context_.SetUserData(NULL, const_cast<ProfileIOData*>(this)); |
resource_context_.set_media_observer( |
io_thread_globals->media.media_internals.get()); |
+ // TODO(benjhayden) clean this up when we can include DownloadManager in |
+ // ResourceContext. |
+ resource_context_.SetUserData(reinterpret_cast<void*>( |
+ BASE_HASH_NAMESPACE::hash<std::string>()("next_download_id_thunk")), |
+ &next_download_id_thunk_); |
LazyInitializeInternal(profile_params_.get()); |