Encrypted Media: Destroy CDM in ProxyMediaKeys' dtor.

- Makes sure we destroy the CDM when ProxyMediaKeys is destroyed.
- Changes MediaKeysHostMsg_CancelAllPendingSessionCreations message to a more general MediaKeysHostMsg_DestroyCdm message and cancels pending session creations as part of OnDestroyCdm().

BUG=347154,347022
TEST=MediaDrmBridge is properly destroyed with all sessions closed when the MediaPlayer is destroyed.
R=dcheng@chromium.org, ddorwin@chromium.org, qinmin@chromium.org

Review URL: https://codereview.chromium.org/181593004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253674 0039d316-1c4b-4281-b951-d872f2087c98
Do not retry data reduction proxy on direct request failure

This change prevents a request that failed on a direct connection
to the origin from being retried via the data reduction proxy.

BUG=331598

Review URL: https://codereview.chromium.org/142373005

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253675 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 253675
Revert r242742. The Clang codegen bug has been fixed.

> Hack for Mac 10.9 hang when the Keychain is modified with Chrome running.
>
> BUG=326011

R=rsesek@chromium.org,rsleevi@chromium.org
BUG=none
TEST=none

Review URL: https://codereview.chromium.org/177093021

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253676 0039d316-1c4b-4281-b951-d872f2087c98
[invalidations] Added list of registered handlers to about:invalidations

This patch is a follow-up to issue 147353011 (SVN Rev 250458)

This patch adds the list of every InvalidationHandler registered in the
active InvalidationService. This was needed because potentially an
InvalidationHandler can be registered for invalidations but have no
ObjectsId registered yet, so they wouldn't appear on neither the table
nor the event log. This patch allows listing those handlers.


BUG=263863

Review URL: https://codereview.chromium.org/166903013

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253677 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 253676
aw: Add SharedRendererState

BrowserViewRenderer and HardwareRenderer should be independent, and only
share data through a lock-protected SharedRendererState. This class is
inspired by cc::ThreadProxy, and handles all threading issues between
UI and RT threads.

For now, move all SynchronousCompositor calls to shared state. Also pass
DrawGL input and output through the shared state.

Next step is to not have BVR directly own and call into HR.

BUG=344087
NOTRY=true

Review URL: https://codereview.chromium.org/181113003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253679 0039d316-1c4b-4281-b951-d872f2087c98
sync: null-check SyncedTabDelegate in NotificationServiceSessionsRouter

In every case but one we were null-checking the SyncedTabDelegate returned
from the NotificationDetails, except for one, and that case is crashing on
a null pointer.  There's no guarantee that the tab delegate be there, so
this is a speculative but relatively obvious fix.

BUG=347220
R=maniscalco@chromium.org, zea@chromium.org

Review URL: https://codereview.chromium.org/179833007

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253681 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 253681