From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9]) by lore.proxmox.com (Postfix) with ESMTPS id 031781FF16B for ; Thu, 28 Nov 2024 14:49:40 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id D993C66C2; Thu, 28 Nov 2024 14:49:41 +0100 (CET) From: Shannon Sterz To: pbs-devel@lists.proxmox.com Date: Thu, 28 Nov 2024 14:49:25 +0100 Message-Id: <20241128134925.196856-1-s.sterz@proxmox.com> X-Mailer: git-send-email 2.39.5 MIME-Version: 1.0 X-SPAM-LEVEL: Spam detection results: 0 AWL -0.039 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 Subject: [pbs-devel] [PATCH proxmox-backup] ui: check that store is set before trying to select in GCJobView X-BeenThere: pbs-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox Backup Server development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox Backup Server development discussion Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: pbs-devel-bounces@lists.proxmox.com Sender: "pbs-devel" otherwise users will get a `b.store is null` error in the console and a loading spinner is shown for a while. the issue in question seems to stem from the event handler that gets attached when the "Prune & GC Jobs" tab is opened for a specific datastore. however, that event handler should *not* be attached for the "Datastore" -> "Prune & GC Jobs" panel. it seems that the event handler does still get attached, and will fire in the "Datastore" view if it hasn't fired while opened in a specific datastore (it should only trigger a single time). that scenario seems to occur when a different tab was previously selected in a specific datastore and navigation is triggered via the side bar from the "Datastore" -> "Prune GC Jobs" to a specific datastore. that leads to the "Prune & GC Jobs" view for that specific datastore being opened very briefly in which the event handler gets attached, navigation then automatically moves to the previously selected tab. this will stop the store from updating ensuring that the event is never triggered. when we then move to the "Datastore" -> "Prune & GC Jobs" tab again the event handler will be triggered but the store of the view is null leading to the error. Signed-off-by: Shannon Sterz --- www/config/GCView.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/www/config/GCView.js b/www/config/GCView.js index a6e79fb3..51ce1cb6 100644 --- a/www/config/GCView.js +++ b/www/config/GCView.js @@ -33,7 +33,11 @@ Ext.define('PBS.config.GCJobView', { // after the store is loaded, select the row to enable the Edit,.. buttons store.rstore.proxy.on({ 'afterload': { - fn: () => view.getSelectionModel().select(0), + fn: () => { + if (view.store) { + view.getSelectionModel().select(0); + } + }, single: true, }, }); -- 2.39.5 _______________________________________________ pbs-devel mailing list pbs-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel