when destroying a SceneAsset, if the object is an instance, call destroyInstance on the owner of instance rather than deleting the object directly
This commit is contained in:
@@ -112,7 +112,11 @@ extern "C"
|
|||||||
|
|
||||||
EMSCRIPTEN_KEEPALIVE void SceneAsset_destroy(TSceneAsset *tSceneAsset) {
|
EMSCRIPTEN_KEEPALIVE void SceneAsset_destroy(TSceneAsset *tSceneAsset) {
|
||||||
auto *asset = reinterpret_cast<SceneAsset*>(tSceneAsset);
|
auto *asset = reinterpret_cast<SceneAsset*>(tSceneAsset);
|
||||||
delete asset;
|
if(asset->isInstance()) {
|
||||||
|
asset->getInstanceOwner()->destroyInstance(asset);
|
||||||
|
} else {
|
||||||
|
delete asset;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
EMSCRIPTEN_KEEPALIVE void SceneAsset_addToScene(TSceneAsset *tSceneAsset, TScene *tScene) {
|
EMSCRIPTEN_KEEPALIVE void SceneAsset_addToScene(TSceneAsset *tSceneAsset, TScene *tScene) {
|
||||||
|
|||||||
Reference in New Issue
Block a user