Chromium Code Reviews| Index: src/api.cc |
| diff --git a/src/api.cc b/src/api.cc |
| index c7ebc7714f57a052f99964e44e412a2d66770c7d..cb879f41dd38e52476a298ed5daf554ab2f8523d 100644 |
| --- a/src/api.cc |
| +++ b/src/api.cc |
| @@ -1536,7 +1536,10 @@ void ObjectTemplate::SetInternalFieldCount(int value) { |
| ScriptCompiler::CachedData::CachedData(const uint8_t* data_, int length_, |
| BufferPolicy buffer_policy_) |
| - : data(data_), length(length_), buffer_policy(buffer_policy_) {} |
| + : data(data_), |
| + length(length_), |
| + rejected(false), |
| + buffer_policy(buffer_policy_) {} |
| ScriptCompiler::CachedData::~CachedData() { |
| @@ -1752,6 +1755,8 @@ Local<UnboundScript> ScriptCompiler::CompileUnbound( |
| source->cached_data = new CachedData( |
| script_data->data(), script_data->length(), CachedData::BufferOwned); |
| script_data->ReleaseDataOwnership(); |
| + } else if (options == kConsumeParserCache || options == kConsumeCodeCache) { |
| + source->cached_data->rejected = (script_data == NULL); |
|
vogelheim
2014/11/13 13:01:15
I find this a bit weird...
- I expected ..->rejec
vogelheim
2014/11/13 13:03:00
If ScriptData is the "internal" structure (vs Cach
|
| } |
| delete script_data; |
|
vogelheim
2014/11/13 13:01:15
If script_data was nullified along the way, this i
|
| } |