[ue] Closes #2557, dereference UTrackEntry in TrackEntries

This commit is contained in:
Mario Zechner 2025-04-17 14:25:41 +02:00
parent ed0206dde3
commit 0fd206d3ca
2 changed files with 11 additions and 0 deletions

View File

@ -35,6 +35,7 @@
using namespace spine;
void UTrackEntry::SetTrackEntry(TrackEntry *trackEntry) {
if (entry) entry->setRendererObject(nullptr);
this->entry = trackEntry;
if (entry) entry->setRendererObject((void *) this);
}
@ -80,6 +81,11 @@ USpineSkeletonAnimationComponent::USpineSkeletonAnimationComponent() {
void USpineSkeletonAnimationComponent::BeginPlay() {
Super::BeginPlay();
for (UTrackEntry* entry : trackEntries) {
if (entry && entry->GetTrackEntry()) {
entry->GetTrackEntry()->setRendererObject(nullptr);
}
}
trackEntries.Empty();
}

View File

@ -108,6 +108,11 @@ void USpineWidget::SynchronizeProperties() {
} else {
slateWidget->SetData(nullptr);
}
for (UTrackEntry* entry : trackEntries) {
if (entry && entry->GetTrackEntry()) {
entry->GetTrackEntry()->setRendererObject(nullptr);
}
}
trackEntries.Empty();
}
}