From b83b2901c8f6a06eb800188c17ca617115e54623 Mon Sep 17 00:00:00 2001
From: Alexandr Stelnykovych <alexandr.stelnykovych@ivpn.net>
Date: Fri, 28 Mar 2025 17:20:49 +0200
Subject: [PATCH] [updates] fix: skip PurgeDirectory during backup

---
 service/updates/upgrade.go | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/service/updates/upgrade.go b/service/updates/upgrade.go
index 9d18de98..250baede 100644
--- a/service/updates/upgrade.go
+++ b/service/updates/upgrade.go
@@ -73,6 +73,10 @@ func (u *Updater) upgradeMoveFiles(downloader *Downloader) error {
 			if slices.Contains(u.cfg.Ignore, file.Name()) {
 				continue
 			}
+			// ignore PurgeDirectory itself
+			if strings.EqualFold(u.cfg.PurgeDirectory, filepath.Join(u.cfg.Directory, file.Name())) {
+				continue
+			}
 
 			// Otherwise, move file to purge dir.
 			src := filepath.Join(u.cfg.Directory, file.Name())