Ignored actors still damaged when applying radial damage

Hi, I want to apply a radial damage but not including all AI characters, so I do this before apply radius damage:

bool UArStatics::ApplyRadiusDamage(const UObject* WorldContextObject, float BaseDamage, const FVector& Origin, float DamageRadius, TSubclassOf<UDamageType> DamageTypeClass, TArray<AActor*>& IgnoreActors, AActor* DamageCauser, AController* InstigatedByController, bool bDoFullDamage, ECollisionChannel DamagePreventionChannel, bool bIgnoreAI /*= false*/)
{
	if (bIgnoreAI) {
		TArray<FOverlapResult> OverlapResults;
		WorldContextObject->GetWorld()->OverlapMultiByChannel(OverlapResults, Origin, FQuat::Identity, DamagePreventionChannel, FCollisionShape::MakeSphere(DamageRadius));
		for (FOverlapResult OverlapResult : OverlapResults) {
			AActor* OneActor = OverlapResult.GetActor();
			if (OneActor && OneActor->GetClass()->IsChildOf(AArAICharacter::StaticClass())) {
				IgnoreActors.AddUnique(OneActor);
			}
		}
	}

	return UGameplayStatics::ApplyRadialDamage(WorldContextObject, BaseDamage, Origin, DamageRadius, DamageTypeClass, IgnoreActors, DamageCauser, InstigatedByController, bDoFullDamage, DamagePreventionChannel);


}

In debug view, IgnoreActors List contains all AI characters I want to ignore, but my ai characters still be damaged anyway, if anyone knows why, please help me, thanks so much!

This is a logic bug in my code if I remember correctly and I will mark this as solved now.