| Index: third_party/WebKit/Source/core/fetch/Resource.cpp
|
| diff --git a/third_party/WebKit/Source/core/fetch/Resource.cpp b/third_party/WebKit/Source/core/fetch/Resource.cpp
|
| index ffca9956ff1d7ac0de45c9244afc2906c3751982..d8c05730efdf538eba0b01f7d2cdc9f26fbd1471 100644
|
| --- a/third_party/WebKit/Source/core/fetch/Resource.cpp
|
| +++ b/third_party/WebKit/Source/core/fetch/Resource.cpp
|
| @@ -41,6 +41,7 @@
|
| #include "public/platform/Platform.h"
|
| #include "public/platform/WebProcessMemoryDump.h"
|
| #include "wtf/CurrentTime.h"
|
| +#include "wtf/LeakAnnotations.h"
|
| #include "wtf/MathExtras.h"
|
| #include "wtf/StdLibExtras.h"
|
| #include "wtf/Vector.h"
|
| @@ -997,7 +998,13 @@ ResourcePriority Resource::priorityFromClients()
|
|
|
| Resource::ResourceCallback* Resource::ResourceCallback::callbackHandler()
|
| {
|
| - DEFINE_STATIC_LOCAL(OwnPtrWillBePersistent<ResourceCallback>, callbackHandler, (adoptPtrWillBeNoop(new ResourceCallback)));
|
| + // Oilpan + LSan: as the callbackHandler() singleton is used by Resource
|
| + // and ResourcePtr finalizers, it cannot be released upon shutdown in
|
| + // preparation for leak detection.
|
| + //
|
| + // Keep it out of LSan's reach instead.
|
| + WTF_ANNOTATE_SCOPED_MEMORY_LEAK;
|
| + DEFINE_STATIC_LOCAL_NO_REGISTER(OwnPtrWillBePersistent<ResourceCallback>, callbackHandler, (adoptPtrWillBeNoop(new ResourceCallback)));
|
| return callbackHandler.get();
|
| }
|
|
|
|
|