| Index: src/JsValue.cpp | 
| diff --git a/src/JsValue.cpp b/src/JsValue.cpp | 
| index ce08b5cae2a59b55f7d96f47f3a53d437a84ed3e..daff97a902e014a91b8f245232d087dfcdb9556e 100644 | 
| --- a/src/JsValue.cpp | 
| +++ b/src/JsValue.cpp | 
| @@ -27,7 +27,7 @@ using namespace AdblockPlus; | 
| AdblockPlus::JsValue::JsValue(AdblockPlus::JsEnginePtr jsEngine, | 
| v8::Handle<v8::Value> value) | 
| : jsEngine(jsEngine), | 
| -      value(new v8::Persistent<v8::Value>(jsEngine->GetIsolate(), value)) | 
| +      value(new v8::Global<v8::Value>(jsEngine->GetIsolate(), value)) | 
| { | 
| } | 
|  | 
| @@ -41,7 +41,7 @@ AdblockPlus::JsValue::JsValue(const JsValue& src) | 
| : jsEngine(src.jsEngine) | 
| { | 
| const JsContext context(*src.jsEngine); | 
| -  value.reset(new v8::Persistent<v8::Value>(src.jsEngine->GetIsolate(), *src.value)); | 
| +  value.reset(new v8::Global<v8::Value>(src.jsEngine->GetIsolate(), *src.value)); | 
| } | 
|  | 
| AdblockPlus::JsValue::~JsValue() | 
| @@ -49,7 +49,6 @@ AdblockPlus::JsValue::~JsValue() | 
| if (value) | 
| { | 
| const JsContext context(*jsEngine); | 
| -    value->Dispose(); | 
| value.reset(); | 
| } | 
| } | 
| @@ -57,10 +56,16 @@ AdblockPlus::JsValue::~JsValue() | 
| JsValue& AdblockPlus::JsValue::operator=(const JsValue& src) | 
| { | 
| const JsContext context(*src.jsEngine); | 
| -  if (value) | 
| -    value->Dispose(); | 
| jsEngine = src.jsEngine; | 
| -  value.reset(new v8::Persistent<v8::Value>(src.jsEngine->GetIsolate(), *src.value)); | 
| +  value.reset(new v8::Global<v8::Value>(src.jsEngine->GetIsolate(), *src.value)); | 
| + | 
| +  return *this; | 
| +} | 
| + | 
| +JsValue& AdblockPlus::JsValue::operator=(JsValue&& src) | 
| +{ | 
| +  jsEngine = std::move(src.jsEngine); | 
| +  value = std::move(src.value); | 
|  | 
| return *this; | 
| } | 
| @@ -213,7 +218,7 @@ void AdblockPlus::JsValue::SetProperty(const std::string& name, const JsValue& v | 
| void AdblockPlus::JsValue::SetProperty(const std::string& name, bool val) | 
| { | 
| const JsContext context(*jsEngine); | 
| -  SetProperty(name, v8::Boolean::New(val)); | 
| +  SetProperty(name, v8::Boolean::New(jsEngine->GetIsolate(), val)); | 
| } | 
|  | 
| std::string AdblockPlus::JsValue::GetClass() const | 
|  |