DescriptionRemove all but one use of WeakPtrFactory::DetachFromThread.
This is a re-land of issue 14299011, which broke GLSurfaceGLX, in turn breaking Chrome Linux/Aura.
This CL changes WeakPtr in the following ways:
* Changes thread-bindings semantics so that WeakPtrs only become bound when the first one is dereferenced, or the owning factory invalidates them.
* Removes WeakPtrFactory::DetachFromThread.
* Renames SupportsWeakPtr::DetachFromThread to DetachFromThreadHack.
Calling code changes to allow this:
* Unnecessary use of SupportsWeakPtr removed from SGIVideoSyncProviderThreadShim.
* Unnecessary DetachFromThread() calls removed from PluginInfoMessageFilter, DhcpProxyScript[Adapter]FetcherWin and (Chromoting's) PolicyWatcherLinux.
* DetachFromThread() calls rendered unnecessary by change in binding semantics removed from IOThread, SearchProviderInstallData, RuleRegistryWithCache and GLSurfaceGlx.
WebGraphicsContext3DInProcessCommandBufferImpl uses the re-named DetachFromThreadHack() - bug 234964 tracks work to remove that use.
TBR=darin,awong
BUG=232143, 234964, 243914
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=202811
Patch Set 1 #Patch Set 2 : Simplify SGIVideoSyncProviderThreadShim ownership, removing unnecessary use of SupportsWeakPtr. #Messages
Total messages: 4 (0 generated)
|