comparison src/ChangeLog @ 37329:b3696bdf8335

*** empty log message ***
author Stefan Monnier <monnier@iro.umontreal.ca>
date Thu, 12 Apr 2001 12:13:27 +0000
parents 8bc0bd3d9924
children b7d4fcac15ae
comparison
equal deleted inserted replaced
37328:9a801971bd7e 37329:b3696bdf8335
1 2001-04-12 Stefan Monnier <monnier@cs.yale.edu>
2
3 * intervals.c (find_interval): Don't rebalance during signal handling.
4
1 2001-04-11 Gerd Moellmann <gerd@gnu.org> 5 2001-04-11 Gerd Moellmann <gerd@gnu.org>
2 6
3 * fns.c: Include blockinput.h. 7 * fns.c: Include blockinput.h.
4 8
5 * fns.c (Fplist_get): Don't QUIT if interrupt_input_blocked. 9 * fns.c (Fplist_get): Don't QUIT if interrupt_input_blocked.
6 10
7 2001-04-10 Gerd Moellmann <gerd@gnu.org> 11 2001-04-10 Gerd Moellmann <gerd@gnu.org>
8 12
9 * fns.c (Fcompare_strings): Fix return values. 13 * fns.c (Fcompare_strings): Fix return values.
11 * window.c (window_scroll): Change the meaning of N to mean 15 * window.c (window_scroll): Change the meaning of N to mean
12 N screen-fulls or N lines. 16 N screen-fulls or N lines.
13 (window_scroll_pixel_based, window_scroll_line_based) 17 (window_scroll_pixel_based, window_scroll_line_based)
14 (scroll_command, Fscroll_other_window): Change accordingly. 18 (scroll_command, Fscroll_other_window): Change accordingly.
15 19
16 * window.c (window_scroll_pixel_based, Frecenter): Call 20 * window.c (window_scroll_pixel_based, Frecenter):
17 window_box_height instead of using it.last_visible_y for the 21 Call window_box_height instead of using it.last_visible_y for the
18 height of the window. 22 height of the window.
19 23
20 * xdisp.c (redisplay_window) <recenter>: Call window_box_height 24 * xdisp.c (redisplay_window) <recenter>: Call window_box_height
21 instead of using it.last_visible_y for the height of the window. 25 instead of using it.last_visible_y for the height of the window.
22 26
23 * w32proc.c (sys_spawnve): Quote more chars for Cygwin. 27 * w32proc.c (sys_spawnve): Quote more chars for Cygwin.
24 28
25 * w32.c (sys_open): Try to open file without _O_CREAT first, to be 29 * w32.c (sys_open): Try to open file without _O_CREAT first, to be
26 able to write to hidden and system files. Make file handles 30 able to write to hidden and system files. Make file handles
27 non-inheritable. 31 non-inheritable.
53 57
54 * xmenu.c (xmenu_show): Use FRAME_X_SCREEN_NUMBER. 58 * xmenu.c (xmenu_show): Use FRAME_X_SCREEN_NUMBER.
55 59
56 2001-04-06 Dave Love <fx@gnu.org> 60 2001-04-06 Dave Love <fx@gnu.org>
57 61
58 * composite.c (update_compositions) <check_mask & CHECK_HEAD>: Fix 62 * composite.c (update_compositions) <check_mask & CHECK_HEAD>:
59 test of `from'. 63 Fix test of `from'.
60 64
61 2001-04-06 Gerd Moellmann <gerd@gnu.org> 65 2001-04-06 Gerd Moellmann <gerd@gnu.org>
62 66
63 * composite.h (COMPOSITION_VALID_P): Allow integers as cdrs of 67 * composite.h (COMPOSITION_VALID_P): Allow integers as cdrs of PROP.
64 PROP.
65 68
66 * xdisp.c (Qinhibit_eval_during_redisplay): Make it a Lisp_Object. 69 * xdisp.c (Qinhibit_eval_during_redisplay): Make it a Lisp_Object.
67 70
68 2001-04-05 Gerd Moellmann <gerd@gnu.org> 71 2001-04-05 Gerd Moellmann <gerd@gnu.org>
69 72
70 * sysdep.c (getwd) [!HAVE_GETWD]: Unblock input before returning. 73 * sysdep.c (getwd) [!HAVE_GETWD]: Unblock input before returning.
71 74
72 * editfns.c (Fcurrent_time_zone): Accept spaces in timezone 75 * editfns.c (Fcurrent_time_zone): Accept spaces in timezone names.
73 names.
74 76
75 * xfns.c (Vmotif_version_string) [USE_MOTIF]: New variable. 77 * xfns.c (Vmotif_version_string) [USE_MOTIF]: New variable.
76 (syms_of_xfns): DEFVAR_LISP it. Initialize from XmVERSION_STRING. 78 (syms_of_xfns): DEFVAR_LISP it. Initialize from XmVERSION_STRING.
77 79
78 * xmenu.c (free_frame_menubar) [USE_MOTIF]: Preserve the 80 * xmenu.c (free_frame_menubar) [USE_MOTIF]: Preserve the
79 shell widget's position only if it is non-null. 81 shell widget's position only if it is non-null.
80 82
81 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Set 83 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]:
82 f->output_data.x->widget to null after destroying it. 84 Set f->output_data.x->widget to null after destroying it.
83 85
84 * fns.c (Frequire): Doc fix. Rename parameter FILE_NAME to 86 * fns.c (Frequire): Doc fix. Rename parameter FILE_NAME to
85 FILENAME to bring it in synch with the documentation. 87 FILENAME to bring it in synch with the documentation.
86 88
87 * xfaces.c (realizing_basic_faces_p): Renamed from 89 * xfaces.c (realizing_basic_faces_p): Renamed from
91 93
92 2001-04-04 Gerd Moellmann <gerd@gnu.org> 94 2001-04-04 Gerd Moellmann <gerd@gnu.org>
93 95
94 * lisp.h (echoing, echo_message_buffer, cancel_echoing): Declare. 96 * lisp.h (echoing, echo_message_buffer, cancel_echoing): Declare.
95 97
96 * keyboard.c (echoing, echo_message_buffer): Make externally 98 * keyboard.c (echoing, echo_message_buffer): Make externally visible.
97 visible. 99
98
99 * xdisp.c (with_echo_area_buffer): Avoid confusion from reusing 100 * xdisp.c (with_echo_area_buffer): Avoid confusion from reusing
100 the buffer that was used for echoing. 101 the buffer that was used for echoing.
101 102
102 * xfaces.c (best_matching_font): Remove unused parameter PATTERN. 103 * xfaces.c (best_matching_font): Remove unused parameter PATTERN.
103 (first_font_matching): Removed unused function. 104 (first_font_matching): Removed unused function.
137 * xdisp.c (get_overlay_strings): Set iterator's end_charpos. 138 * xdisp.c (get_overlay_strings): Set iterator's end_charpos.
138 (set_iterator_to_next): If a string from a display property ends, 139 (set_iterator_to_next): If a string from a display property ends,
139 consider the case that this might also be the end of an 140 consider the case that this might also be the end of an
140 overlay string having the display property. 141 overlay string having the display property.
141 142
142 * xdisp.c (handle_display_prop): Fix recognition of subproperty 143 * xdisp.c (handle_display_prop): Fix recognition of subproperty lists.
143 lists.
144 144
145 * xdisp.c (reseat_to_string): Undo last change. 145 * xdisp.c (reseat_to_string): Undo last change.
146 146
147 * dispnew.c (adjust_glyph_matrix): Don't try to reuse the current 147 * dispnew.c (adjust_glyph_matrix): Don't try to reuse the current
148 matrix of a window when the header line changes, when 148 matrix of a window when the header line changes, when
149 new rows are allocated, or when the width changes. 149 new rows are allocated, or when the width changes.
150 150
151 2001-03-30 Eli Zaretskii <eliz@is.elta.co.il> 151 2001-03-30 Eli Zaretskii <eliz@is.elta.co.il>
152 152
153 * print.c (Fprin1, Fprin1_to_string, Fprinc, Fprint): Fix last 153 * print.c (Fprin1, Fprin1_to_string, Fprinc, Fprint): Fix last change.
154 change.
155 154
156 2001-03-29 Eli Zaretskii <eliz@is.elta.co.il> 155 2001-03-29 Eli Zaretskii <eliz@is.elta.co.il>
157 156
158 * fileio.c (syms_of_fileio) <directory-sep-char>: Warn that it is 157 * fileio.c (syms_of_fileio) <directory-sep-char>: Warn that it is
159 deprecated. 158 deprecated.
192 191
193 * xfaces.c (realize_basic_faces): Decrement menu_face_change_count 192 * xfaces.c (realize_basic_faces): Decrement menu_face_change_count
194 instead of setting it to zero; it's incremented for each frame 193 instead of setting it to zero; it's incremented for each frame
195 where the menu face is changed. 194 where the menu face is changed.
196 195
197 * xterm.c (x_draw_relief_rect): Extend left shadow to the 196 * xterm.c (x_draw_relief_rect): Extend left shadow to the bottom;
198 bottom; change bottom shadow accordingly. 197 change bottom shadow accordingly.
199 198
200 * xterm.c (expose_window_tree, expose_frame): Don't compute 199 * xterm.c (expose_window_tree, expose_frame): Don't compute
201 intersections here. 200 intersections here.
202 (expose_window): Do it here instead. 201 (expose_window): Do it here instead.
203 (x_draw_glyph_string): Fix a computation of the underline 202 (x_draw_glyph_string): Fix a computation of the underline position.
204 position.
205 203
206 * bytecode.c (BYTE_CODE_QUIT): New macro. 204 * bytecode.c (BYTE_CODE_QUIT): New macro.
207 (Fbyte_code): Use BYTE_CODE_QUIT instead of QUIT. 205 (Fbyte_code): Use BYTE_CODE_QUIT instead of QUIT.
208 206
209 2001-03-27 Gerd Moellmann <gerd@gnu.org> 207 2001-03-27 Gerd Moellmann <gerd@gnu.org>
248 246
249 2001-03-25 Gerd Moellmann <gerd@gnu.org> 247 2001-03-25 Gerd Moellmann <gerd@gnu.org>
250 248
251 * xdisp.c (init_from_display_pos): Test invisible property 249 * xdisp.c (init_from_display_pos): Test invisible property
252 with TEXT_PROP_MEANS_INVISIBLE instead of NILP. 250 with TEXT_PROP_MEANS_INVISIBLE instead of NILP.
253 251
254 * xdisp.c (redisplay_internal) <update one window>: Make sure 252 * xdisp.c (redisplay_internal) <update one window>: Make sure
255 last_arrow_position and last_arrow_string are set. 253 last_arrow_position and last_arrow_string are set.
256 254
257 * frame.c (Fframe_list): Don't return a tooltip frame. 255 * frame.c (Fframe_list): Don't return a tooltip frame.
258 256
259 2001-03-23 Gerd Moellmann <gerd@gnu.org> 257 2001-03-23 Gerd Moellmann <gerd@gnu.org>
260 258
261 * xdisp.c (mark_window_display_accurate_1): New function, 259 * xdisp.c (mark_window_display_accurate_1): New function,
262 extracted from mark_window_display_accurate. Compute 260 extracted from mark_window_display_accurate.
263 BUF_UNCHANGED_MODIFIED, BUF_OVERLAY_UNCHANGED_MODIFIED, 261 Compute BUF_UNCHANGED_MODIFIED, BUF_OVERLAY_UNCHANGED_MODIFIED,
264 BUF_BEG_UNCHANGED, BUF_END_UNCHANGED. 262 BUF_BEG_UNCHANGED, BUF_END_UNCHANGED.
265 (mark_window_display_accurate): Use it. 263 (mark_window_display_accurate): Use it.
266 (redisplay_internal): Use it for the selected window. 264 (redisplay_internal): Use it for the selected window.
267 (redisplay_internal): Avoid duplicate mark_window_display_accurate 265 (redisplay_internal): Avoid duplicate mark_window_display_accurate
268 for the selected frame. 266 for the selected frame.
344 * xdisp.c (highlight_trailing_whitespace): Glyphs whose object 342 * xdisp.c (highlight_trailing_whitespace): Glyphs whose object
345 is an integer don't have to be for space characters. 343 is an integer don't have to be for space characters.
346 344
347 2001-03-16 Gerd Moellmann <gerd@gnu.org> 345 2001-03-16 Gerd Moellmann <gerd@gnu.org>
348 346
349 * indent.c (current_column, current_column_1, Fmove_to_column) 347 * indent.c (current_column, current_column_1, Fmove_to_column)
350 (compute_motion): Handle characters from display vectors 348 (compute_motion): Handle characters from display vectors differently.
351 differently.
352 349
353 2001-03-15 Kenichi Handa <handa@etl.go.jp> 350 2001-03-15 Kenichi Handa <handa@etl.go.jp>
354 351
355 * xterm.c (x_draw_glyph_string): Draw relief (if any) before 352 * xterm.c (x_draw_glyph_string): Draw relief (if any) before
356 drawing glyph string. 353 drawing glyph string.
361 (command_loop_1): Undo last change. 358 (command_loop_1): Undo last change.
362 359
363 * xterm.c (fast_find_position): Return the correct vpos. 360 * xterm.c (fast_find_position): Return the correct vpos.
364 361
365 * data.c (store_symval_forwarding): Add parameter BUF. If BUF is 362 * data.c (store_symval_forwarding): Add parameter BUF. If BUF is
366 non-null, set a per-buffer value in BUF instead of the current 363 non-null, set a per-buffer value in BUF instead of the current buffer.
367 buffer.
368 (swap_in_global_binding, swap_in_symval_forwarding, Fset_default): 364 (swap_in_global_binding, swap_in_symval_forwarding, Fset_default):
369 Call store_symval_forwarding with BUF null. 365 Call store_symval_forwarding with BUF null.
370 (set_internal): Call store_symval_forwarding with the BUF 366 (set_internal): Call store_symval_forwarding with the BUF
371 parameter passed to set_internal. Formerly, the value was always 367 parameter passed to set_internal. Formerly, the value was always
372 set in the current buffer; the buffer recorded in specbind for 368 set in the current buffer; the buffer recorded in specbind for
373 this case wasn't used. 369 this case wasn't used.
374 (arith_driver): Reindent. 370 (arith_driver): Reindent.
375 371
376 * buffer.c (swap_out_buffer_local_variables): Call 372 * buffer.c (swap_out_buffer_local_variables):
377 store_symval_forwarding with BUF null. 373 Call store_symval_forwarding with BUF null.
378 374
379 * lisp.h (store_symval_forwarding): Change prototype. 375 * lisp.h (store_symval_forwarding): Change prototype.
380 376
381 * eval.c (specbind): Call store_symval_forwarding with BUF null. 377 * eval.c (specbind): Call store_symval_forwarding with BUF null.
382 378
410 skip the padding blanks inserted in extend_face_to_end_of_line, 406 skip the padding blanks inserted in extend_face_to_end_of_line,
411 before checking for trailing whitespace. 407 before checking for trailing whitespace.
412 408
413 2001-03-13 Gerd Moellmann <gerd@gnu.org> 409 2001-03-13 Gerd Moellmann <gerd@gnu.org>
414 410
415 * xmenu.c (popup_activate_callback, popup_deactivate_callback): 411 * xmenu.c (popup_activate_callback, popup_deactivate_callback):
416 Remove special handling for LessTif/Motif. 412 Remove special handling for LessTif/Motif.
417 (toplevel): Don't include Xm/Xm.h. 413 (toplevel): Don't include Xm/Xm.h.
418 414
419 * xterm.c (XTread_socket) <LeaveNotify, EnterNotify>: Remove 415 * xterm.c (XTread_socket) <LeaveNotify, EnterNotify>:
420 workaround code for LessTif; it doesn't work anymore. 416 Remove workaround code for LessTif; it doesn't work anymore.
421 417
422 * xterm.c [USE_TOOLKIT_SCROLL_BARS && USE_MOTIF]: Don't include 418 * xterm.c [USE_TOOLKIT_SCROLL_BARS && USE_MOTIF]: Don't include
423 Xm/ScrollBarP.h. 419 Xm/ScrollBarP.h.
424 420
425 * xterm.c (x_set_toolkit_scroll_bar_thumb) [USE_MOTIF]: Don't 421 * xterm.c (x_set_toolkit_scroll_bar_thumb) [USE_MOTIF]:
426 access private scroll bar data; it's no longer necessary with 422 Don't access private scroll bar data; it's no longer necessary with
427 contemporary LessTif. 423 contemporary LessTif.
428 424
429 * xfaces.c (xm_set_menu_resources_from_menu_face): Change 425 * xfaces.c (xm_set_menu_resources_from_menu_face):
430 #if 0 to #ifndef LESSTIF_VERSION. 426 Change #if 0 to #ifndef LESSTIF_VERSION.
431 427
432 * xmenu.c (xmenu_show) [LESSTIF_VERSION]: Take out the code 428 * xmenu.c (xmenu_show) [LESSTIF_VERSION]: Take out the code
433 removing button grabs. 429 removing button grabs.
434 430
435 2001-03-13 Kenichi Handa <handa@etl.go.jp> 431 2001-03-13 Kenichi Handa <handa@etl.go.jp>
458 454
459 2001-03-09 Gerd Moellmann <gerd@gnu.org> 455 2001-03-09 Gerd Moellmann <gerd@gnu.org>
460 456
461 * dispextern.h (string_buffer_position): Add prototype. 457 * dispextern.h (string_buffer_position): Add prototype.
462 458
463 * xdisp.c (string_buffer_position, display_prop_string_p) 459 * xdisp.c (string_buffer_position, display_prop_string_p)
464 (single_display_prop_string_p): New functions. 460 (single_display_prop_string_p): New functions.
465 461
466 * xterm.c (note_mouse_highlight): If there's no help-echo on 462 * xterm.c (note_mouse_highlight): If there's no help-echo on
467 a string, look at the buffer text ``under'' it. 463 a string, look at the buffer text ``under'' it.
468 464
469 * keyboard.c (make_lispy_event): Add string info to the event, 465 * keyboard.c (make_lispy_event): Add string info to the event,
470 analogous to what's done on mode lines. 466 analogous to what's done on mode lines.
471 (read_key_sequence): For a click on a string, consider `local-map' 467 (read_key_sequence): For a click on a string, consider `local-map'
472 and `keymap' of that string. 468 and `keymap' of that string.
473 469
474 * keyboard.c (make_lispy_event, make_lispy_movement): Adjust 470 * keyboard.c (make_lispy_event, make_lispy_movement):
475 calls to buffer_posn_from_coords to new format. 471 Adjust calls to buffer_posn_from_coords to new format.
476 472
477 * dispextern.h (buffer_posn_from_coords): Adjust prototype. 473 * dispextern.h (buffer_posn_from_coords): Adjust prototype.
478 474
479 * dispnew.c (buffer_posn_from_coords): Add parameters OBJECT and 475 * dispnew.c (buffer_posn_from_coords): Add parameters OBJECT and
480 POS; return void. 476 POS; return void.
495 2001-03-08 Gerd Moellmann <gerd@gnu.org> 491 2001-03-08 Gerd Moellmann <gerd@gnu.org>
496 492
497 * xdisp.c (handle_display_prop): Use it->w->buffer as object, 493 * xdisp.c (handle_display_prop): Use it->w->buffer as object,
498 instead of nil. 494 instead of nil.
499 495
500 * xterm.c (note_mouse_highlight): Handle mouse-face and 496 * xterm.c (note_mouse_highlight): Handle mouse-face and
501 help-echo in strings. 497 help-echo in strings.
502 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P. 498 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
503 (fast_find_string_pos): New function. 499 (fast_find_string_pos): New function.
504 500
505 * xdisp.c (handle_face_prop, face_before_or_after_it_pos) 501 * xdisp.c (handle_face_prop, face_before_or_after_it_pos)
506 (display_string): Call face_at_string_position with new 502 (display_string): Call face_at_string_position with new parameter.
507 parameter.
508 503
509 * xfaces.c (face_at_string_position): Add parameter MOUSE_P. 504 * xfaces.c (face_at_string_position): Add parameter MOUSE_P.
510 Handle `mouse-face'. 505 Handle `mouse-face'.
511 506
512 * dispextern.h (face_at_string_position): Change prototype. 507 * dispextern.h (face_at_string_position): Change prototype.
513 508
514 * dired.c (directory_files_internal): Handle EAGAIN more 509 * dired.c (directory_files_internal): Handle EAGAIN more efficiently.
515 efficiently.
516 510
517 * keyboard.c (make_lispy_event): Avoid generating drag events 511 * keyboard.c (make_lispy_event): Avoid generating drag events
518 if the mouse hasn't actually moved to another buffer position. 512 if the mouse hasn't actually moved to another buffer position.
519 513
520 2001-03-08 Dave Love <fx@gnu.org> 514 2001-03-08 Dave Love <fx@gnu.org>
521 515
522 * eval.c (syms_of_eval) <debug-on-error>: Doc fix. 516 * eval.c (syms_of_eval) <debug-on-error>: Doc fix.
523 517
524 2001-03-08 Gerd Moellmann <gerd@gnu.org> 518 2001-03-08 Gerd Moellmann <gerd@gnu.org>
530 * coding.c (detect_coding_sjis): Do more rigid check. 524 * coding.c (detect_coding_sjis): Do more rigid check.
531 (detect_coding_big5): Likewise. 525 (detect_coding_big5): Likewise.
532 (decode_coding_sjis_big5): Likewise. 526 (decode_coding_sjis_big5): Likewise.
533 (Fdetect_coding_region): Call detect_coding_system with tailing 527 (Fdetect_coding_region): Call detect_coding_system with tailing
534 anchor byte `\0' for more rigid detection. 528 anchor byte `\0' for more rigid detection.
535 (detect_coding_mask): Fix the incorrect handling of arg 529 (detect_coding_mask): Fix the incorrect handling of arg MULTIBYTEP.
536 MULTIBYTEP.
537 (Fdetect_coding_string): Likewise. 530 (Fdetect_coding_string): Likewise.
538 531
539 2001-03-07 Stefan Monnier <monnier@cs.yale.edu> 532 2001-03-07 Stefan Monnier <monnier@cs.yale.edu>
540 533
541 * bytecode.c (Fbyte_code) <Btemp_output_buffer_setup>: Check the arg is 534 * bytecode.c (Fbyte_code) <Btemp_output_buffer_setup>: Check the arg is
638 2001-03-02 Eli Zaretskii <eliz@is.elta.co.il> 631 2001-03-02 Eli Zaretskii <eliz@is.elta.co.il>
639 632
640 * msdos.c (Fmsdos_remember_default_colors): If default-frame-alist 633 * msdos.c (Fmsdos_remember_default_colors): If default-frame-alist
641 specifies (reverse . t), reverse the initial screen colors. 634 specifies (reverse . t), reverse the initial screen colors.
642 (IT_set_frame_parameters): If the property is foreground-color, 635 (IT_set_frame_parameters): If the property is foreground-color,
643 but we are reversing the colors, set bg_set, not fg_set. Likewise 636 but we are reversing the colors, set bg_set, not fg_set.
644 for setting background-color and reversing: set fg_set. Set 637 Likewise for setting background-color and reversing: set fg_set.
645 unspecified-fg and unspecified-bg correctly when (reverse . t) is 638 Set unspecified-fg and unspecified-bg correctly when (reverse . t) is
646 in effect. 639 in effect.
647 640
648 * xfaces.c (Finternal_set_lisp_face_attribute) 641 * xfaces.c (Finternal_set_lisp_face_attribute)
649 [!HAVE_WINDOW_SYSTEM]: Record the new attribute in the frame's 642 [!HAVE_WINDOW_SYSTEM]: Record the new attribute in the frame's
650 parameters alist. 643 parameters alist.
652 2001-03-02 Gerd Moellmann <gerd@gnu.org> 645 2001-03-02 Gerd Moellmann <gerd@gnu.org>
653 646
654 * fileio.c (Fexpand_file_name): Collapse sequences of slashes 647 * fileio.c (Fexpand_file_name): Collapse sequences of slashes
655 to a single slash in the middle of file names. 648 to a single slash in the middle of file names.
656 649
657 * editfns.c (Fcurrent_time_zone) [HAVE_TM_ZONE || HAVE_TZNAME]: 650 * editfns.c (Fcurrent_time_zone) [HAVE_TM_ZONE || HAVE_TZNAME]:
658 Accept only alphanumeric time zone names. 651 Accept only alphanumeric time zone names.
659 652
660 * xterm.c (XTset_vertical_scroll_bar): Don't clear a zero height 653 * xterm.c (XTset_vertical_scroll_bar): Don't clear a zero height
661 or width area. 654 or width area.
662 (XTset_vertical_scroll_bar, x_scroll_bar_create): Don't configure 655 (XTset_vertical_scroll_bar, x_scroll_bar_create): Don't configure
663 a widget to zero height. 656 a widget to zero height.
664 657
665 2001-03-01 Gerd Moellmann <gerd@gnu.org> 658 2001-03-01 Gerd Moellmann <gerd@gnu.org>
666 659
667 * window.c (Fwindow_end): Call move_it_past_eol only if 660 * window.c (Fwindow_end): Call move_it_past_eol only if
668 ending up on a partially visible line. 661 ending up on a partially visible line.
669 662
679 * xmenu.c (free_frame_menubar): Set the frame's menubar_widget to 672 * xmenu.c (free_frame_menubar): Set the frame's menubar_widget to
680 NULL after destroying it, otherwise XTread_socket can access a 673 NULL after destroying it, otherwise XTread_socket can access a
681 destroyed widget when input is unblocked. 674 destroyed widget when input is unblocked.
682 675
683 * xfns.c (x_set_foreground_color): Set the background of the cursor GC. 676 * xfns.c (x_set_foreground_color): Set the background of the cursor GC.
684 677
685 * xfns.c (x_set_font): Handle case of x_new_fontset returning the 678 * xfns.c (x_set_font): Handle case of x_new_fontset returning the
686 same name as before, although there was a change in fontsets. 679 same name as before, although there was a change in fontsets.
687 680
688 2001-02-28 Ken Raeburn <raeburn@gnu.org> 681 2001-02-28 Ken Raeburn <raeburn@gnu.org>
689 682
702 695
703 * alloc.c (toplevel): Include process.h. 696 * alloc.c (toplevel): Include process.h.
704 (enum mem_type): Add MEM_TYPE_PROCESS, MEM_TYPE_HASH_TABLE, 697 (enum mem_type): Add MEM_TYPE_PROCESS, MEM_TYPE_HASH_TABLE,
705 MEM_TYPE_FRAME, MEM_TYPE_WINDOW enumerators. 698 MEM_TYPE_FRAME, MEM_TYPE_WINDOW enumerators.
706 (allocate_vectorlike): Make it a static function. Add parameter TYPE. 699 (allocate_vectorlike): Make it a static function. Add parameter TYPE.
707 (allocate_vector, allocate_hash_table, allocate_window) 700 (allocate_vector, allocate_hash_table, allocate_window)
708 (allocate_frame, allocate_process, allocate_other_vector): New 701 (allocate_frame, allocate_process, allocate_other_vector):
709 functions. 702 New functions.
710 (Fmake_vector): Call allocate_vector instead of allocate_vectorlike. 703 (Fmake_vector): Call allocate_vector instead of allocate_vectorlike.
711 (mark_maybe_pointer): New function. 704 (mark_maybe_pointer): New function.
712 (mark_memory): Also mark Lisp data to which only pointers 705 (mark_memory): Also mark Lisp data to which only pointers
713 remain and not Lisp_Objects. 706 remain and not Lisp_Objects.
714 (min_heap_address, max_heap_address): New variables. 707 (min_heap_address, max_heap_address): New variables.
715 (mem_find): Return MEM_NIL if START is below min_heap_address or 708 (mem_find): Return MEM_NIL if START is below min_heap_address or
716 above max_heap_address. 709 above max_heap_address.
717 (mem_insert): Compute min_heap_address and max_heap_address. 710 (mem_insert): Compute min_heap_address and max_heap_address.
735 728
736 * coding.c (ccl_coding_driver): If ccl->eight_bit_control is zero, 729 * coding.c (ccl_coding_driver): If ccl->eight_bit_control is zero,
737 treat the produced bytes as a valid multibyte sequence. 730 treat the produced bytes as a valid multibyte sequence.
738 731
739 * ccl.c (CCL_WRITE_MULTIBYTE_CHAR): New macro. 732 * ccl.c (CCL_WRITE_MULTIBYTE_CHAR): New macro.
740 (ccl_driver) <CCL_WriteMultibyteChar2>: Use 733 (ccl_driver) <CCL_WriteMultibyteChar2>:
741 CCL_WRITE_MULTIBYTE_CHAR instead of CCL_WRITE_CHAR. 734 Use CCL_WRITE_MULTIBYTE_CHAR instead of CCL_WRITE_CHAR.
742 <ccl_finish>: Set ccl->eight_bit_control properly. 735 <ccl_finish>: Set ccl->eight_bit_control properly.
743 736
744 * ccl.h (struct ccl_program): New member eight_bit_control. 737 * ccl.h (struct ccl_program): New member eight_bit_control.
745 738
746 2001-02-26 Stefan Monnier <monnier@cs.yale.edu> 739 2001-02-26 Stefan Monnier <monnier@cs.yale.edu>
774 767
775 * w32fns.c (Fx_create_frame): Don't add FRAME_TOOL_BAR_LINES 768 * w32fns.c (Fx_create_frame): Don't add FRAME_TOOL_BAR_LINES
776 to height unconditionally. 769 to height unconditionally.
777 770
778 * w32term.c (x_set_glyph_string_background_width): Extend the 771 * w32term.c (x_set_glyph_string_background_width): Extend the
779 background face to the end of the drawing area in the text area, 772 background face to the end of the drawing area in the text area, only.
780 only.
781 (x_insert_glyphs): Call window_box_left to obtain the left 773 (x_insert_glyphs): Call window_box_left to obtain the left
782 x-coordinate of the area to shift. 774 x-coordinate of the area to shift.
783 775
784 * w32menu.c (set_frame_menubar): Run activate-menu-bar-hook with 776 * w32menu.c (set_frame_menubar): Run activate-menu-bar-hook with
785 safe_run_hooks. 777 safe_run_hooks.
786 778
787 2001-02-22 Andrew Innes <andrewi@gnu.org> 779 2001-02-22 Andrew Innes <andrewi@gnu.org>
788 780
789 * makefile.nt ($(BLD)\dired.obj): Remove reference to VMS header 781 * makefile.nt ($(BLD)\dired.obj): Remove reference to VMS header files.
790 files.
791 ($(BLD)\dispnew.obj): 782 ($(BLD)\dispnew.obj):
792 ($(BLD)\editfns.obj): 783 ($(BLD)\editfns.obj):
793 ($(BLD)\fileio.obj): 784 ($(BLD)\fileio.obj):
794 ($(BLD)\filelock.obj): 785 ($(BLD)\filelock.obj):
795 ($(BLD)\keyboard.obj): 786 ($(BLD)\keyboard.obj):
797 ($(BLD)\process.obj): 788 ($(BLD)\process.obj):
798 ($(BLD)\sysdep.obj): Ditto. 789 ($(BLD)\sysdep.obj): Ditto.
799 790
800 * makefile.w32-in ($(BLD)/dired.$(O)): Remove reference to VMS 791 * makefile.w32-in ($(BLD)/dired.$(O)): Remove reference to VMS
801 header files. 792 header files.
802 ($(BLD)/dispnew.$(O)): 793 ($(BLD)/dispnew.$(O)):
803 ($(BLD)/editfns.$(O)): 794 ($(BLD)/editfns.$(O)):
804 ($(BLD)/fileio.$(O)): 795 ($(BLD)/fileio.$(O)):
805 ($(BLD)/filelock.$(O)): 796 ($(BLD)/filelock.$(O)):
806 ($(BLD)/keyboard.$(O)): 797 ($(BLD)/keyboard.$(O)):
807 ($(BLD)/w32proc.$(O)): 798 ($(BLD)/w32proc.$(O)):
808 ($(BLD)/process.$(O)): 799 ($(BLD)/process.$(O)):
809 ($(BLD)/sysdep.$(O)): Ditto. 800 ($(BLD)/sysdep.$(O)): Ditto.
810 801
811 2001-02-22 Gerd Moellmann <gerd@gnu.org> 802 2001-02-22 Gerd Moellmann <gerd@gnu.org>
812 803
813 * xdisp.c (forward_to_next_line_start): When taking the shortcut 804 * xdisp.c (forward_to_next_line_start): When taking the shortcut
814 at the start of the function, check that the \n in it->c is 805 at the start of the function, check that the \n in it->c is
815 from the iterator's current position. 806 from the iterator's current position.
816 807
817 * xdisp.c (handle_single_display_prop): Add parameter 808 * xdisp.c (handle_single_display_prop): Add parameter
818 DISPLAY_REPLACED_BEFORE_P. If it is non-zero ignore display 809 DISPLAY_REPLACED_BEFORE_P. If it is non-zero ignore display
819 properties which replace the display of text with something else. 810 properties which replace the display of text with something else.
820 (handle_display_prop): Call handle_single_display_prop with 811 (handle_display_prop): Call handle_single_display_prop with
821 additional argument saying if we already replaced text display 812 additional argument saying if we already replaced text display
822 with something else. Use AREF. 813 with something else. Use AREF.
823 (with_echo_area_buffer_unwind_data, display_menu_bar) 814 (with_echo_area_buffer_unwind_data, display_menu_bar)
824 (decode_mode_spec_coding): Use AREF and ASIZE. 815 (decode_mode_spec_coding): Use AREF and ASIZE.
825 816
826 * vms-pp.c, vmsdir.h, vmsmap.c, vmsproc.h, vms-pp.trans, vmsfns.c, 817 * vms-pp.c, vmsdir.h, vmsmap.c, vmsproc.h, vms-pp.trans, vmsfns.c,
827 * vmspaths.h, vmstime.c, vms-pwd.h, vmsgmalloc.c, vmsproc.c, 818 * vmspaths.h, vmstime.c, vms-pwd.h, vmsgmalloc.c, vmsproc.c,
828 * vmstime.h: Files removed. 819 * vmstime.h: Files removed.
829 820
830 * unexencap.c, unexfx2800.c: Files removed. 821 * unexencap.c, unexfx2800.c: Files removed.
831 822
832 * dispnew.c (direct_output_for_insert): Give up if we are showing 823 * dispnew.c (direct_output_for_insert): Give up if we are showing
833 a message or just cleared the message because we might need to 824 a message or just cleared the message because we might need to
834 resize the echo area window or display an empty echo area. 825 resize the echo area window or display an empty echo area.
838 * xdisp.c (redisplay_internal): Do the 829 * xdisp.c (redisplay_internal): Do the
839 mark_window_display_accurate after all windows have been 830 mark_window_display_accurate after all windows have been
840 redisplayed because this call resets flags in buffers which are 831 redisplayed because this call resets flags in buffers which are
841 needed for proper redisplay. 832 needed for proper redisplay.
842 833
843 * keyboard.c, minibuf.c, lread.c, fns.c, eval.c: Use 834 * keyboard.c, minibuf.c, lread.c, fns.c, eval.c:
844 display_hourglass_p, start_hourglass, cancel_hourglass instead of 835 Use display_hourglass_p, start_hourglass, cancel_hourglass instead of
845 the old names. 836 the old names.
846 837
847 * w32term.h (struct x_output): Rename busy_cursor to 838 * w32term.h (struct x_output): Rename busy_cursor to hourglass_cursor,
848 hourglass_cursor, busy_window to hourglass_window, busy_p to 839 busy_window to hourglass_window, busy_p to hourglass_p.
849 hourglass_p.
850 840
851 * msdos.h (struct x_output): Rename busy_window to 841 * msdos.h (struct x_output): Rename busy_window to
852 hourglass_window, busy_p to hourglass_p. 842 hourglass_window, busy_p to hourglass_p.
853 843
854 * xterm.h (struct x_output): Rename busy_cursor to 844 * xterm.h (struct x_output): Rename busy_cursor to hourglass_cursor,
855 hourglass_cursor, busy_window to hourglass_window, busy_p to 845 busy_window to hourglass_window, busy_p to hourglass_p.
856 hourglass_p.
857 846
858 * xfns.c: Rename everything containing *busy_cursor* and similar 847 * xfns.c: Rename everything containing *busy_cursor* and similar
859 to *hourglass*. 848 to *hourglass*.
860 (syms_of_w32fns): Rename x-busy-pointer-shape to 849 (syms_of_w32fns): Rename x-busy-pointer-shape to
861 x-hourglass-pointer-shape, display-busy-cursor to 850 x-hourglass-pointer-shape, display-busy-cursor to
891 (displayed_window_lines): Call line_bottom_y to determine 880 (displayed_window_lines): Call line_bottom_y to determine
892 the line's bottom position. 881 the line's bottom position.
893 882
894 * dispextern.h (line_bottom_y): Add prototype. 883 * dispextern.h (line_bottom_y): Add prototype.
895 884
896 * xdisp.c (line_bottom_y): New function extracted from 885 * xdisp.c (line_bottom_y): New function extracted from pos_visible_p.
897 pos_visible_p.
898 (pos_visible_p): Use it. 886 (pos_visible_p): Use it.
899 887
900 * keyboard.c (recursive_edit_1): Bind `inhibit-redisplay' and 888 * keyboard.c (recursive_edit_1): Bind `inhibit-redisplay' and
901 set redisplaying_p to 0 here instead of in Frecursive_edit. 889 set redisplaying_p to 0 here instead of in Frecursive_edit.
902 (Frecursive_edit): Don't bind `inhibit-redisplay' and don't 890 (Frecursive_edit): Don't bind `inhibit-redisplay' and don't
903 set redisplaying_p. 891 set redisplaying_p.
904 892
905 * xdisp.c (Qinhibit_menubar_update, inhibit_menubar_update): 893 * xdisp.c (Qinhibit_menubar_update, inhibit_menubar_update):
906 New variables. 894 New variables.
907 (syms_of_xdisp): Initialize new variables. 895 (syms_of_xdisp): Initialize new variables.
908 (update_menu_bar): Do nothing if inhibit_menubar_update is set. 896 (update_menu_bar): Do nothing if inhibit_menubar_update is set.
909 Specbind `inhibit-menubar-update' when updating the menu bar. 897 Specbind `inhibit-menubar-update' when updating the menu bar.
910 898
921 to the start of the file. 909 to the start of the file.
922 910
923 2001-02-16 Gerd Moellmann <gerd@gnu.org> 911 2001-02-16 Gerd Moellmann <gerd@gnu.org>
924 912
925 * window.c (set_window_buffer): Fix last change. 913 * window.c (set_window_buffer): Fix last change.
926 914
927 * window.c (set_window_buffer): Set window's vscroll to 0. 915 * window.c (set_window_buffer): Set window's vscroll to 0.
928 916
929 * window.c (coordinates_in_window): Increase width of area 917 * window.c (coordinates_in_window): Increase width of area
930 where the vertical line can be dragged. 918 where the vertical line can be dragged.
931 919
994 982
995 2001-02-12 Andrew Innes <andrewi@gnu.org> 983 2001-02-12 Andrew Innes <andrewi@gnu.org>
996 984
997 The following changes are to draw box lines inside characters area 985 The following changes are to draw box lines inside characters area
998 if line-width is negative. 986 if line-width is negative.
999 987
1000 * w32term.c (x_produce_image_glyph): Pay attention to the case that 988 * w32term.c (x_produce_image_glyph): Pay attention to the case that
1001 face->box_line_width is negative. 989 face->box_line_width is negative.
1002 (x_produce_stretch_glyph): Likewise. 990 (x_produce_stretch_glyph): Likewise.
1003 (x_produce_glyphs): Likewise. 991 (x_produce_glyphs): Likewise.
1004 (x_estimate_mode_line_height): Likewise. 992 (x_estimate_mode_line_height): Likewise.
1013 1001
1014 2001-02-09 Kenichi Handa <handa@etl.go.jp> 1002 2001-02-09 Kenichi Handa <handa@etl.go.jp>
1015 1003
1016 The following changes are to draw box lines inside characters area 1004 The following changes are to draw box lines inside characters area
1017 if line-width is negative. 1005 if line-width is negative.
1018 1006
1019 * xterm.c (x_produce_image_glyph): Pay attention to the case that 1007 * xterm.c (x_produce_image_glyph): Pay attention to the case that
1020 face->box_line_width is negative. 1008 face->box_line_width is negative.
1021 (x_produce_stretch_glyph): Likewise. 1009 (x_produce_stretch_glyph): Likewise.
1022 (x_produce_glyphs): Likewise. 1010 (x_produce_glyphs): Likewise.
1023 (x_estimate_mode_line_height): Likewise. 1011 (x_estimate_mode_line_height): Likewise.
1030 (x_draw_image_foreground_1): Likewise. 1018 (x_draw_image_foreground_1): Likewise.
1031 (x_draw_image_glyph_string): Likewise. 1019 (x_draw_image_glyph_string): Likewise.
1032 1020
1033 * xfaces.c (Finternal_set_lisp_face_attribute): The value of :box 1021 * xfaces.c (Finternal_set_lisp_face_attribute): The value of :box
1034 and :line-width can be negative. 1022 and :line-width can be negative.
1035 (realize_x_face): The value of attrs[LFACE_BOX_INDEX] can be 1023 (realize_x_face): The value of attrs[LFACE_BOX_INDEX] can be negative.
1036 negative.
1037 1024
1038 2001-02-09 Jason Rumney <jasonr@gnu.org> 1025 2001-02-09 Jason Rumney <jasonr@gnu.org>
1039 1026
1040 * w32term.c (w32_encode_char): Treat eight bit graphic and control 1027 * w32term.c (w32_encode_char): Treat eight bit graphic and control
1041 characters the same as ASCII and latin-1. 1028 characters the same as ASCII and latin-1.
1047 (w32_initialize): Set char_ins_del_ok to 1. 1034 (w32_initialize): Set char_ins_del_ok to 1.
1048 1035
1049 * w32fns.c (Fx_show_tip): Fix calls to make_number. 1036 * w32fns.c (Fx_show_tip): Fix calls to make_number.
1050 (x_set_font): If font hasn't changed, avoid recomputing 1037 (x_set_font): If font hasn't changed, avoid recomputing
1051 faces and other things. 1038 faces and other things.
1052 (x_set_tool_bar_lines): Do nothing if frame is 1039 (x_set_tool_bar_lines): Do nothing if frame is minibuffer-only,
1053 minibuffer-only, 1040 (Fx_create_frame): Add the tool bar height to the frame height.
1054 (Fx_create_frame): Add the tool bar height to the frame
1055 height.
1056 (x_create_tip_frame): Prevent changing the tooltip's 1041 (x_create_tip_frame): Prevent changing the tooltip's
1057 background color by specifying a color for the default font 1042 background color by specifying a color for the default font
1058 in .Xdefaults. 1043 in .Xdefaults.
1059 (Qcancel_timer): New variable. 1044 (Qcancel_timer): New variable.
1060 (syms_of_w32fns): Initialize and staticpro it. 1045 (syms_of_w32fns): Initialize and staticpro it.
1107 * dispnew.c (update_frame_line): Rename parameter FRAME to F. 1092 * dispnew.c (update_frame_line): Rename parameter FRAME to F.
1108 Avoid some unnecessary cursor positioning. 1093 Avoid some unnecessary cursor positioning.
1109 1094
1110 2001-02-05 Gerd Moellmann <gerd@gnu.org> 1095 2001-02-05 Gerd Moellmann <gerd@gnu.org>
1111 1096
1112 * xfaces.c (split_font_name): Compute numeric value of 1097 * xfaces.c (split_font_name): Compute numeric value of XLFD_AVGWIDTH.
1113 XLFD_AVGWIDTH.
1114 (LFACE_AVGWIDTH): New macro. 1098 (LFACE_AVGWIDTH): New macro.
1115 (LFACEP): Use AREF. 1099 (LFACEP): Use AREF.
1116 (check_lface_attrs): Check LFACE_AVGWIDTH. 1100 (check_lface_attrs): Check LFACE_AVGWIDTH.
1117 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH. 1101 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
1118 (set_lface_from_font_name): Set LFACE_AVGWIDTH. 1102 (set_lface_from_font_name): Set LFACE_AVGWIDTH.
1124 (lface_same_font_attributes_p): Compare LFACE_AVGWIDTH. 1108 (lface_same_font_attributes_p): Compare LFACE_AVGWIDTH.
1125 (better_font_p, exact_face_match_p): Add parameter AVGWIDTH. 1109 (better_font_p, exact_face_match_p): Add parameter AVGWIDTH.
1126 Compare average widths.. 1110 Compare average widths..
1127 (best_matching_font): Arrange for comparing average widths. 1111 (best_matching_font): Arrange for comparing average widths.
1128 1112
1129 * dispextern.h (enum lface_attribute_index): Add 1113 * dispextern.h (enum lface_attribute_index):
1130 LFACE_AVGWIDTH_INDEX (invisible from Lisp). 1114 Add LFACE_AVGWIDTH_INDEX (invisible from Lisp).
1131 1115
1132 2001-02-05 Dave Love <fx@gnu.org> 1116 2001-02-05 Dave Love <fx@gnu.org>
1133 1117
1134 * puresize.h: Revert last change following loadup.el change. 1118 * puresize.h: Revert last change following loadup.el change.
1135 1119
1136 2001-02-05 Andrew Innes <andrewi@gnu.org> 1120 2001-02-05 Andrew Innes <andrewi@gnu.org>
1146 1130
1147 * xdisp.c (try_scrolling): If point is in the line below the 1131 * xdisp.c (try_scrolling): If point is in the line below the
1148 window, make sure to move the iterator at least a canonical 1132 window, make sure to move the iterator at least a canonical
1149 char height down. 1133 char height down.
1150 1134
1151 * window.c (Fmove_to_window_line): Don't add 1 if window is 1135 * window.c (Fmove_to_window_line): Don't add 1 if window is vscrolled.
1152 vscrolled.
1153 1136
1154 2001-02-05 Kenichi Handa <handa@etl.go.jp> 1137 2001-02-05 Kenichi Handa <handa@etl.go.jp>
1155 1138
1156 * ccl.c (CCL_WRITE_CHAR): Check if CH is valid or not. If 1139 * ccl.c (CCL_WRITE_CHAR): Check if CH is valid or not.
1157 invalid, execute CCL_INVALID_CMD. 1140 If invalid, execute CCL_INVALID_CMD.
1158 (ccl_driver): If the CCL program is terminated because of 1141 (ccl_driver): If the CCL program is terminated because of
1159 CCL_STAT_INVALID_CMD, copy the remaining source data to the 1142 CCL_STAT_INVALID_CMD, copy the remaining source data to the
1160 destination instead of throwing them away. 1143 destination instead of throwing them away.
1161 1144
1162 2001-02-02 Gerd Moellmann <gerd@gnu.org> 1145 2001-02-02 Gerd Moellmann <gerd@gnu.org>
1190 1173
1191 2001-01-31 Gerd Moellmann <gerd@gnu.org> 1174 2001-01-31 Gerd Moellmann <gerd@gnu.org>
1192 1175
1193 * frame.h (EMACS_FRAME_H_INCLUDED): Use an include blocker 1176 * frame.h (EMACS_FRAME_H_INCLUDED): Use an include blocker
1194 identifier which is not reserved by Standard C. 1177 identifier which is not reserved by Standard C.
1195 1178
1196 * frame.h (FRAME_RIGHT_SCROLL_BAR_WIDTH): New define. 1179 * frame.h (FRAME_RIGHT_SCROLL_BAR_WIDTH): New define.
1197 1180
1198 * window.c (enum window_part): New enumeration. 1181 * window.c (enum window_part): New enumeration.
1199 (Qleft_fringe, Qright_fringe): Replace Qleft_bitmap_area and 1182 (Qleft_fringe, Qright_fringe): Replace Qleft_bitmap_area and
1200 Qright_bitmap_area. 1183 Qright_bitmap_area.
1202 window_part. Fix handling of right scroll bar. 1185 window_part. Fix handling of right scroll bar.
1203 (Fcoordinates_in_window_p): Doc fix. Return `left-fringe' and 1186 (Fcoordinates_in_window_p): Doc fix. Return `left-fringe' and
1204 `right-fringe' instead of `left-bitmap-area' and 1187 `right-fringe' instead of `left-bitmap-area' and
1205 `right-bitmap-area'. Use enumerators from enum window_part 1188 `right-bitmap-area'. Use enumerators from enum window_part
1206 instead of hard-coded integers. 1189 instead of hard-coded integers.
1207 (check_window_containing, window_from_coordinates): Use 1190 (check_window_containing, window_from_coordinates):
1208 enumerators from enum window_part instead of hard-coded integers. 1191 Use enumerators from enum window_part instead of hard-coded integers.
1209 (syms_of_window): Replace Qleft_bitmap_area and 1192 (syms_of_window): Replace Qleft_bitmap_area and
1210 Qright_bitmap_area.with Qleft_fringe and Qright_fringe. 1193 Qright_bitmap_area.with Qleft_fringe and Qright_fringe.
1211 1194
1212 2001-01-31 Eli Zaretskii <eliz@is.elta.co.il> 1195 2001-01-31 Eli Zaretskii <eliz@is.elta.co.il>
1213 1196
1236 1219
1237 * textprop.c (Fset_text_properties): Fix newline in doc string. 1220 * textprop.c (Fset_text_properties): Fix newline in doc string.
1238 1221
1239 2001-01-30 Gerd Moellmann <gerd@gnu.org> 1222 2001-01-30 Gerd Moellmann <gerd@gnu.org>
1240 1223
1241 * xdisp.c (build_desired_tool_bar_string, syms_of_xdisp): Use 1224 * xdisp.c (build_desired_tool_bar_string, syms_of_xdisp):
1242 DEFAULT_TOOL_BAR_BUTTON_MARGIN and DEFAULT_TOOL_BAR_BUTTON_RELIEF. 1225 Use DEFAULT_TOOL_BAR_BUTTON_MARGIN and DEFAULT_TOOL_BAR_BUTTON_RELIEF.
1243 1226
1244 * dispextern.h (Vtool_bar_button_margin:): Declare extern. 1227 * dispextern.h (Vtool_bar_button_margin:): Declare extern.
1245 (DEFAULT_TOOL_BAR_BUTTON_MARGIN, DEFAULT_TOOL_BAR_BUTTON_RELIEF) 1228 (DEFAULT_TOOL_BAR_BUTTON_MARGIN, DEFAULT_TOOL_BAR_BUTTON_RELIEF)
1246 (DEFAULT_TOOL_BAR_IMAGE_HEIGHT): New defines. 1229 (DEFAULT_TOOL_BAR_IMAGE_HEIGHT): New defines.
1247 1230
1248 * xfns.c (Fx_create_frame): Add the tool bar height to the frame 1231 * xfns.c (Fx_create_frame): Add the tool bar height to the frame
1249 height. 1232 height.
1250 1233
1253 * bytecode.c (Fbyte_code) <Bgeq>: Add BEFORE_POTENTIAL_GC and 1236 * bytecode.c (Fbyte_code) <Bgeq>: Add BEFORE_POTENTIAL_GC and
1254 AFTER_POTENTIAL_GC. 1237 AFTER_POTENTIAL_GC.
1255 1238
1256 2001-01-29 Gerd Moellmann <gerd@gnu.org> 1239 2001-01-29 Gerd Moellmann <gerd@gnu.org>
1257 1240
1258 * bytecode.c (Fbyte_code) <Bcurrent_column>: Add 1241 * bytecode.c (Fbyte_code) <Bcurrent_column>:
1259 BEFORE_POTENTIAL_GC and AFTER_POTENTIAL_GC. 1242 Add BEFORE_POTENTIAL_GC and AFTER_POTENTIAL_GC.
1260 1243
1261 2001-01-29 Eli Zaretskii <eliz@is.elta.co.il> 1244 2001-01-29 Eli Zaretskii <eliz@is.elta.co.il>
1262 1245
1263 * textprop.c (Fset_text_properties): Doc fix. 1246 * textprop.c (Fset_text_properties): Doc fix.
1264 1247
1289 1272
1290 2001-01-28 Kenichi Handa <handa@etl.go.jp> 1273 2001-01-28 Kenichi Handa <handa@etl.go.jp>
1291 1274
1292 * fontset.c (font_family_registry): Even if FONTNAME conform to 1275 * fontset.c (font_family_registry): Even if FONTNAME conform to
1293 XLFD, if it specifies other fields than family and registry, 1276 XLFD, if it specifies other fields than family and registry,
1294 return FONTANME. New argument FORCE if nonzero cancel that 1277 return FONTANME. New argument FORCE if nonzero cancel that feature.
1295 feature.
1296 (fontset_font_pattern): Call font_family_registry with FORCE 1 for 1278 (fontset_font_pattern): Call font_family_registry with FORCE 1 for
1297 a signle byte character. Don't set FAMILY part to nil here. It 1279 a signle byte character. Don't set FAMILY part to nil here.
1298 is handled by the caller choose_face_font. 1280 It is handled by the caller choose_face_font.
1299 (Fnew_fontset): Call font_family_registry with FORCE 0. 1281 (Fnew_fontset): Call font_family_registry with FORCE 0.
1300 (Fset_fontset_font): Likewise. 1282 (Fset_fontset_font): Likewise.
1301 1283
1302 2001-01-27 Gerd Moellmann <gerd@gnu.org> 1284 2001-01-27 Gerd Moellmann <gerd@gnu.org>
1303 1285
1326 1308
1327 * coding.c (decode_coding): Set a flag for inhibiting 1309 * coding.c (decode_coding): Set a flag for inhibiting
1328 inconsistent eol. 1310 inconsistent eol.
1329 (code_convert_region): Always set saved_coding_symbol. 1311 (code_convert_region): Always set saved_coding_symbol.
1330 (decode_coding_string): Likewise. Update coding->symbol when we 1312 (decode_coding_string): Likewise. Update coding->symbol when we
1331 encounter a inconsistent eol by the same way as 1313 encounter a inconsistent eol by the same way as code_convert_region.
1332 code_convert_region.
1333 1314
1334 2001-01-25 Gerd Moellmann <gerd@gnu.org> 1315 2001-01-25 Gerd Moellmann <gerd@gnu.org>
1335 1316
1336 * xfns.c (x_set_tool_bar_lines): Use x_clear_area instead of 1317 * xfns.c (x_set_tool_bar_lines): Use x_clear_area instead of
1337 XClearArea. 1318 XClearArea.
1426 (x_set_window_size) [USE_X_TOOLKIT]: Handle case that window 1407 (x_set_window_size) [USE_X_TOOLKIT]: Handle case that window
1427 doesn't have a widget, like tooltips. 1408 doesn't have a widget, like tooltips.
1428 1409
1429 2001-01-23 Eli Zaretskii <eliz@is.elta.co.il> 1410 2001-01-23 Eli Zaretskii <eliz@is.elta.co.il>
1430 1411
1431 * window.c (syms_of_window) <scroll-preserve-screen-position>: Doc 1412 * window.c (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
1432 fix.
1433 1413
1434 2001-01-23 Kenichi Handa <handa@etl.go.jp> 1414 2001-01-23 Kenichi Handa <handa@etl.go.jp>
1435 1415
1436 * fns.c (Fset_char_table_default): Fix to make sub char-table 1416 * fns.c (Fset_char_table_default): Fix to make sub char-table
1437 correctly. 1417 correctly.
1438 1418
1439 2001-01-22 Gerd Moellmann <gerd@gnu.org> 1419 2001-01-22 Gerd Moellmann <gerd@gnu.org>
1440 1420
1441 * xdisp.c (build_desired_tool_bar_string): Make sure we have 1421 * xdisp.c (build_desired_tool_bar_string): Make sure we have
1442 a desired tool bar string, even if there are no tool bar 1422 a desired tool bar string, even if there are no tool bar items.
1443 items. 1423
1444
1445 * xdisp.c (Ftool_bar_lines_needed): New function. 1424 * xdisp.c (Ftool_bar_lines_needed): New function.
1446 (syms_of_xdisp): Defsubr it. 1425 (syms_of_xdisp): Defsubr it.
1447 1426
1448 * editfns.c (Fformat): Don't extend text properties from arguments 1427 * editfns.c (Fformat): Don't extend text properties from arguments
1449 to padding chars in the result. 1428 to padding chars in the result.
1452 1431
1453 * s/msdos.h (GC_MARK_STACK): Define to GC_MAKE_GCPROS_NOOPS. 1432 * s/msdos.h (GC_MARK_STACK): Define to GC_MAKE_GCPROS_NOOPS.
1454 1433
1455 2001-01-20 Andrew Innes <andrewi@gnu.org> 1434 2001-01-20 Andrew Innes <andrewi@gnu.org>
1456 1435
1457 * w32term.c (w32_ring_bell): Only support visible bell on w32 1436 * w32term.c (w32_ring_bell): Only support visible bell on w32 frames.
1458 frames.
1459 (w32_initialize): Don't set term hooks that aren't actually needed 1437 (w32_initialize): Don't set term hooks that aren't actually needed
1460 in windowed mode. 1438 in windowed mode.
1461 1439
1462 * xfaces.c (realize_default_face): 1440 * xfaces.c (realize_default_face):
1463 (realize_face): 1441 (realize_face):
1464 (realize_tty_face): Remove references to FRAME_W32_CONSOLE_P. 1442 (realize_tty_face): Remove references to FRAME_W32_CONSOLE_P.
1465 1443
1466 * xdisp.c (handle_single_display_prop): Remove references to 1444 * xdisp.c (handle_single_display_prop): Remove references to
1467 FRAME_W32_CONSOLE_P. 1445 FRAME_W32_CONSOLE_P.
1468 1446
1469 * dispnew.c (Fredraw_frame): Remove reference to 1447 * dispnew.c (Fredraw_frame): Remove reference to FRAME_W32_CONSOLE_P.
1470 FRAME_W32_CONSOLE_P.
1471 1448
1472 * frame.h (output_method): Remove output_w32_console method. 1449 * frame.h (output_method): Remove output_w32_console method.
1473 (FRAME_W32_CONSOLE_P): Remove macro. 1450 (FRAME_W32_CONSOLE_P): Remove macro.
1474 1451
1475 * frame.c (Qw32_console): Remove variable. 1452 * frame.c (Qw32_console): Remove variable.
1491 1468
1492 2001-01-19 Gerd Moellmann <gerd@gnu.org> 1469 2001-01-19 Gerd Moellmann <gerd@gnu.org>
1493 1470
1494 * editfns.c (Fbuffer_substring): Doc fix. 1471 * editfns.c (Fbuffer_substring): Doc fix.
1495 1472
1496 * xdisp.c (message_dolog, message2, message2_nolog): Rename 1473 * xdisp.c (message_dolog, message2, message2_nolog):
1497 parameter LEN to NBYTES. 1474 Rename parameter LEN to NBYTES.
1498 1475
1499 2001-01-19 Kenichi Handa <handa@etl.go.jp> 1476 2001-01-19 Kenichi Handa <handa@etl.go.jp>
1500 1477
1501 * charset.c (strwidth): Use c_string_width. 1478 * charset.c (strwidth): Use c_string_width.
1502 (c_string_width): New function. 1479 (c_string_width): New function.
1503 (lisp_string_width): New arguments PRECISION, NCHARS, NBYTES. 1480 (lisp_string_width): New arguments PRECISION, NCHARS, NBYTES.
1504 Caller changed. 1481 Caller changed.
1505 1482
1506 * charset.h (c_string_width, lisp_string_width): Extern them. 1483 * charset.h (c_string_width, lisp_string_width): Extern them.
1507 1484
1508 * doprnt.c (doprnt1): Get byte length of Lisp string correctly. 1485 * doprnt.c (doprnt1): Get byte length of Lisp string correctly.
1509 1486
1510 * indent.c (check_composition): Check validity of composition. 1487 * indent.c (check_composition): Check validity of composition.
1511 1488
1512 * xdisp.c (store_frame_title): Pay attention to width of non-ASCII 1489 * xdisp.c (store_frame_title): Pay attention to width of non-ASCII
1513 characters by calling c_string_width. 1490 characters by calling c_string_width.
1559 If first glyph isn't a character glyph, use the ASCII NUL 1536 If first glyph isn't a character glyph, use the ASCII NUL
1560 character to determine the face. 1537 character to determine the face.
1561 (expose_area): Do not treat left margin specially. 1538 (expose_area): Do not treat left margin specially.
1562 (note_mode_line_highlight): If no local_map, check global keymap. 1539 (note_mode_line_highlight): If no local_map, check global keymap.
1563 (note_mouse_highlight): Initialize overlay. 1540 (note_mouse_highlight): Initialize overlay.
1564 (clear_mouse_face): Don't return if tip_frame is 1541 (clear_mouse_face): Don't return if tip_frame is non-nil.
1565 non-nil.
1566 (show_scroll_bars): Remove unused function. 1542 (show_scroll_bars): Remove unused function.
1567 (w32_read_socket) [WM_KILLFOCUS]: Set help_echo to Qnil. 1543 (w32_read_socket) [WM_KILLFOCUS]: Set help_echo to Qnil.
1568 (x_draw_bar_cursor): Remove extra test for out of bounds cursor. 1544 (x_draw_bar_cursor): Remove extra test for out of bounds cursor.
1569 Clip to row. 1545 Clip to row.
1570 (x_erase_phys_cursor): Don't apply XWINDOW to variable that may be 1546 (x_erase_phys_cursor): Don't apply XWINDOW to variable that may be nil.
1571 nil.
1572 (x_free_frame_resources): Unload relief colors. 1547 (x_free_frame_resources): Unload relief colors.
1573 1548
1574 2001-01-17 Gerd Moellmann <gerd@gnu.org> 1549 2001-01-17 Gerd Moellmann <gerd@gnu.org>
1575 1550
1576 * xdisp.c (forward_to_next_line_start): Avoid calling 1551 * xdisp.c (forward_to_next_line_start): Avoid calling
1577 get_next_display_element when the newline is already found. This 1552 get_next_display_element when the newline is already found.
1578 may change the iterator's position, when its current position is 1553 This may change the iterator's position, when its current position is
1579 equal to the iterator's stop_charpos. 1554 equal to the iterator's stop_charpos.
1580 1555
1581 * dispnew.c (direct_output_for_insert): If char_ins_del_ok is 1556 * dispnew.c (direct_output_for_insert): If char_ins_del_ok is
1582 zero, use this method only at the end of a line. 1557 zero, use this method only at the end of a line.
1583 1558
1584 * xfaces.c (x_face_list_fonts): Don't BLOCK_INPUT around the 1559 * xfaces.c (x_face_list_fonts): Don't BLOCK_INPUT around the
1585 call to x_list_fonts. Call x_list_fonts with SIZE -1 only 1560 call to x_list_fonts. Call x_list_fonts with SIZE -1 only
1586 if SCALABLE_FONTS_P is set. 1561 if SCALABLE_FONTS_P is set.
1587 1562
1588 * xfaces.c (x_face_list_fonts): Call x_list_fonts with SIZE -1, 1563 * xfaces.c (x_face_list_fonts): Call x_list_fonts with SIZE -1,
1589 so that scalable fonts are included. 1564 so that scalable fonts are included.
1590 1565
1591 * xterm.c (x_list_fonts): Allow scalable fonts if SIZE is < 0, 1566 * xterm.c (x_list_fonts): Allow scalable fonts if SIZE is < 0,
1592 In the cache, use a key containing the information if scalable 1567 In the cache, use a key containing the information if scalable
1593 fonts are included. 1568 fonts are included.
1594 (x_load_font): Adapt to change of keys in the font cache. 1569 (x_load_font): Adapt to change of keys in the font cache.
1595 1570
1596 2001-01-17 Kim F. Storm <storm@filanet.dk> 1571 2001-01-17 Kim F. Storm <storm@filanet.dk>
1597 1572
1598 * xfaces.c (x_face_list_fonts): Use x_list_fonts instead of 1573 * xfaces.c (x_face_list_fonts): Use x_list_fonts instead of
1599 XListFonts to take advantage of font caching. 1574 XListFonts to take advantage of font caching.
1600 1575
1601 * xterm.c (x_list_fonts): Ensure caching font information when 1576 * xterm.c (x_list_fonts): Ensure caching font information when
1602 called for a null frame, which is the case frequently when Emacs 1577 called for a null frame, which is the case frequently when Emacs
1608 1583
1609 * w32fns.c (QCconversion): Replaces QCalgorithm. Update copyright. 1584 * w32fns.c (QCconversion): Replaces QCalgorithm. Update copyright.
1610 1585
1611 * xdisp.c (build_desired_tool_bar_string): Use :conversion instead 1586 * xdisp.c (build_desired_tool_bar_string): Use :conversion instead
1612 of :algorithm. 1587 of :algorithm.
1613 1588
1614 * xdisp.c (redisplay_tool_bar): Change tool bar's height when 1589 * xdisp.c (redisplay_tool_bar): Change tool bar's height when
1615 not everything could be displayed. 1590 not everything could be displayed.
1616 1591
1617 * line.h, x-list-font.c: Files removed because unused. 1592 * line.h, x-list-font.c: Files removed because unused.
1618 1593
1627 * fns.c (concat): Be sure to avoid putting the same `composition' 1602 * fns.c (concat): Be sure to avoid putting the same `composition'
1628 property on the adjacent regions. 1603 property on the adjacent regions.
1629 1604
1630 2001-01-16 Gerd Moellmann <gerd@gnu.org> 1605 2001-01-16 Gerd Moellmann <gerd@gnu.org>
1631 1606
1632 * window.c (Fset_window_hscroll): Don't set window's min_hscroll 1607 * window.c (Fset_window_hscroll): Don't set window's min_hscroll here.
1633 here.
1634 (Fscroll_right, Fscroll_left): Set it here instead, if called 1608 (Fscroll_right, Fscroll_left): Set it here instead, if called
1635 interactively. 1609 interactively.
1636 1610
1637 * buffer.c (Fset_buffer_modified_p): Set buffer's 1611 * buffer.c (Fset_buffer_modified_p): Set buffer's
1638 prevent_redisplay_optimizations_p flag. 1612 prevent_redisplay_optimizations_p flag.
1639 1613
1640 * dispnew.c, callproc.c, fns.c, keyboard.c, process.c, sunfns.c, 1614 * dispnew.c, callproc.c, fns.c, keyboard.c, process.c, sunfns.c,
1641 * sysdep.c, vmsproc.c, xselect.c: Call 1615 * sysdep.c, vmsproc.c, xselect.c: Call redisplay_preserve_echo_area
1642 redisplay_preserve_echo_area with additional arg. 1616 with additional arg.
1643 1617
1644 * dispextern.h, lisp.h (redisplay_preserve_echo_area): Change 1618 * dispextern.h, lisp.h (redisplay_preserve_echo_area):
1645 prototype. 1619 Change prototype.
1646 1620
1647 * xdisp.c (redisplay_preserve_echo_area): Add parameter 1621 * xdisp.c (redisplay_preserve_echo_area): Add parameter
1648 FROM_WHERE, for debugging. 1622 FROM_WHERE, for debugging.
1649 1623
1650 2001-01-16 Kenichi Handa <handa@etl.go.jp> 1624 2001-01-16 Kenichi Handa <handa@etl.go.jp>
1651 1625
1652 * ccl.c (Fregister_ccl_program): Handle the return value of 1626 * ccl.c (Fregister_ccl_program): Handle the return value of
1653 resolve_symbol_ccl_program correctly. 1627 resolve_symbol_ccl_program correctly.
1654 (CCL_Extension): Fix typo (originally CCL_Extention). Caller 1628 (CCL_Extension): Fix typo (originally CCL_Extention). Caller changed.
1655 changed.
1656 1629
1657 2001-01-15 Gerd Moellmann <gerd@gnu.org> 1630 2001-01-15 Gerd Moellmann <gerd@gnu.org>
1658 1631
1659 * xterm.c (x_set_mouse_face_gc): If the last used mouse face 1632 * xterm.c (x_set_mouse_face_gc): If the last used mouse face
1660 has gone in the meantime, use face MOUSE_FACE_ID. 1633 has gone in the meantime, use face MOUSE_FACE_ID.
1661 1634
1662 * xterm.c (x_connection_closed) [USE_X_TOOLKIT]: If 1635 * xterm.c (x_connection_closed) [USE_X_TOOLKIT]:
1663 x_display_info_for_display returns null, don't try to close 1636 If x_display_info_for_display returns null, don't try to close
1664 the display; we didn't open it. 1637 the display; we didn't open it.
1665 1638
1666 * dispnew.c (save_or_restore_current_matrices): Function removed. 1639 * dispnew.c (save_or_restore_current_matrices): Function removed.
1667 (save_current_matrix, restore_current_matrix): New functions. 1640 (save_current_matrix, restore_current_matrix): New functions.
1668 (adjust_frame_glyphs_for_frame_redisplay): Use them to save and 1641 (adjust_frame_glyphs_for_frame_redisplay): Use them to save and
1680 partially. On ttys, produce more than one truncation glyph for 1653 partially. On ttys, produce more than one truncation glyph for
1681 multi-column characters that don't fit on the line. 1654 multi-column characters that don't fit on the line.
1682 1655
1683 2001-01-13 Kenichi Handa <handa@etl.go.jp> 1656 2001-01-13 Kenichi Handa <handa@etl.go.jp>
1684 1657
1685 * md5.c (WORDS_BIG_ENDIAN) [__BYTE_ORDER == __BIG_ENDIAN]: Define 1658 * md5.c (WORDS_BIG_ENDIAN) [__BYTE_ORDER == __BIG_ENDIAN]:
1686 it instead of WORDS_BIGENDIAN. Caller changed. 1659 Define it instead of WORDS_BIGENDIAN. Caller changed.
1687 1660
1688 2001-01-13 Jason Rumney <jasonr@gnu.org> 1661 2001-01-13 Jason Rumney <jasonr@gnu.org>
1689 1662
1690 * w32fns.c (Fimage_size, image_ascent, lookup_image) 1663 * w32fns.c (Fimage_size, image_ascent, lookup_image)
1691 (IMAGE_POSITIVE_INTEGER_VALUE_OR_PAIR, parse_image_spec) 1664 (IMAGE_POSITIVE_INTEGER_VALUE_OR_PAIR, parse_image_spec)
1692 (xbm_format, xpm_format, pbm_format, png_format, jpeg_format) 1665 (xbm_format, xpm_format, pbm_format, png_format, jpeg_format)
1693 (tiff_format, gif_format, gs_format): Adapt to change of image 1666 (tiff_format, gif_format, gs_format): Adapt to change of image margins.
1694 margins. 1667
1695 1668 * w32term.c (x_produce_image_glyph, x_draw_image_foreground)
1696 * w32term.c (x_produce_image_glyph, x_draw_image_foreground) 1669 (x_draw_image_relief, x_draw_image_foreground_1)
1697 (x_draw_image_relief, x_draw_image_foreground_1)
1698 (x_draw_image_glyph_string): Adapt to change of image margins. 1670 (x_draw_image_glyph_string): Adapt to change of image margins.
1699 1671
1700 * w32.c (init_environment, sys_shutdown, sys_pipe): Remove unused 1672 * w32.c (init_environment, sys_shutdown, sys_pipe): Remove unused
1701 variables. 1673 variables.
1702 1674
1727 (lookup_image): If `:margin MARGIN' is specified, and MARGIN is a 1699 (lookup_image): If `:margin MARGIN' is specified, and MARGIN is a
1728 pair of integers `(X . Y)', use X for the horizontal and Y for the 1700 pair of integers `(X . Y)', use X for the horizontal and Y for the
1729 vertical margin. 1701 vertical margin.
1730 (IMAGE_POSITIVE_INTEGER_VALUE_OR_PAIR): New enumerator. 1702 (IMAGE_POSITIVE_INTEGER_VALUE_OR_PAIR): New enumerator.
1731 (parse_image_spec): Check it. 1703 (parse_image_spec): Check it.
1732 (xbm_format, xpm_format, pbm_format, png_format, jpeg_format) 1704 (xbm_format, xpm_format, pbm_format, png_format, jpeg_format)
1733 (tiff_format, gif_format, gs_format): Use 1705 (tiff_format, gif_format, gs_format):
1734 IMAGE_POSITIVE_INTEGER_VALUE_OR_PAIR for :margin. 1706 Use IMAGE_POSITIVE_INTEGER_VALUE_OR_PAIR for :margin.
1735 1707
1736 * xterm.c (x_produce_image_glyph, x_draw_image_foreground) 1708 * xterm.c (x_produce_image_glyph, x_draw_image_foreground)
1737 (x_draw_image_relief, x_draw_image_foreground_1) 1709 (x_draw_image_relief, x_draw_image_foreground_1)
1738 (x_draw_image_glyph_string): Adapt to the change of image margins. 1710 (x_draw_image_glyph_string): Adapt to the change of image margins.
1739 1711
1740 * dispextern.h (struct image): Replace member `margin' with 1712 * dispextern.h (struct image): Replace member `margin' with
1741 `hmargin' and `vmargin'. 1713 `hmargin' and `vmargin'.
1742 1714
1769 (x_handle_selection_request): Set it. 1741 (x_handle_selection_request): Set it.
1770 (x_selection_request_lisp_error): Don't call 1742 (x_selection_request_lisp_error): Don't call
1771 x_decline_selection_request if selection request's display has 1743 x_decline_selection_request if selection request's display has
1772 been closed. 1744 been closed.
1773 1745
1774 * xfaces.c (x_free_colors, x_free_dpy_colors) [DEBUG_X_COLORS]: Do 1746 * xfaces.c (x_free_colors, x_free_dpy_colors) [DEBUG_X_COLORS]:
1775 the unregister_colors before calling XFreeColors. 1747 Do the unregister_colors before calling XFreeColors.
1776 1748
1777 2001-01-10 Dave Love <fx@gnu.org> 1749 2001-01-10 Dave Love <fx@gnu.org>
1778 1750
1779 * Makefile.in (${etc}DOC): Depend on ${shortlisp} and 1751 * Makefile.in (${etc}DOC): Depend on ${shortlisp} and
1780 ${SOME_MACHINE_LISP}, not ${lisp}. 1752 ${SOME_MACHINE_LISP}, not ${lisp}.
1781 1753
1782 2001-01-10 Gerd Moellmann <gerd@gnu.org> 1754 2001-01-10 Gerd Moellmann <gerd@gnu.org>
1783 1755
1784 * xdisp.c (display_line): On ttys, produce more than one 1756 * xdisp.c (display_line): On ttys, produce more than one truncation
1785 truncation glyph for multi-column characters that don't fit on the 1757 glyph for multi-column characters that don't fit on the line.
1786 line.
1787 1758
1788 * xselect.c (x_reply_selection_request): Add a comment. 1759 * xselect.c (x_reply_selection_request): Add a comment.
1789 1760
1790 * xfns.c (Fx_backspace_delete_keys_p): Use XkbGetMap and 1761 * xfns.c (Fx_backspace_delete_keys_p): Use XkbGetMap and
1791 XkbGetNames instead of XkbGetKeyboard. 1762 XkbGetNames instead of XkbGetKeyboard.
1794 1765
1795 * sysdep.c (random): Revert the declaration. 1766 * sysdep.c (random): Revert the declaration.
1796 1767
1797 2001-01-09 Gerd Moellmann <gerd@gnu.org> 1768 2001-01-09 Gerd Moellmann <gerd@gnu.org>
1798 1769
1799 * lisp.h (STRING_BYTES) [GC_CHECK_STRING_BYTES]: Call 1770 * lisp.h (STRING_BYTES) [GC_CHECK_STRING_BYTES]:
1800 function string_bytes. 1771 Call function string_bytes.
1801 (GC_CHECK_STRING_BYTES): Moved here from alloc.c. 1772 (GC_CHECK_STRING_BYTES): Moved here from alloc.c.
1802 1773
1803 * alloc.c (CHECK_STRING_BYTES) [GC_CHECK_STRING_BYTES]: New macro. 1774 * alloc.c (CHECK_STRING_BYTES) [GC_CHECK_STRING_BYTES]: New macro.
1804 (check_sblock, string_bytes) [GC_CHECK_STRING_BYTES]: New functions. 1775 (check_sblock, string_bytes) [GC_CHECK_STRING_BYTES]: New functions.
1805 (check_string_bytes) [GC_CHECK_STRING_BYTES]: Add parameter ALL_P. 1776 (check_string_bytes) [GC_CHECK_STRING_BYTES]: Add parameter ALL_P.
1861 * sysdep.c: Don't prototype srandom; it takes an unsigned argument 1832 * sysdep.c: Don't prototype srandom; it takes an unsigned argument
1862 on some systems, and an unsigned long on others, like FreeBSD 4.1. 1833 on some systems, and an unsigned long on others, like FreeBSD 4.1.
1863 1834
1864 2001-01-04 Gerd Moellmann <gerd@gnu.org> 1835 2001-01-04 Gerd Moellmann <gerd@gnu.org>
1865 1836
1866 * xterm.c (clear_mouse_face): Don't return if tip_frame is 1837 * xterm.c (clear_mouse_face): Don't return if tip_frame is non-nil.
1867 non-nil.
1868 1838
1869 * xfns.c (x_create_tip_frame): Preserve the value of 1839 * xfns.c (x_create_tip_frame): Preserve the value of
1870 face_change_count around the creation of the tip frame. 1840 face_change_count around the creation of the tip frame.
1871 1841
1872 * xfns.c (last_show_tip_args): New variable. 1842 * xfns.c (last_show_tip_args): New variable.
1873 (compute_tip_xy): New function. 1843 (compute_tip_xy): New function.
1874 (Fx_show_tip): Reuse an existing tip frame, if possible. 1844 (Fx_show_tip): Reuse an existing tip frame, if possible.
1875 (syms_of_xfns): Initialize and staticpro last_show_tip_args. 1845 (syms_of_xfns): Initialize and staticpro last_show_tip_args.
1876 1846
1918 1888
1919 * window.c (Fwindow_end): Doc fix. 1889 * window.c (Fwindow_end): Doc fix.
1920 1890
1921 2001-01-03 Dave Love <fx@gnu.org> 1891 2001-01-03 Dave Love <fx@gnu.org>
1922 1892
1923 * dired.c (Ffile_attributes): Fix last change, removing BSD4_3 1893 * dired.c (Ffile_attributes): Fix last change, removing BSD4_3 kluge.
1924 kluge.
1925 1894
1926 2001-01-03 Gerd Moellmann <gerd@gnu.org> 1895 2001-01-03 Gerd Moellmann <gerd@gnu.org>
1927 1896
1928 * xdisp.c (try_window_reusing_current_matrix): Fix bug setting 1897 * xdisp.c (try_window_reusing_current_matrix): Fix bug setting
1929 the enabled_p flag of the glyph row at window_end_vpos to 0. 1898 the enabled_p flag of the glyph row at window_end_vpos to 0.
1943 * frame.c (make_terminal_frame) [WINDOWSNT]: Make terminal frames 1912 * frame.c (make_terminal_frame) [WINDOWSNT]: Make terminal frames
1944 use output_w32_console method. 1913 use output_w32_console method.
1945 (Qw32_console): New Lisp_Object. 1914 (Qw32_console): New Lisp_Object.
1946 (Fframep): Return it. 1915 (Fframep): Return it.
1947 (syms_of_frame): Init it. 1916 (syms_of_frame): Init it.
1948 (Fframe_parameters): Report w32console as font for w32_console 1917 (Fframe_parameters): Report w32console as font for w32_console frames.
1949 frames.
1950 1918
1951 * xfaces.c (realize_default_face): Set face foreground and 1919 * xfaces.c (realize_default_face): Set face foreground and
1952 background to unspecified for w32_console frames. 1920 background to unspecified for w32_console frames.
1953 (realize_face): Realize face cache for w32_console frames. 1921 (realize_face): Realize face cache for w32_console frames.
1954 (realize_tty_face): Accept w32_console frames. 1922 (realize_tty_face): Accept w32_console frames.
1955 1923
1956 * xdisp.c (handle_single_display_prop): Return if frame is 1924 * xdisp.c (handle_single_display_prop): Return if frame is w32_console.
1957 w32_console.
1958 (init_iterator) [WINDOWSNT]: Initialize frame face cache if 1925 (init_iterator) [WINDOWSNT]: Initialize frame face cache if
1959 necessary, even if running interactively. 1926 necessary, even if running interactively.
1960 1927
1961 * dispnew.c (Fredraw_frame): Call set_terminal_modes for 1928 * dispnew.c (Fredraw_frame): Call set_terminal_modes for
1962 w32_console frames. 1929 w32_console frames.
1963 1930
1964 * w32term.c (x_update_begin): 1931 * w32term.c (x_update_begin):
1965 (x_update_end): 1932 (x_update_end):
1966 (x_clear_frame): 1933 (x_clear_frame):
1967 (x_ins_del_lines): 1934 (x_ins_del_lines):
1968 (x_change_line_highlight): 1935 (x_change_line_highlight):
1969 (x_delete_glyphs): 1936 (x_delete_glyphs):
1970 (w32_ring_bell): 1937 (w32_ring_bell):
1971 (x_update_begin): 1938 (x_update_begin):
1972 (x_update_end): 1939 (x_update_end):
1973 (w32_reassert_line_highlight): 1940 (w32_reassert_line_highlight):
1974 (w32_frame_rehighlight): 1941 (w32_frame_rehighlight):
1975 (w32_frame_raise_lower): Do nothing if not w32 frame. 1942 (w32_frame_raise_lower): Do nothing if not w32 frame.
1976 1943
1977 * w32xfns.c (get_frame_dc): Abort if called on a non-w32 frame. 1944 * w32xfns.c (get_frame_dc): Abort if called on a non-w32 frame.
1978 1945
1979 * w32fns.c (Fx_display_color_cells): Determine correct value, when 1946 * w32fns.c (Fx_display_color_cells): Determine correct value, when
1983 2001-01-02 Gerd Moellmann <gerd@gnu.org> 1950 2001-01-02 Gerd Moellmann <gerd@gnu.org>
1984 1951
1985 * window.c (Frecenter): Handle centering in graphical frames 1952 * window.c (Frecenter): Handle centering in graphical frames
1986 specially. Centering on the basis of line counts doesn't work 1953 specially. Centering on the basis of line counts doesn't work
1987 reliably with variable-height lines. 1954 reliably with variable-height lines.
1988 1955
1989 2001-01-02 Eli Zaretskii <eliz@is.elta.co.il> 1956 2001-01-02 Eli Zaretskii <eliz@is.elta.co.il>
1990 1957
1991 * widget.c (EmacsFrameSetCharSize): Remove unused variables `ac' 1958 * widget.c (EmacsFrameSetCharSize): Remove unused variables `ac'
1992 and al[]. 1959 and al[].
1993 1960
1994 * composite.c (run_composition_function): Remove unused variable 1961 * composite.c (run_composition_function): Remove unused var `val'.
1995 `val'.
1996 (update_compositions): Remove unused variable `hook'. 1962 (update_compositions): Remove unused variable `hook'.
1997 1963
1998 * intervals.c (get_local_map): Remove unused variable `tem'. 1964 * intervals.c (get_local_map): Remove unused variable `tem'.
1999 1965
2000 * doprnt.c (doprnt1): Remove unused variable `size'. 1966 * doprnt.c (doprnt1): Remove unused variable `size'.
2003 (Fdelete): Remove unused variable `size'. 1969 (Fdelete): Remove unused variable `size'.
2004 1970
2005 * editfns.c (Ftranspose_regions): Remove unused variables `gcpro1' 1971 * editfns.c (Ftranspose_regions): Remove unused variables `gcpro1'
2006 and `gcpro2'. 1972 and `gcpro2'.
2007 1973
2008 * doc.c (Fsnarf_documentation): Remove unused variables `fun' and 1974 * doc.c (Fsnarf_documentation): Remove unused vars `fun' and `tem'.
2009 `tem'.
2010 1975
2011 * data.c (find_symbol_value): Remove extra 3rd argument in the 1976 * data.c (find_symbol_value): Remove extra 3rd argument in the
2012 call to swap_in_symval_forwarding. 1977 call to swap_in_symval_forwarding.
2013 1978
2014 * undo.c (Fprimitive_undo): Remove unused block-scope variable 1979 * undo.c (Fprimitive_undo): Remove unused block-scope variable `end'.
2015 `end'.
2016 1980
2017 * search.c (shrink_regexp_cache): Remove unused variable `cpp'. 1981 * search.c (shrink_regexp_cache): Remove unused variable `cpp'.
2018 (trivial_regexp_p): Remove unused variable `c'. 1982 (trivial_regexp_p): Remove unused variable `c'.
2019 (boyer_moore): Remove unused variable `k'. 1983 (boyer_moore): Remove unused variable `k'.
2020 1984
2023 1987
2024 * casefiddle.c (casify_object): Remove unused variable `tolen'. 1988 * casefiddle.c (casify_object): Remove unused variable `tolen'.
2025 1989
2026 * dired.c (directory_files_internal): Fix a typo in a comment. 1990 * dired.c (directory_files_internal): Fix a typo in a comment.
2027 Remove an unused variable `handler'. 1991 Remove an unused variable `handler'.
2028 (file_name_completion): Remove unused function-scope variable 1992 (file_name_completion): Remove unused function-scope variable `dp'.
2029 `dp'.
2030 (Ffile_attributes) <dirname, sdir>: Make declarations conditioned 1993 (Ffile_attributes) <dirname, sdir>: Make declarations conditioned
2031 on BSD4_2. 1994 on BSD4_2.
2032 1995
2033 * fileio.c (e_write): Remove unused variable 1996 * fileio.c (e_write): Remove unused variable `require_encoding_p'.
2034 `require_encoding_p'.
2035 1997
2036 * marker.c (Fmarker_position): Remove unused variables `pos', `i', 1998 * marker.c (Fmarker_position): Remove unused variables `pos', `i',
2037 and `buf'. 1999 and `buf'.
2038 (Fmarker_insertion_type): Remove unused variable `buf'. 2000 (Fmarker_insertion_type): Remove unused variable `buf'.
2039 2001
2040 * insdel.c (make_gap): Remove unused variable `result'. 2002 * insdel.c (make_gap): Remove unused variable `result'.
2041 2003
2042 * keyboard.c (record_char): Remove unused function-scope variable 2004 * keyboard.c (record_char): Remove unused function-scope var `help'.
2043 `help'.
2044 (kbd_buffer_get_event): Remove unused block-scope variable `idx'. 2005 (kbd_buffer_get_event): Remove unused block-scope variable `idx'.
2045 (menu_bar_items): Remove unused function-scope variable `tem'. 2006 (menu_bar_items): Remove unused function-scope variable `tem'.
2046 2007
2047 * fontset.c (fontset_ref): Remove unused variable `i'. 2008 * fontset.c (fontset_ref): Remove unused variable `i'.
2048 (fontset_set): Remove unused variables `j' and `tmp'. 2009 (fontset_set): Remove unused variables `j' and `tmp'.
2049 (make_fontset): Remove unused variables `i', `j', `elt' and 2010 (make_fontset): Remove unused variables `i', `j', `elt' and `base_elt'.
2050 `base_elt'.
2051 (make_fontset_for_ascii_face): Remove unused variable `name'. 2011 (make_fontset_for_ascii_face): Remove unused variable `name'.
2052 (fs_load_font): Remove unused variable `font_idx'. 2012 (fs_load_font): Remove unused variable `font_idx'.
2053 (fs_query_fontset): Remove unused function-local variable 2013 (fs_query_fontset): Remove unused function-local variable `fontset'.
2054 `fontset'.
2055 (list_fontsets): Remove unused variable `tail'. 2014 (list_fontsets): Remove unused variable `tail'.
2056 (Fnew_fontset): Remove unused variables `family' and `registry'. 2015 (Fnew_fontset): Remove unused variables `family' and `registry'.
2057 (accumulate_font_info): Remove unused variable `tmp'. 2016 (accumulate_font_info): Remove unused variable `tmp'.
2058 (Ffontset_font): Remove unused variable `id'. 2017 (Ffontset_font): Remove unused variable `id'.
2059 (syms_of_fontset): Remove unused variable `i'. 2018 (syms_of_fontset): Remove unused variable `i'.
2064 (xbm_load): Remove unused variables `bitmap_data', `height', and 2023 (xbm_load): Remove unused variables `bitmap_data', `height', and
2065 `width'. Remove function-local variable `i', leave the 2024 `width'. Remove function-local variable `i', leave the
2066 block-local one. 2025 block-local one.
2067 (gif_load): Remove unused variable `inc'. 2026 (gif_load): Remove unused variable `inc'.
2068 2027
2069 * xterm.c (XTread_socket): Remove unused variables `p' and 2028 * xterm.c (XTread_socket): Remove unused variables `p' and `pend'.
2070 `pend'.
2071 (XTread_socket) <LeaveNotify>: Remove unused variable `frame', 2029 (XTread_socket) <LeaveNotify>: Remove unused variable `frame',
2072 leave only the one in the inner block. 2030 leave only the one in the inner block.
2073 2031
2074 * xfaces.c (face_fontset, realize_default_face): Remove unused 2032 * xfaces.c (face_fontset, realize_default_face): Remove unused
2075 variable `fontset'. 2033 variable `fontset'.
2079 2037
2080 * ccl.c (Fccl_execute): Cast ccl_driver parameters to `unsigned 2038 * ccl.c (Fccl_execute): Cast ccl_driver parameters to `unsigned
2081 char *' instead of `char *'. 2039 char *' instead of `char *'.
2082 2040
2083 * category.c (Fcategory_docstring): Remove unused variable `doc'. 2041 * category.c (Fcategory_docstring): Remove unused variable `doc'.
2084 (Fget_unused_category): Remove unused variable 2042 (Fget_unused_category): Remove unused variable `docstring_vector'.
2085 `docstring_vector'.
2086 (Fchar_category_set): Remove unused variables `val', `charset', 2043 (Fchar_category_set): Remove unused variables `val', `charset',
2087 `c1' and `c2'. 2044 `c1' and `c2'.
2088 2045
2089 * coding.c (detect_coding_iso2022, setup_coding_system): Remove 2046 * coding.c (detect_coding_iso2022, setup_coding_system):
2090 unused variable `i'. 2047 Remove unused variable `i'.
2091 (detect_coding_mask): Remove unused variable `idx'. 2048 (detect_coding_mask): Remove unused variable `idx'.
2092 (detect_coding): Remove unused variable `i'. 2049 (detect_coding): Remove unused variable `i'.
2093 (ccl_coding_driver): Remove unused variable `result'. 2050 (ccl_coding_driver): Remove unused variable `result'.
2094 (run_pre_post_conversion_on_str): Remove unused variable `prev'. 2051 (run_pre_post_conversion_on_str): Remove unused variable `prev'.
2095 (decode_coding_string): Remove unused variables `to' and 2052 (decode_coding_string): Remove unused variables `to' and `gcpro1'.
2096 `gcpro1'.
2097 (encode_coding_string): Remove unused variables `gcpro1' and 2053 (encode_coding_string): Remove unused variables `gcpro1' and
2098 `saved_coding_symbol'. 2054 `saved_coding_symbol'.
2099 (Ffind_coding_systems_region_internal): Remove function-local 2055 (Ffind_coding_systems_region_internal): Remove function-local
2100 variable args[], leave only the block-local one. 2056 variable args[], leave only the block-local one.
2101 (code_convert_region1): Remove unused variable `len'. 2057 (code_convert_region1): Remove unused variable `len'.
2112 enum display_element_type. 2068 enum display_element_type.
2113 2069
2114 2001-01-02 Gerd Moellmann <gerd@gnu.org> 2070 2001-01-02 Gerd Moellmann <gerd@gnu.org>
2115 2071
2116 * xterm.c (x_connection_closed): Catch X errors around all 2072 * xterm.c (x_connection_closed): Catch X errors around all
2117 statements that call X. Save away the error message in a local 2073 statements that call X. Save away the error message in a local copy.
2118 copy. 2074
2119
2120 * xterm.c (x_connection_closed): Set handling_signal to 0 at 2075 * xterm.c (x_connection_closed): Set handling_signal to 0 at
2121 the start. 2076 the start.
2122 2077
2123 * xdisp.c (pos_visible_p): Take into account that CHARPOS maybe 2078 * xdisp.c (pos_visible_p): Take into account that CHARPOS maybe
2124 in or at the start of invisible text. 2079 in or at the start of invisible text.
2130 * w32fns.c (x_figure_window_size): Do not allow new_height and 2085 * w32fns.c (x_figure_window_size): Do not allow new_height and
2131 new_width of frame to override specified values. 2086 new_width of frame to override specified values.
2132 2087
2133 2000-12-30 Kenichi Handa <handa@etl.go.jp> 2088 2000-12-30 Kenichi Handa <handa@etl.go.jp>
2134 2089
2135 * composite.c (find_composition): Fix a code for searching 2090 * composite.c (find_composition): Fix a code for searching backward.
2136 backward.
2137 2091
2138 2000-12-29 Gerd Moellmann <gerd@gnu.org> 2092 2000-12-29 Gerd Moellmann <gerd@gnu.org>
2139 2093
2140 * dispnew.c (check_current_matrix_flags) [GLYPH_DEBUG]: New 2094 * dispnew.c (check_current_matrix_flags) [GLYPH_DEBUG]: New function.
2141 function.
2142 (update_window) [GLYPH_DEBUG]: Call it. 2095 (update_window) [GLYPH_DEBUG]: Call it.
2143 (scrolling_window): Prevent including current rows which are below 2096 (scrolling_window): Prevent including current rows which are below
2144 what's displayed in the window. 2097 what's displayed in the window.
2145 2098
2146 * xdisp.c (try_window_reusing_current_matrix) 2099 * xdisp.c (try_window_reusing_current_matrix)
2147 <new start <= old start>: Disable rows in the current matrix 2100 <new start <= old start>: Disable rows in the current matrix
2148 which are below the window after scrolling. 2101 which are below the window after scrolling.
2149 2102
2150 * xdisp.c (move_it_by_lines): Don't do optimizations if NEED_Y_P 2103 * xdisp.c (move_it_by_lines): Don't do optimizations if NEED_Y_P
2151 is zero. It's not worth the complexity. 2104 is zero. It's not worth the complexity.
2152 (invisible_text_between_p): Put in #if 0 because unused. 2105 (invisible_text_between_p): Put in #if 0 because unused.
2153 2106
2154 2000-12-28 Gerd Moellmann <gerd@gnu.org> 2107 2000-12-28 Gerd Moellmann <gerd@gnu.org>
2180 * ccl.c (CCL_WRITE_CHAR): Check variable `extra_bytes'. 2133 * ccl.c (CCL_WRITE_CHAR): Check variable `extra_bytes'.
2181 (ccl_driver): New local variable `extra_bytes'. 2134 (ccl_driver): New local variable `extra_bytes'.
2182 2135
2183 * ccl.h (struct ccl_spec): New member eight_bit_carryover. 2136 * ccl.h (struct ccl_spec): New member eight_bit_carryover.
2184 2137
2185 * coding.c (setup_coding_system): Initialize 2138 * coding.c (setup_coding_system):
2186 coding->spec.ccl.eight_bit_carryover. 2139 Initialize coding->spec.ccl.eight_bit_carryover.
2187 (ccl_coding_driver): Pay attention to carried over 8-bit bytes. 2140 (ccl_coding_driver): Pay attention to carried over 8-bit bytes.
2188 2141
2189 2000-12-28 Kenichi Handa <handa@etl.go.jp> 2142 2000-12-28 Kenichi Handa <handa@etl.go.jp>
2190 2143
2191 * coding.c (SAFE_ONE_MORE_BYTE): New macro. 2144 * coding.c (SAFE_ONE_MORE_BYTE): New macro.
2193 (DECODE_EMACS_MULE_COMPOSITION_RULE): New macro. 2146 (DECODE_EMACS_MULE_COMPOSITION_RULE): New macro.
2194 (decode_composition_emacs_mule): New function. 2147 (decode_composition_emacs_mule): New function.
2195 (decode_coding_emacs_mule): Decode composition sequence by calling 2148 (decode_coding_emacs_mule): Decode composition sequence by calling
2196 decode_composition_emacs_mule. 2149 decode_composition_emacs_mule.
2197 (ENCODE_COMPOSITION_EMACS_MULE): New macro. 2150 (ENCODE_COMPOSITION_EMACS_MULE): New macro.
2198 (encode_coding_emacs_mule): Changed from macro to function. If 2151 (encode_coding_emacs_mule): Changed from macro to function.
2199 a text contains compositions, encode them correctly. 2152 If a text contains compositions, encode them correctly.
2200 (setup_coding_system): Set coding->commong_flags for emacs-mule so 2153 (setup_coding_system): Set coding->commong_flags for emacs-mule so
2201 that decoding and encoding are required. 2154 that decoding and encoding are required.
2202 2155
2203 2000-12-27 Gerd Moellmann <gerd@gnu.org> 2156 2000-12-27 Gerd Moellmann <gerd@gnu.org>
2204 2157
2218 (Vx_toolkit_scroll_bars): Renamed from x_toolkit_scroll_bars_p. 2171 (Vx_toolkit_scroll_bars): Renamed from x_toolkit_scroll_bars_p.
2219 2172
2220 * w32term.c (syms_of_xterm): DEFVAR_LISP x-toolkit-scroll-bars 2173 * w32term.c (syms_of_xterm): DEFVAR_LISP x-toolkit-scroll-bars
2221 instead of x-toolkit-scroll-bars-p. 2174 instead of x-toolkit-scroll-bars-p.
2222 (Vx_toolkit_scroll_bars): Renamed from x_toolkit_scroll_bars_p. 2175 (Vx_toolkit_scroll_bars): Renamed from x_toolkit_scroll_bars_p.
2223 2176
2224 * dispnew.c (struct redisplay_history) [GLYPH_DEBUG]: New. 2177 * dispnew.c (struct redisplay_history) [GLYPH_DEBUG]: New.
2225 (REDISPLAY_HISTORY_SIZE) [GLYPH_DEBUG]: New macro. 2178 (REDISPLAY_HISTORY_SIZE) [GLYPH_DEBUG]: New macro.
2226 (redisplay_history, history_idx, history_tick) [GLYPH_DEBUG]: New 2179 (redisplay_history, history_idx, history_tick) [GLYPH_DEBUG]:
2227 variables. 2180 New variables.
2228 (add_window_display_history, add_frame_display_history) 2181 (add_window_display_history, add_frame_display_history)
2229 (Fdump_redisplay_history) [GLYPH_DEBUG]: New functions. 2182 (Fdump_redisplay_history) [GLYPH_DEBUG]: New functions.
2230 (build_frame_matrix_from_leaf_window): Remove unused code. 2183 (build_frame_matrix_from_leaf_window): Remove unused code.
2231 (build_frame_matrix_from_leaf_window) [GLYPH_DEBUG]: Add to 2184 (build_frame_matrix_from_leaf_window) [GLYPH_DEBUG]: Add to
2232 redisplay history. 2185 redisplay history.
2233 (update_frame) [GLYPH_DEBUG]: Add to redisplay history. 2186 (update_frame) [GLYPH_DEBUG]: Add to redisplay history.
2272 2000-12-22 Gerd Moellmann <gerd@gnu.org> 2225 2000-12-22 Gerd Moellmann <gerd@gnu.org>
2273 2226
2274 * window.c (size_window): When setting the window's too_small_ok 2227 * window.c (size_window): When setting the window's too_small_ok
2275 flag, compare old size with minimum size depending on WIDTH_P, 2228 flag, compare old size with minimum size depending on WIDTH_P,
2276 don't compare with window_min_width. 2229 don't compare with window_min_width.
2277 2230
2278 * window.c (delete_window): Simplify somewhat. 2231 * window.c (delete_window): Simplify somewhat.
2279 (Fset_window_configuration): Don't SET_FRAME_GARBAGED after 2232 (Fset_window_configuration): Don't SET_FRAME_GARBAGED after
2280 freeing window matrices. The flag windows_or_buffers_changed is 2233 freeing window matrices. The flag windows_or_buffers_changed is
2281 set, so the next redisplay will consider all windows; this should 2234 set, so the next redisplay will consider all windows; this should
2282 suffice. 2235 suffice.
2291 (CCL_READ_CHAR): Handle EOL conversion here. 2244 (CCL_READ_CHAR): Handle EOL conversion here.
2292 (ccl_driver) <CCL_ReadMultibyteChar2>: Likewise. 2245 (ccl_driver) <CCL_ReadMultibyteChar2>: Likewise.
2293 2246
2294 2000-12-21 Gerd Moellmann <gerd@gnu.org> 2247 2000-12-21 Gerd Moellmann <gerd@gnu.org>
2295 2248
2296 * xdisp.c (Fdump_glyph_row) [GLYPH_DEBUG]: Add optional arg 2249 * xdisp.c (Fdump_glyph_row) [GLYPH_DEBUG]: Add optional arg GLYPHS.
2297 GLYPHS.
2298 2250
2299 * dispextern.h (GLYPH_EQUAL_P): Also compare pixel widths, 2251 * dispextern.h (GLYPH_EQUAL_P): Also compare pixel widths,
2300 otherwise tabs of different size compare equal. 2252 otherwise tabs of different size compare equal.
2301 2253
2302 * callint.c (Fcall_interactively): Prevent a compiler warning. 2254 * callint.c (Fcall_interactively): Prevent a compiler warning.
2307 2259
2308 * lisp.h (Qinhibit_point_motion_hooks): Declare extern. 2260 * lisp.h (Qinhibit_point_motion_hooks): Declare extern.
2309 2261
2310 * undo.c (Fprimitive_undo): Bind `inhibit-point-motion-hooks' to t. 2262 * undo.c (Fprimitive_undo): Bind `inhibit-point-motion-hooks' to t.
2311 2263
2312 * window.c (delete_window, Fsplit_window) 2264 * window.c (delete_window, Fsplit_window)
2313 (Fset_window_configuration): Calls to ensure_frame_matrix removed. 2265 (Fset_window_configuration): Calls to ensure_frame_matrix removed.
2314 2266
2315 * dispextern.h (ensure_frame_matrix): Function declaration removed. 2267 * dispextern.h (ensure_frame_matrix): Function declaration removed.
2316 2268
2317 * dispnew.c (ensure_frame_matrix): Removed. 2269 * dispnew.c (ensure_frame_matrix): Removed.
2378 * keyboard.c (echo_prompt): Prevent a compiler warning. 2330 * keyboard.c (echo_prompt): Prevent a compiler warning.
2379 2331
2380 * xdisp.c (try_cursor_movement): Fix last change. The real 2332 * xdisp.c (try_cursor_movement): Fix last change. The real
2381 condition is that PT is at the end of the row, and should 2333 condition is that PT is at the end of the row, and should
2382 be displayed at the start of the next row. 2334 be displayed at the start of the next row.
2383 2335
2384 * xdisp.c (try_cursor_movement): If we end on a partially 2336 * xdisp.c (try_cursor_movement): If we end on a partially
2385 visible line, end we already decided to scroll, return -1. 2337 visible line, end we already decided to scroll, return -1.
2386 2338
2387 * dispextern.h (ensure_frame_matrix): Add prototype. 2339 * dispextern.h (ensure_frame_matrix): Add prototype.
2388 2340
2389 * window.c (delete_window, Fsplit_window) 2341 * window.c (delete_window, Fsplit_window)
2390 (Fset_window_configuration): Call ensure_frame_matrix. 2342 (Fset_window_configuration): Call ensure_frame_matrix.
2391 2343
2392 * dispnew.c (fake_current_matrices, ensure_frame_matrix): New 2344 * dispnew.c (fake_current_matrices, ensure_frame_matrix):
2393 functions. 2345 New functions.
2394 (adjust_frame_glyphs_for_frame_redisplay): If display has been 2346 (adjust_frame_glyphs_for_frame_redisplay): If display has been
2395 completed, call fake_current_matrices instead of marking frame 2347 completed, call fake_current_matrices instead of marking frame
2396 garbaged. 2348 garbaged.
2397 2349
2398 2000-12-20 Jason Rumney <jasonr@gnu.org> 2350 2000-12-20 Jason Rumney <jasonr@gnu.org>
2403 2355
2404 * fns.c (Frequire): Doc fix. 2356 * fns.c (Frequire): Doc fix.
2405 2357
2406 2000-12-19 Gerd Moellmann <gerd@gnu.org> 2358 2000-12-19 Gerd Moellmann <gerd@gnu.org>
2407 2359
2408 * window.c (window_scroll_pixel_based): Don't use 2360 * window.c (window_scroll_pixel_based): Don't use move_it_vertically.
2409 move_it_vertically.
2410 2361
2411 * dispnew.c (direct_output_for_insert): Fix check for mini-window 2362 * dispnew.c (direct_output_for_insert): Fix check for mini-window
2412 currently displaying a message. 2363 currently displaying a message.
2413 2364
2414 * bytecode.c (toplevel) [CHECK_FRAME_FONT]: Include frame.h and 2365 * bytecode.c (toplevel) [CHECK_FRAME_FONT]: Include frame.h and
2437 2388
2438 2000-12-18 Gerd Moellmann <gerd@gnu.org> 2389 2000-12-18 Gerd Moellmann <gerd@gnu.org>
2439 2390
2440 * xterm.c (x_connection_closed): Prevent being called recursively 2391 * xterm.c (x_connection_closed): Prevent being called recursively
2441 because of an error condition in XtCloseDisplay. 2392 because of an error condition in XtCloseDisplay.
2442 2393
2443 * xdisp.c (init_iterator): If noninteractive, and the frame's 2394 * xdisp.c (init_iterator): If noninteractive, and the frame's
2444 face cache is null, make one. 2395 face cache is null, make one.
2445 2396
2446 * xfns.c (show_busy_cursor): Check for live frames more 2397 * xfns.c (show_busy_cursor): Check for live frames more thoroughly.
2447 thoroughly.
2448 2398
2449 * process.c (wait_reading_process_input): Check for pending 2399 * process.c (wait_reading_process_input): Check for pending
2450 input when running timers. 2400 input when running timers.
2451 2401
2452 2000-12-18 Eli Zaretskii <eliz@is.elta.co.il> 2402 2000-12-18 Eli Zaretskii <eliz@is.elta.co.il>
2453 2403
2454 * msdos.c (IT_write_glyphs): Compute the glyph face from 2404 * msdos.c (IT_write_glyphs): Compute the glyph face from str->face_id.
2455 str->face_id.
2456 2405
2457 2000-12-18 Kenichi Handa <handa@etl.go.jp> 2406 2000-12-18 Kenichi Handa <handa@etl.go.jp>
2458 2407
2459 * process.c (read_process_output): Don't run a filter if the code 2408 * process.c (read_process_output): Don't run a filter if the code
2460 decoder produces nothing but carryover. 2409 decoder produces nothing but carryover.
2553 nothing to do. Bind inhibit-quit. 2502 nothing to do. Bind inhibit-quit.
2554 (tip_frame): Make it a Lisp_Object. 2503 (tip_frame): Make it a Lisp_Object.
2555 (x_create_tip_frame): Set tip_frame after it has been added to 2504 (x_create_tip_frame): Set tip_frame after it has been added to
2556 Vframe_list. 2505 Vframe_list.
2557 (Fx_show_tip): Don't set tip_frame here. 2506 (Fx_show_tip): Don't set tip_frame here.
2558 (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]: New 2507 (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]: New variables.
2559 variables.
2560 (unwind_create_frame, unwind_create_tip_frame): New functions. 2508 (unwind_create_frame, unwind_create_tip_frame): New functions.
2561 (Fx_create_frame, x_create_tip_frame): Handle errors signaled 2509 (Fx_create_frame, x_create_tip_frame): Handle errors signaled
2562 while a frame is only partially constructed. 2510 while a frame is only partially constructed.
2563 2511
2564 * w32term.c (clear_mouse_face): Treat tip_frame as a Lisp_Object. 2512 * w32term.c (clear_mouse_face): Treat tip_frame as a Lisp_Object.
2586 * lisp.h (detect_coding_system): Prototype adjusted. 2534 * lisp.h (detect_coding_system): Prototype adjusted.
2587 2535
2588 * coding.c (ONE_MORE_BYTE_CHECK_MULTIBYTE): New macro. 2536 * coding.c (ONE_MORE_BYTE_CHECK_MULTIBYTE): New macro.
2589 (detect_coding_emacs_mule, detect_coding_iso2022,) 2537 (detect_coding_emacs_mule, detect_coding_iso2022,)
2590 (detect_coding_sjis, detect_coding_big5, detect_coding_utf_8) 2538 (detect_coding_sjis, detect_coding_big5, detect_coding_utf_8)
2591 (detect_coding_utf_16, detect_coding_ccl): Make them static. New 2539 (detect_coding_utf_16, detect_coding_ccl): Make them static.
2592 argument MULTIBYTEP. Callers changed. 2540 New argument MULTIBYTEP. Callers changed.
2593 (detect_coding_mask, detect_coding_system): New argument 2541 (detect_coding_mask, detect_coding_system): New argument
2594 MULTIBYTEP. Callers changed. 2542 MULTIBYTEP. Callers changed.
2595 (decode_coding_string): Set coding->src_multibyte and 2543 (decode_coding_string): Set coding->src_multibyte and
2596 coding->dst_multibyte before calling detect_coding and detect_eol. 2544 coding->dst_multibyte before calling detect_coding and detect_eol.
2597 Update them after some coding system is detected. 2545 Update them after some coding system is detected.
2598 2546
2599 2000-12-13 Stefan Monnier <monnier@cs.yale.edu> 2547 2000-12-13 Stefan Monnier <monnier@cs.yale.edu>
2600 2548
2601 * keymap.c (get_keyelt): Only eval the filter if `autoload' is set. 2549 * keymap.c (get_keyelt): Only eval the filter if `autoload' is set.
2602 2550
2603 * keyboard.c (menu_bar_items, tool_bar_items): 2551 * keyboard.c (menu_bar_items, tool_bar_items):
2604 Set `autoload' when looking up `tool-bar' or `menu-bar' submap. 2552 Set `autoload' when looking up `tool-bar' or `menu-bar' submap.
2605 2553
2606 2000-12-13 Gerd Moellmann <gerd@gnu.org> 2554 2000-12-13 Gerd Moellmann <gerd@gnu.org>
2607 2555
2608 * xfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]: 2556 * xfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]:
2609 New variables. 2557 New variables.
2610 (unwind_create_frame, unwind_create_tip_frame): New functions. 2558 (unwind_create_frame, unwind_create_tip_frame): New functions.
2611 (Fx_create_frame, x_create_tip_frame): Handle errors signaled 2559 (Fx_create_frame, x_create_tip_frame): Handle errors signaled
2612 while a frame is only partially constructed. 2560 while a frame is only partially constructed.
2613 2561
2619 * dispnew.c (update_window): If do_mouse_tracking is non-nil, 2567 * dispnew.c (update_window): If do_mouse_tracking is non-nil,
2620 don't interrupt the update for pending input initially, i.e. 2568 don't interrupt the update for pending input initially, i.e.
2621 update at least some lines. 2569 update at least some lines.
2622 2570
2623 * keyboard.c (do_mouse_tracking): Make externally visible. 2571 * keyboard.c (do_mouse_tracking): Make externally visible.
2624 2572
2625 * xterm.c (x_term_init): Declare gray_bitmap_bits as `extern char *'. 2573 * xterm.c (x_term_init): Declare gray_bitmap_bits as `extern char *'.
2626 2574
2627 * xfns.c (gray_bitmap_bits): Declare `char *'. 2575 * xfns.c (gray_bitmap_bits): Declare `char *'.
2628 2576
2629 2000-12-12 Gerd Moellmann <gerd@gnu.org> 2577 2000-12-12 Gerd Moellmann <gerd@gnu.org>
2641 * window.h (Fset_window_point): Declare. 2589 * window.h (Fset_window_point): Declare.
2642 2590
2643 2000-12-12 Eli Zaretskii <eliz@is.elta.co.il> 2591 2000-12-12 Eli Zaretskii <eliz@is.elta.co.il>
2644 2592
2645 * msdos.c (fast_find_position): Don't overstep the last window row. 2593 * msdos.c (fast_find_position): Don't overstep the last window row.
2646 (IT_note_mouse_highlight): Initialize portion to -1. Remove 2594 (IT_note_mouse_highlight): Initialize portion to -1. Remove unused
2647 unused variable `area'. When looking for a row under (X,Y), give 2595 variable `area'. When looking for a row under (X,Y), give up if some
2648 up if some of the previous rows is not enabled. 2596 of the previous rows is not enabled.
2649 2597
2650 2000-12-12 Gerd Moellmann <gerd@gnu.org> 2598 2000-12-12 Gerd Moellmann <gerd@gnu.org>
2651 2599
2652 * window.c (Fset_window_point): If displaying cursors in windows 2600 * window.c (Fset_window_point): If displaying cursors in windows
2653 other than the selected window, make sure redisplay updates 2601 other than the selected window, make sure redisplay updates
2656 * dispextern.h (cursor_in_non_selected_windows): Declare extern. 2604 * dispextern.h (cursor_in_non_selected_windows): Declare extern.
2657 2605
2658 * buffer.c (Fkill_buffer): Don't Fset_buffer when testing if 2606 * buffer.c (Fkill_buffer): Don't Fset_buffer when testing if
2659 the buffer is the sole visible buffer when in the mini-buffer. 2607 the buffer is the sole visible buffer when in the mini-buffer.
2660 2608
2661 * xdisp.c (setup_echo_area_for_printing, with_echo_area_buffer): 2609 * xdisp.c (setup_echo_area_for_printing, with_echo_area_buffer):
2662 Bind `inhibit-read-only' to t. 2610 Bind `inhibit-read-only' to t.
2663 (unwind_with_echo_area_buffer): Use AREF. 2611 (unwind_with_echo_area_buffer): Use AREF.
2664 2612
2665 * xfns.c (Fx_hide_tip): Simplified. 2613 * xfns.c (Fx_hide_tip): Simplified.
2666 2614
2667 * s/freebsd.h, s/netbsd.h (GC_MARK_STACK): Use 2615 * s/freebsd.h, s/netbsd.h (GC_MARK_STACK): Use GC_MAKE_GCPROS_NOOPS
2668 GC_MAKE_GCPROS_NOOPS instead of `1'. 2616 instead of `1'.
2669 2617
2670 * s/gnu-linux.h (GC_MARK_STACK): Define as GC_MAKE_GCPROS_NOOPS. 2618 * s/gnu-linux.h (GC_MARK_STACK): Define as GC_MAKE_GCPROS_NOOPS.
2671 2619
2672 2000-12-11 Gerd Moellmann <gerd@gnu.org> 2620 2000-12-11 Gerd Moellmann <gerd@gnu.org>
2673 2621
2674 * xfns.c (Fx_hide_tip): Fix last change. 2622 * xfns.c (Fx_hide_tip): Fix last change.
2675 2623
2676 * xfns.c (Fx_hide_tip): Avoid unnecessary work when there's 2624 * xfns.c (Fx_hide_tip): Avoid unnecessary work when there's
2677 nothing to do. Bind inhibit-quit. 2625 nothing to do. Bind inhibit-quit.
2678 (tip_frame): Make it a Lisp_Object. 2626 (tip_frame): Make it a Lisp_Object.
2679 (x_create_tip_frame): Set tip_frame after it has been added to 2627 (x_create_tip_frame): Set tip_frame after it has been added to
2680 Vframe_list. 2628 Vframe_list.
2692 2640
2693 * xdisp.c (try_cursor_movement): Check update_mode_lines instead 2641 * xdisp.c (try_cursor_movement): Check update_mode_lines instead
2694 of the window's update_mode_line flag, since the former is set by 2642 of the window's update_mode_line flag, since the former is set by
2695 force-mode-line-update, not the latter. This makes 2643 force-mode-line-update, not the latter. This makes
2696 column-number-mode slightly faster. 2644 column-number-mode slightly faster.
2697 2645
2698 * xdisp.c (try_window_id) <all changes above window start>: 2646 * xdisp.c (try_window_id) <all changes above window start>:
2699 Set the cursor. 2647 Set the cursor.
2700 2648
2701 2000-12-11 Paul Eggert <eggert@twinsun.com> 2649 2000-12-11 Paul Eggert <eggert@twinsun.com>
2702 2650
2705 (_XOPEN_SOURCE): Remove; the large-file code no longer needs it. 2653 (_XOPEN_SOURCE): Remove; the large-file code no longer needs it.
2706 * lread.c (file_offset, file_tell): Depend on HAVE_FSEEKO, not 2654 * lread.c (file_offset, file_tell): Depend on HAVE_FSEEKO, not
2707 HAVE_FTELLO. 2655 HAVE_FTELLO.
2708 * s/hpux10.h (_FILE_OFFSET_BITS): Do not undef. 2656 * s/hpux10.h (_FILE_OFFSET_BITS): Do not undef.
2709 * s/isc3-0.h, s/osf5-0.h: Update comment about _XOPEN_SOURCE. 2657 * s/isc3-0.h, s/osf5-0.h: Update comment about _XOPEN_SOURCE.
2710 2658
2711 2000-12-11 Miles Bader <miles@gnu.org> 2659 2000-12-11 Miles Bader <miles@gnu.org>
2712 2660
2713 * window.c (displayed_window_lines): Don't round up when 2661 * window.c (displayed_window_lines): Don't round up when
2714 converting empty space at bottom to lines. 2662 converting empty space at bottom to lines.
2715 Handle non-newline-terminated final lines properly. 2663 Handle non-newline-terminated final lines properly.
2759 2707
2760 * alloc.c (gc_sweep): Add comment. 2708 * alloc.c (gc_sweep): Add comment.
2761 2709
2762 2000-12-07 Gerd Moellmann <gerd@gnu.org> 2710 2000-12-07 Gerd Moellmann <gerd@gnu.org>
2763 2711
2764 * sound.c (vox_configure): Change order of ioctls. Don't 2712 * sound.c (vox_configure): Change order of ioctls.
2765 set SNDCTL_DSP_SPEED from bps, don't set SNDCTL_DSP_SAMPLESIZE. 2713 Don't set SNDCTL_DSP_SPEED from bps, don't set SNDCTL_DSP_SAMPLESIZE.
2766 Ignore errors when changing volume. 2714 Ignore errors when changing volume.
2767 (vox_close): Don't reset the device. 2715 (vox_close): Don't reset the device.
2768 2716
2769 * process.c (read_process_output): Make sure the process marker's 2717 * process.c (read_process_output): Make sure the process marker's
2770 position is valid when the process buffer is changed in 2718 position is valid when the process buffer is changed in
2771 after-change functions. W3 does that. 2719 after-change functions. W3 does that.
2772 2720
2773 * xfns.c (x_free_gcs): New function. 2721 * xfns.c (x_free_gcs): New function.
2774 2722
2775 * xterm.h (x_free_gcs): Add prototype. 2723 * xterm.h (x_free_gcs): Add prototype.
2776 2724
2777 * widget.c (EmacsFrameDestroy): Call x_free_gcs instead of 2725 * widget.c (EmacsFrameDestroy): Call x_free_gcs instead of
2792 2740
2793 2000-12-06 Andrew Innes <andrewi@gnu.org> 2741 2000-12-06 Andrew Innes <andrewi@gnu.org>
2794 2742
2795 * w32term.h (CP_INVALID): Rename to CP_UNKNOWN. 2743 * w32term.h (CP_INVALID): Rename to CP_UNKNOWN.
2796 2744
2797 * w32fns.c (xlfd_charset_of_font): Don't overwrite fontname 2745 * w32fns.c (xlfd_charset_of_font): Don't overwrite fontname argument.
2798 argument.
2799 (w32_codepage_for_font): Rename CP_INVALID to CP_UNKNOWN. 2746 (w32_codepage_for_font): Rename CP_INVALID to CP_UNKNOWN.
2800 (w32_list_fonts): Don't choke if pattern doesn't specify a 2747 (w32_list_fonts): Don't choke if pattern doesn't specify a codepage.
2801 codepage.
2802 2748
2803 2000-12-06 Gerd Moellmann <gerd@gnu.org> 2749 2000-12-06 Gerd Moellmann <gerd@gnu.org>
2804 2750
2805 * alloc.c (gc_sweep): Prevent symbols read during loadup 2751 * alloc.c (gc_sweep): Prevent symbols read during loadup
2806 from being freed. 2752 from being freed.
2809 (handle_face_prop, face_before_or_after_it_pos): Use it 2755 (handle_face_prop, face_before_or_after_it_pos): Use it
2810 to determine the face ``under'' a string. Let strings inherit 2756 to determine the face ``under'' a string. Let strings inherit
2811 the face of the buffer under them. 2757 the face of the buffer under them.
2812 2758
2813 * xfaces.c (face_at_string_position): Update function comment. 2759 * xfaces.c (face_at_string_position): Update function comment.
2814 2760
2815 * dispnew.c (adjust_glyph_matrix): Don't reuse a window's current 2761 * dispnew.c (adjust_glyph_matrix): Don't reuse a window's current
2816 matrix if the window's left position has changed; we need to 2762 matrix if the window's left position has changed; we need to
2817 redraw it in this case. 2763 redraw it in this case.
2818 2764
2819 * dispextern.h (struct glyph_matrix): Add member window_left_x. 2765 * dispextern.h (struct glyph_matrix): Add member window_left_x.
2838 2784
2839 * window.c (Veven_window_heights): New variable. 2785 * window.c (Veven_window_heights): New variable.
2840 (syms_of_window): DEFVAR_LISP it. 2786 (syms_of_window): DEFVAR_LISP it.
2841 (Fdisplay_buffer): Check Veven_window_heights before evening the 2787 (Fdisplay_buffer): Check Veven_window_heights before evening the
2842 window heights. 2788 window heights.
2843 2789
2844 2000-12-06 Miles Bader <miles@gnu.org> 2790 2000-12-06 Miles Bader <miles@gnu.org>
2845 2791
2846 * xfaces.c (Finternal_set_lisp_face_attribute): If FRAME is `t', 2792 * xfaces.c (Finternal_set_lisp_face_attribute): If FRAME is `t',
2847 update `default-frame-alist' instead of setting no frame parameters. 2793 update `default-frame-alist' instead of setting no frame parameters.
2848 2794
2914 coding->category_idx. 2860 coding->category_idx.
2915 2861
2916 2000-12-04 Gerd Moellmann <gerd@gnu.org> 2862 2000-12-04 Gerd Moellmann <gerd@gnu.org>
2917 2863
2918 * xterm.c (PER_CHAR_METRIC): Removed because not used. 2864 * xterm.c (PER_CHAR_METRIC): Removed because not used.
2919 2865
2920 * xterm.c (expose_area): Pass x-coordinate relative to the exposed 2866 * xterm.c (expose_area): Pass x-coordinate relative to the exposed
2921 area to x_draw_glyphs instead of a window-relative coordinate. 2867 area to x_draw_glyphs instead of a window-relative coordinate.
2922 2868
2923 * fileio.c (auto_save_error): Add parameter ERROR. Show the 2869 * fileio.c (auto_save_error): Add parameter ERROR. Show the
2924 error in the message. 2870 error in the message.
2963 2909
2964 * coding.h (code_convert_string1): Declare. 2910 * coding.h (code_convert_string1): Declare.
2965 2911
2966 * fns.c (Fmd5): Pass lisp objects, not integers, to call3. 2912 * fns.c (Fmd5): Pass lisp objects, not integers, to call3.
2967 2913
2968 * lisp.h (Fmake_variable_buffer_local, Fbuffer_file_name): 2914 * lisp.h (Fmake_variable_buffer_local, Fbuffer_file_name): Declare.
2969 Declare.
2970 2915
2971 2000-12-02 Jason Rumney <jasonr@gnu.org> 2916 2000-12-02 Jason Rumney <jasonr@gnu.org>
2972 2917
2973 * w32term.c (w32_bdf_per_char_metric): Dereference pointer 2918 * w32term.c (w32_bdf_per_char_metric): Dereference pointer
2974 correctly for single byte character case. 2919 correctly for single byte character case.
2975 (w32_per_char_metric): Do not try to make any assumptions about 2920 (w32_per_char_metric): Do not try to make any assumptions about
2976 the metrics of BDF fonts. 2921 the metrics of BDF fonts.
2977 (x_estimate_mode_line_height): If `mode-line' face 2922 (x_estimate_mode_line_height): If `mode-line' face
2978 hasn't a font, use that of the frame, as drawing glyphs 2923 hasn't a font, use that of the frame, as drawing glyphs does.
2979 does.
2980 (note_mouse_highlight): Change the cursor shape on the vertical 2924 (note_mouse_highlight): Change the cursor shape on the vertical
2981 border between windows [not enabled]. 2925 border between windows [not enabled].
2982 2926
2983 * w32term.h (struct w32_output): Add member horizontal_drag_cursor. 2927 * w32term.h (struct w32_output): Add member horizontal_drag_cursor.
2984 2928
2996 2940
2997 * coding.h (Qwrite_region, Qcoding_system_error): Declare extern. 2941 * coding.h (Qwrite_region, Qcoding_system_error): Declare extern.
2998 2942
2999 2000-12-02 Eli Zaretskii <eliz@is.elta.co.il> 2943 2000-12-02 Eli Zaretskii <eliz@is.elta.co.il>
3000 2944
3001 * fileio.c (Fread_file_name) [DOS_NT]: Don't crash if homedir is 2945 * fileio.c (Fread_file_name) [DOS_NT]: Don't crash if homedir is NULL.
3002 NULL.
3003 2946
3004 2000-12-01 Gerd Moellmann <gerd@gnu.org> 2947 2000-12-01 Gerd Moellmann <gerd@gnu.org>
3005 2948
3006 * xterm.c (x_calc_absolute_position): Don't subtract menubar's 2949 * xterm.c (x_calc_absolute_position): Don't subtract menubar's
3007 height for YNegative. 2950 height for YNegative.
3022 * w32xfns.c (get_frame_dc): Avoid changing the palette on an 2965 * w32xfns.c (get_frame_dc): Avoid changing the palette on an
3023 invalid frame. 2966 invalid frame.
3024 2967
3025 2000-12-01 Gerd Moellmann <gerd@gnu.org> 2968 2000-12-01 Gerd Moellmann <gerd@gnu.org>
3026 2969
3027 * window.c (struct saved_window): Add members orig_top and 2970 * window.c (struct saved_window): Add members orig_top and orig_height.
3028 orig_height.
3029 (SAVED_WINDOW_VECTOR_SIZE): Increment to 16. 2971 (SAVED_WINDOW_VECTOR_SIZE): Increment to 16.
3030 (save_window_save, Fset_window_configuration): Save/restore 2972 (save_window_save, Fset_window_configuration): Save/restore
3031 window's orig_top and orig_height. 2973 window's orig_top and orig_height.
3032 2974
3033 2000-12-01 Jason Rumney <jasonr@gnu.org> 2975 2000-12-01 Jason Rumney <jasonr@gnu.org>
3068 * md5.h, md5.c: New files, taken from glibc. 3010 * md5.h, md5.c: New files, taken from glibc.
3069 3011
3070 * xmenu.c (popup_get_selection): Use xmalloc instead of malloc. 3012 * xmenu.c (popup_get_selection): Use xmalloc instead of malloc.
3071 3013
3072 * xterm.c (x_estimate_mode_line_height): If `mode-line' face 3014 * xterm.c (x_estimate_mode_line_height): If `mode-line' face
3073 hasn't a font, use that of the frame, as drawing glyphs 3015 hasn't a font, use that of the frame, as drawing glyphs does.
3074 does.
3075 3016
3076 2000-11-29 Stefan Monnier <monnier@cs.yale.edu> 3017 2000-11-29 Stefan Monnier <monnier@cs.yale.edu>
3077 3018
3078 * eval.c (Frun_hooks): Allow 0 arguments. 3019 * eval.c (Frun_hooks): Allow 0 arguments.
3079 3020
3111 (x_set_mouse_color): Create frame's horizontal_drag_cursor. 3052 (x_set_mouse_color): Create frame's horizontal_drag_cursor.
3112 3053
3113 * textprop.c (text_read_only): New function. 3054 * textprop.c (text_read_only): New function.
3114 (verify_interval_modification): Use it instead of signaling 3055 (verify_interval_modification): Use it instead of signaling
3115 `text-read-only'. This makes it easier to catch this error 3056 `text-read-only'. This makes it easier to catch this error
3116 with a breakpoint.: 3057 with a breakpoint.:
3117 3058
3118 * xdisp.c (forward_to_next_line_start): Check for newlines, 3059 * xdisp.c (forward_to_next_line_start): Check for newlines,
3119 not end of line, which includes CR. 3060 not end of line, which includes CR.
3120 3061
3121 2000-11-28 Kenichi Handa <handa@etl.go.jp> 3062 2000-11-28 Kenichi Handa <handa@etl.go.jp>
3122 3063
3123 * coding.c (Ffind_coding_systems_region_internal): Be sure to 3064 * coding.c (Ffind_coding_systems_region_internal): Be sure to
3129 if codepage is unicode. 3070 if codepage is unicode.
3130 3071
3131 2000-11-27 Gerd Moellmann <gerd@gnu.org> 3072 2000-11-27 Gerd Moellmann <gerd@gnu.org>
3132 3073
3133 * xdisp.c (forward_to_next_line_start): If already on a newline, 3074 * xdisp.c (forward_to_next_line_start): If already on a newline,
3134 just consume it to avoid unintended skipping over invisible text 3075 just consume it to avoid unintended skipping over invisible text below.
3135 below.
3136 3076
3137 * keyboard.c (lucid_event_type_list_p): Handle `help-echo', 3077 * keyboard.c (lucid_event_type_list_p): Handle `help-echo',
3138 `vertical-line', `mode-line' and `header-line' events. 3078 `vertical-line', `mode-line' and `header-line' events.
3139 3079
3140 * xdisp.c (try_window_id): Avoid starting to display in the middle 3080 * xdisp.c (try_window_id): Avoid starting to display in the middle
3147 * emacs.c (main) [macintosh]: Call syms_of_frame before calling 3087 * emacs.c (main) [macintosh]: Call syms_of_frame before calling
3148 init_window_once. 3088 init_window_once.
3149 3089
3150 2000-11-25 Jason Rumney <jasonr@gnu.org> 3090 2000-11-25 Jason Rumney <jasonr@gnu.org>
3151 3091
3152 * keyboard.c (make_lispy_event) [mouse_wheel, drag_n_drop]: Args 3092 * keyboard.c (make_lispy_event) [mouse_wheel, drag_n_drop]:
3153 to window_from_coordinates should be pixel coordinates. 3093 Args to window_from_coordinates should be pixel coordinates.
3154 3094
3155 * w32fns.c (x_to_w32_font): Do not filter out italic fonts, as new 3095 * w32fns.c (x_to_w32_font): Do not filter out italic fonts, as new
3156 redisplay handles them properly. 3096 redisplay handles them properly.
3157 3097
3158 2000-11-25 Miles Bader <miles@gnu.org> 3098 2000-11-25 Miles Bader <miles@gnu.org>
3215 * xterm.c (x_handle_tool_bar_click, note_tool_bar_highlight): 3155 * xterm.c (x_handle_tool_bar_click, note_tool_bar_highlight):
3216 Change references to members deleted from struct frame to use the 3156 Change references to members deleted from struct frame to use the
3217 new ones. 3157 new ones.
3218 3158
3219 * xdisp.c (update_tool_bar, build_desired_tool_bar_string): Change 3159 * xdisp.c (update_tool_bar, build_desired_tool_bar_string): Change
3220 references to members deleted from struct frame to use the new 3160 references to members deleted from struct frame to use the new ones.
3221 ones. 3161
3222 3162 * dispnew.c (update_frame): Do nothing with frame's tool bar items.
3223 * dispnew.c (update_frame): Do nothing with frame's tool bar
3224 items.
3225 3163
3226 * alloc.c (mark_object) <frame>: Mark tool bar items differently. 3164 * alloc.c (mark_object) <frame>: Mark tool bar items differently.
3227 3165
3228 * w32term.c (x_tool_bar_item, w32_handle_tool_bar_click) 3166 * w32term.c (x_tool_bar_item, w32_handle_tool_bar_click)
3229 (note_tool_bar_highlight): Change references to members deleted 3167 (note_tool_bar_highlight): Change references to members deleted
3262 the menu bar when the tooltip is unmapped. 3200 the menu bar when the tooltip is unmapped.
3263 3201
3264 * buffer.c (Fkill_buffer): Notice if the buffer to kill is the 3202 * buffer.c (Fkill_buffer): Notice if the buffer to kill is the
3265 sole visible buffer when we're currently in the mini-buffer, and 3203 sole visible buffer when we're currently in the mini-buffer, and
3266 give up if so. 3204 give up if so.
3267 3205
3268 2000-11-21 Jason Rumney <jasonr@gnu.org> 3206 2000-11-21 Jason Rumney <jasonr@gnu.org>
3269 3207
3270 * w32select.c (Fw32_set_clipboard_data): Save a copy of what is 3208 * w32select.c (Fw32_set_clipboard_data): Save a copy of what is
3271 put on the clipboard. 3209 put on the clipboard.
3272 (Fw32_get_clipboard_data): Compare data on clipboard with saved 3210 (Fw32_get_clipboard_data): Compare data on clipboard with saved
3273 copy of what Emacs last put there. If they are the same, do not 3211 copy of what Emacs last put there. If they are the same, do not
3274 use the clipboard copy to avoid losing data due to coding 3212 use the clipboard copy to avoid losing data due to coding conversions.
3275 conversions.
3276 3213
3277 2000-11-22 Miles Bader <miles@gnu.org> 3214 2000-11-22 Miles Bader <miles@gnu.org>
3278 3215
3279 * minibuf.c (Vminibuffer_prompt_properties): New variable. 3216 * minibuf.c (Vminibuffer_prompt_properties): New variable.
3280 (syms_of_minibuf): Initialize it. 3217 (syms_of_minibuf): Initialize it.
3281 (read_minibuf): Add properties from Vminibuffer_prompt_properties 3218 (read_minibuf): Add properties from Vminibuffer_prompt_properties
3282 to prompt, don't make read-only. 3219 to prompt, don't make read-only.
3283 3220
3284 2000-11-21 Gerd Moellmann <gerd@gnu.org> 3221 2000-11-21 Gerd Moellmann <gerd@gnu.org>
3285 3222
3286 * bytecode.c (Fbyte_code) <Bvarbind, Bunwind_protect>: Add 3223 * bytecode.c (Fbyte_code) <Bvarbind, Bunwind_protect>:
3287 BEFORE/AFTER_POTENTIAL_GC. 3224 Add BEFORE/AFTER_POTENTIAL_GC.
3288 3225
3289 * s/hpux10.h (_FILE_OFFSET_BITS): Undef. 3226 * s/hpux10.h (_FILE_OFFSET_BITS): Undef.
3290 3227
3291 * buffer.c (mmap_free_1): Avoid a compiler warning. 3228 * buffer.c (mmap_free_1): Avoid a compiler warning.
3292 3229
3297 * s/sol2-5.h: Move #undef USE_MMAP_FOR_BUFFERS out of #if 0 3234 * s/sol2-5.h: Move #undef USE_MMAP_FOR_BUFFERS out of #if 0
3298 ... #endif scope. 3235 ... #endif scope.
3299 3236
3300 2000-11-20 Gerd Moellmann <gerd@gnu.org> 3237 2000-11-20 Gerd Moellmann <gerd@gnu.org>
3301 3238
3302 * xfns.c (x_create_tip_frame): Use CWSaveUnder only if the 3239 * xfns.c (x_create_tip_frame): Use CWSaveUnder only if the
3303 screen supports it. 3240 screen supports it.
3304 3241
3305 * s/gnu-linux.h: Don't use `#cpu'. 3242 * s/gnu-linux.h: Don't use `#cpu'.
3306 3243
3307 * buffer.c (MAP_FAILED): Define it as `((void *) -1)' if it's 3244 * buffer.c (MAP_FAILED): Define it as `((void *) -1)' if it's
3308 not defined in mman.h. 3245 not defined in mman.h.
3309 3246
3310 * xterm.c (scroll_bar_windows, scroll_bar_windows_size): New 3247 * xterm.c (scroll_bar_windows, scroll_bar_windows_size): New variables.
3311 variables.
3312 (x_send_scroll_bar_event): Store the window in scroll_bar_windows 3248 (x_send_scroll_bar_event): Store the window in scroll_bar_windows
3313 and store an index in the XClientMessageEvent. Storing a 3249 and store an index in the XClientMessageEvent. Storing a
3314 Lisp_Object or pointer can fail on a 64 bit system, since X only 3250 Lisp_Object or pointer can fail on a 64 bit system, since X only
3315 transfers 32 bits. 3251 transfers 32 bits.
3316 (x_scroll_bar_to_input_event): Get the window from 3252 (x_scroll_bar_to_input_event): Get the window from scroll_bar_windows.
3317 scroll_bar_windows. 3253
3318
3319 2000-11-20 Dave Love <fx@gnu.org> 3254 2000-11-20 Dave Love <fx@gnu.org>
3320 3255
3321 * Makefile.in (LIBX): Reorder for -lX11 after -lXpm. 3256 * Makefile.in (LIBX): Reorder for -lX11 after -lXpm.
3322 3257
3323 2000-11-20 Gerd Moellmann <gerd@gnu.org> 3258 2000-11-20 Gerd Moellmann <gerd@gnu.org>
3356 (SCROLL_BAR_X_WIDGET): Get the widget via XtWindowToWidget. 3291 (SCROLL_BAR_X_WIDGET): Get the widget via XtWindowToWidget.
3357 Take the X display as additional argument. 3292 Take the X display as additional argument.
3358 (SET_SCROLL_BAR_X_WIDGET): Store the window of the widget, since 3293 (SET_SCROLL_BAR_X_WIDGET): Store the window of the widget, since
3359 `Widget' is a pointer type that's not easily stored in Lisp_Object 3294 `Widget' is a pointer type that's not easily stored in Lisp_Object
3360 form in a portable way. 3295 form in a portable way.
3361 3296
3362 * dispnew.c (update_text_area): Fix last change. 3297 * dispnew.c (update_text_area): Fix last change.
3363 3298
3364 2000-11-18 Gerd Moellmann <gerd@gnu.org> 3299 2000-11-18 Gerd Moellmann <gerd@gnu.org>
3365 3300
3366 * xdisp.c: Use BINDING_STACK_SIZE throughout. 3301 * xdisp.c: Use BINDING_STACK_SIZE throughout.
3405 differently. 3340 differently.
3406 3341
3407 2000-11-16 Gerd Moellmann <gerd@gnu.org> 3342 2000-11-16 Gerd Moellmann <gerd@gnu.org>
3408 3343
3409 * xdisp.c (pos_visible_p): Handle case that we reach ZV without 3344 * xdisp.c (pos_visible_p): Handle case that we reach ZV without
3410 knowing the line's height; use the default font's height in that 3345 knowing the line's height; use the default font's height in that case.
3411 case.
3412 3346
3413 * xfaces.c (weight_table): Add `demi' with the same meaning as 3347 * xfaces.c (weight_table): Add `demi' with the same meaning as
3414 `demibold'. 3348 `demibold'.
3415 3349
3416 2000-11-16 Kenichi Handa <handa@etl.go.jp> 3350 2000-11-16 Kenichi Handa <handa@etl.go.jp>
3463 * lisp.h (pos_visible_p): Change prototype. 3397 * lisp.h (pos_visible_p): Change prototype.
3464 3398
3465 * dispextern.h (CURRENT_MODE_LINE_HEIGHT) 3399 * dispextern.h (CURRENT_MODE_LINE_HEIGHT)
3466 (CURRENT_HEADER_LINE_HEIGHT): Look at current_mode_line_height 3400 (CURRENT_HEADER_LINE_HEIGHT): Look at current_mode_line_height
3467 and current_header_line_height first. 3401 and current_header_line_height first.
3468 (current_mode_line_height, current_header_line_height): Declare 3402 (current_mode_line_height, current_header_line_height):
3469 extern. 3403 Declare extern.
3470 3404
3471 2000-11-14 Miles Bader <miles@lsi.nec.co.jp> 3405 2000-11-14 Miles Bader <miles@lsi.nec.co.jp>
3472 3406
3473 * xterm.c (x_alloc_lighter_color): Use real brightness calculation. 3407 * xterm.c (x_alloc_lighter_color): Use real brightness calculation.
3474 Just use FACTOR/2 instead of HIGHLIGHT_COLOR_DARK_BOOST. 3408 Just use FACTOR/2 instead of HIGHLIGHT_COLOR_DARK_BOOST.
3535 (font_list_1): Renamed from font_list. 3469 (font_list_1): Renamed from font_list.
3536 (font_list): New function, trying alternative registries from 3470 (font_list): New function, trying alternative registries from
3537 Vface_alternative_font_registry_alist. 3471 Vface_alternative_font_registry_alist.
3538 (Finternal_set_alternative_font_registry_alist): New function. 3472 (Finternal_set_alternative_font_registry_alist): New function.
3539 (syms_of_xfaces): Initialize and Staticpro 3473 (syms_of_xfaces): Initialize and Staticpro
3540 Vface_alternative_font_registry_alist. Defsubr 3474 Vface_alternative_font_registry_alist.
3541 Finternal_set_alternative_font_registry_alist. 3475 Defsubr Finternal_set_alternative_font_registry_alist.
3542 3476
3543 2000-11-09 Ken Raeburn <raeburn@gnu.org> 3477 2000-11-09 Ken Raeburn <raeburn@gnu.org>
3544 3478
3545 * lisp.h (Flooking_at): Declare. 3479 * lisp.h (Flooking_at): Declare.
3546 3480
3547 2000-11-09 Gerd Moellmann <gerd@gnu.org> 3481 2000-11-09 Gerd Moellmann <gerd@gnu.org>
3548 3482
3549 * dired.c (directory_files_internal): Fix a braino. 3483 * dired.c (directory_files_internal): Fix a braino.
3550 3484
3551 * dired.c (directory_files_internal): Add missing GCPRO's. 3485 * dired.c (directory_files_internal): Add missing GCPRO's.
3552 Some cleanup. 3486 Some cleanup.
3553 3487
3554 2000-11-08 Gerd Moellmann <gerd@gnu.org> 3488 2000-11-08 Gerd Moellmann <gerd@gnu.org>
3555 3489
3643 2000-10-31 Gerd Moellmann <gerd@gnu.org> 3577 2000-10-31 Gerd Moellmann <gerd@gnu.org>
3644 3578
3645 * keyboard.c (read_char) <wrong_kboard>: Make sure that we 3579 * keyboard.c (read_char) <wrong_kboard>: Make sure that we
3646 process idle timers while waiting for another event. 3580 process idle timers while waiting for another event.
3647 3581
3648 * dispnew.c (update_frame_line): Handle case where spaces in 3582 * dispnew.c (update_frame_line): Handle case where spaces in
3649 the default face are colored. 3583 the default face are colored.
3650 3584
3651 * xdisp.c (redisplay_tool_bar): Don't set fonts_changed_p if 3585 * xdisp.c (redisplay_tool_bar): Don't set fonts_changed_p if
3652 window height hasn't changed. 3586 window height hasn't changed.
3653 3587
3671 in menu bars. 3605 in menu bars.
3672 3606
3673 * xdisp.c (try_scrolling) <PT >= scroll_margin_pos>: Add 1 to the 3607 * xdisp.c (try_scrolling) <PT >= scroll_margin_pos>: Add 1 to the
3674 dy obtained from the iterator's y-position after moving from 3608 dy obtained from the iterator's y-position after moving from
3675 scroll_margin_pos to PT; see comment there. 3609 scroll_margin_pos to PT; see comment there.
3676 3610
3677 * xdisp.c (safe_eval_handler): Call add_to_log. 3611 * xdisp.c (safe_eval_handler): Call add_to_log.
3678 3612
3679 * xfaces.c (resolve_face_name): Handle case that FACE_NAME 3613 * xfaces.c (resolve_face_name): Handle case that FACE_NAME
3680 is not a symbol or string. 3614 is not a symbol or string.
3681 3615
3693 3627
3694 2000-10-30 Gerd Moellmann <gerd@gnu.org> 3628 2000-10-30 Gerd Moellmann <gerd@gnu.org>
3695 3629
3696 * xterm.c (x_alloc_nearest_color): Fix last change to compare 3630 * xterm.c (x_alloc_nearest_color): Fix last change to compare
3697 RGB values. 3631 RGB values.
3698 3632
3699 * xterm.c (x_alloc_nearest_color): If allocation succeeds, and 3633 * xterm.c (x_alloc_nearest_color): If allocation succeeds, and
3700 we have a color cache, check that the cached color equals the 3634 we have a color cache, check that the cached color equals the
3701 allocated color. If not, clear the color cache. 3635 allocated color. If not, clear the color cache.
3702 3636
3703 * window.c (displayed_window_lines): Change buffers if necessary. 3637 * window.c (displayed_window_lines): Change buffers if necessary.
4002 3936
4003 2000-10-23 Gerd Moellmann <gerd@gnu.org> 3937 2000-10-23 Gerd Moellmann <gerd@gnu.org>
4004 3938
4005 * xterm.c (x_connection_closed): Reset handling_signal. 3939 * xterm.c (x_connection_closed): Reset handling_signal.
4006 3940
4007 * alloc.c (emacs_blocked_free) [GC_MALLOC_CHECK]: Handle freeing 3941 * alloc.c (emacs_blocked_free) [GC_MALLOC_CHECK]: Handle freeing null.
4008 null.
4009 3942
4010 2000-10-23 Miles Bader <miles@gnu.org> 3943 2000-10-23 Miles Bader <miles@gnu.org>
4011 3944
4012 * window.c (window_scroll_pixel_based, window_scroll_line_based): 3945 * window.c (window_scroll_pixel_based, window_scroll_line_based):
4013 Pass nil for FULLY argument to Fpos_visible_in_window_p to 3946 Pass nil for FULLY argument to Fpos_visible_in_window_p to
4020 that when a font can't be exactly centered, it errs up rather than 3953 that when a font can't be exactly centered, it errs up rather than
4021 down. 3954 down.
4022 3955
4023 2000-10-23 ShengHuo ZHU <zsh@cs.rochester.edu> 3956 2000-10-23 ShengHuo ZHU <zsh@cs.rochester.edu>
4024 3957
4025 * fns.c (Fbase64_decode_string): The decoded result should be 3958 * fns.c (Fbase64_decode_string): The decoded result should be unibyte.
4026 unibyte.
4027 3959
4028 2000-10-23 Andrew Choi <akochoi@i-cable.com> 3960 2000-10-23 Andrew Choi <akochoi@i-cable.com>
4029 3961
4030 * dispextern.h [macintosh]: Include macgui.h instead of macterm.h. 3962 * dispextern.h [macintosh]: Include macgui.h instead of macterm.h.
4031 3963
4090 (Finternal_face_x_get_resource) [macintosh]: Do not call 4022 (Finternal_face_x_get_resource) [macintosh]: Do not call
4091 display_x_get_resource. 4023 display_x_get_resource.
4092 (prepare_face_for_display) [macintosh]: Set xgcv.font. 4024 (prepare_face_for_display) [macintosh]: Set xgcv.font.
4093 (realize_x_face) [macintosh]: Load the font if it is specified in 4025 (realize_x_face) [macintosh]: Load the font if it is specified in
4094 ATTRS. 4026 ATTRS.
4095 (syms_of_xfaces) [macintosh]: Initialize Vscalable_fonts_allowed 4027 (syms_of_xfaces) [macintosh]: Initialize Vscalable_fonts_allowed to Qt.
4096 to Qt.
4097 4028
4098 2000-10-22 Stefan Monnier <monnier@cs.yale.edu> 4029 2000-10-22 Stefan Monnier <monnier@cs.yale.edu>
4099 4030
4100 * keymap.c (fix_submap_inheritance): Don't do anything if parent_entry 4031 * keymap.c (fix_submap_inheritance): Don't do anything if parent_entry
4101 is nil: since we go to the end of submap anyway, we'd end up 4032 is nil: since we go to the end of submap anyway, we'd end up
4136 (w32_cache_char_metrics): New function. 4067 (w32_cache_char_metrics): New function.
4137 4068
4138 * makefile.w32-in: Change .obj to .$(O) in all dependencies. 4069 * makefile.w32-in: Change .obj to .$(O) in all dependencies.
4139 ($(BLD)/casefiddle.$(O)): Remove compile command. 4070 ($(BLD)/casefiddle.$(O)): Remove compile command.
4140 ($(BLD)/gmalloc.$(O)): Remove compile command. 4071 ($(BLD)/gmalloc.$(O)): Remove compile command.
4141 ($(BLD)/dispnew.obj): 4072 ($(BLD)/dispnew.obj):
4142 ($(BLD)/keyboard.obj): 4073 ($(BLD)/keyboard.obj):
4143 ($(BLD)/w32inevt.obj): 4074 ($(BLD)/w32inevt.obj):
4144 ($(BLD)/w32bdf.obj): 4075 ($(BLD)/w32bdf.obj):
4145 ($(BLD)/alloc.obj): 4076 ($(BLD)/alloc.obj):
4146 ($(BLD)/buffer.obj): 4077 ($(BLD)/buffer.obj):
4147 ($(BLD)/editfns.obj): 4078 ($(BLD)/editfns.obj):
4148 ($(BLD)/emacs.obj): 4079 ($(BLD)/emacs.obj):
4149 ($(BLD)/fileio.obj): 4080 ($(BLD)/fileio.obj):
4150 ($(BLD)/fns.obj): 4081 ($(BLD)/fns.obj):
4151 ($(BLD)/indent.obj): 4082 ($(BLD)/indent.obj):
4152 ($(BLD)/insdel.obj): 4083 ($(BLD)/insdel.obj):
4153 ($(BLD)/intervals.obj): 4084 ($(BLD)/intervals.obj):
4154 ($(BLD)/minibuf.obj): 4085 ($(BLD)/minibuf.obj):
4155 ($(BLD)/print.obj): 4086 ($(BLD)/print.obj):
4156 ($(BLD)/scroll.obj): 4087 ($(BLD)/scroll.obj):
4157 ($(BLD)/sysdep.obj): 4088 ($(BLD)/sysdep.obj):
4158 ($(BLD)/textprop.obj): 4089 ($(BLD)/textprop.obj):
4159 ($(BLD)/widget.obj): 4090 ($(BLD)/widget.obj):
4160 ($(BLD)/xdisp.obj): Add dependency on w32gui.h. 4091 ($(BLD)/xdisp.obj): Add dependency on w32gui.h.
4161 ($(BLD)/term.obj): Add dependency on dispextern.h. 4092 ($(BLD)/term.obj): Add dependency on dispextern.h.
4162 4093
4163 * makefile.nt ($(BLD)\dispnew.obj): 4094 * makefile.nt ($(BLD)\dispnew.obj):
4164 ($(BLD)\keyboard.obj): 4095 ($(BLD)\keyboard.obj):
4165 ($(BLD)\w32inevt.obj): 4096 ($(BLD)\w32inevt.obj):
4166 ($(BLD)\w32bdf.obj): 4097 ($(BLD)\w32bdf.obj):
4167 ($(BLD)\alloc.obj): 4098 ($(BLD)\alloc.obj):
4168 ($(BLD)\buffer.obj): 4099 ($(BLD)\buffer.obj):
4169 ($(BLD)\editfns.obj): 4100 ($(BLD)\editfns.obj):
4170 ($(BLD)\emacs.obj): 4101 ($(BLD)\emacs.obj):
4171 ($(BLD)\fileio.obj): 4102 ($(BLD)\fileio.obj):
4172 ($(BLD)\fns.obj): 4103 ($(BLD)\fns.obj):
4173 ($(BLD)\indent.obj): 4104 ($(BLD)\indent.obj):
4174 ($(BLD)\insdel.obj): 4105 ($(BLD)\insdel.obj):
4175 ($(BLD)\intervals.obj): 4106 ($(BLD)\intervals.obj):
4176 ($(BLD)\minibuf.obj): 4107 ($(BLD)\minibuf.obj):
4177 ($(BLD)\print.obj): 4108 ($(BLD)\print.obj):
4178 ($(BLD)\scroll.obj): 4109 ($(BLD)\scroll.obj):
4179 ($(BLD)\sysdep.obj): 4110 ($(BLD)\sysdep.obj):
4180 ($(BLD)\textprop.obj): 4111 ($(BLD)\textprop.obj):
4181 ($(BLD)\widget.obj): 4112 ($(BLD)\widget.obj):
4182 ($(BLD)\xdisp.obj): Add dependency on w32gui.h. 4113 ($(BLD)\xdisp.obj): Add dependency on w32gui.h.
4183 ($(BLD)\term.obj): Add dependency on dispextern.h 4114 ($(BLD)\term.obj): Add dependency on dispextern.h
4184 4115
4185 2000-10-21 Eli Zaretskii <eliz@is.elta.co.il> 4116 2000-10-21 Eli Zaretskii <eliz@is.elta.co.il>
4186 4117
4198 4129
4199 2000-10-20 Gerd Moellmann <gerd@gnu.org> 4130 2000-10-20 Gerd Moellmann <gerd@gnu.org>
4200 4131
4201 * alloc.c (toplevel): Conditionalize compilation of mem_* 4132 * alloc.c (toplevel): Conditionalize compilation of mem_*
4202 functions differently. 4133 functions differently.
4203 4134
4204 2000-10-20 Jason Rumney <jasonr@gnu.org> 4135 2000-10-20 Jason Rumney <jasonr@gnu.org>
4205 4136
4206 * alloc.c (toplevel): Move #ifdef GC_MARK_STACK back to above 4137 * alloc.c (toplevel): Move #ifdef GC_MARK_STACK back to above
4207 mem_init where it used to be. mem_z etc not defined otherwise. 4138 mem_init where it used to be. mem_z etc not defined otherwise.
4208 4139
4277 otherwise, if T_OK is zero, return nil. 4208 otherwise, if T_OK is zero, return nil.
4278 4209
4279 * xfns.c (x_to_xcolors, x_set_mouse_color, lookup_pixel_color) 4210 * xfns.c (x_to_xcolors, x_set_mouse_color, lookup_pixel_color)
4280 (x_to_xcolors, png_load): Use x_query_color. 4211 (x_to_xcolors, png_load): Use x_query_color.
4281 4212
4282 * xterm.c (x_color_cells, x_query_colors, x_query_color): New 4213 * xterm.c (x_color_cells, x_query_colors, x_query_color):
4283 functions. 4214 New functions.
4284 (x_alloc_nearest_color): Use it to reduce calls to XQueryColors 4215 (x_alloc_nearest_color): Use it to reduce calls to XQueryColors
4285 which can be slow. 4216 which can be slow.
4286 (x_copy_color, x_alloc_lighter_color): Likewise. 4217 (x_copy_color, x_alloc_lighter_color): Likewise.
4287 4218
4288 * xterm.h (struct x_display_info): Add color_cells and ncolor_cells. 4219 * xterm.h (struct x_display_info): Add color_cells and ncolor_cells.
4305 Use it. 4236 Use it.
4306 (Fpurecopy): Use PURE_POINTER_P. 4237 (Fpurecopy): Use PURE_POINTER_P.
4307 4238
4308 * xdisp.c (try_cursor_movement): Use cursor_row_p also when 4239 * xdisp.c (try_cursor_movement): Use cursor_row_p also when
4309 PT has moved backward. 4240 PT has moved backward.
4310 4241
4311 * xdisp.c (cursor_row_p): Take continued lines into account. 4242 * xdisp.c (cursor_row_p): Take continued lines into account.
4312 4243
4313 * alloc.c (mark_object) [GC_CHECK_STRING_BYTES]: Check validity of 4244 * alloc.c (mark_object) [GC_CHECK_STRING_BYTES]: Check validity of
4314 string's size_byte. 4245 string's size_byte.
4315 (check_string_bytes) [GC_CHECK_STRING_BYTES]: New function. 4246 (check_string_bytes) [GC_CHECK_STRING_BYTES]: New function.
4335 for instance in reseat_at_next_visible_line_start, without being 4266 for instance in reseat_at_next_visible_line_start, without being
4336 overwritten. 4267 overwritten.
4337 4268
4338 * xfns.c (pbm_format): Add :foreground and :background keywords. 4269 * xfns.c (pbm_format): Add :foreground and :background keywords.
4339 (PBM_FOREGROUND, PBM_BACKGROUND): New enumerators. 4270 (PBM_FOREGROUND, PBM_BACKGROUND): New enumerators.
4340 (xbm_load): Recognize foreground and background color 4271 (xbm_load): Recognize foreground and background color specifications.
4341 specifications.
4342 4272
4343 2000-10-16 Eli Zaretskii <eliz@is.elta.co.il> 4273 2000-10-16 Eli Zaretskii <eliz@is.elta.co.il>
4344 4274
4345 * dispextern.h (unspecified_fg, unspecified_bg): Declare. 4275 * dispextern.h (unspecified_fg, unspecified_bg): Declare.
4346 4276
4347 * dosfns.c (unspecified_fg, unspecified_bg): Remove extern 4277 * dosfns.c (unspecified_fg, unspecified_bg): Remove extern declaration.
4348 declaration.
4349 4278
4350 * msdos.c (IT_set_face): Compare highlighted face with the default 4279 * msdos.c (IT_set_face): Compare highlighted face with the default
4351 face, and invert colors if these faces' colors are identical. 4280 face, and invert colors if these faces' colors are identical.
4352 (Fmsdos_remember_default_colors): Don't swap foreground and 4281 (Fmsdos_remember_default_colors): Don't swap foreground and
4353 background colors in initial_colors[]. 4282 background colors in initial_colors[].
4362 the colors are unspecified and reversed, reverse fore- and back- 4291 the colors are unspecified and reversed, reverse fore- and back-
4363 ground in the returned value. 4292 ground in the returned value.
4364 (Fframe_parameter): Ditto. 4293 (Fframe_parameter): Ditto.
4365 4294
4366 2000-10-16 Gerd Moellmann <gerd@gnu.org> 4295 2000-10-16 Gerd Moellmann <gerd@gnu.org>
4367 4296
4368 * xdisp.c (find_last_unchanged_at_beg_row): Renamed from 4297 * xdisp.c (find_last_unchanged_at_beg_row): Renamed from
4369 get_last_unchanged_at_beg_row. 4298 get_last_unchanged_at_beg_row.
4370 (find_first_unchanged_at_end_row): Renamed from 4299 (find_first_unchanged_at_end_row): Renamed from
4371 get_first_unchanged_at_end_row. 4300 get_first_unchanged_at_end_row.
4372 (find_first_unchanged_at_end_row): Convert assertions to 4301 (find_first_unchanged_at_end_row): Convert assertions to
4422 * dispnew.c (direct_output_for_insert): Call set_iterator_to_next 4351 * dispnew.c (direct_output_for_insert): Call set_iterator_to_next
4423 with additional argument. 4352 with additional argument.
4424 4353
4425 * xdisp.c (cursor_row_p): New function. 4354 * xdisp.c (cursor_row_p): New function.
4426 (try_cursor_movement, display_line): Use it. 4355 (try_cursor_movement, display_line): Use it.
4427 4356
4428 * xdisp.c (append_space): Also save/restore iterator's current 4357 * xdisp.c (append_space): Also save/restore iterator's current
4429 character and its length. 4358 character and its length.
4430 4359
4431 * xdisp.c (init_from_display_pos): Add an assertion. 4360 * xdisp.c (init_from_display_pos): Add an assertion.
4432 (handle_stop): Don't set iterator's add_overlay_start. 4361 (handle_stop): Don't set iterator's add_overlay_start.
4490 4419
4491 2000-10-11 Kenichi Handa <handa@mule.m17n.org> 4420 2000-10-11 Kenichi Handa <handa@mule.m17n.org>
4492 4421
4493 * process.c (read_process_output): Fix previous change. Adjust 4422 * process.c (read_process_output): Fix previous change. Adjust
4494 multibyteness of text to insert in a buffer by 4423 multibyteness of text to insert in a buffer by
4495 string_make_unibyte/multibyte instead of 4424 string_make_unibyte/multibyte instead of Fstring_as_unibyte/multibyte.
4496 Fstring_as_unibyte/multibyte.
4497 4425
4498 2000-10-10 Andreas Schwab <schwab@suse.de> 4426 2000-10-10 Andreas Schwab <schwab@suse.de>
4499 4427
4500 * alloc.c (mark_object): Remove all workarounds installed on 4428 * alloc.c (mark_object): Remove all workarounds installed on
4501 1993-08-08. 4429 1993-08-08.
4502 4430
4503 2000-10-10 Kenichi Handa <handa@etl.go.jp> 4431 2000-10-10 Kenichi Handa <handa@etl.go.jp>
4504 4432
4505 * fns.c (READ_QUADRUPLET_BYTE): Set *NCHARS_RETURN before 4433 * fns.c (READ_QUADRUPLET_BYTE): Set *NCHARS_RETURN before returning.
4506 returning.
4507 (base64_encode_1): Make it work for a text of multibyte form. 4434 (base64_encode_1): Make it work for a text of multibyte form.
4508 (Fbase64_decode_region): Allocate sufficient memory for multibyte 4435 (Fbase64_decode_region): Allocate sufficient memory for multibyte
4509 case. Don't call str_to_multibyte because base64_decode_1 4436 case. Don't call str_to_multibyte because base64_decode_1
4510 produces correct multibyte form for eight-bit codes. 4437 produces correct multibyte form for eight-bit codes.
4511 (Fbase64_decode_string): Adjusted for the change of 4438 (Fbase64_decode_string): Adjusted for the change of base64_decode_1.
4512 base64_decode_1.
4513 (base64_decode_1): New args MULTIBYTE and NCHARS_RETURN. If 4439 (base64_decode_1): New args MULTIBYTE and NCHARS_RETURN. If
4514 MULTIBYTE is nonzero, produce correct multibyte form for eight-bit 4440 MULTIBYTE is nonzero, produce correct multibyte form for eight-bit
4515 codes. 4441 codes.
4516 4442
4517 * charset.h (CHAR_STRING): Optimized for single byte characters. 4443 * charset.h (CHAR_STRING): Optimized for single byte characters.
4549 * sysdep.c: Don't include string.h. 4475 * sysdep.c: Don't include string.h.
4550 (h_errno): Declare conditional also on TRY_AGAIN. 4476 (h_errno): Declare conditional also on TRY_AGAIN.
4551 4477
4552 * charset.c (Ffind_charset_string): Doc fix. 4478 * charset.c (Ffind_charset_string): Doc fix.
4553 4479
4554 * fns.c (Fbase64_encode_region, Fbase64_encode_string) 4480 * fns.c (Fbase64_encode_region, Fbase64_encode_string)
4555 (Fbase64_decode_region, Fbase64_decode_string): More explicit 4481 (Fbase64_decode_region, Fbase64_decode_string): More explicit
4556 error messages. 4482 error messages.
4557 4483
4558 2000-10-05 Dave Love <fx@gnu.org> 4484 2000-10-05 Dave Love <fx@gnu.org>
4559 4485
4683 (x_display_and_set_cursor): Don't show a hollow box cursor for 4609 (x_display_and_set_cursor): Don't show a hollow box cursor for
4684 buffers whose cursor_type is nil. 4610 buffers whose cursor_type is nil.
4685 4611
4686 2000-09-29 Gerd Moellmann <gerd@gnu.org> 4612 2000-09-29 Gerd Moellmann <gerd@gnu.org>
4687 4613
4688 * xfns.c (x_set_tool_bar_lines): Clear frame when tool bar 4614 * xfns.c (x_set_tool_bar_lines): Clear frame when tool bar disappears.
4689 disappears.
4690 4615
4691 * dispextern.h (updating_frame): Declare extern. 4616 * dispextern.h (updating_frame): Declare extern.
4692 4617
4693 2000-09-29 Andreas Schwab <schwab@suse.de> 4618 2000-09-29 Andreas Schwab <schwab@suse.de>
4694 4619
4699 * keyboard.c (menu_bar_one_keymap): If KEYMAP is a symbol, 4624 * keyboard.c (menu_bar_one_keymap): If KEYMAP is a symbol,
4700 use its function definition. 4625 use its function definition.
4701 (tool_bar_items): Likewise. 4626 (tool_bar_items): Likewise.
4702 4627
4703 * lisp.h (fatal): Declare NO_RETURN. 4628 * lisp.h (fatal): Declare NO_RETURN.
4704 4629
4705 2000-09-29 Kenichi Handa <handa@etl.go.jp> 4630 2000-09-29 Kenichi Handa <handa@etl.go.jp>
4706 4631
4707 * keymap.c: Remove the line "#undef NULL". 4632 * keymap.c: Remove the line "#undef NULL".
4708 4633
4709 2000-09-28 Gerd Moellmann <gerd@gnu.org> 4634 2000-09-28 Gerd Moellmann <gerd@gnu.org>
4710 4635
4711 * xterm.c (x_make_frame_visible): Try harder to make the frame 4636 * xterm.c (x_make_frame_visible): Try harder to make the frame visible.
4712 visible.
4713 4637
4714 2000-09-28 Dave Love <fx@gnu.org> 4638 2000-09-28 Dave Love <fx@gnu.org>
4715 4639
4716 * s/osf5-0.h: Define USE_MMAP_FOR_BUFFERS, not REL_ALLOC_MMAP. 4640 * s/osf5-0.h: Define USE_MMAP_FOR_BUFFERS, not REL_ALLOC_MMAP.
4717 4641
4729 2000-09-27 Gerd Moellmann <gerd@gnu.org> 4653 2000-09-27 Gerd Moellmann <gerd@gnu.org>
4730 4654
4731 * xfaces.c (realize_default_face): Call set_lface_from_font_name 4655 * xfaces.c (realize_default_face): Call set_lface_from_font_name
4732 with non-zero FORCE_P argument. 4656 with non-zero FORCE_P argument.
4733 4657
4734 * dispnew.c (adjust_glyph_matrix, enable_glyph_matrix_rows): 4658 * dispnew.c (adjust_glyph_matrix, enable_glyph_matrix_rows):
4735 Add assertions. 4659 Add assertions.
4736 4660
4737 * xdisp.c (window_box_height): Add an assertion. 4661 * xdisp.c (window_box_height): Add an assertion.
4738 4662
4739 * xfns.c (x_set_tool_bar_lines): Don't use more lines for the 4663 * xfns.c (x_set_tool_bar_lines): Don't use more lines for the
4766 (XSET) [EXPLICIT_SIGN_EXTEND]: Use EMACS_INT instead of `int'. 4690 (XSET) [EXPLICIT_SIGN_EXTEND]: Use EMACS_INT instead of `int'.
4767 4691
4768 * frame.h (struct frame): Make the `nothing' member of union 4692 * frame.h (struct frame): Make the `nothing' member of union
4769 output_data an EMACS_INT. 4693 output_data an EMACS_INT.
4770 4694
4771 * alloc.c (GC_CHECK_STRING_BYTES): Temporarily define, for bug 4695 * alloc.c (GC_CHECK_STRING_BYTES): Temporarily define, for bug hunting.
4772 hunting.
4773 (struct sdata) [GC_CHECK_STRING_BYTES]: Always record the string's 4696 (struct sdata) [GC_CHECK_STRING_BYTES]: Always record the string's
4774 size in the sdata structure. 4697 size in the sdata structure.
4775 (SDATA_NBYTES, SDATA_DATA): New macros. 4698 (SDATA_NBYTES, SDATA_DATA): New macros.
4776 (SDATA_OF_STRING, SDATA_SIZE) [GC_CHECK_STRING_BYTES]: Define 4699 (SDATA_OF_STRING, SDATA_SIZE) [GC_CHECK_STRING_BYTES]: Define
4777 differently for the different layout of the sdata structure. 4700 differently for the different layout of the sdata structure.
4784 2000-09-25 Dave Love <fx@gnu.org> 4707 2000-09-25 Dave Love <fx@gnu.org>
4785 4708
4786 * buffer.c: Include stdio.h. 4709 * buffer.c: Include stdio.h.
4787 4710
4788 Partly suggested by Eduardo Horvath <eeh@netbsd.org>. 4711 Partly suggested by Eduardo Horvath <eeh@netbsd.org>.
4789 4712
4790 * ralloc.c (__malloc_extra_blocks): Declare as __malloc_size_t. 4713 * ralloc.c (__malloc_extra_blocks): Declare as __malloc_size_t.
4791 4714
4792 * alloc.c (__malloc_size_t) [DOUG_LEA_MALLOC]: Don't redefine it. 4715 * alloc.c (__malloc_size_t) [DOUG_LEA_MALLOC]: Don't redefine it.
4793 (__malloc_size_t) [!DOUG_LEA_MALLOC]: Define unconditionally as 4716 (__malloc_size_t) [!DOUG_LEA_MALLOC]: Define unconditionally as size_t.
4794 size_t.
4795 (__malloc_extra_blocks): Declare as __malloc_size_t. 4717 (__malloc_extra_blocks): Declare as __malloc_size_t.
4796 4718
4797 2000-09-25 Gerd Moellmann <gerd@gnu.org> 4719 2000-09-25 Gerd Moellmann <gerd@gnu.org>
4798 4720
4799 * alloc.c (mark_image): Use GC_NILP instead of NILP. 4721 * alloc.c (mark_image): Use GC_NILP instead of NILP.
4839 2000-09-21 Gerd Moellmann <gerd@gnu.org> 4761 2000-09-21 Gerd Moellmann <gerd@gnu.org>
4840 4762
4841 * config.in (NO_RETURN): Define as `__attribute__((__noreturn__))' 4763 * config.in (NO_RETURN): Define as `__attribute__((__noreturn__))'
4842 for GCC >= 2.5. 4764 for GCC >= 2.5.
4843 4765
4844 * lisp.h (wrong_type_argument, Fthrow, Fsignal, error): Declare 4766 * lisp.h (wrong_type_argument, Fthrow, Fsignal, error):
4845 NO_RETURN. 4767 Declare NO_RETURN.
4846 4768
4847 * window.c, term.c, xmenu.c, xrdb.c, emacs.c, macros.c, 4769 * window.c, term.c, xmenu.c, xrdb.c, emacs.c, macros.c,
4848 * keymap.c, insdel.c, marker.c, minibuf.c, fileio.c, dired.c, 4770 * keymap.c, insdel.c, marker.c, minibuf.c, fileio.c, dired.c,
4849 * indent.c, search.c, alloc.c, data.c: Avoid some more compiler 4771 * indent.c, search.c, alloc.c, data.c: Avoid some more compiler
4850 warnings. 4772 warnings.
4851 4773
4852 * marker.c (byte_char_debug_check): Return void. 4774 * marker.c (byte_char_debug_check): Return void.
4853 4775
4854 * xfns.c (Fx_create_frame): Set default frame parameter value 4776 * xfns.c (Fx_create_frame): Set default frame parameter value
4855 for tool-bar-lines to 1. 4777 for tool-bar-lines to 1.
4856 4778
4878 * editfns.c (Fmessage_or_box): Doc fix. 4800 * editfns.c (Fmessage_or_box): Doc fix.
4879 4801
4880 * fns.c (Fy_or_n_p, Fyes_or_no_p): Doc fix. 4802 * fns.c (Fy_or_n_p, Fyes_or_no_p): Doc fix.
4881 4803
4882 * xfns.c (xbm_scan): Allow C-style comments. 4804 * xfns.c (xbm_scan): Allow C-style comments.
4883 4805
4884 * xfns.c (xpm_init_color_cache) [ALLOC_XPM_COLORS]: If color 4806 * xfns.c (xpm_init_color_cache) [ALLOC_XPM_COLORS]: If color
4885 symbols are specified, add color translations to the cache. 4807 symbols are specified, add color translations to the cache.
4886 (xpm_color_bucket, xpm_cache_color) [ALLOC_XPM_COLORS]: New 4808 (xpm_color_bucket, xpm_cache_color) [ALLOC_XPM_COLORS]: New functions.
4887 functions.
4888 (xpm_lookup_color) [ALLOC_XPM_COLORS]: Use xpm_color_bucket and 4809 (xpm_lookup_color) [ALLOC_XPM_COLORS]: Use xpm_color_bucket and
4889 xpm_cache_color. 4810 xpm_cache_color.
4890 (xpm_load) [ALLOC_XPM_COLORS]: Pass frame and XPM attributes 4811 (xpm_load) [ALLOC_XPM_COLORS]: Pass frame and XPM attributes
4891 structures to xpm_init_color_cache. 4812 structures to xpm_init_color_cache.
4892 4813
4893 2000-09-19 Gerd Moellmann <gerd@gnu.org> 4814 2000-09-19 Gerd Moellmann <gerd@gnu.org>
4894 4815
4895 * dispnew.c (update_window_line): Make sure to always draw 4816 * dispnew.c (update_window_line): Make sure to always draw mode-lines.
4896 mode-lines.
4897 4817
4898 2000-09-19 Andrew Innes <andrewi@gnu.org> 4818 2000-09-19 Andrew Innes <andrewi@gnu.org>
4899 4819
4900 * makefile.nt (bootstrap-emacs): Don't change directory. 4820 * makefile.nt (bootstrap-emacs): Don't change directory.
4901 4821
4906 * ccl.c (Fccl_execute_on_string): Make multibyte string correctly. 4826 * ccl.c (Fccl_execute_on_string): Make multibyte string correctly.
4907 If output buffer is too small, signal an appropriated error. 4827 If output buffer is too small, signal an appropriated error.
4908 4828
4909 2000-09-18 Dave Love <fx@gnu.org> 4829 2000-09-18 Dave Love <fx@gnu.org>
4910 4830
4911 * keyboard.c (menu_bar_items, tool_bar_items) 4831 * keyboard.c (menu_bar_items, tool_bar_items)
4912 (current_active_maps): Remove redundant get_local_map call. 4832 (current_active_maps): Remove redundant get_local_map call.
4913 4833
4914 2000-09-18 Gerd Moellmann <gerd@gnu.org> 4834 2000-09-18 Gerd Moellmann <gerd@gnu.org>
4915 4835
4916 * xterm.c (x_display_and_set_cursor): Don't show a hollow box 4836 * xterm.c (x_display_and_set_cursor): Don't show a hollow box
4917 cursor for buffers whose cursor_type is nil. 4837 cursor for buffers whose cursor_type is nil.
4918 4838
4919 * xterm.c (x_draw_image_glyph_string): Remove a comment describing 4839 * xterm.c (x_draw_image_glyph_string): Remove a comment describing
4920 a feature to implement that is already implemented. 4840 a feature to implement that is already implemented.
4921 (note_mouse_highlight, x_find_ccl_program): Avoid some compiler 4841 (note_mouse_highlight, x_find_ccl_program): Avoid some compiler
4922 warnings. 4842 warnings.
4923 4843
4924 * xfns.c (x_clear_image_1): New function. 4844 * xfns.c (x_clear_image_1): New function.
4925 (x_clear_image): Use it. 4845 (x_clear_image): Use it.
4926 (x_from_xcolors): Use x_clear_image_1; don't free the image's 4846 (x_from_xcolors): Use x_clear_image_1; don't free the image's mask.
4927 mask.
4928 4847
4929 * dispnew.c (update_window): Move test for invisible lines 4848 * dispnew.c (update_window): Move test for invisible lines
4930 at the top to update_window_line. 4849 at the top to update_window_line.
4931 (update_window_line): Handle invisible lines here. 4850 (update_window_line): Handle invisible lines here.
4932 4851
4939 that we won't get interrupted in a state where the image isn't yet 4858 that we won't get interrupted in a state where the image isn't yet
4940 set up completely. 4859 set up completely.
4941 (xbm_load_image, xbm_load, xpm_load, xpm_load, lookup_rgb_color) 4860 (xbm_load_image, xbm_load, xpm_load, xpm_load, lookup_rgb_color)
4942 (lookup_pixel_color, x_to_xcolors, x_from_xcolors) 4861 (lookup_pixel_color, x_to_xcolors, x_from_xcolors)
4943 (x_disable_image, x_build_heuristic_mask, pbm_load, png_load) 4862 (x_disable_image, x_build_heuristic_mask, pbm_load, png_load)
4944 (jpeg_load, tiff_load, gif_load, gs_load): Don't block/unblock 4863 (jpeg_load, tiff_load, gif_load, gs_load): Don't block/unblock input.
4945 input.
4946 4864
4947 2000-09-16 Gerd Moellmann <gerd@gnu.org> 4865 2000-09-16 Gerd Moellmann <gerd@gnu.org>
4948 4866
4949 * dispnew.c (update_window): Make sure to make desired rows 4867 * dispnew.c (update_window): Make sure to make desired rows
4950 current even if they are completely invisible at the top 4868 current even if they are completely invisible at the top
4970 allocation functions with the XPM lib. 4888 allocation functions with the XPM lib.
4971 (struct xpm_cached_color) [ALLOC_XPM_COLORS]: New structure. 4889 (struct xpm_cached_color) [ALLOC_XPM_COLORS]: New structure.
4972 (XPM_COLOR_CACHE_BUCKETS) [ALLOC_XPM_COLORS]: New macro. 4890 (XPM_COLOR_CACHE_BUCKETS) [ALLOC_XPM_COLORS]: New macro.
4973 (xpm_color_cache) [ALLOC_XPM_COLORS]: New variable. 4891 (xpm_color_cache) [ALLOC_XPM_COLORS]: New variable.
4974 (xpm_init_color_cache, xpm_free_color_cache, xpm_lookup_color) 4892 (xpm_init_color_cache, xpm_free_color_cache, xpm_lookup_color)
4975 (xpm_alloc_color, xpm_free_colors) [ALLOC_XPM_COLORS]: New 4893 (xpm_alloc_color, xpm_free_colors) [ALLOC_XPM_COLORS]: New functions.
4976 functions.
4977 (xpm_load) [ALLOC_XPM_COLORS]: Use Emacs' own color allocation 4894 (xpm_load) [ALLOC_XPM_COLORS]: Use Emacs' own color allocation
4978 functions, if possible, because these handle color allocation 4895 functions, if possible, because these handle color allocation
4979 failure more gracefully. 4896 failure more gracefully.
4980 (Fimage_mask_p): New function. 4897 (Fimage_mask_p): New function.
4981 4898
5035 4952
5036 * buffer.c: Move allocation with mmap here, from ralloc.c. Change 4953 * buffer.c: Move allocation with mmap here, from ralloc.c. Change
5037 conditional compilation on REL_ALLOC_MMAP to USE_MMAP_FOR_BUFFERS. 4954 conditional compilation on REL_ALLOC_MMAP to USE_MMAP_FOR_BUFFERS.
5038 (mmap_alloc, mmap_free, mmap_realloc) [REL_ALLOC_MMAP]: Renamed 4955 (mmap_alloc, mmap_free, mmap_realloc) [REL_ALLOC_MMAP]: Renamed
5039 from former r_alloc_* functions in ralloc.c. 4956 from former r_alloc_* functions in ralloc.c.
5040 (mmap_page_size, mmap_initialized_p) [REL_ALLOC_MMAP]: New 4957 (mmap_page_size, mmap_initialized_p) [REL_ALLOC_MMAP]: New variables.
5041 variables.
5042 (MEM_ALIGN) [REL_ALLOC_MMAP]: New macro. 4958 (MEM_ALIGN) [REL_ALLOC_MMAP]: New macro.
5043 (mmap_init) [REL_ALLOC_MMAP]: New function. 4959 (mmap_init) [REL_ALLOC_MMAP]: New function.
5044 (alloc_buffer_text, enlarge_buffer_text, free_buffer_text): New 4960 (alloc_buffer_text, enlarge_buffer_text, free_buffer_text): New
5045 functions replacing macros BUFFER_ALLOC, BUFFER_REALLOC, and 4961 functions replacing macros BUFFER_ALLOC, BUFFER_REALLOC, and
5046 BUFFER_FREE. 4962 BUFFER_FREE.
5075 (PUSH_MAPPING_STACK): Enclose with do-while block. 4991 (PUSH_MAPPING_STACK): Enclose with do-while block.
5076 (POP_MAPPING_STACK): Likewise. 4992 (POP_MAPPING_STACK): Likewise.
5077 (stack_idx_of_map_multiple): New variable. 4993 (stack_idx_of_map_multiple): New variable.
5078 (CCL_CALL_FOR_MAP_INSTRUCTION): New macro. 4994 (CCL_CALL_FOR_MAP_INSTRUCTION): New macro.
5079 (ccl_driver) <CCL_IterateMultipleMap>: If the content is a symbol, 4995 (ccl_driver) <CCL_IterateMultipleMap>: If the content is a symbol,
5080 call the corresponding CCL program by 4996 call the corresponding CCL program by CCL_CALL_FOR_MAP_INSTRUCTION.
5081 CCL_CALL_FOR_MAP_INSTRUCTION.
5082 (ccl_driver) <CCL_MapSingle>: Likewise. 4997 (ccl_driver) <CCL_MapSingle>: Likewise.
5083 (ccl_driver) <CCL_MapMultiple>: Rewritten to fix many bugs, deal 4998 (ccl_driver) <CCL_MapMultiple>: Rewritten to fix many bugs, deal
5084 with the case where looking up process reaches to the end of 4999 with the case where looking up process reaches to the end of
5085 map-set, and call CCL programs as the above change. 5000 map-set, and call CCL programs as the above change.
5086 5001
5088 5003
5089 * xfns.c (png_load, jpeg_load): Declare some variables volatile 5004 * xfns.c (png_load, jpeg_load): Declare some variables volatile
5090 that might be clobbered by longjmp. 5005 that might be clobbered by longjmp.
5091 (check_x_display_info, x_decode_color, create_frame_xic) 5006 (check_x_display_info, x_decode_color, create_frame_xic)
5092 (Fx_display_backing_store, Fx_display_visual_class) 5007 (Fx_display_backing_store, Fx_display_visual_class)
5093 (x_build_heuristic_mask, pbm_scan_number): Avoid compiler 5008 (x_build_heuristic_mask, pbm_scan_number): Avoid compiler warnings.
5094 warnings.
5095 5009
5096 * lread.c (init_lread): Set Vloads_in_progress to nil. 5010 * lread.c (init_lread): Set Vloads_in_progress to nil.
5097 (Fload): Show list of recursively loaded files, when signaling an 5011 (Fload): Show list of recursively loaded files, when signaling an
5098 error. 5012 error.
5099 5013
5119 * s/netbsd.h: Use NOT_C_CODE, not NO_C_SOURCE, when deciding 5033 * s/netbsd.h: Use NOT_C_CODE, not NO_C_SOURCE, when deciding
5120 whether to include other header files. 5034 whether to include other header files.
5121 5035
5122 2000-09-09 Gerd Moellmann <gerd@gnu.org> 5036 2000-09-09 Gerd Moellmann <gerd@gnu.org>
5123 5037
5124 * xfaces.c (CYCLE_CHECK): Don't use the Lisp_Object returned 5038 * xfaces.c (CYCLE_CHECK): Don't use the Lisp_Object returned
5125 by Fmemq as a boolean. 5039 by Fmemq as a boolean.
5126 5040
5127 2000-09-08 Stefan Monnier <monnier@cs.yale.edu> 5041 2000-09-08 Stefan Monnier <monnier@cs.yale.edu>
5128 5042
5129 * xfaces.c (Finternal_set_lisp_face_attribute): Minor thinko. 5043 * xfaces.c (Finternal_set_lisp_face_attribute): Minor thinko.
5142 (r_alloc_init) [REL_ALLOC_MMAP && MAP_ANON]: Set mmap_fd to -1. 5056 (r_alloc_init) [REL_ALLOC_MMAP && MAP_ANON]: Set mmap_fd to -1.
5143 5057
5144 * xfaces.c (Finternal_merge_in_global_face): Return a Lisp object. 5058 * xfaces.c (Finternal_merge_in_global_face): Return a Lisp object.
5145 5059
5146 * xdisp.c (dump_glyph_row): Fix printf format string. 5060 * xdisp.c (dump_glyph_row): Fix printf format string.
5147 (display_line, move_it_in_display_line_to): Avoid compiler 5061 (display_line, move_it_in_display_line_to): Avoid compiler warnings.
5148 warnings.
5149 5062
5150 * s/freebsd.h (GC_MARK_STACK, REL_ALLOC_MMAP): Define. 5063 * s/freebsd.h (GC_MARK_STACK, REL_ALLOC_MMAP): Define.
5151 5064
5152 * keymap.c (Fset_keymap_parent): Check for cycles in keymap 5065 * keymap.c (Fset_keymap_parent): Check for cycles in keymap
5153 inheritance. 5066 inheritance.
5267 * process.c (read_process_output): Before inserting the decoded 5180 * process.c (read_process_output): Before inserting the decoded
5268 text in the buffer, adjust the multibyteness. 5181 text in the buffer, adjust the multibyteness.
5269 5182
5270 2000-09-06 Gerd Moellmann <gerd@gnu.org> 5183 2000-09-06 Gerd Moellmann <gerd@gnu.org>
5271 5184
5272 * buffer.c (set_buffer_internal_1) [REL_ALLOC_MMAP]: If 5185 * buffer.c (set_buffer_internal_1) [REL_ALLOC_MMAP]: If
5273 buffer's text buffer is null, map new memory. 5186 buffer's text buffer is null, map new memory.
5274 5187
5275 * ralloc.c (POINTER, SIZE) [emacs]: Define in terms of 5188 * ralloc.c (POINTER, SIZE) [emacs]: Define in terms of
5276 POINTER_TYPE and size_t. 5189 POINTER_TYPE and size_t.
5277 (struct mmap_region) [REL_ALLOC_MMAP]: New structure. 5190 (struct mmap_region) [REL_ALLOC_MMAP]: New structure.
5314 5227
5315 2000-09-04 Miles Bader <miles@gnu.org> 5228 2000-09-04 Miles Bader <miles@gnu.org>
5316 5229
5317 * xmenu.c (xmenu_show): Call x_set_menu_resources_from_menu_face 5230 * xmenu.c (xmenu_show): Call x_set_menu_resources_from_menu_face
5318 before initially popping up the menu, so the menu doesn't flash 5231 before initially popping up the menu, so the menu doesn't flash
5319 when the face settings are significantly different from the 5232 when the face settings are significantly different from the defaults.
5320 defaults.
5321 5233
5322 2000-09-04 Stefan Monnier <monnier@cs.yale.edu> 5234 2000-09-04 Stefan Monnier <monnier@cs.yale.edu>
5323 5235
5324 * regex.c (WIDE_CHAR_SUPPORT): New macro. 5236 * regex.c (WIDE_CHAR_SUPPORT): New macro.
5325 (btowc, iswctype, wctype) [_LIBC]: Redefine to __<fun>. 5237 (btowc, iswctype, wctype) [_LIBC]: Redefine to __<fun>.
5438 5350
5439 * dispnew.c (build_frame_matrix_from_leaf_window): If a row of a 5351 * dispnew.c (build_frame_matrix_from_leaf_window): If a row of a
5440 desired window matrix hasn't been displayed, use the current row 5352 desired window matrix hasn't been displayed, use the current row
5441 instead. Make sure that only those frame rows are updated for 5353 instead. Make sure that only those frame rows are updated for
5442 which there exists a corresponding enabled desired row. 5354 which there exists a corresponding enabled desired row.
5443 5355
5444 2000-08-29 Miles Bader <miles@gnu.org> 5356 2000-08-29 Miles Bader <miles@gnu.org>
5445 5357
5446 * xfaces.c (default_face_vector): New function. 5358 * xfaces.c (default_face_vector): New function.
5447 (Finternal_merge_in_global_face): Use it instead of merge_face_vectors. 5359 (Finternal_merge_in_global_face): Use it instead of merge_face_vectors.
5448 5360
5529 * dispextern.h (enum lface_attribute_index): Add LFACE_INHERIT_INDEX. 5441 * dispextern.h (enum lface_attribute_index): Add LFACE_INHERIT_INDEX.
5530 * xfaces.c (QCinherit): New variable. 5442 * xfaces.c (QCinherit): New variable.
5531 (syms_of_xfaces): Initialize it. 5443 (syms_of_xfaces): Initialize it.
5532 (LFACE_INHERIT): New macro. 5444 (LFACE_INHERIT): New macro.
5533 (Finternal_get_lisp_face_attribute) 5445 (Finternal_get_lisp_face_attribute)
5534 (merge_face_vector_with_property) 5446 (merge_face_vector_with_property)
5535 (Finternal_set_lisp_face_attribute): Deal with :inherit attribute. 5447 (Finternal_set_lisp_face_attribute): Deal with :inherit attribute.
5536 (check_lface_attrs): Allow new types of face height. Check 5448 (check_lface_attrs): Allow new types of face height. Check
5537 inherit attribute. 5449 inherit attribute.
5538 (CYCLE_CHECK): New macro. 5450 (CYCLE_CHECK): New macro.
5539 (merge_face_inheritance): New function. 5451 (merge_face_inheritance): New function.
5542 (merge_face_vector_with_property, Finternal_merge_in_global_face) 5454 (merge_face_vector_with_property, Finternal_merge_in_global_face)
5543 (lookup_named_face, lookup_derived_face, realize_named_face) 5455 (lookup_named_face, lookup_derived_face, realize_named_face)
5544 (face_at_string_position, face_at_buffer_position): Supply 5456 (face_at_string_position, face_at_buffer_position): Supply
5545 new F and CYCLE_CHECK arguments to merge_face_vectors. 5457 new F and CYCLE_CHECK arguments to merge_face_vectors.
5546 (merge_face_heights): New function. 5458 (merge_face_heights): New function.
5547 (merge_face_vectors, merge_face_vector_with_property) 5459 (merge_face_vectors, merge_face_vector_with_property)
5548 (Finternal_set_lisp_face_attribute): Call merge_face_heights to 5460 (Finternal_set_lisp_face_attribute): Call merge_face_heights to
5549 handle relative face heights. 5461 handle relative face heights.
5550 (lface_same_font_attributes_p): Compare heights using EQ. 5462 (lface_same_font_attributes_p): Compare heights using EQ.
5551 5463
5552 2000-08-26 Kenichi Handa <handa@etl.go.jp> 5464 2000-08-26 Kenichi Handa <handa@etl.go.jp>
5553 5465
5554 * charset.c (char_to_string): Check the character validity. 5466 * charset.c (char_to_string): Check the character validity.
5555 (char_valid_p): If C is not less than MAX_CHAR, be sure to return 5467 (char_valid_p): If C is not less than MAX_CHAR, be sure to return 0.
5556 0.
5557 5468
5558 2000-08-25 Stefan Monnier <monnier@cs.yale.edu> 5469 2000-08-25 Stefan Monnier <monnier@cs.yale.edu>
5559 5470
5560 * regex.c (PUSH_FAILURE_COUNT): New macro. 5471 * regex.c (PUSH_FAILURE_COUNT): New macro.
5561 (POP_FAILURE_REG_OR_COUNT): Renamed from POP_FAILURE_REG. 5472 (POP_FAILURE_REG_OR_COUNT): Renamed from POP_FAILURE_REG.
5574 5485
5575 2000-08-24 Gerd Moellmann <gerd@gnu.org> 5486 2000-08-24 Gerd Moellmann <gerd@gnu.org>
5576 5487
5577 * bytecode.c (mark_byte_stack): Add a comment. 5488 * bytecode.c (mark_byte_stack): Add a comment.
5578 5489
5579 * frame.h (FRAME_FLAGS_AREA_COLS, FRAME_FLAGS_AREA_WIDTH) 5490 * frame.h (FRAME_FLAGS_AREA_COLS, FRAME_FLAGS_AREA_WIDTH)
5580 (FRAME_LEFT_FLAGS_AREA_WIDTH): Return 0 unless frame is 5491 (FRAME_LEFT_FLAGS_AREA_WIDTH): Return 0 unless frame is
5581 a graphical frame. 5492 a graphical frame.
5582 5493
5583 2000-08-24 Kenichi Handa <handa@etl.go.jp> 5494 2000-08-24 Kenichi Handa <handa@etl.go.jp>
5584 5495
5585 * minibuf.c (do_completion): Always use compare-string, not 5496 * minibuf.c (do_completion): Always use compare-string, not
5592 (read_process_output): For process filter, return unibyte string 5503 (read_process_output): For process filter, return unibyte string
5593 if default-enable-multibyte-characters is nil. 5504 if default-enable-multibyte-characters is nil.
5594 (send_process): If OBJECT is multibyte text, be sure to encoded it 5505 (send_process): If OBJECT is multibyte text, be sure to encoded it
5595 by the specified coding system for the process. Otherwise, setup 5506 by the specified coding system for the process. Otherwise, setup
5596 raw-text coding. 5507 raw-text coding.
5597 (init_process): Don't initialize default-process-coding-system 5508 (init_process): Don't initialize default-process-coding-system here.
5598 here.
5599 5509
5600 2000-08-23 Eli Zaretskii <eliz@is.elta.co.il> 5510 2000-08-23 Eli Zaretskii <eliz@is.elta.co.il>
5601 5511
5602 * buffer.c (syms_of_buffer) <scroll-up-aggressively>: Doc fix. 5512 * buffer.c (syms_of_buffer) <scroll-up-aggressively>: Doc fix.
5603 <scroll-down-aggressively>: Likewise. 5513 <scroll-down-aggressively>: Likewise.
5663 * buffer.c [USE_CRT_DLL]: Remove unnecessary extern, which screws 5573 * buffer.c [USE_CRT_DLL]: Remove unnecessary extern, which screws
5664 up dllimport attributes. 5574 up dllimport attributes.
5665 5575
5666 * w32proc.c (IsValidLocale): Extern missing from mingw32 headers. 5576 * w32proc.c (IsValidLocale): Extern missing from mingw32 headers.
5667 5577
5668 * w32bdf.c (search_file_line): 5578 * w32bdf.c (search_file_line):
5669 (set_bdf_font_info): 5579 (set_bdf_font_info):
5670 (seek_char): 5580 (seek_char):
5671 (w32_get_bdf_glyph): 5581 (w32_get_bdf_glyph):
5672 (w32_BDF_to_x_font): Fix compile warnings. 5582 (w32_BDF_to_x_font): Fix compile warnings.
5673 5583
5674 * w32menu.c: Include keyboard.h before frame.h. Fix compile 5584 * w32menu.c: Include keyboard.h before frame.h. Fix compile warnings.
5675 warnings.
5676 5585
5677 * w32select.c: Include keyboard.h before frame.h. 5586 * w32select.c: Include keyboard.h before frame.h.
5678 5587
5679 * w32fns.c (max): Define macro. 5588 * w32fns.c (max): Define macro.
5680 (JOHAB_CHARSET): Define if not known. 5589 (JOHAB_CHARSET): Define if not known.
5725 5634
5726 * w32gui.h: Undefine min, max. 5635 * w32gui.h: Undefine min, max.
5727 5636
5728 * unexw32.c: Change PUCHAR to PCHAR. 5637 * unexw32.c: Change PUCHAR to PCHAR.
5729 (PTR_TO_OFFSET): Cast ptr to unsigned char *. 5638 (PTR_TO_OFFSET): Cast ptr to unsigned char *.
5730 (relocate_offset): 5639 (relocate_offset):
5731 (get_section_info): 5640 (get_section_info):
5732 (copy_executable_and_dump_data): Remove unnecessary static defs. 5641 (copy_executable_and_dump_data): Remove unnecessary static defs.
5733 (copy_executable_and_dump_data): Fix compile warnings. 5642 (copy_executable_and_dump_data): Fix compile warnings.
5734 5643
5735 * sysdep.c (NULL) [WINDOWSNT]: Define NULL if not defined. 5644 * sysdep.c (NULL) [WINDOWSNT]: Define NULL if not defined.
5736 5645
5737 * w32console.c (min): Define macro. 5646 * w32console.c (min): Define macro.
5738 (clear_frame, write_glyphs): Fix compile warning. 5647 (clear_frame, write_glyphs): Fix compile warning.
5739 5648
5740 * w32proc.c (compare_env): 5649 * w32proc.c (compare_env):
5741 (find_child_console): Fix compile warning. 5650 (find_child_console): Fix compile warning.
5742 5651
5743 * w32.c (sys_strerror): Use sys_nerr instead of _sys_nerr. Use 5652 * w32.c (sys_strerror): Use sys_nerr instead of _sys_nerr. Use
5744 sys_errlist instead of _sys_errlist. 5653 sys_errlist instead of _sys_errlist.
5745 (get_emacs_configuration_options): New function. 5654 (get_emacs_configuration_options): New function.
5751 (get_emacs_configuration): Provide extern declaration. 5660 (get_emacs_configuration): Provide extern declaration.
5752 (get_emacs_configuration_options): Provide extern declaration. 5661 (get_emacs_configuration_options): Provide extern declaration.
5753 (EMACS_CONFIG_OPTIONS): Call get_emacs_configuration_options. 5662 (EMACS_CONFIG_OPTIONS): Call get_emacs_configuration_options.
5754 5663
5755 * w32.c (gettimeofday): Use struct timeb, not struct _timeb. 5664 * w32.c (gettimeofday): Use struct timeb, not struct _timeb.
5756 (map_w32_filename): 5665 (map_w32_filename):
5757 (read_unc_volume): Fix compile warning. 5666 (read_unc_volume): Fix compile warning.
5758 5667
5759 * s/ms-w32.h (_WINSOCK_H): Define to prevent normal winsock 5668 * s/ms-w32.h (_WINSOCK_H): Define to prevent normal winsock
5760 definitions from being used. 5669 definitions from being used.
5761 5670
5762 * lisp.h [WINDOWSNT]: Don't declare externs for getenv, ctime and getwd. 5671 * lisp.h [WINDOWSNT]: Don't declare externs for getenv, ctime and getwd.
5763 5672
5764 * w32.c (unc_volume_file_attributes): 5673 * w32.c (unc_volume_file_attributes):
5765 (open_unc_volume): Make arg const. 5674 (open_unc_volume): Make arg const.
5766 5675
5767 * sysdep.c [WINDOWSNT]: Remove extern decl of errno. 5676 * sysdep.c [WINDOWSNT]: Remove extern decl of errno.
5768 (read_input_waiting): Remove excess parameter. 5677 (read_input_waiting): Remove excess parameter.
5769 5678
5795 var so it can take non-boolean values. 5704 var so it can take non-boolean values.
5796 5705
5797 2000-08-21 Gerd Moellmann <gerd@gnu.org> 5706 2000-08-21 Gerd Moellmann <gerd@gnu.org>
5798 5707
5799 * editfns.c (find_field): Formatting changes. 5708 * editfns.c (find_field): Formatting changes.
5800 (toplevel): Some old-style function forward declarations 5709 (toplevel): Some old-style function forward declarations
5801 changed to prototypes, some new protypes added, some functions 5710 changed to prototypes, some new protypes added, some functions
5802 made static. 5711 made static.
5803 5712
5804 * lisp.h (set_time_zone_rule): Add prototype. 5713 * lisp.h (set_time_zone_rule): Add prototype.
5805 (use_dialog_box): External declaration. 5714 (use_dialog_box): External declaration.
5884 conditional have void type, for Standard C compilers. 5793 conditional have void type, for Standard C compilers.
5885 5794
5886 * xdisp.c (redisplay_internal): Compare windows for equality with 5795 * xdisp.c (redisplay_internal): Compare windows for equality with
5887 EQ, instead of applying XWINDOW to something that might not 5796 EQ, instead of applying XWINDOW to something that might not
5888 be a window. 5797 be a window.
5889 5798
5890 2000-08-18 Kenichi Handa <handa@etl.go.jp> 5799 2000-08-18 Kenichi Handa <handa@etl.go.jp>
5891 5800
5892 * fontset.c (Finternal_char_font): Search only the selected frame 5801 * fontset.c (Finternal_char_font): Search only the selected frame
5893 for a window of the current buffer. 5802 for a window of the current buffer.
5894 5803
5920 2000-08-17 Dave Love <fx@gnu.org> 5829 2000-08-17 Dave Love <fx@gnu.org>
5921 5830
5922 * lisp.h: Remove DECLARE_INTERVALS, INITIALIZE_INTERVAL. Don't 5831 * lisp.h: Remove DECLARE_INTERVALS, INITIALIZE_INTERVAL. Don't
5923 declare make_temp_name twice. 5832 declare make_temp_name twice.
5924 5833
5925 * lread.c: Prototype readevalloop, load_unwind, 5834 * lread.c: Prototype readevalloop, load_unwind, load_descriptor_unwind.
5926 load_descriptor_unwind.
5927 (unreadpure): Give it an arg. 5835 (unreadpure): Give it an arg.
5928 5836
5929 * unexalpha.c: Prototype fatal_unexec, mark_x, 5837 * unexalpha.c: Prototype fatal_unexec, mark_x,
5930 update_dynamic_symbols. Declare unexec as void. 5838 update_dynamic_symbols. Declare unexec as void.
5931 5839
5932 * cm.c [HAVE_TERMCAP_H]: Include <termcap.h>. 5840 * cm.c [HAVE_TERMCAP_H]: Include <termcap.h>.
5933 [!HAVE_TERMCAP_H]: Prototype tputs, tgoto. 5841 [!HAVE_TERMCAP_H]: Prototype tputs, tgoto.
5934 5842
5935 * alloc.c (lisp_malloc): Declare with POINTER_TYPE. 5843 * alloc.c (lisp_malloc): Declare with POINTER_TYPE.
5936 [SYSTEM_MALLOC]: Make decls in malloc.h conditional on 5844 [SYSTEM_MALLOC]: Make decls in malloc.h conditional on DOUG_LEA_MALLOC.
5937 DOUG_LEA_MALLOC.
5938 5845
5939 * alloca.c: Use #error. 5846 * alloca.c: Use #error.
5940 [POINTER_TYPE]: Use it. 5847 [POINTER_TYPE]: Use it.
5941 5848
5942 * eval.c (Fdefvar): Doc fix. 5849 * eval.c (Fdefvar): Doc fix.
6011 too small to decode the whole source text. Use 5918 too small to decode the whole source text. Use
6012 allocate_conversion_buffer, extend_conversion_buffer and 5919 allocate_conversion_buffer, extend_conversion_buffer and
6013 free_conversion_buffer, not get_conversion_buffer. 5920 free_conversion_buffer, not get_conversion_buffer.
6014 (encode_coding_string): Likewise. 5921 (encode_coding_string): Likewise.
6015 (init_coding): Function deleted. 5922 (init_coding): Function deleted.
6016 (init_coding_once): Delete code to initialize 5923 (init_coding_once): Delete code to initialize conversion_buffer_size.
6017 conversion_buffer_size.
6018 5924
6019 * emacs.c (main): Don't call init_coding. 5925 * emacs.c (main): Don't call init_coding.
6020 5926
6021 * msdos.c (IT_write_glyphs): Use a locally declared 5927 * msdos.c (IT_write_glyphs): Use a locally declared conversion_buffer.
6022 conversion_buffer.
6023 5928
6024 * term.c (write_glyphs): Use a locally declared conversion_buffer. 5929 * term.c (write_glyphs): Use a locally declared conversion_buffer.
6025 (insert_glyphs): Likewise. 5930 (insert_glyphs): Likewise.
6026 5931
6027 * w32console.c (write_glyphs): Use a locally declared 5932 * w32console.c (write_glyphs): Use a locally declared
6032 * msdos.c (IT_update_begin): Don't crash if mouse_face_mouse_frame 5937 * msdos.c (IT_update_begin): Don't crash if mouse_face_mouse_frame
6033 member of display_info is NULL. 5938 member of display_info is NULL.
6034 5939
6035 2000-08-15 Gerd Moellmann <gerd@gnu.org> 5940 2000-08-15 Gerd Moellmann <gerd@gnu.org>
6036 5941
6037 * alloc.c (compact_small_strings): Use safe_bcopy, add an 5942 * alloc.c (compact_small_strings): Use safe_bcopy, add an assertion.
6038 assertion.
6039 5943
6040 * term.c (turn_off_face): Reset standout_mode when resetting 5944 * term.c (turn_off_face): Reset standout_mode when resetting
6041 appearances with capability `me'. 5945 appearances with capability `me'.
6042 (write_glyphs): Switch on inverse video before each face change. 5946 (write_glyphs): Switch on inverse video before each face change.
6043 5947
6050 * window.c: Fix embedded comment. 5954 * window.c: Fix embedded comment.
6051 (syms_of_window): Fix doc string. 5955 (syms_of_window): Fix doc string.
6052 5956
6053 2000-08-14 Gerd Moellmann <gerd@gnu.org> 5957 2000-08-14 Gerd Moellmann <gerd@gnu.org>
6054 5958
6055 * keymap.c (push_key_description): If C without modifiers is < 32, 5959 * keymap.c (push_key_description): If C without modifiers is < 32,
6056 make sure to print `C-' before `M-', like in the manual. 5960 make sure to print `C-' before `M-', like in the manual.
6057 5961
6058 2000-08-11 Gerd Moellmann <gerd@gnu.org> 5962 2000-08-11 Gerd Moellmann <gerd@gnu.org>
6059 5963
6060 * fns.c (hashfn_eq, hashfn_eql): Don't handle strings specially 5964 * fns.c (hashfn_eq, hashfn_eql): Don't handle strings specially
6061 since they aren't relocated anymore. 5965 since they aren't relocated anymore.
6062 (sxhash_string): Make sure returned hash code fits in a Lisp 5966 (sxhash_string): Make sure returned hash code fits in a Lisp integer.
6063 integer.
6064 5967
6065 * xdisp.c (try_cursor_movement): Fix handling of cursor in 5968 * xdisp.c (try_cursor_movement): Fix handling of cursor in
6066 partially visible line which is smaller than the window's 5969 partially visible line which is smaller than the window's height.
6067 height.
6068 5970
6069 2000-08-11 Kenichi Handa <handa@etl.go.jp> 5971 2000-08-11 Kenichi Handa <handa@etl.go.jp>
6070 5972
6071 * ccl.c (CCL_READ_CHAR): If source is multibyte, pay attention to 5973 * ccl.c (CCL_READ_CHAR): If source is multibyte, pay attention to
6072 the multibyte form of eight-bit-control characters. 5974 the multibyte form of eight-bit-control characters.
6073 (Fccl_execute_on_string): Initialize ccl->multibyte. 5975 (Fccl_execute_on_string): Initialize ccl->multibyte.
6074 5976
6075 * ccl.h (struct ccl_program): New member multibyte. 5977 * ccl.h (struct ccl_program): New member multibyte.
6076 5978
6077 * coding.c (ccl_coding_driver): Initialize ccl->multibyte. 5979 * coding.c (ccl_coding_driver): Initialize ccl->multibyte.
6083 (analyse_first) <exactn>: Setup fastmap correctly for 5985 (analyse_first) <exactn>: Setup fastmap correctly for
6084 eight-bit-control characters. 5986 eight-bit-control characters.
6085 5987
6086 2000-08-11 Kenichi Handa <handa@etl.go.jp> 5988 2000-08-11 Kenichi Handa <handa@etl.go.jp>
6087 5989
6088 * termhooks.h (enum event_kind): New member 5990 * termhooks.h (enum event_kind): New member multibyte_char_keystroke.
6089 multibyte_char_keystroke.
6090 5991
6091 * keyboard.c (make_lispy_event): Handle the new event type 5992 * keyboard.c (make_lispy_event): Handle the new event type
6092 multibyte_char_keystroke. 5993 multibyte_char_keystroke.
6093 5994
6094 * xterm.c: Include coding.h. 5995 * xterm.c: Include coding.h.
6121 * window.c (Fwindow_end): Rewritten to not use Fvertical_motion, 6022 * window.c (Fwindow_end): Rewritten to not use Fvertical_motion,
6122 because that function doesn't cope with variable-height lines. 6023 because that function doesn't cope with variable-height lines.
6123 6024
6124 * xterm.c (x_draw_bar_cursor): If cursor is on an image, draw a 6025 * xterm.c (x_draw_bar_cursor): If cursor is on an image, draw a
6125 box cursor because that's better visible for large images. 6026 box cursor because that's better visible for large images.
6126 6027
6127 2000-08-10 Miles Bader <miles@gnu.org> 6028 2000-08-10 Miles Bader <miles@gnu.org>
6128 6029
6129 * w32term.c (note_mouse_highlight): Update calls to overlays_at. 6030 * w32term.c (note_mouse_highlight): Update calls to overlays_at.
6130 6031
6131 2000-08-10 Gerd Moellmann <gerd@gnu.org> 6032 2000-08-10 Gerd Moellmann <gerd@gnu.org>
6134 (message_dolog): Use it. 6035 (message_dolog): Use it.
6135 (syms_of_xdisp): Initialize it. 6036 (syms_of_xdisp): Initialize it.
6136 6037
6137 2000-08-10 Eli Zaretskii <eliz@is.elta.co.il> 6038 2000-08-10 Eli Zaretskii <eliz@is.elta.co.il>
6138 6039
6139 * msdos.c (IT_note_mouse_highlight): Update the calls to 6040 * msdos.c (IT_note_mouse_highlight): Update the calls to overlays_at.
6140 overlays_at.
6141 (toplevel) <kbd_buffer_store_event>: Remove prototype, it's 6041 (toplevel) <kbd_buffer_store_event>: Remove prototype, it's
6142 redundant now that keyboard.h is included. 6042 redundant now that keyboard.h is included.
6143 6043
6144 2000-08-09 Eli Zaretskii <eliz@is.elta.co.il> 6044 2000-08-09 Eli Zaretskii <eliz@is.elta.co.il>
6145 6045
6159 2000-08-09 Gerd Moellmann <gerd@gnu.org> 6059 2000-08-09 Gerd Moellmann <gerd@gnu.org>
6160 6060
6161 * lisp.h (input_pending): External declaration. 6061 * lisp.h (input_pending): External declaration.
6162 6062
6163 * dispextern.h (Qredisplay_dont_pause): Declare extern. 6063 * dispextern.h (Qredisplay_dont_pause): Declare extern.
6164 6064
6165 * xdisp.c (echo_area_display): Display thoroughly if input is 6065 * xdisp.c (echo_area_display): Display thoroughly if input is
6166 pending. Bind redisplay-dont-pause to t during the redisplay. 6066 pending. Bind redisplay-dont-pause to t during the redisplay.
6167 in case input is pending. 6067 in case input is pending.
6168 6068
6169 * dispnew.c (Qredisplay_dont_pause): New variable. 6069 * dispnew.c (Qredisplay_dont_pause): New variable.
6170 (syms_of_display): Initialize and staticpro it. 6070 (syms_of_display): Initialize and staticpro it.
6171 (update_frame_1): Don't interrupt the display for pending input if 6071 (update_frame_1): Don't interrupt the display for pending input if
6172 redisplay_dont_pause is set. 6072 redisplay_dont_pause is set.
6173 6073
6174 * dispnew.c (mode_line_string): Declare parameter MODE_LINE_P. 6074 * dispnew.c (mode_line_string): Declare parameter MODE_LINE_P.
6175 6075
6176 * xfaces.c (Ftty_suppress_bold_inverse_default_colors): Doc fix. 6076 * xfaces.c (Ftty_suppress_bold_inverse_default_colors): Doc fix.
6177 6077
6178 2000-08-09 Miles Bader <miles@lsi.nec.co.jp> 6078 2000-08-09 Miles Bader <miles@lsi.nec.co.jp>
6191 * minibuf.c (do_completion): Don't consider a simple change of 6091 * minibuf.c (do_completion): Don't consider a simple change of
6192 case as `completion'. 6092 case as `completion'.
6193 6093
6194 2000-08-08 Ken Raeburn <raeburn@gnu.org> 6094 2000-08-08 Ken Raeburn <raeburn@gnu.org>
6195 6095
6196 * keyboard.c (syms_of_keyboard): Initialize 6096 * keyboard.c (syms_of_keyboard): Initialize last_point_position_buffer.
6197 last_point_position_buffer.
6198 * undo.c (record_delete): Make sure last_point_position_buffer is 6097 * undo.c (record_delete): Make sure last_point_position_buffer is
6199 a buffer before comparing pointers. 6098 a buffer before comparing pointers.
6200 6099
6201 * coding.h (decode_coding_string): Declare. 6100 * coding.h (decode_coding_string): Declare.
6202 6101
6203 * intervals.h (Fprevious_single_char_property_change): Declare. 6102 * intervals.h (Fprevious_single_char_property_change): Declare.
6204 6103
6205 * textprop.c (Fprevious_single_char_property_change): Don't do 6104 * textprop.c (Fprevious_single_char_property_change): Don't do
6206 arithmetic directly on lisp objects. 6105 arithmetic directly on lisp objects.
6207 6106
6208 * editfns.c (find_field): Use EQ, not ==, to compare Lisp 6107 * editfns.c (find_field): Use EQ, not ==, to compare Lisp objects.
6209 objects.
6210 6108
6211 * keyboard.h (menu_item_eval_property): Declare. 6109 * keyboard.h (menu_item_eval_property): Declare.
6212 6110
6213 * xdisp.c (message_dolog): Save and protect string "*Messages*" to 6111 * xdisp.c (message_dolog): Save and protect string "*Messages*" to
6214 reuse as buffer name, instead of recreating (and discarding) every 6112 reuse as buffer name, instead of recreating (and discarding) every
6362 2000-08-02 Colin Walters <walters@cis.ohio-state.edu> 6260 2000-08-02 Colin Walters <walters@cis.ohio-state.edu>
6363 6261
6364 * window.c (display_buffer_reuse_frames): New variable. 6262 * window.c (display_buffer_reuse_frames): New variable.
6365 (Fdisplay_buffer): If display_buffer_reuse_frames is set, reuse 6263 (Fdisplay_buffer): If display_buffer_reuse_frames is set, reuse
6366 frames displaying BUFFER. 6264 frames displaying BUFFER.
6367 (syms_of_window): Define Lisp variable 6265 (syms_of_window): Define Lisp variable display-buffer-reuse-frames.
6368 display-buffer-reuse-frames.
6369 6266
6370 2000-08-01 Miles Bader <miles@gnu.org> 6267 2000-08-01 Miles Bader <miles@gnu.org>
6371 6268
6372 * editfns.c (Fconstrain_to_field): Fix the conditions for deciding 6269 * editfns.c (Fconstrain_to_field): Fix the conditions for deciding
6373 when to constrain NEW_POS (they were pretty screwed up before). 6270 when to constrain NEW_POS (they were pretty screwed up before).
6385 * callproc.c (child_setup) [MSDOS]: malloc pwd_var instead of 6282 * callproc.c (child_setup) [MSDOS]: malloc pwd_var instead of
6386 using alloca; free it after run_msdos_command returns. 6283 using alloca; free it after run_msdos_command returns.
6387 6284
6388 2000-07-27 Dave Love <fx@gnu.org> 6285 2000-07-27 Dave Love <fx@gnu.org>
6389 6286
6390 * s/irix6-5.h (IRIX_FORCE_32_BITS, LD_SWITCH_SYSTEM): Don't 6287 * s/irix6-5.h (IRIX_FORCE_32_BITS, LD_SWITCH_SYSTEM): Don't define.
6391 define. 6288 [_MIPS_SZLONG == 64]: Set up for 64-bit mode -- not currently working.
6392 [_MIPS_SZLONG == 64]: Set up for 64-bit mode -- not currently
6393 working.
6394 6289
6395 * m/iris4d.h (XUINT, XSET, XUNMARK) [_LP64]: Don't define. 6290 * m/iris4d.h (XUINT, XSET, XUNMARK) [_LP64]: Don't define.
6396 6291
6397 2000-07-27 Eli Zaretskii <eliz@is.elta.co.il> 6292 2000-07-27 Eli Zaretskii <eliz@is.elta.co.il>
6398 6293
6403 * fns.c (Fdelete): Make it work on vectors and strings in addition 6298 * fns.c (Fdelete): Make it work on vectors and strings in addition
6404 to lists. 6299 to lists.
6405 6300
6406 * fns.c (Qkey_or_value, Qkey_and_value): New variables. 6301 * fns.c (Qkey_or_value, Qkey_and_value): New variables.
6407 (syms_of_fns): Initialize new variables. 6302 (syms_of_fns): Initialize new variables.
6408 (sweep_weak_table): Handle weakness `key-or-value' and 6303 (sweep_weak_table): Handle weakness `key-or-value' and `key-and-value'.
6409 `key-and-value'.
6410 (Fmake_hash_table): Recognize `key-and-value' and `key-or-value' 6304 (Fmake_hash_table): Recognize `key-and-value' and `key-or-value'
6411 weakness, with t meaning the same as `key-and-value'. 6305 weakness, with t meaning the same as `key-and-value'.
6412 6306
6413 2000-07-27 Kenichi Handa <handa@etl.go.jp> 6307 2000-07-27 Kenichi Handa <handa@etl.go.jp>
6414 6308
6415 * coding.h (struct coding_system): Member safe_charset deleted. 6309 * coding.h (struct coding_system): Member safe_charset deleted.
6416 6310
6417 * coding.c (Qsafe_charsets): This variable deleted. 6311 * coding.c (Qsafe_charsets): This variable deleted.
6418 (Qsafe_chars, Vchar_coding_system_table, Qchar_coding_system): New 6312 (Qsafe_chars, Vchar_coding_system_table, Qchar_coding_system):
6419 variables. 6313 New variables.
6420 (coding_safe_chars): New function. 6314 (coding_safe_chars): New function.
6421 (CODING_SAFE_CHAR_P): New macro. 6315 (CODING_SAFE_CHAR_P): New macro.
6422 (CHARSET_OK): New arg C. Call CODING_SAFE_CHAR_P instead of 6316 (CHARSET_OK): New arg C. Call CODING_SAFE_CHAR_P instead of
6423 checking safe_charsets member of the coding system. Caller 6317 checking safe_charsets member of the coding system. Caller changed.
6424 changed.
6425 (detect_coding_iso2022): New local variable safe_chars. 6318 (detect_coding_iso2022): New local variable safe_chars.
6426 (DECODE_DESIGNATION): Call CODING_SAFE_CHAR_P instead of checking 6319 (DECODE_DESIGNATION): Call CODING_SAFE_CHAR_P instead of checking
6427 safe_charsets member of the coding system. 6320 safe_charsets member of the coding system.
6428 (decode_coding_iso2022): New local variable safe_chars. 6321 (decode_coding_iso2022): New local variable safe_chars.
6429 (ENCODE_ISO_CHARACTER_DIMENSION1): Don't check unsafe chars here. 6322 (ENCODE_ISO_CHARACTER_DIMENSION1): Don't check unsafe chars here.
6488 Fconstrain_to_field. 6381 Fconstrain_to_field.
6489 6382
6490 2000-07-25 Eli Zaretskii <eliz@is.elta.co.il> 6383 2000-07-25 Eli Zaretskii <eliz@is.elta.co.il>
6491 6384
6492 * fileio.c (Frename_file) [DOS_NT]: If the file names are 6385 * fileio.c (Frename_file) [DOS_NT]: If the file names are
6493 identical but for the letter-case, don't call 6386 identical but for the letter-case, don't call
6494 barf_or_query_if_file_exists. 6387 barf_or_query_if_file_exists.
6495 6388
6496 2000-07-25 Miles Bader <miles@gnu.org> 6389 2000-07-25 Miles Bader <miles@gnu.org>
6497 6390
6498 * editfns.c (find_field): Honor special `boundary' fields. 6391 * editfns.c (find_field): Honor special `boundary' fields.
6499 (Qboundary): New variables. 6392 (Qboundary): New variables.
6536 (display_echo_area, resize_echo_area_axactly, current_message) 6429 (display_echo_area, resize_echo_area_axactly, current_message)
6537 (truncate_echo_area, set_message_1): Call with_echo_area_buffer 6430 (truncate_echo_area, set_message_1): Call with_echo_area_buffer
6538 with new argument list. 6431 with new argument list.
6539 (resize_mini_window_1): New callback function. 6432 (resize_mini_window_1): New callback function.
6540 (current_message_1, truncate_message_1, set_message_1): Change 6433 (current_message_1, truncate_message_1, set_message_1): Change
6541 parameter lists to the new format expected by 6434 parameter lists to the new format expected by with_echo_area_buffer.
6542 with_echo_area_buffer.
6543 6435
6544 2000-07-24 Kenichi Handa <handa@etl.go.jp> 6436 2000-07-24 Kenichi Handa <handa@etl.go.jp>
6545 6437
6546 * fontset.c (fontset_ref): Remove INLINE declaration. 6438 * fontset.c (fontset_ref): Remove INLINE declaration.
6547 (fontset_ref_via_base): Likewise. 6439 (fontset_ref_via_base): Likewise.
6571 order of priority. 6463 order of priority.
6572 6464
6573 * keyboard.c (show_help_echo, gen_help_event): Extend comments. 6465 * keyboard.c (show_help_echo, gen_help_event): Extend comments.
6574 6466
6575 * xterm.c (note_mouse_highlight): If help-echo was found in an 6467 * xterm.c (note_mouse_highlight): If help-echo was found in an
6576 overlay, use that overlay as the object in which the help was 6468 overlay, use that overlay as the object in which the help was found.
6577 found.
6578 6469
6579 * window.c (foreach_window_1): Fix typo reversing an if-condition. 6470 * window.c (foreach_window_1): Fix typo reversing an if-condition.
6580 6471
6581 * window.c (foreach_window): Instead of a fake variable argument 6472 * window.c (foreach_window): Instead of a fake variable argument
6582 list, take one USER_DATA argument. 6473 list, take one USER_DATA argument.
6684 (gen_help_event): Add parameter WINDOW. 6575 (gen_help_event): Add parameter WINDOW.
6685 6576
6686 * keyboard.h (show_help_echo, gen_help_event): Change prototypes. 6577 * keyboard.h (show_help_echo, gen_help_event): Change prototypes.
6687 6578
6688 * xterm.c (help_echo_window): New variable. 6579 * xterm.c (help_echo_window): New variable.
6689 (note_mouse_highlight, note_tool_bar_highlight): Set 6580 (note_mouse_highlight, note_tool_bar_highlight): Set help_echo_window.
6690 help_echo_window.
6691 (XTread_socket): Pass help_echo_window to gen_help_event. 6581 (XTread_socket): Pass help_echo_window to gen_help_event.
6692 (syms_of_xterm): Initialize and staticpro help_echo_window. 6582 (syms_of_xterm): Initialize and staticpro help_echo_window.
6693 6583
6694 2000-07-18 Dave Love <fx@gnu.org> 6584 2000-07-18 Dave Love <fx@gnu.org>
6695 6585
6696 * Makefile.in: Fix dependencies of blockinput.h on atimer.h, 6586 * Makefile.in: Fix dependencies of blockinput.h on atimer.h, systime.h.
6697 systime.h.
6698 6587
6699 2000-07-18 Gerd Moellmann <gerd@gnu.org> 6588 2000-07-18 Gerd Moellmann <gerd@gnu.org>
6700 6589
6701 * alloc.c (allocate_string_data): If string had already data 6590 * alloc.c (allocate_string_data): If string had already data
6702 assigned, copy old contents to new string data. 6591 assigned, copy old contents to new string data.
6764 help_echo_pos to -1. 6653 help_echo_pos to -1.
6765 (w32_read_socket): Use gen_help_event instead of filling 6654 (w32_read_socket): Use gen_help_event instead of filling
6766 input_events manually. 6655 input_events manually.
6767 (syms_of_w32term): Staticpro help_echo_object. 6656 (syms_of_w32term): Staticpro help_echo_object.
6768 (x_update_window_end): Add parameter MOUSE_FACE_OVERWRITTEN_P. If 6657 (x_update_window_end): Add parameter MOUSE_FACE_OVERWRITTEN_P. If
6769 set, arrange for a mouse-highlight redisplay in 6658 set, arrange for a mouse-highlight redisplay in XTframe_up_to_date.
6770 XTframe_up_to_date.
6771 (x_clear_mouse_face): New function. 6659 (x_clear_mouse_face): New function.
6772 (w32_redisplay_interface): Add pointer to x_clear_mouse_face. 6660 (w32_redisplay_interface): Add pointer to x_clear_mouse_face.
6773 (x_update_window_begin): No need to turn off the mouse 6661 (x_update_window_begin): No need to turn off the mouse
6774 highlight here. 6662 highlight here.
6775 (show_mouse_face): Set the mouse_face_p flag of glyph rows 6663 (show_mouse_face): Set the mouse_face_p flag of glyph rows
6776 depending on whether they contain glyphs highlighted in 6664 depending on whether they contain glyphs highlighted in mouse-face.
6777 mouse-face.
6778 (x_fill_stretch_glyph_string): Consume runs of stretch 6665 (x_fill_stretch_glyph_string): Consume runs of stretch
6779 glyphs instead of a single one. 6666 glyphs instead of a single one.
6780 (BUILD_STRETCH_GLYPH_STRING): Call x_fill_stretch_glyph_string 6667 (BUILD_STRETCH_GLYPH_STRING): Call x_fill_stretch_glyph_string
6781 with new argument list. 6668 with new argument list.
6782 (x_set_glyph_string_gc): Make sure the face's GC is valid. 6669 (x_set_glyph_string_gc): Make sure the face's GC is valid.
6873 * xterm.c (x_handle_tool_bar_click): Store the frame in the 6760 * xterm.c (x_handle_tool_bar_click): Store the frame in the
6874 frame_or_window slot of TOOL_BAR_EVENT input events instead of 6761 frame_or_window slot of TOOL_BAR_EVENT input events instead of
6875 consing. For prefix events, store the frame in the `arg' slot of 6762 consing. For prefix events, store the frame in the `arg' slot of
6876 the event, otherwise store the key there. 6763 the event, otherwise store the key there.
6877 (XTread_socket): Instead of consing, use the frame_or_window slot 6764 (XTread_socket): Instead of consing, use the frame_or_window slot
6878 of HELP_EVENTs for the frame, and the `arg' slot for the help 6765 of HELP_EVENTs for the frame, and the `arg' slot for the help string.
6879 string.
6880 6766
6881 * xmenu.c (menu_highlight_callback): Store help string in the 6767 * xmenu.c (menu_highlight_callback): Store help string in the
6882 `arg' member of the input event; don't cons. 6768 `arg' member of the input event; don't cons.
6883 (menubar_selection_callback): Use the `arg' slot of input events 6769 (menubar_selection_callback): Use the `arg' slot of input events
6884 to queue additional information, instead of consing. 6770 to queue additional information, instead of consing.
6908 used by an input event to nil. 6794 used by an input event to nil.
6909 (init_keyboard): Use two times the size of the input queue 6795 (init_keyboard): Use two times the size of the input queue
6910 for kbd_buffer_gcpro. 6796 for kbd_buffer_gcpro.
6911 (syms_of_keyboard): Likewise. 6797 (syms_of_keyboard): Likewise.
6912 6798
6913 * emacs.c (handle_USR2_signal, handle_USR1_signal): Use 6799 * emacs.c (handle_USR2_signal, handle_USR1_signal):
6914 USER_SIGNAL_EVENT. 6800 Use USER_SIGNAL_EVENT.
6915 6801
6916 * termhooks.h (struct input_event): Add member `arg'. 6802 * termhooks.h (struct input_event): Add member `arg'.
6917 (MENU_BAR_EVENT): Renamed from menu_bar_event. 6803 (MENU_BAR_EVENT): Renamed from menu_bar_event.
6918 (USER_SIGNAL_EVENT): Renamed from user_signal. 6804 (USER_SIGNAL_EVENT): Renamed from user_signal.
6919 6805
6974 displaying a message instead of the minibuffer contents. 6860 displaying a message instead of the minibuffer contents.
6975 6861
6976 * xterm.c (x_update_window_begin): No need to turn off the mouse 6862 * xterm.c (x_update_window_begin): No need to turn off the mouse
6977 highlight here. 6863 highlight here.
6978 (show_mouse_face): Set the mouse_face_p flag of glyph rows 6864 (show_mouse_face): Set the mouse_face_p flag of glyph rows
6979 depending on whether they contain glyphs highlighted in 6865 depending on whether they contain glyphs highlighted in mouse-face.
6980 mouse-face.
6981 6866
6982 * dispnew.c (row_equal_p): Add parameter MOUSE_FACE_P. If set, 6867 * dispnew.c (row_equal_p): Add parameter MOUSE_FACE_P. If set,
6983 compare the mouse_face_p flags of both rows. 6868 compare the mouse_face_p flags of both rows.
6984 6869
6985 * dispextern.h (struct glyph_row): Add flag mouse_face_p. 6870 * dispextern.h (struct glyph_row): Add flag mouse_face_p.
6988 6873
6989 * keyboard.c (show_help_echo): Accept additional parameter 6874 * keyboard.c (show_help_echo): Accept additional parameter
6990 ok_to_overwrite_keystroke_echo. 6875 ok_to_overwrite_keystroke_echo.
6991 (read_char): Call show_help_echo with a zero 6876 (read_char): Call show_help_echo with a zero
6992 ok_to_overwrite_keystroke_echo argument. 6877 ok_to_overwrite_keystroke_echo argument.
6993 * keyboard.h (show_help_echo): Update prototype of 6878 * keyboard.h (show_help_echo): Update prototype of show_help_echo.
6994 show_help_echo.
6995 * xmenu.c (menu_help_callback): Call show_help_echo with non-zero 6879 * xmenu.c (menu_help_callback): Call show_help_echo with non-zero
6996 ok_to_overwrite_keystroke_echo argument. 6880 ok_to_overwrite_keystroke_echo argument.
6997 * w32menu.c (w32_menu_display_help): Call show_help_echo with 6881 * w32menu.c (w32_menu_display_help): Call show_help_echo with
6998 non-zero ok_to_overwrite_keystroke_echo argument. 6882 non-zero ok_to_overwrite_keystroke_echo argument.
6999 6883
7060 Sound support for NetBSD through "Linux emulation" support: 6944 Sound support for NetBSD through "Linux emulation" support:
7061 * config.in (HAVE_SOUNDCARD_H): Undef. 6945 * config.in (HAVE_SOUNDCARD_H): Undef.
7062 (HAVE_SOUND): Define if HAVE_SOUNDCARD_H. 6946 (HAVE_SOUND): Define if HAVE_SOUNDCARD_H.
7063 * Makefile.in (LIBSOUND): New variable. 6947 * Makefile.in (LIBSOUND): New variable.
7064 (LIBES): Include it. 6948 (LIBES): Include it.
7065 * sound.c [HAVE_SOUNDCARD_H]: Include <sys/ioctl.h> and 6949 * sound.c [HAVE_SOUNDCARD_H]: Include <sys/ioctl.h> and <soundcard.h>.
7066 <soundcard.h>. 6950 (DEFAULT_SOUND_DEVICE): Define to "/dev/dsp" if not defined elsewhere.
7067 (DEFAULT_SOUND_DEVICE): Define to "/dev/dsp" if not defined
7068 elsewhere.
7069 (vox_open): Use DEFAULT_SOUND_DEVICE. 6951 (vox_open): Use DEFAULT_SOUND_DEVICE.
7070 * s/netbsd.h (DEFAULT_SOUND_DEVICE): Define to /dev/audio. 6952 * s/netbsd.h (DEFAULT_SOUND_DEVICE): Define to /dev/audio.
7071 6953
7072 2000-07-05 Gerd Moellmann <gerd@gnu.org> 6954 2000-07-05 Gerd Moellmann <gerd@gnu.org>
7073 6955
7104 Remove all dependencies on lisp.h, and fixup some others. 6986 Remove all dependencies on lisp.h, and fixup some others.
7105 6987
7106 * w32.c (init_environment): Install code from 20.7 for providing 6988 * w32.c (init_environment): Install code from 20.7 for providing
7107 default values for environment variables, based on the 6989 default values for environment variables, based on the
7108 executable's own location. 6990 executable's own location.
7109 (map_w32_filename): Handle filenames that are longer than 6991 (map_w32_filename): Handle filenames that are longer than MAX_PATH.
7110 MAX_PATH.
7111 (sys_socket): Install socket inheritance bug fix from 20.7. 6992 (sys_socket): Install socket inheritance bug fix from 20.7.
7112 6993
7113 * alloca.c [emacs]: Include lisp.h (needed by atimer.h included 6994 * alloca.c [emacs]: Include lisp.h (needed by atimer.h included
7114 here via blockinput.h). 6995 here via blockinput.h).
7115 6996
7145 struct glyph were not set, which made glyphs unequal when compared 7026 struct glyph were not set, which made glyphs unequal when compared
7146 with GLYPH_EQUAL_P. Redisplay outputs such glyphs, and flickering 7027 with GLYPH_EQUAL_P. Redisplay outputs such glyphs, and flickering
7147 effects were the result. This also depended on the contents of 7028 effects were the result. This also depended on the contents of
7148 memory returned by xmalloc. If flickering happens again, activate 7029 memory returned by xmalloc. If flickering happens again, activate
7149 the code in clear_glyph_row that's in #if 0. If the flickering is 7030 the code in clear_glyph_row that's in #if 0. If the flickering is
7150 gone with that, chances are that it is caused by something 7031 gone with that, chances are that it is caused by something similar.
7151 similar.
7152 7032
7153 * dispnew.c (clear_glyph_row): Add debug code in #if 0. 7033 * dispnew.c (clear_glyph_row): Add debug code in #if 0.
7154 7034
7155 * dispextern.h: Add some comments. 7035 * dispextern.h: Add some comments.
7156 7036
7166 (make_window, delete_window): Set Vwindow_list to nil. 7046 (make_window, delete_window): Set Vwindow_list to nil.
7167 (check_window_containing): New function. 7047 (check_window_containing): New function.
7168 (window_from_coordinates): Rewritten. 7048 (window_from_coordinates): Rewritten.
7169 (add_window_to_list, window_list, candidate_window_p) 7049 (add_window_to_list, window_list, candidate_window_p)
7170 (decode_next_window_args, next_window): New functions. 7050 (decode_next_window_args, next_window): New functions.
7171 (Fnext_window, Fprevious_window): Rewritten in terms of 7051 (Fnext_window, Fprevious_window): Rewritten in terms of next_window.
7172 next_window.
7173 (Fwindow_list): New function. 7052 (Fwindow_list): New function.
7174 (Fother_window): Cleaned up. 7053 (Fother_window): Cleaned up.
7175 (foreach_window): Add a longer "variable argument list". Let 7054 (foreach_window): Add a longer "variable argument list". Let
7176 callback function return 0 to indicate that cycling over windows 7055 callback function return 0 to indicate that cycling over windows
7177 should stop. 7056 should stop.
7297 * coding.c (decode_coding_string): Re-fetch STRING_BYTES after 7176 * coding.c (decode_coding_string): Re-fetch STRING_BYTES after
7298 Fstring_as_unibyte. 7177 Fstring_as_unibyte.
7299 7178
7300 2000-06-25 Dave Love <fx@gnu.org> 7179 2000-06-25 Dave Love <fx@gnu.org>
7301 7180
7302 * term.c [!HAVE_TERMCAP_H]: Declare tputs, tgetent, tgetflag, 7181 * term.c [!HAVE_TERMCAP_H]: Declare tputs, tgetent, tgetflag, tgetnum.
7303 tgetnum.
7304 7182
7305 * Makefile.in (blockinput.h): Depend on atimer.h. 7183 * Makefile.in (blockinput.h): Depend on atimer.h.
7306 (atimer.h): Depend on systime.h. 7184 (atimer.h): Depend on systime.h.
7307 7185
7308 * blockinput.h: Protect against multiple inclusion. Include 7186 * blockinput.h: Protect against multiple inclusion. Include atimer.h.
7309 atimer.h. 7187
7310 7188 * atimer.h: Protect against multiple inclusion. Include systime.h.
7311 * atimer.h: Protect against multiple inclusion. Include
7312 systime.h.
7313 7189
7314 * lisp.h (swap_in_global_binding): Declare. 7190 * lisp.h (swap_in_global_binding): Declare.
7315 7191
7316 2000-06-24 Ken Raeburn <raeburn@gnu.org> 7192 2000-06-24 Ken Raeburn <raeburn@gnu.org>
7317 7193
7371 2000-06-22 Gerd Moellmann <gerd@gnu.org> 7247 2000-06-22 Gerd Moellmann <gerd@gnu.org>
7372 7248
7373 * xrdb.c (x_load_resources): Add default resource for scroll bar's 7249 * xrdb.c (x_load_resources): Add default resource for scroll bar's
7374 trough color and main window's background color. 7250 trough color and main window's background color.
7375 7251
7376 * xfns.c (Fx_file_dialog) [HAVE_MOTIF_2_1]: Handle events 7252 * xfns.c (Fx_file_dialog) [HAVE_MOTIF_2_1]: Handle events differently.
7377 differently.
7378 7253
7379 * xterm.h (Xt_app_con): External declaration. 7254 * xterm.h (Xt_app_con): External declaration.
7380 7255
7381 * widget.c (EmacsFrameRealize): Fix typo. 7256 * widget.c (EmacsFrameRealize): Fix typo.
7382 7257
7449 and unistd.h. 7324 and unistd.h.
7450 7325
7451 2000-06-20 Gerd Moellmann <gerd@gnu.org> 7326 2000-06-20 Gerd Moellmann <gerd@gnu.org>
7452 7327
7453 * keyboard.c (adjust_point_for_property): Check if display 7328 * keyboard.c (adjust_point_for_property): Check if display
7454 property should be treated as intangible by looking at its 7329 property should be treated as intangible by looking at its value.
7455 value.
7456 7330
7457 * xdisp.c (single_display_prop_intangible_p) 7331 * xdisp.c (single_display_prop_intangible_p)
7458 (display_prop_intangible_p): New functions. 7332 (display_prop_intangible_p): New functions.
7459 7333
7460 * dispextern.h (display_prop_intangible_p): Add prototype. 7334 * dispextern.h (display_prop_intangible_p): Add prototype.
7485 (re_comp): Cast gettext return value to avoid complaints when 7359 (re_comp): Cast gettext return value to avoid complaints when
7486 !HAVE_LIBINTL. 7360 !HAVE_LIBINTL.
7487 7361
7488 2000-06-20 Dave Love <fx@gnu.org> 7362 2000-06-20 Dave Love <fx@gnu.org>
7489 7363
7490 * m/stride.h, m/mips.h: Don't define HAVE_GETWD, 7364 * m/stride.h, m/mips.h: Don't define HAVE_GETWD, HAVE_GETTIMEOFDAY.
7491 HAVE_GETTIMEOFDAY.
7492 7365
7493 * m/ibmrt-aix.h: Don't declare HAVE_GETTIMEOFDAY, HAVE_VFORK. 7366 * m/ibmrt-aix.h: Don't declare HAVE_GETTIMEOFDAY, HAVE_VFORK.
7494 7367
7495 * m/ibmrs6000.h, m/ibmps2-aix.h, m/dpx2.h: Don't declare HAVE_GETWD. 7368 * m/ibmrs6000.h, m/ibmps2-aix.h, m/dpx2.h: Don't declare HAVE_GETWD.
7496 7369
7546 * regex.h: Test PROTOTYPES as well as __STDC__. 7419 * regex.h: Test PROTOTYPES as well as __STDC__.
7547 7420
7548 * unexalpha.c: Include errno.h, string.h, unistd.h. Don't declare 7421 * unexalpha.c: Include errno.h, string.h, unistd.h. Don't declare
7549 errno, strerror. Put text after #endif in comment. 7422 errno, strerror. Put text after #endif in comment.
7550 7423
7551 * xdisp.c (dump_glyph_matrix): Add `static' to declaration (for 7424 * xdisp.c (dump_glyph_matrix): Add `static' to declaration (for pcc).
7552 pcc).
7553 7425
7554 * xterm.c (x_frame_of_widget): Likewise. 7426 * xterm.c (x_frame_of_widget): Likewise.
7555 7427
7556 2000-06-19 Gerd Moellmann <gerd@gnu.org> 7428 2000-06-19 Gerd Moellmann <gerd@gnu.org>
7557 7429
7676 * print.c (printchar, strout): Don't check message_buf_print 7548 * print.c (printchar, strout): Don't check message_buf_print
7677 before calling setup_echo_area_for_printing because that 7549 before calling setup_echo_area_for_printing because that
7678 function does something useful even when message_buf_print is 7550 function does something useful even when message_buf_print is
7679 already set. 7551 already set.
7680 7552
7681 * xdisp.c (message_truncate_lines, Qmessage_truncate_lines): New 7553 * xdisp.c (message_truncate_lines, Qmessage_truncate_lines):
7682 variables. 7554 New variables.
7683 (ensure_echo_area_buffers): Initialize echo buffer's 7555 (ensure_echo_area_buffers): Initialize echo buffer's
7684 truncate lines setting to nil. 7556 truncate lines setting to nil.
7685 (with_echo_area_buffer): Don't set the echo buffer's truncate 7557 (with_echo_area_buffer): Don't set the echo buffer's truncate
7686 lines setting here. 7558 lines setting here.
7687 (set_message_1): Set it here instead, based on the value 7559 (set_message_1): Set it here instead, based on the value
7688 of message_truncate_lines. 7560 of message_truncate_lines.
7689 (resize_mini_window): Handle case that lines are truncated. 7561 (resize_mini_window): Handle case that lines are truncated.
7690 (syms_of_xdisp): Initialize Qmessage_truncate_lines. DEFVAR_BOOL 7562 (syms_of_xdisp): Initialize Qmessage_truncate_lines.
7691 message-truncate-lines. 7563 DEFVAR_BOOL message-truncate-lines.
7692 7564
7693 * keyboard.c (read_char): Bind message-truncate-lines to t 7565 * keyboard.c (read_char): Bind message-truncate-lines to t
7694 while displaying a help-echo. 7566 while displaying a help-echo.
7695 7567
7696 * lisp.h (Qmessage_truncate_lines): External declaration. 7568 * lisp.h (Qmessage_truncate_lines): External declaration.
7789 bytes_by_char_head. 7661 bytes_by_char_head.
7790 (init_charset_once): Initialize elements of bytes_by_char_head to 7662 (init_charset_once): Initialize elements of bytes_by_char_head to
7791 1 except for leading codes for private charases. 7663 1 except for leading codes for private charases.
7792 7664
7793 * charset.h (CHARSET_8_BIT_GRAPHIC): Define as 0x80. 7665 * charset.h (CHARSET_8_BIT_GRAPHIC): Define as 0x80.
7794 (UNIBYTE_STR_AS_MULTIBYTE_P): Fix for an invalid multibyte 7666 (UNIBYTE_STR_AS_MULTIBYTE_P): Fix for an invalid multibyte sequence.
7795 sequence.
7796 7667
7797 2000-06-09 Ken Raeburn <raeburn@gnu.org> 7668 2000-06-09 Ken Raeburn <raeburn@gnu.org>
7798 7669
7799 * xterm.c (x_connection_closed): If dpyinfo is NULL, don't try to 7670 * xterm.c (x_connection_closed): If dpyinfo is NULL, don't try to
7800 access the data it doesn't point to. 7671 access the data it doesn't point to.
7819 * xdisp.c (handle_fontified_prop): Don't GCPRO local var `pos'; 7690 * xdisp.c (handle_fontified_prop): Don't GCPRO local var `pos';
7820 it's an integer. 7691 it's an integer.
7821 7692
7822 2000-06-08 Kenichi Handa <handa@etl.go.jp> 7693 2000-06-08 Kenichi Handa <handa@etl.go.jp>
7823 7694
7824 * fontset.c (Fset_fontset_font): The arg CHARACTER may be a 7695 * fontset.c (Fset_fontset_font): The arg CHARACTER may be a charset.
7825 charset.
7826 7696
7827 2000-06-07 Gerd Moellmann <gerd@gnu.org> 7697 2000-06-07 Gerd Moellmann <gerd@gnu.org>
7828 7698
7829 * window.c (displayed_window_lines): Take empty lines at 7699 * window.c (displayed_window_lines): Take empty lines at
7830 the bottom of a window into account. 7700 the bottom of a window into account.
7978 2000-05-30 Jason Rumney <jasonr@gnu.org> 7848 2000-05-30 Jason Rumney <jasonr@gnu.org>
7979 7849
7980 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: New macros. 7850 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: New macros.
7981 [WINDOWSNT]: Add extern for Vw32_system_coding_system. 7851 [WINDOWSNT]: Add extern for Vw32_system_coding_system.
7982 7852
7983 * dispextern.h (struct glyph) [WINDOWSNT]: Add w32_font_type 7853 * dispextern.h (struct glyph) [WINDOWSNT]: Add w32_font_type member.
7984 member.
7985 7854
7986 * fileio.c (Fread_file_name) [HAVE_NTGUI]: Use file dialog. 7855 * fileio.c (Fread_file_name) [HAVE_NTGUI]: Use file dialog.
7987 (Fread_file_name) [HAVE_NTGUI, USE_MOTIF]: Do not attempt to 7856 (Fread_file_name) [HAVE_NTGUI, USE_MOTIF]: Do not attempt to
7988 expand a nil default_filename. 7857 expand a nil default_filename.
7989 7858
8001 * w32fns.c: Format and doc changes to bring closer to xfns.c. 7870 * w32fns.c: Format and doc changes to bring closer to xfns.c.
8002 (VIETNAMESE_CHARSET): Define if not defined in system headers. 7871 (VIETNAMESE_CHARSET): Define if not defined in system headers.
8003 (Qline_spacing, Qcenter): New variables. 7872 (Qline_spacing, Qcenter): New variables.
8004 (Qw32_charset_*, w32_codepage_for_font): Moved from w32term.c. 7873 (Qw32_charset_*, w32_codepage_for_font): Moved from w32term.c.
8005 (x_set_line_spacing): New function. 7874 (x_set_line_spacing): New function.
8006 (x_set_frame_parameters): Use FRAME_NEW_WIDTH, FRAME_NEW_HEIGHT 7875 (x_set_frame_parameters): Use FRAME_NEW_WIDTH, FRAME_NEW_HEIGHT macros.
8007 macros.
8008 (x_specified_cursor_type): New function. 7876 (x_specified_cursor_type): New function.
8009 (x_set_cursor_type): Use it. 7877 (x_set_cursor_type): Use it.
8010 (x_set_name, x_set_title): Use ENCODE_SYSTEM to encode titlebar 7878 (x_set_name, x_set_title): Use ENCODE_SYSTEM to encode titlebar
8011 and icon strings. 7879 and icon strings.
8012 (validate_x_resource_name, x_get_resource_string): Measure lengths 7880 (validate_x_resource_name, x_get_resource_string): Measure lengths
8245 version. 8113 version.
8246 (MSDOS_SUPPORT): Add dos-vars.elc, ccl.elc, and codepage.elc. 8114 (MSDOS_SUPPORT): Add dos-vars.elc, ccl.elc, and codepage.elc.
8247 8115
8248 2000-05-23 Kenichi Handa <handa@etl.go.jp> 8116 2000-05-23 Kenichi Handa <handa@etl.go.jp>
8249 8117
8250 * syntax.c (skip_chars): Use FETCH_STRING_CHAR_ADVANCE 8118 * syntax.c (skip_chars): Use FETCH_STRING_CHAR_ADVANCE unconditionally.
8251 unconditionally.
8252 8119
8253 * msdos.c (IT_write_glyphs): Set coding->src_multibyte to 1. 8120 * msdos.c (IT_write_glyphs): Set coding->src_multibyte to 1.
8254 8121
8255 * term.c (encode_terminal_code): Set coding->src_multibyte 8122 * term.c (encode_terminal_code): Set coding->src_multibyte properly.
8256 properly.
8257 8123
8258 * coding.c (encode_eol): Fix a bug of DOS style EOL encoding. 8124 * coding.c (encode_eol): Fix a bug of DOS style EOL encoding.
8259 8125
8260 2000-05-22 Kenichi Handa <handa@etl.go.jp> 8126 2000-05-22 Kenichi Handa <handa@etl.go.jp>
8261 8127
8310 8176
8311 * ccl.c (CCL_WRITE_CHAR): Be sure to write single byte characters 8177 * ccl.c (CCL_WRITE_CHAR): Be sure to write single byte characters
8312 as is. 8178 as is.
8313 (CCL_MAKE_CHAR): Use MAKE_CHAR, not MAKE_NON_ASCII_CHAR. 8179 (CCL_MAKE_CHAR): Use MAKE_CHAR, not MAKE_NON_ASCII_CHAR.
8314 8180
8315 * charset.c (Qeight_bit_control, Qeight_bit_graphic): New 8181 * charset.c (Qeight_bit_control, Qeight_bit_graphic): New variables.
8316 variables.
8317 (SPLIT_CHARACTER_SEQ): This macro deleted. 8182 (SPLIT_CHARACTER_SEQ): This macro deleted.
8318 (SPLIT_MULTIBYTE_SEQ): Assume that multibyte sequence at STR is 8183 (SPLIT_MULTIBYTE_SEQ): Assume that multibyte sequence at STR is valid.
8319 valid.
8320 (CHAR_COMPONENTS_VALID_P): Handle new charsets; eight-bit-control 8184 (CHAR_COMPONENTS_VALID_P): Handle new charsets; eight-bit-control
8321 and eight-bit-graphic. 8185 and eight-bit-graphic.
8322 (char_to_string): Likewise. Signal an error for too large 8186 (char_to_string): Likewise. Signal an error for too large
8323 character code. 8187 character code.
8324 (char_printable_p): Return 0 for 8-bit characters. 8188 (char_printable_p): Return 0 for 8-bit characters.
8333 (Fcharset_after): Simplified. 8197 (Fcharset_after): Simplified.
8334 (char_valid_p): Use SPLIT_CHAR, not SPLIT_NON_ASCII_CHAR. 8198 (char_valid_p): Use SPLIT_CHAR, not SPLIT_NON_ASCII_CHAR.
8335 (char_bytes): Return 2 for chars of the range 0xA0..0xFF. 8199 (char_bytes): Return 2 for chars of the range 0xA0..0xFF.
8336 (multibyte_chars_in_text): Simplified by assuming there's no 8200 (multibyte_chars_in_text): Simplified by assuming there's no
8337 invalid multibyte sequence. 8201 invalid multibyte sequence.
8338 (parse_str_as_multibyte, str_as_multibyte, str_to_multibyte, 8202 (parse_str_as_multibyte, str_as_multibyte, str_to_multibyte)
8339 str_as_unibyte): New functions. 8203 (str_as_unibyte): New functions.
8340 (Fstring): Simpified by assuming that byte combining never 8204 (Fstring): Simpified by assuming that byte combining never happens.
8341 happens.
8342 (init_charset_once): Initialization for 8205 (init_charset_once): Initialization for
8343 LEADING_CODE_8_BIT_CONTROL. 8206 LEADING_CODE_8_BIT_CONTROL.
8344 (syms_of_charset): Intern and staticpro Qeight_bit_control and 8207 (syms_of_charset): Intern and staticpro Qeight_bit_control and
8345 Qeight_bit_graphic. Include them in Vcharset_list. Make charsets 8208 Qeight_bit_graphic. Include them in Vcharset_list. Make charsets
8346 eight-bit-control and eight-bit-graphic. 8209 eight-bit-control and eight-bit-graphic.
8347 8210
8348 * charset.h (LEADING_CODE_8_BIT_CONTROL, CHARSET_8_BIT_CONTROL, 8211 * charset.h (LEADING_CODE_8_BIT_CONTROL, CHARSET_8_BIT_CONTROL)
8349 CHARSET_8_BIT_GRAPHIC): New macros. 8212 (CHARSET_8_BIT_GRAPHIC): New macros.
8350 (SINGLE_BYTE_CHAR_P): Make it faster by using casting. 8213 (SINGLE_BYTE_CHAR_P): Make it faster by using casting.
8351 (CHARSET_ISO_GRAPHIC_PLANE): Use XINT instead of XFASTINT. 8214 (CHARSET_ISO_GRAPHIC_PLANE): Use XINT instead of XFASTINT.
8352 (CHARSET_REVERSE_CHARSET): Likewise. 8215 (CHARSET_REVERSE_CHARSET): Likewise.
8353 (CHARSET_VALID_P): Handle new charsets; eight-bit-control and 8216 (CHARSET_VALID_P): Handle new charsets; eight-bit-control and
8354 eight-bit-graphic. 8217 eight-bit-graphic.
8357 (PARSE_MULTIBYTE_SEQ) [BYTE_COMBINING_DEBUG]: Abort if we 8220 (PARSE_MULTIBYTE_SEQ) [BYTE_COMBINING_DEBUG]: Abort if we
8358 encounter an invalid multibyte sequence. 8221 encounter an invalid multibyte sequence.
8359 (PARSE_MULTIBYTE_SEQ) [not BYTE_COMBINING_DEBUG]: Assume multibyte 8222 (PARSE_MULTIBYTE_SEQ) [not BYTE_COMBINING_DEBUG]: Assume multibyte
8360 sequence is always valid. 8223 sequence is always valid.
8361 (MAKE_NON_ASCII_CHAR, SPLIT_NON_ASCII_CHAR): These macros Deleted. 8224 (MAKE_NON_ASCII_CHAR, SPLIT_NON_ASCII_CHAR): These macros Deleted.
8362 (UNIBYTE_STR_AS_MULTIBYTE_P, MULTIBYTE_STR_AS_UNIBYTE_P): New 8225 (UNIBYTE_STR_AS_MULTIBYTE_P, MULTIBYTE_STR_AS_UNIBYTE_P): New macros.
8363 macros.
8364 (CHAR_STRING): For 8-bit characters, call char_to_string. 8226 (CHAR_STRING): For 8-bit characters, call char_to_string.
8365 (INC_POS) [not BYTE_COMBINING_DEBUG]: Faster version. Assume 8227 (INC_POS) [not BYTE_COMBINING_DEBUG]: Faster version. Assume
8366 multibyte sequence is always valid. 8228 multibyte sequence is always valid.
8367 (BUF_INC_POS) [not BYTE_COMBINING_DEBUG]: Likewise. 8229 (BUF_INC_POS) [not BYTE_COMBINING_DEBUG]: Likewise.
8368 (parse_str_as_multibyte, str_as_multibyte, str_to_multibyte, 8230 (parse_str_as_multibyte, str_as_multibyte, str_to_multibyte)
8369 str_as_unibyte): Extern them. 8231 (str_as_unibyte): Extern them.
8370 (BCOPY_SHORT): Fix a bug. 8232 (BCOPY_SHORT): Fix a bug.
8371 (CHAR_LEN): This macro deleted. Callers changed to use 8233 (CHAR_LEN): This macro deleted. Callers changed to use CHAR_BYTES.
8372 CHAR_BYTES.
8373 (FETCH_STRING_CHAR_ADVANCE): Check multibyteness of STRING. 8234 (FETCH_STRING_CHAR_ADVANCE): Check multibyteness of STRING.
8374 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): New macro. 8235 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): New macro.
8375 (FETCH_CHAR_ADVANCE): Check multibyteness of the current buffer. 8236 (FETCH_CHAR_ADVANCE): Check multibyteness of the current buffer.
8376 8237
8377 * coding.c (ONE_MORE_BYTE, TWO_MORE_BYTES): Set coding->result to 8238 * coding.c (ONE_MORE_BYTE, TWO_MORE_BYTES): Set coding->result to
8378 CODING_FINISH_INSUFFICIENT_SRC if there's not enough source. 8239 CODING_FINISH_INSUFFICIENT_SRC if there's not enough source.
8379 (ONE_MORE_CHAR, EMIT_CHAR, EMIT_ONE_BYTE, EMIT_TWO_BYTE, 8240 (ONE_MORE_CHAR, EMIT_CHAR, EMIT_ONE_BYTE, EMIT_TWO_BYTE)
8380 EMIT_BYTES): New macros. 8241 (EMIT_BYTES): New macros.
8381 (THREE_MORE_BYTES, DECODE_CHARACTER_ASCII, 8242 (THREE_MORE_BYTES, DECODE_CHARACTER_ASCII)
8382 DECODE_CHARACTER_DIMENSION1, DECODE_CHARACTER_DIMENSION2): These 8243 (DECODE_CHARACTER_DIMENSION1, DECODE_CHARACTER_DIMENSION2): These
8383 macros deleted. 8244 macros deleted.
8384 (CHECK_CODE_RANGE_A0_FF): This macro deleted. 8245 (CHECK_CODE_RANGE_A0_FF): This macro deleted.
8385 (detect_coding_emacs_mule): Use UNIBYTE_STR_AS_MULTIBYTE_P to 8246 (detect_coding_emacs_mule): Use UNIBYTE_STR_AS_MULTIBYTE_P to
8386 check the validity of multibyte sequence. 8247 check the validity of multibyte sequence.
8387 (decode_coding_emacs_mule): New function. 8248 (decode_coding_emacs_mule): New function.
8401 (encode_coding_iso2022, decode_coding_sjis_big5): Get a character 8262 (encode_coding_iso2022, decode_coding_sjis_big5): Get a character
8402 from the source by ONE_MORE_CHAR. Don't handle the case of last 8263 from the source by ONE_MORE_CHAR. Don't handle the case of last
8403 block here. 8264 block here.
8404 (DECODE_SJIS_BIG5_CHARACTER, ENCODE_SJIS_BIG5_CHARACTER): These 8265 (DECODE_SJIS_BIG5_CHARACTER, ENCODE_SJIS_BIG5_CHARACTER): These
8405 macros deleted. 8266 macros deleted.
8406 (detect_coding_sjis, detect_coding_big5, detect_coding_utf_8, 8267 (detect_coding_sjis, detect_coding_big5, detect_coding_utf_8)
8407 detect_coding_utf_16, detect_coding_ccl): Use ONE_MORE_BYTE and 8268 (detect_coding_utf_16, detect_coding_ccl): Use ONE_MORE_BYTE and
8408 TWO_MORE_BYTES to fetch a byte from the source. 8269 TWO_MORE_BYTES to fetch a byte from the source.
8409 (encode_eol): Pay attention to coding->src_multibyte. 8270 (encode_eol): Pay attention to coding->src_multibyte.
8410 (detect_coding, detect_eol): Preserve members src_multibyte and 8271 (detect_coding, detect_eol): Preserve members src_multibyte and
8411 dst_multibyte. 8272 dst_multibyte.
8412 (DECODING_BUFFER_MAG): Return 2 even for coding_type_raw_text. 8273 (DECODING_BUFFER_MAG): Return 2 even for coding_type_raw_text.
8435 (decode_coding_string, encode_coding_string): New functions. 8296 (decode_coding_string, encode_coding_string): New functions.
8436 (code_convert_string1, code_convert_string_norecord): Call one of 8297 (code_convert_string1, code_convert_string_norecord): Call one of
8437 above. 8298 above.
8438 (Fdecode_sjis_char, Fdecode_big5_char): Use MAKE_CHAR instead of 8299 (Fdecode_sjis_char, Fdecode_big5_char): Use MAKE_CHAR instead of
8439 MAKE_NON_ASCII_CHAR. 8300 MAKE_NON_ASCII_CHAR.
8440 (Fset_terminal_coding_system_internal, 8301 (Fset_terminal_coding_system_internal)
8441 Fset_safe_terminal_coding_system_internal): Setup src_multibyte 8302 (Fset_safe_terminal_coding_system_internal): Setup src_multibyte
8442 and dst_multibyte members. 8303 and dst_multibyte members.
8443 (init_coding_once): Initialize iso_code_class with new enum 8304 (init_coding_once): Initialize iso_code_class with new enum
8444 ISO_control_0 and ISO_control_1. 8305 ISO_control_0 and ISO_control_1.
8445 8306
8446 * coding.h (enum iso_code_class_type): Member ISO_control_code is 8307 * coding.h (enum iso_code_class_type): Member ISO_control_code is
8493 (fontset_ref_via_base, fontset_set): Likewise 8354 (fontset_ref_via_base, fontset_set): Likewise
8494 8355
8495 * insdel.c (adjust_markers_for_record_delete): Deleted. 8356 * insdel.c (adjust_markers_for_record_delete): Deleted.
8496 (adjust_markers_for_insert): Argument changed. Caller changed. 8357 (adjust_markers_for_insert): Argument changed. Caller changed.
8497 (adjust_markers_for_replace): Likewise. 8358 (adjust_markers_for_replace): Likewise.
8498 (ADJUST_CHAR_POS, combine_bytes, byte_combining_error, 8359 (ADJUST_CHAR_POS, combine_bytes, byte_combining_error)
8499 CHECK_BYTE_COMBINING_FOR_INSERT): Deleted. 8360 (CHECK_BYTE_COMBINING_FOR_INSERT): Deleted.
8500 (copy_text): Delete unused local varialbe c_save. For converting 8361 (copy_text): Delete unused local varialbe c_save. For converting
8501 to multibyte, be sure to make all 8-bit characters in valid 8362 to multibyte, be sure to make all 8-bit characters in valid
8502 multibyte form. 8363 multibyte form.
8503 (count_size_as_multibyte): Handle 8-bit characters correctly. 8364 (count_size_as_multibyte): Handle 8-bit characters correctly.
8504 (insert_1_both, insert_from_string_1, insert_from_buffer_1, 8365 (insert_1_both, insert_from_string_1, insert_from_buffer_1)
8505 adjust_after_replace, replace_range, del_range_2) 8366 (adjust_after_replace, replace_range, del_range_2)
8506 [BYTE_COMBINING_DEBUG]: Abort if byte combining occurs. 8367 [BYTE_COMBINING_DEBUG]: Abort if byte combining occurs.
8507 (insert_1_both, insert_from_string_1, insert_from_buffer_1, 8368 (insert_1_both, insert_from_string_1, insert_from_buffer_1)
8508 adjust_after_replace, replace_range, del_range_2) Delete codes for 8369 (adjust_after_replace, replace_range, del_range_2) Delete codes for
8509 handling byte combining. 8370 handling byte combining.
8510 (adjust_before_replace): Deleted. 8371 (adjust_before_replace): Deleted.
8511 8372
8512 * keymap.c (Fsingle_key_description): Use SPLIT_CHAR instead of 8373 * keymap.c (Fsingle_key_description): Use SPLIT_CHAR instead of
8513 SPLIT_NON_ASCII_CHAR. 8374 SPLIT_NON_ASCII_CHAR.
8514 (describe_vector): Use MAKE_CHAR instead of MAKE_NON_ASCII_CHAR. 8375 (describe_vector): Use MAKE_CHAR instead of MAKE_NON_ASCII_CHAR.
8515 (Faccessible_keymaps): Use FETCH_STRING_CHAR_ADVANCE 8376 (Faccessible_keymaps): Use FETCH_STRING_CHAR_ADVANCE unconditionally.
8516 unconditionally.
8517 (Fkey_description): Likewise. 8377 (Fkey_description): Likewise.
8518 8378
8519 * lread.c (read1): On reading multibyte string, be sure to make 8379 * lread.c (read1): On reading multibyte string, be sure to make
8520 all 8-bit chararacters in valid multibyte form. 8380 all 8-bit chararacters in valid multibyte form.
8521 (readchar): Use FETCH_STRING_CHAR_ADVANCE unconditionally. 8381 (readchar): Use FETCH_STRING_CHAR_ADVANCE unconditionally.
8528 (create_process): Don't encode arguments here. Setup 8388 (create_process): Don't encode arguments here. Setup
8529 src_multibyte and dst_multibyte members of struct coding. 8389 src_multibyte and dst_multibyte members of struct coding.
8530 (read_process_output): Setup src_multibyte and dst_multibyte 8390 (read_process_output): Setup src_multibyte and dst_multibyte
8531 members of struct coding. If the output is to multibyte buffer, 8391 members of struct coding. If the output is to multibyte buffer,
8532 always decode the output of the process. Adjust the 8392 always decode the output of the process. Adjust the
8533 representation of 8-bit characters to the multibyteness of the 8393 representation of 8-bit characters to the multibyteness of the output.
8534 output.
8535 (send_process): Setup coding->src_multibyte according to the 8394 (send_process): Setup coding->src_multibyte according to the
8536 multibyteness of the source. 8395 multibyteness of the source.
8537 8396
8538 * search.c (wordify): Use FETCH_STRING_CHAR_ADVANCE 8397 * search.c (wordify): Use FETCH_STRING_CHAR_ADVANCE unconditionally.
8539 unconditionally.
8540 (Freplace_match): Use FETCH_STRING_CHAR_ADVANCE and 8398 (Freplace_match): Use FETCH_STRING_CHAR_ADVANCE and
8541 FETCH_STRING_CHAR_ADVANCE_NO_CHECK appropriately. 8399 FETCH_STRING_CHAR_ADVANCE_NO_CHECK appropriately.
8542 8400
8543 * term.c (produce_special_glyphs): Use CHAR_BYTES instead of 8401 * term.c (produce_special_glyphs): Use CHAR_BYTES instead of CHAR_LEN.
8544 CHAR_LEN.
8545 8402
8546 * w16select.c (Fw16_set_clipboard_data): Setup members 8403 * w16select.c (Fw16_set_clipboard_data): Setup members
8547 src_multibyte and dst_multibyte of coding. Adjusted for the 8404 src_multibyte and dst_multibyte of coding. Adjusted for the
8548 change for find_charset_in_str. 8405 change for find_charset_in_str.
8549 (Fw16_get_clipboard_data): Likewise. 8406 (Fw16_get_clipboard_data): Likewise.
8557 change for find_charset_in_str. 8414 change for find_charset_in_str.
8558 (Fw32_get_clipboard_data): Likewise. 8415 (Fw32_get_clipboard_data): Likewise.
8559 8416
8560 * xdisp.c (get_next_display_element): Handle 8-bit characters 8417 * xdisp.c (get_next_display_element): Handle 8-bit characters
8561 correctly. 8418 correctly.
8562 (next_element_from_display_vector): Use CHAR_BYTES instead of 8419 (next_element_from_display_vector): Use CHAR_BYTES instead of CHAR_LEN.
8563 CHAR_LEN. 8420 (disp_char_vector): Use SPLIT_CHAR instead of SPLIT_NON_ASCII_CHAR.
8564 (disp_char_vector): Use SPLIT_CHAR instead of
8565 SPLIT_NON_ASCII_CHAR.
8566 8421
8567 * xselect.c (selection_data_to_lisp_data): Setup members 8422 * xselect.c (selection_data_to_lisp_data): Setup members
8568 src_multibyte and dst_multibyte of coding. Adjusted for the 8423 src_multibyte and dst_multibyte of coding. Adjusted for the
8569 change for find_charset_in_str. 8424 change for find_charset_in_str.
8570 (lisp_data_to_selection_data): Likewise. 8425 (lisp_data_to_selection_data): Likewise.
8571 8426
8572 2000-05-19 Gerd Moellmann <gerd@gnu.org> 8427 2000-05-19 Gerd Moellmann <gerd@gnu.org>
8573 8428
8574 * buffer.c (Fbury_buffer): Avoid trouble from burying a killed 8429 * buffer.c (Fbury_buffer): Avoid trouble from burying a killed buffer.
8575 buffer.
8576 8430
8577 * dispextern.h (Vimage_types): Add extern declaration. 8431 * dispextern.h (Vimage_types): Add extern declaration.
8578 8432
8579 * xdisp.c (Vimage_types): Moved here from xfns.c. 8433 * xdisp.c (Vimage_types): Moved here from xfns.c.
8580 (syms_of_xdisp): Move `image-types' variable here from xfns.c. 8434 (syms_of_xdisp): Move `image-types' variable here from xfns.c.
8626 Fmake_temp_name. 8480 Fmake_temp_name.
8627 (Fmake_temp_name): Use it. 8481 (Fmake_temp_name): Use it.
8628 8482
8629 2000-05-15 Eli Zaretskii <eliz@is.elta.co.il> 8483 2000-05-15 Eli Zaretskii <eliz@is.elta.co.il>
8630 8484
8631 * window.c (coordinates_in_window): Subtract 1 when computing 8485 * window.c (coordinates_in_window): Subtract 1 when computing right_x.
8632 right_x.
8633 8486
8634 2000-05-15 Gerd Moellmann <gerd@gnu.org> 8487 2000-05-15 Gerd Moellmann <gerd@gnu.org>
8635 8488
8636 * Makefile.in (lisp): Add env.elc. 8489 * Makefile.in (lisp): Add env.elc.
8637 8490
8712 to the limits, increase the limits. 8565 to the limits, increase the limits.
8713 8566
8714 2000-05-01 Kenichi Handa <handa@etl.go.jp> 8567 2000-05-01 Kenichi Handa <handa@etl.go.jp>
8715 8568
8716 * fontset.c (fs_load_font): By default, use 0x00..0x7f for ASCII. 8569 * fontset.c (fs_load_font): By default, use 0x00..0x7f for ASCII.
8717 Check Vfont_encoding_alist against the full name of the opened 8570 Check Vfont_encoding_alist against the full name of the opened font.
8718 font.
8719 8571
8720 2000-04-28 Gerd Moellmann <gerd@gnu.org> 8572 2000-04-28 Gerd Moellmann <gerd@gnu.org>
8721 8573
8722 * xdisp.c (make_cursor_line_fully_visible): Handle case of rows 8574 * xdisp.c (make_cursor_line_fully_visible): Handle case of rows
8723 taller than the window. 8575 taller than the window.
8772 first glyph not fitting on the line. 8624 first glyph not fitting on the line.
8773 8625
8774 2000-04-25 Gerd Moellmann <gerd@gnu.org> 8626 2000-04-25 Gerd Moellmann <gerd@gnu.org>
8775 8627
8776 * xdisp.c (try_window_id) <all changes above window start>: Adjust 8628 * xdisp.c (try_window_id) <all changes above window start>: Adjust
8777 positions in glyph matrix. Don't compute new window end 8629 positions in glyph matrix. Don't compute new window end positions.
8778 positions.
8779 8630
8780 * dispnew.c (increment_matrix_positions): Renamed from 8631 * dispnew.c (increment_matrix_positions): Renamed from
8781 increment_glyph_matrix_buffer_positions. 8632 increment_glyph_matrix_buffer_positions.
8782 (increment_row_positions): Renamed from 8633 (increment_row_positions): Renamed from
8783 increment_glyph_row_buffer_positions. 8634 increment_glyph_row_buffer_positions.
8934 BROKEN_MKTIME. 8785 BROKEN_MKTIME.
8935 8786
8936 2000-04-14 Gerd Moellmann <gerd@gnu.org> 8787 2000-04-14 Gerd Moellmann <gerd@gnu.org>
8937 8788
8938 * filelock.c (MAKE_LOCK_NAME): Allocate 2 more bytes. 8789 * filelock.c (MAKE_LOCK_NAME): Allocate 2 more bytes.
8939 (fill_in_lock_file_name): Avoid existing files that aren't 8790 (fill_in_lock_file_name): Avoid existing files that aren't links.
8940 links.
8941 8791
8942 2000-04-14 Dave Love <fx@gnu.org> 8792 2000-04-14 Dave Love <fx@gnu.org>
8943 8793
8944 * Makefile.in (LIBS, LIBOBJS): New variable. 8794 * Makefile.in (LIBS, LIBOBJS): New variable.
8945 (INTERVAL_SRC): Convert to make variable. 8795 (INTERVAL_SRC): Convert to make variable.
8960 * composite.c (update_compositions): If FROM and TO are not in a 8810 * composite.c (update_compositions): If FROM and TO are not in a
8961 valid range, do nothing. 8811 valid range, do nothing.
8962 8812
8963 2000-04-13 Gerd Moellmann <gerd@gnu.org> 8813 2000-04-13 Gerd Moellmann <gerd@gnu.org>
8964 8814
8965 * tparam.c (tparam1): Abort when encountering an unknown 8815 * tparam.c (tparam1): Abort when encountering an unknown `%'-specifier.
8966 `%'-specifier. 8816
8967 8817 * s/freebsd.h (TERMCAP_OBJ) [__FreeBSD__ >= 4]: Define as terminfo.o.
8968 * s/freebsd.h (TERMCAP_OBJ) [__FreeBSD__ >= 4]: Define as
8969 terminfo.o.
8970 8818
8971 * Makefile.in (termcapobj) [LIBS_TERMCAP && TERMCAP_OBJ]: Define 8819 * Makefile.in (termcapobj) [LIBS_TERMCAP && TERMCAP_OBJ]: Define
8972 as TERMCAP_OBJ. 8820 as TERMCAP_OBJ.
8973 8821
8974 2000-04-13 Eli Zaretskii <eliz@is.elta.co.il> 8822 2000-04-13 Eli Zaretskii <eliz@is.elta.co.il>
9007 8855
9008 * indent.c (compute_motion): Set immediate_quit. 8856 * indent.c (compute_motion): Set immediate_quit.
9009 8857
9010 2000-04-09 Gerd Moellmann <gerd@gnu.org> 8858 2000-04-09 Gerd Moellmann <gerd@gnu.org>
9011 8859
9012 * xfaces.c (tty_suppress_bold_inverse_default_colors_p): New 8860 * xfaces.c (tty_suppress_bold_inverse_default_colors_p): New variable.
9013 variable.
9014 (realize_tty_face): Suppress boldness if colors are the inverse of 8861 (realize_tty_face): Suppress boldness if colors are the inverse of
9015 the default colors, and tty_suppress_bold_inverse_default_colors_p 8862 the default colors, and tty_suppress_bold_inverse_default_colors_p
9016 is set. 8863 is set.
9017 (Ftty_suppress_bold_inverse_default_colors): New function. 8864 (Ftty_suppress_bold_inverse_default_colors): New function.
9018 (syms_of_xfaces): Defsubr it. 8865 (syms_of_xfaces): Defsubr it.
9027 8874
9028 * coding.h (code_convert_string): Declare. 8875 * coding.h (code_convert_string): Declare.
9029 * coding.c (code_convert_string_norecord): Pass an int, not a lisp 8876 * coding.c (code_convert_string_norecord): Pass an int, not a lisp
9030 object, as the fourth argument to code_convert_string. 8877 object, as the fourth argument to code_convert_string.
9031 8878
9032 * fontset.c (make_fontset_for_ascii_face): Use XINT on return 8879 * fontset.c (make_fontset_for_ascii_face): Use XINT on return value.
9033 value.
9034 (Fset_fontset_font): Use EQ to compare lisp objects. 8880 (Fset_fontset_font): Use EQ to compare lisp objects.
9035 8881
9036 2000-04-05 Ken Raeburn <raeburn@gnu.org> 8882 2000-04-05 Ken Raeburn <raeburn@gnu.org>
9037 8883
9038 * intervals.h (SET_INTERVAL_PARENT): Use INT_LISPLIKE to test for 8884 * intervals.h (SET_INTERVAL_PARENT): Use INT_LISPLIKE to test for
9040 (SET_INTERVAL_OBJECT): Don't explicitly compare the object with 8886 (SET_INTERVAL_OBJECT): Don't explicitly compare the object with
9041 zero, instead see whether it's an integer object, since they can't 8887 zero, instead see whether it's an integer object, since they can't
9042 have intervals. 8888 have intervals.
9043 (GET_INTERVAL_OBJECT): Simply assign to the destination. 8889 (GET_INTERVAL_OBJECT): Simply assign to the destination.
9044 8890
9045 * dispnew.c (allocate_matrices_for_frame_redisplay, 8891 * dispnew.c (allocate_matrices_for_frame_redisplay)
9046 direct_output_forward_char): Use X(U)INT and make_number as needed 8892 (direct_output_forward_char): Use X(U)INT and make_number as needed
9047 to convert between (unsigned) int values and lisp integers. 8893 to convert between (unsigned) int values and lisp integers.
9048 * keyboard.c (read_key_sequence): Likewise. 8894 * keyboard.c (read_key_sequence): Likewise.
9049 * lread.c (substitute_object_recurse): Likewise. 8895 * lread.c (substitute_object_recurse): Likewise.
9050 * fns.c (concat, hash_lookup, hash_remove): Likewise. 8896 * fns.c (concat, hash_lookup, hash_remove): Likewise.
9051 * minibuf.c (do_completion, Fminibuffer_complete_word, 8897 * minibuf.c (do_completion, Fminibuffer_complete_word)
9052 Fminibuffer_completion_help): Likewise. 8898 (Fminibuffer_completion_help): Likewise.
9053 * term.c (produce_special_glyphs): Likewise. 8899 * term.c (produce_special_glyphs): Likewise.
9054 8900
9055 * fileio.c (Fwrite_region): Use EQ when comparing lisp objects. 8901 * fileio.c (Fwrite_region): Use EQ when comparing lisp objects.
9056 * print.c (print_preprocess, print_object): Likewise. 8902 * print.c (print_preprocess, print_object): Likewise.
9057 8903
9126 8972
9127 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P): Expand 8973 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P): Expand
9128 non-union-type versions of XMARK and friends here, because XMARK 8974 non-union-type versions of XMARK and friends here, because XMARK
9129 and friends won't work on an integer field if NO_UNION_TYPE is not 8975 and friends won't work on an integer field if NO_UNION_TYPE is not
9130 defined. 8976 defined.
9131 (make_number): Define as a function if it's not defined as a 8977 (make_number): Define as a function if it's not defined as a macro.
9132 macro. 8978
9133 8979 * composite.c (run_composite_function): Use NILP when checking for nil.
9134 * composite.c (run_composite_function): Use NILP when checking for
9135 nil.
9136 (syms_of_composite): Delete local var NARGS, pass an int as first 8980 (syms_of_composite): Delete local var NARGS, pass an int as first
9137 argument to Fmake_hash_table. 8981 argument to Fmake_hash_table.
9138 8982
9139 * editfns.c (text_property_stickiness): Use NILP to test 8983 * editfns.c (text_property_stickiness): Use NILP to test
9140 Lisp_Object boolean value. 8984 Lisp_Object boolean value.
9153 combined with colors. 8997 combined with colors.
9154 8998
9155 2000-04-01 Ken Raeburn <raeburn@gnu.org> 8999 2000-04-01 Ken Raeburn <raeburn@gnu.org>
9156 9000
9157 * window.c (CURBEG, CURSIZE): Don't overload lisp object lvalues 9001 * window.c (CURBEG, CURSIZE): Don't overload lisp object lvalues
9158 with int lvalues via casts; instead, just yield lisp object 9002 with int lvalues via casts; instead, just yield lisp object lvalues.
9159 lvalues.
9160 (enlarge_window): Variable sizep now points to Lisp_Object. Use 9003 (enlarge_window): Variable sizep now points to Lisp_Object. Use
9161 proper accessor macros. 9004 proper accessor macros.
9162 (shrink_window_lowest_first): w->top is Lisp_Object; use XINT. 9005 (shrink_window_lowest_first): w->top is Lisp_Object; use XINT.
9163 (grow_mini_window): Fix typo getting int value of root->height. 9006 (grow_mini_window): Fix typo getting int value of root->height.
9164 9007
9204 9047
9205 2000-03-30 Ken Raeburn <raeburn@gnu.org> 9048 2000-03-30 Ken Raeburn <raeburn@gnu.org>
9206 9049
9207 * lisp.h (NO_UNION_TYPE) [ENABLE_CHECKING]: Undef. 9050 * lisp.h (NO_UNION_TYPE) [ENABLE_CHECKING]: Undef.
9208 9051
9209 * lisp.h (XCONS, XSTRING, XSYMBOL, XFLOAT, XPROCESS, XWINDOW, 9052 * lisp.h (XCONS, XSTRING, XSYMBOL, XFLOAT, XPROCESS, XWINDOW)
9210 XSUBR, XBUFFER): Verify correct object type before returning 9053 (XSUBR, XBUFFER): Verify correct object type before returning
9211 pointer, using eassert. 9054 pointer, using eassert.
9212 * frame.h (XFRAME): Likewise. 9055 * frame.h (XFRAME): Likewise.
9213 9056
9214 * buffer.c (Frename_buffer, Fset_buffer_multibyte, 9057 * buffer.c (Frename_buffer, Fset_buffer_multibyte)
9215 swap_out_buffer_local_variables, Fmove_overlay): Don't apply 9058 (swap_out_buffer_local_variables, Fmove_overlay): Don't apply
9216 XSYMBOL, XBUFFER, etc, to values that may be nil or of the wrong 9059 XSYMBOL, XBUFFER, etc, to values that may be nil or of the wrong type.
9217 type.
9218 * data.c (set_internal): Likewise. 9060 * data.c (set_internal): Likewise.
9219 * dispextern.h (WINDOW_WANTS_MODELINE_P, 9061 * dispextern.h (WINDOW_WANTS_MODELINE_P)
9220 WINDOW_WANTS_HEADER_LINE_P): Likewise. 9062 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
9221 * fileio.c (auto_save_1): Likewise. 9063 * fileio.c (auto_save_1): Likewise.
9222 * insdel.c (check_markers): Likewise. 9064 * insdel.c (check_markers): Likewise.
9223 * marker.c (buf_charpos_to_bytepos, unchain_marker): Likewise. 9065 * marker.c (buf_charpos_to_bytepos, unchain_marker): Likewise.
9224 * undo.c (record_insert): Likewise. 9066 * undo.c (record_insert): Likewise.
9225 * vmsproc.c (child_sig): Likewise. 9067 * vmsproc.c (child_sig): Likewise.
9233 9075
9234 * lisp.h (xstrdup): Add prototype. 9076 * lisp.h (xstrdup): Add prototype.
9235 9077
9236 * alloc.c (xstrdup): Moved here from xfaces.c. 9078 * alloc.c (xstrdup): Moved here from xfaces.c.
9237 (allocating_for_lisp): Variable removed. 9079 (allocating_for_lisp): Variable removed.
9238 (lisp_malloc): Block input around the calls to malloc and 9080 (lisp_malloc): Block input around the calls to malloc and mem_insert.
9239 mem_insert.
9240 9081
9241 * xfaces.c (realize_tty_face): Use find_symbol_value instead 9082 * xfaces.c (realize_tty_face): Use find_symbol_value instead
9242 of Fsymbol_value. 9083 of Fsymbol_value.
9243 (xstrdup): Moved to alloc.c. 9084 (xstrdup): Moved to alloc.c.
9244 9085
9252 9093
9253 * lisp.h (struct interval): Replace "parent" field with a union of 9094 * lisp.h (struct interval): Replace "parent" field with a union of
9254 interval pointer and Lisp_Object; add new bitfield to use as 9095 interval pointer and Lisp_Object; add new bitfield to use as
9255 discriminant. Change other flag fields to bitfields. 9096 discriminant. Change other flag fields to bitfields.
9256 (CHECK): New macro for consistency checking. If ENABLE_CHECKING 9097 (CHECK): New macro for consistency checking. If ENABLE_CHECKING
9257 is defined and the supplied test fails, print a message and 9098 is defined and the supplied test fails, print a message and abort.
9258 abort. 9099 (eassert): New macro. Use CHECK to provide an assert-like facility.
9259 (eassert): New macro. Use CHECK to provide an assert-like
9260 facility.
9261 9100
9262 * intervals.h (NULL_INTERVAL_P): Now applies only to real interval 9101 * intervals.h (NULL_INTERVAL_P): Now applies only to real interval
9263 pointers; abort if the value looks like a lisp object. 9102 pointers; abort if the value looks like a lisp object.
9264 (NULL_INTERVAL_P, NULL_PARENT, HAS_PARENT, HAS_OBJECT, SET_PARENT, 9103 (NULL_INTERVAL_P, NULL_PARENT, HAS_PARENT, HAS_OBJECT, SET_PARENT)
9265 SET_OBJECT, INTERVAL_PARENT, GET_INTERVAL_OBJECT, COPY_PARENT): 9104 (SET_OBJECT, INTERVAL_PARENT, GET_INTERVAL_OBJECT, COPY_PARENT):
9266 Modify for new interval parent definition. 9105 Modify for new interval parent definition.
9267 9106
9268 * alloc.c (mark_interval_tree, MARK_INTERVAL_TREE, 9107 * alloc.c (mark_interval_tree, MARK_INTERVAL_TREE)
9269 UNMARK_BALANCE_INTERVALS): Update references that need an 9108 (UNMARK_BALANCE_INTERVALS): Update references that need an
9270 addressable lisp object in the interval structure. 9109 addressable lisp object in the interval structure.
9271 (die): New function. 9110 (die): New function.
9272 (suppress_checking): New variable. 9111 (suppress_checking): New variable.
9273 9112
9274 * intervals.c (interval_start_pos): Just return 0 if there's no 9113 * intervals.c (interval_start_pos): Just return 0 if there's no
9284 * eval.c (call_debugger): Cancel busy-cursor. 9123 * eval.c (call_debugger): Cancel busy-cursor.
9285 9124
9286 2000-03-29 Kenichi Handa <handa@etl.go.jp> 9125 2000-03-29 Kenichi Handa <handa@etl.go.jp>
9287 9126
9288 * search.c (Freplace_match): Adjust multibyteness of the current 9127 * search.c (Freplace_match): Adjust multibyteness of the current
9289 buffer and NEWTEXT. Free allocated memory before signaling an 9128 buffer and NEWTEXT. Free allocated memory before signaling an error.
9290 error.
9291 9129
9292 2000-03-28 Stefan Monnier <monnier@cs.yale.edu> 9130 2000-03-28 Stefan Monnier <monnier@cs.yale.edu>
9293 9131
9294 * regex.c (analyse_first): New function obtained by ripping out most 9132 * regex.c (analyse_first): New function obtained by ripping out most
9295 of re_compile_fastmap and generalizing it a little bit so that it 9133 of re_compile_fastmap and generalizing it a little bit so that it
9300 for non-greedy repetition). 9138 for non-greedy repetition).
9301 (re_compile_fastmap): Delegate the actual work to `analyse_first'. 9139 (re_compile_fastmap): Delegate the actual work to `analyse_first'.
9302 9140
9303 2000-03-28 Dave Love <fx@gnu.org> 9141 2000-03-28 Dave Love <fx@gnu.org>
9304 9142
9305 * s/gnu-linux.h (GC_SETJMP_WORKS): Define for i386, sparc, m68k, 9143 * s/gnu-linux.h (GC_SETJMP_WORKS): Define for i386, sparc, m68k, alpha.
9306 alpha.
9307 9144
9308 * alloc.c: Include stdio.h. Test STDC_HEADERS, not __STDC__. 9145 * alloc.c: Include stdio.h. Test STDC_HEADERS, not __STDC__.
9309 9146
9310 2000-03-27 Stefan Monnier <monnier@cs.yale.edu> 9147 2000-03-27 Stefan Monnier <monnier@cs.yale.edu>
9311 9148
9343 to DEC_TEXT_POS and INC_TEXT_POS. 9180 to DEC_TEXT_POS and INC_TEXT_POS.
9344 9181
9345 * dispnew.c (direct_output_for_insert): Use DEC_TEXT_POS 9182 * dispnew.c (direct_output_for_insert): Use DEC_TEXT_POS
9346 with parameter MULTIBYTE_P. 9183 with parameter MULTIBYTE_P.
9347 9184
9348 * dispextern.h (INC_TEXT_POS, DEC_TEXT_POS): Add parameter 9185 * dispextern.h (INC_TEXT_POS, DEC_TEXT_POS): Add parameter MULTIBYTE_P.
9349 MULTIBYTE_P.
9350 9186
9351 * editfns.c (Fsubst_char_in_region): Don't use INC_POS in unibyte 9187 * editfns.c (Fsubst_char_in_region): Don't use INC_POS in unibyte
9352 buffers because it looks for multibyte character byte sequences 9188 buffers because it looks for multibyte character byte sequences
9353 which don't exist in unibyte text. 9189 which don't exist in unibyte text.
9354 9190
9389 * buffer.h (struct buffer): Add cursor_type. 9225 * buffer.h (struct buffer): Add cursor_type.
9390 9226
9391 2000-03-26 Stefan Monnier <monnier@cs.yale.edu> 9227 2000-03-26 Stefan Monnier <monnier@cs.yale.edu>
9392 9228
9393 * regex.c (enum re_opcode_t): New opcode on_failure_jump_nastyloop. 9229 * regex.c (enum re_opcode_t): New opcode on_failure_jump_nastyloop.
9394 (print_partial_compiled_pattern, re_compile_fastmap): Handle new 9230 (print_partial_compiled_pattern, re_compile_fastmap):
9395 opcode. 9231 Handle new opcode.
9396 (regex_compile): Use on_failure_jump_nastyloop for non-greedy loops. 9232 (regex_compile): Use on_failure_jump_nastyloop for non-greedy loops.
9397 (re_match_2_internal): Add code for on_failure_jump_nastyloop when 9233 (re_match_2_internal): Add code for on_failure_jump_nastyloop when
9398 executing it as well as when popping it off the stack to find infinite 9234 executing it as well as when popping it off the stack to find infinite
9399 loops in non-greedy repetition operators. 9235 loops in non-greedy repetition operators.
9400 9236
9425 (BUFFER_LOCAL_VAR_OFFSET, BUFFER_LOCAL_VAR_IDX) 9261 (BUFFER_LOCAL_VAR_OFFSET, BUFFER_LOCAL_VAR_IDX)
9426 (BUFFER_HAS_LOCAL_VALUE_P, SET_BUFFER_HAS_LOCAL_VALUE_P) 9262 (BUFFER_HAS_LOCAL_VALUE_P, SET_BUFFER_HAS_LOCAL_VALUE_P)
9427 (BUFFER_LOCAL_IDX, BUFFER_LOCAL_DEFAULT_VALUE, BUFFER_LOCAL_VALUE) 9263 (BUFFER_LOCAL_IDX, BUFFER_LOCAL_DEFAULT_VALUE, BUFFER_LOCAL_VALUE)
9428 (BUFFER_LOCAL_SYMBOL, BUFFER_LOCAL_TYPE): New macros. 9264 (BUFFER_LOCAL_SYMBOL, BUFFER_LOCAL_TYPE): New macros.
9429 9265
9430 * print.c (print_object): Use new macros for per-buffer 9266 * print.c (print_object): Use new macros for per-buffer variables.
9431 variables.
9432 9267
9433 * category.c (Fset_category_table): Use new macros for per-buffer 9268 * category.c (Fset_category_table): Use new macros for per-buffer
9434 variables. 9269 variables.
9435 9270
9436 * buffer.c (buffer_permanent_local_flags): Make a char array. 9271 * buffer.c (buffer_permanent_local_flags): Make a char array.
9442 Set max_buffer_local_idx. 9277 Set max_buffer_local_idx.
9443 9278
9444 * syntax.c (Fset_syntax_table): Use new macros for per-buffer 9279 * syntax.c (Fset_syntax_table): Use new macros for per-buffer
9445 variables. 9280 variables.
9446 9281
9447 * lread.c (defvar_per_buffer): Use new macros for per-buffer 9282 * lread.c (defvar_per_buffer): Use new macros for per-buffer variables.
9448 variables.
9449 9283
9450 * data.c (do_symval_forwarding, store_symval_forwarding) 9284 * data.c (do_symval_forwarding, store_symval_forwarding)
9451 (find_symbol_value, set_internal, default_value, Fset_default) 9285 (find_symbol_value, set_internal, default_value, Fset_default)
9452 (Fkill_local_variable, Flocal_variable_p): Use new macros for 9286 (Fkill_local_variable, Flocal_variable_p): Use new macros for
9453 per-buffer variables. 9287 per-buffer variables.
9496 (QCdata): Moved to xdisp.c. 9330 (QCdata): Moved to xdisp.c.
9497 9331
9498 * w32term.c (w32_read_socket): Handle WM_MENUSELECT message. 9332 * w32term.c (w32_read_socket): Handle WM_MENUSELECT message.
9499 (Vw32_charset_to_codepage_alist): Removed. 9333 (Vw32_charset_to_codepage_alist): Removed.
9500 (Vw32_charset_info_alist): New variable. 9334 (Vw32_charset_info_alist): New variable.
9501 (Qw32_charset_[ansi, default, symbol, shiftjis, hangul, gb2312, 9335 (Qw32_charset_[ansi, default, symbol, shiftjis, hangul, gb2312)
9502 chinesebig5, oem, easteurope, turkish, baltic, russian, arabic, 9336 (chinesebig5, oem, easteurope, turkish, baltic, russian, arabic)
9503 greek, hebrew, thai, johab, mac, unicode]): New symbols. 9337 (greek, hebrew, thai, johab, mac, unicode]): New symbols.
9504 (x_produce_glyphs): Remove out of date #ifdef 0'd section. Replace 9338 (x_produce_glyphs): Remove out of date #ifdef 0'd section. Replace
9505 with TODO comment. 9339 with TODO comment.
9506 (w32_codepage_for_font): Use Vw32_charset_info_alist. 9340 (w32_codepage_for_font): Use Vw32_charset_info_alist.
9507 (syms_of_w32term): Remove Vw32_charset_to_codepage_alist. 9341 (syms_of_w32term): Remove Vw32_charset_to_codepage_alist.
9508 Define Vw32_charset_info_alist and w32_charset symbols. 9342 Define Vw32_charset_info_alist and w32_charset symbols.
9517 (Fx_create_frame): Do not create fontset. 9351 (Fx_create_frame): Do not create fontset.
9518 (w32_load_system_font): Doc fix. 9352 (w32_load_system_font): Doc fix.
9519 (Fx_close_connection): Free full_name if it is not shared. 9353 (Fx_close_connection): Free full_name if it is not shared.
9520 9354
9521 * w32term.c: Include fontset.h after dispextern.h. 9355 * w32term.c: Include fontset.h after dispextern.h.
9522 (x_get_glyph_face_and_encoding): New parameter two_byte_p. Callers 9356 (x_get_glyph_face_and_encoding): New parameter two_byte_p.
9523 updated. 9357 Callers updated.
9524 (w32_per_char_metric): If PCM is invalid, delete and return NULL. 9358 (w32_per_char_metric): If PCM is invalid, delete and return NULL.
9525 (x_get_char_and_face_encoding): Use FACE_FOR_CHAR to get face_id. 9359 (x_get_char_and_face_encoding): Use FACE_FOR_CHAR to get face_id.
9526 (w32_font_is_double_byte): New function, needs body. 9360 (w32_font_is_double_byte): New function, needs body.
9527 (x_append_glyph): Set glyph->glyph_not_available_p. 9361 (x_append_glyph): Set glyph->glyph_not_available_p.
9528 (x_produce_glyphs): Set it->glyph_not_available_p. Don't set 9362 (x_produce_glyphs): Set it->glyph_not_available_p. Don't set
9544 2000-03-22 Ken Raeburn <raeburn@gnu.org> 9378 2000-03-22 Ken Raeburn <raeburn@gnu.org>
9545 9379
9546 * intervals.h (NULL_INTERVAL): Cast to INTERVAL type. 9380 * intervals.h (NULL_INTERVAL): Cast to INTERVAL type.
9547 (INT_LISPLIKE): New macro. 9381 (INT_LISPLIKE): New macro.
9548 (NULL_INTERVAL_P): Use it. 9382 (NULL_INTERVAL_P): Use it.
9549 (INTERVAL_HAS_PARENT, INTERVAL_HAS_OBJECT, SET_INTERVAL_PARENT, 9383 (INTERVAL_HAS_PARENT, INTERVAL_HAS_OBJECT, SET_INTERVAL_PARENT)
9550 SET_INTERVAL_OBJECT, INTERVAL_PARENT, COPY_INTERVAL_PARENT, 9384 (SET_INTERVAL_OBJECT, INTERVAL_PARENT, COPY_INTERVAL_PARENT)
9551 GET_INTERVAL_OBJECT, INTERVAL_PARENT_OR_NULL): New macros. 9385 (GET_INTERVAL_OBJECT, INTERVAL_PARENT_OR_NULL): New macros.
9552 9386
9553 * alloc.c (make_interval, gc_sweep): Use new macros; eliminate all 9387 * alloc.c (make_interval, gc_sweep): Use new macros; eliminate all
9554 explicit references to "parent" field of struct interval and 9388 explicit references to "parent" field of struct interval and
9555 associated unclean type conversions. 9389 associated unclean type conversions.
9556 * intervals.c (create_root_interval, root_interval, rotate_right, 9390 * intervals.c (create_root_interval, root_interval, rotate_right)
9557 rotate_left, balance_possible_root_interval, split_interval_right, 9391 (rotate_left, balance_possible_root_interval, split_interval_right)
9558 split_interval_left, interval_start_pos, find_interval, 9392 (split_interval_left, interval_start_pos, find_interval)
9559 next_interval, previous_interval, update_interval, 9393 (next_interval, previous_interval, update_interval)
9560 adjust_intervals_for_insertion, delete_node, delete_interval, 9394 (adjust_intervals_for_insertion, delete_node, delete_interval)
9561 adjust_intervals_for_deletion, merge_interval_right, 9395 (adjust_intervals_for_deletion, merge_interval_right)
9562 merge_interval_left, reproduce_tree, graft_intervals_into_buffer, 9396 (merge_interval_left, reproduce_tree, graft_intervals_into_buffer)
9563 copy_intervals_to_string): Likewise. 9397 (copy_intervals_to_string): Likewise.
9564 * intervals.h (AM_LEFT_CHILD, AM_RIGHT_CHILD, RESET_INTERVAL): 9398 * intervals.h (AM_LEFT_CHILD, AM_RIGHT_CHILD, RESET_INTERVAL):
9565 Likewise. 9399 Likewise.
9566 * syntax.c (update_syntax_table): Likewise. 9400 * syntax.c (update_syntax_table): Likewise.
9567 9401
9568 * intervals.c (reproduce_tree_obj): New function, like 9402 * intervals.c (reproduce_tree_obj): New function, like
9596 (re_match_2_internal): Merge (not)wordchar (emacs and non-emacs) 9430 (re_match_2_internal): Merge (not)wordchar (emacs and non-emacs)
9597 and (not)syntaxspec. Merge (not)categoryspec. 9431 and (not)syntaxspec. Merge (not)categoryspec.
9598 9432
9599 2000-03-22 Kenichi Handa <handa@etl.go.jp> 9433 2000-03-22 Kenichi Handa <handa@etl.go.jp>
9600 9434
9601 * dispextern.h [!HAVE_WINDOW_SYSTEM] (FACE_SUITABLE_FOR_CHAR_P, 9435 * dispextern.h [!HAVE_WINDOW_SYSTEM] (FACE_SUITABLE_FOR_CHAR_P)
9602 FACE_FOR_CHAR): Define them differently for the configuration of 9436 (FACE_FOR_CHAR): Define them differently for the configuration of
9603 --without-x. 9437 --without-x.
9604 9438
9605 2000-03-21 Dave Love <fx@gnu.org> 9439 2000-03-21 Dave Love <fx@gnu.org>
9606 9440
9607 * fontset.c (Fset_fontset_font, Ffontset_font): Fix newlines in 9441 * fontset.c (Fset_fontset_font, Ffontset_font): Fix newlines in
9629 (enum lface_attribute_index): Add LFACE_FONT_INDEX. 9463 (enum lface_attribute_index): Add LFACE_FONT_INDEX.
9630 (struct face): Delete member registry, new member ascii_face. 9464 (struct face): Delete member registry, new member ascii_face.
9631 (FACE_SUITABLE_FOR_CHAR_P): Renamed from 9465 (FACE_SUITABLE_FOR_CHAR_P): Renamed from
9632 FACE_SUITABLE_FOR_CHARSET_P. Caller changed. 9466 FACE_SUITABLE_FOR_CHARSET_P. Caller changed.
9633 (FACE_FOR_CHAR): Renamed from FACE_FOR_CHARSET. Caller changed. 9467 (FACE_FOR_CHAR): Renamed from FACE_FOR_CHARSET. Caller changed.
9634 (struct it): Delete member charset, new member 9468 (struct it): Delete member charset, new member glyph_not_available_p.
9635 glyph_not_available_p.
9636 9469
9637 * fontset.h (FONT_NOT_OPENED, FONT_NOT_FOUND): Macros removed. 9470 * fontset.h (FONT_NOT_OPENED, FONT_NOT_FOUND): Macros removed.
9638 (struct fontset_info, struct fontset_data): Structs removed. 9471 (struct fontset_info, struct fontset_data): Structs removed.
9639 (allloc_fontset_data, free_fontset_data, fs_regiser_fontset, 9472 (allloc_fontset_data, free_fontset_data, fs_regiser_fontset)
9640 Vglobale_fontset_alist, font_idx_temp): Externs removed. 9473 (Vglobale_fontset_alist, font_idx_temp): Externs removed.
9641 (fs_load_font, fs_query_fontset): Adjusted for new argument. 9474 (fs_load_font, fs_query_fontset): Adjusted for new argument.
9642 (fs_free_face_fontset, fontset_font_pattern, 9475 (fs_free_face_fontset, fontset_font_pattern)
9643 face_suitable_for_char_p, face_for_char, 9476 (face_suitable_for_char_p, face_for_char)
9644 make_fontset_for_ascii_face): Extern them. 9477 (make_fontset_for_ascii_face): Extern them.
9645 (FS_LOAD_FONT): Adjusted for the change of fontset implementation. 9478 (FS_LOAD_FONT): Adjusted for the change of fontset implementation.
9646 (FS_LOAD_FACE_FONT): New macro. 9479 (FS_LOAD_FACE_FONT): New macro.
9647 9480
9648 * fontset.c: All codes rewritten or adjusted for the change of 9481 * fontset.c: All codes rewritten or adjusted for the change of
9649 fontset implementation. Now fontset is represented by char table. 9482 fontset implementation. Now fontset is represented by char table.
9650 (Vglobal_fontset_alist, font_idx_temp, my_strcasetbl): Variables 9483 (Vglobal_fontset_alist, font_idx_temp, my_strcasetbl):
9651 removed. 9484 Variables removed.
9652 (my_strcasecmp): Function removed. 9485 (my_strcasecmp): Function removed.
9653 (Vfontset_table, next_fontset_id, Vdefault_fontset): New 9486 (Vfontset_table, next_fontset_id, Vdefault_fontset): New variables.
9654 variables.
9655 (AREF, ASIZE): New macros. 9487 (AREF, ASIZE): New macros.
9656 (FONTSET_FROM_ID, FONTSET_ID, FONTSET_NAME, FONTSET_FRAME, 9488 (FONTSET_FROM_ID, FONTSET_ID, FONTSET_NAME, FONTSET_FRAME)
9657 FONTSET_ASCII, FONTSET_BASE, BASE_FONTSET_P, FONTSET_REF, 9489 (FONTSET_ASCII, FONTSET_BASE, BASE_FONTSET_P, FONTSET_REF)
9658 FONTSET_REF_VIA_BASE, FONTSET_SET): New macros. 9490 (FONTSET_REF_VIA_BASE, FONTSET_SET): New macros.
9659 (fontset_ref, fontset_ref_via_base, fontset_set, make_fontset, 9491 (fontset_ref, fontset_ref_via_base, fontset_set, make_fontset)
9660 fontset_id_valid_p, font_family_registry, fontset_name, 9492 (fontset_id_valid_p, font_family_registry, fontset_name)
9661 fontset_ascii, free_face_fontset, face_suitable_for_char_p, 9493 (fontset_ascii, free_face_fontset, face_suitable_for_char_p)
9662 face_for_char, make_fontset_for_ascii_face, fontset_font_pattern): 9494 (face_for_char, make_fontset_for_ascii_face, fontset_font_pattern):
9663 New functions. 9495 New functions.
9664 (fs_load_font): New arg FACE. Caller changed. 9496 (fs_load_font): New arg FACE. Caller changed.
9665 (fs_query_fontset): Argument changed. Caller changed. 9497 (fs_query_fontset): Argument changed. Caller changed.
9666 (Fquery_fontset): call fs_query_fontset. 9498 (Fquery_fontset): call fs_query_fontset.
9667 (fs_register_fontset, alloc_fontset_data, free_fontset_data): 9499 (fs_register_fontset, alloc_fontset_data, free_fontset_data):
9668 Functions removed. 9500 Functions removed.
9669 (clear_fontset_elements, check_registry_encoding, 9501 (clear_fontset_elements, check_registry_encoding)
9670 check_fontset_name): New functions. 9502 (check_fontset_name): New functions.
9671 (syms_of_fontset): Set char-table-extra-slots property of fontset 9503 (syms_of_fontset): Set char-table-extra-slots property of fontset
9672 to 3. Staticpro and initialize Vfontset_table and 9504 to 3. Staticpro and initialize Vfontset_table and
9673 Vdefault_fontset. Defsubr fontset_font and fontset_list. 9505 Vdefault_fontset. Defsubr fontset_font and fontset_list.
9674 9506
9675 * frame.h (struct frame): Member `fontset_data' removed. 9507 * frame.h (struct frame): Member `fontset_data' removed.
9680 9512
9681 * msdos.c (XMenuActivate): Args to lookup_derived_face changed. 9513 * msdos.c (XMenuActivate): Args to lookup_derived_face changed.
9682 9514
9683 * xdisp.c (charset_at_position): Function removed. 9515 * xdisp.c (charset_at_position): Function removed.
9684 (init_iterator): Don't set member charset of struct `it'. 9516 (init_iterator): Don't set member charset of struct `it'.
9685 (handle_face_prop, reseat_to_string, set_iterator_to_next, 9517 (handle_face_prop, reseat_to_string, set_iterator_to_next)
9686 next_element_from_display_vector, insert_left_trunc_glyphs): 9518 (next_element_from_display_vector, insert_left_trunc_glyphs):
9687 Likewise. 9519 Likewise.
9688 (face_before_or_after_it_pos): Call FACE_FOR_CHAR, not 9520 (face_before_or_after_it_pos): Call FACE_FOR_CHAR, not
9689 FACE_FOR_CHARSET. 9521 FACE_FOR_CHARSET.
9690 (get_next_display_element, append_space, 9522 (get_next_display_element, append_space)
9691 extend_face_to_end_of_line): Likewise. 9523 (extend_face_to_end_of_line): Likewise.
9692 9524
9693 * xfaces.c (Qx_charset_registry, Vface_default_registry): 9525 * xfaces.c (Qx_charset_registry, Vface_default_registry):
9694 Variables removed. 9526 Variables removed.
9695 (clear_font_table, frame_update_line_height, load_face_font): 9527 (clear_font_table, frame_update_line_height, load_face_font):
9696 Adjusted for the change of fontset implementation. 9528 Adjusted for the change of fontset implementation.
9708 (Finternal_get_lisp_face_attribute): Handle `font' slot in lface. 9540 (Finternal_get_lisp_face_attribute): Handle `font' slot in lface.
9709 (lface_same_font_attributes_p): Likewise. 9541 (lface_same_font_attributes_p): Likewise.
9710 (make_realized_face): Arguent changed. Caller changed. Set 9542 (make_realized_face): Arguent changed. Caller changed. Set
9711 face->ascii_face to face itself. 9543 face->ascii_face to face itself.
9712 (free_realized_face): Free face->fontset if face is for ASCII. 9544 (free_realized_face): Free face->fontset if face is for ASCII.
9713 (face_suitable_for_iso8859_1_p, face_suitable_for_charset_p, 9545 (face_suitable_for_iso8859_1_p, face_suitable_for_charset_p)
9714 deduce_unibyte_registry, x_charset_registry): Functions removed. 9546 (deduce_unibyte_registry, x_charset_registry): Functions removed.
9715 (free_realized_multibyte_face): New function. 9547 (free_realized_multibyte_face): New function.
9716 (lookup_face, lookup_named_face, lookup_derived_face): Argument 9548 (lookup_face, lookup_named_face, lookup_derived_face): Argument
9717 changed. Caller changed. 9549 changed. Caller changed.
9718 (try_font_list): Argument type changed. 9550 (try_font_list): Argument type changed.
9719 (face_fontset): Check `font' slot of ATTRS, not `family' slot. 9551 (face_fontset): Check `font' slot of ATTRS, not `family' slot.
9720 (choose_face_font): Argument changed. Handle fontset properly. 9552 (choose_face_font): Argument changed. Handle fontset properly.
9721 (choose_face_fontset_font): Function removed. 9553 (choose_face_fontset_font): Function removed.
9722 (realize_default_face, realize_named_face): Don't remove the 9554 (realize_default_face, realize_named_face): Don't remove the
9723 former face here. 9555 former face here.
9724 (realize_face): Argument changed. Caller changed. Remove face 9556 (realize_face): Argument changed. Caller changed. Remove face
9725 with the arg former_face_id in advance. Load font for the new 9557 with the arg former_face_id in advance. Load font for the new face.
9726 face.
9727 (realize_x_face): Argument changed. Caller changed. For a 9558 (realize_x_face): Argument changed. Caller changed. For a
9728 multibyte character, share fontset with base_face. For a single 9559 multibyte character, share fontset with base_face. For a single
9729 byte character, make a new realized fontset. Don't load a font 9560 byte character, make a new realized fontset. Don't load a font here.
9730 here.
9731 (realize_tty_face): Argument changed. Caller changed. 9561 (realize_tty_face): Argument changed. Caller changed.
9732 (compute_char_face): Call FACE_FOR_CHAR, not FACE_FOR_CHARSET. 9562 (compute_char_face): Call FACE_FOR_CHAR, not FACE_FOR_CHARSET.
9733 (face_at_buffer_position): Don't check multibyte_p for returning 9563 (face_at_buffer_position): Don't check multibyte_p for returning
9734 DEFAULT_FACE_ID. 9564 DEFAULT_FACE_ID.
9735 (face_at_string_position): Call FACE_SUITABLE_FOR_CHAR_P, not 9565 (face_at_string_position): Call FACE_SUITABLE_FOR_CHAR_P, not
9741 related to PER_CHAR_METRIC done by Gerd on 2000-03-03. 9571 related to PER_CHAR_METRIC done by Gerd on 2000-03-03.
9742 (x_per_char_metric): Don't try FONT->default_char. Even if 9572 (x_per_char_metric): Don't try FONT->default_char. Even if
9743 pcm->width is zero, glyph bits may exist. 9573 pcm->width is zero, glyph bits may exist.
9744 (x_encode_char): Always initialize char2b->byte1. 9574 (x_encode_char): Always initialize char2b->byte1.
9745 (x_get_char_face_and_encoding): Call FACE_FOR_CHAR to get face_id. 9575 (x_get_char_face_and_encoding): Call FACE_FOR_CHAR to get face_id.
9746 (x_get_glyph_face_and_encoding): New arg two_byte_p. Caller 9576 (x_get_glyph_face_and_encoding): New arg two_byte_p. Caller changed.
9747 changed.
9748 (x_append_glyph): Set glyph->glyph_not_available_p. 9577 (x_append_glyph): Set glyph->glyph_not_available_p.
9749 (x_produce_glyphs): Set it->glyph_not_available_p. Don't set 9578 (x_produce_glyphs): Set it->glyph_not_available_p. Don't set
9750 it->charset. Handle the case that per char metric is not 9579 it->charset. Handle the case that per char metric is not
9751 available. If it->multibyte_p is zero and it->c is a multibyte 9580 available. If it->multibyte_p is zero and it->c is a multibyte
9752 character, convert it to a unibyte character. 9581 character, convert it to a unibyte character.
9845 (store_op1, store_op2, insert_op1, insert_op2) 9674 (store_op1, store_op2, insert_op1, insert_op2)
9846 (at_begline_loc_p, at_endline_loc_p): Add prototype. 9675 (at_begline_loc_p, at_endline_loc_p): Add prototype.
9847 (group_in_compile_stack): Move to after its arg's types are 9676 (group_in_compile_stack): Move to after its arg's types are
9848 declared and add a prototype. 9677 declared and add a prototype.
9849 (PATFETCH): Define in terms of PATFETCH_RAW. 9678 (PATFETCH): Define in terms of PATFETCH_RAW.
9850 (GET_UNSIGNED_NUMBER): Add the usual `do { ... } while(0)' 9679 (GET_UNSIGNED_NUMBER): Add the usual `do { ... } while(0)' wrapper.
9851 wrapper.
9852 (QUIT): Redefine as a nop except for NTemacs. 9680 (QUIT): Redefine as a nop except for NTemacs.
9853 (regex_compile): Handle intervals {,M} as if it was {0,M}. Fix 9681 (regex_compile): Handle intervals {,M} as if it was {0,M}. Fix
9854 indentation of the greedy-op and shy-group code. 9682 indentation of the greedy-op and shy-group code.
9855 (at_(beg|end)line_loc_p): Fix argument's types. 9683 (at_(beg|end)line_loc_p): Fix argument's types.
9856 (re_compile_fastmap): Ifdef out failure_stack_ptr to shut up gcc. 9684 (re_compile_fastmap): Ifdef out failure_stack_ptr to shut up gcc.
9883 (xim_instantiate_callback): Define only if HAVE_X11R6_XIM. 9711 (xim_instantiate_callback): Define only if HAVE_X11R6_XIM.
9884 9712
9885 * s/sol2.h (INHIBIT_X11R6_XIM): Define. 9713 * s/sol2.h (INHIBIT_X11R6_XIM): Define.
9886 9714
9887 * xfns.c (X_I18N_INHIBITED): Don't define. 9715 * xfns.c (X_I18N_INHIBITED): Don't define.
9888 (create_frame_xic): Remove conditional compilation on 9716 (create_frame_xic): Remove conditional compilation on X_I18N_INHIBITED.
9889 X_I18N_INHIBITED.
9890 (x_kill_gs_process, x_window): Use FRAME_X_VISUAL. 9717 (x_kill_gs_process, x_window): Use FRAME_X_VISUAL.
9891 9718
9892 * config.in (HAVE_X_I18N): Moved here from xterm.h. 9719 * config.in (HAVE_X_I18N): Moved here from xterm.h.
9893 (HAVE_X11R6_XIM): Define. 9720 (HAVE_X11R6_XIM): Define.
9894 9721
9900 2000-03-13 Stefan Monnier <monnier@cs.yale.edu> 9727 2000-03-13 Stefan Monnier <monnier@cs.yale.edu>
9901 9728
9902 * regex.c: Declare a new type `re_char' used throughout the code 9729 * regex.c: Declare a new type `re_char' used throughout the code
9903 for the string char type. It's `const unsigned char' to match the 9730 for the string char type. It's `const unsigned char' to match the
9904 rest of Emacs. Consistently make sure all pointers to strings use 9731 rest of Emacs. Consistently make sure all pointers to strings use
9905 it and make sure all pointers into the pattern use `unsigned 9732 it and make sure all pointers into the pattern use `unsigned char'.
9906 char'.
9907 (re_match_2_internal): Use `PREFETCH+STRING_CHAR' instead of 9733 (re_match_2_internal): Use `PREFETCH+STRING_CHAR' instead of
9908 GET_CHAR_AFTER_2. Also merge wordbound and notwordbound to reduce 9734 GET_CHAR_AFTER_2. Also merge wordbound and notwordbound to reduce
9909 code duplication. 9735 code duplication.
9910 9736
9911 * charset.h (GET_CHAR_AFTER_2): Remove. 9737 * charset.h (GET_CHAR_AFTER_2): Remove.
9931 * fileio.c (Fread_file_name): Handle case that DIR contains a 9757 * fileio.c (Fread_file_name): Handle case that DIR contains a
9932 file name. 9758 file name.
9933 9759
9934 * window.c (Fsave_window_excursion): Doc fix. 9760 * window.c (Fsave_window_excursion): Doc fix.
9935 9761
9936 * xfns.c (x_defined_color): Rewritten to use 9762 * xfns.c (x_defined_color): Rewritten to use x_allocate_nearest_color.
9937 x_allocate_nearest_color.
9938 9763
9939 2000-03-12 Eli Zaretskii <eliz@is.elta.co.il> 9764 2000-03-12 Eli Zaretskii <eliz@is.elta.co.il>
9940 9765
9941 * msdos.c (vga_installed): New function, code moved from 9766 * msdos.c (vga_installed): New function, code moved from
9942 dos_set_window_size. 9767 dos_set_window_size.
9972 * regex.c (enum re_opcode_t): Remove jump_past_alt, 9797 * regex.c (enum re_opcode_t): Remove jump_past_alt,
9973 maybe_pop_jump, push_dummy_failure and dumy_failure_jump. Add 9798 maybe_pop_jump, push_dummy_failure and dumy_failure_jump. Add
9974 on_failure_jump_(exclusive, loop and smart). Also fix the comment 9799 on_failure_jump_(exclusive, loop and smart). Also fix the comment
9975 for (start|stop)_memory since they now only take one argument (the 9800 for (start|stop)_memory since they now only take one argument (the
9976 second has becomes unnecessary). 9801 second has becomes unnecessary).
9977 (print_partial_compiled_pattern): Adjust for changes in 9802 (print_partial_compiled_pattern): Adjust for changes in re_opcode_t.
9978 re_opcode_t.
9979 (print_compiled_pattern): Use %ld to printf long ints and flush to 9803 (print_compiled_pattern): Use %ld to printf long ints and flush to
9980 make debugging a little easier. 9804 make debugging a little easier.
9981 (union fail_stack_elt): Make the integer unsigned. 9805 (union fail_stack_elt): Make the integer unsigned.
9982 (struct fail_stack_type): Add a `frame' element. 9806 (struct fail_stack_type): Add a `frame' element.
9983 (INIT_FAIL_STACK): Init `frame' as well. 9807 (INIT_FAIL_STACK): Init `frame' as well.
9986 (NUM_REG_ITEMS): Remove. 9810 (NUM_REG_ITEMS): Remove.
9987 (NUM_NONREG_ITEMS): Adjust. 9811 (NUM_NONREG_ITEMS): Adjust.
9988 (FAILURE_PAT, FAILURE_STR, NEXT_FAILURE_HANDLE) 9812 (FAILURE_PAT, FAILURE_STR, NEXT_FAILURE_HANDLE)
9989 (TOP_FAILURE_HANDLE): New macros for the cycle detection. 9813 (TOP_FAILURE_HANDLE): New macros for the cycle detection.
9990 (ENSURE_FAIL_STACK): New macro for PUSH_FAILURE_(REG|POINT). 9814 (ENSURE_FAIL_STACK): New macro for PUSH_FAILURE_(REG|POINT).
9991 (PUSH_FAILURE_REG, POP_FAILURE_REG, CHECK_INFINITE_LOOP): New 9815 (PUSH_FAILURE_REG, POP_FAILURE_REG, CHECK_INFINITE_LOOP):
9992 macros. 9816 New macros.
9993 (PUSH_FAILURE_POINT): Don't push registers any more. The pattern 9817 (PUSH_FAILURE_POINT): Don't push registers any more. The pattern
9994 address pushed is not the destination of the jump but the source 9818 address pushed is not the destination of the jump but the source
9995 of it instead. 9819 of it instead.
9996 (NUM_FAILURE_ITEMS): Remove. 9820 (NUM_FAILURE_ITEMS): Remove.
9997 (POP_FAILURE_POINT): Adapt to the new stack structure (i.e. pop 9821 (POP_FAILURE_POINT): Adapt to the new stack structure (i.e. pop
10020 PATTERN_STACK_EMPTY and POP_PATTERN_OP. Improved handling of 9844 PATTERN_STACK_EMPTY and POP_PATTERN_OP. Improved handling of
10021 backreferences. Remove dead code in handling of `anychar'. 9845 backreferences. Remove dead code in handling of `anychar'.
10022 (skip_noops, mutually_exclusive_p): New functions taken from the 9846 (skip_noops, mutually_exclusive_p): New functions taken from the
10023 handling of `maybe_pop_jump' in re_match_2_internal. Slightly 9847 handling of `maybe_pop_jump' in re_match_2_internal. Slightly
10024 improve mutually_exclusive_p to handle ".+\n". 9848 improve mutually_exclusive_p to handle ".+\n".
10025 (lowest_active_reg, highest_active_reg, 9849 (lowest_active_reg, highest_active_reg)
10026 NO_(LOWEST|HIGHEST)_ACTIVE_REG) Remove. 9850 (NO_(LOWEST|HIGHEST)_ACTIVE_REG) Remove.
10027 (re_match_2_internal): Use %p instead of 0x%x when printf'ing 9851 (re_match_2_internal): Use %p instead of 0x%x when printf'ing
10028 ptrs. Don't SET_REGS_MATCHED anymore. Remove many dead 9852 ptrs. Don't SET_REGS_MATCHED anymore. Remove many dead
10029 variables. Push register (in `start_memory') on the stack rather 9853 variables. Push register (in `start_memory') on the stack rather
10030 than storing it in old_reg(start|end). Remove the cycle detection 9854 than storing it in old_reg(start|end). Remove the cycle detection
10031 from `stop_memory', replaced by the use of on_failure_jump_loop 9855 from `stop_memory', replaced by the use of on_failure_jump_loop
10055 9879
10056 2000-03-08 Gerd Moellmann <gerd@gnu.org> 9880 2000-03-08 Gerd Moellmann <gerd@gnu.org>
10057 9881
10058 * xfns.c (x_set_cursor_type): If ARG is nil, give frame no cursor. 9882 * xfns.c (x_set_cursor_type): If ARG is nil, give frame no cursor.
10059 9883
10060 * xdisp.c (display_echo_area): Temporarily inhibit garbage 9884 * xdisp.c (display_echo_area): Temporarily inhibit garbage collection.
10061 collection.
10062 9885
10063 * xfns.c: Remove obsolete code in #if 0. 9886 * xfns.c: Remove obsolete code in #if 0.
10064 (Fx_focus_frame): New function. 9887 (Fx_focus_frame): New function.
10065 9888
10066 2000-03-07 Miyashita Hisashi <himi@bird.scphys.kyoto-u.ac.jp> 9889 2000-03-07 Miyashita Hisashi <himi@bird.scphys.kyoto-u.ac.jp>
10082 (detect_eol): selects detect_eol_type_XXX to call according to 9905 (detect_eol): selects detect_eol_type_XXX to call according to
10083 cooding->category_idx. 9906 cooding->category_idx.
10084 (detect_coding_system): Remove `nil' coding-system in the result. 9907 (detect_coding_system): Remove `nil' coding-system in the result.
10085 (Fupdate_coding_systems_internal): Update all coding-categories. 9908 (Fupdate_coding_systems_internal): Update all coding-categories.
10086 9909
10087 * coding.h (CODING_CATEGORY_IDX_UTF_8, 9910 * coding.h (CODING_CATEGORY_IDX_UTF_8)
10088 CODING_CATEGORY_IDX_UTF_16_BE, CODING_CATEGORY_IDX_UTF_16_LE): New 9911 (CODING_CATEGORY_IDX_UTF_16_BE, CODING_CATEGORY_IDX_UTF_16_LE):
10089 macros. 9912 New macros.
10090 (CODING_CATEGORY_IDX_RAW_TEXT, CODING_CATEGORY_IDX_BINARY, 9913 (CODING_CATEGORY_IDX_RAW_TEXT, CODING_CATEGORY_IDX_BINARY)
10091 CODING_CATEGORY_IDX_MAX): Adjusted for the above macros. 9914 (CODING_CATEGORY_IDX_MAX): Adjusted for the above macros.
10092 CODING_CATEGORY_IDX_UTF_16_LE. 9915 (CODING_CATEGORY_IDX_UTF_16_LE)
10093 (CODING_CATEGORY_MASK_UTF_8, CODING_CATEGORY_MASK_UTF_16_BE, 9916 (CODING_CATEGORY_MASK_UTF_8, CODING_CATEGORY_MASK_UTF_16_BE)
10094 CODING_CATEGORY_MASK_UTF_16_LE): New macros. 9917 (CODING_CATEGORY_MASK_UTF_16_LE): New macros.
10095 (CODING_CATEGORY_MASK_ANY): Include the above macros. 9918 (CODING_CATEGORY_MASK_ANY): Include the above macros.
10096 (CODING_CATEGORY_MASK_UTF_16_BE_LE): New macro. 9919 (CODING_CATEGORY_MASK_UTF_16_BE_LE): New macro.
10097 9920
10098 2000-03-07 Gerd Moellmann <gerd@gnu.org> 9921 2000-03-07 Gerd Moellmann <gerd@gnu.org>
10099 9922
10155 2000-03-04 Gerd Moellmann <gerd@gnu.org> 9978 2000-03-04 Gerd Moellmann <gerd@gnu.org>
10156 9979
10157 * xfns.c (x_defined_color, x_set_mouse_color, lookup_rgb_color) 9980 * xfns.c (x_defined_color, x_set_mouse_color, lookup_rgb_color)
10158 (lookup_pixel_color, x_laplace, x_build_heuristic_mask) 9981 (lookup_pixel_color, x_laplace, x_build_heuristic_mask)
10159 (png_load): Access colormap of frame using FRAME_X_COLORMAP. 9982 (png_load): Access colormap of frame using FRAME_X_COLORMAP.
10160 (x_decode_color): Don't handle allocation of white and black 9983 (x_decode_color): Don't handle allocation of white and black specially.
10161 specially.
10162 (x_window) [USE_X_TOOLKIT]: Set XtNvisual, XtNdepth, and 9984 (x_window) [USE_X_TOOLKIT]: Set XtNvisual, XtNdepth, and
10163 XtNcolormap resources. 9985 XtNcolormap resources.
10164 (x_window) [!USE_X_TOOLKIT]: Pass colormap to XCreateWindow. 9986 (x_window) [!USE_X_TOOLKIT]: Pass colormap to XCreateWindow.
10165 (Fx_create_frame): Initialize color members of x_output structure. 9987 (Fx_create_frame): Initialize color members of x_output structure.
10166 (xpm_load): Pass colormap to XPM lib. 9988 (xpm_load): Pass colormap to XPM lib.
10233 10055
10234 * dispnew.c (free_glyphs): Block input while freeing matrices. 10056 * dispnew.c (free_glyphs): Block input while freeing matrices.
10235 10057
10236 * xfns.c (x_clear_image, x_kill_gs_process): Use x_free_colors. 10058 * xfns.c (x_clear_image, x_kill_gs_process): Use x_free_colors.
10237 10059
10238 * xterm.c (x_alloc_lighter_color, x_setup_relief_color): Use 10060 * xterm.c (x_alloc_lighter_color, x_setup_relief_color):
10239 x_free_colors. 10061 Use x_free_colors.
10240 10062
10241 * dispextern.h (x_free_colors): Add prototype. 10063 * dispextern.h (x_free_colors): Add prototype.
10242 10064
10243 * xfaces.c (x_free_colors): New function. 10065 * xfaces.c (x_free_colors): New function.
10244 (unload_color, free_face_colors): Use it. 10066 (unload_color, free_face_colors): Use it.
10374 10196
10375 * keyboard.c (recursive_edit_1): Cancel busy-cursor. 10197 * keyboard.c (recursive_edit_1): Cancel busy-cursor.
10376 10198
10377 * xfns.c (inhibit_busy_cursor, busy_count): Removed. 10199 * xfns.c (inhibit_busy_cursor, busy_count): Removed.
10378 (Fx_show_busy_cursor, Fx_hide_busy_cursor): Removed. 10200 (Fx_show_busy_cursor, Fx_hide_busy_cursor): Removed.
10379 (busy_cursor_atimer, busy_cursor_shown_p, Vbusy_cursor_delay): New 10201 (busy_cursor_atimer, busy_cursor_shown_p, Vbusy_cursor_delay):
10380 variables. 10202 New variables.
10381 (DEFAULT_BUSY_CURSOR_DELAY): New define. 10203 (DEFAULT_BUSY_CURSOR_DELAY): New define.
10382 (start_busy_cursor, cancel_busy_cursor, show_busy_cursor) 10204 (start_busy_cursor, cancel_busy_cursor, show_busy_cursor)
10383 (hide_busy_cursor): New functions. 10205 (hide_busy_cursor): New functions.
10384 (syms_of_xfns): DEFVAR_LISP Vbusy_cursor_delay. 10206 (syms_of_xfns): DEFVAR_LISP Vbusy_cursor_delay.
10385 10207
10447 * syntax.c (multibyte_syntax_as_symbol): New variable. 10269 * syntax.c (multibyte_syntax_as_symbol): New variable.
10448 (syms_of_syntax): Declare it as a Lisp variable. 10270 (syms_of_syntax): Declare it as a Lisp variable.
10449 (SYNTAX_WITH_MULTIBYTE_CHECK): New macro. 10271 (SYNTAX_WITH_MULTIBYTE_CHECK): New macro.
10450 (scan_lists): If both sexpflag and multibyte_syntax_as_symbol are 10272 (scan_lists): If both sexpflag and multibyte_syntax_as_symbol are
10451 nonzero, treat all multibyte characters as symbol. 10273 nonzero, treat all multibyte characters as symbol.
10452 (init_syntax_once): Give syntax `word' to all multibyte 10274 (init_syntax_once): Give syntax `word' to all multibyte characters.
10453 characters.
10454 10275
10455 2000-02-22 Eli Zaretskii <eliz@is.elta.co.il> 10276 2000-02-22 Eli Zaretskii <eliz@is.elta.co.il>
10456 10277
10457 * frame.c (Fdelete_frame): Don't let echo_area_window remain on 10278 * frame.c (Fdelete_frame): Don't let echo_area_window remain on
10458 a deleted frame. 10279 a deleted frame.
10641 * search.c (compile_pattern_1): Remove RE_CHAR_CLASSES from the syntax 10462 * search.c (compile_pattern_1): Remove RE_CHAR_CLASSES from the syntax
10642 since it's now part of RE_SYNTAX_EMACS. 10463 since it's now part of RE_SYNTAX_EMACS.
10643 10464
10644 2000-02-12 Dave Love <fx@gnu.org> 10465 2000-02-12 Dave Love <fx@gnu.org>
10645 10466
10646 * frame.h (SELECTED_FRAME): Use NULL, not 0 to avoid warnings on 10467 * frame.h (SELECTED_FRAME): Use NULL, not 0 to avoid warnings on Alpha.
10647 Alpha.
10648 10468
10649 2000-02-12 Gerd Moellmann <gerd@gnu.org> 10469 2000-02-12 Gerd Moellmann <gerd@gnu.org>
10650 10470
10651 * xdisp.c (syms_of_xdisp): Doc fix for scroll-conservatively. 10471 * xdisp.c (syms_of_xdisp): Doc fix for scroll-conservatively.
10652 10472
10667 2000-02-12 Gerd Moellmann <gerd@gnu.org> 10487 2000-02-12 Gerd Moellmann <gerd@gnu.org>
10668 10488
10669 * process.c (Fopen_network_stream) [POLL_FOR_INPUT]: Register 10489 * process.c (Fopen_network_stream) [POLL_FOR_INPUT]: Register
10670 unwind function to undo the effect of stopping atimers. 10490 unwind function to undo the effect of stopping atimers.
10671 10491
10672 * keyboard.c (bind_polling_period): Stop all timers except 10492 * keyboard.c (bind_polling_period): Stop all timers except poll_timer.
10673 poll_timer.
10674 10493
10675 * atimer.c (stopped_atimers): New variable. 10494 * atimer.c (stopped_atimers): New variable.
10676 (stop_other_atimers, run_all_atimers, unwind_stop_other_atimers): 10495 (stop_other_atimers, run_all_atimers, unwind_stop_other_atimers):
10677 New functions. 10496 New functions.
10678 10497
10757 the string constant limit (2048 bytes) in MSVC. 10576 the string constant limit (2048 bytes) in MSVC.
10758 (main): Ditto. 10577 (main): Ditto.
10759 10578
10760 2000-02-05 INOUE Seiichiro <inoue@ainet.or.jp> 10579 2000-02-05 INOUE Seiichiro <inoue@ainet.or.jp>
10761 10580
10762 * xterm.c (x_display_and_set_cursor) [HAVE_X_I18N]: Set pre-edit 10581 * xterm.c (x_display_and_set_cursor) [HAVE_X_I18N]: Set pre-edit area.
10763 area.
10764 (x_display_cursor) [HAVE_X_I18N]: Don't set it here. 10582 (x_display_cursor) [HAVE_X_I18N]: Don't set it here.
10765 (XTread_socket) [HAVE_X_I18N]: <KeyPress, KeyRelease>: Don't 10583 (XTread_socket) [HAVE_X_I18N]: <KeyPress, KeyRelease>: Don't
10766 dispatch the event. 10584 dispatch the event.
10767 10585
10768 2000-02-04 Dave Love <fx@gnu.org> 10586 2000-02-04 Dave Love <fx@gnu.org>
10812 * process.c (Fstart_process): Doc fix. 10630 * process.c (Fstart_process): Doc fix.
10813 10631
10814 * eval.c: Fix various doc strings not to duplicate information 10632 * eval.c: Fix various doc strings not to duplicate information
10815 from help-manyarg-func-alist. 10633 from help-manyarg-func-alist.
10816 10634
10817 * window.c (Fset_window_margins): Don't make interactive. Doc 10635 * window.c (Fset_window_margins): Don't make interactive. Doc fix.
10818 fix.
10819 10636
10820 * doc.c (Vhelp_manyarg_func_alist): New variable. 10637 * doc.c (Vhelp_manyarg_func_alist): New variable.
10821 (Fdocumentation): Use it. 10638 (Fdocumentation): Use it.
10822 (syms_of_doc): Define it. 10639 (syms_of_doc): Define it.
10823 10640
10824 2000-01-31 Gerd Moellmann <gerd@gnu.org> 10641 2000-01-31 Gerd Moellmann <gerd@gnu.org>
10825 10642
10826 * xterm.c (xim_open_dpy): Remove unused local variable. 10643 * xterm.c (xim_open_dpy): Remove unused local variable.
10827 10644
10828 * emacs.c (USAGE): Use term `display options' instead of `X 10645 * emacs.c (USAGE): Use term `display options' instead of `X options'.
10829 options'.
10830 10646
10831 * xdisp.c (Ftrace_to_stderr) [GLYPH_DEBUG]: New function. 10647 * xdisp.c (Ftrace_to_stderr) [GLYPH_DEBUG]: New function.
10832 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it. 10648 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
10833 10649
10834 * fns.c (sweep_weak_table): New function. 10650 * fns.c (sweep_weak_table): New function.
10905 10721
10906 * xterm.c (XTread_socket) [HAVE_X_I18N]: If event is for none of 10722 * xterm.c (XTread_socket) [HAVE_X_I18N]: If event is for none of
10907 our frames, call XFilterEvent with 2nd parameter `None'. 10723 our frames, call XFilterEvent with 2nd parameter `None'.
10908 (XTread_socket) <KeyPress> [HAVE_X_I18N]: Handle XmbLookupString 10724 (XTread_socket) <KeyPress> [HAVE_X_I18N]: Handle XmbLookupString
10909 returning XBufferOverflow. 10725 returning XBufferOverflow.
10910 (XTread_socket) <ConfigureNotify> [HAVE_X_I18N]: Set XIC status 10726 (XTread_socket) <ConfigureNotify> [HAVE_X_I18N]: Set XIC status area.
10911 area.
10912 (x_display_cursor) [HAVE_X_I18N]: Set XIC pre-edit area. 10727 (x_display_cursor) [HAVE_X_I18N]: Set XIC pre-edit area.
10913 (x_new_fontset) [HAVE_X_I18N]: Create XIC status area fontset. 10728 (x_new_fontset) [HAVE_X_I18N]: Create XIC status area fontset.
10914 (xim_destroy_callback, xim_open_dpy, xim_instantiate_callback) 10729 (xim_destroy_callback, xim_open_dpy, xim_instantiate_callback)
10915 (xim_initialize, xim_close) 10730 (xim_initialize, xim_close)
10916 [HAVE_X_I18N && HAVE_X11R6]: New functions. 10731 [HAVE_X_I18N && HAVE_X11R6]: New functions.
10948 10763
10949 2000-01-27 Eli Zaretskii <eliz@is.elta.co.il> 10764 2000-01-27 Eli Zaretskii <eliz@is.elta.co.il>
10950 10765
10951 Support for the menu-help feature: 10766 Support for the menu-help feature:
10952 10767
10953 * msdos.h: Change prototypes of XMenuAddSelection and 10768 * msdos.h: Change prototypes of XMenuAddSelection and XMenuActivate.
10954 XMenuActivate.
10955 10769
10956 * msdos.c (IT_clear_end_of_line): Print the extent of the cleared 10770 * msdos.c (IT_clear_end_of_line): Print the extent of the cleared
10957 part of the line to the termscript file. 10771 part of the line to the termscript file.
10958 (IT_clear_to_end): Clear the entire line, not just its beginning. 10772 (IT_clear_to_end): Clear the entire line, not just its beginning.
10959 (menu_help_message, prev_menu_help_message): New variables. 10773 (menu_help_message, prev_menu_help_message): New variables.
11033 (UNBLOCK_INPUT): Rewritten. Handle pending atimers. 10847 (UNBLOCK_INPUT): Rewritten. Handle pending atimers.
11034 10848
11035 * lisp.h (popup_activated_flag): Add extern declaration. 10849 * lisp.h (popup_activated_flag): Add extern declaration.
11036 10850
11037 * xmenu.c (popup_activated_flag): Make externally visible. 10851 * xmenu.c (popup_activated_flag): Make externally visible.
11038 (popup_activate_callback) [USE_MOTIF]: Increment 10852 (popup_activate_callback) [USE_MOTIF]: Increment popup_activated_flag.
11039 popup_activated_flag.
11040 (popup_deactivate_callback) [USE_MOTIF]: Decrement it. 10853 (popup_deactivate_callback) [USE_MOTIF]: Decrement it.
11041 10854
11042 * xterm.c (toplevel): Include atimer.h. 10855 * xterm.c (toplevel): Include atimer.h.
11043 (toolkit_scroll_bar_interaction): New variable. 10856 (toolkit_scroll_bar_interaction): New variable.
11044 (Fxt_process_timeouts): Removed. 10857 (Fxt_process_timeouts): Removed.
11068 10881
11069 * w32term.c (w32_fill_rect): Do not try to deal with NULL hdc 10882 * w32term.c (w32_fill_rect): Do not try to deal with NULL hdc
11070 here. Callers changed to always pass real device context. 10883 here. Callers changed to always pass real device context.
11071 (w32_draw_bitmap): Likewise. 10884 (w32_draw_bitmap): Likewise.
11072 (w32_get_glyph_overhangs): Likewise. 10885 (w32_get_glyph_overhangs): Likewise.
11073 (w32_draw_box_rect): Make use of s->hdc rather than getting a new 10886 (w32_draw_box_rect): Make use of s->hdc rather than getting a new one.
11074 one.
11075 (w32_set_vertical_scroll_bar): Pass correct HWND parameters to 10887 (w32_set_vertical_scroll_bar): Pass correct HWND parameters to
11076 pfnSetScrollInfo and SetScrollRange. 10888 pfnSetScrollInfo and SetScrollRange.
11077 (x_get_char_face_and_encoding): Don't turn iso8859-1 characters 10889 (x_get_char_face_and_encoding): Don't turn iso8859-1 characters
11078 back into MULE characters after decoding them. 10890 back into MULE characters after decoding them.
11079 (x_get_glyph_face_and_encoding): Likewise. 10891 (x_get_glyph_face_and_encoding): Likewise.
11093 10905
11094 * w32console.c (turn_on_face, turn_off_face): New functions. 10906 * w32console.c (turn_on_face, turn_off_face): New functions.
11095 (change_line_highlight): New prototype for new redisplay. 10907 (change_line_highlight): New prototype for new redisplay.
11096 (write_glyphs): Support multibyte text. Support faces. 10908 (write_glyphs): Support multibyte text. Support faces.
11097 10909
11098 * w32faces.c: Complete rewrite for new redisplay based on new 10910 * w32faces.c: Complete rewrite for new redisplay based on new xfaces.c.
11099 xfaces.c.
11100 10911
11101 * w32fns.c: Use SELECTED_FRAME macro in place of selected_frame 10912 * w32fns.c: Use SELECTED_FRAME macro in place of selected_frame
11102 throughout. struct frame * in place of FRAME_PTR. 10913 throughout. struct frame * in place of FRAME_PTR.
11103 Skeleton support for images, toolbars, tooltips from xfns.c. 10914 Skeleton support for images, toolbars, tooltips from xfns.c.
11104 (Fx_create_frame): Use system default for default scroll bar 10915 (Fx_create_frame): Use system default for default scroll bar width.
11105 width.
11106 (w32_get_arg): Renamed from x_get_arg. 10916 (w32_get_arg): Renamed from x_get_arg.
11107 (Fx_file_dialog): New function. 10917 (Fx_file_dialog): New function.
11108 (w32_list_fonts): Check cache before asking system. 10918 (w32_list_fonts): Check cache before asking system.
11109 (Vw32_enable_synthesized_fonts): New variable. 10919 (Vw32_enable_synthesized_fonts): New variable.
11110 (Vw32_enable_italics): Obsolete, removed. 10920 (Vw32_enable_italics): Obsolete, removed.
11145 10955
11146 2000-01-17 Gerd Moellmann <gerd@gnu.org> 10956 2000-01-17 Gerd Moellmann <gerd@gnu.org>
11147 10957
11148 * m/news-risc.h (LD_SWITCH_MACHINE): Define differently for GCC. 10958 * m/news-risc.h (LD_SWITCH_MACHINE): Define differently for GCC.
11149 10959
11150 * xfns.c (x_window): Call lw_create_widget with new parameter 10960 * xfns.c (x_window): Call lw_create_widget with new parameter list.
11151 list.
11152 10961
11153 * widget.c (EmacsFrameSetCharSize): Change size of children first 10962 * widget.c (EmacsFrameSetCharSize): Change size of children first
11154 because of problems with main window geometry management under 10963 because of problems with main window geometry management under Lesstif.
11155 Lesstif.
11156 10964
11157 * xmenu.c (enum menu_item_idx): New enumeration replacing defines 10965 * xmenu.c (enum menu_item_idx): New enumeration replacing defines
11158 MENU_ITEMS_ITEM_.*. 10966 MENU_ITEMS_ITEM_.*.
11159 (MENU_ITEMS_ITEM_HELP): New enumerator. 10967 (MENU_ITEMS_ITEM_HELP): New enumerator.
11160 (push_menu_item): Add parameter HELP. Record help in menu_items. 10968 (push_menu_item): Add parameter HELP. Record help in menu_items.
11185 * data.c (Fset): Pass new arg to set_internal. 10993 * data.c (Fset): Pass new arg to set_internal.
11186 * bytecode.c (Fbyte_code): Pass new arg to set_internal. 10994 * bytecode.c (Fbyte_code): Pass new arg to set_internal.
11187 10995
11188 2000-01-11 Gerd Moellmann <gerd@gnu.org> 10996 2000-01-11 Gerd Moellmann <gerd@gnu.org>
11189 10997
11190 * .gdbinit: Adapt to new strings. Add xbacktrace, xreload, 10998 * .gdbinit: Adapt to new strings. Add xbacktrace, xreload, xprintsym.
11191 xprintsym.
11192 10999
11193 2000-01-11 Richard M. Stallman <rms@gnu.org> 11000 2000-01-11 Richard M. Stallman <rms@gnu.org>
11194 11001
11195 * minibuf.c (Ftry_completion): Doc fix. 11002 * minibuf.c (Ftry_completion): Doc fix.
11196 11003
11245 11052
11246 * puresize.h (BASE_PURE_SIZE): Increase to 600000. 11053 * puresize.h (BASE_PURE_SIZE): Increase to 600000.
11247 11054
11248 * lisp.h: Add prototype for allocate_string_data. 11055 * lisp.h: Add prototype for allocate_string_data.
11249 11056
11250 * alloc.c (Fgarbage_collect): Return number of live and free 11057 * alloc.c (Fgarbage_collect): Return number of live and free strings.
11251 strings.
11252 11058
11253 * alloc.c (mark_buffer): Remove code in #if 0. 11059 * alloc.c (mark_buffer): Remove code in #if 0.
11254 (gc_sweep): Ditto. 11060 (gc_sweep): Ditto.
11255 (UNMARK_BALANCE_INTERVALS): Give the macro statement form. 11061 (UNMARK_BALANCE_INTERVALS): Give the macro statement form.
11256 (strings_consed): New variable. 11062 (strings_consed): New variable.
11325 (syms_of_xfaces): Remove their staticpro's. 11131 (syms_of_xfaces): Remove their staticpro's.
11326 (tty_color_name): Return Lisp strings for unspecified fore- and 11132 (tty_color_name): Return Lisp strings for unspecified fore- and
11327 back-ground colors. 11133 back-ground colors.
11328 (Finternal_set_lisp_face_attribute): Remove the special treatment 11134 (Finternal_set_lisp_face_attribute): Remove the special treatment
11329 for Qunspecified_{f,b}g. 11135 for Qunspecified_{f,b}g.
11330 (realize_default_face): Replace Qunspecified_{f,b}g with a Lisp 11136 (realize_default_face): Replace Qunspecified_{f,b}g with a Lisp string.
11331 string.
11332 11137
11333 2000-01-03 Gerd Moellmann <gerd@gnu.org> 11138 2000-01-03 Gerd Moellmann <gerd@gnu.org>
11334 11139
11335 * xdisp.c (reseat_at_next_visible_line_start): Position before 11140 * xdisp.c (reseat_at_next_visible_line_start): Position before
11336 newline only if ending up on a newline. 11141 newline only if ending up on a newline.
11337 (next_element_from_ellipsis): Return success. Handle case of 11142 (next_element_from_ellipsis): Return success. Handle case of
11338 displaying no ellipsis. Fix case of ellipsis defined in display 11143 displaying no ellipsis. Fix case of ellipsis defined in display table.
11339 table.
11340 (next_element_from_buffer): Return 0 if next_element_from_ellipsis 11144 (next_element_from_buffer): Return 0 if next_element_from_ellipsis
11341 returns 0. 11145 returns 0.
11342 11146
11343 2000-01-03 Eli Zaretskii <eliz@is.elta.co.il> 11147 2000-01-03 Eli Zaretskii <eliz@is.elta.co.il>
11344 11148
11351 list of colors renamed to tty-defined-color-alist. 11155 list of colors renamed to tty-defined-color-alist.
11352 (tty_color_name): Pass the frame to tty-color-by-index. 11156 (tty_color_name): Pass the frame to tty-color-by-index.
11353 (realize_tty_face): tty-color-alist is now a function which 11157 (realize_tty_face): tty-color-alist is now a function which
11354 accepts the frame as argument. 11158 accepts the frame as argument.
11355 11159
11356 * term.c (Ftty_display_color_p): Accept an optional argument 11160 * term.c (Ftty_display_color_p): Accept an optional argument FRAME.
11357 FRAME.
11358 11161
11359 2000-01-02 Eli Zaretskii <eliz@is.elta.co.il> 11162 2000-01-02 Eli Zaretskii <eliz@is.elta.co.il>
11360 11163
11361 * term.c (insert_glyphs): Pass glyph, not &glyph, to 11164 * term.c (insert_glyphs): Pass glyph, not &glyph, to
11362 encode_terminal_code. 11165 encode_terminal_code.