| OLD | NEW | 
|---|
| 1 #include <AdblockPlus.h> | 1 #include <AdblockPlus.h> | 
| 2 | 2 | 
| 3 namespace | 3 namespace | 
| 4 { | 4 { | 
| 5   std::string fromV8String(v8::Handle<v8::Value> value) | 5   std::string fromV8String(v8::Handle<v8::Value> value) | 
| 6   { | 6   { | 
| 7     v8::String::Utf8Value stringValue(value); | 7     v8::String::Utf8Value stringValue(value); | 
| 8     if (stringValue.length()) | 8     if (stringValue.length()) | 
| 9       return std::string(*stringValue, stringValue.length()); | 9       return std::string(*stringValue, stringValue.length()); | 
| 10     else | 10     else | 
| 11       return std::string(); | 11       return std::string(); | 
| 12   } | 12   } | 
| 13 | 13 | 
| 14   v8::Local<v8::String> toV8String(const std::string& str) | 14   v8::Local<v8::String> toV8String(const std::string& str) | 
| 15   { | 15   { | 
| 16     return v8::String::New(str.c_str(), str.length()); | 16     return v8::String::New(str.c_str(), str.length()); | 
| 17   } | 17   } | 
| 18 } | 18 } | 
| 19 | 19 | 
| 20 AdblockPlus::JsValue::JsValue(AdblockPlus::JsEngine& jsEngine, | 20 AdblockPlus::JsValue::JsValue(AdblockPlus::JsEngine& jsEngine, | 
| 21       v8::Handle<v8::Value> value) | 21       v8::Handle<v8::Value> value) | 
| 22     : jsEngine(jsEngine), | 22     : jsEngine(jsEngine), | 
| 23       value(v8::Persistent<v8::Value>::New(jsEngine.isolate, value)) | 23       value(v8::Persistent<v8::Value>::New(jsEngine.isolate, value)) | 
| 24 { | 24 { | 
| 25 } | 25 } | 
| 26 | 26 | 
| 27 AdblockPlus::JsValue::~JsValue() | 27 AdblockPlus::JsValue::~JsValue() | 
| 28 { | 28 { | 
|  | 29   const JsEngine::Context context(jsEngine); | 
| 29   value.Dispose(jsEngine.isolate); | 30   value.Dispose(jsEngine.isolate); | 
| 30 } | 31 } | 
| 31 | 32 | 
| 32 bool AdblockPlus::JsValue::IsUndefined() const | 33 bool AdblockPlus::JsValue::IsUndefined() const | 
| 33 { | 34 { | 
| 34   const JsEngine::Context context(jsEngine); | 35   const JsEngine::Context context(jsEngine); | 
| 35   return value->IsUndefined(); | 36   return value->IsUndefined(); | 
| 36 } | 37 } | 
| 37 | 38 | 
| 38 bool AdblockPlus::JsValue::IsNull() const | 39 bool AdblockPlus::JsValue::IsNull() const | 
| (...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 205   const v8::TryCatch tryCatch; | 206   const v8::TryCatch tryCatch; | 
| 206   v8::Persistent<v8::Function> func = v8::Persistent<v8::Function>::Cast(value); | 207   v8::Persistent<v8::Function> func = v8::Persistent<v8::Function>::Cast(value); | 
| 207   v8::Local<v8::Value> result = func->Call(thisObj, argc, argv); | 208   v8::Local<v8::Value> result = func->Call(thisObj, argc, argv); | 
| 208   delete argv; | 209   delete argv; | 
| 209 | 210 | 
| 210   if (tryCatch.HasCaught()) | 211   if (tryCatch.HasCaught()) | 
| 211     throw AdblockPlus::JsError(tryCatch.Exception(), tryCatch.Message()); | 212     throw AdblockPlus::JsError(tryCatch.Exception(), tryCatch.Message()); | 
| 212 | 213 | 
| 213   return JsValuePtr(new JsValue(jsEngine, result)); | 214   return JsValuePtr(new JsValue(jsEngine, result)); | 
| 214 } | 215 } | 
| OLD | NEW | 
|---|