LogError("You should register widget id in ON_WIDGET_START");
return;
}
+ Catch(DPL::Exception) {
+ LogError("Failed to create private object for JSWidget");
+ return;
+ }
}
}
void JSWidget::finalize(JSObjectRef object)
{
LogDebug("entered");
+ LogDebug("Object: " << object);
JSWidgetPrivateObject* priv =
static_cast<JSWidgetPrivateObject*>(JSObjectGetPrivate(object));
- JSValueUnprotect(priv->getContext(),
- priv->getObject()->preferencesObject);
+ if (priv) {
+ JSValueUnprotect(priv->getContext(),
+ priv->getObject()->preferencesObject);
- delete priv;
- LogDebug("private object is released");
+ delete priv;
+ LogDebug("private object is released");
+ } else {
+ LogDebug("private object wasn't created");
+ }
}
void JSWidget::acquireGlobalContext(java_script_context_t global_context,