Chromium Code Reviews| 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..85cba56d496fcc8ac24c092bd51518ffaf93817c 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 { |
| + DEDICATED_WORKER = 0, |
| + SHARED_WORKER = 1, |
| + SERVICE_WORKER = 2, |
| + OTHER = 3, |
|
kinuko
2017/02/10 00:41:38
nit: as far as we follow the above comment values
Marijn Kruisselbrink
2017/02/10 17:42:53
The documentation at https://chromium.googlesource
|
| + 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, |