summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard M. Stallman <rms@gnu.org>1997-01-02 02:30:33 +0000
committerRichard M. Stallman <rms@gnu.org>1997-01-02 02:30:33 +0000
commitaa6bee8cf8c54508e1dbd3aa3aac93cd9ba8827b (patch)
tree6109bc5e1dea9e6e0a76ea6873f5fe799c3fd948
parentc641a93c66b993936a217ae4604557a6a8d61bb5 (diff)
downloademacs-aa6bee8cf8c54508e1dbd3aa3aac93cd9ba8827b.tar.gz
(internal_self_insert): Check the property
on the hook, not on the abbrev symbol.
-rw-r--r--src/cmds.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/cmds.c b/src/cmds.c
index 2e6464bf0ce..db05b38460e 100644
--- a/src/cmds.c
+++ b/src/cmds.c
@@ -325,11 +325,13 @@ internal_self_insert (c1, noautofill)
sym = Fexpand_abbrev ();
/* If we expanded an abbrev which has only a hook,
+ and the hook has a non-nil `no-self-insert' property,
return right away--don't really self-insert. */
- if (! NILP (sym) && ! NILP (XSYMBOL (sym)->function))
+ if (! NILP (sym) && ! NILP (XSYMBOL (sym)->function)
+ && SYMBOLP (XSYMBOL (sym)->function))
{
Lisp_Object prop;
- prop = Fget (sym, intern ("no-self-insert"));
+ prop = Fget (XSYMBOL (sym)->function, intern ("no-self-insert"));
if (! NILP (prop))
return Qnil;
}