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
|
} |