summaryrefslogtreecommitdiff
path: root/Plugins/skins/SkinLib/V8Script.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Plugins/skins/SkinLib/V8Script.cpp')
-rw-r--r--Plugins/skins/SkinLib/V8Script.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/Plugins/skins/SkinLib/V8Script.cpp b/Plugins/skins/SkinLib/V8Script.cpp
index fb32181..ff31443 100644
--- a/Plugins/skins/SkinLib/V8Script.cpp
+++ b/Plugins/skins/SkinLib/V8Script.cpp
@@ -103,9 +103,16 @@ bool V8Script::isValid()
return !context.IsEmpty() && !drawFunction.IsEmpty();
}
-static Handle<Object> get(Local<Object> obj, const char *field)
+static Handle<Object> get(Handle<Object> obj, const char *field)
{
- return Handle<Object>::Cast(obj->Get(String::New(field)));
+ HandleScope scope;
+
+ Local<Value> v = obj->Get(String::New(field));
+ _ASSERT(!v.IsEmpty());
+ _ASSERT(!v->IsUndefined());
+ _ASSERT(v->IsObject());
+
+ return scope.Close( Handle<Object>::Cast(v) );
}
void V8Script::fillWrappers(DialogState *state, SkinOptions *opts, bool configure)