From b7422d8cbd40ff3333aed1b909de044eacf800a4 Mon Sep 17 00:00:00 2001 From: Austin Diviness Date: Sun, 5 Jul 2015 14:30:49 -0600 Subject: [PATCH] (Bug#20216): fixed infinite loop when trying to disassemble a non-function --- lisp/emacs-lisp/disass.el | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lisp/emacs-lisp/disass.el b/lisp/emacs-lisp/disass.el index 15489fc..d2375df 100644 --- a/lisp/emacs-lisp/disass.el +++ b/lisp/emacs-lisp/disass.el @@ -77,7 +77,9 @@ redefine OBJECT if it is a symbol." args) (while (symbolp obj) (setq name obj - obj (symbol-function obj))) + obj (symbol-function obj)) + (if (not (fboundp name)) + (error "Not a function"))) (if (subrp obj) (error "Can't disassemble #" name)) (setq obj (autoload-do-load obj name)) -- 2.1.3