Skip to content

Commit 0e7974d

Browse files
committed
fix: add seh for setter
1 parent 6ca250f commit 0e7974d

File tree

3 files changed

+15
-9
lines changed

3 files changed

+15
-9
lines changed

src/legacy/api/DeviceAPI.cpp

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,11 @@ Local<Object> DeviceClass::newDevice(Player* player) {
4141

4242
// 成员函数
4343
void DeviceClass::setPlayer(Player* player) {
44-
if (player) {
45-
mWeakEntity = player->getWeakEntity();
46-
}
44+
try {
45+
if (player) {
46+
mWeakEntity = player->getWeakEntity();
47+
}
48+
} catch (...) {}
4749
}
4850

4951
Player* DeviceClass::getPlayer() { return mWeakEntity.tryUnwrap<Player>().as_ptr(); }

src/legacy/api/EntityAPI.cpp

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -206,9 +206,11 @@ std::optional<Actor*> EntityClass::tryExtractActor(Local<Value> v) {
206206

207207
// 成员函数
208208
void EntityClass::set(Actor* actor) {
209-
if (actor) {
210-
mWeakEntity = actor->getWeakEntity();
211-
}
209+
try {
210+
if (actor) {
211+
mWeakEntity = actor->getWeakEntity();
212+
}
213+
} catch (...) {}
212214
}
213215

214216
WeakStorageEntity& WeakStorageEntity::operator=(WeakStorageEntity const&) = default;

src/legacy/api/PlayerAPI.cpp

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -720,9 +720,11 @@ Local<Value> McClass::broadcast(const Arguments& args) {
720720

721721
// 成员函数
722722
void PlayerClass::set(Player* player) {
723-
if (player) {
724-
mWeakEntity = player->getWeakEntity();
725-
}
723+
try {
724+
if (player) {
725+
mWeakEntity = player->getWeakEntity();
726+
}
727+
} catch (...) {}
726728
}
727729

728730
Player* PlayerClass::get() { return mWeakEntity.tryUnwrap<Player>().as_ptr(); }

0 commit comments

Comments
 (0)