commit | f582b50dc416de301f3e4a5f1712a93b9ce02e95 | [log] [tgz] |
---|---|---|
author | Paul Stewart <pstew@chromium.org> | Wed Apr 04 21:39:22 2012 -0700 |
committer | Gerrit <chrome-bot@google.com> | Thu Apr 05 09:42:44 2012 -0700 |
tree | 59e4dbe905d4279725d421eba0d6b199373bd739 | |
parent | 90d216ddc6752beeb2ff63880b8e6ba379815f68 [diff] |
shill: Fix timer canceling The move to new callback closures included the frequent replacement of "task_factory_.RevokeAll()" with "weak_ptr_factory_.InvalidateWeakPtrs()". The former canceled all pending timers, whereas the latter also effectively canceled all I/O callbacks. This caused both portal detection and the service proxy to stop working. This CL creates CancelableClosures for the affected timers, and cancels these closures instead of invalidating all weak pointers. BUG=chromium-os:28885 TEST=Manual: Test both passing and failure cases of portal detection, ensuring that DNS timeouts work correctly. Use "curl -x" to test HTTP proxy. Change-Id: Id61dfb6a1a4ce0defaa08a99e318bc510c6c84b3 Reviewed-on: https://gerrit.chromium.org/gerrit/19644 Reviewed-by: Eric Shienbrood <ers@chromium.org> Commit-Ready: Paul Stewart <pstew@chromium.org> Tested-by: Paul Stewart <pstew@chromium.org>