summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2019-06-26 10:27:36 -0400
committerStefan Monnier <monnier@iro.umontreal.ca>2019-06-26 10:27:36 -0400
commit01b5eb3e735ab33dd2d5f1bf279e44d699c92c4f (patch)
treebfc9ea46030bcbb89d39887585ffb11998f2582d /src
parentbaee135c31fd4c498c38bbc2d1c1f61562e12b07 (diff)
parent4b83e7d016ba8e9983c6fd0e154bfa9e22481958 (diff)
downloademacs-01b5eb3e735ab33dd2d5f1bf279e44d699c92c4f.tar.gz
Merge branch 'master' of git+ssh://git.sv.gnu.org/srv/git/emacs into trunk
Diffstat (limited to 'src')
-rw-r--r--src/doc.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/doc.c b/src/doc.c
index 3fa0eaac202..bc05d09df48 100644
--- a/src/doc.c
+++ b/src/doc.c
@@ -436,8 +436,20 @@ aren't strings. */)
documentation_property:
tem = Fget (symbol, prop);
+
+ /* If we don't have any documentation for this symbol, try to see whether
+ it's an indirect variable and get the documentation from there instead. */
+ if (NILP (tem))
+ {
+ Lisp_Object indirect = Findirect_variable (symbol);
+ if (!NILP (indirect))
+ tem = Fget (indirect, prop);
+ }
+
if (EQ (tem, make_fixnum (0)))
tem = Qnil;
+
+ /* See if we want to look for the string in the DOC file. */
if (FIXNUMP (tem) || (CONSP (tem) && FIXNUMP (XCDR (tem))))
{
Lisp_Object doc = tem;