4.18 crash after destroying DestructibleComponent

Here’s the new code:

struct APEXDESTRUCTION_API FDestructibleActorDeferredReleaseCallback : IDeferredReleaseCallback
{
	FDestructibleActorDeferredReleaseCallback(apex::DestructibleActor* Actor, FPhysScene* InOwningScene)
		: Destructible(Actor)
		, OwningScene(InOwningScene)
	{
	}

	virtual void ExecCommand()
	{
		PxRigidDynamic** PActorBuffer = NULL;
		PxU32 PActorCount = 0;
		int32 SceneType = INDEX_NONE;

		if (Destructible->acquirePhysXActorBuffer(PActorBuffer, PActorCount, apex::DestructiblePhysXActorQueryFlags::Dynamic))
		{
			while(PActorCount--)
			{
				if (PxRigidDynamic* PActor = *PActorBuffer++)
				{
					if (SceneType == INDEX_NONE)
					{
						if (PxScene* PScene = PActor->getScene())
						{
							SceneType = PScene == OwningScene->GetPhysXScene(PST_Sync) ? PST_Sync : PST_Async;
						}
					}

					if (SceneType != INDEX_NONE)
					{
						OwningScene->RemoveActiveRigidActor(SceneType, PActor);
					}
				}
			}
			Destructible->releasePhysXActorBuffer();
		}
		Destructible->release();

	}

private:

	apex::DestructibleActor* Destructible;
	FPhysScene* OwningScene;
};