From 886422d2e001787b0d11a49ea8876883f26929e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=96=E7=95=8C?= Date: Mon, 21 Sep 2026 22:00:03 +0800 Subject: [PATCH] Fix FakeIP reset failing on missing buckets --- experimental/cachefile/fakeip.go | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/experimental/cachefile/fakeip.go b/experimental/cachefile/fakeip.go index 0eff2ebe..814c2048 100644 --- a/experimental/cachefile/fakeip.go +++ b/experimental/cachefile/fakeip.go @@ -189,14 +189,15 @@ func (c *CacheFile) FakeIPLoadDomain(domain string, isIPv6 bool) (netip.Addr, bo func (c *CacheFile) FakeIPReset() error { return c.batch(func(tx *bbolt.Tx) error { - err := tx.DeleteBucket(bucketFakeIP) - if err != nil { - return err + for _, bucketName := range [][]byte{bucketFakeIP, bucketFakeIPDomain4, bucketFakeIPDomain6} { + if tx.Bucket(bucketName) == nil { + continue + } + err := tx.DeleteBucket(bucketName) + if err != nil { + return err + } } - err = tx.DeleteBucket(bucketFakeIPDomain4) - if err != nil { - return err - } - return tx.DeleteBucket(bucketFakeIPDomain6) + return nil }) }