From 54403eb901875fd69913343850872fba50d94a05 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=C3=A1s=20Mota?= Date: Mon, 29 Dec 2025 20:56:37 +0000 Subject: [PATCH] fix potential panic when acessing empty list (#88) while fixing #87, noticed a couple lines down that if the containers spec has more than 1 container, the code probably intends to set Spec.Containers to a list with a single container, but is instead setting it to an empty list. The very next lines are trying to access the 1st element of this empty list, which will result in a panic --- internal/controller/nbroutingpeer_controller.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/controller/nbroutingpeer_controller.go b/internal/controller/nbroutingpeer_controller.go index 404d91d..8277899 100644 --- a/internal/controller/nbroutingpeer_controller.go +++ b/internal/controller/nbroutingpeer_controller.go @@ -242,7 +242,7 @@ func (r *NBRoutingPeerReconciler) handleDeployment(ctx context.Context, req ctrl updatedDeployment.Spec.Template.ObjectMeta.Labels = podLabels updatedDeployment.Spec.Template.Spec.Volumes = nbrp.Spec.Volumes if len(updatedDeployment.Spec.Template.Spec.Containers) != 1 { - updatedDeployment.Spec.Template.Spec.Containers = []corev1.Container{} + updatedDeployment.Spec.Template.Spec.Containers = []corev1.Container{{}} } updatedDeployment.Spec.Template.Spec.Containers[0].Name = "netbird" updatedDeployment.Spec.Template.Spec.Containers[0].Image = r.ClientImage