aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/.gdbinit2
-rw-r--r--src/ChangeLog131
-rw-r--r--src/ChangeLog.12
-rw-r--r--src/ChangeLog.102
-rw-r--r--src/ChangeLog.117
-rw-r--r--src/ChangeLog.22
-rw-r--r--src/ChangeLog.32
-rw-r--r--src/ChangeLog.42
-rw-r--r--src/ChangeLog.52
-rw-r--r--src/ChangeLog.62
-rw-r--r--src/ChangeLog.72
-rw-r--r--src/ChangeLog.82
-rw-r--r--src/ChangeLog.92
-rw-r--r--src/Makefile.in2
-rw-r--r--src/README2
-rw-r--r--src/alloc.c2
-rw-r--r--src/atimer.c2
-rw-r--r--src/atimer.h2
-rw-r--r--src/bidi.c4
-rw-r--r--src/blockinput.h2
-rw-r--r--src/buffer.c2
-rw-r--r--src/buffer.h2
-rw-r--r--src/bytecode.c2
-rw-r--r--src/callint.c2
-rw-r--r--src/callproc.c2
-rw-r--r--src/casefiddle.c2
-rw-r--r--src/casetab.c2
-rw-r--r--src/category.c2
-rw-r--r--src/ccl.c2
-rw-r--r--src/character.c69
-rw-r--r--src/charset.c2
-rw-r--r--src/charset.h2
-rw-r--r--src/cm.c2
-rw-r--r--src/cm.h2
-rw-r--r--src/cmds.c2
-rw-r--r--src/coding.c2
-rw-r--r--src/coding.h4
-rw-r--r--src/commands.h2
-rw-r--r--src/composite.c2
-rw-r--r--src/composite.h2
-rw-r--r--src/data.c2
-rw-r--r--src/dbusbind.c2
-rw-r--r--src/deps.mk2
-rw-r--r--src/dired.c2
-rw-r--r--src/dispextern.h2
-rw-r--r--src/dispnew.c4
-rw-r--r--src/disptab.h2
-rw-r--r--src/doc.c2
-rw-r--r--src/doprnt.c2
-rw-r--r--src/dosfns.c2
-rw-r--r--src/dosfns.h2
-rw-r--r--src/editfns.c2
-rw-r--r--src/emacs-icon.h2
-rw-r--r--src/emacs.c12
-rw-r--r--src/emacsgtkfixed.c2
-rw-r--r--src/emacsgtkfixed.h2
-rw-r--r--src/epaths.in29
-rw-r--r--src/eval.c2
-rw-r--r--src/fileio.c19
-rw-r--r--src/filelock.c2
-rw-r--r--src/firstfile.c2
-rw-r--r--src/floatfns.c2
-rw-r--r--src/fns.c2
-rw-r--r--src/font.c2
-rw-r--r--src/font.h2
-rw-r--r--src/fontset.c2
-rw-r--r--src/fontset.h2
-rw-r--r--src/frame.c2
-rw-r--r--src/frame.h2
-rw-r--r--src/fringe.c2
-rw-r--r--src/ftfont.c2
-rw-r--r--src/ftxfont.c2
-rw-r--r--src/getpagesize.h2
-rw-r--r--src/gnutls.c16
-rw-r--r--src/gnutls.h2
-rw-r--r--src/gtkutil.c4
-rw-r--r--src/gtkutil.h2
-rw-r--r--src/image.c2
-rw-r--r--src/indent.c2
-rw-r--r--src/indent.h2
-rw-r--r--src/insdel.c2
-rw-r--r--src/intervals.c2
-rw-r--r--src/intervals.h2
-rw-r--r--src/keyboard.c8
-rw-r--r--src/keyboard.h2
-rw-r--r--src/keymap.c2
-rw-r--r--src/keymap.h2
-rw-r--r--src/lastfile.c2
-rw-r--r--src/lisp.h2
-rw-r--r--src/lisp.mk2
-rw-r--r--src/lread.c209
-rw-r--r--src/m/alpha.h2
-rw-r--r--src/m/amdx86-64.h2
-rw-r--r--src/m/ia64.h2
-rw-r--r--src/m/ibmrs6000.h2
-rw-r--r--src/m/ibms390x.h2
-rw-r--r--src/m/intel386.h2
-rw-r--r--src/m/m68k.h2
-rw-r--r--src/m/macppc.h2
-rw-r--r--src/m/sparc.h2
-rw-r--r--src/m/template.h2
-rw-r--r--src/m/vax.h2
-rw-r--r--src/macros.c2
-rw-r--r--src/macros.h2
-rw-r--r--src/makefile.w32-in2
-rw-r--r--src/marker.c2
-rw-r--r--src/mem-limits.h2
-rw-r--r--src/menu.c2
-rw-r--r--src/menu.h2
-rw-r--r--src/minibuf.c2
-rw-r--r--src/msdos.c2
-rw-r--r--src/msdos.h2
-rw-r--r--src/ns.mk2
-rw-r--r--src/nsfns.m4
-rw-r--r--src/nsfont.m2
-rw-r--r--src/nsgui.h2
-rw-r--r--src/nsimage.m2
-rw-r--r--src/nsmenu.m2
-rw-r--r--src/nsselect.m2
-rw-r--r--src/nsterm.h2
-rw-r--r--src/nsterm.m2
-rw-r--r--src/print.c2
-rw-r--r--src/process.c12
-rw-r--r--src/process.h2
-rw-r--r--src/puresize.h2
-rw-r--r--src/ralloc.c2
-rw-r--r--src/regex.c2
-rw-r--r--src/regex.h2
-rw-r--r--src/region-cache.c2
-rw-r--r--src/region-cache.h2
-rw-r--r--src/s/aix4-2.h2
-rw-r--r--src/s/bsd-common.h2
-rw-r--r--src/s/cygwin.h2
-rw-r--r--src/s/darwin.h2
-rw-r--r--src/s/freebsd.h2
-rw-r--r--src/s/gnu-linux.h2
-rw-r--r--src/s/gnu.h2
-rw-r--r--src/s/hpux10-20.h2
-rw-r--r--src/s/irix6-5.h2
-rw-r--r--src/s/ms-w32.h2
-rw-r--r--src/s/msdos.h2
-rw-r--r--src/s/netbsd.h2
-rw-r--r--src/s/sol2-6.h2
-rw-r--r--src/s/template.h2
-rw-r--r--src/s/unixware.h2
-rw-r--r--src/s/usg5-4-common.h2
-rw-r--r--src/scroll.c2
-rw-r--r--src/search.c10
-rw-r--r--src/sheap.c2
-rw-r--r--src/sound.c2
-rw-r--r--src/syntax.c2
-rw-r--r--src/syntax.h2
-rw-r--r--src/sysdep.c2
-rw-r--r--src/sysselect.h2
-rw-r--r--src/syssignal.h2
-rw-r--r--src/systime.h2
-rw-r--r--src/systty.h2
-rw-r--r--src/syswait.h2
-rw-r--r--src/term.c4
-rw-r--r--src/termchar.h2
-rw-r--r--src/termhooks.h2
-rw-r--r--src/terminal.c2
-rw-r--r--src/terminfo.c2
-rw-r--r--src/termopts.h2
-rw-r--r--src/textprop.c4
-rw-r--r--src/tparam.h2
-rw-r--r--src/undo.c2
-rw-r--r--src/unexaix.c2
-rw-r--r--src/unexcoff.c2
-rw-r--r--src/unexcw.c2
-rw-r--r--src/unexelf.c2
-rw-r--r--src/unexmacosx.c2
-rw-r--r--src/unexw32.c2
-rw-r--r--src/vm-limit.c2
-rw-r--r--src/w16select.c2
-rw-r--r--src/w32.c42
-rw-r--r--src/w32.h2
-rw-r--r--src/w32console.c2
-rw-r--r--src/w32fns.c7
-rw-r--r--src/w32font.c2
-rw-r--r--src/w32font.h2
-rw-r--r--src/w32gui.h2
-rw-r--r--src/w32heap.c2
-rw-r--r--src/w32heap.h2
-rw-r--r--src/w32inevt.c2
-rw-r--r--src/w32inevt.h2
-rw-r--r--src/w32menu.c2
-rw-r--r--src/w32proc.c2
-rw-r--r--src/w32reg.c2
-rw-r--r--src/w32select.c2
-rw-r--r--src/w32term.c2
-rw-r--r--src/w32term.h2
-rw-r--r--src/w32uniscribe.c2
-rw-r--r--src/w32xfns.c2
-rw-r--r--src/widget.c2
-rw-r--r--src/widget.h2
-rw-r--r--src/widgetprv.h2
-rw-r--r--src/window.c115
-rw-r--r--src/window.h2
-rw-r--r--src/xdisp.c73
-rw-r--r--src/xfaces.c2
-rw-r--r--src/xfns.c20
-rw-r--r--src/xfont.c2
-rw-r--r--src/xftfont.c2
-rw-r--r--src/xgselect.c2
-rw-r--r--src/xgselect.h2
-rw-r--r--src/xmenu.c2
-rw-r--r--src/xml.c2
-rw-r--r--src/xrdb.c2
-rw-r--r--src/xselect.c2
-rw-r--r--src/xsettings.c2
-rw-r--r--src/xsettings.h2
-rw-r--r--src/xsmfns.c2
-rw-r--r--src/xterm.c14
-rw-r--r--src/xterm.h3
215 files changed, 790 insertions, 414 deletions
diff --git a/src/.gdbinit b/src/.gdbinit
index 2051475bea0..b60c14fe289 100644
--- a/src/.gdbinit
+++ b/src/.gdbinit
@@ -1,4 +1,4 @@
1# Copyright (C) 1992-1998, 2000-2011 Free Software Foundation, Inc. 1# Copyright (C) 1992-1998, 2000-2012 Free Software Foundation, Inc.
2# 2#
3# This file is part of GNU Emacs. 3# This file is part of GNU Emacs.
4# 4#
diff --git a/src/ChangeLog b/src/ChangeLog
index f10e2955164..925bb8299ba 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,110 @@
12012-01-21 Andreas Schwab <schwab@linux-m68k.org>
2
3 * process.c (read_process_output): Use p instead of XPROCESS (proc).
4 (send_process): Likewise.
5
62012-01-19 Martin Rudalics <rudalics@gmx.at>
7
8 * window.c (save_window_save, Fcurrent_window_configuration)
9 (Vwindow_persistent_parameters): Do not use Qstate. Rewrite
10 doc-strings.
11
122012-01-19 Kenichi Handa <handa@m17n.org>
13
14 * character.c (char_width): New function.
15 (Fchar_width, c_string_width, lisp_string_width):
16 Use char_width (Bug#9496).
17
182012-01-16 Martin Rudalics <rudalics@gmx.at>
19
20 * window.c (Vwindow_persistent_parameters): New variable.
21 (Fset_window_configuration, save_window_save): Handle persistent
22 window parameters.
23
242012-01-14 Eli Zaretskii <eliz@gnu.org>
25
26 * w32fns.c (signal_user_input): Don't do a QUIT, to avoid
27 thrashing the stack of the thread. (Bug#9087)
28
292012-01-12 Paul Eggert <eggert@cs.ucla.edu>
30
31 * xdisp.c (rows_from_pos_range): Add parens as per gcc -Wparentheses.
32
332012-01-11 Eli Zaretskii <eliz@gnu.org>
34
35 * xdisp.c (rows_from_pos_range): Handle the case where the
36 highlight ends on a newline. (Bug#10464)
37 (mouse_face_from_buffer_pos): Fix off-by-one error in calculating
38 he end column for display of highlight that ends on a newline
39 before a R2L line.
40
412012-01-11 Glenn Morris <rgm@gnu.org>
42
43 * lread.c (init_lread): If no-site-lisp, remove site-lisp dirs
44 from load-path also when installation-directory is nil. (Bug#10208)
45
462012-01-10 Glenn Morris <rgm@gnu.org>
47
48 * emacs.c (syms_of_emacs) <installation-directory>: Doc fix.
49
50 * epaths.in (PATH_LOADSEARCH, PATH_EXEC, PATH_DATA, PATH_DOC):
51 Update template values to be closer to their typical values these days.
52
532012-01-09 Eli Zaretskii <eliz@gnu.org>
54
55 * xdisp.c (rows_from_pos_range): Accept additional argument
56 DISP_STRING, and accept any glyph in a row whose object is that
57 string as eligible for mouse highlight. Fixes mouse highlight of
58 display strings from overlays. (Bug#10464)
59
602012-01-07 Paul Eggert <eggert@cs.ucla.edu>
61
62 emacs: fix an auto-save permissions race condition (Bug#10400)
63 * fileio.c (auto_saving_dir_umask): New static var.
64 (Fmake_directory_internal): Use it.
65 (do_auto_save_make_dir): Set it, instead of invoking chmod after
66 creating the directory. The old code temporarily assigns
67 too-generous permissions to the directory.
68 (do_auto_save_eh): Clear it.
69 (Fdo_auto_save): Catch all errors, not just file errors, so
70 that the var is always cleared.
71
722012-01-07 Eli Zaretskii <eliz@gnu.org>
73
74 * search.c (scan_buffer): Pass character positions to
75 know_region_cache, not byte positions. (Bug#6540)
76
772012-01-07 LynX <_LynX@bk.ru> (tiny change)
78
79 * w32.c (sys_rename): Report EXDEV when rename of a directory
80 fails because the target is on another logical disk. (Bug#10284)
81
822012-01-07 David Benjamin <davidben@mit.edu> (tiny change)
83
84 * xterm.c (x_embed_request_focus): New function.
85
86 * xterm.h: Add prototype.
87
88 * xfns.c (Fx_focus_frame): Use it for embedded frames (Bug#9977).
89
902012-01-05 Glenn Morris <rgm@gnu.org>
91
92 * emacs.c (emacs_copyright): Update short copyright year to 2012.
93
942012-01-01 Eli Zaretskii <eliz@gnu.org>
95
96 * gnutls.c (init_gnutls_functions): Load gnutls_check_version.
97 Load gnutls_transport_set_lowat only if GnuTLS version is below
98 2.11.1.
99 (emacs_gnutls_handshake): Call gnutls_transport_set_lowat only for
100 GnuTLS versions below 2.11.1.
101
1022011-12-31 Antoine Levitt <antoine.levitt@gmail.com>
103
104 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Add warning
105 to the doc string advising against its use for altering the way
106 windows are scrolled.
107
12011-12-28 Kenichi Handa <handa@m17n.org> 1082011-12-28 Kenichi Handa <handa@m17n.org>
2 109
3 * coding.c (Fdefine_coding_system_internal): Make an utf-8 base 110 * coding.c (Fdefine_coding_system_internal): Make an utf-8 base
@@ -27,8 +134,8 @@
27 134
282011-12-21 Jan Djärv <jan.h.d@swipnet.se> 1352011-12-21 Jan Djärv <jan.h.d@swipnet.se>
29 136
30 * nsterm.m (x_free_frame_resources): Release 137 * nsterm.m (x_free_frame_resources):
31 f->output_data.ns->miniimage 138 Release f->output_data.ns->miniimage.
32 (ns_index_color): Fix indentation. Do not retain 139 (ns_index_color): Fix indentation. Do not retain
33 color_table->colors[i]. 140 color_table->colors[i].
34 141
@@ -58,7 +165,7 @@
58 (trackingNotification): Surround with ifdef NS_IMPL_COCOA. 165 (trackingNotification): Surround with ifdef NS_IMPL_COCOA.
59 (syms_of_nsmenu): Set trackingMenu to 1 if not NS_IMPL_COCOA. 166 (syms_of_nsmenu): Set trackingMenu to 1 if not NS_IMPL_COCOA.
60 167
612011-12-18 David Reitter <reitter@cmu.edu> 1682011-12-18 David Reitter <reitter@cmu.edu>
62 169
63 * nsterm.m (ns_term_init): Subscribe for notifications 170 * nsterm.m (ns_term_init): Subscribe for notifications
64 NSMenuDidBeginTrackingNotification and NSMenuDidEndTrackingNotification 171 NSMenuDidBeginTrackingNotification and NSMenuDidEndTrackingNotification
@@ -80,10 +187,10 @@
80 Fns_store_cut_buffer_internal. 187 Fns_store_cut_buffer_internal.
81 (ns_get_foreign_selection, Fx_own_selection_internal) 188 (ns_get_foreign_selection, Fx_own_selection_internal)
82 (Fx_disown_selection_internal, Fx_selection_exists_p) 189 (Fx_disown_selection_internal, Fx_selection_exists_p)
83 (Fns_get_selection_internal, Fns_store_selection_internal): Use 190 (Fns_get_selection_internal, Fns_store_selection_internal):
84 ns_symbol_to_pb and check if return value is nil. 191 Use ns_symbol_to_pb and check if return value is nil.
85 (syms_of_nsselect): Remove ifdef CUT_BUFFER_SUPPORT. Remove 192 (syms_of_nsselect): Remove ifdef CUT_BUFFER_SUPPORT. Remove defsubr
86 defsubr Sns_rotate_cut_buffers_internal. Sns_get_cut_buffer_internal 193 Sns_rotate_cut_buffers_internal. Sns_get_cut_buffer_internal
87 renamed to Sns_get_selection_internal, Sns_store_cut_buffer_internal 194 renamed to Sns_get_selection_internal, Sns_store_cut_buffer_internal
88 renamed to Sns_store_selection_internal. 195 renamed to Sns_store_selection_internal.
89 (ns_handle_selection_request): Move code to Fx_own_selection_internal 196 (ns_handle_selection_request): Move code to Fx_own_selection_internal
@@ -4427,7 +4534,7 @@
4427 4534
44282011-06-15 Paul Eggert <eggert@cs.ucla.edu> 45352011-06-15 Paul Eggert <eggert@cs.ucla.edu>
4429 4536
4430 Integer overflow and signedness fixes (Bug#8873). 4537 Integer overflow and signedness fixes (Bug#8873, Bug#8828).
4431 4538
4432 * ccl.c (ASCENDING_ORDER): New macro, to work around GCC bug 43772. 4539 * ccl.c (ASCENDING_ORDER): New macro, to work around GCC bug 43772.
4433 (GET_CCL_RANGE, IN_INT_RANGE): Use it. 4540 (GET_CCL_RANGE, IN_INT_RANGE): Use it.
@@ -5707,7 +5814,7 @@
5707 where the include path doesn't have X11/X.h by default. See 5814 where the include path doesn't have X11/X.h by default. See
5708 <http://lists.gnu.org/archive/html/emacs-devel/2011-05/msg00561.html>. 5815 <http://lists.gnu.org/archive/html/emacs-devel/2011-05/msg00561.html>.
5709 5816
57102011-05-20 Kenichi Handa <handa@m17n.org> 58172011-05-20 Kenichi Handa <handa@m17n.org>
5711 5818
5712 * composite.c (find_automatic_composition): Fix previous change. 5819 * composite.c (find_automatic_composition): Fix previous change.
5713 5820
@@ -6049,7 +6156,7 @@
6049 * lread.c (lisp_file_lexically_bound_p): Stop scanning at end 6156 * lread.c (lisp_file_lexically_bound_p): Stop scanning at end
6050 marker. (Bug#8610) 6157 marker. (Bug#8610)
6051 6158
60522011-05-05 Eli Zaretskii <eliz@gnu.org> 61592011-05-05 Eli Zaretskii <eliz@gnu.org>
6053 6160
6054 * w32heap.c (allocate_heap) [USE_LISP_UNION_TYPE || USE_LSB_TAG]: 6161 * w32heap.c (allocate_heap) [USE_LISP_UNION_TYPE || USE_LSB_TAG]:
6055 New version that can reserve upto 2GB of heap space. 6162 New version that can reserve upto 2GB of heap space.
@@ -8253,7 +8360,7 @@
8253 are now in src/globals.h. 8360 are now in src/globals.h.
8254 (syms_of_minibuf): Remove spurious & from previous change. 8361 (syms_of_minibuf): Remove spurious & from previous change.
8255 8362
82562011-03-20 Leo <sdl.web@gmail.com> 83632011-03-20 Leo Liu <sdl.web@gmail.com>
8257 8364
8258 * minibuf.c (completing-read-function): New variable. 8365 * minibuf.c (completing-read-function): New variable.
8259 (completing-read-default): Rename from completing-read. 8366 (completing-read-default): Rename from completing-read.
@@ -9022,7 +9129,7 @@ See ChangeLog.11 for earlier changes.
9022;; coding: utf-8 9129;; coding: utf-8
9023;; End: 9130;; End:
9024 9131
9025 Copyright (C) 2011 Free Software Foundation, Inc. 9132 Copyright (C) 2011-2012 Free Software Foundation, Inc.
9026 9133
9027 This file is part of GNU Emacs. 9134 This file is part of GNU Emacs.
9028 9135
diff --git a/src/ChangeLog.1 b/src/ChangeLog.1
index 7fef45f36da..5265d6fdf59 100644
--- a/src/ChangeLog.1
+++ b/src/ChangeLog.1
@@ -3521,7 +3521,7 @@
3521 * minibuf.c: Don't allow entry to minibuffer 3521 * minibuf.c: Don't allow entry to minibuffer
3522 while minibuffer is selected. 3522 while minibuffer is selected.
3523 3523
3524 Copyright (C) 1985-1986, 2001-2011 Free Software Foundation, Inc. 3524 Copyright (C) 1985-1986, 2001-2012 Free Software Foundation, Inc.
3525 3525
3526 This file is part of GNU Emacs. 3526 This file is part of GNU Emacs.
3527 3527
diff --git a/src/ChangeLog.10 b/src/ChangeLog.10
index 53f7a016654..5baeb877939 100644
--- a/src/ChangeLog.10
+++ b/src/ChangeLog.10
@@ -27912,7 +27912,7 @@ See ChangeLog.9 for earlier changes.
27912;; add-log-time-zone-rule: t 27912;; add-log-time-zone-rule: t
27913;; End: 27913;; End:
27914 27914
27915 Copyright (C) 2001-2011 Free Software Foundation, Inc. 27915 Copyright (C) 2001-2012 Free Software Foundation, Inc.
27916 27916
27917 This file is part of GNU Emacs. 27917 This file is part of GNU Emacs.
27918 27918
diff --git a/src/ChangeLog.11 b/src/ChangeLog.11
index 78639ef0c2b..e8bfd964312 100644
--- a/src/ChangeLog.11
+++ b/src/ChangeLog.11
@@ -3538,7 +3538,6 @@
3538 * nsmenu.m (syms_of_nsmenu): 3538 * nsmenu.m (syms_of_nsmenu):
3539 * nsfns.m (syms_of_nsfns): 3539 * nsfns.m (syms_of_nsfns):
3540 * msdos.c (syms_of_msdos): 3540 * msdos.c (syms_of_msdos):
3541
3542 * image.c (syms_of_image): 3541 * image.c (syms_of_image):
3543 * charset.c (syms_of_charset): Use intern_c_string instead of intern. 3542 * charset.c (syms_of_charset): Use intern_c_string instead of intern.
3544 3543
@@ -4388,7 +4387,7 @@
4388 * xml.c (Fxml_parse_string, Fxml_parse_string): Revert last change. 4387 * xml.c (Fxml_parse_string, Fxml_parse_string): Revert last change.
4389 Don't make first argument optional. Doc fix. 4388 Don't make first argument optional. Doc fix.
4390 4389
43912010-09-14 Leo <sdl.web@gmail.com> (tiny change) 43902010-09-14 Leo Liu <sdl.web@gmail.com> (tiny change)
4392 4391
4393 * xml.c (Fxml_parse_string, Fhtml_parse_string): Fix up the 4392 * xml.c (Fxml_parse_string, Fhtml_parse_string): Fix up the
4394 parameters for the doc string. 4393 parameters for the doc string.
@@ -29523,7 +29522,7 @@
29523 (Fdisplay_buffer): Use it. 29522 (Fdisplay_buffer): Use it.
29524 (syms_of_window): Export, and initialize it. 29523 (syms_of_window): Export, and initialize it.
29525 29524
295262007-09-06 Pixel <pixel@mandriva.com> (tiny change) 295252007-09-06 Pascal Rigaux <pixel@mandriva.com> (tiny change)
29527 29526
29528 * image.c (gif_load): Fix bug: Handle nonexistent colormap. 29527 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
29529 29528
@@ -31383,7 +31382,7 @@ See ChangeLog.10 for earlier changes.
31383;; coding: utf-8 31382;; coding: utf-8
31384;; End: 31383;; End:
31385 31384
31386 Copyright (C) 2007-2011 Free Software Foundation, Inc. 31385 Copyright (C) 2007-2012 Free Software Foundation, Inc.
31387 31386
31388 This file is part of GNU Emacs. 31387 This file is part of GNU Emacs.
31389 31388
diff --git a/src/ChangeLog.2 b/src/ChangeLog.2
index d3be0064610..1a9728f6896 100644
--- a/src/ChangeLog.2
+++ b/src/ChangeLog.2
@@ -4771,7 +4771,7 @@
4771 4771
4772See ChangeLog.1 for earlier changes. 4772See ChangeLog.1 for earlier changes.
4773 4773
4774 Copyright (C) 1986-1988, 2001-2011 Free Software Foundation, Inc. 4774 Copyright (C) 1986-1988, 2001-2012 Free Software Foundation, Inc.
4775 4775
4776 This file is part of GNU Emacs. 4776 This file is part of GNU Emacs.
4777 4777
diff --git a/src/ChangeLog.3 b/src/ChangeLog.3
index 34906e505da..6c580fe4b52 100644
--- a/src/ChangeLog.3
+++ b/src/ChangeLog.3
@@ -16507,7 +16507,7 @@ See ChangeLog.2 for earlier changes.
16507;; coding: utf-8 16507;; coding: utf-8
16508;; End: 16508;; End:
16509 16509
16510 Copyright (C) 1993, 2001-2011 Free Software Foundation, Inc. 16510 Copyright (C) 1993, 2001-2012 Free Software Foundation, Inc.
16511 16511
16512 This file is part of GNU Emacs. 16512 This file is part of GNU Emacs.
16513 16513
diff --git a/src/ChangeLog.4 b/src/ChangeLog.4
index 88c9e3dbf71..d7ef7d8779a 100644
--- a/src/ChangeLog.4
+++ b/src/ChangeLog.4
@@ -6906,7 +6906,7 @@ See ChangeLog.3 for earlier changes.
6906;; coding: utf-8 6906;; coding: utf-8
6907;; End: 6907;; End:
6908 6908
6909 Copyright (C) 1993-1994, 2001-2011 Free Software Foundation, Inc. 6909 Copyright (C) 1993-1994, 2001-2012 Free Software Foundation, Inc.
6910 6910
6911 This file is part of GNU Emacs. 6911 This file is part of GNU Emacs.
6912 6912
diff --git a/src/ChangeLog.5 b/src/ChangeLog.5
index ee79917a34d..c6dfde7496b 100644
--- a/src/ChangeLog.5
+++ b/src/ChangeLog.5
@@ -7148,7 +7148,7 @@ See ChangeLog.4 for earlier changes.
7148;; coding: utf-8 7148;; coding: utf-8
7149;; End: 7149;; End:
7150 7150
7151 Copyright (C) 1994-1995, 2001-2011 Free Software Foundation, Inc. 7151 Copyright (C) 1994-1995, 2001-2012 Free Software Foundation, Inc.
7152 7152
7153 This file is part of GNU Emacs. 7153 This file is part of GNU Emacs.
7154 7154
diff --git a/src/ChangeLog.6 b/src/ChangeLog.6
index 74141f6813a..91c20681157 100644
--- a/src/ChangeLog.6
+++ b/src/ChangeLog.6
@@ -5354,7 +5354,7 @@
5354 5354
5355See ChangeLog.5 for earlier changes. 5355See ChangeLog.5 for earlier changes.
5356 5356
5357 Copyright (C) 1995-1996, 2001-2011 Free Software Foundation, Inc. 5357 Copyright (C) 1995-1996, 2001-2012 Free Software Foundation, Inc.
5358 5358
5359 This file is part of GNU Emacs. 5359 This file is part of GNU Emacs.
5360 5360
diff --git a/src/ChangeLog.7 b/src/ChangeLog.7
index bb18f684242..891c1ca081a 100644
--- a/src/ChangeLog.7
+++ b/src/ChangeLog.7
@@ -11092,7 +11092,7 @@ See ChangeLog.6 for earlier changes.
11092;; coding: utf-8 11092;; coding: utf-8
11093;; End: 11093;; End:
11094 11094
11095 Copyright (C) 1997-1998, 2001-2011 Free Software Foundation, Inc. 11095 Copyright (C) 1997-1998, 2001-2012 Free Software Foundation, Inc.
11096 11096
11097 This file is part of GNU Emacs. 11097 This file is part of GNU Emacs.
11098 11098
diff --git a/src/ChangeLog.8 b/src/ChangeLog.8
index 6973717a7d7..d3ce1eb2a45 100644
--- a/src/ChangeLog.8
+++ b/src/ChangeLog.8
@@ -13979,7 +13979,7 @@
13979 13979
13980See ChangeLog.7 for earlier changes. 13980See ChangeLog.7 for earlier changes.
13981 13981
13982 Copyright (C) 1999, 2001-2011 Free Software Foundation, Inc. 13982 Copyright (C) 1999, 2001-2012 Free Software Foundation, Inc.
13983 13983
13984 This file is part of GNU Emacs. 13984 This file is part of GNU Emacs.
13985 13985
diff --git a/src/ChangeLog.9 b/src/ChangeLog.9
index 6e3a8d8ab3b..d6d772c5f95 100644
--- a/src/ChangeLog.9
+++ b/src/ChangeLog.9
@@ -13294,7 +13294,7 @@ See ChangeLog.8 for earlier changes.
13294;; coding: utf-8 13294;; coding: utf-8
13295;; End: 13295;; End:
13296 13296
13297 Copyright (C) 2001-2011 Free Software Foundation, Inc. 13297 Copyright (C) 2001-2012 Free Software Foundation, Inc.
13298 13298
13299 This file is part of GNU Emacs. 13299 This file is part of GNU Emacs.
13300 13300
diff --git a/src/Makefile.in b/src/Makefile.in
index 3be10c388c7..035ea277454 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -1,6 +1,6 @@
1# src/Makefile for GNU Emacs. 1# src/Makefile for GNU Emacs.
2 2
3# Copyright (C) 1985, 1987-1988, 1993-1995, 1999-2011 3# Copyright (C) 1985, 1987-1988, 1993-1995, 1999-2012
4# Free Software Foundation, Inc. 4# Free Software Foundation, Inc.
5 5
6# This file is part of GNU Emacs. 6# This file is part of GNU Emacs.
diff --git a/src/README b/src/README
index f568797a1ea..558710627a7 100644
--- a/src/README
+++ b/src/README
@@ -1,4 +1,4 @@
1Copyright (C) 2001-2011 Free Software Foundation, Inc. 1Copyright (C) 2001-2012 Free Software Foundation, Inc.
2See the end of the file for license conditions. 2See the end of the file for license conditions.
3 3
4 4
diff --git a/src/alloc.c b/src/alloc.c
index 6f70976c345..044e750413b 100644
--- a/src/alloc.c
+++ b/src/alloc.c
@@ -1,5 +1,5 @@
1/* Storage allocation and gc for GNU Emacs Lisp interpreter. 1/* Storage allocation and gc for GNU Emacs Lisp interpreter.
2 Copyright (C) 1985-1986, 1988, 1993-1995, 1997-2011 2 Copyright (C) 1985-1986, 1988, 1993-1995, 1997-2012
3 Free Software Foundation, Inc. 3 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
diff --git a/src/atimer.c b/src/atimer.c
index a54b397f52e..48f22fe0e3e 100644
--- a/src/atimer.c
+++ b/src/atimer.c
@@ -1,5 +1,5 @@
1/* Asynchronous timers. 1/* Asynchronous timers.
2 Copyright (C) 2000-2011 Free Software Foundation, Inc. 2 Copyright (C) 2000-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/atimer.h b/src/atimer.h
index 8035681b225..4282bab49ba 100644
--- a/src/atimer.h
+++ b/src/atimer.h
@@ -1,5 +1,5 @@
1/* Asynchronous timers. 1/* Asynchronous timers.
2 Copyright (C) 2000-2011 Free Software Foundation, Inc. 2 Copyright (C) 2000-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/bidi.c b/src/bidi.c
index ea4405cbda7..107c817abba 100644
--- a/src/bidi.c
+++ b/src/bidi.c
@@ -1,5 +1,5 @@
1/* Low-level bidirectional buffer/string-scanning functions for GNU Emacs. 1/* Low-level bidirectional buffer/string-scanning functions for GNU Emacs.
2 Copyright (C) 2000-2001, 2004-2005, 2009-2011 2 Copyright (C) 2000-2001, 2004-2005, 2009-2012
3 Free Software Foundation, Inc. 3 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
@@ -572,7 +572,7 @@ bidi_cache_find (EMACS_INT charpos, int level, struct bidi_it *bidi_it)
572 572
573 bidi_copy_it (bidi_it, &bidi_cache[i]); 573 bidi_copy_it (bidi_it, &bidi_cache[i]);
574 bidi_cache_last_idx = i; 574 bidi_cache_last_idx = i;
575 /* Don't let scan direction from from the cached state override 575 /* Don't let scan direction from the cached state override
576 the current scan direction. */ 576 the current scan direction. */
577 bidi_it->scan_dir = current_scan_dir; 577 bidi_it->scan_dir = current_scan_dir;
578 return bidi_it->type; 578 return bidi_it->type;
diff --git a/src/blockinput.h b/src/blockinput.h
index aa46d67ee56..dc02919cf4f 100644
--- a/src/blockinput.h
+++ b/src/blockinput.h
@@ -1,5 +1,5 @@
1/* blockinput.h - interface to blocking complicated interrupt-driven input. 1/* blockinput.h - interface to blocking complicated interrupt-driven input.
2 Copyright (C) 1989, 1993, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1989, 1993, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/buffer.c b/src/buffer.c
index a482493fac7..01418956c8d 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -1,6 +1,6 @@
1/* Buffer manipulation primitives for GNU Emacs. 1/* Buffer manipulation primitives for GNU Emacs.
2 2
3Copyright (C) 1985-1989, 1993-1995, 1997-2011 Free Software Foundation, Inc. 3Copyright (C) 1985-1989, 1993-1995, 1997-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/buffer.h b/src/buffer.h
index fa65a4b81fd..3df4a95cf93 100644
--- a/src/buffer.h
+++ b/src/buffer.h
@@ -1,6 +1,6 @@
1/* Header file for the buffer manipulation primitives. 1/* Header file for the buffer manipulation primitives.
2 2
3Copyright (C) 1985-1986, 1993-1995, 1997-2011 3Copyright (C) 1985-1986, 1993-1995, 1997-2012
4 Free Software Foundation, Inc. 4 Free Software Foundation, Inc.
5 5
6This file is part of GNU Emacs. 6This file is part of GNU Emacs.
diff --git a/src/bytecode.c b/src/bytecode.c
index 3af0abd63cf..6f945723d38 100644
--- a/src/bytecode.c
+++ b/src/bytecode.c
@@ -1,5 +1,5 @@
1/* Execution of byte code produced by bytecomp.el. 1/* Execution of byte code produced by bytecomp.el.
2 Copyright (C) 1985-1988, 1993, 2000-2011 Free Software Foundation, Inc. 2 Copyright (C) 1985-1988, 1993, 2000-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/callint.c b/src/callint.c
index 25a4713e270..e09210f1bb6 100644
--- a/src/callint.c
+++ b/src/callint.c
@@ -1,5 +1,5 @@
1/* Call a Lisp function interactively. 1/* Call a Lisp function interactively.
2 Copyright (C) 1985-1986, 1993-1995, 1997, 2000-2011 2 Copyright (C) 1985-1986, 1993-1995, 1997, 2000-2012
3 Free Software Foundation, Inc. 3 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
diff --git a/src/callproc.c b/src/callproc.c
index 01772efce30..c5208fb93d9 100644
--- a/src/callproc.c
+++ b/src/callproc.c
@@ -1,5 +1,5 @@
1/* Synchronous subprocess invocation for GNU Emacs. 1/* Synchronous subprocess invocation for GNU Emacs.
2 Copyright (C) 1985-1988, 1993-1995, 1999-2011 2 Copyright (C) 1985-1988, 1993-1995, 1999-2012
3 Free Software Foundation, Inc. 3 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
diff --git a/src/casefiddle.c b/src/casefiddle.c
index 77222c9e0a3..80c05aabc7d 100644
--- a/src/casefiddle.c
+++ b/src/casefiddle.c
@@ -1,6 +1,6 @@
1/* GNU Emacs case conversion functions. 1/* GNU Emacs case conversion functions.
2 2
3Copyright (C) 1985, 1994, 1997-1999, 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 1985, 1994, 1997-1999, 2001-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/casetab.c b/src/casetab.c
index 575a48ed146..dbc72f485f7 100644
--- a/src/casetab.c
+++ b/src/casetab.c
@@ -1,5 +1,5 @@
1/* GNU Emacs routines to deal with case tables. 1/* GNU Emacs routines to deal with case tables.
2 Copyright (C) 1993-1994, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1993-1994, 2001-2012 Free Software Foundation, Inc.
3 3
4Author: Howard Gayle 4Author: Howard Gayle
5 5
diff --git a/src/category.c b/src/category.c
index a822bb654b0..819e7cba364 100644
--- a/src/category.c
+++ b/src/category.c
@@ -1,6 +1,6 @@
1/* GNU Emacs routines to deal with category tables. 1/* GNU Emacs routines to deal with category tables.
2 2
3Copyright (C) 1998, 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 1998, 2001-2012 Free Software Foundation, Inc.
4Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 4Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
5 2005, 2006, 2007, 2008, 2009, 2010, 2011 5 2005, 2006, 2007, 2008, 2009, 2010, 2011
6 National Institute of Advanced Industrial Science and Technology (AIST) 6 National Institute of Advanced Industrial Science and Technology (AIST)
diff --git a/src/ccl.c b/src/ccl.c
index 65a6dcfcb85..bc6322c35b9 100644
--- a/src/ccl.c
+++ b/src/ccl.c
@@ -1,5 +1,5 @@
1/* CCL (Code Conversion Language) interpreter. 1/* CCL (Code Conversion Language) interpreter.
2 Copyright (C) 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 2001-2012 Free Software Foundation, Inc.
3 Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 3 Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
4 2005, 2006, 2007, 2008, 2009, 2010, 2011 4 2005, 2006, 2007, 2008, 2009, 2010, 2011
5 National Institute of Advanced Industrial Science and Technology (AIST) 5 National Institute of Advanced Industrial Science and Technology (AIST)
diff --git a/src/character.c b/src/character.c
index 88b1f11b96b..593fbcece0b 100644
--- a/src/character.c
+++ b/src/character.c
@@ -1,6 +1,6 @@
1/* Basic character support. 1/* Basic character support.
2 2
3Copyright (C) 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 2001-2012 Free Software Foundation, Inc.
4Copyright (C) 1995, 1997, 1998, 2001 Electrotechnical Laboratory, JAPAN. 4Copyright (C) 1995, 1997, 1998, 2001 Electrotechnical Laboratory, JAPAN.
5 Licensed to the Free Software Foundation. 5 Licensed to the Free Software Foundation.
6Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 6Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
@@ -308,6 +308,31 @@ If the multibyte character does not represent a byte, return -1. */)
308 } 308 }
309} 309}
310 310
311
312/* Return width (columns) of C considering the buffer display table DP. */
313
314static int
315char_width (int c, struct Lisp_Char_Table *dp)
316{
317 int width = CHAR_WIDTH (c);
318
319 if (dp)
320 {
321 Lisp_Object disp = DISP_CHAR_VECTOR (dp, c), ch;
322 int i;
323
324 if (VECTORP (disp))
325 for (i = 0, width = 0; i < ASIZE (disp); i++)
326 {
327 ch = AREF (disp, i);
328 if (CHARACTERP (ch))
329 width += CHAR_WIDTH (XFASTINT (ch));
330 }
331 }
332 return width;
333}
334
335
311DEFUN ("char-width", Fchar_width, Schar_width, 1, 1, 0, 336DEFUN ("char-width", Fchar_width, Schar_width, 1, 1, 0,
312 doc: /* Return width of CHAR when displayed in the current buffer. 337 doc: /* Return width of CHAR when displayed in the current buffer.
313The width is measured by how many columns it occupies on the screen. 338The width is measured by how many columns it occupies on the screen.
@@ -315,21 +340,11 @@ Tab is taken to occupy `tab-width' columns.
315usage: (char-width CHAR) */) 340usage: (char-width CHAR) */)
316 (Lisp_Object ch) 341 (Lisp_Object ch)
317{ 342{
318 Lisp_Object disp;
319 int c, width; 343 int c, width;
320 struct Lisp_Char_Table *dp = buffer_display_table ();
321 344
322 CHECK_CHARACTER (ch); 345 CHECK_CHARACTER (ch);
323 c = XINT (ch); 346 c = XINT (ch);
324 347 width = char_width (c, buffer_display_table ());
325 /* Get the way the display table would display it. */
326 disp = dp ? DISP_CHAR_VECTOR (dp, c) : Qnil;
327
328 if (VECTORP (disp))
329 width = sanitize_char_width (ASIZE (disp));
330 else
331 width = CHAR_WIDTH (c);
332
333 return make_number (width); 348 return make_number (width);
334} 349}
335 350
@@ -350,22 +365,9 @@ c_string_width (const unsigned char *str, EMACS_INT len, int precision,
350 365
351 while (i_byte < len) 366 while (i_byte < len)
352 { 367 {
353 int bytes, thiswidth; 368 int bytes;
354 Lisp_Object val;
355 int c = STRING_CHAR_AND_LENGTH (str + i_byte, bytes); 369 int c = STRING_CHAR_AND_LENGTH (str + i_byte, bytes);
356 370 int thiswidth = char_width (c, dp);
357 if (dp)
358 {
359 val = DISP_CHAR_VECTOR (dp, c);
360 if (VECTORP (val))
361 thiswidth = sanitize_char_width (ASIZE (val));
362 else
363 thiswidth = CHAR_WIDTH (c);
364 }
365 else
366 {
367 thiswidth = CHAR_WIDTH (c);
368 }
369 371
370 if (precision > 0 372 if (precision > 0
371 && (width + thiswidth > precision)) 373 && (width + thiswidth > precision))
@@ -447,18 +449,7 @@ lisp_string_width (Lisp_Object string, EMACS_INT precision,
447 else 449 else
448 c = str[i_byte], bytes = 1; 450 c = str[i_byte], bytes = 1;
449 chars = 1; 451 chars = 1;
450 if (dp) 452 thiswidth = char_width (c, dp);
451 {
452 val = DISP_CHAR_VECTOR (dp, c);
453 if (VECTORP (val))
454 thiswidth = sanitize_char_width (ASIZE (val));
455 else
456 thiswidth = CHAR_WIDTH (c);
457 }
458 else
459 {
460 thiswidth = CHAR_WIDTH (c);
461 }
462 } 453 }
463 454
464 if (precision <= 0) 455 if (precision <= 0)
diff --git a/src/charset.c b/src/charset.c
index 49fc7288069..57e1603fc19 100644
--- a/src/charset.c
+++ b/src/charset.c
@@ -1,5 +1,5 @@
1/* Basic character set support. 1/* Basic character set support.
2 Copyright (C) 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 2001-2012 Free Software Foundation, Inc.
3 Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 3 Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
4 2005, 2006, 2007, 2008, 2009, 2010, 2011 4 2005, 2006, 2007, 2008, 2009, 2010, 2011
5 National Institute of Advanced Industrial Science and Technology (AIST) 5 National Institute of Advanced Industrial Science and Technology (AIST)
diff --git a/src/charset.h b/src/charset.h
index 5ca83130b77..98bf35f644a 100644
--- a/src/charset.h
+++ b/src/charset.h
@@ -1,5 +1,5 @@
1/* Header for charset handler. 1/* Header for charset handler.
2 Copyright (C) 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 2001-2012 Free Software Foundation, Inc.
3 Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 3 Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
4 2005, 2006, 2007, 2008, 2009, 2010, 2011 4 2005, 2006, 2007, 2008, 2009, 2010, 2011
5 National Institute of Advanced Industrial Science and Technology (AIST) 5 National Institute of Advanced Industrial Science and Technology (AIST)
diff --git a/src/cm.c b/src/cm.c
index 609632eba11..1922cd8140a 100644
--- a/src/cm.c
+++ b/src/cm.c
@@ -1,5 +1,5 @@
1/* Cursor motion subroutines for GNU Emacs. 1/* Cursor motion subroutines for GNU Emacs.
2 Copyright (C) 1985, 1995, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1985, 1995, 2001-2012 Free Software Foundation, Inc.
3 based primarily on public domain code written by Chris Torek 3 based primarily on public domain code written by Chris Torek
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
diff --git a/src/cm.h b/src/cm.h
index a8c7e0d7c4b..e3e2b71dba6 100644
--- a/src/cm.h
+++ b/src/cm.h
@@ -1,5 +1,5 @@
1/* Cursor motion calculation definitions for GNU Emacs 1/* Cursor motion calculation definitions for GNU Emacs
2 Copyright (C) 1985, 1989, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1985, 1989, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/cmds.c b/src/cmds.c
index 5a155ac77a5..a020a447eb1 100644
--- a/src/cmds.c
+++ b/src/cmds.c
@@ -1,6 +1,6 @@
1/* Simple built-in editing commands. 1/* Simple built-in editing commands.
2 2
3Copyright (C) 1985, 1993-1998, 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 1985, 1993-1998, 2001-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/coding.c b/src/coding.c
index 2db5385c932..5c3048f95e8 100644
--- a/src/coding.c
+++ b/src/coding.c
@@ -1,5 +1,5 @@
1/* Coding system handler (conversion, detection, etc). 1/* Coding system handler (conversion, detection, etc).
2 Copyright (C) 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 2001-2012 Free Software Foundation, Inc.
3 Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 3 Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
4 2005, 2006, 2007, 2008, 2009, 2010, 2011 4 2005, 2006, 2007, 2008, 2009, 2010, 2011
5 National Institute of Advanced Industrial Science and Technology (AIST) 5 National Institute of Advanced Industrial Science and Technology (AIST)
diff --git a/src/coding.h b/src/coding.h
index b694e6c6b6e..908e222cc68 100644
--- a/src/coding.h
+++ b/src/coding.h
@@ -1,5 +1,5 @@
1/* Header for coding system handler. 1/* Header for coding system handler.
2 Copyright (C) 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 2001-2012 Free Software Foundation, Inc.
3 Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 3 Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
4 2005, 2006, 2007, 2008, 2009, 2010, 2011 4 2005, 2006, 2007, 2008, 2009, 2010, 2011
5 National Institute of Advanced Industrial Science and Technology (AIST) 5 National Institute of Advanced Industrial Science and Technology (AIST)
@@ -485,7 +485,7 @@ struct coding_system
485 element. The following elements are OFFSET, ANNOTATION-TYPE, and 485 element. The following elements are OFFSET, ANNOTATION-TYPE, and
486 a sequence of actual data for the annotation. OFFSET is a 486 a sequence of actual data for the annotation. OFFSET is a
487 character position offset from dst_pos or src_pos, 487 character position offset from dst_pos or src_pos,
488 ANNOTATION-TYPE specfies the meaning of the annotation and how to 488 ANNOTATION-TYPE specifies the meaning of the annotation and how to
489 handle the following data.. */ 489 handle the following data.. */
490 int *charbuf; 490 int *charbuf;
491 int charbuf_size, charbuf_used; 491 int charbuf_size, charbuf_used;
diff --git a/src/commands.h b/src/commands.h
index bcd5de44180..36f600cee01 100644
--- a/src/commands.h
+++ b/src/commands.h
@@ -1,5 +1,5 @@
1/* Definitions needed by most editing commands. 1/* Definitions needed by most editing commands.
2 Copyright (C) 1985, 1994, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1985, 1994, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/composite.c b/src/composite.c
index 885e0262673..c44c8e565d0 100644
--- a/src/composite.c
+++ b/src/composite.c
@@ -1,5 +1,5 @@
1/* Composite sequence support. 1/* Composite sequence support.
2 Copyright (C) 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 2001-2012 Free Software Foundation, Inc.
3 Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 3 Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
4 National Institute of Advanced Industrial Science and Technology (AIST) 4 National Institute of Advanced Industrial Science and Technology (AIST)
5 Registration Number H14PRO021 5 Registration Number H14PRO021
diff --git a/src/composite.h b/src/composite.h
index 60145b10bd9..56647503982 100644
--- a/src/composite.h
+++ b/src/composite.h
@@ -1,5 +1,5 @@
1/* Header for composite sequence handler. 1/* Header for composite sequence handler.
2 Copyright (C) 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 2001-2012 Free Software Foundation, Inc.
3 Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 3 Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
4 National Institute of Advanced Industrial Science and Technology (AIST) 4 National Institute of Advanced Industrial Science and Technology (AIST)
5 Registration Number H14PRO021 5 Registration Number H14PRO021
diff --git a/src/data.c b/src/data.c
index 0ebb17a2e01..bd1d89992cb 100644
--- a/src/data.c
+++ b/src/data.c
@@ -1,5 +1,5 @@
1/* Primitive operations on Lisp data types for GNU Emacs Lisp interpreter. 1/* Primitive operations on Lisp data types for GNU Emacs Lisp interpreter.
2 Copyright (C) 1985-1986, 1988, 1993-1995, 1997-2011 2 Copyright (C) 1985-1986, 1988, 1993-1995, 1997-2012
3 Free Software Foundation, Inc. 3 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
diff --git a/src/dbusbind.c b/src/dbusbind.c
index c5448ee5e7a..c89867fbae6 100644
--- a/src/dbusbind.c
+++ b/src/dbusbind.c
@@ -1,5 +1,5 @@
1/* Elisp bindings for D-Bus. 1/* Elisp bindings for D-Bus.
2 Copyright (C) 2007-2011 Free Software Foundation, Inc. 2 Copyright (C) 2007-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/deps.mk b/src/deps.mk
index c61b01a95c4..c7316a24dad 100644
--- a/src/deps.mk
+++ b/src/deps.mk
@@ -1,6 +1,6 @@
1### deps.mk --- src/Makefile fragment for GNU Emacs 1### deps.mk --- src/Makefile fragment for GNU Emacs
2 2
3## Copyright (C) 1985, 1987-1988, 1993-1995, 1999-2011 3## Copyright (C) 1985, 1987-1988, 1993-1995, 1999-2012
4## Free Software Foundation, Inc. 4## Free Software Foundation, Inc.
5 5
6## This file is part of GNU Emacs. 6## This file is part of GNU Emacs.
diff --git a/src/dired.c b/src/dired.c
index 2b5f3b40641..9b0f94a0760 100644
--- a/src/dired.c
+++ b/src/dired.c
@@ -1,5 +1,5 @@
1/* Lisp functions for making directory listings. 1/* Lisp functions for making directory listings.
2 Copyright (C) 1985-1986, 1993-1994, 1999-2011 Free Software Foundation, Inc. 2 Copyright (C) 1985-1986, 1993-1994, 1999-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/dispextern.h b/src/dispextern.h
index 5228a71ba3f..2c59f4f8ead 100644
--- a/src/dispextern.h
+++ b/src/dispextern.h
@@ -1,6 +1,6 @@
1/* Interface definitions for display code. 1/* Interface definitions for display code.
2 2
3Copyright (C) 1985, 1993-1994, 1997-2011 Free Software Foundation, Inc. 3Copyright (C) 1985, 1993-1994, 1997-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/dispnew.c b/src/dispnew.c
index 2c0e74d0dde..9e57bbb28bf 100644
--- a/src/dispnew.c
+++ b/src/dispnew.c
@@ -1,5 +1,5 @@
1/* Updating of data structures for redisplay. 1/* Updating of data structures for redisplay.
2 Copyright (C) 1985-1988, 1993-1995, 1997-2011 Free Software Foundation, Inc. 2 Copyright (C) 1985-1988, 1993-1995, 1997-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
@@ -62,7 +62,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
62#include <errno.h> 62#include <errno.h>
63 63
64/* Get number of chars of output now in the buffer of a stdio stream. 64/* Get number of chars of output now in the buffer of a stdio stream.
65 This ought to be built in in stdio, but it isn't. Some s- files 65 This ought to be built in stdio, but it isn't. Some s- files
66 override this because their stdio internals differ. */ 66 override this because their stdio internals differ. */
67 67
68#ifdef __GNU_LIBRARY__ 68#ifdef __GNU_LIBRARY__
diff --git a/src/disptab.h b/src/disptab.h
index e70079d2098..2e041707eea 100644
--- a/src/disptab.h
+++ b/src/disptab.h
@@ -1,5 +1,5 @@
1/* Things for GLYPHS and glyph tables. 1/* Things for GLYPHS and glyph tables.
2 Copyright (C) 1993, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1993, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/doc.c b/src/doc.c
index 80aaba9f7b2..7bdb8c658b0 100644
--- a/src/doc.c
+++ b/src/doc.c
@@ -1,5 +1,5 @@
1/* Record indices of function doc strings stored in a file. 1/* Record indices of function doc strings stored in a file.
2 Copyright (C) 1985-1986, 1993-1995, 1997-2011 2 Copyright (C) 1985-1986, 1993-1995, 1997-2012
3 Free Software Foundation, Inc. 3 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
diff --git a/src/doprnt.c b/src/doprnt.c
index 35af2297ff4..b8eb0f07199 100644
--- a/src/doprnt.c
+++ b/src/doprnt.c
@@ -1,7 +1,7 @@
1/* Output like sprintf to a buffer of specified size. 1/* Output like sprintf to a buffer of specified size.
2 Also takes args differently: pass one pointer to the end 2 Also takes args differently: pass one pointer to the end
3 of the format string in addition to the format string itself. 3 of the format string in addition to the format string itself.
4 Copyright (C) 1985, 2001-2011 Free Software Foundation, Inc. 4 Copyright (C) 1985, 2001-2012 Free Software Foundation, Inc.
5 5
6This file is part of GNU Emacs. 6This file is part of GNU Emacs.
7 7
diff --git a/src/dosfns.c b/src/dosfns.c
index ab3433b7902..8ef672fb8bb 100644
--- a/src/dosfns.c
+++ b/src/dosfns.c
@@ -1,6 +1,6 @@
1/* MS-DOS specific Lisp utilities. Coded by Manabu Higashida, 1991. 1/* MS-DOS specific Lisp utilities. Coded by Manabu Higashida, 1991.
2 Major changes May-July 1993 Morten Welinder (only 10% original code left) 2 Major changes May-July 1993 Morten Welinder (only 10% original code left)
3 Copyright (C) 1991, 1993, 1996-1998, 2001-2011 Free Software Foundation, Inc. 3 Copyright (C) 1991, 1993, 1996-1998, 2001-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/dosfns.h b/src/dosfns.h
index 89800598d28..9747c364d71 100644
--- a/src/dosfns.h
+++ b/src/dosfns.h
@@ -2,7 +2,7 @@
2 Coded by Manabu Higashida, 1991. 2 Coded by Manabu Higashida, 1991.
3 Modified by Morten Welinder, 1993-1994. 3 Modified by Morten Welinder, 1993-1994.
4 4
5Copyright (C) 1991, 1994-1995, 1997, 1999, 2001-2011 5Copyright (C) 1991, 1994-1995, 1997, 1999, 2001-2012
6 Free Software Foundation, Inc. 6 Free Software Foundation, Inc.
7 7
8This file is part of GNU Emacs. 8This file is part of GNU Emacs.
diff --git a/src/editfns.c b/src/editfns.c
index 7077f40e51c..bbeb5033664 100644
--- a/src/editfns.c
+++ b/src/editfns.c
@@ -1,6 +1,6 @@
1/* Lisp functions pertaining to editing. 1/* Lisp functions pertaining to editing.
2 2
3Copyright (C) 1985-1987, 1989, 1993-2011 Free Software Foundation, Inc. 3Copyright (C) 1985-1987, 1989, 1993-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/emacs-icon.h b/src/emacs-icon.h
index 292d1a023d6..590d874ca82 100644
--- a/src/emacs-icon.h
+++ b/src/emacs-icon.h
@@ -1,7 +1,7 @@
1/* XPM */ 1/* XPM */
2/* Emacs icon 2/* Emacs icon
3 3
4Copyright (C) 2008-2011 Free Software Foundation, Inc. 4Copyright (C) 2008-2012 Free Software Foundation, Inc.
5 5
6Author: Kentaro Ohkouchi <nanasess@fsm.ne.jp> 6Author: Kentaro Ohkouchi <nanasess@fsm.ne.jp>
7 7
diff --git a/src/emacs.c b/src/emacs.c
index f4fa0eb0b9e..0e77223ee00 100644
--- a/src/emacs.c
+++ b/src/emacs.c
@@ -1,6 +1,6 @@
1/* Fully extensible Emacs, running on Unix, intended for GNU. 1/* Fully extensible Emacs, running on Unix, intended for GNU.
2 2
3Copyright (C) 1985-1987, 1993-1995, 1997-1999, 2001-2011 3Copyright (C) 1985-1987, 1993-1995, 1997-1999, 2001-2012
4 Free Software Foundation, Inc. 4 Free Software Foundation, Inc.
5 5
6This file is part of GNU Emacs. 6This file is part of GNU Emacs.
@@ -98,7 +98,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
98#endif 98#endif
99 99
100static const char emacs_version[] = VERSION; 100static const char emacs_version[] = VERSION;
101static const char emacs_copyright[] = "Copyright (C) 2011 Free Software Foundation, Inc."; 101static const char emacs_copyright[] = "Copyright (C) 2012 Free Software Foundation, Inc.";
102 102
103/* Make these values available in GDB, which doesn't see macros. */ 103/* Make these values available in GDB, which doesn't see macros. */
104 104
@@ -2480,9 +2480,11 @@ The value is nil if that directory's name is not known. */);
2480 2480
2481 DEFVAR_LISP ("installation-directory", Vinstallation_directory, 2481 DEFVAR_LISP ("installation-directory", Vinstallation_directory,
2482 doc: /* A directory within which to look for the `lib-src' and `etc' directories. 2482 doc: /* A directory within which to look for the `lib-src' and `etc' directories.
2483This is non-nil when we can't find those directories in their standard 2483In an installed Emacs, this is normally nil. It is non-nil if
2484installed locations, but we can find them near where the Emacs executable 2484both `lib-src' (on MS-DOS, `info') and `etc' directories are found
2485was found. */); 2485within the variable `invocation-directory' or its parent. For example,
2486this is the case when running an uninstalled Emacs executable from its
2487build directory. */);
2486 Vinstallation_directory = Qnil; 2488 Vinstallation_directory = Qnil;
2487 2489
2488 DEFVAR_LISP ("system-messages-locale", Vsystem_messages_locale, 2490 DEFVAR_LISP ("system-messages-locale", Vsystem_messages_locale,
diff --git a/src/emacsgtkfixed.c b/src/emacsgtkfixed.c
index d9084bf9a98..fba672ff74d 100644
--- a/src/emacsgtkfixed.c
+++ b/src/emacsgtkfixed.c
@@ -1,7 +1,7 @@
1/* A Gtk Widget that inherits GtkFixed, but can be shrunk. 1/* A Gtk Widget that inherits GtkFixed, but can be shrunk.
2This file is only use when compiling with Gtk+ 3. 2This file is only use when compiling with Gtk+ 3.
3 3
4Copyright (C) 2011 Free Software Foundation, Inc. 4Copyright (C) 2011-2012 Free Software Foundation, Inc.
5 5
6This file is part of GNU Emacs. 6This file is part of GNU Emacs.
7 7
diff --git a/src/emacsgtkfixed.h b/src/emacsgtkfixed.h
index c70e9a3efe3..90fb37e521b 100644
--- a/src/emacsgtkfixed.h
+++ b/src/emacsgtkfixed.h
@@ -1,7 +1,7 @@
1/* A Gtk Widget that inherits GtkFixed, but can be shrunk. 1/* A Gtk Widget that inherits GtkFixed, but can be shrunk.
2This file is only use when compiling with Gtk+ 3. 2This file is only use when compiling with Gtk+ 3.
3 3
4Copyright (C) 2011 Free Software Foundation, Inc. 4Copyright (C) 2011-2012 Free Software Foundation, Inc.
5 5
6This file is part of GNU Emacs. 6This file is part of GNU Emacs.
7 7
diff --git a/src/epaths.in b/src/epaths.in
index 54131f0e179..17cb65a3234 100644
--- a/src/epaths.in
+++ b/src/epaths.in
@@ -1,6 +1,6 @@
1/* Hey Emacs, this is -*- C -*- code! */ 1/* Hey Emacs, this is -*- C -*- code! */
2/* 2/*
3Copyright (C) 1993, 1995, 1997, 1999, 2001-2011 3Copyright (C) 1993, 1995, 1997, 1999, 2001-2012
4 Free Software Foundation, Inc. 4 Free Software Foundation, Inc.
5 5
6This file is part of GNU Emacs. 6This file is part of GNU Emacs.
@@ -19,14 +19,21 @@ You should have received a copy of the GNU General Public License
19along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ 19along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
20 20
21 21
22/* The default search path for Lisp function "load". 22/* The default value of load-path, which is the search path for
23 This sets load-path. */ 23 the Lisp function "load". Configure (using "make epaths-force")
24#define PATH_LOADSEARCH "/usr/local/lib/emacs/lisp" 24 sets this to $lisppath, which typically has a value like:
25 <datadir>/emacs/VERSION/site-lisp:<datadir>/emacs/site-lisp:
26 <datadir>/emacs/VERSION/lisp:<datadir>/emacs/VERSION/leim
27 where datadir is eg /usr/local/share.
28 Configure prepends any $locallisppath, as set by the
29 --enable-locallisppath argument.
30*/
31#define PATH_LOADSEARCH "/usr/local/share/emacs/lisp"
25 32
26/* Like PATH_LOADSEARCH, but used only when Emacs is dumping. This 33/* Like PATH_LOADSEARCH, but used only during the build process
27 path is usually identical to PATH_LOADSEARCH except that the entry 34 when Emacs is dumping. Configure (using "make epaths-force") sets
28 for the directory containing the installed lisp files has been 35 this to $buildlisppath, which normally has the value: <srcdir>/lisp.
29 replaced with ../lisp. */ 36*/
30#define PATH_DUMPLOADSEARCH "../lisp" 37#define PATH_DUMPLOADSEARCH "../lisp"
31 38
32/* The extra search path for programs to invoke. This is appended to 39/* The extra search path for programs to invoke. This is appended to
@@ -34,12 +41,12 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
34 variable exec-path and the first file name in it sets the Lisp 41 variable exec-path and the first file name in it sets the Lisp
35 variable exec-directory. exec-directory is used for finding 42 variable exec-directory. exec-directory is used for finding
36 executables and other architecture-dependent files. */ 43 executables and other architecture-dependent files. */
37#define PATH_EXEC "/usr/local/lib/emacs/etc" 44#define PATH_EXEC "/usr/local/libexec/emacs"
38 45
39/* Where Emacs should look for its architecture-independent data 46/* Where Emacs should look for its architecture-independent data
40 files, like the NEWS file. The lisp variable data-directory 47 files, like the NEWS file. The lisp variable data-directory
41 is set to this value. */ 48 is set to this value. */
42#define PATH_DATA "/usr/local/lib/emacs/data" 49#define PATH_DATA "/usr/local/share/emacs/etc"
43 50
44/* Where Emacs should look for X bitmap files. 51/* Where Emacs should look for X bitmap files.
45 The lisp variable x-bitmap-file-path is set based on this value. */ 52 The lisp variable x-bitmap-file-path is set based on this value. */
@@ -47,7 +54,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
47 54
48/* Where Emacs should look for its docstring file. The lisp variable 55/* Where Emacs should look for its docstring file. The lisp variable
49 doc-directory is set to this value. */ 56 doc-directory is set to this value. */
50#define PATH_DOC "/usr/local/lib/emacs/data" 57#define PATH_DOC "/usr/local/share/emacs/etc"
51 58
52/* Where the configuration process believes the info tree lives. The 59/* Where the configuration process believes the info tree lives. The
53 lisp variable configure-info-directory gets its value from this 60 lisp variable configure-info-directory gets its value from this
diff --git a/src/eval.c b/src/eval.c
index 079c7ecb6c2..7b1c516d756 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -1,5 +1,5 @@
1/* Evaluator for GNU Emacs Lisp interpreter. 1/* Evaluator for GNU Emacs Lisp interpreter.
2 Copyright (C) 1985-1987, 1993-1995, 1999-2011 Free Software Foundation, Inc. 2 Copyright (C) 1985-1987, 1993-1995, 1999-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/fileio.c b/src/fileio.c
index 3306085491e..9e940c9a324 100644
--- a/src/fileio.c
+++ b/src/fileio.c
@@ -1,6 +1,6 @@
1/* File IO for GNU Emacs. 1/* File IO for GNU Emacs.
2 2
3Copyright (C) 1985-1988, 1993-2011 Free Software Foundation, Inc. 3Copyright (C) 1985-1988, 1993-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
@@ -90,6 +90,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
90/* Nonzero during writing of auto-save files */ 90/* Nonzero during writing of auto-save files */
91static int auto_saving; 91static int auto_saving;
92 92
93/* Nonzero umask during creation of auto-save directories */
94static int auto_saving_dir_umask;
95
93/* Set by auto_save_1 to mode of original file so Fwrite_region will create 96/* Set by auto_save_1 to mode of original file so Fwrite_region will create
94 a new file with the same mode as the original */ 97 a new file with the same mode as the original */
95static int auto_save_mode_bits; 98static int auto_save_mode_bits;
@@ -2062,7 +2065,7 @@ DEFUN ("make-directory-internal", Fmake_directory_internal,
2062#ifdef WINDOWSNT 2065#ifdef WINDOWSNT
2063 if (mkdir (dir) != 0) 2066 if (mkdir (dir) != 0)
2064#else 2067#else
2065 if (mkdir (dir, 0777) != 0) 2068 if (mkdir (dir, 0777 & ~auto_saving_dir_umask) != 0)
2066#endif 2069#endif
2067 report_file_error ("Creating directory", list1 (directory)); 2070 report_file_error ("Creating directory", list1 (directory));
2068 2071
@@ -5205,16 +5208,18 @@ do_auto_save_unwind_1 (Lisp_Object value) /* used as unwind-protect function */
5205static Lisp_Object 5208static Lisp_Object
5206do_auto_save_make_dir (Lisp_Object dir) 5209do_auto_save_make_dir (Lisp_Object dir)
5207{ 5210{
5208 Lisp_Object mode; 5211 Lisp_Object result;
5209 5212
5210 call2 (Qmake_directory, dir, Qt); 5213 auto_saving_dir_umask = 077;
5211 XSETFASTINT (mode, 0700); 5214 result = call2 (Qmake_directory, dir, Qt);
5212 return Fset_file_modes (dir, mode); 5215 auto_saving_dir_umask = 0;
5216 return result;
5213} 5217}
5214 5218
5215static Lisp_Object 5219static Lisp_Object
5216do_auto_save_eh (Lisp_Object ignore) 5220do_auto_save_eh (Lisp_Object ignore)
5217{ 5221{
5222 auto_saving_dir_umask = 0;
5218 return Qnil; 5223 return Qnil;
5219} 5224}
5220 5225
@@ -5282,7 +5287,7 @@ A non-nil CURRENT-ONLY argument means save only current buffer. */)
5282 dir = Ffile_name_directory (listfile); 5287 dir = Ffile_name_directory (listfile);
5283 if (NILP (Ffile_directory_p (dir))) 5288 if (NILP (Ffile_directory_p (dir)))
5284 internal_condition_case_1 (do_auto_save_make_dir, 5289 internal_condition_case_1 (do_auto_save_make_dir,
5285 dir, Fcons (Fcons (Qfile_error, Qnil), Qnil), 5290 dir, Qt,
5286 do_auto_save_eh); 5291 do_auto_save_eh);
5287 UNGCPRO; 5292 UNGCPRO;
5288 } 5293 }
diff --git a/src/filelock.c b/src/filelock.c
index 5ee2c039b81..2613eec4aca 100644
--- a/src/filelock.c
+++ b/src/filelock.c
@@ -1,5 +1,5 @@
1/* Lock files for editing. 1/* Lock files for editing.
2 Copyright (C) 1985-1987, 1993-1994, 1996, 1998-2011 2 Copyright (C) 1985-1987, 1993-1994, 1996, 1998-2012
3 Free Software Foundation, Inc. 3 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
diff --git a/src/firstfile.c b/src/firstfile.c
index 98933b26c7e..84511cfe0ad 100644
--- a/src/firstfile.c
+++ b/src/firstfile.c
@@ -1,5 +1,5 @@
1/* Mark beginning of data space to dump as pure, for GNU Emacs. 1/* Mark beginning of data space to dump as pure, for GNU Emacs.
2 Copyright (C) 1997, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1997, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/floatfns.c b/src/floatfns.c
index 2011b4d942d..c44784f2120 100644
--- a/src/floatfns.c
+++ b/src/floatfns.c
@@ -1,6 +1,6 @@
1/* Primitive operations on floating point for GNU Emacs Lisp interpreter. 1/* Primitive operations on floating point for GNU Emacs Lisp interpreter.
2 2
3Copyright (C) 1988, 1993-1994, 1999, 2001-2011 3Copyright (C) 1988, 1993-1994, 1999, 2001-2012
4 Free Software Foundation, Inc. 4 Free Software Foundation, Inc.
5 5
6Author: Wolfgang Rupprecht 6Author: Wolfgang Rupprecht
diff --git a/src/fns.c b/src/fns.c
index 3154db62ec7..2c9ce915ae5 100644
--- a/src/fns.c
+++ b/src/fns.c
@@ -1,5 +1,5 @@
1/* Random utility Lisp functions. 1/* Random utility Lisp functions.
2 Copyright (C) 1985-1987, 1993-1995, 1997-2011 2 Copyright (C) 1985-1987, 1993-1995, 1997-2012
3 Free Software Foundation, Inc. 3 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
diff --git a/src/font.c b/src/font.c
index 6ab65281a48..43b74b5b6f8 100644
--- a/src/font.c
+++ b/src/font.c
@@ -1,6 +1,6 @@
1/* font.c -- "Font" primitives. 1/* font.c -- "Font" primitives.
2 2
3Copyright (C) 2006-2011 Free Software Foundation, Inc. 3Copyright (C) 2006-2012 Free Software Foundation, Inc.
4Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011 4Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011
5 National Institute of Advanced Industrial Science and Technology (AIST) 5 National Institute of Advanced Industrial Science and Technology (AIST)
6 Registration Number H13PRO009 6 Registration Number H13PRO009
diff --git a/src/font.h b/src/font.h
index 93c20262956..663cc675c05 100644
--- a/src/font.h
+++ b/src/font.h
@@ -1,5 +1,5 @@
1/* font.h -- Interface definition for font handling. 1/* font.h -- Interface definition for font handling.
2 Copyright (C) 2006-2011 Free Software Foundation, Inc. 2 Copyright (C) 2006-2012 Free Software Foundation, Inc.
3 Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011 3 Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011
4 National Institute of Advanced Industrial Science and Technology (AIST) 4 National Institute of Advanced Industrial Science and Technology (AIST)
5 Registration Number H13PRO009 5 Registration Number H13PRO009
diff --git a/src/fontset.c b/src/fontset.c
index 281ac92f82d..d06491ddf25 100644
--- a/src/fontset.c
+++ b/src/fontset.c
@@ -1,6 +1,6 @@
1/* Fontset handler. 1/* Fontset handler.
2 2
3Copyright (C) 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 2001-2012 Free Software Foundation, Inc.
4Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 4Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
5 2005, 2006, 2007, 2008, 2009, 2010, 2011 5 2005, 2006, 2007, 2008, 2009, 2010, 2011
6 National Institute of Advanced Industrial Science and Technology (AIST) 6 National Institute of Advanced Industrial Science and Technology (AIST)
diff --git a/src/fontset.h b/src/fontset.h
index 8831f4ce0b7..6d6ad5dbfc6 100644
--- a/src/fontset.h
+++ b/src/fontset.h
@@ -1,5 +1,5 @@
1/* Header for fontset handler. 1/* Header for fontset handler.
2 Copyright (C) 1998, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1998, 2001-2012 Free Software Foundation, Inc.
3 Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 3 Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
4 2005, 2006, 2007, 2008, 2009, 2010, 2011 4 2005, 2006, 2007, 2008, 2009, 2010, 2011
5 National Institute of Advanced Industrial Science and Technology (AIST) 5 National Institute of Advanced Industrial Science and Technology (AIST)
diff --git a/src/frame.c b/src/frame.c
index bd97c5f18c7..8505398a260 100644
--- a/src/frame.c
+++ b/src/frame.c
@@ -1,6 +1,6 @@
1/* Generic frame functions. 1/* Generic frame functions.
2 2
3Copyright (C) 1993-1995, 1997, 1999-2011 Free Software Foundation, Inc. 3Copyright (C) 1993-1995, 1997, 1999-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/frame.h b/src/frame.h
index a32d1c549b5..5c89fc69628 100644
--- a/src/frame.h
+++ b/src/frame.h
@@ -1,5 +1,5 @@
1/* Define frame-object for GNU Emacs. 1/* Define frame-object for GNU Emacs.
2 Copyright (C) 1993-1994, 1999-2011 Free Software Foundation, Inc. 2 Copyright (C) 1993-1994, 1999-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/fringe.c b/src/fringe.c
index da896e07b76..5285d09dfb0 100644
--- a/src/fringe.c
+++ b/src/fringe.c
@@ -1,5 +1,5 @@
1/* Fringe handling (split from xdisp.c). 1/* Fringe handling (split from xdisp.c).
2 Copyright (C) 1985-1988, 1993-1995, 1997-2011 Free Software Foundation, Inc. 2 Copyright (C) 1985-1988, 1993-1995, 1997-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/ftfont.c b/src/ftfont.c
index dbb2ce2745e..3c45eb2f72f 100644
--- a/src/ftfont.c
+++ b/src/ftfont.c
@@ -1,5 +1,5 @@
1/* ftfont.c -- FreeType font driver. 1/* ftfont.c -- FreeType font driver.
2 Copyright (C) 2006-2011 Free Software Foundation, Inc. 2 Copyright (C) 2006-2012 Free Software Foundation, Inc.
3 Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011 3 Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011
4 National Institute of Advanced Industrial Science and Technology (AIST) 4 National Institute of Advanced Industrial Science and Technology (AIST)
5 Registration Number H13PRO009 5 Registration Number H13PRO009
diff --git a/src/ftxfont.c b/src/ftxfont.c
index e04e802a3db..9fe4d41dcc5 100644
--- a/src/ftxfont.c
+++ b/src/ftxfont.c
@@ -1,5 +1,5 @@
1/* ftxfont.c -- FreeType font driver on X (without using XFT). 1/* ftxfont.c -- FreeType font driver on X (without using XFT).
2 Copyright (C) 2006-2011 Free Software Foundation, Inc. 2 Copyright (C) 2006-2012 Free Software Foundation, Inc.
3 Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011 3 Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011
4 National Institute of Advanced Industrial Science and Technology (AIST) 4 National Institute of Advanced Industrial Science and Technology (AIST)
5 Registration Number H13PRO009 5 Registration Number H13PRO009
diff --git a/src/getpagesize.h b/src/getpagesize.h
index c0c4e504f0a..545082b2e78 100644
--- a/src/getpagesize.h
+++ b/src/getpagesize.h
@@ -1,5 +1,5 @@
1/* Emulate getpagesize on systems that lack it. 1/* Emulate getpagesize on systems that lack it.
2 Copyright (C) 1986, 1992, 1995, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1986, 1992, 1995, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/gnutls.c b/src/gnutls.c
index 500f09432b1..e7801cea746 100644
--- a/src/gnutls.c
+++ b/src/gnutls.c
@@ -1,5 +1,5 @@
1/* GnuTLS glue for GNU Emacs. 1/* GnuTLS glue for GNU Emacs.
2 Copyright (C) 2010-2011 Free Software Foundation, Inc. 2 Copyright (C) 2010-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
@@ -125,6 +125,7 @@ DEF_GNUTLS_FN (ssize_t, gnutls_record_send,
125 (gnutls_session_t, const void *, size_t)); 125 (gnutls_session_t, const void *, size_t));
126DEF_GNUTLS_FN (const char *, gnutls_strerror, (int)); 126DEF_GNUTLS_FN (const char *, gnutls_strerror, (int));
127DEF_GNUTLS_FN (void, gnutls_transport_set_errno, (gnutls_session_t, int)); 127DEF_GNUTLS_FN (void, gnutls_transport_set_errno, (gnutls_session_t, int));
128DEF_GNUTLS_FN (const char *, gnutls_check_version, (const char *));
128DEF_GNUTLS_FN (void, gnutls_transport_set_lowat, (gnutls_session_t, int)); 129DEF_GNUTLS_FN (void, gnutls_transport_set_lowat, (gnutls_session_t, int));
129DEF_GNUTLS_FN (void, gnutls_transport_set_ptr2, 130DEF_GNUTLS_FN (void, gnutls_transport_set_ptr2,
130 (gnutls_session_t, gnutls_transport_ptr_t, 131 (gnutls_session_t, gnutls_transport_ptr_t,
@@ -184,7 +185,11 @@ init_gnutls_functions (Lisp_Object libraries)
184 LOAD_GNUTLS_FN (library, gnutls_record_send); 185 LOAD_GNUTLS_FN (library, gnutls_record_send);
185 LOAD_GNUTLS_FN (library, gnutls_strerror); 186 LOAD_GNUTLS_FN (library, gnutls_strerror);
186 LOAD_GNUTLS_FN (library, gnutls_transport_set_errno); 187 LOAD_GNUTLS_FN (library, gnutls_transport_set_errno);
187 LOAD_GNUTLS_FN (library, gnutls_transport_set_lowat); 188 LOAD_GNUTLS_FN (library, gnutls_check_version);
189 /* We don't need to call gnutls_transport_set_lowat in GnuTLS 2.11.1
190 and later, and the function was removed entirely in 3.0.0. */
191 if (!fn_gnutls_check_version ("2.11.1"))
192 LOAD_GNUTLS_FN (library, gnutls_transport_set_lowat);
188 LOAD_GNUTLS_FN (library, gnutls_transport_set_ptr2); 193 LOAD_GNUTLS_FN (library, gnutls_transport_set_ptr2);
189 LOAD_GNUTLS_FN (library, gnutls_transport_set_pull_function); 194 LOAD_GNUTLS_FN (library, gnutls_transport_set_pull_function);
190 LOAD_GNUTLS_FN (library, gnutls_transport_set_push_function); 195 LOAD_GNUTLS_FN (library, gnutls_transport_set_push_function);
@@ -282,7 +287,12 @@ emacs_gnutls_handshake (struct Lisp_Process *proc)
282 (Note: this is probably not strictly necessary as the lowat 287 (Note: this is probably not strictly necessary as the lowat
283 value is only used when no custom pull/push functions are 288 value is only used when no custom pull/push functions are
284 set.) */ 289 set.) */
285 fn_gnutls_transport_set_lowat (state, 0); 290 /* According to GnuTLS NEWS file, lowat level has been set to
291 zero by default in version 2.11.1, and the function
292 gnutls_transport_set_lowat was removed from the library in
293 version 2.99.0. */
294 if (!fn_gnutls_check_version ("2.11.1"))
295 fn_gnutls_transport_set_lowat (state, 0);
286#else 296#else
287 /* This is how GnuTLS takes sockets: as file descriptors passed 297 /* This is how GnuTLS takes sockets: as file descriptors passed
288 in. For an Emacs process socket, infd and outfd are the 298 in. For an Emacs process socket, infd and outfd are the
diff --git a/src/gnutls.h b/src/gnutls.h
index 076e9fdba9c..474da77aec5 100644
--- a/src/gnutls.h
+++ b/src/gnutls.h
@@ -1,5 +1,5 @@
1/* GnuTLS glue for GNU Emacs. 1/* GnuTLS glue for GNU Emacs.
2 Copyright (C) 2010-2011 Free Software Foundation, Inc. 2 Copyright (C) 2010-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/gtkutil.c b/src/gtkutil.c
index bc71685819e..f7983fdd5a4 100644
--- a/src/gtkutil.c
+++ b/src/gtkutil.c
@@ -1,6 +1,6 @@
1/* Functions for creating and updating GTK widgets. 1/* Functions for creating and updating GTK widgets.
2 2
3Copyright (C) 2003-2011 Free Software Foundation, Inc. 3Copyright (C) 2003-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
@@ -3052,7 +3052,7 @@ xg_update_submenu (GtkWidget *submenu,
3052 } 3052 }
3053 } 3053 }
3054 3054
3055 /* Remove widgets from first structual change. */ 3055 /* Remove widgets from first structural change. */
3056 if (iter) 3056 if (iter)
3057 { 3057 {
3058 /* If we are adding new menu items below, we must remove from 3058 /* If we are adding new menu items below, we must remove from
diff --git a/src/gtkutil.h b/src/gtkutil.h
index 7cc2d21f9c4..2c6ca066719 100644
--- a/src/gtkutil.h
+++ b/src/gtkutil.h
@@ -1,6 +1,6 @@
1/* Definitions and headers for GTK widgets. 1/* Definitions and headers for GTK widgets.
2 2
3Copyright (C) 2003-2011 Free Software Foundation, Inc. 3Copyright (C) 2003-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/image.c b/src/image.c
index 3d189a5504b..f4def3e681e 100644
--- a/src/image.c
+++ b/src/image.c
@@ -1,5 +1,5 @@
1/* Functions for image support on window system. 1/* Functions for image support on window system.
2 Copyright (C) 1989, 1992-2011 Free Software Foundation, Inc. 2 Copyright (C) 1989, 1992-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/indent.c b/src/indent.c
index 07a54c0c1b7..a1fcd2b1018 100644
--- a/src/indent.c
+++ b/src/indent.c
@@ -1,5 +1,5 @@
1/* Indentation functions. 1/* Indentation functions.
2 Copyright (C) 1985-1988, 1993-1995, 1998, 2000-2011 2 Copyright (C) 1985-1988, 1993-1995, 1998, 2000-2012
3 Free Software Foundation, Inc. 3 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
diff --git a/src/indent.h b/src/indent.h
index 55ee934f574..c5114b812c8 100644
--- a/src/indent.h
+++ b/src/indent.h
@@ -1,5 +1,5 @@
1/* Definitions for interface to indent.c 1/* Definitions for interface to indent.c
2 Copyright (C) 1985-1986, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1985-1986, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/insdel.c b/src/insdel.c
index e39a362eac7..34d82fa017d 100644
--- a/src/insdel.c
+++ b/src/insdel.c
@@ -1,5 +1,5 @@
1/* Buffer insertion/deletion and gap motion for GNU Emacs. 1/* Buffer insertion/deletion and gap motion for GNU Emacs.
2 Copyright (C) 1985-1986, 1993-1995, 1997-2011 2 Copyright (C) 1985-1986, 1993-1995, 1997-2012
3 Free Software Foundation, Inc. 3 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
diff --git a/src/intervals.c b/src/intervals.c
index 05b7175ac3f..88f47f58b52 100644
--- a/src/intervals.c
+++ b/src/intervals.c
@@ -1,5 +1,5 @@
1/* Code for doing intervals. 1/* Code for doing intervals.
2 Copyright (C) 1993-1995, 1997-1998, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1993-1995, 1997-1998, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/intervals.h b/src/intervals.h
index 977f3d965a4..7d23ce40f49 100644
--- a/src/intervals.h
+++ b/src/intervals.h
@@ -1,5 +1,5 @@
1/* Definitions and global variables for intervals. 1/* Definitions and global variables for intervals.
2 Copyright (C) 1993-1994, 2000-2011 Free Software Foundation, Inc. 2 Copyright (C) 1993-1994, 2000-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/keyboard.c b/src/keyboard.c
index 2df1ba742ba..c304439f272 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -1,6 +1,6 @@
1/* Keyboard and mouse input; editor command loop. 1/* Keyboard and mouse input; editor command loop.
2 2
3Copyright (C) 1985-1989, 1993-1997, 1999-2011 Free Software Foundation, Inc. 3Copyright (C) 1985-1989, 1993-1997, 1999-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
@@ -2239,8 +2239,8 @@ do { if (polling_stopped_here) start_polling (); \
2239 polling_stopped_here = 0; } while (0) 2239 polling_stopped_here = 0; } while (0)
2240 2240
2241/* read a character from the keyboard; call the redisplay if needed */ 2241/* read a character from the keyboard; call the redisplay if needed */
2242/* commandflag 0 means do not do auto-saving, but do do redisplay. 2242/* commandflag 0 means do not autosave, but do redisplay.
2243 -1 means do not do redisplay, but do do autosaving. 2243 -1 means do not redisplay, but do autosave.
2244 1 means do both. */ 2244 1 means do both. */
2245 2245
2246/* The arguments MAPS and NMAPS are for menu prompting. 2246/* The arguments MAPS and NMAPS are for menu prompting.
@@ -5133,7 +5133,7 @@ make_lispy_position (struct frame *f, Lisp_Object x, Lisp_Object y,
5133 5133
5134 if (WINDOWP (window)) 5134 if (WINDOWP (window))
5135 { 5135 {
5136 /* It's a click in window window at frame coordinates (x,y) */ 5136 /* It's a click in window WINDOW at frame coordinates (X,Y) */
5137 struct window *w = XWINDOW (window); 5137 struct window *w = XWINDOW (window);
5138 Lisp_Object string_info = Qnil; 5138 Lisp_Object string_info = Qnil;
5139 EMACS_INT textpos = -1; 5139 EMACS_INT textpos = -1;
diff --git a/src/keyboard.h b/src/keyboard.h
index d4339d0529b..19d91c84f79 100644
--- a/src/keyboard.h
+++ b/src/keyboard.h
@@ -1,5 +1,5 @@
1/* Declarations useful when processing input. 1/* Declarations useful when processing input.
2 Copyright (C) 1985-1987, 1993, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1985-1987, 1993, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/keymap.c b/src/keymap.c
index b429ca968d7..5b5faec3a65 100644
--- a/src/keymap.c
+++ b/src/keymap.c
@@ -1,5 +1,5 @@
1/* Manipulation of keymaps 1/* Manipulation of keymaps
2 Copyright (C) 1985-1988, 1993-1995, 1998-2011 Free Software Foundation, Inc. 2 Copyright (C) 1985-1988, 1993-1995, 1998-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/keymap.h b/src/keymap.h
index a989f124b14..234ffce471d 100644
--- a/src/keymap.h
+++ b/src/keymap.h
@@ -1,5 +1,5 @@
1/* Functions to manipulate keymaps. 1/* Functions to manipulate keymaps.
2 Copyright (C) 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/lastfile.c b/src/lastfile.c
index ab07e748930..f8a64797362 100644
--- a/src/lastfile.c
+++ b/src/lastfile.c
@@ -1,5 +1,5 @@
1/* Mark end of data space to dump as pure, for GNU Emacs. 1/* Mark end of data space to dump as pure, for GNU Emacs.
2 Copyright (C) 1985, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1985, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/lisp.h b/src/lisp.h
index a80d39765e0..366d24a737d 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -1,5 +1,5 @@
1/* Fundamental definitions for GNU Emacs Lisp interpreter. 1/* Fundamental definitions for GNU Emacs Lisp interpreter.
2 Copyright (C) 1985-1987, 1993-1995, 1997-2011 2 Copyright (C) 1985-1987, 1993-1995, 1997-2012
3 Free Software Foundation, Inc. 3 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
diff --git a/src/lisp.mk b/src/lisp.mk
index 68748b27f28..c082630f717 100644
--- a/src/lisp.mk
+++ b/src/lisp.mk
@@ -1,6 +1,6 @@
1### lisp.mk --- src/Makefile fragment for GNU Emacs 1### lisp.mk --- src/Makefile fragment for GNU Emacs
2 2
3## Copyright (C) 1985, 1987-1988, 1993-1995, 1999-2011 3## Copyright (C) 1985, 1987-1988, 1993-1995, 1999-2012
4## Free Software Foundation, Inc. 4## Free Software Foundation, Inc.
5 5
6## This file is part of GNU Emacs. 6## This file is part of GNU Emacs.
diff --git a/src/lread.c b/src/lread.c
index 7c0b0475786..23cda8eed6d 100644
--- a/src/lread.c
+++ b/src/lread.c
@@ -1,6 +1,6 @@
1/* Lisp parsing and input streams. 1/* Lisp parsing and input streams.
2 2
3Copyright (C) 1985-1989, 1993-1995, 1997-2011 Free Software Foundation, Inc. 3Copyright (C) 1985-1989, 1993-1995, 1997-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
@@ -3113,7 +3113,7 @@ read1 (register Lisp_Object readcharfun, int *pch, int first_in_list)
3113 if (uninterned_symbol && ! NILP (Vpurify_flag)) 3113 if (uninterned_symbol && ! NILP (Vpurify_flag))
3114 name = make_pure_string (read_buffer, nchars, nbytes, multibyte); 3114 name = make_pure_string (read_buffer, nchars, nbytes, multibyte);
3115 else 3115 else
3116 name = make_specified_string (read_buffer, nchars, nbytes,multibyte); 3116 name = make_specified_string (read_buffer, nchars, nbytes, multibyte);
3117 result = (uninterned_symbol ? Fmake_symbol (name) 3117 result = (uninterned_symbol ? Fmake_symbol (name)
3118 : Fintern (name, Qnil)); 3118 : Fintern (name, Qnil));
3119 3119
@@ -4109,7 +4109,46 @@ init_lread (void)
4109 const char *normal; 4109 const char *normal;
4110 int turn_off_warning = 0; 4110 int turn_off_warning = 0;
4111 4111
4112 /* Compute the default load-path. */ 4112 /* Compute the default Vload-path, with the following logic:
4113 If CANNOT_DUMP just use PATH_LOADSEARCH.
4114 Else if purify-flag (ie dumping) start from PATH_DUMPLOADSEARCH;
4115 otherwise start from PATH_LOADSEARCH.
4116 If !initialized, then just set both Vload_path and dump_path.
4117 If initialized, then if Vload_path != dump_path, do nothing.
4118 (Presumably the load-path has already been changed by something.)
4119 Also do nothing if Vinstallation_directory is nil.
4120 Otherwise:
4121 Remove site-lisp directories from the front of load-path.
4122 Add installation-dir/lisp (if exists and not already a member),
4123 at the front, and turn off warnings about missing directories
4124 (because we are presumably running uninstalled).
4125 If it does not exist, add dump_path at the end instead.
4126 Add installation-dir/leim (if exists and not already a member)
4127 at the front.
4128 Add installation-dir/site-lisp (if !no_site_lisp, and exists
4129 and not already a member) at the front.
4130 If installation-dir != source-dir (ie running an uninstalled,
4131 out-of-tree build) AND install-dir/src/Makefile exists BUT
4132 install-dir/src/Makefile.in does NOT exist (this is a sanity
4133 check), then repeat the above steps for source-dir/lisp,
4134 leim and site-lisp.
4135 Finally, add the previously removed site-lisp directories back
4136 at the front (if !no_site_lisp).
4137
4138 We then warn about any of the load-path elements that do not
4139 exist. The only ones that might not exist are those from
4140 PATH_LOADSEARCH, and perhaps dump_path.
4141
4142 Having done all this, we then throw it all away if purify-flag is
4143 nil (ie, not dumping) and EMACSLOADPATH is set, and just
4144 unconditionally use the latter value instead.
4145 So AFAICS the only net results of all the previous steps will be
4146 possibly to issue some irrelevant warnings.
4147
4148 FIXME? There's a case for saying that if we are running
4149 uninstalled, the eventual installation directories should not yet
4150 be included in load-path.
4151 */
4113#ifdef CANNOT_DUMP 4152#ifdef CANNOT_DUMP
4114 normal = PATH_LOADSEARCH; 4153 normal = PATH_LOADSEARCH;
4115 Vload_path = decode_env_path (0, normal); 4154 Vload_path = decode_env_path (0, normal);
@@ -4119,23 +4158,28 @@ init_lread (void)
4119 else 4158 else
4120 normal = PATH_DUMPLOADSEARCH; 4159 normal = PATH_DUMPLOADSEARCH;
4121 4160
4122 /* In a dumped Emacs, we normally have to reset the value of 4161 /* In a dumped Emacs, we normally reset the value of Vload_path using
4123 Vload_path from PATH_LOADSEARCH, since the value that was dumped 4162 PATH_LOADSEARCH, since the value that was dumped uses lisp/ in
4124 uses ../lisp, instead of the path of the installed elisp 4163 the source directory, instead of the path of the installed elisp
4125 libraries. However, if it appears that Vload_path was changed 4164 libraries. However, if it appears that Vload_path has already been
4126 from the default before dumping, don't override that value. */ 4165 changed from the default that was saved before dumping, don't
4166 change it further. */
4127 if (initialized) 4167 if (initialized)
4128 { 4168 {
4129 if (! NILP (Fequal (dump_path, Vload_path))) 4169 if (! NILP (Fequal (dump_path, Vload_path)))
4130 { 4170 {
4131 Vload_path = decode_env_path (0, normal); 4171 Vload_path = decode_env_path (0, normal);
4132 if (!NILP (Vinstallation_directory)) 4172 if (no_site_lisp || !NILP (Vinstallation_directory))
4133 { 4173 {
4134 Lisp_Object tem, tem1, sitelisp; 4174 Lisp_Object tem, tem1, sitelisp;
4135 4175
4136 /* Remove site-lisp dirs from path temporarily and store 4176 /* Remove "site-lisp" dirs from front of path temporarily
4137 them in sitelisp, then conc them on at the end so 4177 and store them in sitelisp, then conc them on at the
4138 they're always first in path. */ 4178 end so they're always first in path.
4179 Note that this won't work if you used a
4180 --enable-locallisppath element that does not happen
4181 to contain "site-lisp" in its name.
4182 */
4139 sitelisp = Qnil; 4183 sitelisp = Qnil;
4140 while (1) 4184 while (1)
4141 { 4185 {
@@ -4151,96 +4195,99 @@ init_lread (void)
4151 break; 4195 break;
4152 } 4196 }
4153 4197
4154 /* Add to the path the lisp subdir of the 4198 if (!NILP (Vinstallation_directory))
4155 installation dir, if it exists. */
4156 tem = Fexpand_file_name (build_string ("lisp"),
4157 Vinstallation_directory);
4158 tem1 = Ffile_exists_p (tem);
4159 if (!NILP (tem1))
4160 {
4161 if (NILP (Fmember (tem, Vload_path)))
4162 {
4163 turn_off_warning = 1;
4164 Vload_path = Fcons (tem, Vload_path);
4165 }
4166 }
4167 else
4168 /* That dir doesn't exist, so add the build-time
4169 Lisp dirs instead. */
4170 Vload_path = nconc2 (Vload_path, dump_path);
4171
4172 /* Add leim under the installation dir, if it exists. */
4173 tem = Fexpand_file_name (build_string ("leim"),
4174 Vinstallation_directory);
4175 tem1 = Ffile_exists_p (tem);
4176 if (!NILP (tem1))
4177 {
4178 if (NILP (Fmember (tem, Vload_path)))
4179 Vload_path = Fcons (tem, Vload_path);
4180 }
4181
4182 /* Add site-lisp under the installation dir, if it exists. */
4183 if (!no_site_lisp)
4184 { 4199 {
4185 tem = Fexpand_file_name (build_string ("site-lisp"), 4200 /* Add to the path the lisp subdir of the
4201 installation dir, if it exists. */
4202 tem = Fexpand_file_name (build_string ("lisp"),
4186 Vinstallation_directory); 4203 Vinstallation_directory);
4187 tem1 = Ffile_exists_p (tem); 4204 tem1 = Ffile_exists_p (tem);
4188 if (!NILP (tem1)) 4205 if (!NILP (tem1))
4189 { 4206 {
4190 if (NILP (Fmember (tem, Vload_path))) 4207 if (NILP (Fmember (tem, Vload_path)))
4191 Vload_path = Fcons (tem, Vload_path); 4208 {
4209 turn_off_warning = 1;
4210 Vload_path = Fcons (tem, Vload_path);
4211 }
4192 } 4212 }
4193 } 4213 else
4194 4214 /* That dir doesn't exist, so add the build-time
4195 /* If Emacs was not built in the source directory, 4215 Lisp dirs instead. */
4196 and it is run from where it was built, add to load-path 4216 Vload_path = nconc2 (Vload_path, dump_path);
4197 the lisp, leim and site-lisp dirs under that directory. */
4198
4199 if (NILP (Fequal (Vinstallation_directory, Vsource_directory)))
4200 {
4201 Lisp_Object tem2;
4202 4217
4203 tem = Fexpand_file_name (build_string ("src/Makefile"), 4218 /* Add leim under the installation dir, if it exists. */
4219 tem = Fexpand_file_name (build_string ("leim"),
4204 Vinstallation_directory); 4220 Vinstallation_directory);
4205 tem1 = Ffile_exists_p (tem); 4221 tem1 = Ffile_exists_p (tem);
4206 4222 if (!NILP (tem1))
4207 /* Don't be fooled if they moved the entire source tree
4208 AFTER dumping Emacs. If the build directory is indeed
4209 different from the source dir, src/Makefile.in and
4210 src/Makefile will not be found together. */
4211 tem = Fexpand_file_name (build_string ("src/Makefile.in"),
4212 Vinstallation_directory);
4213 tem2 = Ffile_exists_p (tem);
4214 if (!NILP (tem1) && NILP (tem2))
4215 { 4223 {
4216 tem = Fexpand_file_name (build_string ("lisp"),
4217 Vsource_directory);
4218
4219 if (NILP (Fmember (tem, Vload_path))) 4224 if (NILP (Fmember (tem, Vload_path)))
4220 Vload_path = Fcons (tem, Vload_path); 4225 Vload_path = Fcons (tem, Vload_path);
4226 }
4221 4227
4222 tem = Fexpand_file_name (build_string ("leim"), 4228 /* Add site-lisp under the installation dir, if it exists. */
4223 Vsource_directory); 4229 if (!no_site_lisp)
4230 {
4231 tem = Fexpand_file_name (build_string ("site-lisp"),
4232 Vinstallation_directory);
4233 tem1 = Ffile_exists_p (tem);
4234 if (!NILP (tem1))
4235 {
4236 if (NILP (Fmember (tem, Vload_path)))
4237 Vload_path = Fcons (tem, Vload_path);
4238 }
4239 }
4224 4240
4225 if (NILP (Fmember (tem, Vload_path))) 4241 /* If Emacs was not built in the source directory,
4226 Vload_path = Fcons (tem, Vload_path); 4242 and it is run from where it was built, add to load-path
4243 the lisp, leim and site-lisp dirs under that directory. */
4227 4244
4228 if (!no_site_lisp) 4245 if (NILP (Fequal (Vinstallation_directory, Vsource_directory)))
4246 {
4247 Lisp_Object tem2;
4248
4249 tem = Fexpand_file_name (build_string ("src/Makefile"),
4250 Vinstallation_directory);
4251 tem1 = Ffile_exists_p (tem);
4252
4253 /* Don't be fooled if they moved the entire source tree
4254 AFTER dumping Emacs. If the build directory is indeed
4255 different from the source dir, src/Makefile.in and
4256 src/Makefile will not be found together. */
4257 tem = Fexpand_file_name (build_string ("src/Makefile.in"),
4258 Vinstallation_directory);
4259 tem2 = Ffile_exists_p (tem);
4260 if (!NILP (tem1) && NILP (tem2))
4229 { 4261 {
4230 tem = Fexpand_file_name (build_string ("site-lisp"), 4262 tem = Fexpand_file_name (build_string ("lisp"),
4263 Vsource_directory);
4264
4265 if (NILP (Fmember (tem, Vload_path)))
4266 Vload_path = Fcons (tem, Vload_path);
4267
4268 tem = Fexpand_file_name (build_string ("leim"),
4231 Vsource_directory); 4269 Vsource_directory);
4232 4270
4233 if (NILP (Fmember (tem, Vload_path))) 4271 if (NILP (Fmember (tem, Vload_path)))
4234 Vload_path = Fcons (tem, Vload_path); 4272 Vload_path = Fcons (tem, Vload_path);
4273
4274 if (!no_site_lisp)
4275 {
4276 tem = Fexpand_file_name (build_string ("site-lisp"),
4277 Vsource_directory);
4278
4279 if (NILP (Fmember (tem, Vload_path)))
4280 Vload_path = Fcons (tem, Vload_path);
4281 }
4235 } 4282 }
4236 } 4283 } /* Vinstallation_directory != Vsource_directory */
4237 } 4284 } /* if Vinstallation_directory */
4238 if (!NILP (sitelisp) && !no_site_lisp) 4285 if (!NILP (sitelisp) && !no_site_lisp)
4239 Vload_path = nconc2 (Fnreverse (sitelisp), Vload_path); 4286 Vload_path = nconc2 (Fnreverse (sitelisp), Vload_path);
4240 } 4287 } /* if Vinstallation_directory || no_site_lisp */
4241 } 4288 } /* if dump_path == Vload_path */
4242 } 4289 }
4243 else 4290 else /* !initialized */
4244 { 4291 {
4245 /* NORMAL refers to the lisp dir in the source directory. */ 4292 /* NORMAL refers to the lisp dir in the source directory. */
4246 /* We used to add ../lisp at the front here, but 4293 /* We used to add ../lisp at the front here, but
@@ -4250,7 +4297,7 @@ init_lread (void)
4250 Vload_path = decode_env_path (0, normal); 4297 Vload_path = decode_env_path (0, normal);
4251 dump_path = Vload_path; 4298 dump_path = Vload_path;
4252 } 4299 }
4253#endif 4300#endif /* CANNOT_DUMP */
4254 4301
4255#if (!(defined (WINDOWSNT) || (defined (HAVE_NS)))) 4302#if (!(defined (WINDOWSNT) || (defined (HAVE_NS))))
4256 /* When Emacs is invoked over network shares on NT, PATH_LOADSEARCH is 4303 /* When Emacs is invoked over network shares on NT, PATH_LOADSEARCH is
@@ -4258,6 +4305,8 @@ init_lread (void)
4258 confuses users. Since PATH_LOADSEARCH is always overridden by the 4305 confuses users. Since PATH_LOADSEARCH is always overridden by the
4259 EMACSLOADPATH environment variable below, disable the warning on NT. */ 4306 EMACSLOADPATH environment variable below, disable the warning on NT. */
4260 4307
4308 /* HAVE_NS also uses EMACSLOADPATH. */
4309
4261 /* Warn if dirs in the *standard* path don't exist. */ 4310 /* Warn if dirs in the *standard* path don't exist. */
4262 if (!turn_off_warning) 4311 if (!turn_off_warning)
4263 { 4312 {
@@ -4272,6 +4321,10 @@ init_lread (void)
4272 if (STRINGP (dirfile)) 4321 if (STRINGP (dirfile))
4273 { 4322 {
4274 dirfile = Fdirectory_file_name (dirfile); 4323 dirfile = Fdirectory_file_name (dirfile);
4324 /* Do we really need to warn about missing site-lisp dirs?
4325 It's true that the installation should have created
4326 them and added subdirs.el, but it's harmless if they
4327 are not there. */
4275 if (access (SSDATA (dirfile), 0) < 0) 4328 if (access (SSDATA (dirfile), 0) < 0)
4276 dir_warning ("Warning: Lisp directory `%s' does not exist.\n", 4329 dir_warning ("Warning: Lisp directory `%s' does not exist.\n",
4277 XCAR (path_tail)); 4330 XCAR (path_tail));
diff --git a/src/m/alpha.h b/src/m/alpha.h
index 713598fa8b6..2a97a3d5b0c 100644
--- a/src/m/alpha.h
+++ b/src/m/alpha.h
@@ -1,6 +1,6 @@
1/* Machine description file for the alpha chip. 1/* Machine description file for the alpha chip.
2 2
3Copyright (C) 1994, 1997, 1999, 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 1994, 1997, 1999, 2001-2012 Free Software Foundation, Inc.
4 4
5Author: Rainer Schoepf 5Author: Rainer Schoepf
6(according to authors.el) 6(according to authors.el)
diff --git a/src/m/amdx86-64.h b/src/m/amdx86-64.h
index 50fcf8e7872..f0482c733f9 100644
--- a/src/m/amdx86-64.h
+++ b/src/m/amdx86-64.h
@@ -1,6 +1,6 @@
1/* machine description file for AMD x86-64. 1/* machine description file for AMD x86-64.
2 2
3Copyright (C) 2002-2011 Free Software Foundation, Inc. 3Copyright (C) 2002-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/m/ia64.h b/src/m/ia64.h
index 7a8866a9503..2ddc2fdfb17 100644
--- a/src/m/ia64.h
+++ b/src/m/ia64.h
@@ -1,6 +1,6 @@
1/* machine description file for the IA-64 architecture. 1/* machine description file for the IA-64 architecture.
2 2
3Copyright (C) 2000-2011 Free Software Foundation, Inc. 3Copyright (C) 2000-2012 Free Software Foundation, Inc.
4 4
5 Contributed by David Mosberger <davidm@hpl.hp.com> 5 Contributed by David Mosberger <davidm@hpl.hp.com>
6 6
diff --git a/src/m/ibmrs6000.h b/src/m/ibmrs6000.h
index ca2188bc068..9798ad2d3d7 100644
--- a/src/m/ibmrs6000.h
+++ b/src/m/ibmrs6000.h
@@ -1,6 +1,6 @@
1/* R2 AIX machine/system dependent defines 1/* R2 AIX machine/system dependent defines
2 2
3Copyright (C) 1988, 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 1988, 2001-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/m/ibms390x.h b/src/m/ibms390x.h
index 5ea7974b052..aa652a8206a 100644
--- a/src/m/ibms390x.h
+++ b/src/m/ibms390x.h
@@ -1,6 +1,6 @@
1/* Machine description file for IBM S390 in 64-bit mode 1/* Machine description file for IBM S390 in 64-bit mode
2 2
3Copyright (C) 2002-2011 Free Software Foundation, Inc. 3Copyright (C) 2002-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/m/intel386.h b/src/m/intel386.h
index 114b7fef963..78a43e92c21 100644
--- a/src/m/intel386.h
+++ b/src/m/intel386.h
@@ -1,6 +1,6 @@
1/* Machine description file for intel 386. 1/* Machine description file for intel 386.
2 2
3Copyright (C) 1987, 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 1987, 2001-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/m/m68k.h b/src/m/m68k.h
index 16e0b9f0bef..120a2bad293 100644
--- a/src/m/m68k.h
+++ b/src/m/m68k.h
@@ -1,6 +1,6 @@
1/* Machine description file for generic Motorola 68k. 1/* Machine description file for generic Motorola 68k.
2 2
3Copyright (C) 1985, 1995, 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 1985, 1995, 2001-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/m/macppc.h b/src/m/macppc.h
index aef781e2c39..0303ead25d6 100644
--- a/src/m/macppc.h
+++ b/src/m/macppc.h
@@ -1,6 +1,6 @@
1/* machine description file For the powerpc Macintosh. 1/* machine description file For the powerpc Macintosh.
2 2
3Copyright (C) 1994, 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 1994, 2001-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/m/sparc.h b/src/m/sparc.h
index 99668043f30..27b6070ba87 100644
--- a/src/m/sparc.h
+++ b/src/m/sparc.h
@@ -1,6 +1,6 @@
1/* machine description file for Sun 4 SPARC. 1/* machine description file for Sun 4 SPARC.
2 2
3Copyright (C) 1987, 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 1987, 2001-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/m/template.h b/src/m/template.h
index 38649e8ac6d..5f1a46c86e1 100644
--- a/src/m/template.h
+++ b/src/m/template.h
@@ -1,6 +1,6 @@
1/* machine description file template. 1/* machine description file template.
2 2
3Copyright (C) 1985-1986, 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 1985-1986, 2001-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/m/vax.h b/src/m/vax.h
index a375600cead..e4bed4090b9 100644
--- a/src/m/vax.h
+++ b/src/m/vax.h
@@ -1,6 +1,6 @@
1/* machine description file for vax. 1/* machine description file for vax.
2 2
3Copyright (C) 1985-1986, 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 1985-1986, 2001-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/macros.c b/src/macros.c
index 4ecf49834a1..d43e37513f5 100644
--- a/src/macros.c
+++ b/src/macros.c
@@ -1,6 +1,6 @@
1/* Keyboard macros. 1/* Keyboard macros.
2 2
3Copyright (C) 1985-1986, 1993, 2000-2011 Free Software Foundation, Inc. 3Copyright (C) 1985-1986, 1993, 2000-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/macros.h b/src/macros.h
index 7a5d532fbb7..d66784a0246 100644
--- a/src/macros.h
+++ b/src/macros.h
@@ -1,5 +1,5 @@
1/* Definitions for keyboard macro interpretation in GNU Emacs. 1/* Definitions for keyboard macro interpretation in GNU Emacs.
2 Copyright (C) 1985, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1985, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/makefile.w32-in b/src/makefile.w32-in
index 36e4511d845..d7ca325e223 100644
--- a/src/makefile.w32-in
+++ b/src/makefile.w32-in
@@ -1,5 +1,5 @@
1# -*- Makefile -*- for GNU Emacs on the Microsoft W32 API. 1# -*- Makefile -*- for GNU Emacs on the Microsoft W32 API.
2# Copyright (C) 2000-2011 Free Software Foundation, Inc. 2# Copyright (C) 2000-2012 Free Software Foundation, Inc.
3 3
4# This file is part of GNU Emacs. 4# This file is part of GNU Emacs.
5 5
diff --git a/src/marker.c b/src/marker.c
index 675bbc5ad73..75d4fe954fd 100644
--- a/src/marker.c
+++ b/src/marker.c
@@ -1,5 +1,5 @@
1/* Markers: examining, setting and deleting. 1/* Markers: examining, setting and deleting.
2 Copyright (C) 1985, 1997-1998, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1985, 1997-1998, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/mem-limits.h b/src/mem-limits.h
index 86b2f44846d..472e591b38d 100644
--- a/src/mem-limits.h
+++ b/src/mem-limits.h
@@ -1,5 +1,5 @@
1/* Includes for memory limit warnings. 1/* Includes for memory limit warnings.
2 Copyright (C) 1990, 1993-1996, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1990, 1993-1996, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/menu.c b/src/menu.c
index 587f55e14db..df86208c7ef 100644
--- a/src/menu.c
+++ b/src/menu.c
@@ -1,6 +1,6 @@
1/* Platform-independent code for terminal communications. 1/* Platform-independent code for terminal communications.
2 2
3Copyright (C) 1986, 1988, 1993-1994, 1996, 1999-2011 3Copyright (C) 1986, 1988, 1993-1994, 1996, 1999-2012
4 Free Software Foundation, Inc. 4 Free Software Foundation, Inc.
5 5
6This file is part of GNU Emacs. 6This file is part of GNU Emacs.
diff --git a/src/menu.h b/src/menu.h
index 451401b42d5..cb22a5255d6 100644
--- a/src/menu.h
+++ b/src/menu.h
@@ -1,5 +1,5 @@
1/* Functions to manipulate menus. 1/* Functions to manipulate menus.
2 Copyright (C) 2008-2011 Free Software Foundation, Inc. 2 Copyright (C) 2008-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/minibuf.c b/src/minibuf.c
index ad5625e9ee9..f4f65fca485 100644
--- a/src/minibuf.c
+++ b/src/minibuf.c
@@ -1,6 +1,6 @@
1/* Minibuffer input and completion. 1/* Minibuffer input and completion.
2 2
3Copyright (C) 1985-1986, 1993-2011 Free Software Foundation, Inc. 3Copyright (C) 1985-1986, 1993-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/msdos.c b/src/msdos.c
index 64e9d72c784..885cedd3df0 100644
--- a/src/msdos.c
+++ b/src/msdos.c
@@ -1,6 +1,6 @@
1/* MS-DOS specific C utilities. -*- coding: raw-text -*- 1/* MS-DOS specific C utilities. -*- coding: raw-text -*-
2 2
3Copyright (C) 1993-1997, 1999-2011 Free Software Foundation, Inc. 3Copyright (C) 1993-1997, 1999-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/msdos.h b/src/msdos.h
index 3048b5f7e35..a73c1f2901f 100644
--- a/src/msdos.h
+++ b/src/msdos.h
@@ -1,5 +1,5 @@
1/* MS-DOS specific C utilities, interface. 1/* MS-DOS specific C utilities, interface.
2 Copyright (C) 1993, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1993, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/ns.mk b/src/ns.mk
index c364dae7086..d3b5afeb99e 100644
--- a/src/ns.mk
+++ b/src/ns.mk
@@ -1,6 +1,6 @@
1### autodeps.mk --- src/Makefile fragment for GNU Emacs 1### autodeps.mk --- src/Makefile fragment for GNU Emacs
2 2
3## Copyright (C) 2008-2011 Free Software Foundation, Inc. 3## Copyright (C) 2008-2012 Free Software Foundation, Inc.
4 4
5## This file is part of GNU Emacs. 5## This file is part of GNU Emacs.
6 6
diff --git a/src/nsfns.m b/src/nsfns.m
index e41b77e242a..206c4155d01 100644
--- a/src/nsfns.m
+++ b/src/nsfns.m
@@ -1,6 +1,6 @@
1/* Functions for the NeXT/Open/GNUstep and MacOSX window system. 1/* Functions for the NeXT/Open/GNUstep and MacOSX window system.
2 2
3Copyright (C) 1989, 1992-1994, 2005-2006, 2008-2011 3Copyright (C) 1989, 1992-1994, 2005-2006, 2008-2012
4 Free Software Foundation, Inc. 4 Free Software Foundation, Inc.
5 5
6This file is part of GNU Emacs. 6This file is part of GNU Emacs.
@@ -1286,7 +1286,7 @@ This function is an internal primitive--use `make-frame' instead. */)
1286 "foreground", "Foreground", RES_TYPE_STRING); 1286 "foreground", "Foreground", RES_TYPE_STRING);
1287 x_default_parameter (f, parms, Qbackground_color, build_string ("White"), 1287 x_default_parameter (f, parms, Qbackground_color, build_string ("White"),
1288 "background", "Background", RES_TYPE_STRING); 1288 "background", "Background", RES_TYPE_STRING);
1289 /* FIXME: not suppported yet in Nextstep */ 1289 /* FIXME: not supported yet in Nextstep */
1290 x_default_parameter (f, parms, Qline_spacing, Qnil, 1290 x_default_parameter (f, parms, Qline_spacing, Qnil,
1291 "lineSpacing", "LineSpacing", RES_TYPE_NUMBER); 1291 "lineSpacing", "LineSpacing", RES_TYPE_NUMBER);
1292 x_default_parameter (f, parms, Qleft_fringe, Qnil, 1292 x_default_parameter (f, parms, Qleft_fringe, Qnil,
diff --git a/src/nsfont.m b/src/nsfont.m
index eb57f5e5953..9aa7b0865ab 100644
--- a/src/nsfont.m
+++ b/src/nsfont.m
@@ -1,6 +1,6 @@
1/* Font back-end driver for the NeXT/Open/GNUstep and MacOSX window system. 1/* Font back-end driver for the NeXT/Open/GNUstep and MacOSX window system.
2 See font.h 2 See font.h
3 Copyright (C) 2006-2011 Free Software Foundation, Inc. 3 Copyright (C) 2006-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/nsgui.h b/src/nsgui.h
index 99c64cd4cde..0c9a8a01e69 100644
--- a/src/nsgui.h
+++ b/src/nsgui.h
@@ -1,5 +1,5 @@
1/* Definitions and headers for communication on the NeXT/Open/GNUstep API. 1/* Definitions and headers for communication on the NeXT/Open/GNUstep API.
2 Copyright (C) 1995, 2005, 2008-2011 Free Software Foundation, Inc. 2 Copyright (C) 1995, 2005, 2008-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/nsimage.m b/src/nsimage.m
index 2cb0c3bff76..82a176975ff 100644
--- a/src/nsimage.m
+++ b/src/nsimage.m
@@ -1,5 +1,5 @@
1/* Image support for the NeXT/Open/GNUstep and MacOSX window system. 1/* Image support for the NeXT/Open/GNUstep and MacOSX window system.
2 Copyright (C) 1989, 1992-1994, 2005-2006, 2008-2011 2 Copyright (C) 1989, 1992-1994, 2005-2006, 2008-2012
3 Free Software Foundation, Inc. 3 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
diff --git a/src/nsmenu.m b/src/nsmenu.m
index 94c6b6a6198..7a6434941d2 100644
--- a/src/nsmenu.m
+++ b/src/nsmenu.m
@@ -1,5 +1,5 @@
1/* NeXT/Open/GNUstep and MacOSX Cocoa menu and toolbar module. 1/* NeXT/Open/GNUstep and MacOSX Cocoa menu and toolbar module.
2 Copyright (C) 2007-2011 Free Software Foundation, Inc. 2 Copyright (C) 2007-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/nsselect.m b/src/nsselect.m
index 928eb8652dc..120dcb34f67 100644
--- a/src/nsselect.m
+++ b/src/nsselect.m
@@ -1,5 +1,5 @@
1/* NeXT/Open/GNUstep / MacOSX Cocoa selection processing for emacs. 1/* NeXT/Open/GNUstep / MacOSX Cocoa selection processing for emacs.
2 Copyright (C) 1993-1994, 2005-2006, 2008-2011 2 Copyright (C) 1993-1994, 2005-2006, 2008-2012
3 Free Software Foundation, Inc. 3 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
diff --git a/src/nsterm.h b/src/nsterm.h
index 14918cca90d..bc535b47d97 100644
--- a/src/nsterm.h
+++ b/src/nsterm.h
@@ -1,5 +1,5 @@
1/* Definitions and headers for communication with NeXT/Open/GNUstep API. 1/* Definitions and headers for communication with NeXT/Open/GNUstep API.
2 Copyright (C) 1989, 1993, 2005, 2008-2011 Free Software Foundation, Inc. 2 Copyright (C) 1989, 1993, 2005, 2008-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/nsterm.m b/src/nsterm.m
index f8e69f98942..70d3cc0e8b8 100644
--- a/src/nsterm.m
+++ b/src/nsterm.m
@@ -1,5 +1,5 @@
1/* NeXT/Open/GNUstep / MacOSX communication module. 1/* NeXT/Open/GNUstep / MacOSX communication module.
2 Copyright (C) 1989, 1993-1994, 2005-2006, 2008-2011 2 Copyright (C) 1989, 1993-1994, 2005-2006, 2008-2012
3 Free Software Foundation, Inc. 3 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
diff --git a/src/print.c b/src/print.c
index 8e4a38c4ae9..40e0fb6b855 100644
--- a/src/print.c
+++ b/src/print.c
@@ -1,6 +1,6 @@
1/* Lisp object printing and output streams. 1/* Lisp object printing and output streams.
2 2
3Copyright (C) 1985-1986, 1988, 1993-1995, 1997-2011 3Copyright (C) 1985-1986, 1988, 1993-1995, 1997-2012
4 Free Software Foundation, Inc. 4 Free Software Foundation, Inc.
5 5
6This file is part of GNU Emacs. 6This file is part of GNU Emacs.
diff --git a/src/process.c b/src/process.c
index e4673d24a2a..bdf16b7dbd2 100644
--- a/src/process.c
+++ b/src/process.c
@@ -1,6 +1,6 @@
1/* Asynchronous subprocess control for GNU Emacs. 1/* Asynchronous subprocess control for GNU Emacs.
2 2
3Copyright (C) 1985-1988, 1993-1996, 1998-1999, 2001-2011 3Copyright (C) 1985-1988, 1993-1996, 1998-1999, 2001-2012
4 Free Software Foundation, Inc. 4 Free Software Foundation, Inc.
5 5
6This file is part of GNU Emacs. 6This file is part of GNU Emacs.
@@ -5060,9 +5060,8 @@ read_process_output (Lisp_Object proc, register int channel)
5060 proc_buffered_char[channel] = -1; 5060 proc_buffered_char[channel] = -1;
5061 } 5061 }
5062#ifdef HAVE_GNUTLS 5062#ifdef HAVE_GNUTLS
5063 if (XPROCESS (proc)->gnutls_p) 5063 if (p->gnutls_p)
5064 nbytes = emacs_gnutls_read (XPROCESS (proc), 5064 nbytes = emacs_gnutls_read (p, chars + carryover + buffered,
5065 chars + carryover + buffered,
5066 readmax - buffered); 5065 readmax - buffered);
5067 else 5066 else
5068#endif 5067#endif
@@ -5527,9 +5526,8 @@ send_process (volatile Lisp_Object proc, const char *volatile buf,
5527#endif 5526#endif
5528 { 5527 {
5529#ifdef HAVE_GNUTLS 5528#ifdef HAVE_GNUTLS
5530 if (XPROCESS (proc)->gnutls_p) 5529 if (p->gnutls_p)
5531 written = emacs_gnutls_write (XPROCESS (proc), 5530 written = emacs_gnutls_write (p, buf, this);
5532 buf, this);
5533 else 5531 else
5534#endif 5532#endif
5535 written = emacs_write (outfd, buf, this); 5533 written = emacs_write (outfd, buf, this);
diff --git a/src/process.h b/src/process.h
index aff9e970f63..9efde261386 100644
--- a/src/process.h
+++ b/src/process.h
@@ -1,5 +1,5 @@
1/* Definitions for asynchronous process control in GNU Emacs. 1/* Definitions for asynchronous process control in GNU Emacs.
2 Copyright (C) 1985, 1994, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1985, 1994, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/puresize.h b/src/puresize.h
index 4290c30c68d..e854dc585e8 100644
--- a/src/puresize.h
+++ b/src/puresize.h
@@ -1,5 +1,5 @@
1/* How much read-only Lisp storage a dumped Emacs needs. 1/* How much read-only Lisp storage a dumped Emacs needs.
2 Copyright (C) 1993, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1993, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/ralloc.c b/src/ralloc.c
index 62189ad8fc7..13587b9ffd4 100644
--- a/src/ralloc.c
+++ b/src/ralloc.c
@@ -1,5 +1,5 @@
1/* Block-relocating memory allocator. 1/* Block-relocating memory allocator.
2 Copyright (C) 1993, 1995, 2000-2011 Free Software Foundation, Inc. 2 Copyright (C) 1993, 1995, 2000-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/regex.c b/src/regex.c
index 0ba05a95fdb..0f9150193ec 100644
--- a/src/regex.c
+++ b/src/regex.c
@@ -2,7 +2,7 @@
2 0.12. (Implements POSIX draft P1003.2/D11.2, except for some of the 2 0.12. (Implements POSIX draft P1003.2/D11.2, except for some of the
3 internationalization features.) 3 internationalization features.)
4 4
5 Copyright (C) 1993-2011 Free Software Foundation, Inc. 5 Copyright (C) 1993-2012 Free Software Foundation, Inc.
6 6
7 This program is free software; you can redistribute it and/or modify 7 This program is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by 8 it under the terms of the GNU General Public License as published by
diff --git a/src/regex.h b/src/regex.h
index 32ccfb7ddef..643d0b7b5ab 100644
--- a/src/regex.h
+++ b/src/regex.h
@@ -1,7 +1,7 @@
1/* Definitions for data structures and routines for the regular 1/* Definitions for data structures and routines for the regular
2 expression library, version 0.12. 2 expression library, version 0.12.
3 3
4 Copyright (C) 1985, 1989-1993, 1995, 2000-2011 4 Copyright (C) 1985, 1989-1993, 1995, 2000-2012
5 Free Software Foundation, Inc. 5 Free Software Foundation, Inc.
6 6
7 This program is free software; you can redistribute it and/or modify 7 This program is free software; you can redistribute it and/or modify
diff --git a/src/region-cache.c b/src/region-cache.c
index 054374eb688..9f4e5921877 100644
--- a/src/region-cache.c
+++ b/src/region-cache.c
@@ -1,6 +1,6 @@
1/* Caching facts about regions of the buffer, for optimization. 1/* Caching facts about regions of the buffer, for optimization.
2 2
3Copyright (C) 1985-1989, 1993, 1995, 2001-2011 3Copyright (C) 1985-1989, 1993, 1995, 2001-2012
4 Free Software Foundation, Inc. 4 Free Software Foundation, Inc.
5 5
6This file is part of GNU Emacs. 6This file is part of GNU Emacs.
diff --git a/src/region-cache.h b/src/region-cache.h
index 6758f8bcd08..7aebdbec262 100644
--- a/src/region-cache.h
+++ b/src/region-cache.h
@@ -1,6 +1,6 @@
1/* Header file: Caching facts about regions of the buffer, for optimization. 1/* Header file: Caching facts about regions of the buffer, for optimization.
2 2
3Copyright (C) 1985-1986, 1993, 1995, 2001-2011 3Copyright (C) 1985-1986, 1993, 1995, 2001-2012
4 Free Software Foundation, Inc. 4 Free Software Foundation, Inc.
5 5
6This file is part of GNU Emacs. 6This file is part of GNU Emacs.
diff --git a/src/s/aix4-2.h b/src/s/aix4-2.h
index b44bd0308a3..37b041396f9 100644
--- a/src/s/aix4-2.h
+++ b/src/s/aix4-2.h
@@ -1,5 +1,5 @@
1/* 1/*
2Copyright (C) 1999, 2001-2011 Free Software Foundation, Inc. 2Copyright (C) 1999, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/s/bsd-common.h b/src/s/bsd-common.h
index 0cca005b423..c2dbdb9a109 100644
--- a/src/s/bsd-common.h
+++ b/src/s/bsd-common.h
@@ -1,6 +1,6 @@
1/* Definitions file for GNU Emacs running on bsd 4.3 1/* Definitions file for GNU Emacs running on bsd 4.3
2 2
3Copyright (C) 1985-1986, 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 1985-1986, 2001-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/s/cygwin.h b/src/s/cygwin.h
index 8f5a0ab1fc7..9a371829eaa 100644
--- a/src/s/cygwin.h
+++ b/src/s/cygwin.h
@@ -1,6 +1,6 @@
1/* System description header file for Cygwin. 1/* System description header file for Cygwin.
2 2
3Copyright (C) 1985-1986, 1992, 1999, 2002-2011 Free Software Foundation, Inc. 3Copyright (C) 1985-1986, 1992, 1999, 2002-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/s/darwin.h b/src/s/darwin.h
index dd0d0c34021..9ac9e91fd9d 100644
--- a/src/s/darwin.h
+++ b/src/s/darwin.h
@@ -1,6 +1,6 @@
1/* System description header file for Darwin (Mac OS X). 1/* System description header file for Darwin (Mac OS X).
2 2
3Copyright (C) 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 2001-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/s/freebsd.h b/src/s/freebsd.h
index 24b34e02f69..c74605fe366 100644
--- a/src/s/freebsd.h
+++ b/src/s/freebsd.h
@@ -1,6 +1,6 @@
1/* System description header for FreeBSD systems. 1/* System description header for FreeBSD systems.
2 2
3Copyright (C) 1994-2011 Free Software Foundation, Inc. 3Copyright (C) 1994-2012 Free Software Foundation, Inc.
4 4
5Author: Shawn M. Carey 5Author: Shawn M. Carey
6(according to authors.el) 6(according to authors.el)
diff --git a/src/s/gnu-linux.h b/src/s/gnu-linux.h
index d89b14cc080..b54bd985e6b 100644
--- a/src/s/gnu-linux.h
+++ b/src/s/gnu-linux.h
@@ -1,6 +1,6 @@
1/* This file is the configuration file for Linux-based GNU systems 1/* This file is the configuration file for Linux-based GNU systems
2 2
3Copyright (C) 1985-1986, 1992, 1994, 1996, 1999, 2001-2011 3Copyright (C) 1985-1986, 1992, 1994, 1996, 1999, 2001-2012
4 Free Software Foundation, Inc. 4 Free Software Foundation, Inc.
5 5
6This file was put together by Michael K. Johnson and Rik Faith. 6This file was put together by Michael K. Johnson and Rik Faith.
diff --git a/src/s/gnu.h b/src/s/gnu.h
index b40f7b0a95b..be831a833a5 100644
--- a/src/s/gnu.h
+++ b/src/s/gnu.h
@@ -1,6 +1,6 @@
1/* Definitions file for GNU Emacs running on the GNU Hurd. 1/* Definitions file for GNU Emacs running on the GNU Hurd.
2 2
3Copyright (C) 1994-1996, 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 1994-1996, 2001-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/s/hpux10-20.h b/src/s/hpux10-20.h
index be457498add..becb5d3464e 100644
--- a/src/s/hpux10-20.h
+++ b/src/s/hpux10-20.h
@@ -1,6 +1,6 @@
1/* System description file for hpux version 10.20. 1/* System description file for hpux version 10.20.
2 2
3Copyright (C) 1999, 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 1999, 2001-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/s/irix6-5.h b/src/s/irix6-5.h
index 26eb7dcde77..32374498fe7 100644
--- a/src/s/irix6-5.h
+++ b/src/s/irix6-5.h
@@ -1,6 +1,6 @@
1/* Definitions file for GNU Emacs running on Silicon Graphics Irix system 6.5. 1/* Definitions file for GNU Emacs running on Silicon Graphics Irix system 6.5.
2 2
3Copyright (C) 1999-2011 Free Software Foundation, Inc. 3Copyright (C) 1999-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/s/ms-w32.h b/src/s/ms-w32.h
index cc19765aba6..d533ae34ac3 100644
--- a/src/s/ms-w32.h
+++ b/src/s/ms-w32.h
@@ -1,6 +1,6 @@
1/* System description file for Windows NT. 1/* System description file for Windows NT.
2 2
3Copyright (C) 1993-1995, 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 1993-1995, 2001-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/s/msdos.h b/src/s/msdos.h
index 9ee13d12867..cde24147c57 100644
--- a/src/s/msdos.h
+++ b/src/s/msdos.h
@@ -1,6 +1,6 @@
1/* System description file for MS-DOS 1/* System description file for MS-DOS
2 2
3Copyright (C) 1993, 1996-1997, 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 1993, 1996-1997, 2001-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/s/netbsd.h b/src/s/netbsd.h
index 52cda717a2d..f25023fb615 100644
--- a/src/s/netbsd.h
+++ b/src/s/netbsd.h
@@ -1,6 +1,6 @@
1/* s/ file for netbsd system. 1/* s/ file for netbsd system.
2 2
3Copyright (C) 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 2001-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/s/sol2-6.h b/src/s/sol2-6.h
index 3d9bd6ddafc..a9fefcb1992 100644
--- a/src/s/sol2-6.h
+++ b/src/s/sol2-6.h
@@ -1,6 +1,6 @@
1/* Definitions file for GNU Emacs running on Solaris 2.6. 1/* Definitions file for GNU Emacs running on Solaris 2.6.
2 2
3Copyright (C) 1999-2011 Free Software Foundation, Inc. 3Copyright (C) 1999-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/s/template.h b/src/s/template.h
index 4e0400e99e3..527694bd4bb 100644
--- a/src/s/template.h
+++ b/src/s/template.h
@@ -2,7 +2,7 @@
2 This file describes the parameters that system description files 2 This file describes the parameters that system description files
3 should define or not. 3 should define or not.
4 4
5Copyright (C) 1985-1986, 1992, 1999, 2001-2011 Free Software Foundation, Inc. 5Copyright (C) 1985-1986, 1992, 1999, 2001-2012 Free Software Foundation, Inc.
6 6
7This file is part of GNU Emacs. 7This file is part of GNU Emacs.
8 8
diff --git a/src/s/unixware.h b/src/s/unixware.h
index 8fe28625dd4..22c396a060e 100644
--- a/src/s/unixware.h
+++ b/src/s/unixware.h
@@ -1,6 +1,6 @@
1/* s/ file for Unixware. 1/* s/ file for Unixware.
2 2
3Copyright (C) 1999-2011 Free Software Foundation, Inc. 3Copyright (C) 1999-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/s/usg5-4-common.h b/src/s/usg5-4-common.h
index e6d992d8f9c..fabdd66f3bb 100644
--- a/src/s/usg5-4-common.h
+++ b/src/s/usg5-4-common.h
@@ -1,6 +1,6 @@
1/* Definitions file for GNU Emacs running on AT&T's System V Release 4 1/* Definitions file for GNU Emacs running on AT&T's System V Release 4
2 2
3Copyright (C) 1987, 1990, 1999-2011 Free Software Foundation, Inc. 3Copyright (C) 1987, 1990, 1999-2012 Free Software Foundation, Inc.
4 4
5Written by James Van Artsdalen of Dell Computer Corp. james@bigtex.cactus.org. 5Written by James Van Artsdalen of Dell Computer Corp. james@bigtex.cactus.org.
6Subsequently improved for Dell 2.2 by Eric S. Raymond <esr@snark.thyrsus.com>. 6Subsequently improved for Dell 2.2 by Eric S. Raymond <esr@snark.thyrsus.com>.
diff --git a/src/scroll.c b/src/scroll.c
index 05f6fdf85f0..77ea1007ade 100644
--- a/src/scroll.c
+++ b/src/scroll.c
@@ -1,6 +1,6 @@
1/* Calculate what line insertion or deletion to do, and do it 1/* Calculate what line insertion or deletion to do, and do it
2 2
3Copyright (C) 1985-1986, 1990, 1993-1994, 2001-2011 3Copyright (C) 1985-1986, 1990, 1993-1994, 2001-2012
4 Free Software Foundation, Inc. 4 Free Software Foundation, Inc.
5 5
6This file is part of GNU Emacs. 6This file is part of GNU Emacs.
diff --git a/src/search.c b/src/search.c
index 2001477ed61..67323b3c6e7 100644
--- a/src/search.c
+++ b/src/search.c
@@ -1,5 +1,5 @@
1/* String search routines for GNU Emacs. 1/* String search routines for GNU Emacs.
2 Copyright (C) 1985-1987, 1993-1994, 1997-1999, 2001-2011 2 Copyright (C) 1985-1987, 1993-1994, 1997-1999, 2001-2012
3 Free Software Foundation, Inc. 3 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
@@ -725,8 +725,8 @@ scan_buffer (register int target, EMACS_INT start, EMACS_INT end,
725 the region from start to cursor is free of them. */ 725 the region from start to cursor is free of them. */
726 if (target == '\n' && newline_cache) 726 if (target == '\n' && newline_cache)
727 know_region_cache (current_buffer, newline_cache, 727 know_region_cache (current_buffer, newline_cache,
728 start_byte + scan_start - base, 728 BYTE_TO_CHAR (start_byte + scan_start - base),
729 start_byte + cursor - base); 729 BYTE_TO_CHAR (start_byte + cursor - base));
730 730
731 /* Did we find the target character? */ 731 /* Did we find the target character? */
732 if (cursor < ceiling_addr) 732 if (cursor < ceiling_addr)
@@ -791,8 +791,8 @@ scan_buffer (register int target, EMACS_INT start, EMACS_INT end,
791 the region from after the cursor to start is free of them. */ 791 the region from after the cursor to start is free of them. */
792 if (target == '\n' && newline_cache) 792 if (target == '\n' && newline_cache)
793 know_region_cache (current_buffer, newline_cache, 793 know_region_cache (current_buffer, newline_cache,
794 start_byte + cursor - base, 794 BYTE_TO_CHAR (start_byte + cursor - base),
795 start_byte + scan_start - base); 795 BYTE_TO_CHAR (start_byte + scan_start - base));
796 796
797 /* Did we find the target character? */ 797 /* Did we find the target character? */
798 if (cursor >= ceiling_addr) 798 if (cursor >= ceiling_addr)
diff --git a/src/sheap.c b/src/sheap.c
index 31414fbe5c6..3ae14b5daec 100644
--- a/src/sheap.c
+++ b/src/sheap.c
@@ -1,7 +1,7 @@
1/* simulate `sbrk' with an array in .bss, for `unexec' support for Cygwin; 1/* simulate `sbrk' with an array in .bss, for `unexec' support for Cygwin;
2 complete rewrite of xemacs Cygwin `unexec' code 2 complete rewrite of xemacs Cygwin `unexec' code
3 3
4 Copyright (C) 2004-2011 Free Software Foundation, Inc. 4 Copyright (C) 2004-2012 Free Software Foundation, Inc.
5 5
6This file is part of GNU Emacs. 6This file is part of GNU Emacs.
7 7
diff --git a/src/sound.c b/src/sound.c
index 4e9758d27df..5fd5bd5c0de 100644
--- a/src/sound.c
+++ b/src/sound.c
@@ -1,5 +1,5 @@
1/* sound.c -- sound support. 1/* sound.c -- sound support.
2 Copyright (C) 1998-1999, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1998-1999, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/syntax.c b/src/syntax.c
index 3e51099794b..bb473a52b3a 100644
--- a/src/syntax.c
+++ b/src/syntax.c
@@ -1,5 +1,5 @@
1/* GNU Emacs routines to deal with syntax tables; also word and list parsing. 1/* GNU Emacs routines to deal with syntax tables; also word and list parsing.
2 Copyright (C) 1985, 1987, 1993-1995, 1997-1999, 2001-2011 2 Copyright (C) 1985, 1987, 1993-1995, 1997-1999, 2001-2012
3 Free Software Foundation, Inc. 3 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
diff --git a/src/syntax.h b/src/syntax.h
index 42d689cb96c..a5d7ec5aced 100644
--- a/src/syntax.h
+++ b/src/syntax.h
@@ -1,6 +1,6 @@
1/* Declarations having to do with GNU Emacs syntax tables. 1/* Declarations having to do with GNU Emacs syntax tables.
2 2
3Copyright (C) 1985, 1993-1994, 1997-1998, 2001-2011 3Copyright (C) 1985, 1993-1994, 1997-1998, 2001-2012
4 Free Software Foundation, Inc. 4 Free Software Foundation, Inc.
5 5
6This file is part of GNU Emacs. 6This file is part of GNU Emacs.
diff --git a/src/sysdep.c b/src/sysdep.c
index b111fa1324c..edaaa4c93d7 100644
--- a/src/sysdep.c
+++ b/src/sysdep.c
@@ -1,5 +1,5 @@
1/* Interfaces to system-dependent kernel and library entries. 1/* Interfaces to system-dependent kernel and library entries.
2 Copyright (C) 1985-1988, 1993-1995, 1999-2011 2 Copyright (C) 1985-1988, 1993-1995, 1999-2012
3 Free Software Foundation, Inc. 3 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
diff --git a/src/sysselect.h b/src/sysselect.h
index 20eade8d07a..f9b9fc00b35 100644
--- a/src/sysselect.h
+++ b/src/sysselect.h
@@ -1,5 +1,5 @@
1/* sysselect.h - System-dependent definitions for the select function. 1/* sysselect.h - System-dependent definitions for the select function.
2 Copyright (C) 1995, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1995, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/syssignal.h b/src/syssignal.h
index 315400d8498..86135d71215 100644
--- a/src/syssignal.h
+++ b/src/syssignal.h
@@ -1,5 +1,5 @@
1/* syssignal.h - System-dependent definitions for signals. 1/* syssignal.h - System-dependent definitions for signals.
2 Copyright (C) 1993, 1999, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1993, 1999, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/systime.h b/src/systime.h
index b90372dbe20..9e7a1173a20 100644
--- a/src/systime.h
+++ b/src/systime.h
@@ -1,5 +1,5 @@
1/* systime.h - System-dependent definitions for time manipulations. 1/* systime.h - System-dependent definitions for time manipulations.
2 Copyright (C) 1993-1994, 2002-2011 Free Software Foundation, Inc. 2 Copyright (C) 1993-1994, 2002-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/systty.h b/src/systty.h
index 647cfa23cee..a258635ac09 100644
--- a/src/systty.h
+++ b/src/systty.h
@@ -1,5 +1,5 @@
1/* systty.h - System-dependent definitions for terminals. 1/* systty.h - System-dependent definitions for terminals.
2 Copyright (C) 1993-1994, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1993-1994, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/syswait.h b/src/syswait.h
index 44a824abadb..aea9ea6e588 100644
--- a/src/syswait.h
+++ b/src/syswait.h
@@ -1,5 +1,5 @@
1/* Define wait system call interface for Emacs. 1/* Define wait system call interface for Emacs.
2 Copyright (C) 1993-1995, 2000-2011 Free Software Foundation, Inc. 2 Copyright (C) 1993-1995, 2000-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/term.c b/src/term.c
index ae505f020f2..53458c559dd 100644
--- a/src/term.c
+++ b/src/term.c
@@ -1,5 +1,5 @@
1/* Terminal control module for terminals described by TERMCAP 1/* Terminal control module for terminals described by TERMCAP
2 Copyright (C) 1985-1987, 1993-1995, 1998, 2000-2011 2 Copyright (C) 1985-1987, 1993-1995, 1998, 2000-2012
3 Free Software Foundation, Inc. 3 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
@@ -1809,7 +1809,7 @@ append_glyphless_glyph (struct it *it, int face_id, const char *str)
1809 glyphless_display_method in dispextern.h for the details. 1809 glyphless_display_method in dispextern.h for the details.
1810 1810
1811 FOR_NO_FONT is nonzero if and only if this is for a character that 1811 FOR_NO_FONT is nonzero if and only if this is for a character that
1812 is not supproted by the coding system of the terminal. ACRONYM, if 1812 is not supported by the coding system of the terminal. ACRONYM, if
1813 non-nil, is an acronym string for the character. 1813 non-nil, is an acronym string for the character.
1814 1814
1815 The glyphs actually produced are of type CHAR_GLYPH. */ 1815 The glyphs actually produced are of type CHAR_GLYPH. */
diff --git a/src/termchar.h b/src/termchar.h
index 5ca3cf305c1..d50ee805e03 100644
--- a/src/termchar.h
+++ b/src/termchar.h
@@ -1,5 +1,5 @@
1/* Flags and parameters describing terminal's characteristics. 1/* Flags and parameters describing terminal's characteristics.
2 Copyright (C) 1985-1986, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1985-1986, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/termhooks.h b/src/termhooks.h
index 5bd081d6d8b..bc61a986cce 100644
--- a/src/termhooks.h
+++ b/src/termhooks.h
@@ -1,6 +1,6 @@
1/* Parameters and display hooks for terminal devices. 1/* Parameters and display hooks for terminal devices.
2 2
3Copyright (C) 1985-1986, 1993-1994, 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 1985-1986, 1993-1994, 2001-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/terminal.c b/src/terminal.c
index 67577adf3b4..9579d1dbd66 100644
--- a/src/terminal.c
+++ b/src/terminal.c
@@ -1,5 +1,5 @@
1/* Functions related to terminal devices. 1/* Functions related to terminal devices.
2 Copyright (C) 2005-2011 Free Software Foundation, Inc. 2 Copyright (C) 2005-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/terminfo.c b/src/terminfo.c
index c0418984efa..dce7af77bcf 100644
--- a/src/terminfo.c
+++ b/src/terminfo.c
@@ -1,5 +1,5 @@
1/* Interface from Emacs to terminfo. 1/* Interface from Emacs to terminfo.
2 Copyright (C) 1985-1986, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1985-1986, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/termopts.h b/src/termopts.h
index 86b7cf782c4..7bf71aeefe7 100644
--- a/src/termopts.h
+++ b/src/termopts.h
@@ -1,5 +1,5 @@
1/* Flags and parameters describing user options for handling the terminal. 1/* Flags and parameters describing user options for handling the terminal.
2 Copyright (C) 1985-1986, 1990, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1985-1986, 1990, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/textprop.c b/src/textprop.c
index a1c7593f568..688b32eb4ec 100644
--- a/src/textprop.c
+++ b/src/textprop.c
@@ -1,5 +1,5 @@
1/* Interface code for dealing with text properties. 1/* Interface code for dealing with text properties.
2 Copyright (C) 1993-1995, 1997, 1999-2011 Free Software Foundation, Inc. 2 Copyright (C) 1993-1995, 1997, 1999-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
@@ -2227,7 +2227,7 @@ This also inhibits the use of the `intangible' text property. */);
2227 2227
2228 DEFVAR_LISP ("text-property-default-nonsticky", 2228 DEFVAR_LISP ("text-property-default-nonsticky",
2229 Vtext_property_default_nonsticky, 2229 Vtext_property_default_nonsticky,
2230 doc: /* Alist of properties vs the corresponding non-stickinesses. 2230 doc: /* Alist of properties vs the corresponding non-stickiness.
2231Each element has the form (PROPERTY . NONSTICKINESS). 2231Each element has the form (PROPERTY . NONSTICKINESS).
2232 2232
2233If a character in a buffer has PROPERTY, new text inserted adjacent to 2233If a character in a buffer has PROPERTY, new text inserted adjacent to
diff --git a/src/tparam.h b/src/tparam.h
index dc4cdfaa28c..e845f3e8202 100644
--- a/src/tparam.h
+++ b/src/tparam.h
@@ -1,6 +1,6 @@
1/* Interface definitions for termcap entries. 1/* Interface definitions for termcap entries.
2 2
3Copyright (C) 2011 Free Software Foundation, Inc. 3Copyright (C) 2011-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/undo.c b/src/undo.c
index 7e121e8b27d..4041a2adacc 100644
--- a/src/undo.c
+++ b/src/undo.c
@@ -1,5 +1,5 @@
1/* undo handling for GNU Emacs. 1/* undo handling for GNU Emacs.
2 Copyright (C) 1990, 1993-1994, 2000-2011 Free Software Foundation, Inc. 2 Copyright (C) 1990, 1993-1994, 2000-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/unexaix.c b/src/unexaix.c
index 22120b0ea03..1bf65b68518 100644
--- a/src/unexaix.c
+++ b/src/unexaix.c
@@ -1,5 +1,5 @@
1/* Dump an executable image. 1/* Dump an executable image.
2 Copyright (C) 1985-1988, 1999, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1985-1988, 1999, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/unexcoff.c b/src/unexcoff.c
index ef86a400239..5b269737839 100644
--- a/src/unexcoff.c
+++ b/src/unexcoff.c
@@ -1,4 +1,4 @@
1/* Copyright (C) 1985-1988, 1992-1994, 2001-2011 Free Software Foundation, Inc. 1/* Copyright (C) 1985-1988, 1992-1994, 2001-2012 Free Software Foundation, Inc.
2 2
3This file is part of GNU Emacs. 3This file is part of GNU Emacs.
4 4
diff --git a/src/unexcw.c b/src/unexcw.c
index 62df82ec3bc..eae534cf4dd 100644
--- a/src/unexcw.c
+++ b/src/unexcw.c
@@ -1,7 +1,7 @@
1/* unexec() support for Cygwin; 1/* unexec() support for Cygwin;
2 complete rewrite of xemacs Cygwin unexec() code 2 complete rewrite of xemacs Cygwin unexec() code
3 3
4 Copyright (C) 2004-2011 Free Software Foundation, Inc. 4 Copyright (C) 2004-2012 Free Software Foundation, Inc.
5 5
6This file is part of GNU Emacs. 6This file is part of GNU Emacs.
7 7
diff --git a/src/unexelf.c b/src/unexelf.c
index 1715c3670ca..ac9c9e75764 100644
--- a/src/unexelf.c
+++ b/src/unexelf.c
@@ -1,4 +1,4 @@
1/* Copyright (C) 1985-1988, 1990, 1992, 1999-2011 1/* Copyright (C) 1985-1988, 1990, 1992, 1999-2012
2 Free Software Foundation, Inc. 2 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
diff --git a/src/unexmacosx.c b/src/unexmacosx.c
index a4c2f241c9f..2e77d3e17bc 100644
--- a/src/unexmacosx.c
+++ b/src/unexmacosx.c
@@ -1,5 +1,5 @@
1/* Dump Emacs in Mach-O format for use on Mac OS X. 1/* Dump Emacs in Mach-O format for use on Mac OS X.
2 Copyright (C) 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/unexw32.c b/src/unexw32.c
index e5440c2f500..52b2ec4bf2b 100644
--- a/src/unexw32.c
+++ b/src/unexw32.c
@@ -1,5 +1,5 @@
1/* unexec for GNU Emacs on Windows NT. 1/* unexec for GNU Emacs on Windows NT.
2 Copyright (C) 1994, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1994, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/vm-limit.c b/src/vm-limit.c
index fc847a295dd..94725044048 100644
--- a/src/vm-limit.c
+++ b/src/vm-limit.c
@@ -1,5 +1,5 @@
1/* Functions for memory limit warnings. 1/* Functions for memory limit warnings.
2 Copyright (C) 1990, 1992, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1990, 1992, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/w16select.c b/src/w16select.c
index 7ba62fde0e5..185bf252895 100644
--- a/src/w16select.c
+++ b/src/w16select.c
@@ -1,6 +1,6 @@
1/* 16-bit Windows Selection processing for emacs on MS-Windows 1/* 16-bit Windows Selection processing for emacs on MS-Windows
2 2
3Copyright (C) 1996-1997, 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 1996-1997, 2001-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/w32.c b/src/w32.c
index b26327462d8..f610a36ecf4 100644
--- a/src/w32.c
+++ b/src/w32.c
@@ -1,5 +1,5 @@
1/* Utility and Unix shadow routines for GNU Emacs on the Microsoft W32 API. 1/* Utility and Unix shadow routines for GNU Emacs on the Microsoft W32 API.
2 Copyright (C) 1994-1995, 2000-2011 Free Software Foundation, Inc. 2 Copyright (C) 1994-1995, 2000-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
@@ -2894,6 +2894,8 @@ sys_rename (const char * oldname, const char * newname)
2894{ 2894{
2895 BOOL result; 2895 BOOL result;
2896 char temp[MAX_PATH]; 2896 char temp[MAX_PATH];
2897 int newname_dev;
2898 int oldname_dev;
2897 2899
2898 /* MoveFile on Windows 95 doesn't correctly change the short file name 2900 /* MoveFile on Windows 95 doesn't correctly change the short file name
2899 alias in a number of circumstances (it is not easy to predict when 2901 alias in a number of circumstances (it is not easy to predict when
@@ -2910,6 +2912,9 @@ sys_rename (const char * oldname, const char * newname)
2910 2912
2911 strcpy (temp, map_w32_filename (oldname, NULL)); 2913 strcpy (temp, map_w32_filename (oldname, NULL));
2912 2914
2915 /* volume_info is set indirectly by map_w32_filename. */
2916 oldname_dev = volume_info.serialnum;
2917
2913 if (os_subtype == OS_WIN95) 2918 if (os_subtype == OS_WIN95)
2914 { 2919 {
2915 char * o; 2920 char * o;
@@ -2953,13 +2958,38 @@ sys_rename (const char * oldname, const char * newname)
2953 all the permutations of shared or subst'd drives, etc.) */ 2958 all the permutations of shared or subst'd drives, etc.) */
2954 2959
2955 newname = map_w32_filename (newname, NULL); 2960 newname = map_w32_filename (newname, NULL);
2961
2962 /* volume_info is set indirectly by map_w32_filename. */
2963 newname_dev = volume_info.serialnum;
2964
2956 result = rename (temp, newname); 2965 result = rename (temp, newname);
2957 2966
2958 if (result < 0 2967 if (result < 0)
2959 && errno == EEXIST 2968 {
2960 && _chmod (newname, 0666) == 0 2969
2961 && _unlink (newname) == 0) 2970 if (errno == EACCES
2962 result = rename (temp, newname); 2971 && newname_dev != oldname_dev)
2972 {
2973 /* The implementation of `rename' on Windows does not return
2974 errno = EXDEV when you are moving a directory to a
2975 different storage device (ex. logical disk). It returns
2976 EACCES instead. So here we handle such situations and
2977 return EXDEV. */
2978 DWORD attributes;
2979
2980 if ((attributes = GetFileAttributes (temp)) != -1
2981 && attributes & FILE_ATTRIBUTE_DIRECTORY)
2982 errno = EXDEV;
2983 }
2984 else if (errno == EEXIST)
2985 {
2986 if (_chmod (newname, 0666) != 0)
2987 return result;
2988 if (_unlink (newname) != 0)
2989 return result;
2990 result = rename (temp, newname);
2991 }
2992 }
2963 2993
2964 return result; 2994 return result;
2965} 2995}
diff --git a/src/w32.h b/src/w32.h
index a3ca1130ce6..2866cb2f34a 100644
--- a/src/w32.h
+++ b/src/w32.h
@@ -2,7 +2,7 @@
2#define EMACS_W32_H 2#define EMACS_W32_H
3 3
4/* Support routines for the NT version of Emacs. 4/* Support routines for the NT version of Emacs.
5 Copyright (C) 1994, 2001-2011 Free Software Foundation, Inc. 5 Copyright (C) 1994, 2001-2012 Free Software Foundation, Inc.
6 6
7This file is part of GNU Emacs. 7This file is part of GNU Emacs.
8 8
diff --git a/src/w32console.c b/src/w32console.c
index 30c71f1c276..e8b0f621b4f 100644
--- a/src/w32console.c
+++ b/src/w32console.c
@@ -1,5 +1,5 @@
1/* Terminal hooks for GNU Emacs on the Microsoft W32 API. 1/* Terminal hooks for GNU Emacs on the Microsoft W32 API.
2 Copyright (C) 1992, 1999, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1992, 1999, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/w32fns.c b/src/w32fns.c
index 822e3530bb6..510d1e94f16 100644
--- a/src/w32fns.c
+++ b/src/w32fns.c
@@ -1,6 +1,6 @@
1/* Graphical user interface functions for the Microsoft W32 API. 1/* Graphical user interface functions for the Microsoft W32 API.
2 2
3Copyright (C) 1989, 1992-2011 Free Software Foundation, Inc. 3Copyright (C) 1989, 1992-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
@@ -2479,6 +2479,10 @@ signal_user_input (void)
2479 if (!NILP (Vthrow_on_input)) 2479 if (!NILP (Vthrow_on_input))
2480 { 2480 {
2481 Vquit_flag = Vthrow_on_input; 2481 Vquit_flag = Vthrow_on_input;
2482 /* Doing a QUIT from this thread is a bad idea, since this
2483 unwinds the stack of the Lisp thread, and the Windows runtime
2484 rightfully barfs. Disabled. */
2485#if 0
2482 /* If we're inside a function that wants immediate quits, 2486 /* If we're inside a function that wants immediate quits,
2483 do it now. */ 2487 do it now. */
2484 if (immediate_quit && NILP (Vinhibit_quit)) 2488 if (immediate_quit && NILP (Vinhibit_quit))
@@ -2486,6 +2490,7 @@ signal_user_input (void)
2486 immediate_quit = 0; 2490 immediate_quit = 0;
2487 QUIT; 2491 QUIT;
2488 } 2492 }
2493#endif
2489 } 2494 }
2490} 2495}
2491 2496
diff --git a/src/w32font.c b/src/w32font.c
index e8a223de0a4..dab9f4c61b4 100644
--- a/src/w32font.c
+++ b/src/w32font.c
@@ -1,5 +1,5 @@
1/* Font backend for the Microsoft W32 API. 1/* Font backend for the Microsoft W32 API.
2 Copyright (C) 2007-2011 Free Software Foundation, Inc. 2 Copyright (C) 2007-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/w32font.h b/src/w32font.h
index f77866b869f..40edafa146d 100644
--- a/src/w32font.h
+++ b/src/w32font.h
@@ -1,5 +1,5 @@
1/* Shared GDI and Uniscribe Font backend declarations for the W32 API. 1/* Shared GDI and Uniscribe Font backend declarations for the W32 API.
2 Copyright (C) 2007-2011 Free Software Foundation, Inc. 2 Copyright (C) 2007-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/w32gui.h b/src/w32gui.h
index 2ba9cb53e22..1e800e3cf3a 100644
--- a/src/w32gui.h
+++ b/src/w32gui.h
@@ -1,5 +1,5 @@
1/* Definitions and headers for communication on the Microsoft W32 API. 1/* Definitions and headers for communication on the Microsoft W32 API.
2 Copyright (C) 1995, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1995, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/w32heap.c b/src/w32heap.c
index 477c11a5160..35ac4cbf31f 100644
--- a/src/w32heap.c
+++ b/src/w32heap.c
@@ -1,5 +1,5 @@
1/* Heap management routines for GNU Emacs on the Microsoft W32 API. 1/* Heap management routines for GNU Emacs on the Microsoft W32 API.
2 Copyright (C) 1994, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1994, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/w32heap.h b/src/w32heap.h
index e75bfcf36ec..b2d51655098 100644
--- a/src/w32heap.h
+++ b/src/w32heap.h
@@ -1,5 +1,5 @@
1/* Heap management routines (including unexec) for GNU Emacs on Windows NT. 1/* Heap management routines (including unexec) for GNU Emacs on Windows NT.
2 Copyright (C) 1994, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1994, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/w32inevt.c b/src/w32inevt.c
index fddde61663f..e7a8bf629d6 100644
--- a/src/w32inevt.c
+++ b/src/w32inevt.c
@@ -1,5 +1,5 @@
1/* Input event support for Emacs on the Microsoft W32 API. 1/* Input event support for Emacs on the Microsoft W32 API.
2 Copyright (C) 1992-1993, 1995, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1992-1993, 1995, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/w32inevt.h b/src/w32inevt.h
index 9ca52508151..d228637abfb 100644
--- a/src/w32inevt.h
+++ b/src/w32inevt.h
@@ -1,5 +1,5 @@
1/* Input routines for GNU Emacs on the Microsoft W32 API. 1/* Input routines for GNU Emacs on the Microsoft W32 API.
2 Copyright (C) 1995, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1995, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/w32menu.c b/src/w32menu.c
index 9b2d014cd58..b5cc6801a72 100644
--- a/src/w32menu.c
+++ b/src/w32menu.c
@@ -1,5 +1,5 @@
1/* Menu support for GNU Emacs on the Microsoft W32 API. 1/* Menu support for GNU Emacs on the Microsoft W32 API.
2 Copyright (C) 1986, 1988, 1993-1994, 1996, 1998-1999, 2001-2011 2 Copyright (C) 1986, 1988, 1993-1994, 1996, 1998-1999, 2001-2012
3 Free Software Foundation, Inc. 3 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
diff --git a/src/w32proc.c b/src/w32proc.c
index 254a32503c4..f7982f36913 100644
--- a/src/w32proc.c
+++ b/src/w32proc.c
@@ -1,5 +1,5 @@
1/* Process support for GNU Emacs on the Microsoft W32 API. 1/* Process support for GNU Emacs on the Microsoft W32 API.
2 Copyright (C) 1992, 1995, 1999-2011 Free Software Foundation, Inc. 2 Copyright (C) 1992, 1995, 1999-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/w32reg.c b/src/w32reg.c
index 18374431062..ec251cfd837 100644
--- a/src/w32reg.c
+++ b/src/w32reg.c
@@ -1,5 +1,5 @@
1/* Emulate the X Resource Manager through the registry. 1/* Emulate the X Resource Manager through the registry.
2 Copyright (C) 1990, 1993-1994, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1990, 1993-1994, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/w32select.c b/src/w32select.c
index 392cb07a96d..c60376b3a91 100644
--- a/src/w32select.c
+++ b/src/w32select.c
@@ -1,6 +1,6 @@
1/* Selection processing for Emacs on the Microsoft W32 API. 1/* Selection processing for Emacs on the Microsoft W32 API.
2 2
3Copyright (C) 1993-1994, 2001-2011 Free Software Foundation, Inc. 3Copyright (C) 1993-1994, 2001-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/w32term.c b/src/w32term.c
index 4788a8198f2..f764ad9d218 100644
--- a/src/w32term.c
+++ b/src/w32term.c
@@ -1,6 +1,6 @@
1/* Implementation of GUI terminal on the Microsoft W32 API. 1/* Implementation of GUI terminal on the Microsoft W32 API.
2 2
3Copyright (C) 1989, 1993-2011 Free Software Foundation, Inc. 3Copyright (C) 1989, 1993-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/w32term.h b/src/w32term.h
index f587ee11af9..4528bbd5c0a 100644
--- a/src/w32term.h
+++ b/src/w32term.h
@@ -1,5 +1,5 @@
1/* Definitions and headers for communication on the Microsoft W32 API. 1/* Definitions and headers for communication on the Microsoft W32 API.
2 Copyright (C) 1995, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1995, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/w32uniscribe.c b/src/w32uniscribe.c
index 63da3b9e962..5e5c8e88b2b 100644
--- a/src/w32uniscribe.c
+++ b/src/w32uniscribe.c
@@ -1,5 +1,5 @@
1/* Font backend for the Microsoft W32 Uniscribe API. 1/* Font backend for the Microsoft W32 Uniscribe API.
2 Copyright (C) 2008-2011 Free Software Foundation, Inc. 2 Copyright (C) 2008-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/w32xfns.c b/src/w32xfns.c
index fc2d5904d67..0b0fc26fb6a 100644
--- a/src/w32xfns.c
+++ b/src/w32xfns.c
@@ -1,5 +1,5 @@
1/* Functions taken directly from X sources for use with the Microsoft W32 API. 1/* Functions taken directly from X sources for use with the Microsoft W32 API.
2 Copyright (C) 1989, 1992-1995, 1999, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1989, 1992-1995, 1999, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/widget.c b/src/widget.c
index 96bfd4787e9..0cb1013b971 100644
--- a/src/widget.c
+++ b/src/widget.c
@@ -1,5 +1,5 @@
1/* The emacs frame widget. 1/* The emacs frame widget.
2 Copyright (C) 1992-1993, 2000-2011 Free Software Foundation, Inc. 2 Copyright (C) 1992-1993, 2000-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/widget.h b/src/widget.h
index 11041d54ad0..03838a01415 100644
--- a/src/widget.h
+++ b/src/widget.h
@@ -1,5 +1,5 @@
1/* The emacs frame widget public header file. 1/* The emacs frame widget public header file.
2 Copyright (C) 1993, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1993, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/widgetprv.h b/src/widgetprv.h
index 997a70e026c..00e3eeb1ee1 100644
--- a/src/widgetprv.h
+++ b/src/widgetprv.h
@@ -1,5 +1,5 @@
1/* The emacs frame widget private header file. 1/* The emacs frame widget private header file.
2 Copyright (C) 1993, 2001-2011 Free Software Foundation, Inc. 2 Copyright (C) 1993, 2001-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/window.c b/src/window.c
index ef61d668499..324689498ae 100644
--- a/src/window.c
+++ b/src/window.c
@@ -1,6 +1,6 @@
1/* Window creation, deletion and examination for GNU Emacs. 1/* Window creation, deletion and examination for GNU Emacs.
2 Does not include redisplay. 2 Does not include redisplay.
3 Copyright (C) 1985-1987, 1993-1998, 2000-2011 3 Copyright (C) 1985-1987, 1993-1998, 2000-2012
4 Free Software Foundation, Inc. 4 Free Software Foundation, Inc.
5 5
6This file is part of GNU Emacs. 6This file is part of GNU Emacs.
@@ -57,7 +57,7 @@ static Lisp_Object Qreplace_buffer_in_windows, Qget_mru_window;
57static Lisp_Object Qwindow_resize_root_window, Qwindow_resize_root_window_vertically; 57static Lisp_Object Qwindow_resize_root_window, Qwindow_resize_root_window_vertically;
58static Lisp_Object Qscroll_up, Qscroll_down, Qscroll_command; 58static Lisp_Object Qscroll_up, Qscroll_down, Qscroll_command;
59static Lisp_Object Qsafe, Qabove, Qbelow; 59static Lisp_Object Qsafe, Qabove, Qbelow;
60static Lisp_Object Qauto_buffer_name; 60static Lisp_Object Qauto_buffer_name, Qclone_of;
61 61
62static int displayed_window_lines (struct window *); 62static int displayed_window_lines (struct window *);
63static struct window *decode_window (Lisp_Object); 63static struct window *decode_window (Lisp_Object);
@@ -5410,6 +5410,7 @@ the return value is nil. Otherwise the value is t. */)
5410 { 5410 {
5411 Lisp_Object window; 5411 Lisp_Object window;
5412 Lisp_Object dead_windows = Qnil; 5412 Lisp_Object dead_windows = Qnil;
5413 register Lisp_Object tem, par, pers;
5413 register struct window *w; 5414 register struct window *w;
5414 register struct saved_window *p; 5415 register struct saved_window *p;
5415 struct window *root_window; 5416 struct window *root_window;
@@ -5543,7 +5544,28 @@ the return value is nil. Otherwise the value is t. */)
5543 w->vertical_scroll_bar_type = p->vertical_scroll_bar_type; 5544 w->vertical_scroll_bar_type = p->vertical_scroll_bar_type;
5544 w->dedicated = p->dedicated; 5545 w->dedicated = p->dedicated;
5545 w->combination_limit = p->combination_limit; 5546 w->combination_limit = p->combination_limit;
5546 w->window_parameters = p->window_parameters; 5547 /* Restore any window parameters that have been saved.
5548 Parameters that have not been saved are left alone. */
5549 for (tem = p->window_parameters; CONSP (tem); tem = XCDR (tem))
5550 {
5551 pers = XCAR (tem);
5552 if (CONSP (pers))
5553 {
5554 if (NILP (XCDR (pers)))
5555 {
5556 par = Fassq (XCAR (pers), w->window_parameters);
5557 if (CONSP (par) && !NILP (XCDR (par)))
5558 /* Reset a parameter to nil if and only if it
5559 has a non-nil association. Don't make new
5560 associations. */
5561 Fsetcdr (par, Qnil);
5562 }
5563 else
5564 /* Always restore a non-nil value. */
5565 Fset_window_parameter (window, XCAR (pers), XCDR (pers));
5566 }
5567 }
5568
5547 XSETFASTINT (w->last_modified, 0); 5569 XSETFASTINT (w->last_modified, 0);
5548 XSETFASTINT (w->last_overlay_modified, 0); 5570 XSETFASTINT (w->last_overlay_modified, 0);
5549 5571
@@ -5810,7 +5832,7 @@ save_window_save (Lisp_Object window, struct Lisp_Vector *vector, int i)
5810{ 5832{
5811 register struct saved_window *p; 5833 register struct saved_window *p;
5812 register struct window *w; 5834 register struct window *w;
5813 register Lisp_Object tem; 5835 register Lisp_Object tem, pers, par;
5814 5836
5815 for (;!NILP (window); window = w->next) 5837 for (;!NILP (window); window = w->next)
5816 { 5838 {
@@ -5838,12 +5860,59 @@ save_window_save (Lisp_Object window, struct Lisp_Vector *vector, int i)
5838 p->vertical_scroll_bar_type = w->vertical_scroll_bar_type; 5860 p->vertical_scroll_bar_type = w->vertical_scroll_bar_type;
5839 p->dedicated = w->dedicated; 5861 p->dedicated = w->dedicated;
5840 p->combination_limit = w->combination_limit; 5862 p->combination_limit = w->combination_limit;
5841 p->window_parameters = w->window_parameters; 5863 p->window_parameters = Qnil;
5864
5865 if (!NILP (Vwindow_persistent_parameters))
5866 {
5867 /* Run cycle detection on Vwindow_persistent_parameters. */
5868 Lisp_Object tortoise, hare;
5869
5870 hare = tortoise = Vwindow_persistent_parameters;
5871 while (CONSP (hare))
5872 {
5873 hare = XCDR (hare);
5874 if (!CONSP (hare))
5875 break;
5876
5877 hare = XCDR (hare);
5878 tortoise = XCDR (tortoise);
5879
5880 if (EQ (hare, tortoise))
5881 /* Reset Vwindow_persistent_parameters to Qnil. */
5882 {
5883 Vwindow_persistent_parameters = Qnil;
5884 break;
5885 }
5886 }
5887
5888 for (tem = Vwindow_persistent_parameters; CONSP (tem);
5889 tem = XCDR (tem))
5890 {
5891 pers = XCAR (tem);
5892 /* Save values for persistent window parameters. */
5893 if (CONSP (pers) && !NILP (XCDR (pers)))
5894 {
5895 par = Fassq (XCAR (pers), w->window_parameters);
5896 if (NILP (par))
5897 /* If the window has no value for the parameter,
5898 make one. */
5899 p->window_parameters = Fcons (Fcons (XCAR (pers), Qnil),
5900 p->window_parameters);
5901 else
5902 /* If the window has a value for the parameter,
5903 save it. */
5904 p->window_parameters = Fcons (Fcons (XCAR (par),
5905 XCDR (par)),
5906 p->window_parameters);
5907 }
5908 }
5909 }
5910
5842 if (!NILP (w->buffer)) 5911 if (!NILP (w->buffer))
5843 { 5912 {
5844 /* Save w's value of point in the window configuration. 5913 /* Save w's value of point in the window configuration. If w
5845 If w is the selected window, then get the value of point 5914 is the selected window, then get the value of point from
5846 from the buffer; pointm is garbage in the selected window. */ 5915 the buffer; pointm is garbage in the selected window. */
5847 if (EQ (window, selected_window)) 5916 if (EQ (window, selected_window))
5848 { 5917 {
5849 p->pointm = Fmake_marker (); 5918 p->pointm = Fmake_marker ();
@@ -5896,7 +5965,9 @@ and for each displayed buffer, where display starts, and the positions of
5896point and mark. An exception is made for point in the current buffer: 5965point and mark. An exception is made for point in the current buffer:
5897its value is -not- saved. 5966its value is -not- saved.
5898This also records the currently selected frame, and FRAME's focus 5967This also records the currently selected frame, and FRAME's focus
5899redirection (see `redirect-frame-focus'). */) 5968redirection (see `redirect-frame-focus'). The variable
5969`window-persistent-parameters' specifies which window parameters are
5970saved by this function. */)
5900 (Lisp_Object frame) 5971 (Lisp_Object frame)
5901{ 5972{
5902 register Lisp_Object tem; 5973 register Lisp_Object tem;
@@ -6433,6 +6504,7 @@ syms_of_window (void)
6433 DEFSYM (Qabove, "above"); 6504 DEFSYM (Qabove, "above");
6434 DEFSYM (Qbelow, "below"); 6505 DEFSYM (Qbelow, "below");
6435 DEFSYM (Qauto_buffer_name, "auto-buffer-name"); 6506 DEFSYM (Qauto_buffer_name, "auto-buffer-name");
6507 DEFSYM (Qclone_of, "clone-of");
6436 6508
6437 staticpro (&Vwindow_list); 6509 staticpro (&Vwindow_list);
6438 6510
@@ -6542,6 +6614,31 @@ retrieved via the function `window-combination-limit' and altered by the
6542function `set-window-combination-limit'. */); 6614function `set-window-combination-limit'. */);
6543 Vwindow_combination_limit = Qnil; 6615 Vwindow_combination_limit = Qnil;
6544 6616
6617 DEFVAR_LISP ("window-persistent-parameters", Vwindow_persistent_parameters,
6618 doc: /* Alist of persistent window parameters.
6619This alist specifies which window parameters shall get saved by
6620`current-window-configuration' and `window-state-get' and subsequently
6621restored to their previous values by `set-window-configuration' and
6622`window-state-put'.
6623
6624The car of each entry of this alist is the symbol specifying the
6625parameter. The cdr is one of the following:
6626
6627nil means the parameter is neither saved by `window-state-get' nor by
6628`current-window-configuration'.
6629
6630t means the parameter is saved by `current-window-configuration' and,
6631provided its WRITABLE argument is nil, by `window-state-get'.
6632
6633The symbol `writable' means the parameter is saved unconditionally by
6634both `current-window-configuration' and `window-state-get'. Do not use
6635this value for parameters without read syntax (like windows or frames).
6636
6637Parameters not saved by `current-window-configuration' or
6638`window-state-get' are left alone by `set-window-configuration'
6639respectively are not installed by `window-state-put'. */);
6640 Vwindow_persistent_parameters = list1 (Fcons (Qclone_of, Qt));
6641
6545 defsubr (&Sselected_window); 6642 defsubr (&Sselected_window);
6546 defsubr (&Sminibuffer_window); 6643 defsubr (&Sminibuffer_window);
6547 defsubr (&Swindow_minibuffer_p); 6644 defsubr (&Swindow_minibuffer_p);
diff --git a/src/window.h b/src/window.h
index b4e268b1a34..ea127ca95a8 100644
--- a/src/window.h
+++ b/src/window.h
@@ -1,5 +1,5 @@
1/* Window definitions for GNU Emacs. 1/* Window definitions for GNU Emacs.
2 Copyright (C) 1985-1986, 1993, 1995, 1997-2011 2 Copyright (C) 1985-1986, 1993, 1995, 1997-2012
3 Free Software Foundation, Inc. 3 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
diff --git a/src/xdisp.c b/src/xdisp.c
index 0ddf9555bc0..c90184f4a4c 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -1,6 +1,6 @@
1/* Display generation from window structure and buffer text. 1/* Display generation from window structure and buffer text.
2 2
3Copyright (C) 1985-1988, 1993-1995, 1997-2011 Free Software Foundation, Inc. 3Copyright (C) 1985-1988, 1993-1995, 1997-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
@@ -4339,7 +4339,7 @@ handle_display_spec (struct it *it, Lisp_Object spec, Lisp_Object object,
4339 int rv; 4339 int rv;
4340 4340
4341 if (CONSP (spec) 4341 if (CONSP (spec)
4342 /* Simple specerties. */ 4342 /* Simple specifications. */
4343 && !EQ (XCAR (spec), Qimage) 4343 && !EQ (XCAR (spec), Qimage)
4344 && !EQ (XCAR (spec), Qspace) 4344 && !EQ (XCAR (spec), Qspace)
4345 && !EQ (XCAR (spec), Qwhen) 4345 && !EQ (XCAR (spec), Qwhen)
@@ -25817,12 +25817,14 @@ cursor_in_mouse_face_p (struct window *w)
25817 25817
25818/* Find the glyph rows START_ROW and END_ROW of window W that display 25818/* Find the glyph rows START_ROW and END_ROW of window W that display
25819 characters between buffer positions START_CHARPOS and END_CHARPOS 25819 characters between buffer positions START_CHARPOS and END_CHARPOS
25820 (excluding END_CHARPOS). This is similar to row_containing_pos, 25820 (excluding END_CHARPOS). DISP_STRING is a display string that
25821 but is more accurate when bidi reordering makes buffer positions 25821 covers these buffer positions. This is similar to
25822 change non-linearly with glyph rows. */ 25822 row_containing_pos, but is more accurate when bidi reordering makes
25823 buffer positions change non-linearly with glyph rows. */
25823static void 25824static void
25824rows_from_pos_range (struct window *w, 25825rows_from_pos_range (struct window *w,
25825 EMACS_INT start_charpos, EMACS_INT end_charpos, 25826 EMACS_INT start_charpos, EMACS_INT end_charpos,
25827 Lisp_Object disp_string,
25826 struct glyph_row **start, struct glyph_row **end) 25828 struct glyph_row **start, struct glyph_row **end)
25827{ 25829{
25828 struct glyph_row *first = MATRIX_FIRST_TEXT_ROW (w->current_matrix); 25830 struct glyph_row *first = MATRIX_FIRST_TEXT_ROW (w->current_matrix);
@@ -25874,8 +25876,11 @@ rows_from_pos_range (struct window *w,
25874 25876
25875 while (g < e) 25877 while (g < e)
25876 { 25878 {
25877 if ((BUFFERP (g->object) || INTEGERP (g->object)) 25879 if (((BUFFERP (g->object) || INTEGERP (g->object))
25878 && start_charpos <= g->charpos && g->charpos < end_charpos) 25880 && start_charpos <= g->charpos && g->charpos < end_charpos)
25881 /* A glyph that comes from DISP_STRING is by
25882 definition to be highlighted. */
25883 || EQ (g->object, disp_string))
25879 *start = row; 25884 *start = row;
25880 g++; 25885 g++;
25881 } 25886 }
@@ -25894,14 +25899,15 @@ rows_from_pos_range (struct window *w,
25894 for ( ; row->enabled_p && MATRIX_ROW_BOTTOM_Y (row) <= last_y; row++) 25899 for ( ; row->enabled_p && MATRIX_ROW_BOTTOM_Y (row) <= last_y; row++)
25895 { 25900 {
25896 struct glyph_row *next = row + 1; 25901 struct glyph_row *next = row + 1;
25902 EMACS_INT next_start = MATRIX_ROW_START_CHARPOS (next);
25897 25903
25898 if (!next->enabled_p 25904 if (!next->enabled_p
25899 || next >= MATRIX_BOTTOM_TEXT_ROW (w->current_matrix, w) 25905 || next >= MATRIX_BOTTOM_TEXT_ROW (w->current_matrix, w)
25900 /* The first row >= START whose range of displayed characters 25906 /* The first row >= START whose range of displayed characters
25901 does NOT intersect the range [START_CHARPOS..END_CHARPOS] 25907 does NOT intersect the range [START_CHARPOS..END_CHARPOS]
25902 is the row END + 1. */ 25908 is the row END + 1. */
25903 || (start_charpos < MATRIX_ROW_START_CHARPOS (next) 25909 || (start_charpos < next_start
25904 && end_charpos < MATRIX_ROW_START_CHARPOS (next)) 25910 && end_charpos < next_start)
25905 || ((start_charpos > MATRIX_ROW_END_CHARPOS (next) 25911 || ((start_charpos > MATRIX_ROW_END_CHARPOS (next)
25906 || (start_charpos == MATRIX_ROW_END_CHARPOS (next) 25912 || (start_charpos == MATRIX_ROW_END_CHARPOS (next)
25907 && !next->ends_at_zv_p 25913 && !next->ends_at_zv_p
@@ -25920,12 +25926,29 @@ rows_from_pos_range (struct window *w,
25920 but none of the characters it displays are in the range, it is 25926 but none of the characters it displays are in the range, it is
25921 also END + 1. */ 25927 also END + 1. */
25922 struct glyph *g = next->glyphs[TEXT_AREA]; 25928 struct glyph *g = next->glyphs[TEXT_AREA];
25929 struct glyph *s = g;
25923 struct glyph *e = g + next->used[TEXT_AREA]; 25930 struct glyph *e = g + next->used[TEXT_AREA];
25924 25931
25925 while (g < e) 25932 while (g < e)
25926 { 25933 {
25927 if ((BUFFERP (g->object) || INTEGERP (g->object)) 25934 if (((BUFFERP (g->object) || INTEGERP (g->object))
25928 && start_charpos <= g->charpos && g->charpos < end_charpos) 25935 && ((start_charpos <= g->charpos && g->charpos < end_charpos)
25936 /* If the buffer position of the first glyph in
25937 the row is equal to END_CHARPOS, it means
25938 the last character to be highlighted is the
25939 newline of ROW, and we must consider NEXT as
25940 END, not END+1. */
25941 || (((!next->reversed_p && g == s)
25942 || (next->reversed_p && g == e - 1))
25943 && (g->charpos == end_charpos
25944 /* Special case for when NEXT is an
25945 empty line at ZV. */
25946 || (g->charpos == -1
25947 && !row->ends_at_zv_p
25948 && next_start == end_charpos)))))
25949 /* A glyph that comes from DISP_STRING is by
25950 definition to be highlighted. */
25951 || EQ (g->object, disp_string))
25929 break; 25952 break;
25930 g++; 25953 g++;
25931 } 25954 }
@@ -25934,6 +25957,13 @@ rows_from_pos_range (struct window *w,
25934 *end = row; 25957 *end = row;
25935 break; 25958 break;
25936 } 25959 }
25960 /* The first row that ends at ZV must be the last to be
25961 highlighted. */
25962 else if (next->ends_at_zv_p)
25963 {
25964 *end = next;
25965 break;
25966 }
25937 } 25967 }
25938 } 25968 }
25939} 25969}
@@ -25969,7 +25999,7 @@ mouse_face_from_buffer_pos (Lisp_Object window,
25969 xassert (NILP (after_string) || STRINGP (after_string)); 25999 xassert (NILP (after_string) || STRINGP (after_string));
25970 26000
25971 /* Find the rows corresponding to START_CHARPOS and END_CHARPOS. */ 26001 /* Find the rows corresponding to START_CHARPOS and END_CHARPOS. */
25972 rows_from_pos_range (w, start_charpos, end_charpos, &r1, &r2); 26002 rows_from_pos_range (w, start_charpos, end_charpos, disp_string, &r1, &r2);
25973 if (r1 == NULL) 26003 if (r1 == NULL)
25974 r1 = MATRIX_ROW (w->current_matrix, XFASTINT (w->window_end_vpos)); 26004 r1 = MATRIX_ROW (w->current_matrix, XFASTINT (w->window_end_vpos));
25975 /* If the before-string or display-string contains newlines, 26005 /* If the before-string or display-string contains newlines,
@@ -26247,6 +26277,19 @@ mouse_face_from_buffer_pos (Lisp_Object window,
26247 } 26277 }
26248 x += end->pixel_width; 26278 x += end->pixel_width;
26249 } 26279 }
26280 /* If we exited the above loop because we arrived at the last
26281 glyph of the row, and its buffer position is still not in
26282 range, it means the last character in range is the preceding
26283 newline. Bump the end column and x values to get past the
26284 last glyph. */
26285 if (end == glyph
26286 && BUFFERP (end->object)
26287 && (end->charpos < start_charpos
26288 || end->charpos >= end_charpos))
26289 {
26290 x += end->pixel_width;
26291 ++end;
26292 }
26250 hlinfo->mouse_face_end_x = x; 26293 hlinfo->mouse_face_end_x = x;
26251 hlinfo->mouse_face_end_col = end - r2->glyphs[TEXT_AREA]; 26294 hlinfo->mouse_face_end_col = end - r2->glyphs[TEXT_AREA];
26252 } 26295 }
@@ -28325,7 +28368,11 @@ all the functions in the list are called, with the frame as argument. */);
28325Each function is called with two arguments, the window and its new 28368Each function is called with two arguments, the window and its new
28326display-start position. Note that these functions are also called by 28369display-start position. Note that these functions are also called by
28327`set-window-buffer'. Also note that the value of `window-end' is not 28370`set-window-buffer'. Also note that the value of `window-end' is not
28328valid when these functions are called. */); 28371valid when these functions are called.
28372
28373Warning: Do not use this feature to alter the way the window
28374is scrolled. It is not designed for that, and such use probably won't
28375work. */);
28329 Vwindow_scroll_functions = Qnil; 28376 Vwindow_scroll_functions = Qnil;
28330 28377
28331 DEFVAR_LISP ("window-text-change-functions", 28378 DEFVAR_LISP ("window-text-change-functions",
diff --git a/src/xfaces.c b/src/xfaces.c
index 7e3ce4103d9..617097d056b 100644
--- a/src/xfaces.c
+++ b/src/xfaces.c
@@ -1,6 +1,6 @@
1/* xfaces.c -- "Face" primitives. 1/* xfaces.c -- "Face" primitives.
2 2
3Copyright (C) 1993-1994, 1998-2011 Free Software Foundation, Inc. 3Copyright (C) 1993-1994, 1998-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/xfns.c b/src/xfns.c
index e44f28df870..f00335b5d03 100644
--- a/src/xfns.c
+++ b/src/xfns.c
@@ -1,6 +1,6 @@
1/* Functions for the X window system. 1/* Functions for the X window system.
2 2
3Copyright (C) 1989, 1992-2011 Free Software Foundation, Inc. 3Copyright (C) 1989, 1992-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
@@ -3519,9 +3519,21 @@ FRAME nil means use the selected frame. */)
3519 3519
3520 BLOCK_INPUT; 3520 BLOCK_INPUT;
3521 x_catch_errors (dpy); 3521 x_catch_errors (dpy);
3522 XSetInputFocus (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f), 3522
3523 RevertToParent, CurrentTime); 3523 if (FRAME_X_EMBEDDED_P (f))
3524 x_ewmh_activate_frame (f); 3524 {
3525 /* For Xembedded frames, normally the embedder forwards key
3526 events. See XEmbed Protocol Specification at
3527 http://freedesktop.org/wiki/Specifications/xembed-spec */
3528 xembed_request_focus (f);
3529 }
3530 else
3531 {
3532 XSetInputFocus (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
3533 RevertToParent, CurrentTime);
3534 x_ewmh_activate_frame (f);
3535 }
3536
3525 x_uncatch_errors (); 3537 x_uncatch_errors ();
3526 UNBLOCK_INPUT; 3538 UNBLOCK_INPUT;
3527 3539
diff --git a/src/xfont.c b/src/xfont.c
index 60e5aa6e98e..25bb8a94fd9 100644
--- a/src/xfont.c
+++ b/src/xfont.c
@@ -1,5 +1,5 @@
1/* xfont.c -- X core font driver. 1/* xfont.c -- X core font driver.
2 Copyright (C) 2006-2011 Free Software Foundation, Inc. 2 Copyright (C) 2006-2012 Free Software Foundation, Inc.
3 Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011 3 Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011
4 National Institute of Advanced Industrial Science and Technology (AIST) 4 National Institute of Advanced Industrial Science and Technology (AIST)
5 Registration Number H13PRO009 5 Registration Number H13PRO009
diff --git a/src/xftfont.c b/src/xftfont.c
index 8cb4c494854..bc0c56a0fe0 100644
--- a/src/xftfont.c
+++ b/src/xftfont.c
@@ -1,5 +1,5 @@
1/* xftfont.c -- XFT font driver. 1/* xftfont.c -- XFT font driver.
2 Copyright (C) 2006-2011 Free Software Foundation, Inc. 2 Copyright (C) 2006-2012 Free Software Foundation, Inc.
3 Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011 3 Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011
4 National Institute of Advanced Industrial Science and Technology (AIST) 4 National Institute of Advanced Industrial Science and Technology (AIST)
5 Registration Number H13PRO009 5 Registration Number H13PRO009
diff --git a/src/xgselect.c b/src/xgselect.c
index 339ec475117..80dbfc32aee 100644
--- a/src/xgselect.c
+++ b/src/xgselect.c
@@ -1,6 +1,6 @@
1/* Function for handling the GLib event loop. 1/* Function for handling the GLib event loop.
2 2
3Copyright (C) 2009-2011 Free Software Foundation, Inc. 3Copyright (C) 2009-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/xgselect.h b/src/xgselect.h
index 1d3a8508b9c..15d7cd5fdd3 100644
--- a/src/xgselect.h
+++ b/src/xgselect.h
@@ -1,6 +1,6 @@
1/* Header for xg_select. 1/* Header for xg_select.
2 2
3Copyright (C) 2009-2011 Free Software Foundation, Inc. 3Copyright (C) 2009-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/xmenu.c b/src/xmenu.c
index ba99b8ac1e3..5f0a273948a 100644
--- a/src/xmenu.c
+++ b/src/xmenu.c
@@ -1,6 +1,6 @@
1/* X Communication module for terminals which understand the X protocol. 1/* X Communication module for terminals which understand the X protocol.
2 2
3Copyright (C) 1986, 1988, 1993-1994, 1996, 1999-2011 3Copyright (C) 1986, 1988, 1993-1994, 1996, 1999-2012
4 Free Software Foundation, Inc. 4 Free Software Foundation, Inc.
5 5
6This file is part of GNU Emacs. 6This file is part of GNU Emacs.
diff --git a/src/xml.c b/src/xml.c
index f0422875f7e..5c4b6ee35f0 100644
--- a/src/xml.c
+++ b/src/xml.c
@@ -1,5 +1,5 @@
1/* Interface to libxml2. 1/* Interface to libxml2.
2 Copyright (C) 2010-2011 Free Software Foundation, Inc. 2 Copyright (C) 2010-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/xrdb.c b/src/xrdb.c
index 4237ed11c53..5998e49b07e 100644
--- a/src/xrdb.c
+++ b/src/xrdb.c
@@ -1,5 +1,5 @@
1/* Deal with the X Resource Manager. 1/* Deal with the X Resource Manager.
2 Copyright (C) 1990, 1993-1994, 2000-2011 Free Software Foundation, Inc. 2 Copyright (C) 1990, 1993-1994, 2000-2012 Free Software Foundation, Inc.
3 3
4Author: Joseph Arceneaux 4Author: Joseph Arceneaux
5Created: 4/90 5Created: 4/90
diff --git a/src/xselect.c b/src/xselect.c
index 5e5e6a098b6..85c9c40cc34 100644
--- a/src/xselect.c
+++ b/src/xselect.c
@@ -1,5 +1,5 @@
1/* X Selection processing for Emacs. 1/* X Selection processing for Emacs.
2 Copyright (C) 1993-1997, 2000-2011 Free Software Foundation, Inc. 2 Copyright (C) 1993-1997, 2000-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
diff --git a/src/xsettings.c b/src/xsettings.c
index a8604ac5897..066c6e795e9 100644
--- a/src/xsettings.c
+++ b/src/xsettings.c
@@ -1,6 +1,6 @@
1/* Functions for handling font and other changes dynamically. 1/* Functions for handling font and other changes dynamically.
2 2
3Copyright (C) 2009-2011 Free Software Foundation, Inc. 3Copyright (C) 2009-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/xsettings.h b/src/xsettings.h
index 38448eb88f5..d6b0c0945df 100644
--- a/src/xsettings.h
+++ b/src/xsettings.h
@@ -1,6 +1,6 @@
1/* Functions for handle font changes dynamically. 1/* Functions for handle font changes dynamically.
2 2
3Copyright (C) 2009-2011 Free Software Foundation, Inc. 3Copyright (C) 2009-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
diff --git a/src/xsmfns.c b/src/xsmfns.c
index 7deac7b14e4..1f6eb84260e 100644
--- a/src/xsmfns.c
+++ b/src/xsmfns.c
@@ -1,7 +1,7 @@
1/* Session management module for systems which understand the X Session 1/* Session management module for systems which understand the X Session
2 management protocol. 2 management protocol.
3 3
4Copyright (C) 2002-2011 Free Software Foundation, Inc. 4Copyright (C) 2002-2012 Free Software Foundation, Inc.
5 5
6This file is part of GNU Emacs. 6This file is part of GNU Emacs.
7 7
diff --git a/src/xterm.c b/src/xterm.c
index e2f356db7b0..4b34d6344ac 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -1,6 +1,6 @@
1/* X Communication module for terminals which understand the X protocol. 1/* X Communication module for terminals which understand the X protocol.
2 2
3Copyright (C) 1989, 1993-2011 Free Software Foundation, Inc. 3Copyright (C) 1989, 1993-2012 Free Software Foundation, Inc.
4 4
5This file is part of GNU Emacs. 5This file is part of GNU Emacs.
6 6
@@ -8981,6 +8981,18 @@ x_lower_frame (struct frame *f)
8981 } 8981 }
8982} 8982}
8983 8983
8984/* Request focus with XEmbed */
8985
8986void
8987xembed_request_focus (FRAME_PTR f)
8988{
8989 /* See XEmbed Protocol Specification at
8990 http://freedesktop.org/wiki/Specifications/xembed-spec */
8991 if (f->async_visible)
8992 xembed_send_message (f, CurrentTime,
8993 XEMBED_REQUEST_FOCUS, 0, 0, 0);
8994}
8995
8984/* Activate frame with Extended Window Manager Hints */ 8996/* Activate frame with Extended Window Manager Hints */
8985 8997
8986void 8998void
diff --git a/src/xterm.h b/src/xterm.h
index 9e0e1acca92..86daa7bd27e 100644
--- a/src/xterm.h
+++ b/src/xterm.h
@@ -1,5 +1,5 @@
1/* Definitions and headers for communication with X protocol. 1/* Definitions and headers for communication with X protocol.
2 Copyright (C) 1989, 1993-1994, 1998-2011 Free Software Foundation, Inc. 2 Copyright (C) 1989, 1993-1994, 1998-2012 Free Software Foundation, Inc.
3 3
4This file is part of GNU Emacs. 4This file is part of GNU Emacs.
5 5
@@ -967,6 +967,7 @@ extern void x_clear_errors (Display *);
967extern void x_set_window_size (struct frame *, int, int, int); 967extern void x_set_window_size (struct frame *, int, int, int);
968extern void x_set_mouse_position (struct frame *, int, int); 968extern void x_set_mouse_position (struct frame *, int, int);
969extern void x_set_mouse_pixel_position (struct frame *, int, int); 969extern void x_set_mouse_pixel_position (struct frame *, int, int);
970extern void xembed_request_focus (struct frame *);
970extern void x_ewmh_activate_frame (struct frame *); 971extern void x_ewmh_activate_frame (struct frame *);
971extern void x_make_frame_visible (struct frame *); 972extern void x_make_frame_visible (struct frame *);
972extern void x_make_frame_invisible (struct frame *); 973extern void x_make_frame_invisible (struct frame *);