diff options
author | ivankr@chromium.org <ivankr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-11-16 11:16:39 +0000 |
---|---|---|
committer | ivankr@chromium.org <ivankr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-11-16 11:16:39 +0000 |
commit | cf3aef70329cd30fe6e9a85efa404ba5c4750076 (patch) | |
tree | 3d2d8944351dfe6573b92ab22791cef71f67ed68 /rlz/lib/financial_ping.cc | |
parent | cba3a4bd653a63d4daaa218ceaf3a419024f1c50 (diff) | |
download | chromium_src-cf3aef70329cd30fe6e9a85efa404ba5c4750076.zip chromium_src-cf3aef70329cd30fe6e9a85efa404ba5c4750076.tar.gz chromium_src-cf3aef70329cd30fe6e9a85efa404ba5c4750076.tar.bz2 |
[cros,rlz] Financial ping livelock fix and proper shutdown.
*) Fix the livelock on RLZ thread in FinancialPing
*) RlzValueStore on chromeos destroys JsonPrefStore on proper thread.
BUG=157348
Review URL: https://chromiumcodereview.appspot.com/11275284
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@168187 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'rlz/lib/financial_ping.cc')
-rw-r--r-- | rlz/lib/financial_ping.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/rlz/lib/financial_ping.cc b/rlz/lib/financial_ping.cc index 9b7e319..9abbd80 100644 --- a/rlz/lib/financial_ping.cc +++ b/rlz/lib/financial_ping.cc @@ -297,10 +297,11 @@ bool FinancialPing::PingServer(const char* request, std::string* response) { fetcher->SetRequestContext(g_context); const base::TimeDelta kTimeout = base::TimeDelta::FromMinutes(5); + MessageLoop::ScopedNestableTaskAllower allow_nested(MessageLoop::current()); MessageLoop::current()->PostTask( FROM_HERE, base::Bind(&net::URLFetcher::Start, base::Unretained(fetcher.get()))); - MessageLoop::current()->PostNonNestableDelayedTask( + MessageLoop::current()->PostDelayedTask( FROM_HERE, loop.QuitClosure(), kTimeout); loop.Run(); |