aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric Abrahamsen2015-04-01 04:55:34 +0000
committerKatsumi Yamaoka2015-04-01 04:55:34 +0000
commit5ba4fbd9e3cc2fc31e5ec3ae22f1695800b86d21 (patch)
tree1c2b2e16d12c82d21667d7fbd96b8b88fc80dfc5
parent8d1d8fc474bd9ed22cbe8b80125c8ce89dc62b57 (diff)
downloademacs-5ba4fbd9e3cc2fc31e5ec3ae22f1695800b86d21.tar.gz
emacs-5ba4fbd9e3cc2fc31e5ec3ae22f1695800b86d21.zip
lisp/gnus/registry.el (registry-prune): Fix registry pruning routine
-rw-r--r--lisp/gnus/ChangeLog6
-rw-r--r--lisp/gnus/registry.el9
2 files changed, 11 insertions, 4 deletions
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index 5b10d45e814..95ead23cb51 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -1,3 +1,9 @@
12015-04-01 Eric Abrahamsen <eric@ericabrahamsen.net>
2
3 * registry.el (registry-prune): Re-use `registry-full' in
4 `registry-prune'. It's a bit of redundant work, but safer.
5 Also ensure that target-size is an integer.
6
12015-03-31 Daiki Ueno <ueno@gnu.org> 72015-03-31 Daiki Ueno <ueno@gnu.org>
2 8
3 * plstore.el (plstore--decrypt): Clear entry in 9 * plstore.el (plstore--decrypt): Clear entry in
diff --git a/lisp/gnus/registry.el b/lisp/gnus/registry.el
index e4ba0bc547f..96a89fca1b7 100644
--- a/lisp/gnus/registry.el
+++ b/lisp/gnus/registry.el
@@ -341,11 +341,12 @@ from the front of the list are deleted first.
341 341
342Returns the number of deleted entries." 342Returns the number of deleted entries."
343 (let ((size (registry-size db)) 343 (let ((size (registry-size db))
344 (target-size (- (oref db max-size) 344 (target-size
345 (* (oref db max-size) 345 (floor (- (oref db max-size)
346 (oref db prune-factor)))) 346 (* (oref db max-size)
347 (oref db prune-factor)))))
347 candidates) 348 candidates)
348 (if (> size (oref db max-size)) 349 (if (registry-full db)
349 (progn 350 (progn
350 (setq candidates 351 (setq candidates
351 (registry-collect-prune-candidates 352 (registry-collect-prune-candidates