From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) by lore.proxmox.com (Postfix) with ESMTPS id 295831FF146 for ; Tue, 12 May 2026 19:32:19 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 260101B550; Tue, 12 May 2026 19:32:06 +0200 (CEST) From: Stefan Hanreich To: pve-devel@lists.proxmox.com Subject: [PATCH pve-manager v5 19/29] sdn: fabrics view: handle case where interfaces are deleted Date: Tue, 12 May 2026 19:31:34 +0200 Message-ID: <20260512173145.596958-20-s.hanreich@proxmox.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260512173145.596958-1-s.hanreich@proxmox.com> References: <20260512173145.596958-1-s.hanreich@proxmox.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1778607004216 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.618 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Message-ID-Hash: VYLT7PIVPT7ZGWV5T7OXJ4E4ZK6Q7VZ3 X-Message-ID-Hash: VYLT7PIVPT7ZGWV5T7OXJ4E4ZK6Q7VZ3 X-MailFrom: s.hanreich@proxmox.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.10 Precedence: list List-Id: Proxmox VE development discussion List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Previously when a fabric had interfaces configured, but they have been deleted in the pending configuration then the fabric view would fail to render because the interfaces property is then the string 'deleted', causing the iteration below to fail. Fix this by returning early and rendering nothing if no interfaces are configured in the pending configuration but in the running configuration. Signed-off-by: Stefan Hanreich --- www/manager6/sdn/FabricsView.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/www/manager6/sdn/FabricsView.js b/www/manager6/sdn/FabricsView.js index 093a70f35..21b88bab5 100644 --- a/www/manager6/sdn/FabricsView.js +++ b/www/manager6/sdn/FabricsView.js @@ -83,6 +83,10 @@ Ext.define('PVE.sdn.Fabric.View', { renderer: function (value, metaData, rec) { const interfaces = rec.data.pending?.interfaces || rec.data.interfaces || []; + if (interfaces === 'deleted') { + return; + } + let names = interfaces.map((iface) => { const properties = Proxmox.Utils.parsePropertyString(iface); return properties.name; -- 2.47.3