aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog100
-rw-r--r--src/ChangeLog.15
-rw-r--r--src/ChangeLog.1011
-rw-r--r--src/ChangeLog.1114
-rw-r--r--src/ChangeLog.23
-rw-r--r--src/ChangeLog.314
-rw-r--r--src/ChangeLog.44
-rw-r--r--src/ChangeLog.62
-rw-r--r--src/ChangeLog.712
-rw-r--r--src/ChangeLog.88
-rw-r--r--src/ChangeLog.94
-rw-r--r--src/alloc.c4
-rw-r--r--src/buffer.c2
-rw-r--r--src/bytecode.c2
-rw-r--r--src/callproc.c3
-rw-r--r--src/ccl.c6
-rw-r--r--src/character.c4
-rw-r--r--src/charset.c4
-rw-r--r--src/charset.h6
-rw-r--r--src/chartab.c4
-rw-r--r--src/coding.h2
-rw-r--r--src/composite.c2
-rw-r--r--src/composite.h2
-rw-r--r--src/data.c2
-rw-r--r--src/dired.c2
-rw-r--r--src/dispnew.c33
-rw-r--r--src/doprnt.c2
-rw-r--r--src/emacs.c2
-rw-r--r--src/font.c6
-rw-r--r--src/font.h2
-rw-r--r--src/fontset.c6
-rw-r--r--src/frame.c4
-rw-r--r--src/frame.h2
-rw-r--r--src/gtkutil.c6
-rw-r--r--src/image.c10
-rw-r--r--src/indent.c2
-rw-r--r--src/indent.h4
-rw-r--r--src/keyboard.c10
-rw-r--r--src/keymap.c2
-rw-r--r--src/makefile.w32-in5
-rw-r--r--src/nsfns.m8
-rw-r--r--src/nsterm.h2
-rw-r--r--src/nsterm.m4
-rw-r--r--src/process.c6
-rw-r--r--src/ralloc.c16
-rw-r--r--src/regex.c2
-rw-r--r--src/regex.h2
-rw-r--r--src/s/hpux10-20.h2
-rw-r--r--src/s/msdos.h3
-rw-r--r--src/sound.c2
-rw-r--r--src/syssignal.h2
-rw-r--r--src/unexelf.c2
-rw-r--r--src/w32fns.c6
-rw-r--r--src/w32font.c14
-rw-r--r--src/w32font.h5
-rw-r--r--src/w32menu.c2
-rw-r--r--src/w32proc.c8
-rw-r--r--src/w32term.c4
-rw-r--r--src/w32term.h2
-rw-r--r--src/w32uniscribe.c3
-rw-r--r--src/window.c194
-rw-r--r--src/window.h9
-rw-r--r--src/xdisp.c26
-rw-r--r--src/xfaces.c6
-rw-r--r--src/xfns.c4
-rw-r--r--src/xfont.c6
-rw-r--r--src/xselect.c2
-rw-r--r--src/xsettings.c2
-rw-r--r--src/xsmfns.c2
-rw-r--r--src/xterm.c2
-rw-r--r--src/xterm.h2
71 files changed, 369 insertions, 299 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 04e58e4742f..e1854d7ffcd 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,97 @@
12011-11-17 Juanma Barranquero <lekktu@gmail.com>
2
3 * window.c (syms_of_window) <window-combination-resize>: Fix typo.
4
52011-11-17 Martin Rudalics <rudalics@gmx.at>
6
7 * window.c (Vwindow_splits): Rename to
8 Vwindow_combination_resize. Suggested by Juri Linkov.
9 (Fsplit_window_internal): Use Vwindow_combination_resize instead
10 of Vwindow_splits.
11
122011-11-16 Juanma Barranquero <lekktu@gmail.com>
13
14 * nsfns.m (Fns_font_name):
15 * window.c (syms_of_window) <window-combination-limit>: Fix typos.
16
172011-11-16 Martin Rudalics <rudalics@gmx.at>
18
19 * window.h (window): Rename slot "nest" to "combination_limit".
20 * window.c (Fwindow_nest): Rename to Fwindow_combination_limit.
21 (Fset_window_nest): Rename to Fset_window_combination_limit.
22 (Vwindow_nest): Rename to Vwindow_combination_limit.
23 (recombine_windows, make_parent_window, make_window)
24 (Fsplit_window_internal, saved_window)
25 (Fset_window_configuration, save_window_save): Rename all
26 occurrences of window_nest to window_combination_limit.
27
282011-11-15 Juanma Barranquero <lekktu@gmail.com>
29
30 * image.c (imagemagick_load_image): Fix typo.
31
322011-11-14 Eli Zaretskii <eliz@gnu.org>
33
34 * xdisp.c (display_line): Move the call to
35 highlight_trailing_whitespace before the call to
36 compute_line_metrics, since the latter needs to see the final
37 faces of all the glyphs to compute ROW's hash value. Fixes
38 assertion violations in row_equal_p. (Bug#10035)
39
402011-11-14 Juanma Barranquero <lekktu@gmail.com>
41
42 * w32proc.c (reader_thread): Don't check pending input if cp->fd < 0,
43 just return (bug#10044).
44
452011-11-12 Eli Zaretskii <eliz@gnu.org>
46
47 * makefile.w32-in (HEAPSIZE): New variable, allows to build temacs
48 with user-defined heap size. Bump the default size of the temacs
49 heap to 27MB, to avoid memory warning when running temacs.
50 ($(TEMACS)): Use HEAPSIZE instead of a hardcoded value.
51
52 * dispnew.c (scrolling_window): Fix incorrect indices in accessing
53 current_matrix and desired_matrix. (Bug#9990)
54 (verify_row_hash) [XASSERTS]: New function.
55 (adjust_glyph_matrix, row_equal_p): Use it in xassert to verify
56 that the hash value of glyph rows is correct.
57
582011-11-12 Martin Rudalics <rudalics@gmx.at>
59
60 * window.h (window): Remove splits slot.
61 * window.c (Fwindow_splits, Fset_window_splits): Remove.
62 (Fdelete_other_windows_internal, make_parent_window)
63 (make_window, Fsplit_window_internal, Fdelete_window_internal)
64 (Fset_window_configuration, save_window_save): Don't deal with
65 split status of windows.
66 (saved_window): Remove splits slot.
67 (Vwindow_splits): Rewrite doc-string.
68
692011-11-11 Jan Djärv <jan.h.d@swipnet.se>
70
71 * xfns.c (unwind_create_frame):
72 * nsfns.m (unwind_create_frame):
73 * w32fns.c (unwind_create_frame): Use Fmemq to check if frame is in
74 Vframe_list (Bug#9999).
75
762011-11-11 Dmitry Antipov <dmantipov@yandex.ru>
77
78 * xdisp.c (syms_of_xdisp): Remove duplicated definition of Qtext.
79
802011-11-11 Kenichi Handa <handa@m17n.org>
81
82 * callproc.c (Fcall_process): Set the member dst_multibyte of
83 process_coding.
84
852011-11-11 Johan Bockgård <bojohan@gnu.org>
86
87 * xdisp.c (fill_composite_glyph_string): Always set s->face, to
88 avoid a crash (bug#9496).
89
902011-11-09 Chong Yidong <cyd@gnu.org>
91
92 * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges)
93 (Fwindow_inside_absolute_pixel_edges): Only allow live windows.
94
12011-11-08 Paul Eggert <eggert@cs.ucla.edu> 952011-11-08 Paul Eggert <eggert@cs.ucla.edu>
2 96
3 * s/gnu.h (GC_MARK_STACK): Define to GC_MAKE_GCPROS_NOOPS (Bug#9926). 97 * s/gnu.h (GC_MARK_STACK): Define to GC_MAKE_GCPROS_NOOPS (Bug#9926).
@@ -181,7 +275,7 @@
181 275
182 * w32fns.c [_MSC_VER]: DECLARE_HANDLE for any MSVC version. 276 * w32fns.c [_MSC_VER]: DECLARE_HANDLE for any MSVC version.
183 277
1842011-11-05 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change) 2782011-11-05 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
185 279
186 Support MSVC build with newer versions of Visual Studio. 280 Support MSVC build with newer versions of Visual Studio.
187 * w32.c: Don't include w32api.h for MSVC. 281 * w32.c: Don't include w32api.h for MSVC.
@@ -243,7 +337,7 @@
243 * xdisp.c (try_cursor_movement): Make sure ROW isn't decremented 337 * xdisp.c (try_cursor_movement): Make sure ROW isn't decremented
244 past the beginning of the current glyph matrix. 338 past the beginning of the current glyph matrix.
245 339
2462011-10-30 Adam Sjøgren <asjo@koldfront.dk> (tiny change) 3402011-10-30 Adam Sjøgren <asjo@koldfront.dk> (tiny change)
247 341
248 * xterm.c: Include X11/Xproto.h if HAVE_GTK3. 342 * xterm.c: Include X11/Xproto.h if HAVE_GTK3.
249 (x_error_handler): Ignore BadMatch for X_SetInputFocus for 343 (x_error_handler): Ignore BadMatch for X_SetInputFocus for
@@ -2971,7 +3065,7 @@
2971 * nsselect.m (ns_string_from_pasteboard): Don't use deprecated methods 3065 * nsselect.m (ns_string_from_pasteboard): Don't use deprecated methods
2972 cString and lossyCString on OSX >= 10.4 3066 cString and lossyCString on OSX >= 10.4
2973 3067
2974 * nsmenu.m (fillWithWidgetValue): Don't use depercated method 3068 * nsmenu.m (fillWithWidgetValue): Don't use deprecated method
2975 sizeToFit on OSX >= 10.2. 3069 sizeToFit on OSX >= 10.2.
2976 3070
2977 * nsimage.m (allocInitFromFile): Don't use deprecated method 3071 * nsimage.m (allocInitFromFile): Don't use deprecated method
diff --git a/src/ChangeLog.1 b/src/ChangeLog.1
index e32db190cd0..efe77648458 100644
--- a/src/ChangeLog.1
+++ b/src/ChangeLog.1
@@ -405,7 +405,7 @@
405 Copy their own header field a_scovfrl from ohdr. 405 Copy their own header field a_scovfrl from ohdr.
406 406
407 * unexec.c [COFF]: 407 * unexec.c [COFF]:
408 Round positions of text and and data sections in output file 408 Round positions of text and data sections in output file
409 to page boundaries. 409 to page boundaries.
410 410
411 * crt0.c: Install version for Encore machines. 411 * crt0.c: Install version for Encore machines.
@@ -2375,7 +2375,7 @@
2375 Often, just return what it returned. 2375 Often, just return what it returned.
2376 `error' still never returns to its caller. 2376 `error' still never returns to its caller.
2377 2377
2378 * Signalling Qargs_out_of_range: 2378 * Signaling Qargs_out_of_range:
2379 Use new functions args_out_of_range and args_out_of_range_3 2379 Use new functions args_out_of_range and args_out_of_range_3
2380 (in data.c) to do this. 2380 (in data.c) to do this.
2381 2381
@@ -3537,4 +3537,3 @@
3537 3537
3538 You should have received a copy of the GNU General Public License 3538 You should have received a copy of the GNU General Public License
3539 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. 3539 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
3540
diff --git a/src/ChangeLog.10 b/src/ChangeLog.10
index 6152b4c76af..181b11b5a2b 100644
--- a/src/ChangeLog.10
+++ b/src/ChangeLog.10
@@ -5133,7 +5133,7 @@
5133 it can be called in a signal handler. 5133 it can be called in a signal handler.
5134 (x_catch_errors_unwind): Function deleted. 5134 (x_catch_errors_unwind): Function deleted.
5135 (x_uncatch_errors): Deallocate last x_error_message_stack struct. 5135 (x_uncatch_errors): Deallocate last x_error_message_stack struct.
5136 (x_check_errors): Call x_uncatch_errors before signalling error. 5136 (x_check_errors): Call x_uncatch_errors before signaling error.
5137 5137
5138 (x_load_font, x_term_init, XTmouse_position, handle_one_xevent) 5138 (x_load_font, x_term_init, XTmouse_position, handle_one_xevent)
5139 (x_connection_closed, x_list_fonts): Use new versions of 5139 (x_connection_closed, x_list_fonts): Use new versions of
@@ -19139,7 +19139,7 @@
19139 (font_rescale_ratio): New function. 19139 (font_rescale_ratio): New function.
19140 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio. 19140 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
19141 (better_font_p): On comparing point sized, pay attention to 19141 (better_font_p): On comparing point sized, pay attention to
19142 recale_ratio member of fonts. 19142 rescale_ratio member of fonts.
19143 (build_scalable_font_name): Reflect font->rescale_ratio in the 19143 (build_scalable_font_name): Reflect font->rescale_ratio in the
19144 font name. 19144 font name.
19145 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable. 19145 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
@@ -20702,11 +20702,11 @@
20702 (free_frame_menubar): Only compile if not USE_GTK. GTK version 20702 (free_frame_menubar): Only compile if not USE_GTK. GTK version
20703 is in gtkutil.c. 20703 is in gtkutil.c.
20704 (popup_selection_callback): New version for USE_GTK. 20704 (popup_selection_callback): New version for USE_GTK.
20705 (create_and_show_popup_menu): New fuction, one USE_GTK version and 20705 (create_and_show_popup_menu): New function, one USE_GTK version and
20706 one USE_X_TOOLKIT version. 20706 one USE_X_TOOLKIT version.
20707 (xmenu_show): Call create_and_show_popup_menu. 20707 (xmenu_show): Call create_and_show_popup_menu.
20708 (dialog_selection_callback): New version for USE_GTK. 20708 (dialog_selection_callback): New version for USE_GTK.
20709 (create_and_show_dialog): New fuction, one USE_GTK version and 20709 (create_and_show_dialog): New function, one USE_GTK version and
20710 one USE_X_TOOLKIT version. 20710 one USE_X_TOOLKIT version.
20711 (xdialog_show): Call create_and_show_dialog. 20711 (xdialog_show): Call create_and_show_dialog.
20712 20712
@@ -22780,7 +22780,7 @@
227802002-07-23 Kenichi Handa <handa@etl.go.jp> 227802002-07-23 Kenichi Handa <handa@etl.go.jp>
22781 22781
22782 * xdisp.c (face_before_or_after_it_pos): 22782 * xdisp.c (face_before_or_after_it_pos):
22783 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position. 22783 Call FETCH_MULTIBYTE_CHAR with byte position, not char position.
22784 22784
227852002-07-22 Juanma Barranquero <lektu@terra.es> 227852002-07-22 Juanma Barranquero <lektu@terra.es>
22786 22786
@@ -27928,4 +27928,3 @@ See ChangeLog.9 for earlier changes.
27928 27928
27929 You should have received a copy of the GNU General Public License 27929 You should have received a copy of the GNU General Public License
27930 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. 27930 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
27931
diff --git a/src/ChangeLog.11 b/src/ChangeLog.11
index 0a9df7d1aee..73ac5fd4e00 100644
--- a/src/ChangeLog.11
+++ b/src/ChangeLog.11
@@ -7949,7 +7949,7 @@
79492010-05-11 Karel Klíč <kklic@redhat.com> 79492010-05-11 Karel Klíč <kklic@redhat.com>
7950 7950
7951 * ftfont.c: Fix incorrect parentheses of #if condition for 7951 * ftfont.c: Fix incorrect parentheses of #if condition for
7952 definining M17N_FLT_USE_NEW_FEATURE. 7952 defining M17N_FLT_USE_NEW_FEATURE.
7953 7953
79542010-05-11 Glenn Morris <rgm@gnu.org> 79542010-05-11 Glenn Morris <rgm@gnu.org>
7955 7955
@@ -11972,7 +11972,7 @@
11972 11972
11973 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error. 11973 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
11974 (xbm_load_image): Caller changed. 11974 (xbm_load_image): Caller changed.
11975 (xbm_file_p): Avoid signalling an image_error (Bug#4107). 11975 (xbm_file_p): Avoid signaling an image_error (Bug#4107).
11976 11976
119772009-08-13 Nick Roberts <nickrob@snap.net.nz> 119772009-08-13 Nick Roberts <nickrob@snap.net.nz>
11978 11978
@@ -16658,7 +16658,7 @@
166582008-08-20 Chong Yidong <cyd@stupidchicken.com> 166582008-08-20 Chong Yidong <cyd@stupidchicken.com>
16659 16659
16660 * xselect.c (x_get_foreign_selection): Return nil if desired 16660 * xselect.c (x_get_foreign_selection): Return nil if desired
16661 selection could not be obtained, instead of signalling an error. 16661 selection could not be obtained, instead of signaling an error.
16662 16662
166632008-08-20 David Reitter <david.reitter@gmail.com> 166632008-08-20 David Reitter <david.reitter@gmail.com>
16664 16664
@@ -23551,7 +23551,7 @@
23551 STORE_XCHARB a valid l-value. 23551 STORE_XCHARB a valid l-value.
23552 23552
23553 * w32term.c (w32_native_per_char_metric): Swap width and rbearing 23553 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
23554 calculations for non-Truetype fonts. 23554 calculations for non-TrueType fonts.
23555 (x_draw_glyph_string): Sync with xterm.c. 23555 (x_draw_glyph_string): Sync with xterm.c.
23556 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]: 23556 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
23557 Remove redundant code. 23557 Remove redundant code.
@@ -25474,7 +25474,7 @@
25474 25474
25475 * term.c (terminal_encode_buffer): Make externally visible. 25475 * term.c (terminal_encode_buffer): Make externally visible.
25476 25476
25477 * makefile.w32-in: Add character.h dependancies. 25477 * makefile.w32-in: Add character.h dependencies.
25478 (character.o, chartab.o): New targets. 25478 (character.o, chartab.o): New targets.
25479 25479
254802008-02-01 Kenichi Handa <handa@m17n.org> 254802008-02-01 Kenichi Handa <handa@m17n.org>
@@ -26748,7 +26748,7 @@
267482008-02-01 Kenichi Handa <handa@m17n.org> 267482008-02-01 Kenichi Handa <handa@m17n.org>
26749 26749
26750 * xdisp.c (face_before_or_after_it_pos): 26750 * xdisp.c (face_before_or_after_it_pos):
26751 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position. 26751 Call FETCH_MULTIBYTE_CHAR with byte position, not char position.
26752 26752
267532008-02-01 Kenichi Handa <handa@m17n.org> 267532008-02-01 Kenichi Handa <handa@m17n.org>
26754 26754
@@ -29718,7 +29718,7 @@
29718 * keyboard.c (restore_kboard_configuration): Only define when 29718 * keyboard.c (restore_kboard_configuration): Only define when
29719 MULTI_KBOARD defined. 29719 MULTI_KBOARD defined.
29720 29720
29721 * makefile.w32-in: Update dependancies from Makefile.in. 29721 * makefile.w32-in: Update dependencies from Makefile.in.
29722 (OBJ1): Add terminal.$(O) 29722 (OBJ1): Add terminal.$(O)
29723 29723
29724 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]: 29724 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
diff --git a/src/ChangeLog.2 b/src/ChangeLog.2
index ca7feaee9f5..05e448c043c 100644
--- a/src/ChangeLog.2
+++ b/src/ChangeLog.2
@@ -1222,7 +1222,7 @@
12221987-07-10 Chris Hanson (cph@prep) 12221987-07-10 Chris Hanson (cph@prep)
1223 1223
1224 * xterm.h: Define macros to abstract control of input signals. 1224 * xterm.h: Define macros to abstract control of input signals.
1225 Alternate set of macros for hp-ux does no signalling. 1225 Alternate set of macros for hp-ux does no signaling.
1226 1226
1227 * xterm.c: 1227 * xterm.c:
1228 * xfns.c: 1228 * xfns.c:
@@ -4787,4 +4787,3 @@ See ChangeLog.1 for earlier changes.
4787 4787
4788 You should have received a copy of the GNU General Public License 4788 You should have received a copy of the GNU General Public License
4789 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. 4789 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
4790
diff --git a/src/ChangeLog.3 b/src/ChangeLog.3
index beb7a0a2ae1..cdfe63fc59c 100644
--- a/src/ChangeLog.3
+++ b/src/ChangeLog.3
@@ -900,9 +900,9 @@
900 invalid overlay. 900 invalid overlay.
901 (syms_of_buffer): defsubr Soverlayp; initialize Qoverlayp. 901 (syms_of_buffer): defsubr Soverlayp; initialize Qoverlayp.
902 (Fdelete_overlay): Set the overlay's markers to point nowhere. 902 (Fdelete_overlay): Set the overlay's markers to point nowhere.
903 Use CHECK_OVERLAY instead of signalling a special error. 903 Use CHECK_OVERLAY instead of signaling a special error.
904 (Fmove_overlay, Foverlay_put): Use CHECK_OVERLAY instead of 904 (Fmove_overlay, Foverlay_put): Use CHECK_OVERLAY instead of
905 signalling a special error. 905 signaling a special error.
906 (Foverlay_get): Use CHECK_OVERLAY. 906 (Foverlay_get): Use CHECK_OVERLAY.
907 * fns.c (internal_equal): Define this for overlays. 907 * fns.c (internal_equal): Define this for overlays.
908 * buffer.h (OVERLAY_VALID): Define in terms of OVERLAYP. 908 * buffer.h (OVERLAY_VALID): Define in terms of OVERLAYP.
@@ -5549,7 +5549,7 @@
5549 h->poll_suppress_count. 5549 h->poll_suppress_count.
5550 5550
5551 * eval.c (Fsignal): It's okay for the debugger to return to the 5551 * eval.c (Fsignal): It's okay for the debugger to return to the
5552 caller if the caller was signalling a quit. 5552 caller if the caller was signaling a quit.
5553 5553
5554 * eval.c (unbind_catch): Restore the polling suppression count 5554 * eval.c (unbind_catch): Restore the polling suppression count
5555 here, instead of in Fsignal and Fthrow. 5555 here, instead of in Fsignal and Fthrow.
@@ -10592,7 +10592,7 @@
10592 (init_x_parm_symbols, x_set_screen_param): Use x_screen_parms 10592 (init_x_parm_symbols, x_set_screen_param): Use x_screen_parms
10593 instead of a large switch statement. 10593 instead of a large switch statement.
10594 (x_figure_window_size): Make the default case of the switch call 10594 (x_figure_window_size): Make the default case of the switch call
10595 abort instead of signalling an error, since window_prompting's 10595 abort instead of signaling an error, since window_prompting's
10596 value is internally generated. 10596 value is internally generated.
10597 10597
105981991-05-01 Jim Blandy (jimb@churchy.gnu.ai.mit.edu) 105981991-05-01 Jim Blandy (jimb@churchy.gnu.ai.mit.edu)
@@ -13393,7 +13393,7 @@
13393 13393
13394 * macros.c (Fstart_kbd_macro): Local cleanup. 13394 * macros.c (Fstart_kbd_macro): Local cleanup.
13395 13395
13396 * minibuf.c (read_minibuf): No more delcaration of 13396 * minibuf.c (read_minibuf): No more declaration of
13397 Frestore_screen_configuration. 13397 Frestore_screen_configuration.
13398 13398
13399 * search.c (Fregexp_quote): Simplified. 13399 * search.c (Fregexp_quote): Simplified.
@@ -14884,7 +14884,7 @@
14884 14884
148851989-08-07 Richard Stallman (rms@sugar-bombs.ai.mit.edu) 148851989-08-07 Richard Stallman (rms@sugar-bombs.ai.mit.edu)
14886 14886
14887 * fileio.c (barf_or_query_if_file_exists): When signalling, 14887 * fileio.c (barf_or_query_if_file_exists): When signaling,
14888 provide the expected args for a file-error. 14888 provide the expected args for a file-error.
14889 14889
148901989-08-06 Richard Stallman (rms@sugar-bombs.ai.mit.edu) 148901989-08-06 Richard Stallman (rms@sugar-bombs.ai.mit.edu)
@@ -15414,7 +15414,7 @@
15414 * xfns.c (Fx_create_screen): If user has specified 15414 * xfns.c (Fx_create_screen): If user has specified
15415 `x-iconic-startup' then start emacs in iconic form. 15415 `x-iconic-startup' then start emacs in iconic form.
15416 Look for icon position in `icon-left' and `icon-top', or use 15416 Look for icon position in `icon-left' and `icon-top', or use
15417 window postion. 15417 window position.
15418 15418
15419 * xterm.c (x_term_init): If server doesn't respond, use fatal 15419 * xterm.c (x_term_init): If server doesn't respond, use fatal
15420 instead of error. Also tell user about -d option. 15420 instead of error. Also tell user about -d option.
diff --git a/src/ChangeLog.4 b/src/ChangeLog.4
index dc8fe23a221..208d9c2cdb0 100644
--- a/src/ChangeLog.4
+++ b/src/ChangeLog.4
@@ -811,7 +811,7 @@
811 811
8121994-04-28 Michael D. Ernst (mernst@monozygote.research.microsoft.com) 8121994-04-28 Michael D. Ernst (mernst@monozygote.research.microsoft.com)
813 813
814 * fileio.c (inhibit-file-name-handers): Correct documentation. 814 * fileio.c (inhibit-file-name-handlers): Correct documentation.
815 815
8161994-04-28 Karl Heuer (kwzh@hal.gnu.ai.mit.edu) 8161994-04-28 Karl Heuer (kwzh@hal.gnu.ai.mit.edu)
817 817
@@ -1885,7 +1885,7 @@
18851994-03-22 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu) 18851994-03-22 Frederic Pierresteguy (fp@mole.gnu.ai.mit.edu)
1886 1886
1887 * widget.c (set_frame_size): Put #if 0 around a lot of useless code. 1887 * widget.c (set_frame_size): Put #if 0 around a lot of useless code.
1888 Compute explicitely the geometry of the toplevel widget. 1888 Compute explicitly the geometry of the toplevel widget.
1889 Call XtSetValues not XtVaSetValues. 1889 Call XtSetValues not XtVaSetValues.
1890 1890
18911994-03-22 Richard Stallman (rms@mole.gnu.ai.mit.edu) 18911994-03-22 Richard Stallman (rms@mole.gnu.ai.mit.edu)
diff --git a/src/ChangeLog.6 b/src/ChangeLog.6
index f9372aa666a..141a570040c 100644
--- a/src/ChangeLog.6
+++ b/src/ChangeLog.6
@@ -1138,7 +1138,7 @@
1138 ntproc.c and simplified to match other changes (all handles are 1138 ntproc.c and simplified to match other changes (all handles are
1139 already non-inheritable). 1139 already non-inheritable).
1140 1140
1141 (get_emacs_configuration): Detect Windows flavour (Windows 95 or 1141 (get_emacs_configuration): Detect Windows flavor (Windows 95 or
1142 NT) at run-time. Change OS name for Windows 95 to be "win95". 1142 NT) at run-time. Change OS name for Windows 95 to be "win95".
1143 1143
1144 (fd_info): New variable. Array of extra info for file descriptors 1144 (fd_info): New variable. Array of extra info for file descriptors
diff --git a/src/ChangeLog.7 b/src/ChangeLog.7
index d5bebec660f..73d0d45e9c1 100644
--- a/src/ChangeLog.7
+++ b/src/ChangeLog.7
@@ -592,7 +592,7 @@
592 592
593 * coding.h (Qemacs_mule): Extern it. 593 * coding.h (Qemacs_mule): Extern it.
594 594
595 * process.c (init_process): Initilize Vdefault_process_coding_system. 595 * process.c (init_process): Initialize Vdefault_process_coding_system.
596 596
5971998-06-26 Kenichi Handa <handa@etl.go.jp> 5971998-06-26 Kenichi Handa <handa@etl.go.jp>
598 598
@@ -972,7 +972,7 @@
972 972
9731998-06-01 Ken'ichi Handa <handa@melange.gnu.org> 9731998-06-01 Ken'ichi Handa <handa@melange.gnu.org>
974 974
975 * coding.c (detect_coding_mask): Initilize local variable C. 975 * coding.c (detect_coding_mask): Initialize local variable C.
976 976
9771998-06-01 Richard Stallman <rms@gnu.org> 9771998-06-01 Richard Stallman <rms@gnu.org>
978 978
@@ -5943,7 +5943,7 @@
5943 Vauto_file_coding_system. 5943 Vauto_file_coding_system.
5944 (syms_of_fileio): Adjusted for the above change. Doc change. 5944 (syms_of_fileio): Adjusted for the above change. Doc change.
5945 (Finsert_file_contents): The argument for Vset_auto_coding is a 5945 (Finsert_file_contents): The argument for Vset_auto_coding is a
5946 concatination of the heading 1K-byte and the tailing 3K-byte. 5946 concatenation of the heading 1K-byte and the tailing 3K-byte.
5947 5947
5948 * cmds.c (internal_self_insert): Only set TARGET_CLM when C2 is tab. 5948 * cmds.c (internal_self_insert): Only set TARGET_CLM when C2 is tab.
5949 When multibyte characters are disabled, 5949 When multibyte characters are disabled,
@@ -6317,7 +6317,7 @@
6317 (ENCODE_ISO_CHARACTER_DIMENSION2): Likewise. 6317 (ENCODE_ISO_CHARACTER_DIMENSION2): Likewise.
6318 (safe_terminal_coding): New variable. 6318 (safe_terminal_coding): New variable.
6319 (Fset_safe_terminal_coding_system_internal): New function. 6319 (Fset_safe_terminal_coding_system_internal): New function.
6320 (init_coding_once): Initilize safe_terminal_coding. 6320 (init_coding_once): Initialize safe_terminal_coding.
6321 (syms_of_coding): Declare set-safe-terminal-coding-system as a 6321 (syms_of_coding): Declare set-safe-terminal-coding-system as a
6322 Lisp function. 6322 Lisp function.
6323 6323
@@ -7399,7 +7399,7 @@
7399 7399
74001997-06-18 Kenichi Handa <handa@etl.go.jp> 74001997-06-18 Kenichi Handa <handa@etl.go.jp>
7401 7401
7402 * coding.c (detect_coding_iso2022): Initilize mask correctly. 7402 * coding.c (detect_coding_iso2022): Initialize mask correctly.
7403 7403
7404 * fns.c (concat): Pay attention to multibyte characters when 7404 * fns.c (concat): Pay attention to multibyte characters when
7405 TARGET_TYPE is Lisp_String. 7405 TARGET_TYPE is Lisp_String.
@@ -7485,7 +7485,7 @@
7485 7485
74861997-06-09 Kenichi Handa <handa@etl.go.jp> 74861997-06-09 Kenichi Handa <handa@etl.go.jp>
7487 7487
7488 * buffer.c (init_buffer_once): Inititialize the member 7488 * buffer.c (init_buffer_once): Initialize the member
7489 buffer_file_coding_system. 7489 buffer_file_coding_system.
7490 (syms_of_buffer): Declare Lisp variables 7490 (syms_of_buffer): Declare Lisp variables
7491 default-buffer-file-coding-system and buffer-file-coding-system. 7491 default-buffer-file-coding-system and buffer-file-coding-system.
diff --git a/src/ChangeLog.8 b/src/ChangeLog.8
index 833119c9fcf..00e4a1f62c8 100644
--- a/src/ChangeLog.8
+++ b/src/ChangeLog.8
@@ -919,7 +919,7 @@
9191999-11-28 Eli Zaretskii <eliz@is.elta.co.il> 9191999-11-28 Eli Zaretskii <eliz@is.elta.co.il>
920 920
921 * charset.c (Fmake_char_internal): Print the charset ID when 921 * charset.c (Fmake_char_internal): Print the charset ID when
922 signalling an error. 922 signaling an error.
923 923
924 * emacs.c (synchronize_locale): Avoid compiler warnings about 924 * emacs.c (synchronize_locale): Avoid compiler warnings about
925 pointer type mismatch. 925 pointer type mismatch.
@@ -2196,7 +2196,7 @@
2196 2196
21971999-09-14 Gerd Moellmann <gerd@gnu.org> 21971999-09-14 Gerd Moellmann <gerd@gnu.org>
2198 2198
2199 * sound.c (Fplay_sound): Remove usused variables. 2199 * sound.c (Fplay_sound): Remove unused variables.
2200 (be2hs): Put in #if 0 because it's currently not used. 2200 (be2hs): Put in #if 0 because it's currently not used.
2201 2201
22021999-09-14 Ken Raeburn <raeburn@gnu.org> 22021999-09-14 Ken Raeburn <raeburn@gnu.org>
@@ -7367,7 +7367,7 @@
7367 7367
7368 * xfaces.c (free_font): Removed. 7368 * xfaces.c (free_font): Removed.
7369 (load_face_font_or_fontset): Renamed from load_font. 7369 (load_face_font_or_fontset): Renamed from load_font.
7370 (load_face_font_or_fontset): Use message2 instead of signalling. 7370 (load_face_font_or_fontset): Use message2 instead of signaling.
7371 (load_color): Likewise. 7371 (load_color): Likewise.
7372 (load_pixmap): Likewise. 7372 (load_pixmap): Likewise.
7373 7373
@@ -13404,7 +13404,7 @@
13404 13404
134051998-10-20 Jason Rumney <jasonr@altavista.net> 134051998-10-20 Jason Rumney <jasonr@altavista.net>
13406 13406
13407 * makefile.nt (w32fns.c): Add x-list-font.c to dependancies. 13407 * makefile.nt (w32fns.c): Add x-list-font.c to dependencies.
13408 13408
13409 * w32faces.c: Update comments referring to obsolete structs. 13409 * w32faces.c: Update comments referring to obsolete structs.
13410 (allocate_face, copy_face, face_eql, load_font) 13410 (allocate_face, copy_face, face_eql, load_font)
diff --git a/src/ChangeLog.9 b/src/ChangeLog.9
index ceec5da3296..9e7bd24f792 100644
--- a/src/ChangeLog.9
+++ b/src/ChangeLog.9
@@ -4617,7 +4617,7 @@
4617 * lisp.h (detect_coding_system): Prototype adjusted. 4617 * lisp.h (detect_coding_system): Prototype adjusted.
4618 4618
4619 * coding.c (ONE_MORE_BYTE_CHECK_MULTIBYTE): New macro. 4619 * coding.c (ONE_MORE_BYTE_CHECK_MULTIBYTE): New macro.
4620 (detect_coding_emacs_mule, detect_coding_iso2022,) 4620 (detect_coding_emacs_mule, detect_coding_iso2022)
4621 (detect_coding_sjis, detect_coding_big5, detect_coding_utf_8) 4621 (detect_coding_sjis, detect_coding_big5, detect_coding_utf_8)
4622 (detect_coding_utf_16, detect_coding_ccl): Make them static. 4622 (detect_coding_utf_16, detect_coding_ccl): Make them static.
4623 New argument MULTIBYTEP. Callers changed. 4623 New argument MULTIBYTEP. Callers changed.
@@ -8409,7 +8409,7 @@
8409 (encode_coding_iso2022): New local variable safe_chars. Check 8409 (encode_coding_iso2022): New local variable safe_chars. Check
8410 unsafe chars. 8410 unsafe chars.
8411 (setup_coding_system): Delete the code to initialize 8411 (setup_coding_system): Delete the code to initialize
8412 coding->safe_charses. 8412 coding->safe_charsets.
8413 (intersection, find_safe_codings): New functions. 8413 (intersection, find_safe_codings): New functions.
8414 (Ffind_coding_systems_region_internal): New function. 8414 (Ffind_coding_systems_region_internal): New function.
8415 (syms_of_coding): Defsubr it. Initialize Qsafe_chars, 8415 (syms_of_coding): Defsubr it. Initialize Qsafe_chars,
diff --git a/src/alloc.c b/src/alloc.c
index 985e4b71426..5d04bd77872 100644
--- a/src/alloc.c
+++ b/src/alloc.c
@@ -882,7 +882,7 @@ safe_alloca_unwind (Lisp_Object arg)
882 882
883/* Like malloc but used for allocating Lisp data. NBYTES is the 883/* Like malloc but used for allocating Lisp data. NBYTES is the
884 number of bytes to allocate, TYPE describes the intended use of the 884 number of bytes to allocate, TYPE describes the intended use of the
885 allcated memory block (for strings, for conses, ...). */ 885 allocated memory block (for strings, for conses, ...). */
886 886
887#ifndef USE_LSB_TAG 887#ifndef USE_LSB_TAG
888static void *lisp_malloc_loser; 888static void *lisp_malloc_loser;
@@ -1412,7 +1412,7 @@ uninterrupt_malloc (void)
1412#ifdef DOUG_LEA_MALLOC 1412#ifdef DOUG_LEA_MALLOC
1413 pthread_mutexattr_t attr; 1413 pthread_mutexattr_t attr;
1414 1414
1415 /* GLIBC has a faster way to do this, but lets keep it portable. 1415 /* GLIBC has a faster way to do this, but let's keep it portable.
1416 This is according to the Single UNIX Specification. */ 1416 This is according to the Single UNIX Specification. */
1417 pthread_mutexattr_init (&attr); 1417 pthread_mutexattr_init (&attr);
1418 pthread_mutexattr_settype (&attr, PTHREAD_MUTEX_RECURSIVE); 1418 pthread_mutexattr_settype (&attr, PTHREAD_MUTEX_RECURSIVE);
diff --git a/src/buffer.c b/src/buffer.c
index fdf006a41eb..90b43d29fc8 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -4431,7 +4431,7 @@ static int mmap_initialized_p;
4431 is currently mapped. Used to prevent overwriting an existing 4431 is currently mapped. Used to prevent overwriting an existing
4432 memory mapping. 4432 memory mapping.
4433 4433
4434 Default is to conservativly assume the address range is occupied by 4434 Default is to conservatively assume the address range is occupied by
4435 something else. This can be overridden by system configuration 4435 something else. This can be overridden by system configuration
4436 files if system-specific means to determine this exists. */ 4436 files if system-specific means to determine this exists. */
4437 4437
diff --git a/src/bytecode.c b/src/bytecode.c
index 9ed29e94b54..3af0abd63cf 100644
--- a/src/bytecode.c
+++ b/src/bytecode.c
@@ -271,7 +271,7 @@ struct byte_stack
271/* A list of currently active byte-code execution value stacks. 271/* A list of currently active byte-code execution value stacks.
272 Fbyte_code adds an entry to the head of this list before it starts 272 Fbyte_code adds an entry to the head of this list before it starts
273 processing byte-code, and it removed the entry again when it is 273 processing byte-code, and it removed the entry again when it is
274 done. Signalling an error truncates the list analoguous to 274 done. Signaling an error truncates the list analogous to
275 gcprolist. */ 275 gcprolist. */
276 276
277struct byte_stack *byte_stack_list; 277struct byte_stack *byte_stack_list;
diff --git a/src/callproc.c b/src/callproc.c
index 0859aaef2e6..01772efce30 100644
--- a/src/callproc.c
+++ b/src/callproc.c
@@ -712,6 +712,7 @@ usage: (call-process PROGRAM &optional INFILE BUFFER DISPLAY &rest ARGS) */)
712 /* If BUFFER is nil, we must read process output once and then 712 /* If BUFFER is nil, we must read process output once and then
713 discard it, so setup coding system but with nil. */ 713 discard it, so setup coding system but with nil. */
714 setup_coding_system (Qnil, &process_coding); 714 setup_coding_system (Qnil, &process_coding);
715 process_coding.dst_multibyte = 0;
715 } 716 }
716 else 717 else
717 { 718 {
@@ -747,6 +748,8 @@ usage: (call-process PROGRAM &optional INFILE BUFFER DISPLAY &rest ARGS) */)
747 && !NILP (val)) 748 && !NILP (val))
748 val = raw_text_coding_system (val); 749 val = raw_text_coding_system (val);
749 setup_coding_system (val, &process_coding); 750 setup_coding_system (val, &process_coding);
751 process_coding.dst_multibyte
752 = ! NILP (BVAR (current_buffer, enable_multibyte_characters));
750 } 753 }
751 process_coding.src_multibyte = 0; 754 process_coding.src_multibyte = 0;
752 755
diff --git a/src/ccl.c b/src/ccl.c
index 01943eddf58..6366f1acb88 100644
--- a/src/ccl.c
+++ b/src/ccl.c
@@ -484,7 +484,7 @@ static Lisp_Object Vccl_program_table;
484 If the element is t or lambda, finish without changing reg[rrr]. 484 If the element is t or lambda, finish without changing reg[rrr].
485 If the element is a number, set reg[rrr] to the number and finish. 485 If the element is a number, set reg[rrr] to the number and finish.
486 486
487 Detail of the map structure is descibed in the comment for 487 Detail of the map structure is described in the comment for
488 CCL_MapMultiple below. */ 488 CCL_MapMultiple below. */
489 489
490#define CCL_IterateMultipleMap 0x10 /* Iterate multiple maps 490#define CCL_IterateMultipleMap 0x10 /* Iterate multiple maps
@@ -1762,7 +1762,7 @@ ccl_driver (struct ccl_program *ccl, int *source, int *destination, int src_size
1762 1762
1763 case CCL_STAT_QUIT: 1763 case CCL_STAT_QUIT:
1764 if (! ccl->quit_silently) 1764 if (! ccl->quit_silently)
1765 sprintf (msg, "\nCCL: Quited."); 1765 sprintf (msg, "\nCCL: Quitted.");
1766 break; 1766 break;
1767 1767
1768 default: 1768 default:
@@ -1808,7 +1808,7 @@ ccl_driver (struct ccl_program *ccl, int *source, int *destination, int src_size
1808 1808
1809/* Resolve symbols in the specified CCL code (Lisp vector). This 1809/* Resolve symbols in the specified CCL code (Lisp vector). This
1810 function converts symbols of code conversion maps and character 1810 function converts symbols of code conversion maps and character
1811 translation tables embeded in the CCL code into their ID numbers. 1811 translation tables embedded in the CCL code into their ID numbers.
1812 1812
1813 The return value is a vector (CCL itself or a new vector in which 1813 The return value is a vector (CCL itself or a new vector in which
1814 all symbols are resolved), Qt if resolving of some symbol failed, 1814 all symbols are resolved), Qt if resolving of some symbol failed,
diff --git a/src/character.c b/src/character.c
index fb9b8a9b93e..a21760c8ab2 100644
--- a/src/character.c
+++ b/src/character.c
@@ -588,7 +588,7 @@ parse_str_as_multibyte (const unsigned char *str, EMACS_INT len,
588} 588}
589 589
590/* Arrange unibyte text at STR of NBYTES bytes as a multibyte text. 590/* Arrange unibyte text at STR of NBYTES bytes as a multibyte text.
591 It actually converts only such 8-bit characters that don't contruct 591 It actually converts only such 8-bit characters that don't construct
592 a multibyte sequence to multibyte forms of Latin-1 characters. If 592 a multibyte sequence to multibyte forms of Latin-1 characters. If
593 NCHARS is nonzero, set *NCHARS to the number of characters in the 593 NCHARS is nonzero, set *NCHARS to the number of characters in the
594 text. It is assured that we can use LEN bytes at STR as a work 594 text. It is assured that we can use LEN bytes at STR as a work
@@ -969,7 +969,7 @@ character is a target to get a byte value. In this case, POSITION, if
969non-nil, is an index of a target character in the string. 969non-nil, is an index of a target character in the string.
970 970
971If the current buffer (or STRING) is multibyte, and the target 971If the current buffer (or STRING) is multibyte, and the target
972character is not ASCII nor 8-bit character, an error is signalled. */) 972character is not ASCII nor 8-bit character, an error is signaled. */)
973 (Lisp_Object position, Lisp_Object string) 973 (Lisp_Object position, Lisp_Object string)
974{ 974{
975 int c; 975 int c;
diff --git a/src/charset.c b/src/charset.c
index 8d6a3982d14..266753f9d05 100644
--- a/src/charset.c
+++ b/src/charset.c
@@ -162,8 +162,8 @@ static struct
162 /* 1 iff the following table is used for encoder. */ 162 /* 1 iff the following table is used for encoder. */
163 short for_encoder; 163 short for_encoder;
164 164
165 /* When the following table is used for encoding, mininum and 165 /* When the following table is used for encoding, minimum and
166 maxinum character of the current charset. */ 166 maximum character of the current charset. */
167 int min_char, max_char; 167 int min_char, max_char;
168 168
169 /* A Unicode character correspoinding to the code indice 0 (i.e. the 169 /* A Unicode character correspoinding to the code indice 0 (i.e. the
diff --git a/src/charset.h b/src/charset.h
index be02bc0feae..fc35d6bb991 100644
--- a/src/charset.h
+++ b/src/charset.h
@@ -153,7 +153,7 @@ struct charset
153 /* Dimension of the charset: 1, 2, 3, or 4. */ 153 /* Dimension of the charset: 1, 2, 3, or 4. */
154 int dimension; 154 int dimension;
155 155
156 /* Byte code range of each dimension. <code_space>[4N] is a mininum 156 /* Byte code range of each dimension. <code_space>[4N] is a minimum
157 byte code of the (N+1)th dimension, <code_space>[4N+1] is a 157 byte code of the (N+1)th dimension, <code_space>[4N+1] is a
158 maximum byte code of the (N+1)th dimension, <code_space>[4N+2] is 158 maximum byte code of the (N+1)th dimension, <code_space>[4N+2] is
159 (<code_space>[4N+1] - <code_space>[4N] + 1), <code_space>[4N+3] 159 (<code_space>[4N+1] - <code_space>[4N] + 1), <code_space>[4N+3]
@@ -199,14 +199,14 @@ struct charset
199 /* The method for encoding/decoding characters of the charset. */ 199 /* The method for encoding/decoding characters of the charset. */
200 enum charset_method method; 200 enum charset_method method;
201 201
202 /* Mininum and Maximum code points of the charset. */ 202 /* Minimum and Maximum code points of the charset. */
203 unsigned min_code, max_code; 203 unsigned min_code, max_code;
204 204
205 /* Offset value used by macros CODE_POINT_TO_INDEX and 205 /* Offset value used by macros CODE_POINT_TO_INDEX and
206 INDEX_TO_CODE_POINT. . */ 206 INDEX_TO_CODE_POINT. . */
207 unsigned char_index_offset; 207 unsigned char_index_offset;
208 208
209 /* Mininum and Maximum character codes of the charset. If the 209 /* Minimum and Maximum character codes of the charset. If the
210 charset is compatible with ASCII, min_char is a minimum non-ASCII 210 charset is compatible with ASCII, min_char is a minimum non-ASCII
211 character of the charset. If the method of charset is 211 character of the charset. If the method of charset is
212 CHARSET_METHOD_OFFSET, even if the charset is unified, min_char 212 CHARSET_METHOD_OFFSET, even if the charset is unified, min_char
diff --git a/src/chartab.c b/src/chartab.c
index 1d4ac04312a..724b3076a11 100644
--- a/src/chartab.c
+++ b/src/chartab.c
@@ -758,7 +758,7 @@ map_sub_char_table (void (*c_function) (Lisp_Object, Lisp_Object, Lisp_Object),
758{ 758{
759 /* Depth of TABLE. */ 759 /* Depth of TABLE. */
760 int depth; 760 int depth;
761 /* Minimum and maxinum characters covered by TABLE. */ 761 /* Minimum and maximum characters covered by TABLE. */
762 int min_char, max_char; 762 int min_char, max_char;
763 /* Number of characters covered by one element of TABLE. */ 763 /* Number of characters covered by one element of TABLE. */
764 int chars_in_block; 764 int chars_in_block;
@@ -1196,7 +1196,7 @@ uniprop_table_uncompress (Lisp_Object table, int idx)
1196} 1196}
1197 1197
1198 1198
1199/* Decode VALUE as an elemnet of char-table TABLE. */ 1199/* Decode VALUE as an element of char-table TABLE. */
1200 1200
1201static Lisp_Object 1201static Lisp_Object
1202uniprop_decode_value_run_length (Lisp_Object table, Lisp_Object value) 1202uniprop_decode_value_run_length (Lisp_Object table, Lisp_Object value)
diff --git a/src/coding.h b/src/coding.h
index fdf9b762e75..2621928adc3 100644
--- a/src/coding.h
+++ b/src/coding.h
@@ -518,7 +518,7 @@ struct coding_system
518#define CODING_REQUIRE_DETECTION_MASK 0x1000 518#define CODING_REQUIRE_DETECTION_MASK 0x1000
519#define CODING_RESET_AT_BOL_MASK 0x2000 519#define CODING_RESET_AT_BOL_MASK 0x2000
520 520
521/* Return 1 if the coding context CODING requires annotaion 521/* Return 1 if the coding context CODING requires annotation
522 handling. */ 522 handling. */
523#define CODING_REQUIRE_ANNOTATION(coding) \ 523#define CODING_REQUIRE_ANNOTATION(coding) \
524 ((coding)->common_flags & CODING_ANNOTATION_MASK) 524 ((coding)->common_flags & CODING_ANNOTATION_MASK)
diff --git a/src/composite.c b/src/composite.c
index c8e4dd082ae..885e0262673 100644
--- a/src/composite.c
+++ b/src/composite.c
@@ -1307,7 +1307,7 @@ composition_reseat_it (struct composition_it *cmp_it, EMACS_INT charpos, EMACS_I
1307 if (cmp_it->lookback == 0) 1307 if (cmp_it->lookback == 0)
1308 goto no_composition; 1308 goto no_composition;
1309 lgstring = Qnil; 1309 lgstring = Qnil;
1310 /* Try to find a shorter compostion that starts after CPOS. */ 1310 /* Try to find a shorter composition that starts after CPOS. */
1311 composition_compute_stop_pos (cmp_it, charpos, bytepos, cpos, 1311 composition_compute_stop_pos (cmp_it, charpos, bytepos, cpos,
1312 string); 1312 string);
1313 if (cmp_it->ch == -2 || cmp_it->stop_pos < charpos) 1313 if (cmp_it->ch == -2 || cmp_it->stop_pos < charpos)
diff --git a/src/composite.h b/src/composite.h
index c57e2a0e9b3..60145b10bd9 100644
--- a/src/composite.h
+++ b/src/composite.h
@@ -41,7 +41,7 @@ enum composition_method {
41 COMPOSITION_NO 41 COMPOSITION_NO
42}; 42};
43 43
44/* Maximum number of compoments a single composition can have. */ 44/* Maximum number of components a single composition can have. */
45#define MAX_COMPOSITION_COMPONENTS 16 45#define MAX_COMPOSITION_COMPONENTS 16
46 46
47/* These macros access information about a composition that 47/* These macros access information about a composition that
diff --git a/src/data.c b/src/data.c
index 76a54547a5d..e8d2b43198f 100644
--- a/src/data.c
+++ b/src/data.c
@@ -2028,7 +2028,7 @@ DEFUN ("indirect-function", Findirect_function, Sindirect_function, 1, 2, 0,
2028If OBJECT is not a symbol, just return it. Otherwise, follow all 2028If OBJECT is not a symbol, just return it. Otherwise, follow all
2029function indirections to find the final function binding and return it. 2029function indirections to find the final function binding and return it.
2030If the final symbol in the chain is unbound, signal a void-function error. 2030If the final symbol in the chain is unbound, signal a void-function error.
2031Optional arg NOERROR non-nil means to return nil instead of signalling. 2031Optional arg NOERROR non-nil means to return nil instead of signaling.
2032Signal a cyclic-function-indirection error if there is a loop in the 2032Signal a cyclic-function-indirection error if there is a loop in the
2033function chain of symbols. */) 2033function chain of symbols. */)
2034 (register Lisp_Object object, Lisp_Object noerror) 2034 (register Lisp_Object object, Lisp_Object noerror)
diff --git a/src/dired.c b/src/dired.c
index fac3a34ab9b..acc81a6ed9d 100644
--- a/src/dired.c
+++ b/src/dired.c
@@ -628,7 +628,7 @@ file_name_completion (Lisp_Object file, Lisp_Object dirname, int all_flag, int v
628 628
629 if (includeall && !canexclude) 629 if (includeall && !canexclude)
630 { /* If we have one non-excludable file, we want to exclude the 630 { /* If we have one non-excludable file, we want to exclude the
631 excudable files. */ 631 excludable files. */
632 includeall = 0; 632 includeall = 0;
633 /* Throw away any previous excludable match found. */ 633 /* Throw away any previous excludable match found. */
634 bestmatch = Qnil; 634 bestmatch = Qnil;
diff --git a/src/dispnew.c b/src/dispnew.c
index 22695df1dc0..700952f6ae3 100644
--- a/src/dispnew.c
+++ b/src/dispnew.c
@@ -433,6 +433,25 @@ margin_glyphs_to_reserve (struct window *w, int total_glyphs, Lisp_Object margin
433 return n; 433 return n;
434} 434}
435 435
436#if XASSERTS
437/* Return non-zero if ROW's hash value is correct, zero if not. */
438int
439verify_row_hash (struct glyph_row *row)
440{
441 int area, k;
442 unsigned row_hash = 0;
443
444 for (area = LEFT_MARGIN_AREA; area < LAST_AREA; ++area)
445 for (k = 0; k < row->used[area]; ++k)
446 row_hash = ((((row_hash << 4) + (row_hash >> 24)) & 0x0fffffff)
447 + row->glyphs[area][k].u.val
448 + row->glyphs[area][k].face_id
449 + row->glyphs[area][k].padding_p
450 + (row->glyphs[area][k].type << 2));
451
452 return row_hash == row->hash;
453}
454#endif
436 455
437/* Adjust glyph matrix MATRIX on window W or on a frame to changed 456/* Adjust glyph matrix MATRIX on window W or on a frame to changed
438 window sizes. 457 window sizes.
@@ -604,6 +623,7 @@ adjust_glyph_matrix (struct window *w, struct glyph_matrix *matrix, int x, int y
604 row->glyphs[LAST_AREA] 623 row->glyphs[LAST_AREA]
605 = row->glyphs[LEFT_MARGIN_AREA] + dim.width; 624 = row->glyphs[LEFT_MARGIN_AREA] + dim.width;
606 } 625 }
626 xassert (!row->enabled_p || verify_row_hash (row));
607 ++row; 627 ++row;
608 } 628 }
609 } 629 }
@@ -1275,6 +1295,9 @@ line_draw_cost (struct glyph_matrix *matrix, int vpos)
1275static inline int 1295static inline int
1276row_equal_p (struct glyph_row *a, struct glyph_row *b, int mouse_face_p) 1296row_equal_p (struct glyph_row *a, struct glyph_row *b, int mouse_face_p)
1277{ 1297{
1298 xassert (verify_row_hash (a));
1299 xassert (verify_row_hash (b));
1300
1278 if (a == b) 1301 if (a == b)
1279 return 1; 1302 return 1;
1280 else if (a->hash != b->hash) 1303 else if (a->hash != b->hash)
@@ -3472,7 +3495,7 @@ redraw_overlapping_rows (struct window *w, int yb)
3472 if (row->used[RIGHT_MARGIN_AREA]) 3495 if (row->used[RIGHT_MARGIN_AREA])
3473 rif->fix_overlapping_area (w, row, RIGHT_MARGIN_AREA, overlaps); 3496 rif->fix_overlapping_area (w, row, RIGHT_MARGIN_AREA, overlaps);
3474 3497
3475 /* Record in neighbour rows that ROW overwrites part of 3498 /* Record in neighbor rows that ROW overwrites part of
3476 their display. */ 3499 their display. */
3477 if (overlaps & OVERLAPS_PRED) 3500 if (overlaps & OVERLAPS_PRED)
3478 MATRIX_ROW (w->current_matrix, i - 1)->overlapped_p = 1; 3501 MATRIX_ROW (w->current_matrix, i - 1)->overlapped_p = 1;
@@ -4347,10 +4370,10 @@ scrolling_window (struct window *w, int header_line_p)
4347 j = last_old; 4370 j = last_old;
4348 while (i - 1 > first_new 4371 while (i - 1 > first_new
4349 && j - 1 > first_old 4372 && j - 1 > first_old
4350 && MATRIX_ROW (current_matrix, i - 1)->enabled_p 4373 && MATRIX_ROW (current_matrix, j - 1)->enabled_p
4351 && (MATRIX_ROW (current_matrix, i - 1)->y 4374 && (MATRIX_ROW (current_matrix, j - 1)->y
4352 == MATRIX_ROW (desired_matrix, j - 1)->y) 4375 == MATRIX_ROW (desired_matrix, i - 1)->y)
4353 && !MATRIX_ROW (desired_matrix, j - 1)->redraw_fringe_bitmaps_p 4376 && !MATRIX_ROW (desired_matrix, i - 1)->redraw_fringe_bitmaps_p
4354 && row_equal_p (MATRIX_ROW (desired_matrix, i - 1), 4377 && row_equal_p (MATRIX_ROW (desired_matrix, i - 1),
4355 MATRIX_ROW (current_matrix, j - 1), 1)) 4378 MATRIX_ROW (current_matrix, j - 1), 1))
4356 --i, --j; 4379 --i, --j;
diff --git a/src/doprnt.c b/src/doprnt.c
index b4d13c59137..35af2297ff4 100644
--- a/src/doprnt.c
+++ b/src/doprnt.c
@@ -26,7 +26,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
26 of the (`int') argument, suitable for display in an Emacs buffer. 26 of the (`int') argument, suitable for display in an Emacs buffer.
27 27
28 . For %s and %c, when field width is specified (e.g., %25s), it accounts for 28 . For %s and %c, when field width is specified (e.g., %25s), it accounts for
29 the diplay width of each character, according to char-width-table. That 29 the display width of each character, according to char-width-table. That
30 is, it does not assume that each character takes one column on display. 30 is, it does not assume that each character takes one column on display.
31 31
32 . If the size of the buffer is not enough to produce the formatted string in 32 . If the size of the buffer is not enough to produce the formatted string in
diff --git a/src/emacs.c b/src/emacs.c
index 197158e18e4..8a24b04fc2b 100644
--- a/src/emacs.c
+++ b/src/emacs.c
@@ -1405,7 +1405,7 @@ Using an Emacs configured with --with-x-toolkit=lucid does not have this problem
1405#endif 1405#endif
1406 1406
1407 /* argmatch must not be used after here, 1407 /* argmatch must not be used after here,
1408 except when bulding temacs 1408 except when building temacs
1409 because the -d argument has not been skipped in skip_args. */ 1409 because the -d argument has not been skipped in skip_args. */
1410 1410
1411#ifdef MSDOS 1411#ifdef MSDOS
diff --git a/src/font.c b/src/font.c
index f6723157de1..9559c65e7ed 100644
--- a/src/font.c
+++ b/src/font.c
@@ -802,7 +802,7 @@ font_expand_wildcards (Lisp_Object *field, int n)
802 struct { 802 struct {
803 /* Minimum possible field. */ 803 /* Minimum possible field. */
804 int from; 804 int from;
805 /* Maxinum possible field. */ 805 /* Maximum possible field. */
806 int to; 806 int to;
807 /* Bit mask of possible field. Nth bit corresponds to Nth field. */ 807 /* Bit mask of possible field. Nth bit corresponds to Nth field. */
808 int mask; 808 int mask;
@@ -954,7 +954,7 @@ font_expand_wildcards (Lisp_Object *field, int n)
954 } 954 }
955 } 955 }
956 956
957 /* Decide all fileds from restrictions in RANGE. */ 957 /* Decide all fields from restrictions in RANGE. */
958 for (i = j = 0; i < n ; i++) 958 for (i = j = 0; i < n ; i++)
959 { 959 {
960 if (j < range[i].from) 960 if (j < range[i].from)
@@ -5144,7 +5144,7 @@ the corresponding glyph code. If ENCODING is a char-table, looking up
5144the table by a character gives the corresponding glyph code. 5144the table by a character gives the corresponding glyph code.
5145 5145
5146REPERTORY specifies a repertory of characters supported by the font. 5146REPERTORY specifies a repertory of characters supported by the font.
5147If REPERTORY is a charset, all characters beloging to the charset are 5147If REPERTORY is a charset, all characters belonging to the charset are
5148supported. If REPERTORY is a char-table, all characters who have a 5148supported. If REPERTORY is a char-table, all characters who have a
5149non-nil value in the table are supported. If REPERTORY is nil, Emacs 5149non-nil value in the table are supported. If REPERTORY is nil, Emacs
5150gets the repertory information by an opened font and ENCODING. */); 5150gets the repertory information by an opened font and ENCODING. */);
diff --git a/src/font.h b/src/font.h
index e50eaff9a1f..42fc050b670 100644
--- a/src/font.h
+++ b/src/font.h
@@ -599,7 +599,7 @@ struct font_driver
599 599
600 /* Optional. 600 /* Optional.
601 Store bitmap data for glyph-code CODE of FONT in BITMAP. It is 601 Store bitmap data for glyph-code CODE of FONT in BITMAP. It is
602 intended that this method is callled from the other font-driver 602 intended that this method is called from the other font-driver
603 for actual drawing. */ 603 for actual drawing. */
604 int (*get_bitmap) (struct font *font, unsigned code, 604 int (*get_bitmap) (struct font *font, unsigned code,
605 struct font_bitmap *bitmap, 605 struct font_bitmap *bitmap,
diff --git a/src/fontset.c b/src/fontset.c
index 74a25a1ca04..34b2131832f 100644
--- a/src/fontset.c
+++ b/src/fontset.c
@@ -1088,7 +1088,7 @@ fontset_pattern_regexp (Lisp_Object pattern)
1088 nescs++; 1088 nescs++;
1089 } 1089 }
1090 1090
1091 /* If PATTERN is not full XLFD we conert "*" to ".*". Otherwise 1091 /* If PATTERN is not full XLFD we convert "*" to ".*". Otherwise
1092 we convert "*" to "[^-]*" which is much faster in regular 1092 we convert "*" to "[^-]*" which is much faster in regular
1093 expression matching. */ 1093 expression matching. */
1094 if (ndashes < 14) 1094 if (ndashes < 14)
@@ -1702,7 +1702,7 @@ static Lisp_Object auto_fontset_alist;
1702/* Number of automatically created fontsets. */ 1702/* Number of automatically created fontsets. */
1703static printmax_t num_auto_fontsets; 1703static printmax_t num_auto_fontsets;
1704 1704
1705/* Retun a fontset synthesized from FONT-OBJECT. This is called from 1705/* Return a fontset synthesized from FONT-OBJECT. This is called from
1706 x_new_font when FONT-OBJECT is used for the default ASCII font of a 1706 x_new_font when FONT-OBJECT is used for the default ASCII font of a
1707 frame, and the returned fontset is used for the default fontset of 1707 frame, and the returned fontset is used for the default fontset of
1708 that frame. The fontset specifies a font of the same registry as 1708 that frame. The fontset specifies a font of the same registry as
@@ -1788,7 +1788,7 @@ update_auto_fontset_alist (Lisp_Object font_object, Lisp_Object fontset)
1788/* Return a cons (FONT-OBJECT . GLYPH-CODE). 1788/* Return a cons (FONT-OBJECT . GLYPH-CODE).
1789 FONT-OBJECT is the font for the character at POSITION in the current 1789 FONT-OBJECT is the font for the character at POSITION in the current
1790 buffer. This is computed from all the text properties and overlays 1790 buffer. This is computed from all the text properties and overlays
1791 that apply to POSITION. POSTION may be nil, in which case, 1791 that apply to POSITION. POSITION may be nil, in which case,
1792 FONT-SPEC is the font for displaying the character CH with the 1792 FONT-SPEC is the font for displaying the character CH with the
1793 default face. 1793 default face.
1794 1794
diff --git a/src/frame.c b/src/frame.c
index d56a2efb17f..c14f4db91da 100644
--- a/src/frame.c
+++ b/src/frame.c
@@ -1237,7 +1237,7 @@ delete_frame (Lisp_Object frame, Lisp_Object force)
1237 else 1237 else
1238 { 1238 {
1239#ifdef HAVE_X_WINDOWS 1239#ifdef HAVE_X_WINDOWS
1240 /* Also, save clipboard to the the clipboard manager. */ 1240 /* Also, save clipboard to the clipboard manager. */
1241 x_clipboard_manager_save_frame (frame); 1241 x_clipboard_manager_save_frame (frame);
1242#endif 1242#endif
1243 1243
@@ -2487,7 +2487,7 @@ If FRAME is omitted, the selected frame is used. The exact value
2487of the result depends on the window-system and toolkit in use: 2487of the result depends on the window-system and toolkit in use:
2488 2488
2489In the Gtk+ version of Emacs, it includes only any window (including 2489In the Gtk+ version of Emacs, it includes only any window (including
2490the minibuffer or eacho area), mode line, and header line. It does not 2490the minibuffer or echo area), mode line, and header line. It does not
2491include the tool bar or menu bar. 2491include the tool bar or menu bar.
2492 2492
2493With the Motif or Lucid toolkits, it also includes the tool bar (but 2493With the Motif or Lucid toolkits, it also includes the tool bar (but
diff --git a/src/frame.h b/src/frame.h
index e096807b02e..a32d1c549b5 100644
--- a/src/frame.h
+++ b/src/frame.h
@@ -371,7 +371,7 @@ struct frame
371 if greater than 1, then the frame is obscured - we still consider 371 if greater than 1, then the frame is obscured - we still consider
372 it to be "visible" as seen from lisp, but we don't bother 372 it to be "visible" as seen from lisp, but we don't bother
373 updating it. We must take care to garbage the frame when it 373 updating it. We must take care to garbage the frame when it
374 ceaces to be obscured though. 374 ceases to be obscured though.
375 375
376 iconified is nonzero if the frame is currently iconified. 376 iconified is nonzero if the frame is currently iconified.
377 377
diff --git a/src/gtkutil.c b/src/gtkutil.c
index af697c72673..0b7fd41f5f6 100644
--- a/src/gtkutil.c
+++ b/src/gtkutil.c
@@ -891,7 +891,7 @@ xg_frame_resized (FRAME_PTR f, int pixelwidth, int pixelheight)
891 } 891 }
892} 892}
893 893
894/* Resize the outer window of frame F after chainging the height. 894/* Resize the outer window of frame F after changing the height.
895 COLUMNS/ROWS is the size the edit area shall have after the resize. */ 895 COLUMNS/ROWS is the size the edit area shall have after the resize. */
896 896
897void 897void
@@ -1423,7 +1423,7 @@ get_dialog_title (char key)
1423/* Callback for dialogs that get WM_DELETE_WINDOW. We pop down 1423/* Callback for dialogs that get WM_DELETE_WINDOW. We pop down
1424 the dialog, but return TRUE so the event does not propagate further 1424 the dialog, but return TRUE so the event does not propagate further
1425 in GTK. This prevents GTK from destroying the dialog widget automatically 1425 in GTK. This prevents GTK from destroying the dialog widget automatically
1426 and we can always destrou the widget manually, regardles of how 1426 and we can always destroy the widget manually, regardless of how
1427 it was popped down (button press or WM_DELETE_WINDOW). 1427 it was popped down (button press or WM_DELETE_WINDOW).
1428 W is the dialog widget. 1428 W is the dialog widget.
1429 EVENT is the GdkEvent that represents WM_DELETE_WINDOW (not used). 1429 EVENT is the GdkEvent that represents WM_DELETE_WINDOW (not used).
@@ -2294,7 +2294,7 @@ tearoff_activate (GtkWidget *widget, gpointer client_data)
2294 2294
2295 2295
2296/* Create a menu item widget, and connect the callbacks. 2296/* Create a menu item widget, and connect the callbacks.
2297 ITEM decribes the menu item. 2297 ITEM describes the menu item.
2298 F is the frame the created menu belongs to. 2298 F is the frame the created menu belongs to.
2299 SELECT_CB is the callback to use when a menu item is selected. 2299 SELECT_CB is the callback to use when a menu item is selected.
2300 HIGHLIGHT_CB is the callback to call when entering/leaving menu items. 2300 HIGHLIGHT_CB is the callback to call when entering/leaving menu items.
diff --git a/src/image.c b/src/image.c
index 14c74f10607..e80f2b72102 100644
--- a/src/image.c
+++ b/src/image.c
@@ -7552,7 +7552,7 @@ imagemagick_image_p (Lisp_Object object)
7552} 7552}
7553 7553
7554/* The GIF library also defines DrawRectangle, but its never used in Emacs. 7554/* The GIF library also defines DrawRectangle, but its never used in Emacs.
7555 Therefore rename the function so it doesnt collide with ImageMagick. */ 7555 Therefore rename the function so it doesn't collide with ImageMagick. */
7556#define DrawRectangle DrawRectangleGif 7556#define DrawRectangle DrawRectangleGif
7557#include <wand/MagickWand.h> 7557#include <wand/MagickWand.h>
7558 7558
@@ -7824,7 +7824,7 @@ imagemagick_load_image (struct frame *f, struct image *img,
7824 7824
7825 if (imagemagick_rendermethod == 1) 7825 if (imagemagick_rendermethod == 1)
7826 { 7826 {
7827 /* Magicexportimage is normaly faster than pixelpushing. This 7827 /* Magicexportimage is normally faster than pixelpushing. This
7828 method is also well tested. Some aspects of this method are 7828 method is also well tested. Some aspects of this method are
7829 ad-hoc and needs to be more researched. */ 7829 ad-hoc and needs to be more researched. */
7830 int imagedepth = 24;/*MagickGetImageDepth(image_wand);*/ 7830 int imagedepth = 24;/*MagickGetImageDepth(image_wand);*/
@@ -7841,7 +7841,7 @@ imagemagick_load_image (struct frame *f, struct image *img,
7841 } 7841 }
7842 7842
7843 7843
7844 /* Oddly, the below code doesnt seem to work:*/ 7844 /* Oddly, the below code doesn't seem to work:*/
7845 /* switch(ximg->bitmap_unit){ */ 7845 /* switch(ximg->bitmap_unit){ */
7846 /* case 8: */ 7846 /* case 8: */
7847 /* pixelwidth=CharPixel; */ 7847 /* pixelwidth=CharPixel; */
@@ -7870,7 +7870,7 @@ imagemagick_load_image (struct frame *f, struct image *img,
7870 /*&(img->pixmap));*/ 7870 /*&(img->pixmap));*/
7871 ximg->data); 7871 ximg->data);
7872#else 7872#else
7873 image_error ("You dont have MagickExportImagePixels, upgrade ImageMagick!", 7873 image_error ("You don't have MagickExportImagePixels, upgrade ImageMagick!",
7874 Qnil, Qnil); 7874 Qnil, Qnil);
7875#endif 7875#endif
7876 } 7876 }
@@ -8781,7 +8781,7 @@ syms_of_image (void)
8781 operation on GNU/Linux of calling dump-emacs after loading some images. */ 8781 operation on GNU/Linux of calling dump-emacs after loading some images. */
8782 image_types = NULL; 8782 image_types = NULL;
8783 8783
8784 /* Must be defined now becase we're going to update it below, while 8784 /* Must be defined now because we're going to update it below, while
8785 defining the supported image types. */ 8785 defining the supported image types. */
8786 DEFVAR_LISP ("image-types", Vimage_types, 8786 DEFVAR_LISP ("image-types", Vimage_types,
8787 doc: /* List of potentially supported image types. 8787 doc: /* List of potentially supported image types.
diff --git a/src/indent.c b/src/indent.c
index a70b7971b96..07a54c0c1b7 100644
--- a/src/indent.c
+++ b/src/indent.c
@@ -1675,7 +1675,7 @@ compute_motion (EMACS_INT from, EMACS_INT fromvpos, EMACS_INT fromhpos, int did_
1675 val_compute_motion.prevhpos = contin_hpos; 1675 val_compute_motion.prevhpos = contin_hpos;
1676 else 1676 else
1677 val_compute_motion.prevhpos = prev_hpos; 1677 val_compute_motion.prevhpos = prev_hpos;
1678 /* We alalways handle all of them here; none of them remain to do. */ 1678 /* We always handle all of them here; none of them remain to do. */
1679 val_compute_motion.ovstring_chars_done = 0; 1679 val_compute_motion.ovstring_chars_done = 0;
1680 1680
1681 /* Nonzero if have just continued a line */ 1681 /* Nonzero if have just continued a line */
diff --git a/src/indent.h b/src/indent.h
index 07ca4dd87a5..55ee934f574 100644
--- a/src/indent.h
+++ b/src/indent.h
@@ -19,7 +19,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
19/* We introduce new member `tab_offset'. We need it because of the 19/* We introduce new member `tab_offset'. We need it because of the
20 existence of wide-column characters. There is a case that the 20 existence of wide-column characters. There is a case that the
21 line-break occurs at a wide-column character and the number of 21 line-break occurs at a wide-column character and the number of
22 colums of the line gets less than width. 22 columns of the line gets less than width.
23 23
24 Example (where W_ stands for a wide-column character): 24 Example (where W_ stands for a wide-column character):
25 ---------- 25 ----------
@@ -73,5 +73,3 @@ int disptab_matches_widthtab (struct Lisp_Char_Table *disptab,
73/* Recompute BUF's width table, using the display table DISPTAB. */ 73/* Recompute BUF's width table, using the display table DISPTAB. */
74void recompute_width_table (struct buffer *buf, 74void recompute_width_table (struct buffer *buf,
75 struct Lisp_Char_Table *disptab); 75 struct Lisp_Char_Table *disptab);
76
77
diff --git a/src/keyboard.c b/src/keyboard.c
index a9350fc32f3..8b94ee6b5d1 100644
--- a/src/keyboard.c
+++ b/src/keyboard.c
@@ -935,7 +935,7 @@ pop_kboard (void)
935 state later. 935 state later.
936 936
937 If Emacs is already in single_kboard mode, and F's keyboard is 937 If Emacs is already in single_kboard mode, and F's keyboard is
938 locked, then this function will throw an errow. */ 938 locked, then this function will throw an error. */
939 939
940void 940void
941temporarily_switch_to_single_kboard (struct frame *f) 941temporarily_switch_to_single_kboard (struct frame *f)
@@ -1063,7 +1063,7 @@ cmd_error_internal (Lisp_Object data, const char *context)
1063 struct frame *sf = SELECTED_FRAME (); 1063 struct frame *sf = SELECTED_FRAME ();
1064 1064
1065 /* The immediate context is not interesting for Quits, 1065 /* The immediate context is not interesting for Quits,
1066 since they are asyncronous. */ 1066 since they are asynchronous. */
1067 if (EQ (XCAR (data), Qquit)) 1067 if (EQ (XCAR (data), Qquit))
1068 Vsignaling_function = Qnil; 1068 Vsignaling_function = Qnil;
1069 1069
@@ -5403,7 +5403,7 @@ make_lispy_event (struct input_event *event)
5403 || !lispy_function_keys[event->code - FUNCTION_KEY_OFFSET]) 5403 || !lispy_function_keys[event->code - FUNCTION_KEY_OFFSET])
5404 { 5404 {
5405 /* We need to use an alist rather than a vector as the cache 5405 /* We need to use an alist rather than a vector as the cache
5406 since we can't make a vector long enuf. */ 5406 since we can't make a vector long enough. */
5407 if (NILP (KVAR (current_kboard, system_key_syms))) 5407 if (NILP (KVAR (current_kboard, system_key_syms)))
5408 KVAR (current_kboard, system_key_syms) = Fcons (Qnil, Qnil); 5408 KVAR (current_kboard, system_key_syms) = Fcons (Qnil, Qnil);
5409 return modify_event_symbol (event->code, 5409 return modify_event_symbol (event->code,
@@ -8149,7 +8149,7 @@ parse_tool_bar_item (Lisp_Object key, Lisp_Object item)
8149 Lisp_Object caption; 8149 Lisp_Object caption;
8150 int i, have_label = 0; 8150 int i, have_label = 0;
8151 8151
8152 /* Defininition looks like `(menu-item CAPTION BINDING PROPS...)'. 8152 /* Definition looks like `(menu-item CAPTION BINDING PROPS...)'.
8153 Rule out items that aren't lists, don't start with 8153 Rule out items that aren't lists, don't start with
8154 `menu-item' or whose rest following `tool-bar-item' is not a 8154 `menu-item' or whose rest following `tool-bar-item' is not a
8155 list. */ 8155 list. */
@@ -8798,7 +8798,7 @@ typedef struct keyremap
8798 /* Positions [START, END) in the key sequence buffer 8798 /* Positions [START, END) in the key sequence buffer
8799 are the key that we have scanned so far. 8799 are the key that we have scanned so far.
8800 Those events are the ones that we will replace 8800 Those events are the ones that we will replace
8801 if PAREHT maps them into a key sequence. */ 8801 if PARENT maps them into a key sequence. */
8802 int start, end; 8802 int start, end;
8803} keyremap; 8803} keyremap;
8804 8804
diff --git a/src/keymap.c b/src/keymap.c
index 739dfd8f2de..6f9cf288f6d 100644
--- a/src/keymap.c
+++ b/src/keymap.c
@@ -998,7 +998,7 @@ copy_keymap_item (Lisp_Object elt)
998 } 998 }
999 else 999 else
1000 { 1000 {
1001 /* It may be an old fomat menu item. 1001 /* It may be an old format menu item.
1002 Skip the optional menu string. */ 1002 Skip the optional menu string. */
1003 if (STRINGP (XCAR (tem))) 1003 if (STRINGP (XCAR (tem)))
1004 { 1004 {
diff --git a/src/makefile.w32-in b/src/makefile.w32-in
index e97f7f3aca4..36e4511d845 100644
--- a/src/makefile.w32-in
+++ b/src/makefile.w32-in
@@ -24,6 +24,9 @@ ALL = emacs
24# Set EMACSLOADPATH correctly (in case already defined in environment). 24# Set EMACSLOADPATH correctly (in case already defined in environment).
25EMACSLOADPATH=$(CURDIR)/../lisp 25EMACSLOADPATH=$(CURDIR)/../lisp
26 26
27# Size in MBs of the static heap in temacs.exe.
28HEAPSIZE = 27
29
27# 30#
28# HAVE_CONFIG_H is required by some generic gnu sources stuck into 31# HAVE_CONFIG_H is required by some generic gnu sources stuck into
29# the emacs source tree. 32# the emacs source tree.
@@ -177,7 +180,7 @@ temacs: stamp_BLD $(TEMACS)
177$(TEMACS): $(TLIB0) $(TLIB1) $(TLIB2) $(TLASTLIB) $(TOBJ) $(TRES) \ 180$(TEMACS): $(TLIB0) $(TLIB1) $(TLIB2) $(TLASTLIB) $(TOBJ) $(TRES) \
178 ../nt/$(BLD)/addsection.exe $(GNULIB) 181 ../nt/$(BLD)/addsection.exe $(GNULIB)
179 $(LINK) $(LINK_OUT)$(TEMACS_TMP) $(FULL_LINK_FLAGS) $(TOBJ) $(TRES) $(LIBS) 182 $(LINK) $(LINK_OUT)$(TEMACS_TMP) $(FULL_LINK_FLAGS) $(TOBJ) $(TRES) $(LIBS)
180 "$(THISDIR)/../nt/$(BLD)/addsection" "$(TEMACS_TMP)" "$(TEMACS)" EMHEAP 21 183 "$(THISDIR)/../nt/$(BLD)/addsection" "$(TEMACS_TMP)" "$(TEMACS)" EMHEAP $(HEAPSIZE)
181 184
182# These omit firstfile.${O}, but there's no documentation in there 185# These omit firstfile.${O}, but there's no documentation in there
183# anyways. 186# anyways.
diff --git a/src/nsfns.m b/src/nsfns.m
index 23362433a39..280fee0b27b 100644
--- a/src/nsfns.m
+++ b/src/nsfns.m
@@ -1057,7 +1057,7 @@ unwind_create_frame (Lisp_Object frame)
1057 return Qnil; 1057 return Qnil;
1058 1058
1059 /* If frame is ``official'', nothing to do. */ 1059 /* If frame is ``official'', nothing to do. */
1060 if (!CONSP (Vframe_list) || !EQ (XCAR (Vframe_list), frame)) 1060 if (NILP (Fmemq (frame, Vframe_list)))
1061 { 1061 {
1062#if GLYPH_DEBUG && XASSERTS 1062#if GLYPH_DEBUG && XASSERTS
1063 struct ns_display_info *dpyinfo = FRAME_X_DISPLAY_INFO (f); 1063 struct ns_display_info *dpyinfo = FRAME_X_DISPLAY_INFO (f);
@@ -1267,7 +1267,7 @@ This function is an internal primitive--use `make-frame' instead. */)
1267#endif 1267#endif
1268 1268
1269 init_frame_faces (f); 1269 init_frame_faces (f);
1270 1270
1271 /* The resources controlling the menu-bar and tool-bar are 1271 /* The resources controlling the menu-bar and tool-bar are
1272 processed specially at startup, and reflected in the mode 1272 processed specially at startup, and reflected in the mode
1273 variables; ignore them here. */ 1273 variables; ignore them here. */
@@ -1656,7 +1656,7 @@ If omitted or nil, the selected frame's display is used. */)
1656 1656
1657DEFUN ("x-display-backing-store", Fx_display_backing_store, 1657DEFUN ("x-display-backing-store", Fx_display_backing_store,
1658 Sx_display_backing_store, 0, 1, 0, 1658 Sx_display_backing_store, 0, 1, 0,
1659 doc: /* Return whether the Nexstep display DISPLAY supports backing store. 1659 doc: /* Return whether the Nextstep display DISPLAY supports backing store.
1660The value may be `buffered', `retained', or `non-retained'. 1660The value may be `buffered', `retained', or `non-retained'.
1661DISPLAY should be a frame, the display name as a string, or a terminal ID. 1661DISPLAY should be a frame, the display name as a string, or a terminal ID.
1662If omitted or nil, the selected frame's display is used. */) 1662If omitted or nil, the selected frame's display is used. */)
@@ -1846,7 +1846,7 @@ DEFUN ("ns-emacs-info-panel", Fns_emacs_info_panel, Sns_emacs_info_panel,
1846 1846
1847 1847
1848DEFUN ("ns-font-name", Fns_font_name, Sns_font_name, 1, 1, 0, 1848DEFUN ("ns-font-name", Fns_font_name, Sns_font_name, 1, 1, 0,
1849 doc: /* Determine font postscript or family name for font NAME. 1849 doc: /* Determine font PostScript or family name for font NAME.
1850NAME should be a string containing either the font name or an XLFD 1850NAME should be a string containing either the font name or an XLFD
1851font descriptor. If string contains `fontset' and not 1851font descriptor. If string contains `fontset' and not
1852`fontset-startup', it is left alone. */) 1852`fontset-startup', it is left alone. */)
diff --git a/src/nsterm.h b/src/nsterm.h
index b54e182780a..574d31c962a 100644
--- a/src/nsterm.h
+++ b/src/nsterm.h
@@ -447,7 +447,7 @@ struct nsfont_info
447{ 447{
448 struct font font; 448 struct font font;
449 449
450 char *name; /* postscript name, uniquely identifies on NS systems */ 450 char *name; /* PostScript name, uniquely identifies on NS systems */
451 float width; /* this and following metrics stored as float rather than int */ 451 float width; /* this and following metrics stored as float rather than int */
452 float height; 452 float height;
453 float underpos; 453 float underpos;
diff --git a/src/nsterm.m b/src/nsterm.m
index 3d3723fc28c..c5b28d57ac5 100644
--- a/src/nsterm.m
+++ b/src/nsterm.m
@@ -3035,7 +3035,7 @@ ns_dumpglyphs_image (struct glyph_string *s, NSRect r)
3035 /* Currently on NS img->mask is always 0. Since 3035 /* Currently on NS img->mask is always 0. Since
3036 get_window_cursor_type specifies a hollow box cursor when on 3036 get_window_cursor_type specifies a hollow box cursor when on
3037 a non-masked image we never reach this clause. But we put it 3037 a non-masked image we never reach this clause. But we put it
3038 in in antipication of better support for image masks on 3038 in in anticipation of better support for image masks on
3039 NS. */ 3039 NS. */
3040 tdCol = ns_lookup_indexed_color (NS_FACE_FOREGROUND (face), s->f); 3040 tdCol = ns_lookup_indexed_color (NS_FACE_FOREGROUND (face), s->f);
3041 } 3041 }
@@ -4503,7 +4503,7 @@ ns_term_shutdown (int sig)
4503 //ns_app_active=YES; 4503 //ns_app_active=YES;
4504 4504
4505 ns_update_auto_hide_menu_bar (); 4505 ns_update_auto_hide_menu_bar ();
4506 // No constrining takes place when the application is not active. 4506 // No constraining takes place when the application is not active.
4507 ns_constrain_all_frames (); 4507 ns_constrain_all_frames ();
4508} 4508}
4509- (void)applicationDidResignActive: (NSNotification *)notification 4509- (void)applicationDidResignActive: (NSNotification *)notification
diff --git a/src/process.c b/src/process.c
index 301274676d6..53382d804f2 100644
--- a/src/process.c
+++ b/src/process.c
@@ -3120,7 +3120,7 @@ usage: (make-network-process &rest ARGS) */)
3120 { 3120 {
3121 struct hostent *host_info_ptr; 3121 struct hostent *host_info_ptr;
3122 3122
3123 /* gethostbyname may fail with TRY_AGAIN, but we don't honour that, 3123 /* gethostbyname may fail with TRY_AGAIN, but we don't honor that,
3124 as it may `hang' Emacs for a very long time. */ 3124 as it may `hang' Emacs for a very long time. */
3125 immediate_quit = 1; 3125 immediate_quit = 1;
3126 QUIT; 3126 QUIT;
@@ -5377,8 +5377,8 @@ send_process (volatile Lisp_Object proc, const char *volatile buf,
5377 sending a multibyte text, thus we must encode it by the 5377 sending a multibyte text, thus we must encode it by the
5378 original coding system specified for the current process. 5378 original coding system specified for the current process.
5379 5379
5380 Another reason we comming here is that the coding system 5380 Another reason we come here is that the coding system
5381 was just complemented and new one was returned by 5381 was just complemented and a new one was returned by
5382 complement_process_encoding_system. */ 5382 complement_process_encoding_system. */
5383 setup_coding_system (p->encode_coding_system, coding); 5383 setup_coding_system (p->encode_coding_system, coding);
5384 Vlast_coding_system_used = p->encode_coding_system; 5384 Vlast_coding_system_used = p->encode_coding_system;
diff --git a/src/ralloc.c b/src/ralloc.c
index 50d322523c1..62189ad8fc7 100644
--- a/src/ralloc.c
+++ b/src/ralloc.c
@@ -219,13 +219,13 @@ find_heap (POINTER address)
219 If enough space is not presently available in our reserve, this means 219 If enough space is not presently available in our reserve, this means
220 getting more page-aligned space from the system. If the returned space 220 getting more page-aligned space from the system. If the returned space
221 is not contiguous to the last heap, allocate a new heap, and append it 221 is not contiguous to the last heap, allocate a new heap, and append it
222 to the heap list.
222 223
223 obtain does not try to keep track of whether space is in use 224 obtain does not try to keep track of whether space is in use or not
224 or not in use. It just returns the address of SIZE bytes that 225 in use. It just returns the address of SIZE bytes that fall within a
225 fall within a single heap. If you call obtain twice in a row 226 single heap. If you call obtain twice in a row with the same arguments,
226 with the same arguments, you typically get the same value. 227 you typically get the same value. It's the caller's responsibility to
227 to the heap list. It's the caller's responsibility to keep 228 keep track of what space is in use.
228 track of what space is in use.
229 229
230 Return the address of the space if all went well, or zero if we couldn't 230 Return the address of the space if all went well, or zero if we couldn't
231 allocate the memory. */ 231 allocate the memory. */
@@ -389,7 +389,7 @@ find_bloc (POINTER *ptr)
389 while (p != NIL_BLOC) 389 while (p != NIL_BLOC)
390 { 390 {
391 /* Consistency check. Don't return inconsistent blocs. 391 /* Consistency check. Don't return inconsistent blocs.
392 Don't abort here, as callers might be expecting this, but 392 Don't abort here, as callers might be expecting this, but
393 callers that always expect a bloc to be returned should abort 393 callers that always expect a bloc to be returned should abort
394 if one isn't to avoid a memory corruption bug that is 394 if one isn't to avoid a memory corruption bug that is
395 difficult to track down. */ 395 difficult to track down. */
@@ -1180,7 +1180,7 @@ r_alloc_reset_variable (POINTER *old, POINTER *new)
1180 1180
1181 /* Find the bloc that corresponds to the data pointed to by pointer. 1181 /* Find the bloc that corresponds to the data pointed to by pointer.
1182 find_bloc cannot be used, as it has internal consistency checks 1182 find_bloc cannot be used, as it has internal consistency checks
1183 which fail when the variable needs reseting. */ 1183 which fail when the variable needs resetting. */
1184 while (bloc != NIL_BLOC) 1184 while (bloc != NIL_BLOC)
1185 { 1185 {
1186 if (bloc->data == *new) 1186 if (bloc->data == *new)
diff --git a/src/regex.c b/src/regex.c
index ccbad58abb3..b7699378f5a 100644
--- a/src/regex.c
+++ b/src/regex.c
@@ -637,7 +637,7 @@ typedef enum
637 on_failure_jump_nastyloop, 637 on_failure_jump_nastyloop,
638 638
639 /* A smart `on_failure_jump' used for greedy * and + operators. 639 /* A smart `on_failure_jump' used for greedy * and + operators.
640 It analyses the loop before which it is put and if the 640 It analyzes the loop before which it is put and if the
641 loop does not require backtracking, it changes itself to 641 loop does not require backtracking, it changes itself to
642 `on_failure_keep_string_jump' and short-circuits the loop, 642 `on_failure_keep_string_jump' and short-circuits the loop,
643 else it just defaults to changing itself into `on_failure_jump'. 643 else it just defaults to changing itself into `on_failure_jump'.
diff --git a/src/regex.h b/src/regex.h
index 7747ec57629..eba62f2e769 100644
--- a/src/regex.h
+++ b/src/regex.h
@@ -415,7 +415,7 @@ struct re_pattern_buffer
415typedef struct re_pattern_buffer regex_t; 415typedef struct re_pattern_buffer regex_t;
416 416
417/* Type for byte offsets within the string. POSIX mandates this to be an int, 417/* Type for byte offsets within the string. POSIX mandates this to be an int,
418 but the Open Group has signalled its intention to change the requirement to 418 but the Open Group has signaled its intention to change the requirement to
419 be that regoff_t be at least as wide as ptrdiff_t and ssize_t. Current 419 be that regoff_t be at least as wide as ptrdiff_t and ssize_t. Current
420 gnulib sources also use ssize_t, and we need this for supporting buffers and 420 gnulib sources also use ssize_t, and we need this for supporting buffers and
421 strings > 2GB on 64-bit hosts. */ 421 strings > 2GB on 64-bit hosts. */
diff --git a/src/s/hpux10-20.h b/src/s/hpux10-20.h
index 1cd91a41b55..37199bcc29b 100644
--- a/src/s/hpux10-20.h
+++ b/src/s/hpux10-20.h
@@ -89,7 +89,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
89#undef HAVE_RANDOM 89#undef HAVE_RANDOM
90 90
91 91
92/* Rainer Malzbender <rainer@displaytech.com> says definining 92/* Rainer Malzbender <rainer@displaytech.com> says defining
93 HAVE_XRMSETDATABASE allows Emacs to compile on HP-UX 10.20 using GCC. */ 93 HAVE_XRMSETDATABASE allows Emacs to compile on HP-UX 10.20 using GCC. */
94#ifndef HAVE_XRMSETDATABASE 94#ifndef HAVE_XRMSETDATABASE
95#define HAVE_XRMSETDATABASE 95#define HAVE_XRMSETDATABASE
diff --git a/src/s/msdos.h b/src/s/msdos.h
index 29ca0629899..9ee13d12867 100644
--- a/src/s/msdos.h
+++ b/src/s/msdos.h
@@ -119,7 +119,7 @@ You lose; /* Emacs for DOS must be compiled with DJGPP */
119#ifdef HAVE_X_WINDOWS 119#ifdef HAVE_X_WINDOWS
120/* We need a little extra space, see ../../lisp/loadup.el and the 120/* We need a little extra space, see ../../lisp/loadup.el and the
121 commentary below, in the non-X branch. The 140KB number was 121 commentary below, in the non-X branch. The 140KB number was
122 measured on GNU/Linux and on MS-WIndows. */ 122 measured on GNU/Linux and on MS-Windows. */
123#define SYSTEM_PURESIZE_EXTRA (-170000+140000) 123#define SYSTEM_PURESIZE_EXTRA (-170000+140000)
124#else 124#else
125/* We need a little extra space, see ../../lisp/loadup.el. 125/* We need a little extra space, see ../../lisp/loadup.el.
@@ -138,4 +138,3 @@ You lose; /* Emacs for DOS must be compiled with DJGPP */
138 registers relevant for conservative garbage collection in the jmp_buf. */ 138 registers relevant for conservative garbage collection in the jmp_buf. */
139#define GC_SETJMP_WORKS 1 139#define GC_SETJMP_WORKS 1
140#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS 140#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS
141
diff --git a/src/sound.c b/src/sound.c
index 362c04b7d40..39007574afc 100644
--- a/src/sound.c
+++ b/src/sound.c
@@ -226,7 +226,7 @@ struct sound_device
226 /* Close device SD. */ 226 /* Close device SD. */
227 void (* close) (struct sound_device *sd); 227 void (* close) (struct sound_device *sd);
228 228
229 /* Configure SD accoring to device-dependent parameters. */ 229 /* Configure SD according to device-dependent parameters. */
230 void (* configure) (struct sound_device *device); 230 void (* configure) (struct sound_device *device);
231 231
232 /* Choose a device-dependent format for outputting sound S. */ 232 /* Choose a device-dependent format for outputting sound S. */
diff --git a/src/syssignal.h b/src/syssignal.h
index 7533a5a64fd..315400d8498 100644
--- a/src/syssignal.h
+++ b/src/syssignal.h
@@ -39,7 +39,7 @@ extern sigset_t empty_mask;
39 39
40/* POSIX pretty much destroys any possibility of writing sigmask as a 40/* POSIX pretty much destroys any possibility of writing sigmask as a
41 macro in standard C. We always define our own version because the 41 macro in standard C. We always define our own version because the
42 predefined macro in Glibc 2.1 is only provided for compatility for old 42 predefined macro in Glibc 2.1 is only provided for compatibility for old
43 programs that use int as signal mask type. */ 43 programs that use int as signal mask type. */
44#undef sigmask 44#undef sigmask
45#ifdef __GNUC__ 45#ifdef __GNUC__
diff --git a/src/unexelf.c b/src/unexelf.c
index 979d6dce629..04c029f7e80 100644
--- a/src/unexelf.c
+++ b/src/unexelf.c
@@ -1019,7 +1019,7 @@ temacs:
1019 /* The conditional bit below was in Oliva's original code 1019 /* The conditional bit below was in Oliva's original code
1020 (1999-08-25) and seems to have been dropped by mistake 1020 (1999-08-25) and seems to have been dropped by mistake
1021 subsequently. It prevents a crash at startup under X in 1021 subsequently. It prevents a crash at startup under X in
1022 `IRIX64 6.5 6.5.17m', whether compiled on that relase or 1022 `IRIX64 6.5 6.5.17m', whether compiled on that release or
1023 an earlier one. It causes no trouble on the other ELF 1023 an earlier one. It causes no trouble on the other ELF
1024 platforms I could test (Irix 6.5.15m, Solaris 8, Debian 1024 platforms I could test (Irix 6.5.15m, Solaris 8, Debian
1025 Potato x86, Debian Woody SPARC); however, it's reported 1025 Potato x86, Debian Woody SPARC); however, it's reported
diff --git a/src/w32fns.c b/src/w32fns.c
index 6f32442514a..4a6da46141c 100644
--- a/src/w32fns.c
+++ b/src/w32fns.c
@@ -2088,7 +2088,7 @@ w32_key_to_modifier (int key)
2088 key_mapping = Qnil; 2088 key_mapping = Qnil;
2089 } 2089 }
2090 2090
2091 /* NB. This code runs in the input thread, asychronously to the lisp 2091 /* NB. This code runs in the input thread, asynchronously to the lisp
2092 thread, so we must be careful to ensure access to lisp data is 2092 thread, so we must be careful to ensure access to lisp data is
2093 thread-safe. The following code is safe because the modifier 2093 thread-safe. The following code is safe because the modifier
2094 variable values are updated atomically from lisp and symbols are 2094 variable values are updated atomically from lisp and symbols are
@@ -3986,7 +3986,7 @@ unwind_create_frame (Lisp_Object frame)
3986 struct frame *f = XFRAME (frame); 3986 struct frame *f = XFRAME (frame);
3987 3987
3988 /* If frame is ``official'', nothing to do. */ 3988 /* If frame is ``official'', nothing to do. */
3989 if (!CONSP (Vframe_list) || !EQ (XCAR (Vframe_list), frame)) 3989 if (NILP (Fmemq (frame, Vframe_list)))
3990 { 3990 {
3991#if GLYPH_DEBUG 3991#if GLYPH_DEBUG
3992 struct w32_display_info *dpyinfo = FRAME_W32_DISPLAY_INFO (f); 3992 struct w32_display_info *dpyinfo = FRAME_W32_DISPLAY_INFO (f);
@@ -6709,7 +6709,7 @@ DEFUN ("default-printer-name", Fdefault_printer_name, Sdefault_printer_name,
6709 ClosePrinter (hPrn); 6709 ClosePrinter (hPrn);
6710 return Qnil; 6710 return Qnil;
6711 } 6711 }
6712 /* Call GetPrinter again with big enouth memory block */ 6712 /* Call GetPrinter again with big enough memory block. */
6713 err = GetPrinter (hPrn, 2, (LPBYTE)ppi2, dwNeeded, &dwReturned); 6713 err = GetPrinter (hPrn, 2, (LPBYTE)ppi2, dwNeeded, &dwReturned);
6714 ClosePrinter (hPrn); 6714 ClosePrinter (hPrn);
6715 if (!err) 6715 if (!err)
diff --git a/src/w32font.c b/src/w32font.c
index 26bf4207de5..bd58e7e757b 100644
--- a/src/w32font.c
+++ b/src/w32font.c
@@ -330,7 +330,7 @@ w32font_list (Lisp_Object frame, Lisp_Object font_spec)
330 330
331/* w32 implementation of match for font backend. 331/* w32 implementation of match for font backend.
332 Return a font entity most closely matching with FONT_SPEC on 332 Return a font entity most closely matching with FONT_SPEC on
333 FRAME. The closeness is detemined by the font backend, thus 333 FRAME. The closeness is determined by the font backend, thus
334 `face-font-selection-order' is ignored here. */ 334 `face-font-selection-order' is ignored here. */
335static Lisp_Object 335static Lisp_Object
336w32font_match (Lisp_Object frame, Lisp_Object font_spec) 336w32font_match (Lisp_Object frame, Lisp_Object font_spec)
@@ -1284,8 +1284,8 @@ font_matches_spec (DWORD type, NEWTEXTMETRICEX *font,
1284 { 1284 {
1285 /* Only truetype fonts will have information about what 1285 /* Only truetype fonts will have information about what
1286 scripts they support. This probably means the user 1286 scripts they support. This probably means the user
1287 will have to force Emacs to use raster, postscript 1287 will have to force Emacs to use raster, PostScript
1288 or atm fonts for non-ASCII text. */ 1288 or ATM fonts for non-ASCII text. */
1289 if (type & TRUETYPE_FONTTYPE) 1289 if (type & TRUETYPE_FONTTYPE)
1290 { 1290 {
1291 Lisp_Object support 1291 Lisp_Object support
@@ -1464,7 +1464,7 @@ check_face_name (LOGFONT *font, char *full_name)
1464 /* Helvetica is mapped to Arial in Windows, but if a Type-1 Helvetica is 1464 /* Helvetica is mapped to Arial in Windows, but if a Type-1 Helvetica is
1465 installed, we run into problems with the Uniscribe backend which tries 1465 installed, we run into problems with the Uniscribe backend which tries
1466 to avoid non-truetype fonts, and ends up mixing the Type-1 Helvetica 1466 to avoid non-truetype fonts, and ends up mixing the Type-1 Helvetica
1467 with Arial's characteristics, since that attempt to use Truetype works 1467 with Arial's characteristics, since that attempt to use TrueType works
1468 some places, but not others. */ 1468 some places, but not others. */
1469 if (!xstrcasecmp (font->lfFaceName, "helvetica")) 1469 if (!xstrcasecmp (font->lfFaceName, "helvetica"))
1470 { 1470 {
@@ -1492,7 +1492,7 @@ check_face_name (LOGFONT *font, char *full_name)
1492 1492
1493 1493
1494/* Callback function for EnumFontFamiliesEx. 1494/* Callback function for EnumFontFamiliesEx.
1495 * Checks if a font matches everything we are trying to check agaist, 1495 * Checks if a font matches everything we are trying to check against,
1496 * and if so, adds it to a list. Both the data we are checking against 1496 * and if so, adds it to a list. Both the data we are checking against
1497 * and the list to which the fonts are added are passed in via the 1497 * and the list to which the fonts are added are passed in via the
1498 * lparam argument, in the form of a font_callback_data struct. */ 1498 * lparam argument, in the form of a font_callback_data struct. */
@@ -2221,7 +2221,7 @@ font_supported_scripts (FONTSIGNATURE * sig)
2221 so don't need to mark them separately. */ 2221 so don't need to mark them separately. */
2222 /* 1: Latin-1 supplement, 2: Latin Extended A, 3: Latin Extended B. */ 2222 /* 1: Latin-1 supplement, 2: Latin Extended A, 3: Latin Extended B. */
2223 SUBRANGE (4, Qphonetic); 2223 SUBRANGE (4, Qphonetic);
2224 /* 5: Spacing and tone modifiers, 6: Combining Diacriticals. */ 2224 /* 5: Spacing and tone modifiers, 6: Combining Diacritical Marks. */
2225 SUBRANGE (7, Qgreek); 2225 SUBRANGE (7, Qgreek);
2226 SUBRANGE (8, Qcoptic); 2226 SUBRANGE (8, Qcoptic);
2227 SUBRANGE (9, Qcyrillic); 2227 SUBRANGE (9, Qcyrillic);
@@ -2311,7 +2311,7 @@ font_supported_scripts (FONTSIGNATURE * sig)
2311 /* 115: Saurashtra, 116: Kayah Li, 117: Rejang. */ 2311 /* 115: Saurashtra, 116: Kayah Li, 117: Rejang. */
2312 SUBRANGE (118, Qcham); 2312 SUBRANGE (118, Qcham);
2313 /* 119: Ancient symbols, 120: Phaistos Disc. */ 2313 /* 119: Ancient symbols, 120: Phaistos Disc. */
2314 /* 121: Carian, Lycian, Lydian, 122: Dominos, Mah Jong tiles. */ 2314 /* 121: Carian, Lycian, Lydian, 122: Dominoes, Mahjong tiles. */
2315 /* 123-127: Reserved. */ 2315 /* 123-127: Reserved. */
2316 2316
2317 /* There isn't really a main symbol range, so include symbol if any 2317 /* There isn't really a main symbol range, so include symbol if any
diff --git a/src/w32font.h b/src/w32font.h
index 45c06897195..f77866b869f 100644
--- a/src/w32font.h
+++ b/src/w32font.h
@@ -20,8 +20,8 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
20#define EMACS_W32FONT_H 20#define EMACS_W32FONT_H
21 21
22 22
23/* Bit 17 of ntmFlags in NEWTEXTMETRIC is set for Postscript OpenType fonts, 23/* Bit 17 of ntmFlags in NEWTEXTMETRIC is set for PostScript OpenType fonts,
24 bit 18 for Truetype OpenType fonts, bit 20 for Type1 fonts. */ 24 bit 18 for TrueType OpenType fonts, bit 20 for Type1 fonts. */
25#ifndef NTM_PS_OPENTYPE 25#ifndef NTM_PS_OPENTYPE
26#define NTM_PS_OPENTYPE 0x00020000 26#define NTM_PS_OPENTYPE 0x00020000
27#endif 27#endif
@@ -84,4 +84,3 @@ int uniscribe_check_otf (LOGFONT *font, Lisp_Object otf_spec);
84Lisp_Object intern_font_name (char *); 84Lisp_Object intern_font_name (char *);
85 85
86#endif 86#endif
87
diff --git a/src/w32menu.c b/src/w32menu.c
index c31a8c1fd96..39d101e7bd5 100644
--- a/src/w32menu.c
+++ b/src/w32menu.c
@@ -1443,7 +1443,7 @@ add_menu_item (HMENU menu, widget_value *wv, HMENU item)
1443 out_string = (char *) local_alloc (strlen (wv->name) + 1); 1443 out_string = (char *) local_alloc (strlen (wv->name) + 1);
1444 strcpy (out_string, wv->name); 1444 strcpy (out_string, wv->name);
1445#ifdef MENU_DEBUG 1445#ifdef MENU_DEBUG
1446 DebPrint ("Menu: allocing %ld for owner-draw", out_string); 1446 DebPrint ("Menu: allocating %ld for owner-draw", out_string);
1447#endif 1447#endif
1448 fuFlags = MF_OWNERDRAW | MF_DISABLED; 1448 fuFlags = MF_OWNERDRAW | MF_DISABLED;
1449 } 1449 }
diff --git a/src/w32proc.c b/src/w32proc.c
index 47cbf57d9ea..279816bcc3e 100644
--- a/src/w32proc.c
+++ b/src/w32proc.c
@@ -174,7 +174,7 @@ delete_child (child_process *cp)
174 cp->status = STATUS_READ_ERROR; 174 cp->status = STATUS_READ_ERROR;
175 SetEvent (cp->char_consumed); 175 SetEvent (cp->char_consumed);
176#if 0 176#if 0
177 /* We used to forceably terminate the thread here, but it 177 /* We used to forcibly terminate the thread here, but it
178 is normally unnecessary, and in abnormal cases, the worst that 178 is normally unnecessary, and in abnormal cases, the worst that
179 will happen is we have an extra idle thread hanging around 179 will happen is we have an extra idle thread hanging around
180 waiting for the zombie process. */ 180 waiting for the zombie process. */
@@ -241,7 +241,8 @@ reader_thread (void *arg)
241 241
242 /* We have to wait for the go-ahead before we can start */ 242 /* We have to wait for the go-ahead before we can start */
243 if (cp == NULL 243 if (cp == NULL
244 || WaitForSingleObject (cp->char_consumed, INFINITE) != WAIT_OBJECT_0) 244 || WaitForSingleObject (cp->char_consumed, INFINITE) != WAIT_OBJECT_0
245 || cp->fd < 0)
245 return 1; 246 return 1;
246 247
247 for (;;) 248 for (;;)
@@ -2295,7 +2296,7 @@ filesystems via ange-ftp. */);
2295 doc: /* Non-nil means attempt to fake realistic inode values. 2296 doc: /* Non-nil means attempt to fake realistic inode values.
2296This works by hashing the truename of files, and should detect 2297This works by hashing the truename of files, and should detect
2297aliasing between long and short (8.3 DOS) names, but can have 2298aliasing between long and short (8.3 DOS) names, but can have
2298false positives because of hash collisions. Note that determing 2299false positives because of hash collisions. Note that determining
2299the truename of a file can be slow. */); 2300the truename of a file can be slow. */);
2300 Vw32_generate_fake_inodes = Qnil; 2301 Vw32_generate_fake_inodes = Qnil;
2301#endif 2302#endif
@@ -2319,4 +2320,3 @@ where the performance impact may be noticeable even on modern hardware. */);
2319 staticpro (&Vw32_valid_codepages); 2320 staticpro (&Vw32_valid_codepages);
2320} 2321}
2321/* end of w32proc.c */ 2322/* end of w32proc.c */
2322
diff --git a/src/w32term.c b/src/w32term.c
index f876cff0363..e9fa16ba325 100644
--- a/src/w32term.c
+++ b/src/w32term.c
@@ -3287,7 +3287,7 @@ w32_mouse_position (FRAME_PTR *fp, int insist, Lisp_Object *bar_window,
3287 3287
3288/* Handle mouse button event on the tool-bar of frame F, at 3288/* Handle mouse button event on the tool-bar of frame F, at
3289 frame-relative coordinates X/Y. EVENT_TYPE is either ButtionPress 3289 frame-relative coordinates X/Y. EVENT_TYPE is either ButtionPress
3290 or ButtonRelase. */ 3290 or ButtonRelease. */
3291 3291
3292static void 3292static void
3293w32_handle_tool_bar_click (struct frame *f, struct input_event *button_event) 3293w32_handle_tool_bar_click (struct frame *f, struct input_event *button_event)
@@ -5691,7 +5691,7 @@ x_make_frame_visible (struct frame *f)
5691 f->output_data.w32->asked_for_visible = 1; 5691 f->output_data.w32->asked_for_visible = 1;
5692 5692
5693 /* According to a report in emacs-devel 2008-06-03, SW_SHOWNORMAL 5693 /* According to a report in emacs-devel 2008-06-03, SW_SHOWNORMAL
5694 causes unexpected behaviour when unminimizing frames that were 5694 causes unexpected behavior when unminimizing frames that were
5695 previously maximised. But only SW_SHOWNORMAL works properly for 5695 previously maximised. But only SW_SHOWNORMAL works properly for
5696 frames that were truely hidden (using make-frame-invisible), so 5696 frames that were truely hidden (using make-frame-invisible), so
5697 we need it to avoid Bug#5482. It seems that async_iconified 5697 we need it to avoid Bug#5482. It seems that async_iconified
diff --git a/src/w32term.h b/src/w32term.h
index 710394583e4..02392133837 100644
--- a/src/w32term.h
+++ b/src/w32term.h
@@ -637,7 +637,7 @@ extern void x_delete_display (struct w32_display_info *dpyinfo);
637 637
638/* Keypad command key support. W32 doesn't have virtual keys defined 638/* Keypad command key support. W32 doesn't have virtual keys defined
639 for the function keys on the keypad (they are mapped to the standard 639 for the function keys on the keypad (they are mapped to the standard
640 fuction keys), so we define our own. */ 640 function keys), so we define our own. */
641#define VK_NUMPAD_BEGIN 0x92 641#define VK_NUMPAD_BEGIN 0x92
642#define VK_NUMPAD_CLEAR (VK_NUMPAD_BEGIN + 0) 642#define VK_NUMPAD_CLEAR (VK_NUMPAD_BEGIN + 0)
643#define VK_NUMPAD_ENTER (VK_NUMPAD_BEGIN + 1) 643#define VK_NUMPAD_ENTER (VK_NUMPAD_BEGIN + 1)
diff --git a/src/w32uniscribe.c b/src/w32uniscribe.c
index f6347bb88f7..36197b3b28a 100644
--- a/src/w32uniscribe.c
+++ b/src/w32uniscribe.c
@@ -507,7 +507,7 @@ uniscribe_encode_char (struct font *font, int c)
507 if (SUCCEEDED (result) && nglyphs == 1) 507 if (SUCCEEDED (result) && nglyphs == 1)
508 { 508 {
509 /* Some fonts return .notdef glyphs instead of failing. 509 /* Some fonts return .notdef glyphs instead of failing.
510 (Truetype spec reserves glyph code 0 for .notdef) */ 510 (TrueType spec reserves glyph code 0 for .notdef) */
511 if (glyphs[0]) 511 if (glyphs[0])
512 code = glyphs[0]; 512 code = glyphs[0];
513 } 513 }
@@ -961,4 +961,3 @@ syms_of_w32uniscribe (void)
961 961
962 register_font_driver (&uniscribe_font_driver, NULL); 962 register_font_driver (&uniscribe_font_driver, NULL);
963} 963}
964
diff --git a/src/window.c b/src/window.c
index b21671b4153..a7daa1353bd 100644
--- a/src/window.c
+++ b/src/window.c
@@ -467,67 +467,33 @@ Return nil if WINDOW has no previous sibling. */)
467 return decode_any_window (window)->prev; 467 return decode_any_window (window)->prev;
468} 468}
469 469
470DEFUN ("window-splits", Fwindow_splits, Swindow_splits, 0, 1, 0, 470DEFUN ("window-combination-limit", Fwindow_combination_limit, Swindow_combination_limit, 0, 1, 0,
471 doc: /* Return splits status for the window WINDOW. 471 doc: /* Return combination limit of window WINDOW.
472If WINDOW is omitted or nil, it defaults to the selected window.
473
474If the value returned by this function is nil and WINDOW is resized, the
475corresponding space is preferably taken from (or given to) WINDOW's
476right sibling. When WINDOW is deleted, its space is given to its left
477sibling.
478
479If the value returned by this function is non-nil, resizing and deleting
480WINDOW may resize all windows in the same combination. */)
481 (Lisp_Object window)
482{
483 return decode_any_window (window)->splits;
484}
485
486DEFUN ("set-window-splits", Fset_window_splits, Sset_window_splits, 2, 2, 0,
487 doc: /* Set splits status of window WINDOW to STATUS.
488If WINDOW is omitted or nil, it defaults to the selected window.
489
490If STATUS is nil and WINDOW is later resized, the corresponding space is
491preferably taken from (or given to) WINDOW's right sibling. When WINDOW
492is deleted, its space is given to its left sibling.
493
494If STATUS is non-nil, resizing and deleting WINDOW may resize all
495windows in the same combination. */)
496 (Lisp_Object window, Lisp_Object status)
497{
498 register struct window *w = decode_any_window (window);
499
500 w->splits = status;
501
502 return w->splits;
503}
504
505DEFUN ("window-nest", Fwindow_nest, Swindow_nest, 0, 1, 0,
506 doc: /* Return nest status of window WINDOW.
507If WINDOW is omitted or nil, it defaults to the selected window. 472If WINDOW is omitted or nil, it defaults to the selected window.
508 473
509If the return value is nil, child windows of WINDOW can be recombined with 474If the return value is nil, child windows of WINDOW can be recombined with
510WINDOW's siblings. A return value of non-nil means that child windows of 475WINDOW's siblings. A return value of t means that child windows of
511WINDOW are never \(re-)combined with WINDOW's siblings. */) 476WINDOW are never \(re-)combined with WINDOW's siblings. */)
512 (Lisp_Object window) 477 (Lisp_Object window)
513{ 478{
514 return decode_any_window (window)->nest; 479 return decode_any_window (window)->combination_limit;
515} 480}
516 481
517DEFUN ("set-window-nest", Fset_window_nest, Sset_window_nest, 2, 2, 0, 482DEFUN ("set-window-combination-limit", Fset_window_combination_limit, Sset_window_combination_limit, 2, 2, 0,
518 doc: /* Set nest status of window WINDOW to STATUS; return STATUS. 483 doc: /* Set combination limit of window WINDOW to STATUS; return STATUS.
519If WINDOW is omitted or nil, it defaults to the selected window. 484If WINDOW is omitted or nil, it defaults to the selected window.
520 485
521If STATUS is nil, child windows of WINDOW can be recombined with WINDOW's 486If STATUS is nil, child windows of WINDOW can be recombined with
522siblings. STATUS non-nil means that child windows of WINDOW are never 487WINDOW's siblings. STATUS t means that child windows of WINDOW are
523\(re-)combined with WINDOW's siblings. */) 488never \(re-)combined with WINDOW's siblings. Other values are reserved
489for future use. */)
524 (Lisp_Object window, Lisp_Object status) 490 (Lisp_Object window, Lisp_Object status)
525{ 491{
526 register struct window *w = decode_any_window (window); 492 register struct window *w = decode_any_window (window);
527 493
528 w->nest = status; 494 w->combination_limit = status;
529 495
530 return w->nest; 496 return w->combination_limit;
531} 497}
532 498
533DEFUN ("window-use-time", Fwindow_use_time, Swindow_use_time, 0, 1, 0, 499DEFUN ("window-use-time", Fwindow_use_time, Swindow_use_time, 0, 1, 0,
@@ -861,7 +827,7 @@ The inside edges do not include the space used by the WINDOW's scroll
861bar, display margins, fringes, header line, and/or mode line. */) 827bar, display margins, fringes, header line, and/or mode line. */)
862 (Lisp_Object window) 828 (Lisp_Object window)
863{ 829{
864 register struct window *w = decode_any_window (window); 830 register struct window *w = decode_window (window);
865 831
866 return list4 (make_number (WINDOW_BOX_LEFT_EDGE_COL (w) 832 return list4 (make_number (WINDOW_BOX_LEFT_EDGE_COL (w)
867 + WINDOW_LEFT_MARGIN_COLS (w) 833 + WINDOW_LEFT_MARGIN_COLS (w)
@@ -876,9 +842,9 @@ bar, display margins, fringes, header line, and/or mode line. */)
876} 842}
877 843
878DEFUN ("window-inside-pixel-edges", Fwindow_inside_pixel_edges, Swindow_inside_pixel_edges, 0, 1, 0, 844DEFUN ("window-inside-pixel-edges", Fwindow_inside_pixel_edges, Swindow_inside_pixel_edges, 0, 1, 0,
879 doc: /* Return a list of the edge pixel coordinates of WINDOW. 845 doc: /* Return a list of the edge pixel coordinates of WINDOW's text area.
880The list has the form (LEFT TOP RIGHT BOTTOM), all relative to 0, 0 at 846The list has the form (LEFT TOP RIGHT BOTTOM), all relative to (0,0)
881the top left corner of the frame. 847at the top left corner of the frame's window area.
882 848
883RIGHT is one more than the rightmost x position of WINDOW's text area. 849RIGHT is one more than the rightmost x position of WINDOW's text area.
884BOTTOM is one more than the bottommost y position of WINDOW's text area. 850BOTTOM is one more than the bottommost y position of WINDOW's text area.
@@ -886,7 +852,7 @@ The inside edges do not include the space used by WINDOW's scroll bar,
886display margins, fringes, header line, and/or mode line. */) 852display margins, fringes, header line, and/or mode line. */)
887 (Lisp_Object window) 853 (Lisp_Object window)
888{ 854{
889 register struct window *w = decode_any_window (window); 855 register struct window *w = decode_window (window);
890 856
891 return list4 (make_number (WINDOW_BOX_LEFT_EDGE_X (w) 857 return list4 (make_number (WINDOW_BOX_LEFT_EDGE_X (w)
892 + WINDOW_LEFT_MARGIN_WIDTH (w) 858 + WINDOW_LEFT_MARGIN_WIDTH (w)
@@ -903,9 +869,9 @@ display margins, fringes, header line, and/or mode line. */)
903DEFUN ("window-inside-absolute-pixel-edges", 869DEFUN ("window-inside-absolute-pixel-edges",
904 Fwindow_inside_absolute_pixel_edges, 870 Fwindow_inside_absolute_pixel_edges,
905 Swindow_inside_absolute_pixel_edges, 0, 1, 0, 871 Swindow_inside_absolute_pixel_edges, 0, 1, 0,
906 doc: /* Return a list of the edge pixel coordinates of WINDOW. 872 doc: /* Return a list of the edge pixel coordinates of WINDOW's text area.
907The list has the form (LEFT TOP RIGHT BOTTOM), all relative to 0, 0 at 873The list has the form (LEFT TOP RIGHT BOTTOM), all relative to (0,0)
908the top left corner of the display. 874at the top left corner of the frame's window area.
909 875
910RIGHT is one more than the rightmost x position of WINDOW's text area. 876RIGHT is one more than the rightmost x position of WINDOW's text area.
911BOTTOM is one more than the bottommost y position of WINDOW's text area. 877BOTTOM is one more than the bottommost y position of WINDOW's text area.
@@ -913,7 +879,7 @@ The inside edges do not include the space used by WINDOW's scroll bar,
913display margins, fringes, header line, and/or mode line. */) 879display margins, fringes, header line, and/or mode line. */)
914 (Lisp_Object window) 880 (Lisp_Object window)
915{ 881{
916 register struct window *w = decode_any_window (window); 882 register struct window *w = decode_window (window);
917 int add_x, add_y; 883 int add_x, add_y;
918 calc_absolute_offset (w, &add_x, &add_y); 884 calc_absolute_offset (w, &add_x, &add_y);
919 885
@@ -1916,7 +1882,7 @@ recombine_windows (Lisp_Object window)
1916 1882
1917 w = XWINDOW (window); 1883 w = XWINDOW (window);
1918 parent = w->parent; 1884 parent = w->parent;
1919 if (!NILP (parent) && NILP (w->nest)) 1885 if (!NILP (parent) && NILP (w->combination_limit))
1920 { 1886 {
1921 p = XWINDOW (parent); 1887 p = XWINDOW (parent);
1922 if (((!NILP (p->vchild) && !NILP (w->vchild)) 1888 if (((!NILP (p->vchild) && !NILP (w->vchild))
@@ -2381,7 +2347,7 @@ Anything else means consider all windows on WINDOW's frame and no
2381others. 2347others.
2382 2348
2383If WINDOW is not on the list of windows returned, some other window will 2349If WINDOW is not on the list of windows returned, some other window will
2384be listed first but no error is signalled. */) 2350be listed first but no error is signaled. */)
2385 (Lisp_Object window, Lisp_Object minibuf, Lisp_Object all_frames) 2351 (Lisp_Object window, Lisp_Object minibuf, Lisp_Object all_frames)
2386{ 2352{
2387 return window_list_1 (window, minibuf, all_frames); 2353 return window_list_1 (window, minibuf, all_frames);
@@ -2771,9 +2737,6 @@ window-start value is reasonable when this function is called. */)
2771 2737
2772 replace_window (root, window, 1); 2738 replace_window (root, window, 1);
2773 2739
2774 /* Reset WINDOW's splits status. */
2775 w->splits = Qnil;
2776
2777 /* This must become SWINDOW anyway ....... */ 2740 /* This must become SWINDOW anyway ....... */
2778 if (!NILP (w->buffer) && !resize_failed) 2741 if (!NILP (w->buffer) && !resize_failed)
2779 { 2742 {
@@ -3288,8 +3251,7 @@ make_parent_window (Lisp_Object window, int horflag)
3288 p->start = Qnil; 3251 p->start = Qnil;
3289 p->pointm = Qnil; 3252 p->pointm = Qnil;
3290 p->buffer = Qnil; 3253 p->buffer = Qnil;
3291 p->splits = Qnil; 3254 p->combination_limit = Qnil;
3292 p->nest = Qnil;
3293 p->window_parameters = Qnil; 3255 p->window_parameters = Qnil;
3294} 3256}
3295 3257
@@ -3336,7 +3298,7 @@ make_window (void)
3336 w->start_at_line_beg = w->display_table = w->dedicated = Qnil; 3298 w->start_at_line_beg = w->display_table = w->dedicated = Qnil;
3337 w->base_line_number = w->base_line_pos = w->region_showing = Qnil; 3299 w->base_line_number = w->base_line_pos = w->region_showing = Qnil;
3338 w->column_number_displayed = w->redisplay_end_trigger = Qnil; 3300 w->column_number_displayed = w->redisplay_end_trigger = Qnil;
3339 w->splits = w->nest = w->window_parameters = Qnil; 3301 w->combination_limit = w->window_parameters = Qnil;
3340 w->prev_buffers = w->next_buffers = Qnil; 3302 w->prev_buffers = w->next_buffers = Qnil;
3341 /* Initialize non-Lisp data. */ 3303 /* Initialize non-Lisp data. */
3342 w->desired_matrix = w->current_matrix = 0; 3304 w->desired_matrix = w->current_matrix = 0;
@@ -3709,7 +3671,7 @@ set correctly. See the code of `split-window' for how this is done. */)
3709 int horflag 3671 int horflag
3710 /* HORFLAG is 1 when we split side-by-side, 0 otherwise. */ 3672 /* HORFLAG is 1 when we split side-by-side, 0 otherwise. */
3711 = EQ (side, Qt) || EQ (side, Qleft) || EQ (side, Qright); 3673 = EQ (side, Qt) || EQ (side, Qleft) || EQ (side, Qright);
3712 int do_nest = 0; 3674 int combination_limit = 0;
3713 3675
3714 CHECK_WINDOW (old); 3676 CHECK_WINDOW (old);
3715 o = XWINDOW (old); 3677 o = XWINDOW (old);
@@ -3718,11 +3680,11 @@ set correctly. See the code of `split-window' for how this is done. */)
3718 3680
3719 CHECK_NUMBER (total_size); 3681 CHECK_NUMBER (total_size);
3720 3682
3721 /* Set do_nest to 1 if we have to make a new parent window. We do 3683 /* Set combination_limit to 1 if we have to make a new parent window.
3722 that if either `window-nest' is non-nil, or OLD has no parent, or 3684 We do that if either `window-combination-limit' is t, or OLD has no
3723 OLD is ortho-combined. */ 3685 parent, or OLD is ortho-combined. */
3724 do_nest = 3686 combination_limit =
3725 !NILP (Vwindow_nest) 3687 !NILP (Vwindow_combination_limit)
3726 || NILP (o->parent) 3688 || NILP (o->parent)
3727 || NILP (horflag 3689 || NILP (horflag
3728 ? (XWINDOW (o->parent)->hchild) 3690 ? (XWINDOW (o->parent)->hchild)
@@ -3742,8 +3704,8 @@ set correctly. See the code of `split-window' for how this is done. */)
3742 error ("Attempt to split minibuffer window"); 3704 error ("Attempt to split minibuffer window");
3743 else if (XINT (total_size) < (horflag ? 2 : 1)) 3705 else if (XINT (total_size) < (horflag ? 2 : 1))
3744 error ("Size of new window too small (after split)"); 3706 error ("Size of new window too small (after split)");
3745 else if (!do_nest && !NILP (Vwindow_splits)) 3707 else if (!combination_limit && !NILP (Vwindow_combination_resize))
3746 /* `window-splits' non-nil means try to resize OLD's siblings 3708 /* `window-combination-resize' non-nil means try to resize OLD's siblings
3747 proportionally. */ 3709 proportionally. */
3748 { 3710 {
3749 p = XWINDOW (o->parent); 3711 p = XWINDOW (o->parent);
@@ -3767,7 +3729,7 @@ set correctly. See the code of `split-window' for how this is done. */)
3767 } 3729 }
3768 3730
3769 /* This is our point of no return. */ 3731 /* This is our point of no return. */
3770 if (do_nest) 3732 if (combination_limit)
3771 { 3733 {
3772 /* Save the old value of o->normal_cols/lines. It gets corrupted 3734 /* Save the old value of o->normal_cols/lines. It gets corrupted
3773 by make_parent_window and we need it below for assigning it to 3735 by make_parent_window and we need it below for assigning it to
@@ -3776,12 +3738,9 @@ set correctly. See the code of `split-window' for how this is done. */)
3776 3738
3777 make_parent_window (old, horflag); 3739 make_parent_window (old, horflag);
3778 p = XWINDOW (o->parent); 3740 p = XWINDOW (o->parent);
3779 /* Store value of `window-nest' in new parent's nest slot. */ 3741 /* Store value of `window-combination-limit' in new parent's
3780 p->nest = Vwindow_nest; 3742 combination_limit slot. */
3781 /* Have PARENT inherit splits slot value from OLD. */ 3743 p->combination_limit = Vwindow_combination_limit;
3782 p->splits = o->splits;
3783 /* Store value of `window-splits' in OLD's splits slot. */
3784 o->splits = Vwindow_splits;
3785 /* These get applied below. */ 3744 /* These get applied below. */
3786 p->new_total = horflag ? o->total_cols : o->total_lines; 3745 p->new_total = horflag ? o->total_cols : o->total_lines;
3787 p->new_normal = new_normal; 3746 p->new_normal = new_normal;
@@ -3832,9 +3791,6 @@ set correctly. See the code of `split-window' for how this is done. */)
3832 n->scroll_bar_width = r->scroll_bar_width; 3791 n->scroll_bar_width = r->scroll_bar_width;
3833 n->vertical_scroll_bar_type = r->vertical_scroll_bar_type; 3792 n->vertical_scroll_bar_type = r->vertical_scroll_bar_type;
3834 3793
3835 /* Store `window-splits' in NEW's splits slot. */
3836 n->splits = Vwindow_splits;
3837
3838 /* Directly assign orthogonal coordinates and sizes. */ 3794 /* Directly assign orthogonal coordinates and sizes. */
3839 if (horflag) 3795 if (horflag)
3840 { 3796 {
@@ -3974,10 +3930,9 @@ Signal an error when WINDOW is the only window on its frame. */)
3974 /* Put SIBLING into PARENT's place. */ 3930 /* Put SIBLING into PARENT's place. */
3975 replace_window (parent, sibling, 0); 3931 replace_window (parent, sibling, 0);
3976 /* Have SIBLING inherit the following three slot values from 3932 /* Have SIBLING inherit the following three slot values from
3977 PARENT (the nest slot is not inherited). */ 3933 PARENT (the combination_limit slot is not inherited). */
3978 s->normal_cols = p->normal_cols; 3934 s->normal_cols = p->normal_cols;
3979 s->normal_lines = p->normal_lines; 3935 s->normal_lines = p->normal_lines;
3980 s->splits = p->splits;
3981 /* Mark PARENT as deleted. */ 3936 /* Mark PARENT as deleted. */
3982 p->vchild = p->hchild = Qnil; 3937 p->vchild = p->hchild = Qnil;
3983 /* Try to merge SIBLING into its new parent. */ 3938 /* Try to merge SIBLING into its new parent. */
@@ -5364,7 +5319,7 @@ struct saved_window
5364 Lisp_Object left_margin_cols, right_margin_cols; 5319 Lisp_Object left_margin_cols, right_margin_cols;
5365 Lisp_Object left_fringe_width, right_fringe_width, fringes_outside_margins; 5320 Lisp_Object left_fringe_width, right_fringe_width, fringes_outside_margins;
5366 Lisp_Object scroll_bar_width, vertical_scroll_bar_type, dedicated; 5321 Lisp_Object scroll_bar_width, vertical_scroll_bar_type, dedicated;
5367 Lisp_Object splits, nest, window_parameters; 5322 Lisp_Object combination_limit, window_parameters;
5368}; 5323};
5369 5324
5370#define SAVED_WINDOW_N(swv,n) \ 5325#define SAVED_WINDOW_N(swv,n) \
@@ -5595,8 +5550,7 @@ the return value is nil. Otherwise the value is t. */)
5595 w->scroll_bar_width = p->scroll_bar_width; 5550 w->scroll_bar_width = p->scroll_bar_width;
5596 w->vertical_scroll_bar_type = p->vertical_scroll_bar_type; 5551 w->vertical_scroll_bar_type = p->vertical_scroll_bar_type;
5597 w->dedicated = p->dedicated; 5552 w->dedicated = p->dedicated;
5598 w->splits = p->splits; 5553 w->combination_limit = p->combination_limit;
5599 w->nest = p->nest;
5600 w->window_parameters = p->window_parameters; 5554 w->window_parameters = p->window_parameters;
5601 XSETFASTINT (w->last_modified, 0); 5555 XSETFASTINT (w->last_modified, 0);
5602 XSETFASTINT (w->last_overlay_modified, 0); 5556 XSETFASTINT (w->last_overlay_modified, 0);
@@ -5874,8 +5828,7 @@ save_window_save (Lisp_Object window, struct Lisp_Vector *vector, int i)
5874 p->scroll_bar_width = w->scroll_bar_width; 5828 p->scroll_bar_width = w->scroll_bar_width;
5875 p->vertical_scroll_bar_type = w->vertical_scroll_bar_type; 5829 p->vertical_scroll_bar_type = w->vertical_scroll_bar_type;
5876 p->dedicated = w->dedicated; 5830 p->dedicated = w->dedicated;
5877 p->splits = w->splits; 5831 p->combination_limit = w->combination_limit;
5878 p->nest = w->nest;
5879 p->window_parameters = w->window_parameters; 5832 p->window_parameters = w->window_parameters;
5880 if (!NILP (w->buffer)) 5833 if (!NILP (w->buffer))
5881 { 5834 {
@@ -6338,7 +6291,8 @@ freeze_window_starts (struct frame *f, int freeze_p)
6338 and the like. 6291 and the like.
6339 6292
6340 This ignores a couple of things like the dedicatedness status of 6293 This ignores a couple of things like the dedicatedness status of
6341 window, splits, nest and the like. This might have to be fixed. */ 6294 window, combination_limit and the like. This might have to be
6295 fixed. */
6342 6296
6343int 6297int
6344compare_window_configurations (Lisp_Object configuration1, Lisp_Object configuration2, int ignore_positions) 6298compare_window_configurations (Lisp_Object configuration1, Lisp_Object configuration2, int ignore_positions)
@@ -6542,41 +6496,39 @@ will redraw the entire frame; the special value `tty' causes the
6542frame to be redrawn only if it is a tty frame. */); 6496frame to be redrawn only if it is a tty frame. */);
6543 Vrecenter_redisplay = Qtty; 6497 Vrecenter_redisplay = Qtty;
6544 6498
6545 DEFVAR_LISP ("window-splits", Vwindow_splits, 6499 DEFVAR_LISP ("window-combination-resize", Vwindow_combination_resize,
6546 doc: /* Non-nil means splitting windows is handled specially. 6500 doc: /* Non-nil means resize window combinations proportionally.
6547If this variable is nil, splitting a window gets the entire screen space 6501If this variable is nil, splitting a window gets the entire screen space
6548for displaying the new window from the window to split. If this 6502for displaying the new window from the window to split. Deleting and
6549variable is non-nil, splitting a window may resize all windows in the 6503resizing a window preferably resizes one adjacent window only.
6550same combination. This also allows to split a window that is otherwise 6504
6551too small or of fixed size. 6505If this variable is non-nil, splitting a window tries to get the space
6552 6506proportionally from all windows in the same combination. This also
6553The value of this variable is also assigned to the split status of the 6507allows to split a window that is otherwise too small or of fixed size.
6554new window and, provided the old and new window form a new combination, 6508Resizing and deleting a window proportionally resize all windows in the
6555to the window that was split as well. The split status of a window can 6509same combination.
6556be retrieved with the function `window-splits' and altered by the 6510
6557function `set-window-splits'. 6511This variable takes no effect if `window-combination-limit' is non-nil. */);
6558 6512 Vwindow_combination_resize = Qnil;
6559If the value of the variable `window-nest' is non-nil, the space for the 6513
6560new window is exclusively taken from the window that shall be split, but 6514 DEFVAR_LISP ("window-combination-limit", Vwindow_combination_limit,
6561the split status of the window that is split as well as that of the new
6562window are still set to the value of this variable. */);
6563 Vwindow_splits = Qnil;
6564
6565 DEFVAR_LISP ("window-nest", Vwindow_nest,
6566 doc: /* Non-nil means splitting a window makes a new parent window. 6515 doc: /* Non-nil means splitting a window makes a new parent window.
6567If this variable is nil, splitting a window will create a new parent 6516If this variable is nil, splitting a window will create a new parent
6568window only if the window has no parent window or the window shall 6517window only if the window has no parent window or the window shall
6569become a combination orthogonal to the one it it is part of. 6518become a combination orthogonal to the one it is part of.
6519
6520If this variable is t, splitting a window always creates a new parent
6521window. If all splits behave this way, each frame's window tree is a
6522binary tree and every window but the frame's root window has exactly one
6523sibling.
6570 6524
6571If this variable is non-nil, splitting a window always creates a new 6525Other values are reserved for future use.
6572parent window. If all splits behave this way, each frame's window tree
6573is a binary tree and every window but the frame's root window has
6574exactly one sibling.
6575 6526
6576The value of this variable is also assigned to the nest status of the 6527The value of this variable is also assigned to the combination-limit
6577new parent window. The nest status of a window can be retrieved via the 6528status of the new parent window. The combination-limit status of a
6578function `window-nest' and altered by the function `set-window-nest'. */); 6529window can be retrieved via the function `window-combination-limit' and
6579 Vwindow_nest = Qnil; 6530altered by the function `set-window-combination-limit'. */);
6531 Vwindow_combination_limit = Qnil;
6580 6532
6581 defsubr (&Sselected_window); 6533 defsubr (&Sselected_window);
6582 defsubr (&Sminibuffer_window); 6534 defsubr (&Sminibuffer_window);
@@ -6596,10 +6548,8 @@ function `window-nest' and altered by the function `set-window-nest'. */);
6596 defsubr (&Swindow_left_child); 6548 defsubr (&Swindow_left_child);
6597 defsubr (&Swindow_next_sibling); 6549 defsubr (&Swindow_next_sibling);
6598 defsubr (&Swindow_prev_sibling); 6550 defsubr (&Swindow_prev_sibling);
6599 defsubr (&Swindow_splits); 6551 defsubr (&Swindow_combination_limit);
6600 defsubr (&Sset_window_splits); 6552 defsubr (&Sset_window_combination_limit);
6601 defsubr (&Swindow_nest);
6602 defsubr (&Sset_window_nest);
6603 defsubr (&Swindow_use_time); 6553 defsubr (&Swindow_use_time);
6604 defsubr (&Swindow_top_line); 6554 defsubr (&Swindow_top_line);
6605 defsubr (&Swindow_left_column); 6555 defsubr (&Swindow_left_column);
diff --git a/src/window.h b/src/window.h
index 6a9641e3e6d..de0f7307a51 100644
--- a/src/window.h
+++ b/src/window.h
@@ -258,13 +258,8 @@ struct window
258 must run the redisplay-end-trigger-hook. */ 258 must run the redisplay-end-trigger-hook. */
259 Lisp_Object redisplay_end_trigger; 259 Lisp_Object redisplay_end_trigger;
260 260
261 /* Non-nil means deleting or resizing this window distributes 261 /* t means this window's child windows are not (re-)combined. */
262 space among all windows in the same combination. */ 262 Lisp_Object combination_limit;
263 Lisp_Object splits;
264
265 /* Non-nil means this window's child windows are never
266 (re-)combined. */
267 Lisp_Object nest;
268 263
269 /* Alist of <buffer, window-start, window-point> triples listing 264 /* Alist of <buffer, window-start, window-point> triples listing
270 buffers previously shown in this window. */ 265 buffers previously shown in this window. */
diff --git a/src/xdisp.c b/src/xdisp.c
index f5a39306c35..747b91fa4ab 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -19487,9 +19487,18 @@ display_line (struct it *it)
19487 overlay_arrow_seen = 1; 19487 overlay_arrow_seen = 1;
19488 } 19488 }
19489 19489
19490 /* Highlight trailing whitespace. */
19491 if (!NILP (Vshow_trailing_whitespace))
19492 highlight_trailing_whitespace (it->f, it->glyph_row);
19493
19490 /* Compute pixel dimensions of this line. */ 19494 /* Compute pixel dimensions of this line. */
19491 compute_line_metrics (it); 19495 compute_line_metrics (it);
19492 19496
19497 /* Implementation note: No changes in the glyphs of ROW or in their
19498 faces can be done past this point, because compute_line_metrics
19499 computes ROW's hash value and stores it within the glyph_row
19500 structure. */
19501
19493 /* Record whether this row ends inside an ellipsis. */ 19502 /* Record whether this row ends inside an ellipsis. */
19494 row->ends_in_ellipsis_p 19503 row->ends_in_ellipsis_p
19495 = (it->method == GET_FROM_DISPLAY_VECTOR 19504 = (it->method == GET_FROM_DISPLAY_VECTOR
@@ -19524,10 +19533,6 @@ display_line (struct it *it)
19524 && cursor_row_p (row)) 19533 && cursor_row_p (row))
19525 set_cursor_from_row (it->w, row, it->w->desired_matrix, 0, 0, 0, 0); 19534 set_cursor_from_row (it->w, row, it->w->desired_matrix, 0, 0, 0, 0);
19526 19535
19527 /* Highlight trailing whitespace. */
19528 if (!NILP (Vshow_trailing_whitespace))
19529 highlight_trailing_whitespace (it->f, it->glyph_row);
19530
19531 /* Prepare for the next line. This line starts horizontally at (X 19536 /* Prepare for the next line. This line starts horizontally at (X
19532 HPOS) = (0 0). Vertical positions are incremented. As a 19537 HPOS) = (0 0). Vertical positions are incremented. As a
19533 convenience for the caller, IT->glyph_row is set to the next 19538 convenience for the caller, IT->glyph_row is set to the next
@@ -22161,7 +22166,7 @@ get_glyph_face_and_encoding (struct frame *f, struct glyph *glyph,
22161 22166
22162 22167
22163/* Get glyph code of character C in FONT in the two-byte form CHAR2B. 22168/* Get glyph code of character C in FONT in the two-byte form CHAR2B.
22164 Retunr 1 if FONT has a glyph for C, otherwise return 0. */ 22169 Return 1 if FONT has a glyph for C, otherwise return 0. */
22165 22170
22166static inline int 22171static inline int
22167get_char_glyph_code (int c, struct font *font, XChar2b *char2b) 22172get_char_glyph_code (int c, struct font *font, XChar2b *char2b)
@@ -22233,6 +22238,12 @@ fill_composite_glyph_string (struct glyph_string *s, struct face *base_face,
22233 } 22238 }
22234 s->cmp_to = i; 22239 s->cmp_to = i;
22235 22240
22241 if (s->face == NULL)
22242 {
22243 s->face = base_face->ascii_face;
22244 s->font = s->face->font;
22245 }
22246
22236 /* All glyph strings for the same composition has the same width, 22247 /* All glyph strings for the same composition has the same width,
22237 i.e. the width set for the first component of the composition. */ 22248 i.e. the width set for the first component of the composition. */
22238 s->width = s->first_glyph->pixel_width; 22249 s->width = s->first_glyph->pixel_width;
@@ -23844,7 +23855,7 @@ produce_stretch_glyph (struct it *it)
23844 { 23855 {
23845 width = it->last_visible_x - it->current_x; 23856 width = it->last_visible_x - it->current_x;
23846#ifdef HAVE_WINDOW_SYSTEM 23857#ifdef HAVE_WINDOW_SYSTEM
23847 /* Subtact one more pixel from the stretch width, but only on 23858 /* Subtract one more pixel from the stretch width, but only on
23848 GUI frames, since on a TTY each glyph is one "pixel" wide. */ 23859 GUI frames, since on a TTY each glyph is one "pixel" wide. */
23849 width -= FRAME_WINDOW_P (it->f); 23860 width -= FRAME_WINDOW_P (it->f);
23850#endif 23861#endif
@@ -28206,7 +28217,6 @@ syms_of_xdisp (void)
28206 DEFSYM (Qhollow, "hollow"); 28217 DEFSYM (Qhollow, "hollow");
28207 DEFSYM (Qhand, "hand"); 28218 DEFSYM (Qhand, "hand");
28208 DEFSYM (Qarrow, "arrow"); 28219 DEFSYM (Qarrow, "arrow");
28209 DEFSYM (Qtext, "text");
28210 DEFSYM (Qinhibit_free_realized_faces, "inhibit-free-realized-faces"); 28220 DEFSYM (Qinhibit_free_realized_faces, "inhibit-free-realized-faces");
28211 28221
28212 list_of_error = Fcons (Fcons (intern_c_string ("error"), 28222 list_of_error = Fcons (Fcons (intern_c_string ("error"),
@@ -28675,7 +28685,7 @@ To add a prefix to continuation lines, use `wrap-prefix'. */);
28675 DEFVAR_INT ("overline-margin", overline_margin, 28685 DEFVAR_INT ("overline-margin", overline_margin,
28676 doc: /* *Space between overline and text, in pixels. 28686 doc: /* *Space between overline and text, in pixels.
28677The default value is 2: the height of the overline (1 pixel) plus 1 pixel 28687The default value is 2: the height of the overline (1 pixel) plus 1 pixel
28678margin to the caracter height. */); 28688margin to the character height. */);
28679 overline_margin = 2; 28689 overline_margin = 2;
28680 28690
28681 DEFVAR_INT ("underline-minimum-offset", 28691 DEFVAR_INT ("underline-minimum-offset",
diff --git a/src/xfaces.c b/src/xfaces.c
index 9faa7c79e0b..849ad6bbdf4 100644
--- a/src/xfaces.c
+++ b/src/xfaces.c
@@ -27,7 +27,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
27 27
28 1. Font family name. 28 1. Font family name.
29 29
30 2. Font foundary name. 30 2. Font foundry name.
31 31
32 3. Relative proportionate width, aka character set width or set 32 3. Relative proportionate width, aka character set width or set
33 width (swidth), e.g. `semi-compressed'. 33 width (swidth), e.g. `semi-compressed'.
@@ -4189,12 +4189,12 @@ prepare_face_for_display (struct frame *f, struct face *face)
4189static int 4189static int
4190color_distance (XColor *x, XColor *y) 4190color_distance (XColor *x, XColor *y)
4191{ 4191{
4192 /* This formula is from a paper title `Colour metric' by Thiadmer Riemersma. 4192 /* This formula is from a paper titled `Colour metric' by Thiadmer Riemersma.
4193 Quoting from that paper: 4193 Quoting from that paper:
4194 4194
4195 This formula has results that are very close to L*u*v* (with the 4195 This formula has results that are very close to L*u*v* (with the
4196 modified lightness curve) and, more importantly, it is a more even 4196 modified lightness curve) and, more importantly, it is a more even
4197 algorithm: it does not have a range of colours where it suddenly 4197 algorithm: it does not have a range of colors where it suddenly
4198 gives far from optimal results. 4198 gives far from optimal results.
4199 4199
4200 See <http://www.compuphase.com/cmetric.htm> for more info. */ 4200 See <http://www.compuphase.com/cmetric.htm> for more info. */
diff --git a/src/xfns.c b/src/xfns.c
index 49c4c774cae..6de412c4e68 100644
--- a/src/xfns.c
+++ b/src/xfns.c
@@ -2929,7 +2929,7 @@ unwind_create_frame (Lisp_Object frame)
2929 return Qnil; 2929 return Qnil;
2930 2930
2931 /* If frame is ``official'', nothing to do. */ 2931 /* If frame is ``official'', nothing to do. */
2932 if (!CONSP (Vframe_list) || !EQ (XCAR (Vframe_list), frame)) 2932 if (NILP (Fmemq (frame, Vframe_list)))
2933 { 2933 {
2934#if GLYPH_DEBUG && XASSERTS 2934#if GLYPH_DEBUG && XASSERTS
2935 struct x_display_info *dpyinfo = FRAME_X_DISPLAY_INFO (f); 2935 struct x_display_info *dpyinfo = FRAME_X_DISPLAY_INFO (f);
@@ -3691,7 +3691,7 @@ If omitted or nil, that stands for the selected frame's display. */)
3691 3691
3692DEFUN ("x-server-vendor", Fx_server_vendor, Sx_server_vendor, 0, 1, 0, 3692DEFUN ("x-server-vendor", Fx_server_vendor, Sx_server_vendor, 0, 1, 0,
3693 doc: /* Return the "vendor ID" string of the X server of display TERMINAL. 3693 doc: /* Return the "vendor ID" string of the X server of display TERMINAL.
3694\(Labelling every distributor as a "vendor" embodies the false assumption 3694\(Labeling every distributor as a "vendor" embodies the false assumption
3695that operating systems cannot be developed and distributed noncommercially.) 3695that operating systems cannot be developed and distributed noncommercially.)
3696The optional argument TERMINAL specifies which display to ask about. 3696The optional argument TERMINAL specifies which display to ask about.
3697TERMINAL should be a terminal object, a frame or a display name (a string). 3697TERMINAL should be a terminal object, a frame or a display name (a string).
diff --git a/src/xfont.c b/src/xfont.c
index 2c3ca911623..60e5aa6e98e 100644
--- a/src/xfont.c
+++ b/src/xfont.c
@@ -272,8 +272,8 @@ xfont_chars_supported (Lisp_Object chars, XFontStruct *xfont,
272 return 0; 272 return 0;
273} 273}
274 274
275/* A hash table recoding which font supports which scritps. Each key 275/* A hash table recoding which font supports which scripts. Each key
276 is a vector of characteristic font propertis FOUNDRY to WIDTH and 276 is a vector of characteristic font properties FOUNDRY to WIDTH and
277 ADDSTYLE, and each value is a list of script symbols. 277 ADDSTYLE, and each value is a list of script symbols.
278 278
279 We assume that fonts that have the same value in the above 279 We assume that fonts that have the same value in the above
@@ -281,7 +281,7 @@ xfont_chars_supported (Lisp_Object chars, XFontStruct *xfont,
281 281
282static Lisp_Object xfont_scripts_cache; 282static Lisp_Object xfont_scripts_cache;
283 283
284/* Re-usable vector to store characteristic font properites. */ 284/* Re-usable vector to store characteristic font properties. */
285static Lisp_Object xfont_scratch_props; 285static Lisp_Object xfont_scratch_props;
286 286
287/* Return a list of scripts supported by the font of FONTNAME whose 287/* Return a list of scripts supported by the font of FONTNAME whose
diff --git a/src/xselect.c b/src/xselect.c
index adee1872dba..4bfab4143cc 100644
--- a/src/xselect.c
+++ b/src/xselect.c
@@ -2355,7 +2355,7 @@ x_fill_property_data (Display *dpy, Lisp_Object data, void *ret, int format)
2355 F is the frame to be used to look up X atoms if the TYPE is XA_ATOM. 2355 F is the frame to be used to look up X atoms if the TYPE is XA_ATOM.
2356 DATA is a C array of values to be converted. 2356 DATA is a C array of values to be converted.
2357 TYPE is the type of the data. Only XA_ATOM is special, it converts 2357 TYPE is the type of the data. Only XA_ATOM is special, it converts
2358 each number in DATA to its corresponfing X atom as a symbol. 2358 each number in DATA to its corresponding X atom as a symbol.
2359 FORMAT is 8, 16 or 32 and gives the size in bits for each C value to 2359 FORMAT is 8, 16 or 32 and gives the size in bits for each C value to
2360 be stored in RET. 2360 be stored in RET.
2361 SIZE is the number of elements in DATA. 2361 SIZE is the number of elements in DATA.
diff --git a/src/xsettings.c b/src/xsettings.c
index d57f3b5be81..a8604ac5897 100644
--- a/src/xsettings.c
+++ b/src/xsettings.c
@@ -121,7 +121,7 @@ store_font_name_changed (const char *newfont)
121} 121}
122#endif /* HAVE_XFT */ 122#endif /* HAVE_XFT */
123 123
124/* Map TOOL_BAR_STYLE from a string to its correspinding Lisp value. 124/* Map TOOL_BAR_STYLE from a string to its corresponding Lisp value.
125 Return Qnil if TOOL_BAR_STYLE is not known. */ 125 Return Qnil if TOOL_BAR_STYLE is not known. */
126 126
127static Lisp_Object 127static Lisp_Object
diff --git a/src/xsmfns.c b/src/xsmfns.c
index 55daec73307..7deac7b14e4 100644
--- a/src/xsmfns.c
+++ b/src/xsmfns.c
@@ -462,7 +462,7 @@ x_session_initialize (struct x_display_info *dpyinfo)
462 Vx_session_id = build_string (client_id); 462 Vx_session_id = build_string (client_id);
463 463
464#ifdef USE_GTK 464#ifdef USE_GTK
465 /* GTK creats a leader window by itself, but we need to tell 465 /* GTK creates a leader window by itself, but we need to tell
466 it about our client_id. */ 466 it about our client_id. */
467 gdk_x11_set_sm_client_id (client_id); 467 gdk_x11_set_sm_client_id (client_id);
468#else 468#else
diff --git a/src/xterm.c b/src/xterm.c
index 49a21d683d4..f8af8ae3df0 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -6129,7 +6129,7 @@ handle_one_xevent (struct x_display_info *dpyinfo, XEvent *eventptr,
6129 { 6129 {
6130 /* Gnome shell does not iconify us when C-z is pressed. It hides 6130 /* Gnome shell does not iconify us when C-z is pressed. It hides
6131 the frame. So if our state says we aren't hidden anymore, 6131 the frame. So if our state says we aren't hidden anymore,
6132 treat is as deiconfied. */ 6132 treat it as deiconified. */
6133 if (! f->async_iconified) 6133 if (! f->async_iconified)
6134 SET_FRAME_GARBAGED (f); 6134 SET_FRAME_GARBAGED (f);
6135 f->async_visible = 1; 6135 f->async_visible = 1;
diff --git a/src/xterm.h b/src/xterm.h
index e10a6bc34f0..1d2ce9a2d3c 100644
--- a/src/xterm.h
+++ b/src/xterm.h
@@ -330,7 +330,7 @@ struct x_display_info
330 ptrdiff_t x_dnd_atoms_length; 330 ptrdiff_t x_dnd_atoms_length;
331 331
332 /* Extended window manager hints, Atoms supported by the window manager and 332 /* Extended window manager hints, Atoms supported by the window manager and
333 atoms for settig the window type. */ 333 atoms for setting the window type. */
334 Atom Xatom_net_supported, Xatom_net_supporting_wm_check; 334 Atom Xatom_net_supported, Xatom_net_supporting_wm_check;
335 Atom *net_supported_atoms; 335 Atom *net_supported_atoms;
336 int nr_net_supported_atoms; 336 int nr_net_supported_atoms;