From 4248999294188d0276180786fb299d2579c34ebe Mon Sep 17 00:00:00 2001 From: thePR0M3TH3AN <53631862+PR0M3TH3AN@users.noreply.github.com> Date: Sun, 25 Jan 2026 21:07:54 -0500 Subject: [PATCH] Guard r2 settings bucket lookup --- js/services/r2Service.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/js/services/r2Service.js b/js/services/r2Service.js index a6c1eaaf..943fb060 100644 --- a/js/services/r2Service.js +++ b/js/services/r2Service.js @@ -611,7 +611,11 @@ class R2Service { // If using StorageService (settings.isLegacy === false), we do NOT save to legacy store // to avoid partial state or overwriting. We just return the manual entry. if (settings.isLegacy !== false) { - let entry = this.cloudflareSettings.buckets?.[npub]; + const currentSettings = this.getSettings(); + if (!this.cloudflareSettings) { + this.cloudflareSettings = currentSettings; + } + let entry = currentSettings.buckets?.[npub]; let savedEntry = entry; if ( @@ -620,7 +624,7 @@ class R2Service { entry.publicBaseUrl !== manualEntry.publicBaseUrl ) { const updatedSettings = await saveR2Settings( - mergeBucketEntry(this.getSettings(), npub, manualEntry) + mergeBucketEntry(currentSettings, npub, manualEntry) ); this.setSettings(updatedSettings); savedEntry = updatedSettings.buckets?.[npub] || manualEntry;