| Index: third_party/WebKit/Source/core/fileapi/FileReaderSync.cpp
 | 
| diff --git a/third_party/WebKit/Source/core/fileapi/FileReaderSync.cpp b/third_party/WebKit/Source/core/fileapi/FileReaderSync.cpp
 | 
| index 2b967df96e5a43a235f75466b039ad1598954ae1..05dc1e43ef4be857448212d4450f97d2f0c3c0b1 100644
 | 
| --- a/third_party/WebKit/Source/core/fileapi/FileReaderSync.cpp
 | 
| +++ b/third_party/WebKit/Source/core/fileapi/FileReaderSync.cpp
 | 
| @@ -36,10 +36,36 @@
 | 
|  #include "core/fileapi/Blob.h"
 | 
|  #include "core/fileapi/FileError.h"
 | 
|  #include "core/fileapi/FileReaderLoader.h"
 | 
| +#include "platform/Histogram.h"
 | 
|  
 | 
|  namespace blink {
 | 
|  
 | 
| -FileReaderSync::FileReaderSync() {}
 | 
| +namespace {
 | 
| +// These values are written to logs.  New enum values can be added, but existing
 | 
| +// enums must never be renumbered or deleted and reused.
 | 
| +enum class WorkerType {
 | 
| +  OTHER = 0,
 | 
| +  DEDICATED_WORKER = 1,
 | 
| +  SHARED_WORKER = 2,
 | 
| +  SERVICE_WORKER = 3,
 | 
| +  MAX
 | 
| +};
 | 
| +}  // namespace
 | 
| +
 | 
| +FileReaderSync::FileReaderSync(ExecutionContext* context) {
 | 
| +  WorkerType type = WorkerType::OTHER;
 | 
| +  if (context->isDedicatedWorkerGlobalScope())
 | 
| +    type = WorkerType::DEDICATED_WORKER;
 | 
| +  else if (context->isSharedWorkerGlobalScope())
 | 
| +    type = WorkerType::SHARED_WORKER;
 | 
| +  else if (context->isServiceWorkerGlobalScope())
 | 
| +    type = WorkerType::SERVICE_WORKER;
 | 
| +  DEFINE_THREAD_SAFE_STATIC_LOCAL(
 | 
| +      EnumerationHistogram, workerTypeHistogram,
 | 
| +      new EnumerationHistogram("FileReaderSync.WorkerType",
 | 
| +                               static_cast<int>(WorkerType::MAX)));
 | 
| +  workerTypeHistogram.count(static_cast<int>(type));
 | 
| +}
 | 
|  
 | 
|  DOMArrayBuffer* FileReaderSync::readAsArrayBuffer(
 | 
|      ScriptState* scriptState,
 | 
| 
 |