diff options
author | sdefresne <sdefresne@chromium.org> | 2016-03-08 07:20:18 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-03-08 15:21:12 +0000 |
commit | c70dbf40ec08970d54dd360aaf8b47ca630d0cc4 (patch) | |
tree | 7a1eb9f62786c7b04516c3f6051cfc4038f1e0b6 /ios/net | |
parent | 8629ce72e06a8e4dae428f0fbc3ba83cc5555407 (diff) | |
download | chromium_src-c70dbf40ec08970d54dd360aaf8b47ca630d0cc4.zip chromium_src-c70dbf40ec08970d54dd360aaf8b47ca630d0cc4.tar.gz chromium_src-c70dbf40ec08970d54dd360aaf8b47ca630d0cc4.tar.bz2 |
Properly retain system_store_ in CookieStoreIOS.
The NSHTTPCookieStorage referenced by CookieStoreIOS is not always
the system singleton and need to be properly refcounted. Change the
instance variable to base::scoped_nsobject<> to take care of this.
BUG=None
Review URL: https://codereview.chromium.org/1771343002
Cr-Commit-Position: refs/heads/master@{#379835}
Diffstat (limited to 'ios/net')
-rw-r--r-- | ios/net/cookies/cookie_store_ios.h | 3 | ||||
-rw-r--r-- | ios/net/cookies/cookie_store_ios.mm | 2 |
2 files changed, 3 insertions, 2 deletions
diff --git a/ios/net/cookies/cookie_store_ios.h b/ios/net/cookies/cookie_store_ios.h index 914804d..29feb38 100644 --- a/ios/net/cookies/cookie_store_ios.h +++ b/ios/net/cookies/cookie_store_ios.h @@ -12,6 +12,7 @@ #include "base/callback.h" #include "base/cancelable_callback.h" +#include "base/mac/scoped_nsobject.h" #include "base/macros.h" #include "base/memory/scoped_ptr.h" #include "base/memory/weak_ptr.h" @@ -202,7 +203,7 @@ class CookieStoreIOS : public net::CookieStore, const DeleteCallback& callback); scoped_ptr<net::CookieMonster> cookie_monster_; - NSHTTPCookieStorage* system_store_; + base::scoped_nsobject<NSHTTPCookieStorage> system_store_; scoped_ptr<CookieCreationTimeManager> creation_time_manager_; bool metrics_enabled_; base::TimeDelta flush_delay_; diff --git a/ios/net/cookies/cookie_store_ios.mm b/ios/net/cookies/cookie_store_ios.mm index 2d3ebda..0d5f001 100644 --- a/ios/net/cookies/cookie_store_ios.mm +++ b/ios/net/cookies/cookie_store_ios.mm @@ -293,7 +293,7 @@ CookieStoreIOS::CookieStoreIOS( net::CookieMonster::PersistentCookieStore* persistent_store, NSHTTPCookieStorage* system_store) : cookie_monster_(new net::CookieMonster(persistent_store, nullptr)), - system_store_(system_store), + system_store_([system_store retain]), creation_time_manager_(new CookieCreationTimeManager), metrics_enabled_(false), flush_delay_(base::TimeDelta::FromSeconds(10)), |