diff options
author | erg@chromium.org <erg@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-24 22:12:35 +0000 |
---|---|---|
committer | erg@chromium.org <erg@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-24 22:12:35 +0000 |
commit | f353dba90985f6f9314c932c6c0ad016e2701f75 (patch) | |
tree | 911553a89b23d67ae1947f89f83312094c7c1cf4 /webkit | |
parent | 483d57876597b92189be4504a1dc90b754c4c2e0 (diff) | |
download | chromium_src-f353dba90985f6f9314c932c6c0ad016e2701f75.zip chromium_src-f353dba90985f6f9314c932c6c0ad016e2701f75.tar.gz chromium_src-f353dba90985f6f9314c932c6c0ad016e2701f75.tar.bz2 |
Revert 202038 "Remove all but one use of WeakPtrFactory::DetachF..."
Caused local failures in linux_aura builds. Unsure why this isn't showing
up on the bots.
> Remove all but one use of WeakPtrFactory::DetachFromThread.
>
> 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 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.
>
> Review URL: https://chromiumcodereview.appspot.com/14299011
BUG=232143, 234964, 243914
TBR=wez@chromium.org
Review URL: https://codereview.chromium.org/15819004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@202193 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit')
-rw-r--r-- | webkit/gpu/webgraphicscontext3d_in_process_command_buffer_impl.cc | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/webkit/gpu/webgraphicscontext3d_in_process_command_buffer_impl.cc b/webkit/gpu/webgraphicscontext3d_in_process_command_buffer_impl.cc index 49a2cfc..070c25d 100644 --- a/webkit/gpu/webgraphicscontext3d_in_process_command_buffer_impl.cc +++ b/webkit/gpu/webgraphicscontext3d_in_process_command_buffer_impl.cc @@ -268,11 +268,10 @@ static bool g_use_virtualized_gl_context = false; namespace { -// Also calls DetachFromThreadHack on all GLES2Decoders before the lock is -// released to maintain the invariant that all decoders are unbound while the -// lock is not held. This is to workaround DumpRenderTree using WGC3DIPCBI with -// shared resources on different threads. -// Remove this as part of crbug.com/234964. +// Also calls DetachFromThread on all GLES2Decoders before the lock is released +// to maintain the invariant that all decoders are unbounded while the lock is +// not held. This is to workaround DumpRenderTree uses WGC3DIPCBI with shared +// resources on different threads. class AutoLockAndDecoderDetachThread { public: AutoLockAndDecoderDetachThread(base::Lock& lock, @@ -293,7 +292,7 @@ AutoLockAndDecoderDetachThread::AutoLockAndDecoderDetachThread( void DetachThread(GLInProcessContext* context) { if (context->GetDecoder()) - context->GetDecoder()->DetachFromThreadHack(); + context->GetDecoder()->DetachFromThread(); } AutoLockAndDecoderDetachThread::~AutoLockAndDecoderDetachThread() { |