projects
/
platform
/
core
/
uifw
/
dali-toolkit.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fixed crash while wrapping a Control as an actor in JavaScript plugin
[platform/core/uifw/dali-toolkit.git]
/
plugins
/
dali-script-v8
/
src
/
actors
/
actor-wrapper.cpp
diff --git
a/plugins/dali-script-v8/src/actors/actor-wrapper.cpp
b/plugins/dali-script-v8/src/actors/actor-wrapper.cpp
index
7b9b158
..
149edb9
100644
(file)
--- a/
plugins/dali-script-v8/src/actors/actor-wrapper.cpp
+++ b/
plugins/dali-script-v8/src/actors/actor-wrapper.cpp
@@
-20,6
+20,7
@@
// EXTERNAL INCLUDES
#include <dali/public-api/object/type-registry.h>
// EXTERNAL INCLUDES
#include <dali/public-api/object/type-registry.h>
+#include <dali-toolkit/public-api/controls/control.h>
// INTERNAL INCLUDES
#include <actors/layer-api.h>
// INTERNAL INCLUDES
#include <actors/layer-api.h>
@@
-318,7
+319,10
@@
ActorWrapper::ActorWrapper( Actor actor,
v8::Handle<v8::Object> ActorWrapper::WrapActor(v8::Isolate* isolate, Actor actor )
{
v8::EscapableHandleScope handleScope( isolate );
v8::Handle<v8::Object> ActorWrapper::WrapActor(v8::Isolate* isolate, Actor actor )
{
v8::EscapableHandleScope handleScope( isolate );
- v8::Local<v8::Object> object = WrapActor( isolate, actor, GetActorType( actor.GetTypeName() ) );
+
+ // Check whether the actor is a Control
+ ActorWrapper::ActorType type = Toolkit::Control::DownCast(actor) ? ACTOR : GetActorType( actor.GetTypeName() );
+ v8::Local<v8::Object> object = WrapActor( isolate, actor, type );
return handleScope.Escape( object );
}
return handleScope.Escape( object );
}