diff options
author | Yuuki Harano <masm+github@masm11.me> | 2021-04-18 15:30:29 +0900 |
---|---|---|
committer | Yuuki Harano <masm+github@masm11.me> | 2021-04-18 15:30:29 +0900 |
commit | de46c7796e635faf8647a7c6a5ae34fda9adae3b (patch) | |
tree | 1a2c5f85416a642300ca217b3d85ff1be5d9f35e /lisp/emacs-lisp/memory-report.el | |
parent | fb5f3e694b0f6e2bccfc2124555c986fdc409cd0 (diff) | |
parent | 5c07cd0f156217db268ccb9fa64566fb429c4257 (diff) | |
download | emacs-de46c7796e635faf8647a7c6a5ae34fda9adae3b.tar.gz emacs-de46c7796e635faf8647a7c6a5ae34fda9adae3b.tar.bz2 emacs-de46c7796e635faf8647a7c6a5ae34fda9adae3b.zip |
Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs into feature/pgtk
Diffstat (limited to 'lisp/emacs-lisp/memory-report.el')
-rw-r--r-- | lisp/emacs-lisp/memory-report.el | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/lisp/emacs-lisp/memory-report.el b/lisp/emacs-lisp/memory-report.el index ecbca280e59..f4f03133b0f 100644 --- a/lisp/emacs-lisp/memory-report.el +++ b/lisp/emacs-lisp/memory-report.el @@ -182,7 +182,7 @@ by counted more than once." (cl-defmethod memory-report--object-size-1 (_ (value symbol)) ;; Don't count global symbols -- makes sizes of lists of symbols too - ;; heavey. + ;; heavy. (if (intern-soft value obarray) 0 (memory-report--size 'symbol))) @@ -214,14 +214,14 @@ by counted more than once." (setf (gethash value counted) t) (when (car value) (cl-incf total (memory-report--object-size counted (car value)))) - (if (cdr value) - (if (consp (cdr value)) - (if (gethash (cdr value) counted) - (setq value nil) - (setq value (cdr value))) - (cl-incf total (memory-report--object-size counted (cdr value))) - (setq value nil)) - (setq value nil))) + (let ((next (cdr value))) + (setq value (when next + (if (consp next) + (unless (gethash next counted) + (cdr value)) + (cl-incf total (memory-report--object-size + counted next)) + nil))))) total)) (cl-defmethod memory-report--object-size-1 (counted (value vector)) |