diff options
| author | Stephen Leake | 2015-09-13 08:59:07 -0500 |
|---|---|---|
| committer | Stephen Leake | 2015-09-15 14:44:43 -0500 |
| commit | b6a792bc623afacea9702f7ec3a35a56013f6c71 (patch) | |
| tree | 3ae31f68ec733d9d539768258aed503479999afa | |
| parent | 691b73f15393ac005c00ee3d544f3a4968c62b7e (diff) | |
| download | emacs-b6a792bc623afacea9702f7ec3a35a56013f6c71.tar.gz emacs-b6a792bc623afacea9702f7ec3a35a56013f6c71.zip | |
Fix bugs in eieio-oref-default related to class symbols
* lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
(eieio-oref-default): Handle class properly.
| -rw-r--r-- | lisp/emacs-lisp/eieio-core.el | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lisp/emacs-lisp/eieio-core.el b/lisp/emacs-lisp/eieio-core.el index f97667c3689..e3f7b11bb64 100644 --- a/lisp/emacs-lisp/eieio-core.el +++ b/lisp/emacs-lisp/eieio-core.el | |||
| @@ -769,7 +769,8 @@ Fills in OBJ's SLOT with its default value." | |||
| 769 | (cl-check-type obj (or eieio-object class)) | 769 | (cl-check-type obj (or eieio-object class)) |
| 770 | (cl-check-type slot symbol) | 770 | (cl-check-type slot symbol) |
| 771 | (let* ((cl (cond ((symbolp obj) (cl--find-class obj)) | 771 | (let* ((cl (cond ((symbolp obj) (cl--find-class obj)) |
| 772 | (t (eieio--object-class obj)))) | 772 | ((eieio-object-p obj) (eieio--object-class obj)) |
| 773 | (t obj))) | ||
| 773 | (c (eieio--slot-name-index cl slot))) | 774 | (c (eieio--slot-name-index cl slot))) |
| 774 | (if (not c) | 775 | (if (not c) |
| 775 | ;; It might be missing because it is a :class allocated slot. | 776 | ;; It might be missing because it is a :class allocated slot. |