Provide correct guard for GCM connection tracking of login failures.
The original implementation of GCM Connection tracking had a DCHECK in ConnectionLoginFailed to validate that ConnectionAttemptSucceeded had been called first to validate the expected ordering of the calls. That was removed as a result of crbug.com/673706 because it was failing. After investigating, the reason for the failures is that the entry check for calling ConnectionLoginFailed was checking the logging_in_ member on the ConnectionFactoryImpl. However, that member tracks whether the initial connection is established, not whether the login handshake has been completed. The correct check for when to call ConnectionLoginFailed is if the result passed to SignalConnectionReset is LOGIN_FAILURE, since that indicates that the MCSClient was unable to complete the login. BUG=673706 Review-Url: https://codereview.chromium.org/2624653003 Cr-Commit-Position: refs/heads/master@{#443531}
Showing
Please register or sign in to comment