summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/memory-report.el
diff options
context:
space:
mode:
authorYikai Zhao <i@blahgeek.com>2021-08-14 13:46:30 +0200
committerLars Ingebrigtsen <larsi@gnus.org>2021-08-14 13:46:37 +0200
commitadb6c3f1a4cc5ec3d26bfb2311dfc87b965153a0 (patch)
tree09c17b004c1081dfd11353038f64d3e7b11cd5c8 /lisp/emacs-lisp/memory-report.el
parent37d48edf6d406a4730caa0393f7695de2bfadfcc (diff)
downloademacs-adb6c3f1a4cc5ec3d26bfb2311dfc87b965153a0.tar.gz
emacs-adb6c3f1a4cc5ec3d26bfb2311dfc87b965153a0.tar.bz2
emacs-adb6c3f1a4cc5ec3d26bfb2311dfc87b965153a0.zip
Fix memory-report counting of vector/hash table sizes
* lisp/emacs-lisp/memory-report.el (memory-report--object-size-1): Count element values in vectors and hash tables. Copyright-paperwork-exempt: yes
Diffstat (limited to 'lisp/emacs-lisp/memory-report.el')
-rw-r--r--lisp/emacs-lisp/memory-report.el5
1 files changed, 1 insertions, 4 deletions
diff --git a/lisp/emacs-lisp/memory-report.el b/lisp/emacs-lisp/memory-report.el
index 1125dde4055..aee2a0079ca 100644
--- a/lisp/emacs-lisp/memory-report.el
+++ b/lisp/emacs-lisp/memory-report.el
@@ -230,8 +230,7 @@ by counted more than once."
(let ((total (+ (memory-report--size 'vector)
(* (memory-report--size 'object) (length value)))))
(cl-loop for elem across value
- do (setf (gethash elem counted) t)
- (cl-incf total (memory-report--object-size counted elem)))
+ do (cl-incf total (memory-report--object-size counted elem)))
total))
(cl-defmethod memory-report--object-size-1 (counted (value hash-table))
@@ -239,8 +238,6 @@ by counted more than once."
(* (memory-report--size 'object) (hash-table-size value)))))
(maphash
(lambda (key elem)
- (setf (gethash key counted) t)
- (setf (gethash elem counted) t)
(cl-incf total (memory-report--object-size counted key))
(cl-incf total (memory-report--object-size counted elem)))
value)