aboutsummaryrefslogtreecommitdiffstats
path: root/src/doc.c
diff options
context:
space:
mode:
authorChong Yidong2010-08-22 16:02:16 -0400
committerChong Yidong2010-08-22 16:02:16 -0400
commitb0126eac41487b9bca5af5cbb2212ff5b2c58b80 (patch)
tree680ba932d259776ebfdb6d424fa8f668e1001f7c /src/doc.c
parentb613941ba003bbf5024415ac4f8c2a0e12434751 (diff)
parentbc7d7ea63ba9d98b3ecc3b6decf4392a651dcbfb (diff)
downloademacs-b0126eac41487b9bca5af5cbb2212ff5b2c58b80.tar.gz
emacs-b0126eac41487b9bca5af5cbb2212ff5b2c58b80.zip
Merge changes from emacs-23 branch.
Diffstat (limited to 'src/doc.c')
-rw-r--r--src/doc.c28
1 files changed, 16 insertions, 12 deletions
diff --git a/src/doc.c b/src/doc.c
index 9a7001eb01d..a8601d930d0 100644
--- a/src/doc.c
+++ b/src/doc.c
@@ -622,24 +622,28 @@ the same file name is found in the `doc-directory'. */)
622 p = buf; 622 p = buf;
623 end = buf + (filled < 512 ? filled : filled - 128); 623 end = buf + (filled < 512 ? filled : filled - 128);
624 while (p != end && *p != '\037') p++; 624 while (p != end && *p != '\037') p++;
625 /* p points to ^_Ffunctionname\n or ^_Vvarname\n. */ 625 /* p points to ^_Ffunctionname\n or ^_Vvarname\n or ^_Sfilename\n. */
626 if (p != end) 626 if (p != end)
627 { 627 {
628 end = strchr (p, '\n'); 628 end = strchr (p, '\n');
629 629
630 /* See if this is a file name, and if it is a file in build-files. */ 630 /* See if this is a file name, and if it is a file in build-files. */
631 if (p[1] == 'S' && end - p > 4 && end[-2] == '.' 631 if (p[1] == 'S')
632 && (end[-1] == 'o' || end[-1] == 'c'))
633 { 632 {
634 int len = end - p - 2; 633 skip_file = 0;
635 char *fromfile = alloca (len + 1); 634 if (end - p > 4 && end[-2] == '.'
636 strncpy (fromfile, &p[2], len); 635 && (end[-1] == 'o' || end[-1] == 'c'))
637 fromfile[len] = 0; 636 {
638 if (fromfile[len-1] == 'c') 637 int len = end - p - 2;
639 fromfile[len-1] = 'o'; 638 char *fromfile = alloca (len + 1);
640 639 strncpy (fromfile, &p[2], len);
641 skip_file = NILP (Fmember (build_string (fromfile), 640 fromfile[len] = 0;
642 Vbuild_files)); 641 if (fromfile[len-1] == 'c')
642 fromfile[len-1] = 'o';
643
644 skip_file = NILP (Fmember (build_string (fromfile),
645 Vbuild_files));
646 }
643 } 647 }
644 648
645 sym = oblookup (Vobarray, p + 2, 649 sym = oblookup (Vobarray, p + 2,