Sync up with r21-2-19-tomo-6.
[chise/xemacs-chise.git] / src / ChangeLog
1 1999-08-27  MORIOKA Tomohiko  <tomo@etl.go.jp>
2
3         * mule-charset.c: Move setting for `leading-code-private-11' from
4         `syms_of_mule_charset' to `vars_of_mule_charset'.
5
6 1999-08-27  MORIOKA Tomohiko  <tomo@etl.go.jp>
7
8         * mule-charset.h (CHARSET_BY_LEADING_BYTE): Use `MIN_LEADING_BYTE'
9         and `NUM_LEADING_BYTES' in assert.
10
11 1999-08-27  MORIOKA Tomohiko  <tomo@etl.go.jp>
12
13         * character.h (charset_by_leading_byte): Use `NUM_LEADING_BYTES'
14         instead of 128.
15         (CHARSET_BY_LEADING_BYTE): Use `MIN_LEADING_BYTE' and
16         `NUM_LEADING_BYTES' instead of 128.
17
18 1999-08-26  MORIOKA Tomohiko  <tomo@etl.go.jp>
19
20         * mule-charset.h (charset_by_leading_byte): Use
21         `NUM_LEADING_BYTES' instead of 128.
22         (CHARSET_BY_LEADING_BYTE): Use `MIN_LEADING_BYTE' instead of 128.
23
24         * mule-charset.c (charset_by_leading_byte): Use
25         `NUM_LEADING_BYTES' instead of 128.
26         (make_charset): Use `MIN_LEADING_BYTE' instead of 128.
27
28         * faces.h (FACE_CACHEL_FONT): Use `MIN_LEADING_BYTE' instead of
29         128.
30
31 1999-08-25  MORIOKA Tomohiko  <tomo@etl.go.jp>
32
33         * mule-charset.c (syms_of_mule_charset): Update to
34         0.4 (Shin-Imamiya).
35
36 1999-07-13 Daiki Ueno <ueno@ueda.info.waseda.ac.jp>
37
38         * file-coding.c (encode_coding_sjis): New implementation for
39         UTF2000.  (decode_coding_sjis): Ditto.
40
41 1999-06-17  MORIOKA Tomohiko  <tomo@etl.go.jp>
42
43         * mule-charset.c, character.h (Bytecount rep_bytes_by_first_byte):
44         Don't define in UTF2000.
45
46         * character.h: Include mule-charset.h if CHAR_IS_UCS4 is not
47         defined.
48
49         * redisplay-msw.c, objects-tty.c, objects-msw.c, mule-wnnfns.c,
50         mule-ccl.c, lstream.h, buffer.h: Include character.h in every
51         MULE.
52
53 1999-06-17  MORIOKA Tomohiko  <tomo@etl.go.jp>
54
55         * config.h.in (CHAR_IS_UCS4): New macro.
56
57         * mule-charset.c (rep_bytes_by_first_byte): Modify for
58         conventional MULE representation.
59         (syms_of_mule_charset): Update to 0.3 (Imamiya).
60
61         * mule-charset.h: Reverted to original.
62
63         * redisplay-msw.c, objects-tty.c, objects-msw.c, mule-wnnfns.c,
64         mule-ccl.c, lstream.h, buffer.h: Use "character.h" instead of
65         "mule-charset.h" if CHAR_IS_UCS4 is defined.
66
67         * character.h: New file.
68
69         * file-coding.c (Fmake_coding_system): Set 1 to
70         `codesys->fixed.size' if TYPE is `no-conversion' and UTF2000 is
71         defined.
72         (encode_coding_no_conversion): New implementation for UTF2000.
73
74         * file-coding.h (struct Lisp_Coding_System): Add new member
75         `fixed.size'.
76
77 1999-06-16  MORIOKA Tomohiko  <tomo@etl.go.jp>
78
79         * file-coding.c (decode_coding_iso2022): Code-point arguments of
80         `MAKE_CHAR' must be smaller than 0x80 in UTF2000.
81         (encode_coding_iso2022): New implementation for UTF2000.
82
83 1999-06-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
84
85         * mule-canna.c (c2mu): New implementation for UTF2000.
86         (m2c): Likewise.
87
88 1999-06-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
89
90         * file-coding.c (encode_coding_no_conversion): Modify for UTF2000.
91
92 1999-06-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
93
94         * file-coding.c (reset_encoding_stream): Set 0 to
95         `str->iso2022.current_char_boundary' in UTF2000.
96         (encode_utf8): Don't define in UTF2000.
97         (encode_coding_utf8): New implementation for UTF-8 representation
98         of UTF2000.
99         (complex_vars_of_file_coding): Define coding-system `utf-8'.
100
101 1999-06-15  MORIOKA Tomohiko  <tomo@etl.go.jp>
102
103         * mule.c (vars_of_mule): Provide `utf-2000' in UTF2000.
104
105         * mule-charset.h (BUFBYTE_FIRST_BYTE_P): Modify for UTF-8 in
106         UTF2000.
107         (REP_BYTES_BY_FIRST_BYTE): Likewise.
108
109         * buffer.h (non_ascii_valid_char_p): Don't define in UTF2000.
110
111         * mule-charset.c (non_ascii_set_charptr_emchar): Don't define
112         local variables `lb', `c1', `c2' and `charset' in UTF2000; encode
113         as UTF-8 in UTF2000.
114         (non_ascii_charptr_emchar): Decode as UTF-8 in UTF2000.
115         (non_ascii_valid_char_p): Don't define in UTF2000.
116         (non_ascii_charptr_copy_char): Add case 5 and 6 in UTF2000.
117         (Lstream_get_emchar_1): Likewise.
118         (utf-2000-version): New variable in UTF2000.
119
120         * lread.c (read_escape): Add new reader `u'.
121
122         * insdel.c (three_to_one_table): Don't define in UTF2000.
123         (bufpos_to_bytind_func): Use `buf->text->mule_size' instead of
124         `buf->text->mule_shifter' and `buf->text->mule_three_p' in
125         UTF2000.
126         (bytind_to_bufpos_func): Likewise.
127         (buffer_mule_signal_inserted_region): Likewise.
128         (vars_of_insdel): Don't initialize `three_to_one_table'.
129         (init_buffer_text): Use `buf->text->mule_size' instead of
130         `buf->text->mule_shifter' and `buf->text->mule_three_p' in
131         UTF2000.
132
133         * file-coding.c (DECODE_ADD_BINARY_CHAR): New implementation for
134         UTF-8 representation in UTF2000.
135         (DECODE_ADD_UCS_CHAR): New macro in UTF2000.
136         (decode_ucs4): Use `DECODE_ADD_UCS_CHAR' in UTF2000.
137         (decode_coding_iso2022): Don't define local variable `lb' in
138         UTF2000; don't use LEADING_BYTE in UTF2000; use
139         `DECODE_ADD_UCS_CHAR' in UTF2000.
140         (convert_to_external_format): Decode as UTF-8 in UTF2000.
141
142         * config.h.in (UTF2000): New macro.
143
144         * buffer.h (struct buffer_text): Add new member `mule_size' and
145         don't add `mule_shifter' and `mule_three_p' in UTF2000.
146         (valid_char_p): Return always 1 in UTF2000.
147         (MAX_EMCHAR_LEN): 6 in UTF2000.
148         (three_to_one_table): Don't define in UTF2000.
149         (real_bufpos_to_bytind): Modify for UTF-8 representation in
150         UTF2000.
151         (real_bytind_to_bufpos): Likewise.
152
153         * alloc.c (Fmake_string): Add case 5 and 6 for UTF2000.
154
155 1999-06-10  MORIOKA Tomohiko  <tomo@etl.go.jp>
156
157         * mule-charset.c (rep_bytes_by_first_byte): Modified for character
158         representation change.
159         (Vutf_2000_version): New variable.
160         (leading_code_private_11): New variable.
161         (syms_of_mule_charset): Add new variables `utf-2000-version' and
162         `leading-code-private-11'.
163
164         * mule-charset.h (LEADING_BYTE_CHINESE_CCITT_GB): New macro.
165         (LEADING_BYTE_CHINESE_BIG5_1): Changed to 0x96 temporally.
166         (LEADING_BYTE_CHINESE_CNS11643_1): Changed to 0x97.
167         (LEADING_BYTE_CHINESE_CNS11643_2): Changed to 0x98.
168         (LEADING_BYTE_CHINESE_CNS11643_3): New macro.
169         (LEADING_BYTE_CHINESE_CNS11643_4): Likewise.
170         (LEADING_BYTE_CHINESE_CNS11643_5): Likewise.
171         (LEADING_BYTE_CHINESE_CNS11643_6): Likewise.
172         (LEADING_BYTE_CHINESE_CNS11643_7): Likewise [but not used].
173         (LEADING_BYTE_CHINESE_BIG5_2): Changed to 0x9D temporally.
174         (LEADING_BYTE_KOREAN_KPS9566): New macro [but not used].
175         (CHAR_FIELD1_MASK): Changed to (0x7F << 14).
176         (MIN_CHAR_GREEK): New macro.
177         (MAX_CHAR_GREEK): New macro.
178         (MIN_CHAR_CYRILLIC): New macro.
179         (MAX_CHAR_CYRILLIC): New macro.
180         (MIN_CHAR_HEBREW): New macro.
181         (MAX_CHAR_HEBREW): New macro.
182         (MIN_CHAR_THAI): New macro.
183         (MAX_CHAR_THAI): New macro.
184         (MIN_CHAR_HALFWIDTH_KATAKANA): New macro.
185         (MAX_CHAR_HALFWIDTH_KATAKANA): New macro.
186         (CHAR_FIELD2_INTERNAL): New macro [renamed from `CHAR_FIELD2'.
187         (CHAR_FIELD3_INTERNAL): New macro [renamed from `CHAR_FIELD3'.
188         (FIELD1_TO_PRIVATE_LEADING_BYTE): Changed to 0xc0.
189         (FIELD1_TO_OFFICIAL_LEADING_BYTE): Changed to 0x50.
190         (CHAR_FIELD2): New inline function.
191         (CHAR_FIELD3): New inline function.
192         (MULE_CHAR_PRIVATE_OFFSET): New macro.
193         (MIN_CHAR_OFFICIAL_TYPE9N): Shifted to `MULE_CHAR_PRIVATE_OFFSET'.
194         (MIN_CHAR_PRIVATE_TYPE9N): Likewise.
195         (MIN_CHAR_PRIVATE_TYPE9NX9N): Likewise.
196         (MIN_CHAR_OFFICIAL_TYPE9NX9N): Likewise.
197         (MIN_CHAR_COMPOSITION): Likewise.
198         (CHAR_LEADING_BYTE): Modified for character representation change.
199         (MAKE_CHAR): Likewise.
200
201         * lisp.h (Vcharset_latin_iso8859_1): New variable.
202         (Vcharset_greek_iso8859_7): Likewise.
203         (Vcharset_cyrillic_iso8859_5): Likewise.
204         (Vcharset_hebrew_iso8859_8): Likewise.
205         (Vcharset_thai_tis620): Likewise.
206         (Vcharset_katakana_jisx0201): Likewise.
207
208 1999-08-17  MORIOKA Tomohiko  <tomo@etl.go.jp>
209
210         * file-coding.c (determine_real_coding_system): Treat `coding:'
211         cookie.
212
213 1999-08-16  MORIOKA Tomohiko  <tomo@etl.go.jp>
214
215         * file-coding.c (struct decoding_stream): New member `counter'.
216         (reset_decoding_stream): Initialize `counter'.
217         (decode_coding_ucs4): Use `counter'.
218         (decode_coding_utf8): Likewise.
219
220 1999-07-30  XEmacs Build Bot <builds@cvs.xemacs.org>
221
222         * XEmacs 21.2.19 is released
223
224 1999-07-27  Jeff Miller  <jmiller@smart.net>
225
226         * add a "#ifdef HAVE_MENUBARS"  wrapper to gui.c around 
227           menubar_show_keybindings.
228
229 1999-07-23  SL Baur  <steve@miho>
230
231         * mule-charset.c (syms_of_mule_charset): Delete duplicated
232         definition of Qccl_program.
233
234         * mule-ccl.h: Make a global declaration of it here.
235
236 1999-07-20  Bob Weiner  <weiner@beopen.com>
237
238         * s/sco7.h: Added from rr@sco.com.
239
240 1999-06-25  MORIOKA Tomohiko  <tomo@etl.go.jp>
241
242         * mule-ccl.c (ccl_driver): Fix `CCL_WriteMultibyteChar2'.
243
244 1999-06-24  MORIOKA Tomohiko  <tomo@etl.go.jp>
245
246         * file-coding.c (mule_decode): Setup `str->ccl.last_block'.
247         (mule_encode): Likewise.
248
249         * mule-ccl.c (Qccl_program): New variable.
250         (CCL_SUSPEND): New macro.
251         (CCL_INVALID_CMD): New macro.
252         (CCL_READ_CHAR): Don't regard as invalid command while processing
253         the last block even if input is empty; use
254         `CCL_STAT_SUSPEND_BY_SRC' instead of `CCL_STAT_SUSPEND'.
255         (vars_of_mule_ccl): Setup `Qccl_program' and `Qccl_program_idx'.
256
257         * mule-ccl.h (CCL_STAT_SUCCESS): Moved from mule-ccl.c.
258         (CCL_STAT_SUSPEND_BY_SRC): Imported from Emacs 20.3.10.
259         (CCL_STAT_SUSPEND_BY_DST): Likewise.
260         (CCL_STAT_INVALID_CMD): Moved from mule-ccl.c; change value from 2.
261         (CCL_STAT_QUIT): Moved from mule-ccl.c; change value from 3.
262
263 1999-05-04  Ken'ichi Handa  <handa@gnu.org>
264
265         * mule-ccl.h (struct ccl_program): New member stack_idx.
266
267         * mule-ccl.c (ccl_prog_stack_struct): Declare it as static.
268         (ccl_driver): Setup stack_idx and ccl_prog correctly.  Update them
269         before returing.
270         (setup_ccl_program): Initialize ccl->stack_idx to 0.
271
272 1998-10-12  Kenichi Handa  <handa@etl.go.jp>
273
274         * mule-ccl.c (CCL_DECODE_SJIS, CCL_ENCODE_SJIS): Swap the
275         definitions.
276
277 1998-08-18  Kenichi Handa  <handa@etl.go.jp>
278
279         * mule-ccl.c (CCL_READ_CHAR): If eof is encounterd while
280         processing the last block, don't just finish but processes eol
281         block of the current CCL program.
282         (ccl_driver): Add a new jump label ccl_repeat for the above
283         change.
284
285 1998-04-15  Kenichi Handa  <handa@etl.go.jp>
286
287         * mule-ccl.c: Typo in comments fixed.
288         (Qccl_program_idx): New variables.
289         (CCL_ReadMultibyteChar2): Macro name changed from
290         CCL_ReadMultibyteCharacter.
291         (CCL_WriteMultibyteChar2): Macro name changed from
292         CCL_WriteMultibyteChar2.
293         (ccl_driver): Adjusted for the above changes.
294         (resolve_symbol_ccl_program): New function.
295         (Fccl_execute): The arg CCL-PROGRAM can be a symbol of CCL
296         program.  If CCL-PRGRAM is a vector, convert symbols in it to ID
297         numbers by resolve_symbol_ccl_program.
298         (Fccl_execute_on_string): Likewise.
299         (Fregister_ccl_program): If the arg CCL-PRGRAM is a vector,
300         convert symbols in it to ID numbers by resolve_symbol_ccl_program.
301
302 1998-01-21  Kenichi Handa  <handa@etl.go.jp>
303
304         * mule-ccl.h: (struct ccl_program): New member private_state.
305
306         * mule-ccl.c
307         (CCL_Call): Fix the comment.
308         (CCL_ReadMultibyteCharacter, CCL_WriteMultibyteCharacter): New
309         macros for CCL Commands.
310         (EXCMD): New macro.
311         (ccl_driver): New case lable `CCL_Extention'.
312         (setup_ccl_program): Initialize the member `private_state' of CCL.
313
314 1999-07-08  Katsumi Yamaoka <yamaoka@jpl.org>
315
316         * keymap.c (copy_keymap_internal): Inherit the default binding.
317
318 1999-07-14  Kazuyuki IENAGA <kazz@imasy.or.jp>
319
320         * event-Xt.c (handle_focus_event_1): Re-enable Motif/XIM to get
321         focus the event (XIM_focus_event).
322         (emacs_Xt_handle_magic_event): No side effect on Motif/XIM because 
323         XIM_SetGeometry does nothing in input_method_motif.c, but re-unify
324         the interface for future use (XIM_SetGeometry).
325         * redisplay-x.c (x_output_string): Re-enable Motif/XIM to set spot 
326         location (XIM_SetSpotLocation).
327         (x_output_eol_cursor): Ditto.
328
329 1999-07-17  Gunnar Evermann  <ge204@eng.cam.ac.uk>
330
331         * gdbinit (pobj): change lrecord_foo to &lrecord_foo to match
332         Olivier's change to lrecord.h of 1999-04-22
333
334 1999-07-20  Robert Pluim  <rpluim@bigfoot.com>
335
336         * gutter.c (redraw_exposed_gutter): Change type of pos from
337         enum toolbar_pos -> enum gutter_pos, since former is only defined
338         if toolbar support is.
339
340 1999-07-19  Andy Piper  <andy@xemacs.org>
341
342         * glyphs-x.c (x_resize_subwindow): cope with widgets as well as
343         subwindows.
344
345         * gutter.c (gutter_validate): new function for the gutter specifier.
346         (specifier_type_create_gutter): declare specifier validator.
347
348         * buffer.h (INC_CHARBYTIND): add for no error checking version.
349
350 1999-07-18  Andy Piper  <andy@xemacs.org>
351
352         * redisplay.c (add_emchar_rune): use XSTRING_DATA not string_data.
353
354         * glyphs-msw.c (console_type_create_glyphs_mswindows): add
355         resize_subwindow.
356         (mswindows_resize_subwindow): new function.
357
358         * gutter.c (redraw_exposed_gutter): only reset the
359         current_display_lines if non-zero.
360         (Fgutter_pixel_height): new function.
361         (Fgutter_pixel_width): new function.
362
363         * event-msw.c (mswindows_wnd_proc): set the mask of the parameter
364         we want to retrive from the tab control.
365
366 1999-07-17  Andy Piper  <andy@xemacs.org>
367
368         * window.c (change_window_height): mark gutters changed when we're
369         done.
370
371         * gutter.c (specifier_vars_of_gutter): make defaults more
372         sensible.
373
374         * gutter.h (WINDOW_REAL_GUTTER_BORDER_WIDTH): adjust to be 0 for 0
375         height gutter.
376         (DEFAULT_GUTTER_WIDTH): change.
377         (DEFAULT_GUTTER_BORDER_WIDTH): change.
378
379 1999-07-18  Andy Piper  <andy@xemacs.org>
380
381         * redisplay.c (add_emchar_rune): use XSTRING_DATA not string_data.
382
383 1999-07-16  Andy Piper  <andy@xemacs.org>
384
385         * frame.c (Fmake_frame): call init_frame_gutters().
386
387         * redisplay.c (add_emchar_rune): use string functions if we are
388         working with a string.
389         (position_redisplay_data_type): add string element.
390
391 1999-07-15  Andy Piper  <andy@xemacs.org>
392
393         * winslots.h: add real_gutter_size slots to hold the actual gutter
394         size. This is important for autodetected sizes.
395
396         * gutter.c (calculate_gutter_size): calculate size for gutters
397         that have 'autodetect size.
398
399         * redisplay-msw.c (mswindows_output_vertical_divider): adjust
400         extent of divider for gutters.
401
402         * redisplay-x.c (x_output_vertical_divider): adjust extent of
403         divider for gutters.
404
405         * scrollbar.c (update_scrollbar_instance): adjust scrollbar
406         position to take into account the gutters.
407
408         * redisplay.c (generate_modeline): adjust modeline position to
409         take into account the gutters.
410
411 1999-07-14  Andy Piper  <andy@xemacs.org>
412
413         * gutter.c (frame_topmost_window): new function.
414         (frame_bottommost_window): ditto.
415         (frame_leftmost_window): ditto.
416         (frame_rightmost_window): ditto.
417
418 1999-07-13  Andy Piper  <andy@xemacs.org>
419
420         * redisplay.c (calculate_display_line_boundaries): use text
421         boundaries so that gutters get handled properly.
422
423 1999-07-12  Andy Piper  <andy@xemacs.org>
424
425         * glyphs-x.c (x_widget_instantiate): set the font Motif-style if
426         we're using Motif.
427
428         * redisplay-output.c (redisplay_clear_to_window_end): generalised
429         from redisplay-x.c
430
431         * redisplay-x.c (redisplay_clear_to_window_end): moved to
432         redisplay.c
433         
434         * redisplay-msw.c (redisplay_clear_to_window_end): deleted.
435
436         * gutter.c: new file - implements gutters. All new functions are
437         semantically equivalent to the toolbar functions.
438         (gutter_was_visible): new function.
439         (get_gutter_coords): ditto.
440         (output_gutter): ditto.
441         (clear_gutter): ditto.
442         (update_frame_gutters): ditto.
443         (redraw_exposed_gutter): ditto.
444         (redraw_exposed_gutters): ditto.
445         (free_frame_gutters): ditto.
446         (init_frame_gutters): ditto.
447         (decode_gutter_position): ditto.
448         (Fset_default_gutter_position): ditto.
449         (Fset_default_gutter_position): ditto.
450         (Fdefault_gutter_position): ditto.
451         (gutter_after_change): ditto.
452         (Fgutter_specifier_p): ditto.
453         (recompute_overlaying_specifier): ditto.
454         (gutter_specs_changed): ditto.
455         (default_gutter_specs_changed): ditto.
456         (gutter_geometry_changed_in_window): ditto.
457         (default_gutter_size_changed_in_window): ditto.
458         (default_gutter_border_width_changed_in_window): ditto.
459         (default_gutter_visible_p_changed_in_window): ditto.
460         (syms_of_gutter): ditto.
461         (vars_of_gutter): ditto.
462         (specifier_type_create_gutter): ditto.
463         (specifier_vars_of_gutter): ditto.
464
465         * gutter.h: new file. Contains gutter constants and sizing macros
466         similar to those for the toolbar.
467
468         * winslots.h: add gutter variables.
469
470         * window.h: declare window_is_* functions.
471
472         * window.c (window_is_lowest): make non-static.
473         (window_is_highest): ditto.
474         (window_top_toolbar_height): deleted.
475         (window_bottom_toolbar_height): deleted.
476         (window_left_toolbar_width): deleted.
477         (window_right_toolbar_width): deleted.
478         (window_top_gutter_height): add gutter sizing.
479         (window_bottom_gutter_height): ditto.
480         (window_left_gutter_width): ditto.
481         (window_right_gutter_width): ditto.
482
483         * symsinit.h: declarations for gutters vars etc.
484
485         * search.c (bi_find_next_emchar_in_string): new function.
486
487         * scrollbar.c (update_scrollbar_instance): remove reference to
488         window_bottom_toolbar_height which did nothing.
489
490         * redisplay.h (struct display_line): add face indices for
491         overriding defaults in output_display_line.
492         Add gutter_changed flags and declarations.
493
494         * redisplay.c (create_string_text_block): new function, similar to
495         create_text_block but for strings. Display tables etc are used
496         from the currently selected window.
497         (generate_string_display_line): ditto. Similar to
498         generate_display_line.
499         (generate_displayable_area): generate display lines for a given
500         area on a frame. Input is the string, with associated extents, to
501         display.
502         (redisplay_frame): add gutter_changed check.
503         (redisplay_device): ditto.
504         (redisplay_without_hooks): ditto.
505
506         * redisplay-x.c (bevel_modeline): moved to redisplay.c.
507         (x_redraw_exposed_area): redraw exposed gutters.
508         (x_bevel_area): new redisplay device method.
509         (x_type_create_redisplay_mswindows): add bevel_area device method.
510         (x_output_display_block): fiddly Martin-style cleanup.
511         (x_output_vertical_divider): use bevel_area.
512
513         * redisplay-output.c (output_display_line): check display_lines
514         for face information before using defaults.
515         (bevel_modeline): new function, calls bevel_area with appropriate
516         values.
517
518         * redisplay-msw.c (bevel_modeline): moved to redisplay.c.
519         (mswindows_redraw_exposed_area): redraw exposed gutters.
520         (mswindows_bevel_area): new redisplay device method.
521         (console_type_create_redisplay_mswindows): add bevel_area device
522         method.
523
524         * indent.c (string_column_at_point): add column_at_point but for
525         strings.
526
527         * glyphs-x.c (image_instantiator_format_create_glyphs_x): only
528         instantiate widgets that we have a toolkit for.
529
530         * general.c: add Qgutter.
531
532         * frame.h (struct frame): add display lines for gutters and
533         visibility flags.
534
535         * frame.c (set_frame_selected_window): mark gutters changed.
536
537         * emacs.c (main_1): add gutter initialisation.
538
539         * device.h (struct device): add gutter_changed flag and macros to
540         manipulate it.
541
542         * console.h (struct console_methods): new bevel area redisplay
543         method.
544
545         * buffer.h (REAL_INC_CHARBYTIND): new macro for strings as
546         REAL_INC_BYTIND is for buffers.
547         (INC_CHARPTR): ditto.
548
549         * Makefile.in.in (objs): add gutter.o
550
551 1999-07-13  XEmacs Build Bot <builds@cvs.xemacs.org>
552
553         * XEmacs 21.2.18 is released
554
555 1999-07-08  SL Baur  <steve@mule.m17n.org>
556
557         * event-Xt.c (handle_focus_event_1): Guard FRAME_X_XIC with
558         XIM_XLIB.
559         (emacs_Xt_handle_magic_event): Ditto.
560         * redisplay-x.c (x_output_string): Ditto.
561         (x_output_eol_cursor): Ditto.
562
563 1999-06-30  Kazuyuki IENAGA <kazz@imasy.or.jp>
564
565         *  event-Xt.c, input-method-xlib.c, redisplay-x.c: Avoid the
566         problem that when XIM is destroyed or missed with some reason,
567         xemacs will die.  Now xim=xlib waits the XIM will be ready and
568         endures the case of XIM end up.
569
570 1999-07-03  Gunnar Evermann  <ge204@eng.cam.ac.uk>
571
572         * tooltalk.c (init_tooltalk): save signal actions for SIGQUIT,
573         SIGINT and SIGCHLD before calling tt_open and restore the
574         afterwards. This fixes e.g. the zombie subprocesses on Solaris
575
576 1999-07-06  SL Baur  <steve@xemacs.org>
577
578         * s/linux.h: gcc-2.8 changes for powerpc
579         From Justin Vallon <vallon@mindspring.com>
580
581 1999-07-05  Didier Verna  <verna@inf.enst.fr>
582
583         * indent.c: new symbol Qcoerce.
584         (Fmove_to_column): use it + doc string update.
585
586 1999-07-04  Andy Piper  <andy@xemacs.org>
587
588         * console.c: undo earlier Fprovide changes.
589         * fns.c: ditto.
590         * console.h: ditto.
591
592         * console-tty.c (image_instantiator_format_create_glyphs_tty): new
593         function. validate appropriate image formats for tty.
594
595         * glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM):
596         initialize consoles parameter.
597         (struct image_instantiator_methods): add consoles parameter.
598         (IIFORMAT_VALID_CONSOLE): new function. validate the format on the
599         console.
600         (INITIALIZE_DEVICE_IIFORMAT): validate the format on the given
601         console.
602
603         * glyphs-msw.c: declare instantiators for later use.
604         (image_instantiator_format_create_glyphs_mswindows): validate xpm
605         and friends on the mswindows console.
606         * glyphs-x.c: ditto.
607
608         * glyphs.c (valid_image_instantiator_format_p): disallow glyphs
609         that have not been registered on the supplied device.
610         (Fvalid_image_instantiator_format_p): add locale argument.
611         (instantiate_image_instantiator): valid image instantiator on the
612         device.
613
614         * symsinit.h: add image_instantiator_format_create_glyphs_tty()
615         declaration.
616
617         * emacs.c (main_1): add call to
618         image_instantiator_format_create_glyphs_tty().
619
620 1999-06-29  Olivier Galibert  <galibert@pobox.com>
621
622         * lisp.h: Add #include <stddef.h>.
623
624         * sysdep.c: Remove #include <stddef.h>.
625         * symbols.c: Remove #include <stddef.h>.
626         * sheap.c: Remove #include <stddef.h>.
627         * opaque.c: Remove #include <stddef.h>.
628         * nt.c: Remove #include <stddef.h>.
629         * mule-charset.c: Remove #include <stddef.h>.
630         * marker.c: Remove #include <stddef.h>.
631         * file-coding.c: Remove #include <stddef.h>.
632         * extents.c: Remove #include <stddef.h>.
633         * elhash.c: Remove #include <stddef.h>.
634         * data.c: Remove #include <stddef.h>.
635         * chartab.c: Remove #include <stddef.h>.
636         * bytecode.c: Remove #include <stddef.h>.
637         * alloc.c: Remove #include <stddef.h>.  Fix vector description
638
639 1999-06-30  SL Baur  <steve@miho.m17n.org>
640
641         * editfns.c: Document "%s" format spec.
642         Suggested by Bob Weiner <weiner@altrasoft.com>
643
644 1999-06-29  Andy Piper  <andy@xemacs.org>
645
646         * event-msw.c: fix definition booboo.
647
648 1999-06-28  Andy Piper  <andy@xemacs.org>
649
650         * glyphs-x.c: change tree -> tree-view, progress ->
651         progress_gauge, edit -> edit-field, tab -> tab-control, combo ->
652         combo-box.
653         (complex_vars_of_glyphs_x): provide-on-console the implemented
654         widget types.
655
656         * glyphs-msw.c: ditto.
657         (complex_vars_of_glyphs_mswindows): ditto.
658
659         * lisp.h: add Fprovide_on_console.
660
661         * fns.c (Ffeaturep): add extra optional console argument.
662         (Fprovide_on_console): like Fprovide but provides only on the
663         specified console-type.
664         (Frequire): check console-features as well as global features.
665
666         * console.c (Fconsole_features): new function. return features for
667         this console.
668         (syms_of_console): add Fconsole_features.
669
670         * console.h (CONMETH_FEATURES): new function for accessing features.
671         (CONSOLE_FEATURES): ditto.
672         (struct console_methods): add features slot.
673         (INITIALIZE_CONSOLE_TYPE): initialize features slot.
674
675 1999-06-28  Andy Piper  <andy@xemacs.org>
676
677         * event-Xt.c (handle_focus_event_1): conditionally compile for
678         X11R5.
679
680         * s/cygwin32.h: fix me website address.
681
682         * event-msw.c: add NMHDR for pre b20 cygwin builds.
683
684         * gui-x.c (button_item_to_widget_value): only add callback if it
685         is non-nil.
686
687         * glyphs-x.c: add progress, edit and combo instantiators.
688         (x_widget_set_property): new function. uses lwlib to set widget
689         values.
690         (x_widget_property): new function. uses lwlib to get widget
691         values.
692         (x_button_instantiate): support images in buttons.
693         (x_button_property): new function. use lwlib to get the selected
694         state.
695         (x_progress_instantiate): new function for instantiating progress
696         gauges.
697         (x_progress_set_property): new function. sets the progress gauge
698         position.
699         (x_edit_instantiate): new function. for instantiating edit fields.
700         (x_combo_instantiate): new function. for instantiating combo
701         boxes.
702         (image_instantiator_format_create_glyphs_x): add new device ii
703         formats.
704
705         * glyphs-msw.c (mswindows_tab_instantiate): remove redundant var.
706
707         * console.h (CONSOLE_FEATURES): new features accesor.
708
709         * conslots.h (MARKED_SLOT): add features entry.
710
711 1999-06-25  Andy Piper  <andy@xemacs.org>
712
713         * menubar-x.c (menu_item_descriptor_to_widget_value_1): use new
714         gui functions.
715
716         * menubar-msw.c: move MAX_MENUITEM_LENGTH to gui.h
717
718         * gui.h (struct Lisp_Gui_Item): add accelerator.
719
720         * gui.c (gui_item_add_keyval_pair): deal with accelerators.
721         (gui_item_init): ditto.
722         (gui_add_item_keywords_to_plist): ditto.
723         (mark_gui_item): ditto.
724         (gui_item_hash): ditto.
725         (gui_item_accelerator): new function.
726         (gui_name_accelerator): new function stolen from gui-x.c
727
728         * gui-x.c (popup_selection_callback): always define. mark
729         subwindows changed after calling a callback.
730         (menu_name_to_accelerator): deleted.
731         (button_item_to_widget_value): forward gui_item things to gui_item
732         functions.
733
734         * glyphs-x.h (struct x_subwindow_data): add data for widgets. add
735         appropriate accesors.
736
737         * glyphs-x.c: declare new glyph formats.
738         (x_finalize_image_instance): unmanage and destroy widgets if they
739         exist.
740         (x_unmap_subwindow): handle widgets specially.
741         (x_map_subwindow): ditto. offset display of widgets by offset of
742         text widget within container.
743         (x_update_subwindow): new function. call lw_modify_all_widgets
744         when we are a widget.
745         (x_widget_instantiate): new function for generically creating
746         widgets-glyphs. toolkit specifics forwarded to lwlib.
747         (x_button_instantiate): new function for instantiating
748         widgets-glyph buttons.
749         (console_type_create_glyphs_x): register update_subwindow.
750         (image_instantiator_format_create_glyphs_x): register widget and
751         button types.
752
753         * event-msw.c (mswindows_wnd_proc): remove redundant variable.
754
755         * event-Xt.c (x_event_to_emacs_event): call handle_focus_event_1
756         when we get a button press in case we do not have the focus.
757         (handle_focus_event_1): set the keyboard focus to the text widget
758         if we do not have it.
759
760         * dialog-x.c (dbox_descriptor_to_widget_value): use new gui_item
761         functions.
762
763 1999-06-24  SL Baur  <steve@miho.m17n.org>
764
765         * syntax.c (scan_words): Restore non-Mule code.
766         (word_constituent_p): Restore.
767
768 1999-06-23  Olivier Galibert  <galibert@pobox.com>
769
770         * config.h.in: Add missing #undef *_USER_DEFINED.
771
772 1999-06-23  SL Baur  <steve@miho.m17n.org>
773
774         * lisp.h (set_bit_vector_bit): Force promotion to unsigned long
775         int (fixes a 64-bit problem).
776
777         * chartab.c (word_boundary_p): Use EQ not == for lisp_object
778         comparison.
779
780 1999-03-23  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
781
782         * paths.h.in (PATH_DOC): Made doc-directory configurable.
783
784 1999-06-22  Olivier Galibert  <galibert@pobox.com>
785
786         * lrecord.h: Added basic external description system.
787
788         * symbols.c: Added symbol, symbol-value-buffer-local,
789         symbol-value-lisp-magic and symbol-value-varalias description.
790         * mule-charset.c: Added charset description.
791         * marker.c: Added marker description.
792         * keymap.c: Added keymap description.
793         * glyphs.c: Added glyph description.
794         * floatfns.c: Added float description.
795         * file-coding.c: Added coding-system description.
796         * extents.c: Added extent description.
797         * elhash.c: Added hash-table description.
798         * data.c: Added weak-list desciption.
799         * chartab.c: Added char-table-entry and char-table description.
800         * bytecode.c: Added compiled-function description.
801         * alloc.c: Added cons, vector and string description.
802
803 1999-06-22  Olivier Galibert  <galibert@pobox.com>
804
805         * lrecord.h (struct lrecord_header): Reduced size to 4 bytes.
806         Updated everything to the removal of the "flags" substructure.
807
808         * lisp.h (subr_lheader_initializer): Updated.
809         * symeval.h (symbol_value_forward_lheader_initializer): Updated.
810
811 1999-06-20  MORIOKA Tomohiko  <tomo@etl.go.jp>
812
813         * syntax.c (word_constituent_p): Deleted.
814         (scan_words): Use `WORD_BOUNDARY_P'.
815
816         * chartab.c (Vword_combining_categories): New variable.
817         (Vword_separating_categories): Likewise.
818         (CATEGORYP): New macro.
819         (CATEGORY_SET): Likewise.
820         (CATEGORY_MEMBER): Likewise.
821         (word_boundary_p): New function.
822         (complex_vars_of_chartab): Set up new variable
823         `word-combining-categories' and `word-separating-categories'.
824
825 1999-06-18  Olivier Galibert  <galibert@pobox.com>
826
827         * lrecord.h: Added description as a placehold in the lrecord
828         implementation structures.  Added the parameter to all constructor
829         defines.
830
831         * alloc.c: Added placeholders.
832         * buffer.c: Ditto.
833         * bytecode.c: Ditto.
834         * chartab.c: Ditto.
835         * console.c: Ditto.
836         * data.c: Ditto.
837         * database.c: Ditto.
838         * device.c: Ditto.
839         * eldap.c: Ditto.
840         * elhash.c: Ditto.
841         * eval.c: Ditto.
842         * event-stream.c: Ditto.
843         * events.c: Ditto.
844         * extents.c: Ditto.
845         * faces.c: Ditto.
846         * file-coding.c: Ditto.
847         * floatfns.c: Ditto.
848         * fns.c: Ditto.
849         * frame.c: Ditto.
850         * glyphs.c: Ditto.
851         * gui-x.c: Ditto.
852         * keymap.c: Ditto.
853         * lstream.c: Ditto.
854         * marker.c: Ditto.
855         * mule-charset.c: Ditto.
856         * objects.c: Ditto.
857         * opaque.c: Ditto.
858         * process.c: Ditto.
859         * rangetab.c: Ditto.
860         * specifier.c: Ditto.
861         * symbols.c: Ditto.
862         * toolbar.c: Ditto.
863         * tooltalk.c: Ditto.
864         * window.c: Ditto.
865
866 1999-06-22  XEmacs Build Bot <builds@cvs.xemacs.org>
867
868         * XEmacs 21.2.17 is released
869
870 1999-06-13  Oscar Figueiredo  <oscar@xemacs.org>
871
872         * config.h.in (HAVE_LDAP_SET_OPTION): New define
873         (HAVE_LDAP_GET_LDERRNO): Ditto
874         (HAVE_LDAP_RESULT2ERROR): Ditto
875         (HAVE_LDAP_PARSE_RESULT): Ditto
876         (HAVE_UMICH_LDAP): Removed
877         (HAVE_NS_LDAP): Removed
878
879         * eldap.h (struct Lisp_LDAP): Removed the `livep' member as
880         suggested by Olivier Galibert
881         (CHECK_LIVE_LDAP): Test on `ld' instead of `livep'
882
883         * eldap.c: Take the removal of `livep' into account in all the
884         necessary functions
885         (signal_ldap_error): Take two additional parameters
886         Added new finer compilation conditions in order to use
887         ldap_parse_result or ldap_result2error if available
888         (Fldap_open): Conform to this new API
889         (Fldap_search_internal): Ditto
890
891 1999-06-17  SL Baur  <steve@miho.m17n.org>
892
893         * data.c (struct int_or_double): Should use EMACS_INT not int.
894
895 1999-06-16  Norbert Koch  <n.koch@eai-delta.de>
896
897         * redisplay-msw.c: Run 'ccl_driver' with 'CCL_MODE_ENCODING' as in
898         redisplay-x.c
899
900 1999-06-12  MORIOKA Tomohiko  <tomo@etl.go.jp>
901
902         * redisplay-x.c (separate_textual_runs): Run `ccl_driver' with
903         `CCL_MODE_ENCODING'.
904
905         * file-coding.c (mule_decode): Run `ccl_driver' with
906         `CCL_MODE_DECODING'.
907         (mule_encode): Run `ccl_driver' with `CCL_MODE_ENCODING'.
908
909         * mule-ccl.c (CCL_WRITE_CHAR): Refer `conversion_mode'.
910         (ccl_driver): Add new argument `conversion_mode'.
911         (Fccl_execute): Run `ccl_driver' with `CCL_MODE_ENCODING'.
912         (Fccl_execute_on_string): Likewise [perhaps it is better to add
913         new optional argument].
914
915         * mule-ccl.h (CCL_MODE_ENCODING): New macro.
916         (CCL_MODE_DECODING): New macro.
917         (ccl_driver): Add new argument `conversion_mode'.
918
919 1999-06-15  SL Baur  <steve@miho.m17n.org>
920
921         * mule-charset.c (Fsplit_char): New subr.
922         (Fchar_octet): delete.
923         (syms_of_mule_charset): DEFSUBR it.
924
925 1999-06-13  Andy Piper  <andy@xemacs.org>
926
927         * menubar.h: update declarations involving gui_items.
928
929         * lisp.h: declare Lisp_Gui_Item.
930
931         * glyphs.h (struct Lisp_Image_Instance): update type of gui_item.
932
933         * glyphs.c (mark_image_instance): modify for new lisp-based gui_items.
934         (print_image_instance): ditto.
935         (image_instance_equal): ditto.
936         (image_instance_hash): ditto.
937
938         * event-msw.c (mswindows_need_event): assert badly_p status.
939         (mswindows_wnd_proc): modify WM_NOTIFY handling to cope with
940         callbacks in tree-view and tab-control widgets.
941         (emacs_mswindows_next_event): modify use of
942         mswindows_dequeue_dispatch_event.
943
944         * dialog-msw.c (mswindows_popup_dialog_box): modify for new
945         lisp-based gui_items.
946
947         * glyphs-msw.c (mswindows_update_subwindow): update use of
948         gui_items.
949         (mswindows_register_gui_item): new function.
950         (mswindows_register_gui_item): fix to use lisp gui_items.
951         (mswindows_widget_instantiate): ditto.
952         (mswindows_button_instantiate): ditto.
953         (add_tree_item): new function to recursively add tree view
954         elements.
955         (add_tree_item_list): ditto.
956         (mswindows_tree_instantiate): new function. instantiate tree view
957         controls.
958         (add_tab_item): new function to add tabs to a tab control.
959         (mswindows_tab_instantiate): new function. instantiate tab
960         controls.
961         (image_instantiator_format_create_glyphs_mswindows): add tree view
962         and tab controls.
963         (vars_of_glyphs_mswindows): ditto.
964
965         * glyphs-widget.c (check_valid_item_list_1): allow nested lists in
966         item lists.
967         (check_valid_item_list): ditto.
968         (initialize_widget_image_instance): fix to use new lisp gui_item.
969         (widget_instantiate_1): allow the setting of default textwidth in
970         characters.
971         (widget_instantiate): change to use new widget_instantiate_1
972         signature.
973         (combo_instantiate): ditto.
974         (static_instantiate): ditto.
975         (tab_instantiate): new function for tab widgets.
976         (image_instantiator_format_create_glyphs_widget): add tab and tree
977         view widgets.
978
979         * menubar-msw.c (displayable_menu_item): convert to use lisp
980         gui_items.
981         (populate_menu_add_item): ditto.
982         (populate_or_checksum_helper): ditto.
983
984         * menubar.c (menu_parse_submenu_keywords): convert to use lisp
985         gui_items.
986         (Fmenu_find_real_submenu): ditto.
987
988         * gui.h (struct Lisp_Gui_Item): make gui_item a lisp oebjct.
989
990         * gui.c (gui_item_add_keyval_pair): gui_items are now lisp
991         objects, convert functions that use them accordingly.
992         (gui_item_init): ditto.
993         (gui_item_active_p): ditto.
994         (gui_item_selected_p): ditto.
995         (gui_item_included_p): ditto.
996         (gui_item_display_flush_left): ditto.
997         (gui_item_display_flush_right): ditto.
998         (mark_gui_item): ditto.
999         (allocate_gui_item): new function to create a gui_item.
1000         (make_gui_item_from_keywords_internal): ditto. create and return a
1001         gui_item as well as setting keywords.
1002         (gui_parse_item_keywords): ditto.
1003         (gui_parse_item_keywords_no_errors): ditto.
1004         (gui_add_item_keywords_to_plist): new function, not yet used.
1005         (gui_item_hash): new function.
1006         (gui_item_id_hash): use gui_item_hash.
1007         (gui_item_equal): new function.
1008         (print_gui_item): new function.
1009
1010 1999-06-11  XEmacs Build Bot <builds@cvs.xemacs.org>
1011
1012         * XEmacs 21.2.16 is released
1013
1014 1999-06-10  Andy Piper  <andy@xemacs.org>
1015
1016         * select-msw.c (mswindows_own_selection): only set the clipboard
1017         if asked.
1018         (mswindows_get_foreign_selection): only get the clipboard if
1019         asked.
1020         (mswindows_disown_selection): only disown the clipboard if asked.
1021
1022 1999-06-03  MORIOKA Tomohiko  <tomo@etl.go.jp>
1023
1024         * file-coding.c (coding_system_from_mask): Use `raw-text' instead
1025         of `no-conversion'.
1026         (complex_vars_of_mule_coding): Use `raw-text' as the coding-system
1027         of coding-category `no-conversion'.
1028
1029 1999-06-03  MORIOKA Tomohiko  <tomo@etl.go.jp>
1030
1031         * file-coding.c (Qraw_text): New variable.
1032         (syms_of_mule_coding): Add new symbol `raw-text'.
1033         (complex_vars_of_mule_coding): Add new coding-system `raw-text';
1034         define coding-system `binary' independently; define coding-system
1035         `no-conversion' as an alias for `raw-text'.
1036
1037         * file-coding.h (Qraw_text): New variable.
1038
1039 1999-06-08  SL Baur  <steve@xemacs.org>
1040
1041         * s/decosf4-0.h: Explicitly #undef SYSTEM_MALLOC.
1042
1043 1999-06-06  Hrvoje Niksic  <hniksic@srce.hr>
1044
1045         * fns.c (MIME_LINE_LENGTH): Default to 72, as in mimencode and
1046         base64.el.
1047         (base64_decode_1): Signal errors instead of returning -1.
1048
1049 1999-06-07  Hrvoje Niksic  <hniksic@srce.hr>
1050
1051         * mule-charset.c (Fmake_char): Update docstring.
1052
1053 1999-06-07  Hrvoje Niksic  <hniksic@srce.hr>
1054
1055         * fns.c (Fstring_lessp): Actually increment the Bufbyte pointers.
1056
1057 1999-06-05  Hrvoje Niksic  <hniksic@srce.hr>
1058
1059         * fns.c (base64_decode_1): Allow and ignore any non-base64
1060         characters in input.
1061
1062 1999-05-27  Olivier Galibert  <galibert@pobox.com>
1063
1064         * emacs.c (Fdump_emacs): Add clear_message() lost with the removal
1065         of report_pure_usage().
1066
1067 1999-06-04  Hrvoje Niksic  <hniksic@srce.hr>
1068
1069         * fns.c (Fstring_lessp): Remove O(n^2) under Mule.
1070
1071 1999-06-04  XEmacs Build Bot <builds@cvs.xemacs.org>
1072
1073         * XEmacs 21.2.15 is released
1074
1075 1999-06-01  Hirokazu FUKUI  <fukui@atesoft.advantest.co.jp>
1076
1077         * frame.c (Fset_mouse_position):
1078         (Fset_mouse_pixel_position):
1079         * window.c (Fsplit_window):
1080         (Fmove_to_window_line):
1081         Fix crash when invoking functions with an already-deleted window
1082         argument.
1083
1084         * indent.c (vertical_motion_1):
1085         (vmotion_pixels):
1086         (Fvertical_motion_pixels):
1087         * window.c (Fwindow_displayed_text_pixel_height):
1088         Fix error message when invoking functions with an already-deleted
1089         window argument.
1090
1091 1999-06-01  Jan Vroonhof  <vroonhof@math.ethz.ch>
1092
1093         * sysdep.c (request_sigio_on_device): Guard against glibc
1094         2.1's stub streams implementation.
1095
1096 1999-06-03  SL Baur  <steve@xemacs.org>
1097
1098         * config.h.in:
1099         * emacs.c:  Implement x.y.z version numbers
1100         From Jan Vroonhof <vroonhof@math.ethz.ch>
1101
1102 1999-05-20  MORIOKA Tomohiko  <tomo@etl.go.jp>
1103
1104         * mule-charset.c (complex_vars_of_mule_charset): Registry of
1105         japanese-jisx0208-1978 should not match with "jisx0208.1983" nor
1106         "jisc6226.1983".
1107
1108 1999-06-03  SL Baur  <steve@xemacs.org>
1109
1110         * frame-x.c:
1111         * device-x.c: rename session option to wmcommand.
1112         From Oliver Graf <ograf@rhein-zeitung.de>
1113
1114 1999-05-27  Hrvoje Niksic  <hniksic@srce.hr>
1115
1116         * fns.c (Fsubstring): Don't traverse the same region twice with
1117         charcount_to_bytecount().
1118
1119 1999-06-03  SL Baur  <steve@steve1.m17n.org>
1120
1121         * m/alpha.h (SYSTEM_MALLOC): Fix indented preprocessor directive
1122         garbage.
1123
1124         * s/decosf4-0.h: Defining ORDINARY_LINK here is redundant (and it
1125         doesn't really work as is implied by the commentary).
1126         Don't define SYSTEM_MALLOC so the old GNU malloc can be used.
1127
1128 1999-06-02  SL Baur  <steve@steve1.m17n.org>
1129
1130         * symsinit.h: Declare vars_of_ntproc.
1131         * emacs.c (main_1): Call it.
1132
1133         * ntproc.c (syms_of_ntproc): Move variable initializations from
1134         here ...
1135         (vars_of_ntproc): ... to here [new function].
1136
1137         * file-coding.c (syms_of_file_coding): Rename.
1138         (vars_of_file_coding): Ditto.
1139         (complex_vars_of_file_coding): Ditto.
1140
1141         * symsinit.h: Rename *_mule_coding to *_file_coding.
1142
1143         * emacs.c (main_1): Call them by the proper name.
1144
1145         * device-msw.c (syms_of_device_mswindows): Move variable
1146         initializations from here ...
1147         (vars_of_device_mswindows): ... to here.
1148
1149         * chartab.c (vars_of_chartab): New function.
1150
1151         * symsinit.h: New function, vars_of_chartab.
1152
1153         * emacs.c (main_1): Call it.
1154
1155         * mule-canna.c (syms_of_mule_canna): Move CANNA initialization ...
1156         (vars_of_mule_canna): ... to here.
1157
1158         * mule-ccl.c (vars_of_mule_ccl): New function.  Move variable
1159         initializations out of syms_of_mule_ccl.
1160
1161         * symsinit.h: Declare new function vars_of_mule_ccl.
1162
1163         * emacs.c (main_1): Call it.
1164
1165 1999-05-27  Hrvoje Niksic  <hniksic@srce.hr>
1166
1167         * fns.c (base64_decode_1): Ignore whitespace.
1168
1169 1999-05-27  Hrvoje Niksic  <hniksic@srce.hr>
1170
1171         * mule-charset.c (Fmake_char): Strip the eighth bit off ARG1 and
1172         ARG2.
1173
1174 1999-05-21  Andy Piper  <andy@xemacs.org>
1175
1176         * xselect.c: deleted.
1177
1178         * symsinit.h: declare select initialisation.
1179
1180         * select.h: new file. declare commonly used select functions and
1181         variables.
1182
1183         * select.c: new file. generalised from xselect.c.
1184         (clean_local_selection_data): moved from xselect.c.
1185         (get_local_selection): ditto. device specific pieces called via a
1186         devmeth.
1187         (handle_selection_clear): ditto.
1188         (Fown_selection_internal): renamed and generalised from
1189         Fx_own_selection_internal. moved from xselect.c.
1190         (Fdisown_selection_internal): ditto.
1191         (Fselection_owner_p): ditto.
1192         (Fselection_exists_p): ditto.
1193         (Fget_selection_internal): ditto.
1194         (syms_of_select): new function. QXXXX values moved from xselect.c
1195         (vars_of_select): new function. selection_converter_alist,
1196         lost_selection_hooks moved and renamed from xselect.c
1197
1198         * select-x.c: renamed from xselect.c.
1199         (x_own_selection): converted to device specific. non-X-specific
1200         bits moved to select.c.
1201         (x_get_foreign_selection): ditto.
1202         (x_disown_selection): ditto.
1203         (x_selection_exists_p): ditto.
1204         (console_type_create_select_x): new function.
1205
1206         * select-msw.c (mswindows_own_selection): new device method to set
1207         the clipboard when we 'own' the selection.
1208         (mswindows_get_foreign_selection): new device method to get the
1209         clipboard.
1210         (mswindows_disown_selection): new device method to delete the
1211         selection when we 'disown' it.
1212         (console_type_create_select_mswindows): new function.
1213
1214         * emacs.c (main_1): add select to things to initialise.
1215
1216         * console.h (struct console_methods): new console methods for
1217         selection.
1218
1219         * Makefile.in.in (x_objs): xselect.c renamed to select-x.c
1220
1221 1999-05-20  Hrvoje Niksic  <hniksic@srce.hr>
1222
1223         * print.c (long_to_string): Install a faster version.
1224
1225 1999-05-16  Andy Piper  <andy@xemacs.org>
1226
1227         * ntproc.c (syms_of_ntproc): default
1228         win32-start-process-share-console to t.
1229
1230 1999-05-14  Hrvoje Niksic  <hniksic@srce.hr>
1231
1232         * config.h.in: Do it here.
1233
1234         * bytecode.c: Don't define ERROR_CHECK_TYPECHECK here.
1235
1236 1999-05-14  Andy Piper  <andy@xemacs.org>
1237
1238         * toolbar-msw.c (mswindows_output_toolbar): hash on something
1239         hashable.
1240
1241 1999-05-14  XEmacs Build Bot <builds@cvs.xemacs.org>
1242
1243         * XEmacs 21.2.14 is released
1244
1245 1999-05-12  Andy Piper  <andy@xemacs.org>
1246
1247         * ntproc.c (sys_spawnve): kludge argv[0] in a MS compatible way.
1248
1249 1999-05-11  Gunnar Evermann  <ge204@eng.cam.ac.uk>
1250
1251         * emacs.c (Frun_emacs_from_temacs): (re)alloc natgs+2 entries for
1252         run_temacs_argv array -- fixes random memory corruption crash
1253
1254 1999-05-12  Jan Vroonhof  <vroonhof@math.ethz.ch>
1255
1256         * window.c (Fcurrent_window_configuration):
1257         Save minibuffer height;
1258
1259         * window.c (set_window_configuration): use it.
1260
1261 1999-05-10  Robert Pluim  <rpluim@bigfoot.com>
1262
1263         * lisp.h (NNUNGCPRO): fix typo in name of DEBUG_GCPRO version
1264
1265 1999-04-21  Jan Vroonhof  <vroonhof@math.ethz.ch>
1266
1267         * redisplay.c (redisplay_window): Do not put data
1268         in the line start cache if it is not guaranteed to be correct
1269
1270 1999-04-02  Jan Vroonhof  <vroonhof@math.ethz.ch>
1271
1272         * window.c (struct window_config): Removed frame
1273         size members.
1274         (window_config_equal): No longer compare frame sizes.
1275         (Fset_window_configuration): Resize old top window to fit in the
1276         current frame directly, no longer use a fake frame resize.
1277         (Fcurrent_window_configuration): No longer save frame size
1278
1279 1999-05-11  Andy Piper  <andy@xemacs.org>
1280
1281         * ntproc.c (sys_spawnve): actually assign argv[0] instead of the
1282         first character.
1283
1284 1999-05-10  Hrvoje Niksic  <hniksic@srce.hr>
1285
1286         * sysdep.c (init_system_name): If gethostname gives a proper
1287         domain name, don't look further for one.
1288
1289 1999-05-09  Hrvoje Niksic  <hniksic@srce.hr>
1290
1291         * symbols.c (Fintern): Avoid frequent XSYMBOL (foo).
1292         (Fintern_soft): Accept a symbol argument.
1293
1294 1999-05-06  Hrvoje Niksic  <hniksic@srce.hr>
1295
1296         * symbols.c (Fintern): ...do it here.
1297
1298         * lread.c (read_atom): Don't handle keywords here.
1299
1300 1999-05-06  Hrvoje Niksic  <hniksic@srce.hr>
1301
1302         * symbols.c (reject_constant_symbols): Just use SYMBOL_IS_KEYWORD.
1303
1304 1999-05-03  Olivier Galibert  <galibert@pobox.com>
1305
1306         * lisp.h (SYMBOL_IS_KEYWORD): A symbol can be a keyword only if it
1307         is interned in the main obarray.
1308
1309 1999-04-23  Gunnar Evermann  <ge204@eng.cam.ac.uk>
1310
1311         * menubar-x.c (pre_activate_callback): set accelerator field in
1312         "No menu" entries to nil. Avoid crash in
1313         command_builder_operate_menu_accelerator
1314
1315 1999-05-03  Olivier Galibert  <galibert@pobox.com>
1316
1317         * symeval.h (symbol_value_forward_lheader_initializer): Ditto.
1318
1319         * lisp.h (DEFUN): Fix lrecord header initialisation.
1320
1321 1999-05-02  Andy Piper  <andy@xemacs.org>
1322
1323         * objects-msw.c (mswindows_font_instance_truename): add a ';'.
1324
1325         * ntproc.c (sys_kill): cast using MS mandated defines.
1326
1327 1999-04-29  Andy Piper  <andy@xemacs.org>
1328
1329         * m/intel386.h: remove redundant definitions.
1330
1331         * s/mingw32.h: new header for mingw32.
1332
1333         * unexnt.c: (open_input_file): function moved to nt.c.
1334         (close_file_data): ditto.
1335         (rva_to_section): function moved to ntproc.
1336
1337         * symsinit.h: declare syms_of_ntproc();
1338
1339         * objects-msw.c (mswindows_font_instance_truename): new function.
1340
1341         * ntproc.c: remove many warnings.
1342         (_sys_read_ahead): moved from nt.c and made static.
1343         (rva_to_section): moved from unexnt.c but not defined under
1344         mingw32.
1345         (win32_executable_type): implement what we can for mingw32
1346         headers.
1347         (sys_spawnve): fix bad MULE/GCPRO bug in filename handling.
1348
1349         * ntheap.h: remove declarations of functions that are now static.
1350
1351         * ntheap.c: support static heap.
1352
1353         * nt.h: conditionalise X_OK definition.
1354
1355         * nt.c: eliminate many warnings and support mingw32.
1356         (open_input_file): function moved from unexnt.c and made static
1357         (close_file_data): ditto.
1358         (_sys_read_ahead): moved to ntproc.c
1359
1360         * emacs.c: make sure syms_of_ntptroc gets called under windows.
1361
1362         * console-msw.h: support mingw32.
1363         * getloadavg.c: ditto.
1364         * ntplay.c: ditto.
1365         * sysdep.c: ditto.
1366         * sysdir.h: ditto.
1367         * systime.h: ditto.
1368         * systty.h: ditto.
1369
1370         * config.h.in: dont turn on DEBUG_ENCAPSULATION by default because
1371         some systems don't have all of the encapsulated system calls.
1372
1373         * callproc.c: warning elimination.
1374         * dired-msw.c: ditto.
1375         * process-nt.c: ditto.
1376         * realpath.c: ditto.
1377
1378         * Makefile.in.in: tweak : and ; for building under mswindows.
1379
1380 1999-04-26  Michael Harnois  <mharnois@willinet.net>
1381
1382         * eldap.c (allocate_ldap): Adapt to the new semantics of
1383         alloc_lcrecord_type().
1384
1385 1999-03-16  MORIOKA Tomohiko  <tomo@etl.go.jp>
1386
1387         * file-coding.c (DECODE_HANDLE_END_OF_CONVERSION): fixed.
1388
1389 1998-09-04  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
1390
1391         * Delete mule-coding.c and mule-coding.h because they are not
1392         used.
1393
1394 1999-04-22  Gunnar Evermann  <ge204@eng.cam.ac.uk>
1395
1396         * objects.c (print_font_instance): Check for NILP(f->device),
1397         i.e. Vthe_null_font_instance.
1398         (font_instance_truename_internal): ditto.
1399         (Ffont_instance_properties): ditto.
1400
1401 1999-04-22  Olivier Galibert  <galibert@pobox.com>
1402
1403         * lrecord.h (DECLARE_LRECORD): lrecord_implementation isn't an
1404         array anymore.
1405
1406 1999-04-22  Hrvoje Niksic  <hniksic@srce.hr>
1407
1408         * Makefile.in.in (tests): Don't mention tests explicitly -- makes
1409         it easier to add new ones.
1410
1411 1999-04-22  Hrvoje Niksic  <hniksic@srce.hr>
1412
1413         * symbols.c (reject_constant_symbols): Ditto.
1414         (init_symbols_once_early): Ditto.
1415
1416         * print.c (print_symbol): Don't use ->obarray.
1417
1418         * symbols.c (Funintern): Ditto.
1419
1420         * alloc.c (Fmake_symbol): Don't set ->obarray.
1421
1422         * lisp.h (struct Lisp_Symbol): Removed .obarray field.
1423
1424         * symbols.c (init_symbols_once_early): Removed
1425         Vpure_uninterned_symbol_table.
1426         (Fintern): Don't store to ->obarray field.
1427
1428 1999-04-22  Hrvoje Niksic  <hniksic@srce.hr>
1429
1430         * data.c (vars_of_data): Default debug_issue_ebola_notices to 0.
1431         (eq_with_ebola_notice): Remove abracadabra support.
1432
1433 1999-04-11  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
1434
1435         * eldap.c (Fldap_search_internal): Add a new parameter `withdn' to
1436         retrieve the distinguished names of entries
1437
1438 1999-03-08  Martin Buchholz  <martin@xemacs.org>
1439
1440         * lread.c (read_escape): Make hex escapes read only two hex digits.
1441
1442 1999-04-05  Olivier Galibert  <galibert@pobox.com>
1443
1444         * Makefile.in.in: Remove puresize-adjust.h and recursive makes.
1445         * make-src-depend: Remove puresize-adjust.h.
1446         * src-headers: Remove puresize-adjust.h.
1447         * config.h.in: Kill everything purespace/gung-ho related.
1448
1449         * dbxrc: Make gung-ho mandatory.
1450         * gdbinit: Ditto.
1451
1452         * lrecord.h: Make gung-ho mandatory.  Remove pure flag and add
1453         c_readonly and lisp_readonly.  Remove implementation arrays.
1454         (C_READONLY_RECORD_HEADER_P): Added.
1455         (LISP_READONLY_RECORD_HEADER_P): Added.
1456         (SET_C_READONLY_RECORD_HEADER): Added.
1457         (SET_LISP_READONLY_RECORD_HEADER): Added.
1458
1459         * lisp.h: Kill everything purespace/non gung-ho related.
1460         (CHECK_C_WRITEABLE): Added.
1461         (CHECK_LISP_WRITEABLE): Added.
1462         (C_READONLY): Added.
1463         (LISP_READONLY): Added.
1464
1465         * lisp-union.h: Make gung-ho mandatory.
1466         * lisp-disunion.h: Ditto.
1467
1468         * alloc.c: Kill everything purespace/non  gung-ho related. Fix all
1469         set_lheader_implementation calls.
1470         (c_readonly): Added.
1471         (lisp_readonly): Added.
1472         (make_string_nocopy): Added.
1473         (Fpurecopy):  Changed to do  nothing.   Kept the old documentation
1474         for reference purposes for the next patches.
1475         (sweep_lcrecords_1): Don't free C readonly lcrecords.
1476         (sweep_bit_vectors_1): Don't free C readonly bitvectors.
1477         (SWEEP_FIXED_TYPE_BLOCK): Don't free C readonly lrecords.
1478
1479         * fns.c: Make gung-ho mandatory.
1480         (Fput): CHECK_IMPURE -> CHECK_LISP_WRITEABLE.
1481         (Fremprop): Ditto.
1482         (Ffillarray): Ditto.
1483
1484         * data.c: Make gung-ho mandatory.
1485         (pure_write_error): Removed.
1486         (c_write_error): Added.
1487         (lisp_write_error): Added.
1488         (Fsetcar): CHECK_IMPURE -> CHECK_LISP_WRITEABLE.
1489         (Fsetcdr): Ditto.
1490         (Faset): Ditto.
1491
1492         * symbols.c: Make gung-ho mandatory.  make_pure_pname ->
1493                   make_string or make_string_nocopy.  Fix various
1494                   alloc_lcrecord_type.
1495
1496         * lread.c: Remove everything purespace related.
1497         (Flocate_file_clear_hashing): purified -> c_readonly.
1498         (locate_file): Ditto.
1499         (read_atom): make_pure_pname -> make_string.
1500
1501         * emacs.c (Frun_emacs_from_temacs): Remove purespace stats
1502                   reporting.
1503         (Fdump_emacs): Ditto.
1504
1505         * print.c (print_internal): Make gung-ho mandatory.
1506         * ntheap.c (sbrk): Ditto.
1507         * mem-limits.h (EXCEEDS_LISP_PTR): Ditto
1508         * symeval.h (symbol_value_forward_lheader_initializer): Ditto.
1509
1510         * sheap.c (more_static_core): Remove puresize-adjust.h from
1511                   message.
1512
1513         * syntax.c (complex_vars_of_syntax): make_pure_string ->
1514                   make_string_nocopy.
1515         * keymap.c (make_keymap): Fix alloc_lcrecord_type.
1516         (vars_of_keymap): make_pure_string -> make_string_nocopy.
1517         * events.c (deinitialize_event): Fix set_lheader_implementation.
1518         (zero_event): Ditto.
1519         * specifier.c (make_specifier_internal): Fix alloc_lcrecord.
1520         * menubar-x.c (set_frame_menubar): Fix alloc_lcrecord_type.
1521         * mule-charset.c (make_charset): Ditto.
1522         * console.c (allocate_console): Ditto.
1523         (complex_vars_of_console): Ditto.
1524         * file-coding.c (allocate_coding_system): Ditto.
1525         * device.c (allocate_device): Ditto
1526         * gui-x.c (gcpro_popup_callbacks): Ditto.
1527         * extents.c (allocate_extent_auxiliary): Ditto.
1528         (allocate_extent_info): Ditto.
1529         (copy_extent): Ditto.
1530         * glyphs.c (allocate_image_instance): Ditto.
1531         (allocate_glyph): Ditto.
1532         * frame.c (allocate_frame_core): Ditto.
1533         * database.c (allocate_database): Ditto.
1534         * tooltalk.c (make_tooltalk_message): Ditto.
1535         (make_tooltalk_pattern): Ditto.
1536         * rangetab.c (Fmake_range_table): Ditto.
1537         (Fcopy_range_table): Ditto.
1538         * process.c (make_process_internal): Ditto.
1539         * chartab.c (Fmake_char_table): Ditto.
1540         (make_char_table_entry): Ditto.
1541         (copy_char_table_entry): Ditto.
1542         (Fcopy_char_table): Ditto.
1543         * elhash.c (make_general_lisp_hash_table): Ditto.
1544         (Fcopy_hash_table): Ditto.
1545         * buffer.c (allocate_buffer): Ditto.
1546         (complex_vars_of_buffer): Ditto.
1547         * event-stream.c (allocate_command_builder): Ditto.
1548         * objects.c (Fmake_color_instance): Ditto.
1549         (Fmake_font_instance): Ditto.
1550         (vars_of_objects): Ditto.
1551         * toolbar.c (update_toolbar_button): Ditto.
1552         * window.c (allocate_window): Ditto.
1553         (make_dummy_parent): Ditto.
1554         (Fcurrent_window_configuration): Fix alloc_lcrecord.
1555         (vars_of_window): Fix make_lcrecord_list.
1556         * faces.c (allocate_face): Fix alloc_lcrecord_type. pure_list ->
1557                   Flist.
1558         * lstream.c (Lstream_new): Fix make_lcrecord_list.
1559         * opaque.c (make_opaque): Fix alloc_lrecord.
1560         (make_opaque_list): Fix alloc_lrecord_type.
1561
1562 1999-04-19  Hrvoje Niksic  <hniksic@srce.hr>
1563
1564         * process.c (Fstart_process_internal): Ditto.
1565
1566         * ntproc.c (sys_spawnve): Use Vlisp_EXEC_SUFFIXES when calling
1567         locate_file().
1568
1569         * glyphs-x.c (x_locate_pixmap_file): Ditto.
1570
1571         * glyphs-msw.c (mswindows_locate_pixmap_file): Fix call to
1572         locate_file().
1573
1574         * emodules.c (vars_of_module): New variable Vmodule_extensions.
1575         (emodules_load): Use it when calling locate_file().
1576
1577         * emacs.c (main_1): Use Vlisp_EXEC_SUFFIXES when calling
1578         locate_file().
1579
1580         * callproc.c: Vlisp_EXEC_SUFFIXES: New variable.
1581         (vars_of_callproc): Initialize it.
1582         (Fcall_process_internal): Use it when calling locate_file().
1583
1584         * alloc.c (disksave_object_finalization): Use
1585         Flocate_file_clear_hashing().
1586
1587         * lread.c (Flocate_file_clear_hashing): Clear all hasing when
1588         given `t' as argument.
1589
1590 1999-04-18  Hrvoje Niksic  <hniksic@srce.hr>
1591
1592         * lread.c (locate_file): Expand `pathel' when appropriate.
1593         (Flocate_file_clear_hashing): Expand path elements.
1594         (Flocate_file_clear_hashing): Use Vlocate_file_hash_table.
1595
1596         * dired.c (make_directory_hash_table): Create the hash-table only
1597         if the directory open is successful.
1598
1599         * lread.c (decode_mode_1): New function.
1600         (decode_mode): Ditto.
1601         (Flocate_file): Use them.
1602         (Flocate_file): Expand FILENAME.
1603         (locate_file_map_suffixes): New function.
1604         (locate_file_in_directory_mapper): New function.
1605         (locate_file_in_directory): Use locate_file_in_directory_mapper()
1606         and locate_file_map_suffixes().
1607         (locate_file_construct_suffixed_files): Use
1608         locate_file_map_suffixes().
1609         (locate_file_without_hash): Don't GCPRO path.
1610         (Flocate_file_clear_hashing): Use EXTERNAL_LIST_LOOP.
1611         (syms_of_lread): Remove Qlocate_file_hash_table.
1612         (locate_file_find_directory_hash_table): Use
1613         Vlocate_file_hash_table.
1614         (locate_file_refresh_hashing): Ditto.
1615
1616         * lread.c: Renamed read_objects to Vread_objects.
1617
1618 1999-04-16  Olivier Galibert  <galibert@pobox.com>
1619
1620         * mule-charset.c: Generally resync with fsf 20.3 charset
1621         interface.
1622         (make_charset): Add long and short name.  Use id instead of
1623         leading byte.
1624         (Fmake_charset): Ditto.
1625         (Fmake_reverse_direction_charset): Ditto.
1626         (Fcharset_property): Ditto.
1627         (Fcharset_short_name): Added.
1628         (Fcharset_long_name): Added.
1629         (Fcharset_description): Renamed from charset-doc-string.
1630         (syms_of_mule_charset): Synced symbols.
1631         (complex_vars_of_mule_charset): Synced charsets.
1632
1633         * mule-charset.h: Removed leading byte (uses id instead), added
1634         short and long name.
1635
1636 1999-04-15  Hrvoje Niksic  <hniksic@srce.hr>
1637
1638         * file-coding.c (Fdefine_coding_system_alias): New function.
1639
1640 1999-04-08  Olivier Galibert  <galibert@pobox.com>
1641
1642         * mule-charset.c (complex_vars_of_mule_charset): Allow all iso8859
1643         and -ascii fonts for displaying ascii instead of iso8859-1 only.
1644
1645 1998-12-14  Hrvoje Niksic  <hniksic@srce.hr>
1646
1647         * extents.c (set_extent_glyph_1): Make sure that the glyph we
1648         attach to the extent is valid.
1649
1650 1998-12-12  Hrvoje Niksic  <hniksic@srce.hr>
1651
1652         * dired.c (user_name_completion): Mule-ize.
1653         (user_name_completion): Use xmalloc/xrealloc/xfree.
1654         (user_name_completion): Use DO_REALLOC.
1655         (user_name_completion): Cut down the number of static variables;
1656         use a structure.
1657         (user_name_completion): Username completion is always
1658         case-sensitive.
1659
1660 1998-12-06  Hrvoje Niksic  <hniksic@srce.hr>
1661
1662         * fns.c (base64_decode_1): Remove COUNTER.
1663         (base64_decode_1): Accept CRLF in addition to CR.
1664         (base64_decode_1): Disallow a stray character after final EOF; the
1665         check was probably a remnant of buggy recode code.
1666
1667 1998-12-05  Hrvoje Niksic  <hniksic@srce.hr>
1668
1669         * fns.c (init_provide_once): Provide `base64'.
1670
1671 1998-12-04  Hrvoje Niksic  <hniksic@srce.hr>
1672
1673         * fns.c (XMALLOC_UNBIND): Include SPECCOUNT argument, for clarity.
1674         (Fbase64_encode_region): If buffer is read-only, bail out early.
1675         (Fbase64_decode_region): Ditto.
1676         (Fbase64_encode_region): Initialize SPECCOUNT to pacify the
1677         compiler.
1678         (Fbase64_encode_string): Ditto.
1679         (Fbase64_decode_region): Ditto.
1680         (Fbase64_decode_string): Ditto.
1681
1682 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
1683
1684         * dired.c (Fdirectory_files): Remove redundant code.
1685
1686 1999-03-05  Philip Aston  <philipa@parallax.co.uk>
1687
1688         * frame-msw.c Make raise-frame restore minimised windows.
1689
1690 1999-03-05  Philip Aston  <philipa@parallax.co.uk>
1691
1692         * device-msw.c: Fix DEFVAR format - Death to phantom quote, and
1693         add magic newline.
1694
1695 1999-03-05  Philip Aston  <philipa@parallax.co.uk>
1696
1697         * toolbar-msw.c Consider captions when deciding whether to rebuild
1698         toolbar. This fixes the initial toolbar display for those of us
1699         who don't like captions. These patches applied by Andy Piper.
1700
1701 1999-03-12  XEmacs Build Bot <builds@cvs.xemacs.org>
1702
1703         * XEmacs 21.2.13 is released
1704
1705 1999-03-12  SL Baur  <steve@xemacs.org>
1706
1707         * file-coding.c: Guard ucs table initialization with ifdef MULE.
1708
1709 1999-03-10  Stephen J. Turnbull  <turnbull@sk.tsukuba.ac.jp>
1710
1711         * file-coding.c:  docstring and comment improvements.
1712         (decode_ucs4)  flag possible data loss with comment.
1713
1714 1999-03-10  Martin Buchholz  <martin@xemacs.org>
1715
1716         * file-coding.c (Fset_ucs_char): add CHECK_INT, CHECK_CHAR
1717         (ucs_to_char):
1718         (Fucs_char):
1719         (Fset_char_ucs):
1720         (decode_coding_ucs4):
1721         (encode_coding_ucs4):
1722         (detect_coding_utf8):
1723         (decode_coding_utf8):
1724         (encode_utf8):
1725         (encode_coding_utf8):
1726         Add CHECK_* macros where needed to avoid crashes.
1727         #ifdef out all composite character support using
1728         #ifdef ENABLE_COMPOSITE_CHARS
1729         Use normal XEmacs coding standards.
1730         Fix docstrings.
1731         Remove CODING_STREAM_COMPOSE, CODING_STREAM_DECOMPOSE.
1732
1733 1998-09-08  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
1734
1735         * file-coding.c (make-coding-system): Add description about
1736         `ucs-4' and `utf-8'.
1737         (detection_state): Modify to implement ucs-4 and utf-8.
1738         (detect_coding_type): Likewise.
1739         (detect_coding_ucs4): New implementation.
1740         (detect_coding_utf8): New implementation.
1741         (encode_utf8): fixed.
1742         (syms_of_mule_coding): Rename `ucs4' and `utf8' to `ucs-4' and
1743         `utf-8'.
1744
1745 1998-09-08  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
1746
1747         * file-coding.c (mule_char_to_ucs4): Encode 94x94 chars in ISO
1748         2022 registry to private area.
1749
1750 1998-09-07  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
1751
1752         * file-coding.c (encode_utf8): New function.
1753         (encode_coding_utf8): New implementation.
1754
1755 1998-09-07  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
1756
1757         * file-coding.c (ucs_to_mule_table): New variable; abolish
1758         `Vucs_to_mule_table'
1759         (mule_to_ucs_table): renamed from `Vmule_to_ucs_table'.
1760         (set-ucs-char): New function.
1761         (ucs_to_char): New function.
1762         (ucs-char): New function.
1763         (set-char-ucs): New function.
1764         (char-ucs): New function.
1765         (decode_ucs4): Use `ucs_to_char'.
1766         (complex_vars_of_mule_coding): Abolish `ucs-to-mule-table' and
1767         `mule-to-ucs-table'.
1768
1769 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
1770
1771         * chartab.h: EXFUN `Fget_char_table'.
1772
1773         * file-coding.c (encode_ucs4): New function.
1774         (encode_coding_ucs4): Use `encode_ucs4'.
1775
1776 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
1777
1778         * file-coding.c (decode_coding_ucs4): New implementation.
1779
1780 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
1781
1782         * file-coding.c (decode_coding_ucs4): fixed.
1783
1784         * file-coding.c (Vmule_to_ucs_table): New variable.
1785         (mule_char_to_ucs4): New function.
1786         (encode_coding_ucs4): New implementation.
1787         (complex_vars_of_mule_coding): Define variable
1788         `mule-to-ucs-table'.
1789
1790 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
1791
1792         * file-coding.c (decode_coding_utf8): New implementation.
1793
1794 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
1795
1796         * file-coding.c (decode_coding_utf8): fixed.
1797
1798 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
1799
1800         * file-coding.c (Vucs_to_mule_table): New variable.
1801         (decode_ucs4): Refer `Vucs_to_mule_table'.
1802         (complex_vars_of_mule_coding): Define variable
1803         `ucs-to-mule-table'.
1804
1805 1998-09-04  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
1806
1807         * file-coding.c (detect_coding_ucs4): New function (not
1808         implemented yet).
1809         (decode_coding_ucs4): New function.
1810         (encode_coding_ucs4): New function (not implemented yet).
1811         (detect_coding_utf8): New function (not implemented yet).
1812         (decode_coding_utf8): New function.
1813         (encode_coding_utf8): New function (not implemented yet).
1814         (make-coding-system): New type `ucs4' and `utf8'.
1815         (coding-system-type): Likewise.
1816         (detection_state): Add `ucs4' and `utf8'.
1817         (detect_coding_type): Likewise.
1818         (mule_decode): Use `decode_coding_ucs4' and `decode_coding_utf8'.
1819         (mule_encode): Use `encode_coding_ucs4' and `encode_coding_utf8'.
1820         (decode_ucs4): New function (very incomplete).
1821         (syms_of_mule_coding): Add `ucs4' and `utf8'.
1822
1823         * file-coding.h: Add definitions for UCS-4 and UTF-8.
1824
1825 1999-03-08  Martin Buchholz  <martin@xemacs.org>
1826
1827         * mule-charset.c:
1828         (non_ascii_valid_char_p):
1829         (lookup_composite_char):
1830         (composite_char_string):
1831         (make-composite-char):
1832         (composite-char-string):
1833         (syms_of_mule_charset):
1834         (complex_vars_of_mule_charset):
1835         * mule-charset.h (LEADING_BYTE_COMPOSITE):
1836         (CHAR_LEADING_BYTE):
1837         (MAKE_CHAR):
1838         * file-coding.h (CODING_STATE_COMPOSITE):
1839         (CODING_STATE_ISO2022_LOCK):
1840         (iso_esc_flag):
1841         (LEADING_BYTE_COMPOSITE):
1842         * file-coding.c (struct iso2022_decoder):
1843         (decoding_closer):
1844         (reset_iso2022):
1845         (parse_iso2022_esc):
1846         (encode_coding_iso2022):
1847         #ifdef out all composite character support using
1848         #ifdef ENABLE_COMPOSITE_CHARS
1849
1850         * alloc.c: Define lrecord_coding_system only if ! FILE_CODING
1851
1852 1999-03-04  Takeshi YAMADA <yamada@cslab.kecl.ntt.co.jp>
1853
1854         * fns.c (Fbase64_encode_string): Calculate `allength' in the same
1855         way of `Fbase64_encode_region'.
1856
1857 1999-02-18  Katsumi Yamaoka   <yamaoka@jpl.org>
1858
1859         * fns.c (base64_encode_1): Don't add a newline at the tail.
1860
1861 1999-03-08  Andy Piper  <andy@xemacs.org>
1862
1863         * menubar-msw.c (displayable_menu_item): correct off-by-one &
1864         handling.
1865
1866 1999-03-07  Martin Buchholz  <martin@xemacs.org>
1867
1868         * console-stream.h (struct stream_console):
1869         * event-unixoid.c (event_stream_unixoid_select_console):
1870         (event_stream_unixoid_unselect_console):
1871         * print.c (Fexternal_debugging_output):
1872         * sysdep.c (reset_one_device):
1873         * console-stream.c (stream_init_console):
1874         (stream_delete_console):
1875         (allocate_stream_console_struct): move into stream_init_console.
1876         (free_stream_console_struct): move into stream_delete_console.
1877         Use `fd' only for file descriptors.
1878         Therefore, rename members of struct stream_console.
1879
1880         * systime.h: Unix98 says sys/time.h should define select(), but
1881         some systems define that in unistd.h.  So include that file always.
1882
1883         * glyphs.h (MAYBE_IIFORMAT_METH): Don't use leading `_'.  Avoid
1884         multiple evaluation of first arg.  Do proper do {} while (0) wrapping.
1885         (HAS_IIFORMAT_METH_P): Prevent macro from being used in
1886         non-boolean context
1887         (MAYBE_IIFORMAT_DEVMETH): Use standard internal macro naming convention.
1888
1889         * EmacsShell.c:
1890         * balloon_help.c:
1891         Add #include <stdio.h>.
1892         Some versions of assert.h use printf() without #include'ing stdio.h
1893
1894         * free-hook.c (blocktype): Add gcpro5_type to blocktype.
1895         (log_gcpro): Remove unused variable FRAME.
1896         (show_gcprohist): Ansify.
1897         Comment the #endif's
1898
1899         * frame-x.c (x_delete_frame): Don't use FRAME_X_SHELL_WIDGET(f)
1900         after it's just been XtDestroy'ed!
1901
1902 1999-02-18  Martin Buchholz  <martin@xemacs.org>
1903
1904         * opaque.c (print_opaque):
1905         (sizeof_opaque):
1906         (equal_opaque):
1907         (hash_opaque):
1908         Egcs 1.1.1 seems to have a bug where
1909         INTP (p->size_or_chain)
1910         will crash XEmacs.  Fix by introducing intermediate variable.
1911
1912         * sound.c (Fdevice_sound_enabled_p): Fix compiler warning.
1913
1914         * dired.c (Fdirectory_files):
1915         (Ffile_name_completion):
1916         (Ffile_name_all_completions):
1917         (file_name_completion):
1918         - Use `directory' instead of `dirname' to sync with FSF Emacs and
1919         avoid compiler warnings.
1920         - Fix up docstrings so that C variables match documentation.
1921
1922 1999-03-05  Martin Buchholz  <martin@xemacs.org>
1923
1924         * alloc.c: (garbage_collect_1): Reorg code to make scope of local
1925         variables as small as possible to help out the compiler and the maintainer.
1926
1927         * alloc.c: (disksave_object_finalization):
1928         Set all the *-load-path variables to
1929         nil, not just load-path itself.  This gets the locate-file hash
1930         tables garbage collected BEFORE dump, and has the side effect of
1931         preventing crashes on OSF4.0+egcs.
1932
1933         * alloc.c:
1934         * gdbinit:
1935         * dbxrc:
1936         - Clean up gdb/dbx debugging support.
1937         - Storing an EMACS_INT in an enum is not 64-bit clean!
1938         - So change the enum to a set of separate variables.
1939         - Add test cases to help debug the debugging support!
1940         - Add `lisp-shadows' and `run-temacs' targets for dbx.
1941         - Both dbx and gdb have been tested now.
1942
1943 1999-03-05  XEmacs Build Bot <builds@cvs.xemacs.org>
1944
1945         * XEmacs 21.2.12 is released
1946
1947 1999-02-16  Kazuyuki IENAGA  <ienaga@jsys.co.jp>
1948
1949         * device-x.c: Support to find best visual without flashing.
1950
1951 1999-03-02  Paul Keusemann  <pkeusem@visi.com>
1952
1953         * database.c (berkdb_map): Add flags argument to cursor call (must
1954           be 0 according to docs) required for Berkeley DB 2.6.4 and later.
1955
1956 1999-03-03  Martin Buchholz  <martin@xemacs.org>
1957
1958         * hash.c:
1959         * hash.h:
1960         General cleanup.  Get free-hook.c working again.
1961         Remove unused functions:
1962         make_strings_hash_table, copy_hash, expand_hash_table.
1963
1964         * malloc.c:
1965         * mem-limits.h:
1966         Always use new ANSI-style function prototypes.
1967
1968         * unexalpha.c (unexec): Never use implicit int.
1969
1970         * sgiplay.c (close_sound_file):
1971         (play_sound_file):
1972         (restore_audio_port):
1973         (play_sound_data):
1974         (audio_initialize):
1975         (play_internal):
1976         (drain_audio_port):
1977         (write_mulaw_8_chunk):
1978         (write_linear_chunk):
1979         (write_linear_32_chunk):
1980         (initialize_audio_port):
1981         (open_audio_port):
1982         (set_channels):
1983         (set_output_format):
1984         (adjust_audio_volume):
1985         (get_current_volumes):
1986         (parse_snd_header):
1987         Always use new ANSI-style function prototypes.
1988         Use unistd.h for missing prototypes.
1989
1990         * unexelfsgi.c (round_up):
1991         (find_section):
1992         (unexec): Always use new ANSI-style function prototypes
1993
1994         * elhash.c (struct Lisp_Hash_Table): rename golden to golden_ratio
1995
1996         * console.h (struct console_methods): Always use full ANSI prototypes
1997
1998         * emacs.c (__sti__iflPNGFile_c___): Always use full ANSI prototypes
1999
2000 1999-03-02  Andy Piper  <andy@xemacs.org>
2001
2002         * event-stream.c (init_event_stream): make sure native mswindows
2003         gets an appropriate event loop.
2004
2005 1999-02-22  Andy Piper  <andy@xemacs.org>
2006
2007         * frame-msw.c (mswindows_make_frame_visible): use SW_SHOW rather
2008         than SW_SHOWNORMAL to prevent resizing of maximised frames.
2009         (mswindows_raise_frame): remove comment.
2010
2011 1999-03-01  XEmacs Build Bot <builds@cvs.xemacs.org>
2012
2013         * XEmacs 21.2.11 is released
2014
2015 1999-02-25  SL Baur  <steve@xemacs.org>
2016
2017         * mule-charset.c (Qleading_byte): New variable to implement
2018         charset-leading-byte function.
2019         (Fcharset_property): Use it.
2020         (syms_of_mule_charset): Initialize it.
2021         From Kazuyuki IENAGA <ienaga@jsys.co.jp>
2022
2023 1999-02-17  Kazuo Oishi <oishi@ae.agr.yamaguchi-u.ac.jp>
2024
2025         * glyphs-x.c (cononvert_EImage_to_XImage): correct
2026         bytes per pixel counting.
2027
2028 1999-02-15  Andy Piper  <andy@xemacs.org>
2029
2030         * s/cygwin32.h (BROKEN_SIGIO): don't define this as it causes
2031         major lockups.
2032
2033 1999-02-16  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
2034
2035         * fns.c (Fbase64_encode_string): New optional argument
2036         `NO_LINE_BREAK'.
2037
2038 1999-02-16  Martin Buchholz  <martin@xemacs.org>
2039
2040         * gdbinit:  Fix up commands to run temacs.  Add lisp-shadows command.
2041         * alloc.c (xcalloc):  undef xcalloc, just like xmalloc
2042
2043 1999-02-10  Martin Buchholz  <martin@xemacs.org>
2044
2045         * s/bsdos4.h: New file.  Port to BSDI BSD/OS 4.0.
2046         * xintrinsic.h:  Redo CONST support for X11 R4 compatibility.
2047
2048 1999-02-05  XEmacs Build Bot <builds@cvs.xemacs.org>
2049
2050         * XEmacs 21.2.10 is released
2051
2052 1999-02-02  Gleb Arshinov  <gleb@cs.stanford.edu>
2053
2054         * process-nt.c (nt_send_process):
2055         Fix for process-send-region/process-send-string breaking when size
2056         of the input > 128 chars: change maximum chunk size for process
2057         stream from 512 to 128, thus guaranteeing that ntpipe_shove_writer
2058         succeeds.
2059
2060 1999-02-02  XEmacs Build Bot <builds@cvs.xemacs.org>
2061
2062         * XEmacs 21.2.9 is released
2063
2064 1999-01-30  Martin Buchholz  <martin@xemacs.org>
2065
2066         * bytecode.c (funcall_compiled_function): Call
2067         UNBIND_TO_GCPRO instead of UNBIND_TO_GCPRO_VARIABLES_ONLY.
2068
2069         * backtrace.h (UNBIND_TO_GCPRO_VARIABLES_ONLY):
2070         #ifdef 0 out unused macro.
2071
2072 1999-01-27  Martin Buchholz  <martin@xemacs.org>
2073
2074         * gui.c (gui_parse_item_keywords_internal): Make static.
2075
2076 1999-01-21  Andy Piper  <andy@xemacs.org>
2077
2078         * glyphs-msw.c: add xface support.
2079         (mswindows_xface_instantiate): new function copied from glyphs-x.c
2080         (image_instantiator_format_create_glyphs_mswindows): do device
2081         specific initialisation for xfaces.
2082         (xbm_create_bitmap_from_data): line data must be padded to a word
2083         boundary.
2084
2085         * glyphs-x.c (xface_validate): moved to glyphs.c
2086         (xface_normalize): ditto.
2087         (xface_possible_dest_types): ditto.
2088         (image_instantiator_format_create_glyphs_x): do device specific
2089         initialisation for xfaces.
2090
2091         * glyphs.h: declare xface symbol.
2092
2093         * glyphs.c: move generic xface support here.
2094         (xface_validate): moved from glyphs-x.c
2095         (xface_normalize): ditto.
2096         (xface_possible_dest_types): ditto.
2097         (image_instantiator_format_create): xface declarations moved from
2098         glyphs-x.c.
2099
2100 1999-01-14  Adrian Aichner  <aichner@ecf.teradyne.com>
2101
2102         * event-stream.c (vars_of_event_stream): Fixing documentation.
2103
2104 1999-01-17  Gunnar Evermann  <ge204@eng.cam.ac.uk>
2105
2106         * glyphs-eimage.c (gif_instantiate): Correct handling of
2107         interlaced gifs to avoid writing past the end of the eimage
2108         buffer.
2109
2110 1999-01-13  Hrvoje Niksic  <hniksic@srce.hr>
2111
2112         * search.c (Freplace_match): Handle single backslash at end of
2113         NEWTEXT correctly.
2114
2115 1999-01-12  William M. Perry  <wmperry@aventail.com>
2116
2117         * eldap.c (Fldap_open): slow down interrupts around ldap_open to
2118           avoid connection errors.
2119
2120 1999-01-12  Andy Piper  <andy@xemacs.org>
2121
2122         * redisplay-output.c (redisplay_update_line): backout change that
2123         shouldn't have gone ine.
2124
2125 1999-01-09  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
2126
2127         * eldap.c (vars_of_ldap): Do no provide `ldap' here since it may
2128         collide with ldap.el
2129
2130 1999-01-11  Andy Piper  <andy@xemacs.org>
2131
2132         * redisplay.h (DISPLAY_LINE_HEIGHT): new macro.
2133         (DISPLAY_LINE_YPOS): new macro.
2134
2135         * redisplay-msw.c (mswindows_output_string): use it.
2136         (mswindows_output_pixmap): ditto.
2137         (mswindows_output_display_block): ditto.
2138
2139         * redisplay-output.c (redisplay_output_display_block): new
2140         function. just call the devmeth, maybe insert some generic code
2141         here later.
2142         (compare_display_blocks): use it.
2143         (output_display_line): ditto.
2144         (redisplay_unmap_subwindows_maybe): new function. potentially
2145         unmap subwindows in the given area.
2146
2147         * glyphs.c (reset_subwindow_cachels): unmap subwindows that we are
2148         resetting.
2149
2150 1999-01-10  J. Kean Johnston  <jkj@sco.com>
2151
2152         * Makefile.in.in: Set value of moduledir
2153         - Changed DUMPENV to include $(MODULEPATH)
2154         - Added install rule to install header files for use by ellcc.
2155
2156         * config.h.in: Added INHIBIT_SITE_MODULES
2157         - Added HAVE__DLERROR
2158         - Added HAVE_DLFCN_H
2159         - Added DLSYM_NEEDS_UNDERSCORE
2160
2161         * dll.c: Removed.
2162
2163         * emodules.c: New file containing dynamic loading code.
2164
2165         * emodules.h: New file.
2166
2167         * emacs.c: Added variables Vmodule_directory,
2168         Vsite_module_directory, Vconfigure_module_directory and
2169         Vconfigure_site_module_directory.
2170         - (main_1): Added new variable inhibit_site_modules and command
2171         line options `-no-site-modules' and `--no-site-modules'.
2172         - (main_1): Call syms_of_module() instead of syms_of_dll().
2173         - (main_1): Call vars_of_module().
2174         - (vars_of_emacs): Introduce inhibit-site-modules,
2175         module-directory, configure-module-directory,
2176         site-module-directory, and configure-site-module-directory to the
2177         Lisp reader.
2178
2179         * lisp.h: Declare load_module and list_modules, as well as
2180         Vmodule_directory, Vsite_module_directory,
2181         Vconfigure_module_directory and Vconfigure_site_module_directory.
2182
2183         * paths.h.in: Added PATH_MODULESEARCH and PATH_SITE_MODULES.
2184         - Added correct support for site-lisp directory.
2185
2186         * symbols.c (defsubr): Modified to allow modules to add new subrs
2187         after dump time.
2188         - (defsubr_macro): Same.
2189         - (defvar_magick): Only use purespace when not initialized, so
2190         that loaded modules can still add symbols.
2191
2192         * symsinit.h: Add definitions for syms_of_module(),
2193         vars_of_module().  Removed syms_of_dll().
2194
2195         * sysdll.c: Include dlfcn.h if HAVE_DLFCN_H is defined.
2196         - (dll_variable): Take DLSYM_NEEDS_UNDERSCORE into account.
2197         - (dll_error): use _dlerror() if HAVE__DLERROR is defined.
2198
2199         * s/sco5-shr.h (C_SWITCH_SYSTEM): Correct for modern gcc and
2200         explicitly pass -belf for native cc.
2201
2202         * s/sco5.h (LIB_GCC): Use -print-libgcc-file-name instead of
2203         hard-coding the library name.
2204
2205 1999-01-01    <martin@xemacs.org>
2206
2207         * device-x.c (Fx_set_font_path):
2208         Add proper cast to permit compilation under C++.
2209
2210         * buffer.c (directory_is_current_directory):
2211         Add proper casts to permit compilation under C++.
2212
2213 1998-12-30  Damon Lipparelli  <lipp@primus.com>
2214
2215         * event-msw.c (mswindows_wnd_proc):
2216           Fixed failure when building with MSVC 5.
2217
2218 1998-12-29  Martin Buchholz  <martin@xemacs.org>
2219
2220         * file-coding.c (decode_coding_iso2022):
2221         - Prevent crash when decoding ISO7/Lock detected files
2222         - the usual martin fiddling
2223
2224 1998-12-29  Jonathan Harris  <jhar@tardis.ed.ac.uk>
2225
2226         * event-msw.c:
2227           glyphs-msw.c:
2228           Fixed failures when building with MSVC.
2229         * unexnt.c (dump_bss_and_heap):
2230           Removed compiler warning by removing bss_data variable.
2231
2232 1998-12-18  Jim Radford  <radford@robby.caltech.edu>
2233
2234         * device-x.c (Fx_set_font_path, Fx_get_font_path): New functions
2235         so that packages that distribute their own fonts can access them.
2236
2237 1998-12-28  Andy Piper  <andy@xemacs.org>
2238
2239         * glyphs-msw.c (mswindows_button_instantiate): cope with buttons
2240         that have an image provided.
2241
2242         * glyphs.h: add Q_image decl.
2243
2244         * glyphs-widget.c new functionality allowing images in
2245         widgets.
2246         (check_valid_glyph_or_image): new function to validate
2247         glyphs passed in through :image.
2248         (widget_normalize): new function. convert :image parameters into
2249         real glyphs if not already so.
2250         (widget_instantiate_1): mess with size parameters to be similar to
2251         :image if provided.
2252         (syms_of_glyphs_widget): new keyword :image.
2253         (image_instantiator_format_create_glyphs_widget): normalize
2254         buttons and allow :image.
2255
2256 1998-12-27  Andy Piper  <andy@xemacs.org>
2257
2258         * frame-msw.c (mswindows_init_frame_1): warning elimination.
2259
2260         * glyphs-widget.c (check_valid_anything): no-op function.
2261         (check_valid_callback): check callbacks in gui_items.
2262         (check_valid_symbol): as it sounds.
2263         (check_valid_string_or_vector): ditto.
2264         (widget_validate): modified for descriptors that are vectors or
2265         sequences of keyword/val pairs.
2266         (widget_instantiate_1): ditto.
2267         (image_instantiator_format_create_glyphs_widget): allow gui_item
2268         keywords in the instantiator.
2269
2270         * gui.c (gui_parse_item_keywords_internal): renamed from
2271         gui_parse_item_keywords but taking error behaviour.
2272         (gui_parse_item_keywords): use it.
2273         (gui_parse_item_keywords_no_errors): ditto.
2274         (gui_item_add_keyval_pair): add Error_behavior flag and only
2275         signal invalid keywords if required.
2276
2277         * gui.h: new gui signatures.
2278
2279         * menubar.c (menu_parse_submenu_keywords): use new
2280         gui_item_add_keyval_pair signature.
2281
2282         * s/cygwin32.h: modify PTY_ITERATION to eliminate warnings.
2283
2284 1998-12-28  Martin Buchholz <martin@xemacs.org>
2285
2286         * XEmacs 21.2.8 is released.
2287
2288 1998-12-28  Martin Buchholz  <martin@xemacs.org>
2289
2290         * editfns.c (get_home_directory):
2291         (user-home-directory): Simplify.
2292
2293
2294         * callproc.c (child_setup):
2295         - Environment variables were being passed to inferior processes
2296           using internal encoding.
2297         - Convert to external encoding.
2298         - Rename local var `tem' to better name `tail'.
2299         - Use Flength instead of `manual' calculation.
2300
2301         * buffer.c (kill-buffer):
2302         (record-buffer):
2303         (set-buffer-major-mode):
2304         (current-buffer):
2305         - Fix up parameter names to correspond to docstrings.
2306         - Don't use `bufname' when a buffer will do as well.
2307         - Remove one unneeded GCPRO.
2308
2309         * buffer.h (initial_directory):
2310         * buffer.c (init_initial_directory):
2311         - use correct conversions between internal and external format.
2312         (directory_is_current_directory): new function
2313         (init_buffer): convert initial_directory to internal format.
2314         - solve crashes when current working directory is non-ASCII.
2315
2316         * alloc.c (xmalloc):
2317         (xcalloc):
2318         (xrealloc):
2319         - remove stupid casts, since XEmacs requires an ANSI C system.
2320         (lrecord_type_index): replace abort() with more readable assert().
2321
2322         (reset_lcrecord_stats): remove.
2323         (sweep_lcrecords_1):
2324         - replace call to reset_lcrecord_stats() with call to xzero().
2325
2326 1998-12-27  Martin Buchholz  <martin@xemacs.org>
2327
2328         * process-unix.c (unix_create_process):
2329         - Fix crash invoking program with non-ASCII name.
2330           Try invoking xemacs with SHELL=/bin/sh, then M-x shell.
2331         - Remove unused variable `env'.
2332         - Rename `temp' to better name `save_errno'.
2333         - Reorganize code for clarity.  But still too chicken to nuke the
2334           BSD 4.2 support.
2335
2336 1998-12-24  Martin Buchholz <martin@xemacs.org>
2337
2338         * XEmacs 21.2.7 is released.
2339
2340 1998-12-23  Martin Buchholz  <martin@xemacs.org>
2341
2342         * glyphs.c (decode_device_ii_format):
2343         - Fix indentation.
2344         - Use GET_C_STRING_FILENAME_DATA_ALLOCA with char *, not Extbyte *.
2345
2346         * glyphs-x.c (x_subwindow_instantiate):
2347         - A image instance mask was being assigned to a image instance type!
2348         - X_SUBWINDOW_INSTANCE_DATA (ii) is not an lvalue in C++.
2349
2350         * glyphs-msw.c (mswindows_initialize_dibitmap_image_instance):
2351         Fix indentation.
2352         * glyphs-x.h: Make indentation consistent.
2353
2354         * emacs.c (Fdump_emacs): Remove Steve Martin merge artifacts.
2355
2356         * glyphs-widget.c (check_valid_glyph): Warning suppression.
2357         - Make it static
2358         - #ifdef it out, since it's not actually used yet (FIX THIS!)
2359
2360         * glyphs-widget.c:
2361         * glyphs.h:
2362         Move declarations of decode_device_ii_format and
2363         decode_image_instantiator_format into glyphs.h where they belong.
2364
2365 1998-12-22  Martin Buchholz  <martin@xemacs.org>
2366
2367         * frame-x.c (x_delete_frame): Revert part of my changes at the
2368         suggestion of Gunnar Evermann - unfortunately no one really
2369         understands this code.
2370
2371         * callproc.c (init_callproc): code cleanup.
2372
2373         * free-hook.c (malloc):
2374         (check_malloc):
2375         (__free_hook):
2376         (__malloc_hook):
2377         (__realloc_hook):
2378         (block_input_malloc):
2379         (block_input_realloc):
2380         * device-x.c (x_delete_device):
2381         * emacs.c (voodoo_free_hook):
2382         * events.c (print_event):
2383         (CHECK_EVENT_TYPE):
2384         (CHECK_EVENT_TYPE2):
2385         (CHECK_EVENT_TYPE3):
2386         Use proper prototypes.
2387         Make C_E_T macros a little faster.
2388         Pedantic fiddly little changes.  You really don't care.
2389
2390 1998-12-22  Andy Piper  <andy@xemacs.org>
2391
2392         * redisplay-output.c (redisplay_clear_region): make sure that
2393         fg/bg colors get set even when we are in the border area.
2394
2395 1998-12-13  Martin Buchholz  <martin@xemacs.org>
2396
2397         * console-msw.c: Function definitions follow coding standards
2398         - This prevents e.g. find-tag on Lisp_Event finding DEVENT
2399
2400 1998-12-11  Martin Buchholz  <martin@xemacs.org>
2401
2402         * events.h (struct timeout_data):
2403         * event-tty.c (tty_timeout_to_emacs_event):
2404         * event-msw.c (mswindows_wm_timer_callback):
2405         * event-Xt.c (Xt_timeout_to_emacs_event):
2406         * event-msw.c (mswindows_cancel_dispatch_event):
2407         Make sure Lisp_Objects inside events are initialized to Qnil, not
2408         Qnull_pointer, which is now illegal.
2409
2410 1998-12-10  Martin Buchholz  <martin@xemacs.org>
2411
2412         * lisp.h: Fix up prototypes to match alloc.c
2413
2414 1998-12-08  Martin Buchholz  <martin@xemacs.org>
2415
2416         * windowsnt.h: Remove `support' for using index and rindex
2417
2418         * filelock.c (current_lock_owner):
2419         - Change uses of index -> strchr, rindex -> strrchr
2420
2421 1998-12-07  Martin Buchholz  <martin@xemacs.org>
2422
2423         * sysdep.c (set_descriptor_non_blocking):
2424         Since O_NONBLOCK is now always #defined, make use of fcntl
2425         conditional on F_SETFL being defined.
2426
2427         * console-msw.c (DHEADgER):
2428         (DOPAQUE_DATA):
2429         (DEVENT):
2430         (DCONS):
2431         (DCONSCDR):
2432         (DSTRING):
2433         (DVECTOR):
2434         (DSYMBOL):
2435         (DSYMNAME):
2436         - max_align_t should not be visible to the user of the
2437           XOPAQUE_DATA macro.
2438         - use Bufbyte instead of char
2439         - parens around (FOOP (obj)) are always redundant.
2440           If they were necessary, we should fix the macro instead.
2441         - Always use string_data(foo) instead of foo->data.
2442
2443
2444 1998-12-06  Martin Buchholz  <martin@xemacs.org>
2445
2446         * frame-msw.c (mswindows_init_frame_1):
2447         - use make_lisp_hash_table, not Fmake_hash_table
2448         - include elhash.h
2449
2450         * lisp.h:
2451         * alloc.c (make_vector): remove travesty
2452         (Fmake_vector):
2453         (make_pure_vector):
2454         (pure_cons):
2455         (make_bit_vector_internal):
2456         (make_bit_vector):
2457         (make_bit_vector_from_byte_vector):
2458         (Fmake_bit_vector):
2459         - make vector_equal a little faster.
2460         - Don't use variable name `new'.
2461         - Use size_t instead of EMACS_INT.
2462         - usual Martin-style pointless bit-twiddling.
2463
2464         * fns.c (mapcar1):
2465         (Fmapconcat):
2466         (Fmapcar):
2467         (Fmapvector):
2468         Make mapcar faster.  In particular, make
2469           (mapc #'identity long-string)
2470         MUCH faster under Mule.
2471         * tests/automated/lisp-tests.el: Test 'em!
2472
2473         * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
2474         bytecode.
2475
2476 1998-12-01  Martin Buchholz  <martin@xemacs.org>
2477
2478         * menubar-x.c (menu_item_descriptor_to_widget_value_1): Always use
2479         Qnil, not NULL, to initialize `null' Lisp_Objects.
2480
2481 1998-11-29  Hrvoje Niksic  <hniksic@srce.hr>
2482
2483         * specifier.c (display_table_validate): Update.
2484
2485         * redisplay.c (create_text_block): Use them.
2486
2487         * glyphs.c (display_table_entry): New function.
2488         (get_display_tables): Ditto.
2489
2490 1998-12-15  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
2491
2492         * eldap.c (toplevel): Mention that eldap.c compiles with
2493         OpenLDAP libs
2494         (Fldap_open): Use `GET_C_STRING_OS_DATA_ALLOCA'
2495         (Fldap_search_internal): Ditto
2496
2497 1998-12-11  Martin Buchholz  <martin@xemacs.org>
2498
2499         * event-msw.c (mswindows_cancel_dispatch_event):
2500         Gratuitous code prettification
2501
2502
2503 1998-12-07  Hrvoje Niksic  <hniksic@srce.hr>
2504
2505         * fns.c (Fnconc): Fix use of wrong_type_argument().
2506
2507         * floatfns.c (Ffloat): Fix docstring.
2508         (Ffloat): Fix use of wrong_type_argument().
2509         (Fabs): Ditto.
2510         (extract_float): Ditto.
2511         (Fceiling): Ditto.
2512         (Fround): Ditto.
2513         (Ftruncate): Ditto.
2514
2515 1998-12-06  Martin Buchholz  <martin@xemacs.org>
2516
2517         * frame-msw.c (mswindows_init_frame_1):
2518         - use make_lisp_hash_table, not Fmake_hash_table
2519         - include elhash.h
2520
2521         * lisp.h:
2522         * alloc.c (make_vector): remove travesty
2523         (Fmake_vector):
2524         (make_pure_vector):
2525         (pure_cons):
2526         (make_bit_vector_internal):
2527         (make_bit_vector):
2528         (make_bit_vector_from_byte_vector):
2529         (Fmake_bit_vector):
2530         - make vector_equal a little faster.
2531         - Don't use variable name `new'.
2532         - Use size_t instead of EMACS_INT.
2533         - usual Martin-style pointless bit-twiddling.
2534
2535         * fns.c (mapcar1):
2536         (Fmapconcat):
2537         (Fmapcar):
2538         (Fmapvector):
2539         Make mapcar faster.  In particular, make
2540           (mapc #'identity long-string)
2541         MUCH faster under Mule.
2542         * tests/automated/lisp-tests.el: Test 'em!
2543
2544         * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
2545         bytecode.
2546
2547 1998-12-02  Didier Verna  <verna@inf.enst.fr>
2548
2549         * menubar-x.c (menu_item_descriptor_to_widget_value_1): set the
2550         accelerator field to nil for labels.
2551
2552 1998-12-16  Jonathan Harris  <jhar@tardis.ed.ac.uk>
2553
2554         * menubar-msw.c (displayable_menu_item):
2555           Escape occurrences of '&' and support occurrences of the
2556          '%_' accelerator indicator in menus.
2557
2558 1998-11-26  Didier Verna  <verna@inf.enst.fr>
2559
2560         * dired.c (Fdirectory_files): use make_string instead of
2561         make_ext_string on the filename. The conversion external->internal
2562         format is already done in sys_readdir.
2563
2564 1998-12-15  Gunnar Evermann  <ge204@eng.cam.ac.uk>
2565
2566         * glyphs.c (normalize_image_instantiator): GCPRO instantiator
2567
2568 1998-12-16  Jonathan Harris  <jhar@tardis.ed.ac.uk>
2569
2570         * event-msw.c
2571           (Belatedly) added Kirill to list of file's authors.
2572           emacs_mswindows_quit_p: Don't process WM_PAINT messages in
2573           quit checking. WM_PAINT messages cause redisplay, but
2574           windows' states are not necessarily stable when this function
2575           gets called.
2576
2577 1998-12-17  Andy Piper  <andy@xemacs.org>
2578
2579         * strftime.c (zone_name): CONSTify.
2580
2581 1998-12-15  Andy Piper  <andy@xemacs.org>
2582
2583         * glyphs-msw.c (mswindows_combo_instantiate): ditto.
2584         (mswindows_widget_property): return Qunbound when no property available.
2585         (mswindows_button_property): ditto.
2586         (mswindows_combo_property): ditto.
2587         (mswindows_widget_set_property): ditto.
2588
2589         * glyphs-widget.c (check_valid_item_list): use properties.
2590
2591         * glyphs.h (struct Lisp_Image_Instance): we have properties now.
2592
2593         * glyphs.c (Fset_image_instance_property): allow setting of arbitrary properties.
2594         (Fimage_instance_property): ditto.
2595         * glyphs-widget.c (widget_property): ditto.
2596         (widget_set_property): ditto.
2597
2598         * frame-msw.c (mswindows_set_frame_pointer): SetCursor() as well
2599         as setting the class cursor so that GC actually changes the
2600         cursor.
2601
2602         * config.h: don't undef MAIL_USE_POP.
2603
2604 1998-12-13  Andy Piper  <andy@xemacs.org>
2605
2606         * glyphs-msw.c
2607         (image_instantiator_format_create_glyphs_mswindows): line ->
2608         label.
2609         (mswindows_label_instantiate): ditto. Play with window flags.
2610         (image_instantiator_format_create_glyphs_mswindows): ditto.
2611         (vars_of_glyphs_mswindows): provide Qlabel as we support it now.
2612
2613         * glyphs-widget.c (widget_instantiate_1): re-jig autosizing to
2614         cope with lines and labels.
2615         (static_instantiate): use widget_instantiate_1.
2616         line -> label.
2617         (image_instantiator_format_create_glyphs_widget): ditto.
2618
2619 1998-12-10  Andy Piper  <andy@xemacs.org>
2620
2621         * Makefile.in.in (objs): add gui.o
2622
2623 1998-12-10  Andy Piper  <andy@xemacs.org>
2624
2625         * gui.c: adjust defines of HAVE_POPUPS so that we can build with
2626         no window system.
2627
2628 1998-12-09  Andy Piper  <andy@xemacs.org>
2629
2630         * glyphs.c (finalize_image_instance): mark glyphs changed when an
2631         image instance is removed so that the subwindow cache gets reset
2632         and thus destroyed images get GC'd.
2633
2634 1998-12-08  Andy Piper  <andy@xemacs.org>
2635
2636         * gui-msw.c (mswindows_handle_gui_wm_command): call
2637         MARK_SUBWINDOWS_CHANGED.
2638
2639         * glyphs-msw.c (mswindows_finalize_image_instance): make sure
2640         subwindows really get deleted.
2641
2642         * redisplay.c: new variable subwindows_changed[_set].
2643         (redisplay_window): use it.
2644         (redisplay_frame): ditto.
2645         (redisplay_device): ditto.
2646         (redisplay_without_hooks): ditto.
2647
2648         * device.h (MARK_DEVICE_SUBWINDOWS_CHANGED): new macro for
2649         subwindows redisplay as per glyphs equivalent.
2650         * redisplay.h: ditto.
2651         (MARK_SUBWINDOWS_CHANGED): ditto.
2652         (RESET_CHANGED_SET_FLAGS): ditto.
2653         * frame.h (MARK_FRAME_SUBWINDOWS_CHANGED): ditto.
2654
2655 1998-12-07  Andy Piper  <andy@xemacs.org>
2656
2657         * frame.c (Fmake_frame): reset subwindow cachels on non-stream
2658         frames.
2659
2660         * redisplay.c (redisplay_frame): invalidate subwindow cachels.
2661
2662         * event-msw.c (mswindows_wnd_proc): catch the various WM_CTLCOLOR*
2663         messages and paint widget glyphs as appropriate with their face fg
2664         & bg.
2665
2666 1998-12-06  Andy Piper  <andy@xemacs.org>
2667
2668         * glyphs-msw.c (vars_of_glyphs_mswindows): provide widget types
2669         here rather than in glyphs-widget - do this because we only want
2670         to provide what is really available.
2671
2672         * glyphs.c (Fimage_instance_property): new function to get the
2673         properties of image instances. wires through to console specific
2674         methods and then to widget specific methods.
2675         (Fset_image_instance_property): ditto but for setting widget properties.
2676         (check_valid_face): make extern so that it can be used elsewhere.
2677
2678         * glyphs-widget.c (widget_property): new function. gets the
2679         properties of widgets in general and wires the function through to
2680         widget specific ones.
2681         (widget_set_property): ditto but for setting widget properties.
2682
2683         * glyphs-msw.c (mswindows_combo_instantiate): Add functionality to
2684         add items to the list. Play with window styles a bit to get the
2685         desired effect.
2686         (mswindows_widget_property): break out specific widget properties.
2687         (mswindows_button_property): new function. gets the checked state
2688         of a button.
2689         (mswindows_combo_property): new function. gets the current
2690         selection in the combo box.
2691         (mswindows_widget_set_property): new function. sets specific
2692         properties of specific widgets.
2693
2694         * glyphs-widget.c (check_valid_item_list): new function. check
2695         that items for a combo-box are just a list of strings.
2696         (combo_validate): new function. check there is an item list.
2697         (widget_instantiate_1): new function. renamed from
2698         widget_instantiate so that we can do slightly different things for
2699         other widgets.
2700         (widget_instantiate): call widget_instantiate_1.
2701         (combo_instantiate): new function to instantiate combo boxes,
2702         defaults height to the pixel height of the number of items in the
2703         box.
2704         (syms_of_glyphs_widget): move widget keywords here.
2705         (image_instantiator_format_create_glyphs_widget): use new combo
2706         functions.
2707
2708 1998-12-04  Andy Piper  <andy@xemacs.org>
2709
2710         * event-msw.c (mswindows_wnd_proc): mule-ize.
2711
2712         * glyphs.c (pixmap_to_lisp_data): mule-ize.
2713
2714         * glyphs-msw.c (extract_xpm_color_names): mule-ize.
2715         (resource_name_to_resource): ditto.
2716         (mswindows_resource_instantiate): ditto.
2717         (mswindows_widget_instantiate): ditto.
2718         (mswindows_widget_set_property): ditto.
2719
2720         * redisplay-output.c (redisplay_output_subwindow): don't show
2721         subwindows if they are obscured at the edge of the frame, emacs
2722         gets into some sort of redisplay loop otherwise.
2723
2724         * gui.h: prototype gui_item_selected_p.
2725
2726         * gui.c (gui_item_selected_p): new function to determine the
2727         selected state of a gui_item.
2728
2729         * frame.h (struct frame): add subwindows_changed flag.
2730
2731         * redisplay.c (redisplay_frame): call update_frame_subwindows ().
2732
2733         * glyphs.c (update_subwindow): new function to update a
2734         subwindow's state.
2735         (update_frame_subwindows): new function to update all the
2736         subwindows on a frame.
2737
2738         * console.h (struct console_methods): add update_subwindow.
2739
2740         * glyphs-msw.c (mswindows_widget_property): return selected state
2741         for selected property.
2742         (mswindows_update_subwindow): new function. updates widget glyphs
2743         in redisplay as per menubars or toolbars e.g. selected state.
2744         (console_type_create_glyphs_mswindows): add update_subwindow.
2745
2746 1998-12-03  Andy Piper  <andy@xemacs.org>
2747
2748         * console-tty.c (syms_of_console_tty): MULE -> FILE_CODING since
2749         tty coding system things are such.
2750
2751         * glyphs-widget.c (widget_face_font_info): new function for
2752         pulling out height and width metrics for a widget's face.
2753         (widget_text_to_pixel_conversion): calculate pixel sizes of text
2754         for widgets.
2755
2756         * event-msw.c (mswindows_drain_windows_queue): translate messages
2757         that are destined for subwindows. This makes edit fields interact
2758         with the keyboard correctly.
2759         nuke warnings by #ifndef'ing out stuff not required by msg select().
2760
2761         * glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM): new
2762         macro defining the iiforma without the symbol required by widget.
2763         (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT): use it.
2764
2765         * general.c (syms_of_general): add Qwidget, Qselected.
2766
2767         * faces.c (complex_vars_of_faces): add widget face inheriting from
2768         gui-element face.
2769
2770 1998-11-09  Andy Piper  <andy@xemacs.org>
2771
2772         * window.h (struct window): add a cache of subwindows on a
2773         per-window basis.
2774
2775         * window.c (mark_window): mark the subwindow_instance_cache.
2776         (allocate_window): initialise the subwindow instance_cache.
2777
2778         * toolbar-x.c (x_output_toolbar): call redisplay_clear_region
2779         instead of the devmeth.
2780         (x_clear_toolbar): ditto.
2781
2782         * redisplay-x.c (x_output_display_block): call
2783         redisplay_output_subwindow for subwindows and widgets.
2784
2785         * redisplay-tty.c (tty_output_display_block): add IMAGE_WIDGET to
2786         types to do nothing for.
2787
2788         * lisp.h: declare new widget/subwindow symbols.
2789
2790         * glyphs.c (image_instantiate): cache subwindows on a per-window
2791         basis.
2792         (subwindow_possible_dest_types): new function for subwindow dest
2793         types.
2794         (subwindow_instantiate): generic instantiation of a
2795         subwindow. specialised by device multi-methods.
2796         (Fsubwindowp): moved from glyphs-x.c. adapted for glyph-based
2797         subwindows.
2798         (Fimage_instance_subwindow_id): ditto.
2799         (Fresize_subwindow): ditto.
2800         (Fforce_subwindow_map): ditto.
2801
2802         * glyphs-x.c (x_print_image_instance): remove subwindow
2803         stuff. Handled genrically in glyphs.c.
2804         (x_image_instance_equal): ditto.
2805         (x_image_instance_hash): ditto.
2806         (x_finalize_image_instance): delete subwindows when required.
2807         (mark_subwindow) (print_subwindow) (finalize_subwindow)
2808         (subwindow_hash) (Fmake_subwindow): deleted because of new,
2809         glyph-based, subwindow implementation.
2810         (Fsubwindow_height) (Fsubwindow_width) (Fsubwindow_xid): aliased
2811         in glyphs.el
2812         (Fsubwindowp) (Fresize_subwindow) (Fforce_subwindow_map): moved to
2813         glyphs.c.
2814         (x_unmap_subwindow): new function to unmap X subwindows.
2815         (x_map_subwindow): new function to map X subwindows.
2816         (x_subwindow_instantiate): new function to instantiate X
2817         subwindows.
2818         (x_resize_subwindow): new function to resize X subwindows.
2819         (console_type_create_glyphs_x): add subwindow functions.
2820         (image_instantiator_format_create_glyphs_x): add device
2821         multi-methods for xpm, xbm and subwindow.
2822
2823         * glyphs.el (subwindow-xid): old alias for new subwindow functions.
2824         (subwindow-width): ditto.
2825         (subwindow-height): ditto.
2826
2827         * glyphs-msw.c (mswindows_widget_instantiate): new function for
2828         generally instantiating ms subwindows. Used by
2829         mswindows_*_instantiate.
2830         (mswindows_edit_instantiate): instantiate an edit field on a
2831         mswindows frame.
2832
2833 1998-11-04  Andy Piper  <andy@xemacs.org>
2834
2835         * symsinit.h: declare new functions.
2836
2837         * redisplay.h: declare new functions.
2838
2839         * redisplay-x.c (x_output_display_block): call
2840         redisplay_clear_region rather than x_clear_region.
2841         (x_output_string): ditto.
2842         (x_output_pixmap): ditto.
2843         (x_clear_to_window_end): ditto.
2844         (x_output_eol_cursor): ditto.
2845         (x_clear_region): only do X specific things. other duties handled
2846         in redisplay_clear_region.
2847
2848         * redisplay-tty.c (tty_clear_region): do tty specific things - some
2849         duties moved to redisplay_clear_region.
2850
2851         * redisplay-output.c (clear_left_border): use
2852         redisplay_clear_region instead of device method.
2853         (clear_right_border): ditto.
2854         (output_display_line): ditto.
2855         (redisplay_output_subwindow): ditto.
2856         (redisplay_clear_top_of_window): ditto.
2857         (redisplay_clear_region): perform duties previously handled by
2858         device methods. call the appropriate device method at the
2859         end. unmap subwindows if necessary.
2860
2861         * redisplay-msw.c (mswindows_output_string): use
2862         redisplay_clear_region instead of mswindows_clear_region.
2863         (mswindows_clear_to_window_end): ditto.
2864         (mswindows_output_display_block): output subwindows when required.
2865         (mswindows_clear_region): only do mswindows specific things,
2866         everything else is now handled in redisplay_clear_region.
2867
2868         * gui.h: add item id hash defines and declare function prototypes.
2869
2870         * gui.c (mark_gui_item): new function for marking gui_items.
2871         (gui_item_hash): generic hash function for generating command ids
2872         for gui_items.
2873
2874         * gui-msw.c: new file.
2875         (mswindows_handle_gui_wm_command): new function to handle widget
2876         callbacks.
2877
2878         * glyphs.h (MAYBE_IIFORMAT_DEVMETH): new function for device
2879         multi-methods.
2880         (IIFORMAT_HAS_SHARED_METHOD): ditto.
2881         (DEFINE_DEVICE_IIFORMAT): ditto.
2882         (INITIALIZE_DEVICE_IIFORMAT): ditto.
2883         (struct Lisp_Image_Instance): add widget and subwindow data plus
2884         appropriate access functions.
2885
2886         * glyphs.c (decode_device_ii_format): new function for decoding
2887         image instantiator functions based on a device type as well as an
2888         image format.
2889         (decode_image_instantiator_format): just call
2890         decode_device_ii_format with nil device.
2891         (add_entry_to_device_ii_format_list): new function for per device
2892         method instances.
2893         (add_entry_to_image_instantiator_format_list): just call
2894         add_entry_to_device_ii_format_list with nil device.
2895         (check_valid_vector): new function.
2896         (instantiate_image_instantiator): instantiate using per-format
2897         method and then per-format-per-device method (device
2898         multi-methods). signal an error if neither is possible.
2899         (mark_image_instance): cope with subwindows and widgets.
2900         (print_image_instance): ditto.
2901         (image_instance_equal): ditto.
2902         (image_instance_hash): ditto.
2903         (allocate_glyph): ditto.
2904         (glyph_width): ditto.
2905         (glyph_height_internal): ditto.
2906         (xpm_instantiate): removed because of device multi-methods.
2907         (mark_subwindow_cachels): new cachel functions for caching
2908         instantiated subwindows on a per-frame basis. mostly copied from
2909         glyph cachel functions.
2910         (update_subwindow_cachel_data): ditto.
2911         (add_subwindow_cachel): ditto.
2912         (get_subwindow_cachel_index): ditto.
2913         (reset_subwindow_cachels): ditto.
2914         (mark_subwindow_cachels_as_not_updated): ditto.
2915         (unmap_subwindow): generic unmapping of subwindows based on cachel
2916         data.
2917         (map_subwindow): ditto.
2918         (initialize_subwindow_image_instance): generic initialisation of
2919         subwindow data.
2920         (syms_of_glyphs): add widget keywords.
2921
2922         * glyphs-x.h (struct x_subwindow_data): convert Lisp_Subwindow to
2923         x_subwindow_data.
2924
2925 1998-11-04  Andy Piper  <andy@xemacs.org>
2926
2927         * glyphs-widget.c: new file for instantiating widget type glyphs.
2928         (widget_possible_dest_types): new general dest type function for
2929         widgets.
2930         (widget_validate): ditto.
2931         (initialize_widget_image_instance): ditto
2932         (widget_instantiate): ditto. Sets up fg/bg, gui_item parsing
2933         before handing on control to device multi-methods.
2934         (syms_of_glyphs_widget): new function.
2935         (image_instantiator_format_create_glyphs_widget): new function,
2936         added placeholders for button, edit, combo, scrollbar
2937         (vars_of_glyphs_widget): new function.
2938
2939         * glyphs-msw.h (WIDGET_INSTANCE_MSWINDOWS_HANDLE): new define for
2940         storing window ids of widgets.
2941
2942         * glyphs-msw.c (mswindows_finalize_image_instance): cope with
2943         deletion of widget and subwindow glyphs.
2944         (mswindows_unmap_subwindow): new device function for unmapping
2945         subwindows on a msw frame.
2946         (mswindows_map_subwindow): ditto.
2947         (mswindows_register_image_instance): register instantiated widgets
2948         with the widget hastable.
2949         (mswindows_button_instantiate): instantiate a button type widget
2950         on an msw frame.
2951         (mswindows_subwindow_instantiate): instanttiate a subwindow on a
2952         mswindows frame.
2953         (image_instantiator_format_create_glyphs_mswindows): add device
2954         multi-methods for xbm, xpm, subwindow, edit and button.
2955
2956         * frame.h (struct frame): add subwindow_cachels dynarr for caching
2957         information about subwindows visible on the current frame. used by
2958         redisplay_clear_region to unmap subwindows as required.
2959
2960         * frame.c (mark_frame): mark subwindow_cachels.
2961         (allocate_frame_core): instantiate subwindow_cachels.
2962
2963         * frame-msw.c (mswindows_init_frame_1): instntiate and mark the
2964         widget hashtable.
2965
2966         * event-msw.c (mswindows_wnd_proc): add call to
2967         mswindows_handle_gui_wm_command to handle widget callbacks.
2968
2969         * emacs.c (main_1): add calls to glyphs-widget initialisation
2970         routines.
2971
2972         * console.h (struct console_methods): add
2973         unmap/map_subwindow_method for use be redisplay_clear_region to
2974         map and unmap subwindows. Remove xpm and xbm stuff - now dealt
2975         with by image instantiator multi-methods. Add
2976         resize_subwindow_method.
2977
2978         * console-stream.c (stream_clear_region): change signature to
2979         match new generic clear region function.
2980
2981         * Makefile.in.in: add glyphs-widget.o to list of objects.
2982
2983         * console-msw.h (struct mswindows_frame): add widget hashtable for
2984         wiring command ids to callbacks.
2985
2986 1998-12-16  Andy Piper  <andy@xemacs.org>
2987
2988         * XEmacs 21.2.6 is released
2989
2990 1998-12-08  Hrvoje Niksic  <hniksic@srce.hr>
2991
2992         * md5.c (Fmd5): Correctly initiate string input stream.
2993
2994         * Makefile.in.in (tests): Add md5-tests.el.
2995
2996 1998-12-06  Martin Buchholz  <martin@xemacs.org>
2997
2998         * lisp.h:
2999         * alloc.c (make_vector): remove travesty
3000         (Fmake_vector):
3001         (make_pure_vector):
3002         (pure_cons):
3003         (make_bit_vector_internal):
3004         (make_bit_vector):
3005         (make_bit_vector_from_byte_vector):
3006         (Fmake_bit_vector):
3007         - make vector_equal a little faster.
3008         - Don't use variable name `new'.
3009         - Use size_t instead of EMACS_INT.
3010         - usual Martin-style pointless bit-twiddling.
3011
3012         * fns.c (mapcar1):
3013         (Fmapconcat):
3014         (Fmapcar):
3015         (Fmapvector):
3016         Make mapcar faster.  In particular, make
3017           (mapc #'identity long-string)
3018         MUCH faster under Mule.
3019         * tests/automated/lisp-tests.el: Test 'em!
3020
3021 1998-12-06  Martin Buchholz  <martin@xemacs.org>
3022
3023         * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
3024         bytecode.
3025
3026 1998-12-13  Martin Buchholz  <martin@xemacs.org>
3027
3028         * console-msw.c: Function definitions follow coding standards
3029         - This prevents e.g. find-tag on Lisp_Event finding DEVENT
3030
3031 1998-12-11  Martin Buchholz  <martin@xemacs.org>
3032
3033         * events.h (struct timeout_data):
3034         * event-tty.c (tty_timeout_to_emacs_event):
3035         * event-msw.c (mswindows_wm_timer_callback):
3036         * event-Xt.c (Xt_timeout_to_emacs_event):
3037         * event-msw.c (mswindows_cancel_dispatch_event):
3038         Make sure Lisp_Objects inside events are initialized to Qnil, not
3039         Qnull_pointer, which is now illegal.
3040
3041 1998-12-10  Martin Buchholz  <martin@xemacs.org>
3042
3043         * lisp.h: Fix up prototypes to match alloc.c
3044
3045 1998-12-09  Andy Piper  <andy@xemacs.org>
3046
3047         * glyphs-msw.c (init_image_instance_from_xbm_inline): don't use
3048         XSETINT for assigning lisp objects.
3049
3050 1998-12-07  Martin Buchholz  <martin@xemacs.org>
3051
3052         * opaque.h:
3053         * console-msw.c (DHEADER):
3054         (DOPAQUE_DATA):
3055         (DEVENT):
3056         (DCONS):
3057         (DCONSCDR):
3058         (DSTRING):
3059         (DVECTOR):
3060         (DSYMBOL):
3061         (DSYMNAME):
3062         - max_align_t should not be visible to the user of the
3063           XOPAQUE_DATA macro.
3064         - use Bufbyte instead of char
3065         - parens around (FOOP (obj)) are always redundant.
3066           If they were necessary, we should fix the macro instead.
3067         - Always use string_data(foo) instead of foo->data.
3068
3069 1998-12-07  Martin Buchholz  <martin@xemacs.org>
3070
3071         * sysdep.c (set_descriptor_non_blocking):
3072         Since O_NONBLOCK is now always #defined, make use of fcntl
3073         conditional on F_SETFL being defined.
3074
3075 1998-12-09  Andy Piper  <andy@xemacs.org>
3076
3077         * menubar-msw.c (mswindows_handle_wm_command): add back in checks
3078         that got removed in the merge
3079
3080 1998-11-30  Greg Klanderman  <greg@alphatech.com>
3081
3082         * dired.c (vars_of_dired): bugfix for previous conditionalization
3083         of user-name-completion on non- Windows NT.
3084
3085 1998-12-08  Martin Buchholz  <martin@xemacs.org>
3086
3087         * windowsnt.h: Remove `support' for using index and rindex
3088
3089         * filelock.c (current_lock_owner):
3090         - Change uses of index -> strchr, rindex -> strrchr
3091
3092 1998-12-06  Martin Buchholz  <martin@xemacs.org>
3093
3094         * frame-msw.c (mswindows_init_frame_1):
3095         - use make_lisp_hash_table, not Fmake_hash_table
3096         - include elhash.h
3097
3098 1998-12-05  XEmacs Build Bot <builds@cvs.xemacs.org>
3099
3100         * XEmacs 21.2.5 is released
3101
3102 1998-11-30  Martin Buchholz  <martin@xemacs.org>
3103
3104         * xselect.c (receive_incremental_selection):
3105         * xselect.c (x_get_window_property):
3106         * xmu.c (XmuReadBitmapDataFromFile):
3107         * xmu.c (XmuCursorNameToIndex):
3108         * xgccache.c (describe_gc_cache):
3109         * xgccache.c (gc_cache_lookup):
3110         * xgccache.c (free_gc_cache):
3111         * xgccache.c (make_gc_cache):
3112         * window.h:
3113         * window.c (map_windows_1):
3114         * window.c (Fother_window_for_scrolling):
3115         * window.c (window_scroll):
3116         * window.c (change_window_height):
3117         * window.c (Fsplit_window):
3118         * window.c (window_left_gutter_width):
3119         * window.c (window_modeline_height):
3120         * window.c (invalidate_vertical_divider_cache_in_window):
3121         * window.c (window_needs_vertical_divider_1):
3122         * window.c (update_mirror_internal):
3123         * window.c (SET_LAST_FACECHANGE):
3124         * widget.c (Fwidget_plist_member):
3125         * unexec.c (copy_text_and_data):
3126         * unexcw.c (copy_executable_and_dump_data_section):
3127         * tooltalk.doc:
3128         * tooltalk.c (struct Lisp_Tooltalk_Pattern):
3129         * tooltalk.c (struct Lisp_Tooltalk_Message):
3130         * toolbar.h (struct toolbar_button):
3131         * toolbar.c (default_toolbar_visible_p_changed_in_window):
3132         * toolbar.c (recompute_overlaying_specifier):
3133         * toolbar.c (toolbar_validate):
3134         * toolbar.c (toolbar_button_at_pixpos):
3135         * toolbar.c (get_toolbar_coords):
3136         * toolbar.c (update_frame_toolbars):
3137         * toolbar-x.c:
3138         * toolbar-msw.c (mswindows_handle_toolbar_wm_command):
3139         * toolbar-msw.c (mswindows_find_toolbar_pos):
3140         * toolbar-msw.c (mswindows_output_toolbar):
3141         * toolbar-msw.c (mswindows_clear_toolbar):
3142         * toolbar-msw.c:
3143         * systty.h:
3144         * syssignal.h:
3145         * sysproc.h:
3146         * sysfile.h:
3147         * sysdll.c:
3148         * sysdep.h:
3149         * sysdep.c (rmdir):
3150         * sysdep.c (sys_fopen):
3151         * sysdep.c (sys_open):
3152         * sysdep.c (tty_init_sys_modes_on_device):
3153         * sysdep.c (get_eof_char):
3154         * sysdep.c (child_setup_tty):
3155         * sysdep.c (set_descriptor_non_blocking):
3156         * syntax.h:
3157         * syntax.c (scan_words):
3158         * syntax.c:
3159         * symsinit.h:
3160         * symeval.h (struct symbol_value_varalias):
3161         * symeval.h (struct symbol_value_forward):
3162         * symbols.c (syms_of_symbols):
3163         * symbols.c (init_symbols_once_early):
3164         * symbols.c (Fbuilt_in_variable_type):
3165         * symbols.c (Fsymbol_value_in_buffer):
3166         * symbols.c (default_value):
3167         * symbols.c (Fset):
3168         * symbols.c (find_symbol_value_quickly):
3169         * symbols.c (store_symval_forwarding):
3170         * symbols.c (set_default_console_slot_variable):
3171         * symbols.c (set_default_buffer_slot_variable):
3172         * symbols.c (verify_ok_for_buffer_local):
3173         * symbols.c (symbol_is_constant):
3174         * symbols.c (oblookup):
3175         * symbols.c (Funintern):
3176         * symbols.c (Fintern):
3177         * symbols.c (check_obarray):
3178         * sunplay.c:
3179         * specifier.h (struct specifier_methods):
3180         * specifier.h:
3181         * specifier.c (specifier_instance):
3182         * specifier.c (specifier_instance_from_inst_list):
3183         * specifier.c (decode_locale_type):
3184         * specifier.c (specifier_equal):
3185         * specifier.c (finalize_specifier):
3186         * specifier.c (prune_specifiers):
3187         * specifier.c (kill_specifier_buffer_locals):
3188         * sound.c (init_native_sound):
3189         * sound.c:
3190         * signal.c (alarm):
3191         * search.c (Fmatch_data):
3192         * search.c (match_limit):
3193         * search.c (Freplace_match):
3194         * search.c (skip_chars):
3195         * search.c (scan_buffer):
3196         * search.c:
3197         * scrollbar.c (specifier_vars_of_scrollbar):
3198         * scrollbar.c (Fscrollbar_set_hscroll):
3199         * scrollbar.c (vertical_scrollbar_changed_in_window):
3200         * scrollbar.c (release_window_mirror_scrollbars):
3201         * scrollbar.c (free_scrollbar_instance):
3202         * scrollbar-x.c:
3203         * scrollbar-msw.c:
3204         * s/msdos.h (O_BINARY):
3205         * s/linux.h:
3206         * s/freebsd.h (LIBS_TERMCAP):
3207         * regex.c (re_match_2_internal):
3208         * regex.c (compile_extended_range):
3209         * regex.c (POP_FAILURE_POINT):
3210         * regex.c (PUSH_FAILURE_POINT):
3211         * redisplay.h (RESET_CHANGED_SET_FLAGS):
3212         * redisplay.h:
3213         * redisplay.h (struct display_line):
3214         * redisplay.h (struct rune):
3215         * redisplay.c (vars_of_redisplay):
3216         * redisplay.c (redisplay_variable_changed):
3217         * redisplay.c (UPDATE_CACHE_RETURN):
3218         * redisplay.c (validate_line_start_cache):
3219         * redisplay.c (mark_redisplay_structs):
3220         * redisplay.c (mark_glyph_block_dynarr):
3221         * redisplay.c (window_line_number):
3222         * redisplay.c (redisplay_frame):
3223         * redisplay.c (redisplay_window):
3224         * redisplay.c (generate_modeline):
3225         * redisplay.c (create_right_glyph_block):
3226         * redisplay.c (create_left_glyph_block):
3227         * redisplay.c (create_text_block):
3228         * redisplay.c:
3229         * redisplay-x.c (x_output_hline):
3230         * redisplay-x.c (x_output_vertical_divider):
3231         * redisplay-tty.c (tty_output_display_block):
3232         * redisplay-output.c (output_display_line):
3233         * redisplay-output.c:
3234         * redisplay-msw.c (mswindows_output_vertical_divider):
3235         * redisplay-msw.c (mswindows_ring_bell):
3236         * redisplay-msw.c (mswindows_output_cursor):
3237         * redisplay-msw.c:
3238         * rangetab.c:
3239         * ralloc.c:
3240         * puresize.h (RAW_PURESIZE):
3241         * profile.c (syms_of_profile):
3242         * profile.c (Fstart_profiling):
3243         * profile.c (sigprof_handler):
3244         * profile.c:
3245         * procimpl.h:
3246         * process.c (vars_of_process):
3247         * process.c (read_process_output):
3248         * process.c (get_process):
3249         * process.c:
3250         * process-unix.c (unix_open_multicast_group):
3251         * process-unix.c (unix_get_tty_name):
3252         * process-unix.c (unix_send_process):
3253         * process-unix.c (unix_reap_exited_processes):
3254         * process-unix.c (unix_create_process):
3255         * process-unix.c (unix_init_process_io_handles):
3256         * process-unix.c (allocate_pty):
3257         * process-unix.c:
3258         * process-nt.c (nt_open_network_stream):
3259         * process-nt.c (nt_update_status_if_terminated):
3260         * process-nt.c (nt_finalize_process_data):
3261         * process-nt.c:
3262         * print.c (debug_short_backtrace):
3263         * print.c (debug_backtrace):
3264         * print.c (print_symbol):
3265         * print.c (print_internal):
3266         * print.c (print_cons):
3267         * print.c (Fwrite_char):
3268         * print.c (print_prepare):
3269         * print.c (canonicalize_printcharfun):
3270         * print.c (output_string):
3271         * print.c:
3272         * opaque.h:
3273         * opaque.c (allocate_managed_opaque):
3274         * opaque.c:
3275         * offix.c (DndSetData):
3276         * objects.c (face_boolean_create):
3277         * objects.c (font_instantiate):
3278         * objects.c (font_create):
3279         * objects.c (color_create):
3280         * objects.c (finalize_font_instance):
3281         * objects.c (finalize_color_instance):
3282         * objects.c:
3283         * objects-x.c (x_font_instance_truename):
3284         * objects-x.c:
3285         * objects-x.c (x_initialize_font_instance):
3286         * objects-x.c (allocate_nearest_color):
3287         * objects-tty.c (tty_initialize_font_instance):
3288         * objects-tty.c (tty_initialize_color_instance):
3289         * objects-msw.c (mswindows_initialize_color_instance):
3290         * ntproc.c (syms_of_ntproc):
3291         * ntproc.c (Fwin32_set_process_priority):
3292         * ntproc.c (sys_spawnve):
3293         * ntproc.c:
3294         * ntheap.c (get_data_end):
3295         * nt.c (period):
3296         * nt.c:
3297         * nt.c (stat):
3298         * nt.c (generate_inode_val):
3299         * nt.c (sys_rename):
3300         * nas.c:
3301         * mule-wnnfns.c (Fwnn_hinsi_number):
3302         * mule-wnnfns.c (Fwnn_yuragi):
3303         * mule-wnnfns.c (Fwnn_common_learn):
3304         * mule-wnnfns.c (Fwnn_suffix_learn):
3305         * mule-wnnfns.c (Fwnn_prefix_learn):
3306         * mule-wnnfns.c (Fwnn_okuri_learn):
3307         * mule-wnnfns.c (Fwnn_complex_conv):
3308         * mule-wnnfns.c (Fwnn_last_is_first):
3309         * mule-wnnfns.c (Fwnn_bmodify_dict_add):
3310         * mule-wnnfns.c (Fwnn_notrans_dict_add):
3311         * mule-wnnfns.c (Fwnn_fiusr_dict_add):
3312         * mule-wnnfns.c (Fwnn_fisys_dict_add):
3313         * mule-wnnfns.c (Fwnn_hinsi_list):
3314         * mule-wnnfns.c (Fwnn_fuzokugo_set):
3315         * mule-wnnfns.c (Fwnn_dict_search):
3316         * mule-wnnfns.c (Fwnn_word_toroku):
3317         * mule-wnnfns.c (Fwnn_hindo_update):
3318         * mule-wnnfns.c (Fwnn_bunsetu_henkou):
3319         * mule-wnnfns.c (Fwnn_kakutei):
3320         * mule-wnnfns.c (Fwnn_begin_henkan):
3321         * mule-wnnfns.c (Fwnn_dict_comment):
3322         * mule-wnnfns.c (Fwnn_dict_add):
3323         * mule-wnnfns.c (Fwnn_open):
3324         * mule-mcpath.c (mc_getcwd):
3325         * mule-coding.c (vars_of_mule_coding):
3326         * mule-coding.c (convert_to_external_format):
3327         * mule-coding.c (encoding_marker):
3328         * mule-coding.c (decoding_marker):
3329         * mule-coding.c (Fcopy_coding_system):
3330         * mule-coding.c (Fmake_coding_system):
3331         * mule-coding.c (Fcoding_system_list):
3332         * mule-coding.c (Ffind_coding_system):
3333         * mule-coding.c (symbol_to_eol_type):
3334         * mule-coding.c:
3335         * mule-charset.c (complex_vars_of_mule_charset):
3336         * mule-charset.c (vars_of_mule_charset):
3337         * mule-charset.c (Fset_charset_ccl_program):
3338         * mule-charset.c (struct charset_list_closure):
3339         * mule-charset.c (Ffind_charset):
3340         * mule-charset.c (make_charset):
3341         * mule-charset.c (non_ascii_valid_char_p):
3342         * mule-charset.c:
3343         * mule-ccl.c (ccl_driver):
3344         * mule-canna.c (c2mu):
3345         * mule-canna.c (Fcanna_henkan_begin):
3346         * mule-canna.c (Fcanna_parse):
3347         * mule-canna.c (Fcanna_store_yomi):
3348         * mule-canna.c (Fcanna_touroku_string):
3349         * mule-canna.c (Fcanna_initialize):
3350         * minibuf.c:
3351         * menubar.c (menu_parse_submenu_keywords):
3352         * menubar-x.c (make_dummy_xbutton_event):
3353         * menubar-x.c (set_frame_menubar):
3354         * menubar-x.c (menu_item_descriptor_to_widget_value_1):
3355         * menubar-x.c:
3356         * menubar-msw.h:
3357         * menubar-msw.c (mswindows_popup_menu):
3358         * menubar-msw.c (mswindows_update_frame_menubars):
3359         * menubar-msw.c (mswindows_handle_wm_command):
3360         * menubar-msw.c (unsafe_handle_wm_initmenu_1):
3361         * menubar-msw.c (unsafe_handle_wm_initmenupopup_1):
3362         * menubar-msw.c (update_frame_menubar_maybe):
3363         * menubar-msw.c (populate_or_checksum_helper):
3364         * menubar-msw.c (empty_menu):
3365         * menubar-msw.c:
3366         * md5.c:
3367         * marker.c (set_marker_internal):
3368         * marker.c (print_marker):
3369         * malloc.c:
3370         * make-src-depend:
3371         * lstream.c (lisp_buffer_rewinder):
3372         * lstream.c (mark_lstream):
3373         * lrecord.h:
3374         * lrecord.h (struct lrecord_header):
3375         * lread.c (readevalloop):
3376         * lread.c (locate_file):
3377         * lread.c (locate_file_in_directory):
3378         * lread.c (Flocate_file):
3379         * lread.c (load_force_doc_string_unwind):
3380         * lread.c (ebolify_bytecode_constants):
3381         * lread.c:
3382         * lisp.h:
3383         * lisp-union.h:
3384         * lisp-disunion.h:
3385         * linuxplay.c (linux_play_data_or_file):
3386         * linuxplay.c (audio_init):
3387         * line-number.c:
3388         * keymap.h:
3389         * keymap.c (describe_map):
3390         * keymap.c (describe_map_mapper):
3391         * keymap.c (Fdescribe_bindings_internal):
3392         * keymap.c (Fsingle_key_description):
3393         * keymap.c (map_keymap_sorted):
3394         * keymap.c (get_relevant_keymaps):
3395         * keymap.c (Flookup_key):
3396         * keymap.c (raw_lookup_key_mapper):
3397         * keymap.c (Fdefine_key):
3398         * keymap.c (Fevent_matches_key_specifier_p):
3399         * keymap.c (key_desc_list_to_event):
3400         * keymap.c (define_key_parser):
3401         * keymap.c (define_key_check_and_coerce_keysym):
3402         * keymap.c (keymap_submaps):
3403         * keymap.c (keymap_store_internal):
3404         * keymap.c (keymap_delete_inverse_internal):
3405         * keymap.c (keymap_store_inverse_internal):
3406         * keymap.c (print_keymap):
3407         * keymap.c (Lisp_Keymap):
3408         * keymap.c:
3409         * intl.c:
3410         * insdel.c (convert_bufbyte_string_into_emchar_dynarr):
3411         * insdel.c (make_gap):
3412         * input-method-xlib.c (get_XIM_input):
3413         * input-method-xlib.c (XIM_init_frame):
3414         * imgproc.c:
3415         * hash.h:
3416         * hash.c:
3417         * gui.c:
3418         * gui-x.c (button_item_to_widget_value):
3419         * gui-x.c (popup_selection_callback):
3420         * glyphs.h (struct image_instantiator_methods):
3421         * glyphs.c (mark_glyph_cachels):
3422         * glyphs.c (Fglyph_type):
3423         * glyphs.c (image_instantiate):
3424         * glyphs.c (image_create):
3425         * glyphs.c (make_image_instance_1):
3426         * glyphs.c (finalize_image_instance):
3427         * glyphs.c:
3428         * glyphs-x.c (finalize_subwindow):
3429         * glyphs-x.c (xface_validate):
3430         * glyphs-x.c (x_locate_pixmap_file):
3431         * glyphs-x.c (convert_EImage_to_XImage):
3432         * glyphs-msw.c:
3433         * glyphs-msw.c (mswindows_resource_instantiate):
3434         * glyphs-msw.c (xpm_to_eimage):
3435         * glyphs-msw.c (convert_EImage_to_DIBitmap):
3436         * glyphs-eimage.c (tiff_instantiate):
3437         * glyphs-eimage.c (png_instantiate):
3438         * glyphs-eimage.c (struct png_error_struct):
3439         * glyphs-eimage.c (gif_memory_storage):
3440         * glyphs-eimage.c:
3441         * gifrlib.h:
3442         * getloadavg.c (getloadavg):
3443         * getloadavg.c:
3444         * gdbinit:
3445         * free-hook.c (log_gcpro):
3446         * free-hook.c (check_malloc):
3447         * free-hook.c (check_free):
3448         * free-hook.c (ROUND_UP_TO_PAGE):
3449         * free-hook.c:
3450         * frame.h (struct frame):
3451         * frame.h:
3452         * frame.c (change_frame_size_1):
3453         * frame.c (allocate_frame_core):
3454         * frame.c:
3455         * frame-x.c (x_focus_on_frame):
3456         * frame-x.c (x_init_frame_2):
3457         * frame-x.c (x_popup_frame):
3458         * frame-x.c (xemacs_XtPopup):
3459         * frame-x.c:
3460         * frame-x.c (Foffix_start_drag_internal):
3461         * frame-x.c (x_cde_destroy_callback):
3462         * frame-x.c (x_wm_hack_wm_protocols):
3463         * frame-tty.c (tty_frame_visible_p):
3464         * frame-msw.c (mswindows_make_frame_invisible):
3465         * frame-msw.c (mswindows_after_init_frame):
3466         * frame-msw.c (mswindows_init_frame_1):
3467         * fns.c (syms_of_fns):
3468         * fns.c (Fbase64_decode_string):
3469         * fns.c (Fnconc):
3470         * fns.c (Ffillarray):
3471         * fns.c (Fobject_plist):
3472         * fns.c (Fget):
3473         * fns.c (Fcanonicalize_lax_plist):
3474         * fns.c (Fcanonicalize_plist):
3475         * fns.c (Fplist_remprop):
3476         * fns.c (Fplist_get):
3477         * fns.c (advance_plist_pointers):
3478         * fns.c (internal_plist_put):
3479         * fns.c (Fnreverse):
3480         * fns.c (Fremassq):
3481         * fns.c (Felt):
3482         * fns.c (Fsubstring):
3483         * fns.c (Fbvconcat):
3484         * fns.c (Flength):
3485         * fns.c (length_with_bytecode_hack):
3486         * fns.c (print_bit_vector):
3487         * fns.c:
3488         * floatfns.c (Ffloor):
3489         * floatfns.c:
3490         * floatfns.c (in_float_error):
3491         * fileio.c (Ffile_modes):
3492         * fileio.c (Fexpand_file_name):
3493         * fileio.c (Fmake_temp_name):
3494         * fileio.c (Ffile_name_nondirectory):
3495         * fileio.c (Ffile_name_directory):
3496         * file-coding.h:
3497         * file-coding.c (vars_of_mule_coding):
3498         * file-coding.c (convert_to_external_format):
3499         * file-coding.c (encoding_marker):
3500         * file-coding.c (decoding_marker):
3501         * file-coding.c (Fcopy_coding_system):
3502         * file-coding.c (Fmake_coding_system):
3503         * file-coding.c (struct coding_system_list_closure):
3504         * file-coding.c (Ffind_coding_system):
3505         * file-coding.c (symbol_to_eol_type):
3506         * file-coding.c:
3507         * faces.h (struct face_cachel):
3508         * faces.c (vars_of_faces):
3509         * faces.c (face_property_was_changed):
3510         * faces.c (mark_face_cachels):
3511         * faces.c (temporary_faces_list):
3512         * faces.c (struct face_list_closure):
3513         * faces.c:
3514         * extents.h (struct extent):
3515         * extents.c (vars_of_extents):
3516         * extents.c (struct copy_string_extents_1_arg):
3517         * extents.c (add_string_extents_mapper):
3518         * extents.c (Fextent_property):
3519         * extents.c (Fset_extent_property):
3520         * extents.c (symbol_to_glyph_layout):
3521         * extents.c (properties_equal):
3522         * extents.c (print_extent):
3523         * extents.c (print_extent_1):
3524         * extents.c (extent_in_region_p):
3525         * extents.c (gap_array_make_gap):
3526         * extents.c:
3527         * events.h (struct Lisp_Event):
3528         * events.h:
3529         * events.c (Fevent_properties):
3530         * events.c (format_event_object):
3531         * events.c (Fmake_event):
3532         * events.c (event_equal):
3533         * events.c (print_event):
3534         * events.c (mark_event):
3535         * event-stream.c ((read-char)
3536         * event-stream.c (vars_of_event_stream):
3537         * event-stream.c (syms_of_event_stream):
3538         * event-stream.c (Fset_recent_keys_ring_size):
3539         * event-stream.c (Fsit_for):
3540         * event-stream.c (Fnext_event):
3541         * event-stream.c (execute_help_form):
3542         * event-stream.c (maybe_kbd_translate):
3543         * event-stream.c:
3544         * event-msw.c (vars_of_event_mswindows):
3545         * event-msw.c (mswindows_wnd_proc):
3546         * event-msw.c (mswindows_need_event):
3547         * event-msw.c (mswindows_drain_windows_queue):
3548         * event-msw.c (mswindows_pump_outstanding_events):
3549         * event-msw.c:
3550         * event-msw.c (slurp_thread):
3551         * event-msw.c (struct ntpipe_slurp_stream):
3552         * event-msw.c (HANDLE_TO_USID):
3553         * event-Xt.c (emacs_Xt_handle_magic_event):
3554         * event-Xt.c (x_event_to_emacs_event):
3555         * event-Xt.c (x_reset_modifier_mapping):
3556         * event-Xt.c (x_reset_key_mapping):
3557         * event-Xt.c:
3558         * eval.c (syms_of_eval):
3559         * eval.c (warn_when_safe):
3560         * eval.c (warn_when_safe_lispobj):
3561         * eval.c (Fbacktrace_frame):
3562         * eval.c (Fbacktrace):
3563         * eval.c (top_level_set):
3564         * eval.c (unbind_to_hairy):
3565         * eval.c (specbind_magic):
3566         * eval.c (specbind_unwind_wasnt_local):
3567         * eval.c (call2_trapping_errors):
3568         * eval.c (call1_trapping_errors):
3569         * eval.c (catch_them_squirmers_call2):
3570         * eval.c (call0_trapping_errors):
3571         * eval.c (run_hook_trapping_errors):
3572         * eval.c (catch_them_squirmers_eval_in_buffer):
3573         * eval.c (call4_in_buffer):
3574         * eval.c (call3_in_buffer):
3575         * eval.c (call2_in_buffer):
3576         * eval.c (call1_in_buffer):
3577         * eval.c (call0_in_buffer):
3578         * eval.c (run_hook):
3579         * eval.c (run_hook_with_args_in_buffer):
3580         * eval.c (Fapply):
3581         * eval.c (Feval):
3582         * eval.c (do_autoload):
3583         * eval.c (un_autoload):
3584         * eval.c (Fautoload):
3585         * eval.c (Finteractive_p):
3586         * eval.c (Fcommand_execute):
3587         * eval.c (signal_quit):
3588         * eval.c (call_with_suspended_errors):
3589         * eval.c (signal_error):
3590         * eval.c (return_from_signal):
3591         * eval.c (Fcall_with_condition_handler):
3592         * eval.c (run_condition_case_handlers):
3593         * eval.c (condition_case_1):
3594         * eval.c (Funwind_protect):
3595         * eval.c (unwind_to_catch):
3596         * eval.c (internal_catch):
3597         * eval.c (Fmacroexpand_internal):
3598         * eval.c (Fuser_variable_p):
3599         * eval.c (Fdefconst):
3600         * eval.c (Fdefvar):
3601         * eval.c (Ffunction):
3602         * eval.c (signal_call_debugger):
3603         * eval.c (call_debugger):
3604         * eval.c:
3605         * emacs.c (main):
3606         * emacs.c (sort_args):
3607         * emacs.c (main_1):
3608         * elhash.h:
3609         * elhash.c:
3610         * editfns.c (Fencode_time):
3611         * editfns.c (Fdecode_time):
3612         * editfns.c (Fuser_full_name):
3613         * editfns.c:
3614         * editfns.c (save_excursion_restore):
3615         * ecrt0.c:
3616         * dynarr.c:
3617         * doprnt.c (emacs_doprnt_1):
3618         * doc.c (verify_doc_mapper):
3619         * doc.c (Fsnarf_documentation):
3620         * doc.c (Fdocumentation):
3621         * dll.c:
3622         * dired.c (user_name_completion):
3623         * dired.c (Fdirectory_files):
3624         * dialog-x.c:
3625         * dialog-msw.c:
3626         * dgif_lib.c (FreeSavedImages):
3627         * dgif_lib.c (DGifGetImageDesc):
3628         * device.h:
3629         * device.h (struct device):
3630         * device.c (Fselect_device):
3631         * device.c (allocate_device):
3632         * device.c:
3633         * device-x.c (Fx_keysym_on_keyboard_p):
3634         * device-x.c (Fx_valid_keysym_name_p):
3635         * device-x.c (x_IO_error_handler):
3636         * device-x.c (x_delete_device):
3637         * device-x.c (x_finish_init_device):
3638         * device-x.c (x_init_device):
3639         * device-x.c:
3640         * device-msw.c (mswindows_init_device):
3641         * dbxrc:
3642         * database.c (vars_of_database):
3643         * database.c (Fput_database):
3644         * database.c (Fopen_database):
3645         * database.c (berkdb_remove):
3646         * database.c (berkdb_put):
3647         * database.c (Fdatabasep):
3648         * database.c (print_database):
3649         * database.c:
3650         * data.c (vars_of_data):
3651         * data.c (syms_of_data):
3652         * data.c (init_errors_once_early):
3653         * data.c (prune_weak_lists):
3654         * data.c (finish_marking_weak_lists):
3655         * data.c (print_weak_list):
3656         * data.c (Fmod):
3657         * data.c (Fstring_to_number):
3658         * data.c (Fnumber_to_string):
3659         * data.c (Findirect_function):
3660         * data.c (Fsetcdr):
3661         * data.c (Ffloatp):
3662         * data.c (Fsubr_interactive):
3663         * data.c (Farrayp):
3664         * data.c (Fkeywordp):
3665         * data.c (Fnull):
3666         * data.c:
3667         * console.h (CONSOLE_NAME):
3668         * console.h:
3669         * console.c (vars_of_console):
3670         * console.c (Fselect_console):
3671         * console.c:
3672         * console-x.h (DEVICE_X_COLORMAP):
3673         * console-x.h (struct x_device):
3674         * console-x.c (x_device_to_console_connection):
3675         * console-tty.h (CONSOLE_TTY_FINAL_CURSOR_Y):
3676         * console-tty.c (tty_init_console):
3677         * console-tty.c:
3678         * console-msw.h (struct mswindows_frame):
3679         * conslots.h:
3680         * config.h.in:
3681         * cmds.c (internal_self_insert):
3682         * cmds.c (Fforward_line):
3683         * cmds.c (Fforward_char):
3684         * cmds.c:
3685         * cmdloop.c:
3686         * chartab.c (mark_char_table_entry):
3687         * chartab.c:
3688         * casefiddle.c (casify_word):
3689         * callproc.c (child_setup):
3690         * callproc.c (Fcall_process_internal):
3691         * callproc.c:
3692         * callint.c (Fcall_interactively):
3693         * bytecode.h:
3694         * bytecode.c (execute_rare_opcode):
3695         * bytecode.c (execute_optimized_program):
3696         * bytecode.c:
3697         * bufslots.h:
3698         * buffer.h (BUFFER_REALLOC):
3699         * buffer.h (GET_CHARPTR_INT_DATA_ALLOCA):
3700         * buffer.h (GET_CHARPTR_EXT_DATA_ALLOCA):
3701         * buffer.h:
3702         * buffer.h (MAP_INDIRECT_BUFFERS):
3703         * buffer.h (CHECK_LIVE_BUFFER):
3704         * buffer.c (init_initial_directory):
3705         * buffer.c (complex_vars_of_buffer):
3706         * buffer.c (vars_of_buffer):
3707         * buffer.c (finish_init_buffer):
3708         * buffer.c (Fget_file_buffer):
3709         * buffer.c (Fbuffer_list):
3710         * buffer.c (mark_buffer):
3711         * balloon_help.c (balloon_help_move_to_pointer):
3712         * balloon_help.c (show_help):
3713         * balloon_help.c:
3714         * backtrace.h:
3715         * alloc.c (garbage_collect_1):
3716         * alloc.c (sweep_strings):
3717         * alloc.c (sweep_compiled_functions):
3718         * alloc.c (sweep_bit_vectors_1):
3719         * alloc.c (sweep_vectors_1):
3720         * alloc.c (sweep_lcrecords_1):
3721         * alloc.c (tick_lcrecord_stats):
3722         * alloc.c (pure_string_sizeof):
3723         * alloc.c (mark_conses_in_list):
3724         * alloc.c (mark_object):
3725         * alloc.c (report_pure_usage):
3726         * alloc.c (make_pure_float):
3727         * alloc.c (make_pure_string):
3728         * alloc.c (free_managed_lcrecord):
3729         * alloc.c (mark_string):
3730         * alloc.c (noseeum_make_marker):
3731         * alloc.c (allocate_event):
3732         * alloc.c (Fbit_vector):
3733         * alloc.c (Fvector):
3734         * alloc.c (make_float):
3735         * alloc.c (Fmake_list):
3736         * alloc.c (Flist):
3737         * alloc.c (FREE_FIXED_TYPE_WHEN_NOT_IN_GC):
3738         * alloc.c (PUT_FIXED_TYPE_ON_FREE_LIST):
3739         * alloc.c (DECLARE_FIXED_TYPE_ALLOC):
3740         * alloc.c (dbg_constants):
3741         * alloc.c (gc_record_type_p):
3742         * alloc.c (free_lcrecord):
3743         * alloc.c (xmalloc):
3744         * alloc.c (NOSEEUM_INCREMENT_CONS_COUNTER):
3745         * abbrev.c:
3746         * Makefile.in.in (mostlyclean):
3747         * Makefile.in.in (external_client_xlib_objs_nonshared):
3748         * Makefile.in.in (temacs_link_args):
3749         * Makefile.in.in (release):
3750         * Makefile.in.in (dnd_objs):
3751         * Makefile.in.in (objs):
3752         * Makefile.in.in (PROGNAME):
3753         * EmacsShell.c: cast strings to (XtPointer)
3754         * EmacsFrame.c: cast strings to (XtPointer)
3755         - mega patch
3756         - rewrite basic lisp functions for speed
3757         - rewrite bytecode interpreter for speed
3758         - rewrite list looping constructs for speed and safety using
3759           tortoise/hare.
3760         - use size_t where appropriate.
3761         - new hashtable implementation
3762         - cleanup implementation of opaques
3763         - opaques can now be purecopy'ed
3764         - move some cl functionality into C for speed.
3765         - remove last remaining VMS support
3766         - spelling fixes
3767         - improve gdb/dbx debugger support
3768         - move pure.c back into alloc.c for performance
3769         - enable report_pure_usage() if --memory-usage-stats
3770         - remove remnants of Energize support (EMACS_BTL, cadillac...)
3771         - don't use symbols with leading `_' or embedded `__'
3772         - globally cleanup duplicated semicolons `;;'
3773         - I give in on %p vs %lx - we use printf("%lx",(long) p)
3774           globally.
3775         - globally replace O_NDELAY with O_NONBLOCK.
3776         - globally replace CDISABLE with _POSIX_VDISABLE.
3777         - use O_RDONLY and O_RDWR instead of magic `0' and `2'.
3778         - define (and maybe use!) STDERR_FILENO and friends.
3779         - add support for macros defined in C
3780         - `when', `unless', `not' and `defalias' now defined in C,
3781           so that they are universally available.
3782         - rename defvar_mumble to defvar_magic
3783         - rename RETURN__ to RETURN_SANS_WARNINGS
3784         - use consistent style of initial caps in error messages
3785         - implement last, butlast, nbutlast, copy-list in C.
3786         - provide typedefs for all struct Lisp_foo types
3787         - Lisp_Objects must be initialized to Qnil rather than 0.
3788         - make sure XEmacs runs (slowly) with always_gc == 1;
3789         - fast and safe LOOP_* macros
3790         - change calls to XSETOBJ to XSETFOO
3791         - replace calls to XSETINT by make_int()
3792         - plug up memory leaks
3793         - use style markobj (foo), not silly ((markobj) (foo))
3794         - use XFLOAT_DATA (obj) instead of float_data (XFLOAT (obj))
3795
3796 1998-12-02  P. E. Jareth Hein  <jareth@camelot.co.jp>
3797
3798         * unexec.c: Changed a #ifndef statement to fix XEmacs on BSDI 3.0
3799
3800 1998-11-28  SL Baur  <steve@altair.xemacs.org>
3801
3802         * XEmacs 21.2-beta4 is released.
3803
3804 1998-11-27  SL Baur  <steve@altair.xemacs.org>
3805
3806         * mule-charset.c (complex_vars_of_mule_charset): Fix graphic
3807         property in control-1 charset.
3808         From Julian Bradfield <jcb@daimi.au.dk>
3809
3810 1998-11-26  Jan Vroonhof  <vroonhof@math.ethz.ch>
3811
3812         * gui-x.c (button_item_to_widget_value): Ignore :key-sequence
3813         keyword.
3814         Add stub for :label.
3815
3816         * gui.c (gui_item_add_keyval_pair): ditto.
3817
3818         * menubar-x.c (menu_item_descriptor_to_widget_value_1): Ignore
3819         :key-sequence keyword.
3820         Add stub for:label.
3821         Support :active for submenus like the Windows code and FSF Emacs.
3822
3823 1998-11-27  Hrvoje Niksic  <hniksic@srce.hr>
3824
3825         * dired.c (make_directory_hash_table): make_string() is OK because
3826         readdir() Mule-encapsulates.
3827
3828 1998-11-26  Hrvoje Niksic  <hniksic@srce.hr>
3829
3830         * fns.c (Fbase64_encode_string): Fix docstring.
3831         (Fbase64_decode_string): Ditto.
3832
3833 1998-11-26  Hrvoje Niksic  <hniksic@srce.hr>
3834
3835         * editfns.c (Ftranslate_region): Use
3836         convert_bufbyte_string_into_emchar_string().
3837
3838 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
3839
3840         * editfns.c (Ftranslate_region): Accept vectors and char-tables as
3841         well as strings.
3842         (Ftranslate_region): Turn table into an array of Emchars for
3843         larger regions.
3844
3845 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
3846
3847         * chartab.c (Freset_char_table): Fix wrong placement of #endif.
3848
3849 1998-11-24  Hrvoje Niksic  <hniksic@srce.hr>
3850
3851         * chartab.c (Freset_char_table): Don't blindly fill chartables of
3852         type `char' with nils.
3853
3854         * chartab.c (canonicalize_char_table_value): Coerce ints to chars
3855         for tables of type `char'.
3856
3857 1998-11-26  Didier Verna  <verna@inf.enst.fr>
3858
3859         * input-method-xlib.c (Initialize_Locale): don't call
3860         XtSetLanguageProc. We've done the whole work here.
3861         * input-method-xfs.c (Initialize_Locale): ditto.
3862         * input-method-motif.c (Initialize_Locale): ditto.
3863
3864 1998-11-26  Didier Verna  <verna@inf.enst.fr>
3865
3866         * process-unix.c (unix_create_process): handle properly
3867         Vfile_name_coding_system for converting the program and directory
3868         names.
3869
3870 1998-11-27  SL Baur  <steve@altair.xemacs.org>
3871
3872         * m/arm.h: New file.
3873         From James LewisMoss <dres@ioa.com>
3874
3875 1998-11-27  Takeshi Hagiwara  <hagiwara@ie.niigata-u.ac.jp>
3876
3877         * m/mips-nec.h:
3878         Fix the realpath() problem of UnixWare2.1.3.
3879         Patches for NEC's sysv4.2 machine.
3880
3881 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
3882
3883         * dired.c (Fdirectory_files): Remove redundant code.
3884
3885 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
3886
3887         * fns.c (free_malloced_ptr): New function.
3888         (XMALLOC_OR_ALLOCA): New macro.
3889         (XMALLOC_UNBIND): Ditto.
3890         (Fbase64_encode_region): Use malloc() for large blocks; arrange it
3891         to be freed in case of non-local exit.
3892         (Fbase64_encode_string): Ditto.
3893         (Fbase64_decode_region): Ditto.
3894         (Fbase64_decode_string): Ditto.
3895         (STORE_BYTE): New macro.
3896         (base64_decode_1): Use it.
3897
3898 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
3899
3900         * fns.c (base64_value_to_char): Base64 stuff.
3901
3902 1998-11-24  Hrvoje Niksic  <hniksic@srce.hr>
3903
3904         * editfns.c (Fbuffer_substring): New function.
3905
3906         * lisp.h: Declare make_string_from_buffer_no_extents().
3907
3908         * insdel.c (make_string_from_buffer_1): New function.
3909         (make_string_from_buffer_no_extents): Ditto.
3910
3911 1998-11-15  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
3912
3913         * linuxplay.c: Including <fcntl.h> instead of <sys/fcntl.h> makes
3914         sound work on AIX with OSS installed.  Linux should still work.
3915
3916 1998-11-03  Andy Piper  <andyp@parallax.co.uk>
3917
3918         * config.h.in: name change for cygwin/version.h
3919
3920         * configure.in: check for cygwin/version.h now.
3921
3922         * cygwin32.h: track CYGWIN_DLL_VERSION_MAJOR ->
3923         CYGWIN_VERSION_DLL_MAJOR name change in cygwin b20.
3924         move cygwin32/version.h to cygwin/version.h
3925
3926 1998-11-03  Olivier Galibert  <galibert@pobox.com>
3927
3928         * lisp.h  (struct  Lisp_Bit_Vector): Fix declaration of  bits from
3929         int to long.
3930
3931 1998-10-22  Andy Piper  <andyp@parallax.co.uk>
3932
3933         * cygwin32.h: track CYGWIN_DLL_VERSION_MAJOR ->
3934         CYGWIN_VERSION_DLL_MAJOR name change in cygwin b20.
3935         enable BROKEN_SIGIO under b20 to make QUIT work.
3936
3937 1998-10-22  Andy Piper  <andyp@parallax.co.uk>
3938
3939         * frame-msw.c (mswindows_size_frame_internal): force frame sizing
3940         to fit within the constraints of the screen size. I.e. make the
3941         frame small enough to fit and move it if some of it will be
3942         off-screen.
3943
3944 1998-10-19  Greg Klanderman  <greg@alphatech.com>
3945
3946         * dired.c: conditionalize inclusion of user-name-completion
3947         primitives on non-Windows NT.  The needed functions don't exist on NT.
3948
3949 1998-11-24  SL Baur  <steve@altair.xemacs.org>
3950
3951         * gifrlib.h: Clean up types for 64 bit compile.
3952         * dgif_lib.c (DGifInitRead): Ditto.
3953         (MakeSavedImage): Ditto.
3954         * emacs.c (decode_path): Ditto.
3955         From Steve Carney <carney@pa.dec.com>
3956
3957 1998-10-16  William M. Perry  <wmperry@aventail.com>
3958
3959         * glyphs-msw.c (bitmap_table): Fixed typo in builtin bitmaps
3960           (cehckboxes instead of checkboxes).
3961
3962 1998-10-15  SL Baur  <steve@altair.xemacs.org>
3963
3964         * XEmacs 21.2-beta3 is released.
3965
3966 1998-10-13  Raymond Toy  <toy@rtp.ericsson.se>
3967
3968         * runemacs.c (WinMain): If the basename is "rungnuclient.exe", run
3969         gnuclient.  Otherwise, we run xemacs as we always did.  This gets
3970         rid of the annoying DOS window when running gnuclient.
3971
3972 1998-10-13  Andy Piper  <andyp@parallax.co.uk>
3973
3974         * dragdrop.c (vars_of_dragdrop): rename HAVE_MSWINDOWS ->
3975         HAVE_MS_WINDOWS typo.
3976
3977 1998-10-13  SL Baur  <steve@altair.xemacs.org>
3978
3979         * process-unix.c (unix_send_process): Set closed flag on writable
3980         pipe after SIGPIPE is received and before we call deactivate_process.
3981
3982 1998-10-03  Gunnar Evermann  <ge204@eng.cam.ac.uk>
3983
3984         * window.c (Fset_window_start): respect narrowing when
3985         checking wheter start is at the beginning of a line.
3986         (Fset_window_buffer): Ditto
3987         Fixes repeatable crash in VM.
3988
3989 1998-10-09  SL Baur  <steve@altair.xemacs.org>
3990
3991         * window.c (specifier_vars_of_window): Set default vertical
3992         divider width to 1 on ttys.
3993
3994 1998-10-08  Martin Buchholz  <martin@xemacs.org>
3995
3996         * alloc.c:
3997         * unexec.c:
3998         * malloc.c:
3999         Add <stddef.h> to get ptrdiff_t declaration
4000
4001 1998-10-07  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4002
4003         * scrollbar-msw.c: Use the same vertical scrollbar drag hack as
4004           is used for Motif or Lucid scrollbars under X.
4005
4006 1998-10-08  Pierre Wendling  <pw@ebc.vbe.dec.com>
4007
4008         * m/alpha.h (UNEXEC): quoted to avoid bad expansion when running
4009         `configure'
4010
4011 1998-10-06  Takeshi Hagiwara  <hagiwara@ie.niigata-u.ac.jp>
4012
4013         * frame-x.c (x_delete_frame): Fix an argument of XtDestroyWidget.
4014
4015 1998-10-05  Andy Piper  <andyp@parallax.co.uk>
4016
4017         * s/cygwin32.h: more cygwin b20 reorganisation.
4018
4019 1998-10-01  Raymond Toy  <toy@rtp.ericsson.se>
4020
4021         * nas.c: Added necessary support functions to be able to handle
4022         WAVE files in memory, just like the support for SND files in
4023         memory.
4024
4025 1998-09-30  SL Baur  <steve@altair.xemacs.org>
4026
4027         * callproc.c (child_setup): Fix spelling typo.
4028
4029 1998-09-29  SL Baur  <steve@altair.xemacs.org>
4030
4031         * XEmacs 21.2-beta2 is released.
4032
4033 1998-09-27  P. E. Jareth Hein  <jareth@camelot.co.jp>
4034
4035         * regex.c (re_match_2_internal): Add in code to reset lowest_active_reg
4036         to prevent memory corruption in the case of jumping out of a series of
4037         nested match patterns. This is a rather brute force approach, though.
4038
4039 1998-09-02  Andy Piper  <andyp@parallax.co.uk>
4040
4041         * config.h.in: ditto.
4042
4043         * s/cygwin32.h: rearrange declarations to cope with cygwin
4044         b20. Include cygwin32/version.h if it exists.
4045
4046 1998-09-20  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4047
4048         * device-msw.c (mswindows_init_device): Call new
4049           mswindows_enumerate_fonts() function in objects-msw.c instead
4050           of font_enum_callback_1() to enumerate fonts.
4051
4052           font_enum_callback_1() and _2() moved to objects-msw.c.
4053
4054         * faces.c (complex_vars_of_faces): Make the mswindows default
4055           face font fully specified and provide some fallbacks.
4056
4057         * objects-msw.c: font_enum_callback_1() and _2() moved here
4058           from objects-msw.c. Obtain the enumerated font's character
4059           sets by table lookup instead of using the locale-specific
4060           string provided by Windows.
4061
4062           New public non-method mswindows_enumerate_fonts() that fills
4063           in the supplied mswindows device's font list.
4064
4065           mswindows_initialize_font_instance: Use the supplied name
4066           variable instead of f->name when signalling errors. Match font
4067           weights and character sets using lookup tables which handle
4068           spaces instead of by frobbing.
4069
4070 1998-09-20  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4071
4072         * process-nt.c: Define an arbitrary limit, FRAGMENT_CODE_SIZE,
4073           on the size of code fragments passed to run_in_other_process.
4074
4075           run_in_other_process(): Use FRAGMENT_CODE_SIZE to determine
4076           the amount of memory to allocate in the other process.
4077
4078           Removed sigkill_code_end(), sigint_code_end() and
4079           sig_enable_code_end() since they are now redundant.
4080
4081           send_signal() and enable_child_signals(): Don't try to work
4082           out the end of the code fragments passed to
4083           run_in_other_process()
4084
4085 1998-09-10  Kazuyuki IENAGA  <ienaga@jsys.co.jp>
4086
4087         * src/s/freebsd.h: Added __ELF__ and compiler/liker flags for
4088         FreeBSD-current.
4089
4090         * src/unexelf.c: Partially synched with FSF's 20.3.
4091
4092 1998-09-10  Hrvoje Niksic  <hniksic@srce.hr>
4093
4094         * insdel.c (signal_after_change): Map across indirect buffers
4095         here, and not in the upper-level functions.
4096         (signal_first_change): Don't check for Armageddon.
4097         (signal_before_change): Map across indirect buffers here.
4098         (prepare_to_modify_buffer): ...and here.
4099
4100 1998-09-09  Hrvoje Niksic  <hniksic@srce.hr>
4101
4102         * insdel.c (signal_after_change): Add return value.
4103         (buffer_insert_string_1): Use it.
4104         (buffer_delete_range): Ditto.
4105         (buffer_replace_char): Ditto.
4106         (cancel_multiple_change): Map the indirect buffers.
4107
4108 1998-09-06  Hrvoje Niksic  <hniksic@srce.hr>
4109
4110         * insdel.c (init_buffer_text): Remove INDIRECT_P parameter.
4111         (uninit_buffer_text): Ditto.
4112
4113         * buffer.c (Fmake_indirect_buffer): Implement stricter
4114         error-checking.
4115
4116 1998-09-04  Hrvoje Niksic  <hniksic@srce.hr>
4117
4118         * insdel.c (change_function_restore): Reverse order of
4119         function-call and assignment.
4120         (first_change_hook_restore): Ditto.
4121
4122         * extents.c (mark_extent_auxiliary): Mark them.
4123         (Fset_extent_property): Set them.
4124         (Fextent_property): Get them.
4125         (Fextent_properties): Ditto.
4126         (vars_of_extents): Set their default.
4127
4128         * extents.h (struct extent_auxiliary): Add before_change_functions
4129         and after_change_functions.
4130
4131         * insdel.c (signal_before_change): Use it.
4132         (signal_after_change): Ditto.
4133
4134         * extents.c (report_extent_modification): New function.
4135
4136         * insdel.c (signal_before_change): Don't check for Armageddon.
4137         (signal_after_change): Ditto.
4138
4139 1998-09-11  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
4140
4141         * redisplay.c (redisplay_window): make sure a new starting point
4142         is chosen if it somehow got moved from the beginning of the line
4143         -- this can happen because Fwiden was called recently.
4144
4145         * window.c (Fset_window_start): set start_at_line_beg correctly
4146         (Fset_window_buffer): Ditto
4147
4148 1998-09-06  Hrvoje Niksic  <hniksic@srce.hr>
4149
4150         * insdel.c (init_buffer_text): Remove INDIRECT_P parameter.
4151         (uninit_buffer_text): Ditto.
4152
4153         * buffer.c (Fmake_indirect_buffer): Implement stricter
4154         error-checking.
4155
4156 1998-05-14  Jan Vroonhof  <vroonhof@math.ethz.ch>
4157
4158         * emacs.c (main_1): Removed references to *vars_of_filelock.
4159
4160         * lisp.h: Added Fsystem_name.
4161
4162         * filelock.c: Replaced by version from FSF 20.2. Now implements
4163         locking by using symlinks which is NFS safe. However keep the
4164         GCPRO's in lock_file and the calls to callx_in_buffer like our old
4165         version (and of course use ansi C, acessor macros, etc).
4166
4167 1998-09-06  Jan Vroonhof  <vroonhof@math.ethz.ch>
4168
4169         * process-unix.c (unix_create_process): Reset SIGHUP handler to
4170         SIG_DFL. We now try to conserve any inherted SIG_IGN settings
4171         in init_signals_very_early. However these should not be passed
4172         on to children attached to the new pty.
4173
4174 1998-08-28  Andy Piper  <andyp@parallax.co.uk>
4175
4176         * glyphs-eimage.c (png_instantiate_unwind): clean up eimage after use.
4177
4178 1998-09-07  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4179
4180         * fileio.c (file-name-directory, file_name_as_directory):
4181           Don't call CORRECT_DIR_SEPS, even when #defined WINDOWSNT.
4182
4183 1998-09-02  Andy Piper  <andyp@parallax.co.uk>
4184
4185         * emacs.c (main_1): init_ralloc() if initialised and we have REL_ALLOC
4186
4187         * ralloc.c: uncomment __morecore.
4188
4189 1998-09-92  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4190
4191         * event-msw.c(winsock_writer): Supply a dummy 4th argument to
4192           WriteFile() to fix a winsock 1.x bug on Win95.
4193
4194 1998-08-28  Hrvoje Niksic  <hniksic@srce.hr>
4195
4196         * event-Xt.c (emacs_Xt_mapping_action): Check for device being
4197         deleted.
4198         (x_event_to_emacs_event): Ditto.
4199         (emacs_Xt_handle_focus_event): Ditto.
4200         (emacs_Xt_handle_magic_event): Ditto.
4201
4202         * console-x.h (struct x_device): New flag being_deleted.
4203         (DEVICE_X_BEING_DELETED): New macro.
4204
4205         * device-x.c (x_IO_error_handler): Throw to top-level instead of
4206         returning.  Before doing that, set the being_deleted flag on the
4207         device.
4208
4209 1998-08-27  Hrvoje Niksic  <hniksic@srce.hr>
4210
4211         * device-x.c (x-seppuku-on-epipe): Removed.
4212
4213 1998-08-26  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
4214
4215         * frame-x.c (x_delete_frame): Flush the X output buffer after
4216         calling XtDestroyWidget to ensure that the windows are really
4217         killed right now.
4218
4219 1998-08-26  Hrvoje Niksic  <hniksic@srce.hr>
4220
4221         * menubar-x.c (my_run_hook): New unused function.
4222         (pre_activate_callback): Use run_hook for Qactivate_menubar_hook,
4223         since we ignore the results of the contained functions anyway.
4224
4225 1998-08-26  P. E. Jareth Hein  <jareth@camelot.co.jp>
4226
4227         * glyphs-eimage.c (gif_instantiate): Fix a crash in handling
4228         interlaced GIF files that are smaller than 4 lines high...
4229
4230 1998-08-31  Hrvoje Niksic  <hniksic@srce.hr>
4231
4232         * buffer.c (map_over_sharing_buffers): Deleted.
4233
4234         * insdel.c (MAP_INDIRECT_BUFFERS): Move to buffer.h.
4235
4236         * buffer.c (Fkill_buffer): Keep indirect_children updated while
4237         killing them.
4238
4239 1998-08-31  Hrvoje Niksic  <hniksic@srce.hr>
4240
4241         * insdel.c (buffer_insert_string_1): Advance the point bytind in
4242         all the buffers.
4243         (buffer_delete_range): Ditto.
4244
4245         * marker.c (init_buffer_markers): Set point-marker to the value of
4246         point in an indirect buffer.
4247
4248 1998-08-30  Hrvoje Niksic  <hniksic@srce.hr>
4249
4250         * undo.c (undo_prelude): Test last-undo-buffer against base
4251         buffer.
4252
4253         * insdel.c (MAP_INDIRECT_BUFFERS): Use it.
4254
4255         * buffer.h (BUFFER_BASE_BUFFER): New macro.
4256
4257 1998-08-30  Hrvoje Niksic  <hniksic@srce.hr>
4258
4259         * insdel.c (init_buffer_text): Initialize it here.
4260
4261         * line-number.c: Address line_number_cache through buffer->text.
4262
4263         * buffer.c (mark_buffer): Mark line number cache.
4264
4265         * bufslots.h (line_number_cache): Move to struct buffer_text.
4266
4267         * insdel.c (buffer_insert_string_1): Propagate signals and changes
4268         across the children buffers.
4269         (buffer_delete_range): Ditto.
4270         (buffer_replace_char): Ditto.
4271         (gap_left): Ditto.
4272         (gap_right): Ditto.
4273
4274         * insdel.c (MAP_INDIRECT_BUFFERS): New macro.
4275
4276         * buffer.c (Fmake_indirect_buffer): Uncomment.
4277
4278 1998-08-31  Hrvoje Niksic  <hniksic@srce.hr>
4279
4280         * macros.c (Fend_kbd_macro): Remove trailing period from error
4281         message.
4282         (Fexecute_kbd_macro): Ditto.
4283
4284 1998-08-21  Greg Klanderman  <greg@alphatech.com>
4285
4286         * dired.c (Fuser_name_completion): remove optional 2nd argument.
4287         (Fuser_name_completion_1): new function to return uniqueness
4288         indication in addition to the user name completion.
4289         (user_name_completion): change type of `uniq' argument.
4290
4291 1998-08-19  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
4292
4293         * lread.c (vars_of_lread): Removed `source-directory' variable.
4294
4295 1998-08-22  Hrvoje Niksic  <hniksic@srce.hr>
4296
4297         * fileio.c (Ffile_readable_p): Apply the DOS/Windows logic to
4298         Cygwin.
4299
4300 1998-08-19  SL Baur  <steve@altair.xemacs.org>
4301
4302         * dired.c (vars_of_dired): Fix misapplied patch.
4303
4304 1998-08-16  Martin Buchholz  <martin@xemacs.org>
4305
4306         * fns.c (Fremrassq, remrassq_no_quit):
4307         A XCAR that should have been an XCDR turned Fremrassq into Fremassq
4308
4309 1998-07-17  Didier Verna  <verna@inf.enst.fr>
4310
4311         * redisplay-x.c (x_get_gc): returns a GC with a FillStipple fill
4312         style as foreground GC for faces that have the `dim' property.
4313         (x_output_string): when the `dim' face property is set,
4314         ensure the gray pixmap has been created, and get a proper
4315         foreground GC to draw the text.
4316
4317 1998-08-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4318
4319         * event-msw.c (mswindows_wnd_proc): Workaround for a Win95 bug:
4320           Manually track the state of the left and right Ctrl and Alt
4321           modifiers.
4322
4323 1998-08-07 Matt Stupple <matts@tibco.com>
4324
4325         * ntproc.c: don't wait on char_consumed at thread entry.
4326         Additionally, to get the 'process' marked as finished, ensure
4327         that the CHILD_ACTIVE macro returns false, so before exiting
4328         close char_avail and set it to NULL, and close other handles
4329         to reduce handle leak problems.
4330
4331 1998-08-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4332
4333         * menubar-msw.c (displayable_menu_item): take account of menu
4334           depth when deciding whether to try to display accelerators.
4335
4336 1998-08-04  Andy Piper  <andyp@parallax.co.uk>
4337
4338         * event-msw.c: use MsgWaitForMultipleObjects if there are no
4339         subprocesses.
4340
4341         * glyphs-msw.c: fix a couple of potential handle leaks.
4342
4343 1998-08-04  P. E. Jareth Hein  <jareth@camelot.co.jp>
4344
4345         * dgif_lib.c gif_io.c gifrlib.h: New files to put GIF
4346           *decoding ONLY* back into the core.
4347         * glyphs-eimage.c: Change referenced header file for GIF
4348           reading to point to the incore version.
4349
4350 1998-07-20  Martin Buchholz  <martin@xemacs.org>
4351
4352         * casefiddle.c (casify_object):
4353         Change algorithm from O(N**2) to O(N).
4354         Code cleanup.
4355         Doc string cleanup.
4356
4357 1998-07-22  Greg Klanderman  <greg@alphatech.com>
4358
4359         * dired.c (file_name_completion_unwind): don't leak the cons.
4360
4361 1998-07-20  Greg Klanderman  <greg@alphatech.com>
4362
4363         * dired.c (Fuser_name_completion): new function.
4364         (Fuser_name_all_completions): new function.
4365         (user_name_completion): new function.
4366         (syms_of_dired): 2 new DEFSUBRs.
4367         (vars_of_dired): initialize user name cache vars.
4368
4369 1998-07-29  P. E. Jareth Hein  <jareth@camelot.co.jp>
4370
4371         * glyphs-eimage.c (png_instantiate): Add proper handling for background
4372         colors taken from the default face.  Also correct a thinko in
4373         transparency (not alpha) handling.
4374
4375 1998-07-23  Martin Buchholz  <martin@xemacs.org>
4376
4377         * s/decosf4-0.h:  Use a perfectly ordinary link.  Nuke BSD crap.
4378         * unexalpha.c: ANSI C-ize.  Clean compiler warnings.
4379         * lread.c (Fload_internal):  Be very careful with printfs of
4380         size_t's
4381         * gui-x.c (menu_name_to_accelerator): tolower wants an `int'
4382         argument.
4383
4384 1998-07-27  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
4385
4386         * callint.c (Fcall_interactively): GCPRO prompt string before
4387         passing it to Fread_key_sequence
4388
4389 1998-07-27  SL Baur  <steve@altair.xemacs.org>
4390
4391         * keymap.c (vars_of_keymap): Initialize Vkey_translation_map and
4392         Vvertical_divider_map.
4393
4394         * mule-canna.c (vars_of_mule_canna): Initialize every symbol to
4395         Qnil or 0, none were initialized prior to this change.
4396
4397         Rename misnamed `V' prefixed integer variables:
4398         Vcanna_empty_info, Vcanna_through_info, Vcanna_underline,
4399         Vcanna_inhibit_hankakukana, Vcanna_henkan_length, Vcanna_henkan_revPos,
4400         Vcanna_henkan_revLen, Vcanna_ichiran_length, Vcanna_ichiran_revPos,
4401         Vcanna_ichiran_revLen.
4402
4403         Rename misnamed `V' prefixed integer variables and initialize
4404         properly in the vars_of routine.
4405         Vcanna_mode_AlphaMode, Vcanna_mode_EmptyMode, Vcanna_mode_KigoMode,
4406         Vcanna_mode_YomiMode, Vcanna_mode_JishuMode, Vcanna_mode_TankouhoMode,
4407         Vcanna_mode_IchiranMode, Vcanna_mode_YesNoMode, Vcanna_mode_OnOffMode,
4408         Vcanna_mode_AdjustBunsetsuMode, Vcanna_mode_ChikujiYomiMode,
4409         Vcanna_mode_ChikujiTanMode, Vcanna_mode_HenkanMode,
4410         Vcanna_mode_HenkanNyuryokuMode, Vcanna_mode_ZenHiraHenkanMode,
4411         Vcanna_mode_HanHiraHenkanMode, Vcanna_mode_ZenKataHenkanMode,
4412         Vcanna_mode_HanKataHenkanMode, Vcanna_mode_HanKataHenkanMode,
4413         Vcanna_mode_ZenAlphaHenkanMode, Vcanna_mode_HanAlphaHenkanMode,
4414         Vcanna_mode_ZenHiraKakuteiMode, Vcanna_mode_HanHiraKakuteiMode,
4415         Vcanna_mode_ZenKataKakuteiMode, Vcanna_mode_HanKataKakuteiMode,
4416         Vcanna_mode_ZenAlphaKakuteiMode, Vcanna_mode_HanAlphaKakuteiMode,
4417         Vcanna_mode_HexMode, Vcanna_mode_BushuMode, Vcanna_mode_ExtendMode,
4418         Vcanna_mode_RussianMode, Vcanna_mode_GreekMode, Vcanna_mode_LineMode,
4419         Vcanna_mode_ChangingServerMode, Vcanna_mode_HenkanMethodMode,
4420         Vcanna_mode_DeleteDicMode, Vcanna_mode_TourokuMode,
4421         Vcanna_mode_TourokuEmptyMode, Vcanna_mode_TourokuHinshiMode,
4422         Vcanna_mode_TourokuDicMode, Vcanna_mode_QuotedInsertMode,
4423         Vcanna_mode_BubunMuhenkanMode, Vcanna_mode_MountDicMode,
4424         Vcanna_fn_SelfInsert, Vcanna_fn_FunctionalInsert,
4425         Vcanna_fn_QuotedInsert, Vcanna_fn_JapaneseMode, Vcanna_fn_AlphaMode,
4426         Vcanna_fn_HenkanNyuryokuMode, Vcanna_fn_Forward, Vcanna_fn_Backward,
4427         Vcanna_fn_Next, Vcanna_fn_Prev, Vcanna_fn_BeginningOfLine,
4428         Vcanna_fn_EndOfLine, Vcanna_fn_DeleteNext, Vcanna_fn_DeletePrevious,
4429         Vcanna_fn_KillToEndOfLine, Vcanna_fn_Henkan, Vcanna_fn_Kakutei,
4430         Vcanna_fn_Extend, Vcanna_fn_Shrink, Vcanna_fn_AdjustBunsetsu,
4431         Vcanna_fn_Quit, Vcanna_fn_ConvertAsHex, Vcanna_fn_ConvertAsBushu,
4432         Vcanna_fn_KouhoIchiran, Vcanna_fn_BubunMuhenkan, Vcanna_fn_Zenkaku,
4433         Vcanna_fn_Hankaku, Vcanna_fn_ExtendMode, Vcanna_fn_ToUpper,
4434         Vcanna_fn_Capitalize, Vcanna_fn_ToLower, Vcanna_fn_Hiragana,
4435         Vcanna_fn_Katakana, Vcanna_fn_Romaji, Vcanna_fn_BaseHiragana,
4436         Vcanna_fn_BaseKatakana, Vcanna_fn_BaseEisu, Vcanna_fn_BaseZenkaku,
4437         Vcanna_fn_BaseHankaku, Vcanna_fn_BaseKana, Vcanna_fn_BaseKakutei,
4438         Vcanna_fn_BaseHenkan, Vcanna_fn_BaseHiraKataToggle,
4439         Vcanna_fn_BaseZenHanToggle, Vcanna_fn_BaseKanaEisuToggle,
4440         Vcanna_fn_BaseKakuteiHenkanToggle, Vcanna_fn_BaseRotateForward,
4441         Vcanna_fn_BaseRotateBackward, Vcanna_fn_Touroku, Vcanna_fn_HexMode,
4442         Vcanna_fn_BushuMode, Vcanna_fn_KigouMode, Vcanna_fn_Mark,
4443         Vcanna_fn_TemporalMode, Vcanna_key_Nfer, Vcanna_key_Xfer,
4444         Vcanna_key_Up, Vcanna_key_Left, Vcanna_key_Right, Vcanna_key_Down,
4445         Vcanna_key_Insert, Vcanna_key_Rollup, Vcanna_key_Rolldown,
4446         Vcanna_key_Home, Vcanna_key_Help, Vcanna_key_KP_Key,
4447         Vcanna_key_Shift_Nfer, Vcanna_key_Shift_Xfer, Vcanna_key_Shift_Up,
4448         Vcanna_key_Shift_Left, Vcanna_key_Shift_Right, Vcanna_key_Shift_Down,
4449         Vcanna_key_Cntrl_Nfer, Vcanna_key_Cntrl_Xfer, Vcanna_key_Cntrl_Up,
4450         Vcanna_key_Cntrl_Left, Vcanna_key_Cntrl_Right, Vcanna_key_Cntrl_Down
4451
4452 1998-07-16  Jan Vroonhof  <vroonhof@math.ethz.ch>
4453
4454         * event-Xt.c (x_to_emacs_keysym): Return nil for modifier keysyms.
4455         (x_event_to_emacs_event): Let x_to_emacs_keysym check for modifier
4456         keys thus no longer considering all keysyms on a key.
4457
4458 1998-07-19  SL Baur  <steve@altair.xemacs.org>
4459
4460         * XEmacs 21.2-beta1 is released.
4461
4462 1998-07-12  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
4463
4464         * eldap.c (Fldap_search_internal): When converting the list of
4465         attributes to search Copy the final 0 from Lisp strings to C
4466         strings.
4467         Check base, not Vldap_default_base as a a string
4468
4469 1998-07-13  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4470
4471         * nt.c: Remove Vstdio_str; already defined in console-stream.c.
4472
4473         * unexnt.c: Unconditionally define bss_start and bss_size, and
4474           ensure that they don't go in the .bss section.
4475
4476 1998-07-17  Olivier Galibert  <galibert@pobox.com>
4477
4478         * glyphs-x.c (convert_EImage_to_XImage):  Fix previous patch (conv
4479         byte order is dependant  of  the local  byte order).
4480         From Takeshi Hagiwara <hagiwara@ie.niigata-u.ac.jp>
4481
4482 1998-07-18  SL Baur  <steve@altair.xemacs.org>
4483
4484         * glyphs-msw.c (mswindows_resource_normalize): Qresource ->
4485         Qmswindows_resource.
4486         From Jonathan Harris <jhar@tardis.ed.ac.uk>
4487
4488 1998-07-12  SL Baur  <steve@altair.xemacs.org>
4489
4490         * general.c (syms_of_general): Add defsymbol for Qresource.
4491
4492         * glyphs-msw.c (vars_of_glyphs_mswindows): Rename Qresource to
4493         Qmswindows_resource.
4494         (TopLevel): Rename 'resource image format to 'mswindows_resource.
4495         (mswindows_resource_validate): Rename.
4496         (mswindows_resource_normalize): Rename.
4497         (mswindows_resource_possible_dest_types): Rename.
4498         (mswindows_resource_instantiate): Rename.
4499         (image_instantiator_format_create_glyphs_mswindows): Replace
4500         `resource' with `mswindows.resource'.
4501
4502         * XEmacs 21.0-pre5 is released.
4503
4504 1998-07-10  SL Baur  <steve@altair.xemacs.org>
4505
4506         * mule-wnnfns.c (Fwnn_open): Correctly trap on misdefined Wnn
4507         server type in environment.
4508         Use alloca-ed strings instead of tiny fixed size ones.
4509
4510 1998-07-09  SL Baur  <steve@altair.xemacs.org>
4511
4512         * XEmacs 21.0-pre4 is released.
4513
4514 1998-07-01  James N. Potts  <jnpotts@plutonium.net>
4515
4516         * fileio.c: (expand_file_name): under win32: Don't treat names
4517         as UNC names if a drive letter has been specified.  If a drive
4518         has been specified, strip out extra directory-seperators that
4519         reportedly cause problems under Win95.
4520
4521 1998-07-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4522
4523         * windowsnt.h: Define DUMP_SEPARATE_SECTION when building with
4524           MSVC >= 5.0. Put emacs init and zero-init data in a special
4525           section of the executable when this is defined.
4526
4527         * unexnt.c, ntheap.h:
4528           Removed unused find_section() and get_section_size().
4529
4530         * unexnt.c:
4531           Fix up the executable's checksum after dumping otherwise the
4532           profiler complains.
4533           When DUMP_SEPARATE_SECTION is defined, don't need to dump
4534           zero-init data separately from init data. Dump emacs data
4535           into a special section of the executable.
4536           When DUMP_SEPARATE_SECTION not defined, dump .bss up to
4537           my_ebss instead of up to the end of bss.
4538
4539 1998-07-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4540
4541         * filelock.c: Removed Vconfigure_lock_directory - already
4542           defined in emacs.c.
4543
4544         * frame-msw.c: Removed Qinitially_unmapped and Qpopup - already
4545           defined in frame.c and general.c respectively.
4546
4547         * glyphs-msw.c: Removed Qresource - already defined in
4548           general.c.
4549
4550 1998-07-05  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
4551
4552         * eldap.c (Fldap_search_internal): Docstring fixes
4553
4554 1998-07-04  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4555
4556         * nt.c (init_environment): Removed unused PRELOAD_WINSOCK,
4557           EMACSDOC and TERM variables. Added EMACSDEBUGPATHS,
4558           EMACSPACKAGEPATH and INFOPATH variables.
4559           Removed unused get_emacs_configuration function.
4560
4561         * s/windowsnt.h: Don't define EMACS_CONFIGURATION here because
4562           it is now defined at build-time by the makefile.
4563
4564 1998-07-01  James N. Potts  <jnpotts@plutonium.net>
4565
4566         * fileio.c: (expand_file_name): under win32: Don't treat names as
4567         UNC names if a drive letter has been specified.  If a drive has
4568         been specified, strip out extra directory-seperators that
4569         reportedly cause problems under Win95.
4570
4571 1998-07-05  Andy Piper  <andyp@parallax.co.uk>
4572
4573         * faces.c (complex_vars_of_faces): for the gui-element face don't
4574         fallback to the default face, instead provide reasonable default
4575         fallbacks that were previously hardcoded elsewhere.
4576
4577 1998-07-06  Olivier Galibert  <galibert@pobox.com>
4578
4579         * glyphs-x.c (convert_EImage_to_XImage): Fix pixel writing problem
4580         when the X server endianness is different than the client's one.
4581
4582 1998-06-29  Kyle Jones  <kyle_jones@wonderworks.com>
4583
4584         * eval.c (run_hook_with_args_in_buffer): Check
4585           default (non-buffer-local) value of hook for
4586           nil before treating it as a function.  Don't initialize
4587           the `globals' variable twice.
4588
4589 1998-06-24  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4590
4591         * fileio.c: Don't do directory seperator canonicalisation in
4592           substitute-in-file-name because we don't know that the
4593           filename refers to a local file.
4594
4595 1998-06-24  Adrian Aichner  <aichner@ecf.teradyne.com>
4596
4597         * process-nt.c (nt_create_process): Try appending the standard
4598           executable file extensions to the filename if none supplied.
4599
4600 1998-06-29  SL Baur  <steve@altair.xemacs.org>
4601
4602         * fileio.c (Fsubstitute_in_file_name): Enable double slash notation
4603         for cygwin32.
4604         From Keisuke Mori <ksk@ntts.com>
4605
4606 1998-06-24  Andy Piper  <andyp@parallax.co.uk>
4607
4608         * toolbar-msw.c (mswindows_output_toolbar): only enable masked
4609         images if we have masks. This handles the xbm case (have masks)
4610         and avoids overuse of resources in the xpm case (generally no masks).
4611         Don't output small toolbars.
4612
4613 1998-06-29  Kyle Jones  <kyle_jones@wonderworks.com>
4614
4615         * eval.c (run_hook_with_args_in_buffer): Don't treat
4616           the default value of a buffer local hook as a list of
4617           hooks unless it is both a cons and the car of that cons
4618           is not Qlambda.
4619
4620 1998-06-29  SL Baur  <steve@altair.xemacs.org>
4621
4622         * extents.c: Email address for Ben Wing is ben@xemacs.org.
4623         * process-unix.c: Ditto.
4624         * mule-coding.h: Ditto.
4625         * mule-coding.c: Ditto.
4626         * mule-charset.c: Ditto.
4627         * mule-charset.h: Ditto.
4628         * file-coding.c: Ditto.
4629         * file-coding.h: Ditto.
4630
4631 1998-06-22  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4632
4633         * event-msw.c: Guard against recursion when freeing
4634           FRAME_MSWINDOWS_TARGET_RECT struture in WM_SIZE processing.
4635
4636         * frame-msw.c: Don't set WS_VISIBLE attribute on first frame.
4637           Call ShowWindow twice in init_frame_3 to get round runemacs
4638           weirdness.
4639
4640 1998-06-27  Hrvoje Niksic  <hniksic@srce.hr>
4641
4642         * scrollbar.c (vertical_scrollbar_changed_in_window): Ditto.
4643
4644         * winslots.h: Rename.
4645
4646         * window.c (specifier_vars_of_window): Renamed
4647         vertical-divider-draggable-p to vertical-divider-always-visible-p,
4648         as suggested by Ben Wing.
4649         (specifier_vars_of_window): Fix docstrings.
4650
4651 1998-06-22  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
4652
4653         * unexaix.c: Line number information works correctly again.
4654
4655 1998-06-22  Olivier Galibert  <galibert@pobox.com>
4656
4657         * emacs.c (__sti__iflPNGFile_c___): Added. See comment. Cry.
4658
4659 1998-06-21  Martin Buchholz  <martin@xemacs.org>
4660
4661         * editfns.c (get_home_directory): ANSIfy.
4662         XEmacs is compilable under C *and* C++.
4663         It's XEmacs, not Xemacs!
4664
4665 1998-06-19  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4666
4667         * console-msw.h: added a list of fonts to device data.
4668
4669         * device-msw.c: enumerate list of available fonts in
4670           mswindows_init_device. Free list in mswindows_delete_device.
4671
4672         * objects-msw.c: Added helper function match_font used by
4673           mswindows_initialize_font_instance and mswindows_list_fonts.
4674           Allow a charset to be specified in a font string, even if
4675           previous fields havn't been specified.
4676
4677 1998-06-23  Greg Klanderman  <greg@alphatech.com>
4678
4679         * indent.c (column_at_point): column cache bugfix.
4680         Set last_known_column_point to the buffer position for
4681         which the column was requested, not buffer's point.
4682
4683         * redisplay.c (decode_mode_spec): for current-column, show
4684         window's point's column, not buffer's point's column.
4685
4686 1998-06-23  Andy Piper  <andyp@parallax.co.uk>
4687
4688         * menubar-msw.c (mswindows_handle_wm_command): use
4689         enqueue_misc_user event rather than
4690         mswindows_enqueue_msic_user_event to fix customize problems. Add some
4691         checks that X does.
4692
4693         * console-msw.h: declare mswindows_enqueue_magic_event.
4694
4695         * event-msw.c (mswindows_enqueue_magic_event): make global.
4696
4697 1998-06-24  Hrvoje Niksic  <hniksic@srce.hr>
4698
4699         * line-number.c (LINE_NUMBER_FAR): Reverted to 16384.
4700         (buffer_line_number): Use EMACS_INT_MAX instead of random LOTS.
4701         (add_position_to_cache): Use EMACS_INT instead of int.
4702
4703 1998-06-21  Olivier Galibert  <galibert@pobox.com>
4704
4705         * lisp-disunion.h (XMARKBIT): Have XMARKBIT return something
4706         suitable for an int used as a boolean (btw, C sucks.).
4707
4708 1998-06-18  Andy Piper  <andyp@parallax.co.uk>
4709
4710         * object-msw.c: remove warnings.
4711
4712         * device-msw.c: #define wrongly named cygwin structure elements.
4713
4714         * s/cygwin32.h: define DEMI_BOLD
4715
4716 1998-06-19  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4717
4718         * redisplay-msw.c: new function mswindows_apply_face_effects.
4719           This is called by output_string and output_cursor to display
4720           underline and strikeout on faces.
4721
4722 1998-06-19  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4723
4724         * console-msw.h: added a list of fonts to device data.
4725
4726         * device-msw.c: enumerate list of available fonts in
4727           mswindows_init_device. Free list in mswindows_delete_device.
4728
4729         * objects-msw.c: Added helper function match_font used by
4730           mswindows_initialize_font_instance and mswindows_list_fonts.
4731           Allow a charset to be specified in a font string, even if
4732           previous fields havn't been specified.
4733
4734 1998-06-15  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4735
4736         * objects-msw.c:
4737           Removed compilation warnings from mswindows_string_to_color.
4738           mswindows_list_fonts returns a more general bogus font.
4739           New lisp-visible function mswindows-color-list.
4740
4741 1998-06-19  David Bush <david.bush@adn.alcatel.com>
4742
4743         * editfns.c (Fuser_login_name): Modify to user new function
4744         user_login_name.
4745         (user_login_name): C only function to avoid Lisp object overhead
4746         Returns "unknown" instead of nil in Cygwin environment
4747
4748         * fileio.c (Fexpand_file_name): Treat "~" and "~user" as
4749         equivalent for current user in Cygwin environment. Use new
4750         function user_login_name to get username.
4751
4752         * lisp.h: Declare user_login_name
4753
4754 1998-06-18  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
4755
4756         * unexaix.c (make_hdr): Fixed bias computations so debugging info
4757         works again.
4758         Some other insignificant nitpicks.
4759
4760 1998-06-18  Andy Piper  <andyp@parallax.co.uk>
4761
4762         * toolbar-msw.c (mswindows_output_toolbar): specify ILC_MASK when
4763         creating the image list and make sure he bk color is transparent.
4764
4765 1998-06-18  Jan Vroonhof  <vroonhof@math.ethz.ch>
4766
4767         * event-Xt.c (emacs_Xt_remove_timeout): Also remove timeout from
4768         completed_timeouts. The timer could have expired.
4769
4770 1998-06-17  Andy Piper  <andyp@parallax.co.uk>
4771
4772         * console-msw.h: move XEMACS_RECT_WH inside frame
4773         parameters. define macors to access it.
4774
4775         * frame-msw.c (mswindows_init_frame_1): use new target_rect
4776         parameter to intialise desired sizing. (mswindows_init_frame_2):
4777         enable and size the frame to something sensible when we get
4778         here. (mswindows_set_frame_properites): use new
4779         mswindows_size_frame_internal function and size frame if frame
4780         parameters not just if init is finished - WM_SIZE happens too
4781         early for some specs. (mswindows_size_frame_internal): new
4782         function abstracted from mswindows_set_frame_properties.
4783         (Vmswindows_use_system_frame_size_defaults):
4784         new variable controls whether to allow the system to pick frame
4785         size defaults, defaults to nil.
4786
4787         * event-msw.c: in WM_SIZE use mswindows_size_frame_internal rather
4788         than duplicated code.
4789
4790 1998-06-15  Colin Rafferty <colin@xemacs.org>
4791
4792         * Makefile.in.in: Made EXTW_LINK expand properly.
4793
4794 1998-06-12  Martin Buchholz  <martin@xemacs.org>
4795
4796         * redisplay.c (vars_of_redisplay): default value of
4797         column-number-start-at-one should be NIL!
4798
4799 1998-06-11  Martin Buchholz  <martin@xemacs.org>
4800
4801         * casefiddle.c:
4802         (upcase-initials "fooBar") ==> "FooBar" instead of "Foobar"
4803
4804 1998-06-05  Hrvoje Niksic  <hniksic@srce.hr>
4805
4806         * eldap.c (Fldap_search_internal): Use build_ext_string instead of
4807         build_string to avoid crashes under Mule.
4808
4809 1998-06-13  Andy Piper  <andyp@parallax.co.uk>
4810
4811         * ntplay.c (play_sound_data_1): don't delete the sound data until
4812         the next sound is played and the previous one finished.
4813
4814 1998-06-10  Samuel Mikes  <smikes@alumni.hmc.edu>
4815
4816         * fileio.c (directory-sep-char): Escape backslashes.
4817
4818 1998-06-10  Hrvoje Niksic  <hniksic@srce.hr>
4819
4820         * event-stream.c: Fix docstring reference.
4821
4822 1998-06-12  Hrvoje Niksic  <hniksic@srce.hr>
4823
4824         * alloc.c (make_float): Remove useless initialization of `next'
4825         field.
4826         (make_pure_float): Ditto.
4827
4828         * lisp.h (struct Lisp_Float): Rename `next' to `__unused__next'.
4829
4830 1998-06-08  Kirill M. Katsnelson  <kkm@kis.ru>
4831
4832         * fileio.c (Fmake_directory_internal): Remove conditionals
4833         on WINDOWSNT when calling mkdir.
4834
4835         * ntproc.c: Deleted the following unused functions:
4836         register_child, reap_subprocess, sys_wait.
4837
4838         * nt.c (sys_rename): Ifzeroed this implementation.
4839         Deleted the following unused functions:
4840         sys_access, sys_chdir, sys_chmod, sys_creat, sys_link, sys_mkdir,
4841         sys_mktemp, sys_rmdir, sys_unlink, sys_close, sys_dup, sys_dup2,
4842         sys_read, sys_write.
4843         Merger sys_fopen and sys_open with sysdep.c implementation.
4844
4845         * sysdep.c: Removed MS-DOS code.
4846         (sys_rename): Deal with Microsoft rename weirdness.
4847         (sys_open): Implemented for Windows.
4848         (sys_fopen): Ditto.
4849         (sys_mkdir): Ditto.
4850
4851 1998-06-08  Kirill M. Katsnelson  <kkm@kis.ru>
4852
4853         * buffer.c (complex_vars_of_buffer): Removed %t description from
4854         the docstring.
4855
4856 1998-06-04  Rick Rankin  <Rick_Rankin-P15254@email.mot.com>
4857
4858         * scrollbar-msw.c: initialize the cbSize element of the
4859         SCROLLINFO struct before calling SetScrollInfo. WinNT seems
4860         to ignore the value of cbSize, but Win95 (and I presume Win98)
4861         appear to want it set to sizeof(SCROLLINFO).
4862
4863 1998-06-04  Kirill M. Katsnelson  <kkm@kis.ru>
4864
4865         * event-stream.c: Defined Qcancel_mode_internal.
4866         (syms_of_event_stream): defsymbol'ed it.
4867
4868         * events.h: Externed it.
4869
4870         * event-msw.c (mswindows_wnd_proc, WM_CANCELMODE): Added this handler.
4871
4872 1998-06-04  Oliver Graf <ograf@fga.de>
4873
4874         * frame-x.c (x_cde_destroy_callback): free the data
4875         (cde-start-drag-internal) corrected root position, 21.1 needs this
4876         hardcoded in Button events
4877         (offix-start-drag-internal) corrected root position
4878
4879 1998-06-03  Kirill M. Katsnelson  <kkm@kis.ru>
4880
4881         * process-nt.c (signal_cannot_launch): Use signal_simple_error()
4882         instead of error().
4883
4884 1998-06-03  Kirill M. Katsnelson  <kkm@kis.ru>
4885
4886         * dialog-msw.c (button_width): Removed `inline' from the function
4887         declaration.
4888
4889 1998-06-03  Rick Rankin  <Rick_Rankin-P15254@email.mot.com>
4890
4891         * frame-msw.c: add WS_VISIBLE flag to the first frame created.
4892         Note that adding this flag to subsequent frames causes problems.
4893
4894 1998-06-03  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
4895
4896         * glyphs-eimage.c (png_instantiate) move 'struct
4897         png_memory_storage tbr' out of nested block to avoid dangling
4898         reference
4899
4900 1998-06-02  Andy Piper  <andyp@parallax.co.uk>
4901
4902         * faces.h:
4903         * faces.c: rename 3d-object -> gui-element. add toolbar face which
4904         inherits from gui-element.
4905
4906         * glyphs-msw.c: use DIBitmaps for xbm bitmaps to be consistent
4907         with existing code, generate masks correctly.
4908
4909 1998-06-03  P. E. Jareth Hein  <jareth@camelot-soft.com>
4910
4911         * glyphs-eimage.c: Changed included header for gifs to use
4912         Gifreader instead of giflib.
4913
4914         * glyphs-x.c: removed the image-related functions that were
4915         moved into glyphs-eimage.
4916
4917 1998-06-02  David Bush  <david.bush@adnb.alcatel.com>
4918
4919         * glyphs.c (bitmap_to_lisp_data) Define XFree to be free
4920         if built without X Windows support.
4921
4922 1998-06-02  Hrvoje Niksic  <hniksic@srce.hr>
4923
4924         * fns.c (Fconcat): Synch docstring with new reality.
4925
4926 1998-06-03  SL Baur  <steve@altair.xemacs.org>
4927
4928         * frame.c: Remove reference to msdos.h (which is going away).
4929         Suggested by Hrvoje Niksic and Kirill Katsnelson.
4930
4931 1998-06-02  P. E. Jareth Hein  <jareth@camelot-soft.com>
4932
4933         * glyphs-eimage.c (jpeg_instantiate): Fix handling of
4934         grayscale images/
4935
4936
4937 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
4938
4939         * events.h: Fixed commentary about misc-user scrollbar events.
4940
4941         * scrollbar-x.c (x_update_vertical_scrollbar_callback): Use frame
4942         object as an event channel, instead of window object.
4943         (x_update_horizontal_scrollbar_callback): Ditto.
4944
4945 1998-05-29  Andy Piper  <andyp@parallax.co.uk>
4946
4947         * ntplay.c (play_sound_data_1) new function. convert alloca data
4948         to malloc if necessary.
4949         (play_sound_file): if the file is not in our path then convert to
4950         data and play.
4951
4952 1998-06-01  SL Baur  <steve@altair.xemacs.org>
4953
4954         * mule-mcpath.c (mc_chdir): Reverse parameters in call to memcpy.
4955         * msdos.c (Frecent_doskeys): Ditto.
4956
4957         * unexalpha.c (unexec): Reverse parameters in call to memcpy.
4958         Suggested by Reggie Perry <perry@zso.dec.com>
4959
4960         * buffer.h: Eliminate size in declaration.
4961
4962 1998-06-01  Olivier Galibert  <galibert@pobox.com>
4963
4964         * unexelfsgi.c (unexec): Cleanup n/nn and remove useless kludge.
4965
4966 1998-06-01  Kirill M. Katsnelson  <kkm@kis.ru>
4967
4968         * gui.c (gui_item_init): Changed the default value for config member
4969         from Qunbound to Qnil.
4970
4971 1998-06-01  Greg Klanderman  <greg@alphatech.com>
4972
4973         * indent.c (vmotion_pixels): Don't #define abs().
4974
4975 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
4976
4977         * s/windowsnt.h: Defined popen and pclose to be _popen and _pclose
4978         respectively.
4979
4980 1998-05-30  Andy Piper  <andyp@parallax.co.uk>
4981
4982         * glyphs.h: add xbm declarations.
4983
4984         * console.h: add xbm_instantiate_method device method.
4985
4986         * glyphs.c (check_valid_xbm_inline) (xbm_validate)
4987         (bitmap_to_lisp_data) (xbm_mask_file_munging) (xbm_normalize)
4988         (xbm_possible_dest_types): moved here from glyphs-x.c. use
4989         locate_pixmap_file device method and read_bitmap_data_from_file
4990         instead of XmuReadBitmapDataFromFile.
4991         (xbm_instatntiate): make a device method.
4992
4993         * glyphs-x.c: see glyphs.c changes. (read_bitmap_data_from_file)
4994         new function that just calls XmuReadBitmapDataFromFile.
4995         (x_xbm_instatntiate): device method from xbm_instantiate.
4996
4997         * glyphs-msw.c (read_bitmap_data) (NextInt)
4998         (read_bitmap_data_from_file): new functions copied from Xmu
4999         sources.
5000         (xbm_create_bitmap_from_data) from Ben <ben@666.com> convert
5001         inline data to an mswindows bitmap.
5002         (init_image_instance_from_xbm_inline) (xbm_instantiate_1)
5003         (mswindows_xbm_instantiate): mswindows-ized versions of the X
5004         functions.
5005
5006 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
5007
5008         * window.c (specifier_vars_of_window): Renamed `has_modeline-p' to
5009         `modeline-visible-p'.
5010         Declared specifier lisp variables at the beginning oh the file
5011         as static.
5012
5013         * procimpl.h (struct process_methods): Changed semantics of
5014         create_process method so it accepts lisp strings instead of
5015         char pointers.
5016
5017         * process.c (Fstart_process_internal): Moved building of
5018         unix style argv from here to process-unix.c, ...
5019
5020         * process-unix.c (unix_create_process): ... right here.
5021
5022         * process-nt.c (nt_create_process): Changed this function to
5023         support new semantics, so avoided a GC problem.
5024
5025         * events.c (Fmake_event): Document misc-user events properties.
5026         (Fmake_event): Do not allow arbitrary objects for channel property
5027         of misc-user events.
5028         (Fmake_event): Change misc-user event validation: it is function
5029         which is required, not button.
5030
5031         * event-msw.c (mswindows_user_event_p): Recognize misc user events as
5032         user events.
5033         (mswindows_enqueue_misc_user_event): Added function.
5034         (mswindows_bump_queue): Removed function.
5035         (mswindows_enqueue_magic_event): Support NULL HWND parameter.
5036         (mswindows_wnd_proc, WM_CLOSE): Use mswindows_enqueue_misc_user_event().
5037         (mswindows_wnd_proc, WM_EXITSIZEMOVE): Ditto.
5038         (emacs_mswindows_handle_magic_event): Handle XM_BUMPQUEUE, by doing
5039         really nothing, which is my personal favorite thing.
5040
5041         * console-msw.h: Removed prototype for mswindows_bump_queue().
5042         Added prototype for mswindows_enqueue_misc_user_event().
5043
5044         * menubar-msw.c (mswindows_handle_wm_command): Use
5045         mswindows_enqueue_misc_user_event().
5046
5047         * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
5048
5049         * dialog-msw.c (dialog_proc): Ditto.
5050
5051         * scrollbar-msw.c (mswindows_handle_scrollbar_event): Ditto.
5052          (mswindows_handle_scrollbar_event): Use frame, not window, for misc
5053         user events channel.
5054
5055 1998-05-29  Greg Klanderman  <greg@alphatech.com>
5056
5057         * window.c (Fwindow_displayed_text_pixel_height): was relying on
5058         incorrect semantics of vmotion_pixels which has been fixed.  don't
5059         use it anymore as it can't easily be used.
5060
5061         * indent.c (vmotion_pixels): fix off by one bug moving up.  also
5062         the motion was reported incorrectly if you tried to go past end of
5063         buffer.
5064
5065 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
5066
5067         * toolbar.h: Removed misleading commentary, as Martin suggested.
5068
5069 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
5070
5071         * lisp.h: Extern Qactivate_menubar_hook.
5072
5073         * menubar-msw.c (unsafe_handle_wm_initmenu_1): Pass correct value to
5074         run_hook ().
5075
5076 1998-05-29  Andy Piper  <andyp@parallax.co.uk>
5077
5078         * glyphs-msw.c: use BPLINE macro.
5079
5080         * select-msw.c (mswindows-selection-exists-p)
5081         (mswindows-delete-selection): doc string fixes.
5082
5083         * toolbar-msw.c (mswindows_output_toolbar): make disabled buttons
5084         unpressable. warning elimination.
5085
5086 1998-05-28  Martin Buchholz  <martin@xemacs.org>
5087
5088         * alloc.c (dbg_constants):
5089         * dbxrc:
5090         * gdbinit:
5091         Remove toolbar_data debugging code, since that lrecord has
5092         also been removed.
5093
5094 Wed May 27, 1998  Darryl Okahata  <darrylo@sr.hp.com>
5095
5096         * alloc.c: zap cached value of (user-home-directory), so that
5097           it's not undumped.
5098
5099         * buffer.c: From init_buffer(), separated out code that
5100           determined the initial directory for the *scratch* buffer, and
5101           put them into a function called "init_initial_directory()".
5102           The initial directory is now available as a global "char *"
5103           called initial_directory.
5104
5105         * buffer.h: Added extern entries for initial_directory[] and
5106           init_initial_directory().
5107
5108         * editfns.c: added new elisp function "user-home-directory",
5109         which basically returns getenv("HOME"), but attempts to use
5110         other values if $HOME isn't set.This may have to be tweaked in
5111         the future as, under Unix, "/" is used if $HOME isn't set (this
5112         probably should be set to the current directory).  To support
5113         this, a new C function, "get_home_directory()", now exists,
5114         which returns the "home directory", as a "char *" string.
5115
5116         * emacs.c: Rearrange NT initialization order so that
5117         environment/registry variables will be properly entered into
5118         Vprocess_enviroment.
5119
5120         * fileio.c: replaced egetenv("HOME") with calls to the new
5121           get_home_directory().
5122
5123         * lisp.h: Added function prototypes for uncache_home_directory()
5124           and get_home_directory(), along with lisp prototypes for
5125           Fuser_home_directory() and friends.
5126
5127         * nt.c: replaced getenv("HOME") with calls to the new
5128           get_home_directory().
5129
5130         * sysfile.h: for WINDOWSNT, #include <direct.h>, to suppress
5131           warnings about getcwd(), etc. not having prototypes.
5132
5133 1998-05-28  Kirill M. Katsnelson  <kkm@kis.ru>
5134
5135         * process-nt.c (send_signal): Emulate SIGHUP.
5136         (validate_signal_number): Ditto.
5137
5138         * event-msw.c (mswindows_wnd_proc, WM_KEYDOWN): Unconditionally
5139         remove MOD_SHIFT from ASCII characters.
5140         (mswindows_wnd_proc, WM_KEYDOWN): Do not activate the menubar when
5141         F10 is pressed.
5142
5143 1998-05-24  Oliver Graf <ograf@fga.de>
5144
5145         * frame-x.c (cde-start-drag-internal): added filename and multi-
5146         data transfers
5147         (x_cde_convert_callback) dito
5148
5149 1998-05-26  Oliver Graf <ograf@fga.de>
5150
5151         * frame-x.c: include event-mod.h also with CDE
5152         (x_cde_convert_callback) made the thing working
5153         (cde-start-drag-internal) also debugging
5154
5155 1998-05-25  Hans Guenter Weigand  <hgweigand@wiesbaden.netsurf.de>
5156
5157         * m/sparc.h:
5158         * getloadavg.c:
5159         * malloc.c:
5160         * unexec.c:
5161         * mem-limits.h:
5162           - add __OpenBSD__ where __NetBSD__ was found.
5163           - TODO: replace platform-specific conditional compilation by
5164             feature tests in configure.in.
5165
5166 1998-05-15  Greg Klanderman  <greg@alphatech.com>
5167
5168         * window.c (Fwindow_displayed_text_pixel_height): New function.
5169         (syms_of_window): DEFSUBR it.
5170
5171         * indent.c (Fvertical_motion_pixels): New function - request
5172         movement in pixels.
5173         (vmotion_pixels): helper.
5174         (syms_of_indent): DEFSUBR.
5175         * lisp.h: declaration for vmotion_pixels().
5176
5177         * indent.c (Fvertical_motion): Add optional third argument PIXELS,
5178         to request returning motion in pixels.
5179         (Fvertical_motion_pixels): Remove, functionality merged into
5180         Fvertical_motion.
5181         * window.c (window_scroll): call Fvertical_motion with 3 arguments.
5182         (Fmove_to_window_line): ditto.
5183         * lisp.h: Change declaration for Fvertical_motion.
5184
5185         * window.c: rename window-text-pixel-{height,width,edges} to
5186         window-text-area-pixel-*.
5187
5188 1998-05-26  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
5189
5190         * tooltalk.c (vars_of_tooltalk) added staticpro for
5191         Tooltalk_Message_plist_str and Tooltalk_Pattern_plist_str
5192
5193 1998-05-27  Andy Piper  <andyp@parallax.co.uk>
5194
5195         * faces.c: create a new 3d_object_face, make modeline and
5196         vertical_divider faces fallback to this rather than the default.
5197
5198 1998-05-21  Andy Piper  <andyp@parallax.co.uk>
5199
5200         * s/cygwin32.h: define charsets for cygwin.
5201
5202 1998-05-25  Andy Piper  <andyp@parallax.co.uk>
5203
5204         * toolbar-msw.c (mswindows_output_toolbar): fix up button sizes
5205         and coordinates. resize bitmaps if we have already settled on a
5206         different size.
5207
5208         * glyphs-msw.c (xpm_to_eimage): add ';' for mswindows compiler.
5209
5210 1998-05-25  Hrvoje Niksic  <hniksic@srce.hr>
5211
5212         * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
5213
5214         * menubar-msw.c (mswindows_handle_wm_command): Ditto.
5215
5216         * gui.h: Ditto.
5217
5218         * gui-x.c (popup_selection_callback): Ditto.
5219
5220         * dialog-msw.c (dialog_proc): get_callback -> get_gui_callback.
5221
5222         * gui.c (get_callback): Renamed to get_gui_callback.
5223
5224 1998-05-17  Martin Buchholz  <martin@xemacs.org>
5225
5226         * glyphs.h: order rearrangement.
5227
5228         * device-tty.c (tty_asynch_device_change): Warning suppression.
5229         * device-x.c (x_device_system_metrics): Warning suppression.
5230         Make Doc strings consistent with coding standards.
5231
5232 1998-05-24  Martin Buchholz  <martin@xemacs.org>
5233
5234         * general.c: multiple definition of `Qicon'.  general.c seems
5235           like a good home for Qicon.
5236
5237 1998-05-20  Kirill M. Katsnelson  <kkm@kis.ru>
5238
5239         * This patch is to fix compilation warnings under Windows.
5240
5241         * s/windowsnt.h: Encapsulate getpid with sys_getpid.
5242         Added prototypes for FSF inherited functions, with which XEmacs is
5243         sprinkled thoroughly.
5244         Removed some #if 0 code. Bracketed some more definitions, probably
5245         related to Visual C versions prior to 4 (we do not support them).
5246
5247         * sysfloat.h (logb): Finally, get logb() prototyped.
5248
5249         * sysfile.h: Added Windows specific includes.
5250         Removed old Windows specific code bracketed with #if 0.
5251
5252         * sysdep.h: Added prototype for xrealpath().
5253
5254         * sysdep.c (sys_getpid): Added function, to support '95 negative pids.
5255
5256         * symsinit.h: Added prototypes for syms_of_dired_mswindows,
5257         vars_of_dired_mswindows and init_ntproc (Grrr).
5258
5259         * realpath.c: Added Windows specific include files.
5260         (xrealpath): Conditionalized declaration of some auto variables on
5261         S_IFLNK, to avoid warnings.
5262
5263         * ntproc.c: Disabled some compiler warnings. This file is going to
5264         die, so I have not cleaned it up much.
5265         (set_process_dir): Const parameter.
5266         (Fwin32_short_file_name): Down CHECK_* macros to one argument.
5267         (Fwin32_long_file_name): Ditto.
5268         (Fwin32_set_process_priority): Ditto. Why didn't I remove these
5269         three functions?
5270
5271         * nt.h: Added prototypes for set_process_dir and convert_time.
5272
5273         * nt.c: More include files.
5274         (getpwnam): Consted char* argument.
5275         (get_emacs_configuration): Const return value.
5276         (opendir): Const argument.
5277         (stat): Casted converstion long->short.
5278         (stat): Removed ad hoc and questionable support for non-MSC compile.
5279         (sys_pipe): Removed unused auto variable.
5280         (_sys_read_ahead): Removed calls to DebPrint.
5281         (sys_read): Ditto, in 2 places.
5282         (term_ntproc): Added unused int parameter to signal handler, to
5283         avoid a warning when compiling a call to signal().
5284         (msw_sigset): Properly return old signandler or NULL instead of void.
5285
5286         * floatfns.c (Flogb): Casted arguments to unary minus to signed.
5287
5288         * gmalloc.c (morecore): Ditto.
5289         (_free_internal): Ditto.
5290
5291         * lread.c (parse_integer): Ditto.
5292
5293         * dired-msw.c: Added several include files.
5294
5295         * cmdloop.c (Fcommand_loop_1): Added Microsoft C to the Big List
5296         of Compilers to Shut Up.
5297
5298         * callproc.c: Added #includes to suppress warnings under Windows.
5299         (init_callproc): Removed #if0'ed code and unused variables.
5300
5301 1998-05-25  Andy Piper  <andyp@parallax.co.uk>
5302
5303         * device-msw.c (mswindows_device_system_metrics): do planes in a
5304         way consistent with X.
5305
5306         * glyphs-msw.c (mswindows_initialize_image_instance_mask): don't
5307         use SetPixel, use DIBits functions.
5308         (xpm_to_eimage): frob colors more closely like xpm deos.
5309
5310         * toolbar-msw.c: only resize bitmaps when shrinking. Adjust look
5311         to be closer to X version.
5312
5313         * event-msw.c: use tooltip string directly.
5314
5315         * redisplay-msw.c: reinstate Kirill's bg pixmap change.
5316
5317         * objects-msw.c: frob rgb colors that only Kyle uses.
5318
5319         * dialog-msw.c (button_width): INLINE -> inline.
5320
5321 1998-05-23  SL Baur  <steve@altair.xemacs.org>
5322
5323         * getloadavg.c (getloadavg): Fix typo.
5324
5325 1998-05-23  Kirill M. Katsnelson  <kkm@kis.ru>
5326
5327         * objects-msw.c (mswindows_initialize_font_instance): Added support
5328         for font character sets.
5329         Replaced 'XXX' with '####' in comments throughout the file.
5330
5331 1998-05-23  Kirill M. Katsnelson  <kkm@kis.ru>
5332
5333         * emacs.c (main_1): Added calls to vars_of_dialog_mswindows() and
5334         console_type_create_dialog_mswindows(), to initialize Windows dialog
5335         support.
5336
5337         * symsinit.h: Prototyped the above functions.
5338
5339         * dialog-x.c (x_popup_dialog_box): Moved dialog descriptor consistency
5340         checks to dialog.c...
5341
5342         * dialog.c (Fpopup_dialog_box): ...right here. Added more checks: a
5343         device must support dialog boxes, and the descriptor must supply at
5344         least one button.
5345
5346         * dialog-msw.c: New file, dialogs for Windows.
5347
5348 1998-05-21  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
5349
5350         * eldap.c (ldap_search_unwind): Return Qnil instead of nothing
5351         (Fldap_search_internal): Removed unused variable `err'
5352
5353         * eldap.h: Moved Lisp_LDAP declaration here instead of using a
5354         forward declaration
5355
5356 1998-05-17  Martin Buchholz  <martin@xemacs.org>
5357
5358         * eldap.h: eldap.[ch] should never be used unless HAVE_LDAP is
5359         defined.  Therefore there is no need to handle the case when
5360         HAVE_LDAP is undefined.  Similarily, there is no reason to have
5361         any code wrapped within `#ifdef emacs', since this code is only
5362         useful within an emacs.  This simplifies the code significantly.
5363
5364         * inline.c: Include eldap.h only if HAVE_LDAP.
5365         * inline.c: Don't bother including TT_C_H_PATH, since tooltalk.h
5366         already does that.
5367
5368 1998-05-21  Kirill M. Katsnelson  <kkm@kis.ru>
5369
5370         * unexnt.c (copy_executable_and_dump_data_section): Suppress
5371         printing dump stats when building without DEBUG_XEMACS.
5372         (dump_bss_and_heap): Ditto.
5373
5374 1998-05-21  Andy Piper  <andyp@parallax.co.uk>
5375
5376         * gnuclient.c: don't suppress window system if there is no display
5377         and we are running under mswindows. send 'mswindows device type if
5378         we are in this situation.
5379
5380 1998-05-20  Andy Piper  <andyp@parallax.co.uk>
5381
5382         * general.c:
5383         * lisp.h: Qbitmap, Qcursor, Qicon moved here from glyphs-msw.c.
5384
5385         * glyphs-msw.c: change cursor imgae type name to resource. Fix
5386         some nits.
5387
5388 1998-05-20  Kirill M. Katsnelson  <kkm@kis.ru>
5389
5390         * EmacsFrame.c (Xt_StringToScrollBarPlacement):  Added support for
5391         {top,bottom}-{left,right} values in addition to
5392         {top,bottom}_{left,right}.
5393
5394 1998-05-18  Hrvoje Niksic  <hniksic@srce.hr>
5395
5396         * fileio.c (Fmake_temp_name): Remove unreached code.
5397
5398         * process-nt.c (validate_signal_number): Use
5399         signal_simple_error().
5400
5401 1998-05-19  Martin Buchholz  <martin@xemacs.org>
5402
5403         * unexhp9k800.c:
5404         * sound.c (vars_of_sound):
5405         * sysdep.c (reset_sigio_on_device):
5406         * window.c (window_bottom_gutter_height):
5407         unexhp9k800.c:258: warning: implicit declaration of function
5408         `calculate_checksum'
5409         sound.c:604: warning: implicit declaration of function `vars_of_hpplay'
5410         sysdep.c:1012: warning: unused variable `owner'
5411         window.c:993: warning: `window_right_toolbar_width' defined but not used
5412
5413 1998-05-19  Andy Piper  <andyp@parallax.co.uk>
5414
5415         * glyphs-msw.c (mswindows_create_resized_mask)
5416         (mswindows_create_resized_bitmap): new funnctions split out from
5417         mswindows_resize_dibitmap_instance.
5418
5419         * glyphs-msw.h: declare new resize functions.
5420
5421         * toolbar-msw.c (mswindows_output_toolbar): use new bitmap resize
5422         functions so that the original bitmaps are preserved.
5423
5424         * sheap.c: fixup static heap exhausted error to avoid FAQs.
5425
5426         * redisplay-msw.c (mswindows_output_blank): fixup brush from bg
5427         color if we are trying to output 0 depth bg pixmap.
5428
5429         * scrollbar-msw.c: warning elimination.
5430
5431 1998-05-18  Martin Buchholz  <martin@xemacs.org>
5432
5433         * frame-x.c (x_update_frame_external_traits): Start preprocessor
5434         directives in column 1.
5435
5436         * search.c (skip_chars): Avoid using xzero with arrays, since some
5437         compilers get confused by the construct &array.
5438
5439 1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
5440
5441         * objects-msw.h:
5442         * objects-msw.c: Changed the charset value for a new font from
5443         "don't care" to "ansi".
5444
5445         * glyphs-msw.c (convert_EImage_to_DIBitmap): Warnings fix.
5446
5447 1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
5448
5449         * event-msw.c (mswindows_wnd_proc, WM_KEYDOWN): Do not clear shift
5450         modifier on control chars.
5451         Use IsCharAlpha() instead of isaplha().
5452
5453 1998-05-19  Kazuyuki IENAGA <ienaga@jsys.co.jp>
5454
5455         * s/freebsd.h: FreeBSD 2.2.6 now supports setlocale(LC_ALL, "").
5456
5457 1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
5458
5459         * objects-msw.c (mswindows_initialize_font_instance): Use ANSI
5460         charset when creating font.
5461         (mswindows_initialize_color_instance): Do not create brush along
5462         with a color.
5463         (mswindows_finalize_color_instance): Do not delete it then.
5464
5465         * objects-msw.h (struct mswindows_color_instance_data): Removed
5466         brush slot, and corresponding accessor macro.
5467
5468 1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
5469
5470         * toolbar.c: Removed toolbar_data lrecord implementation.
5471         (mark_frame_toolbar_buttons_dirty): Replase usage of toolbar_data
5472         with toolbar_buttons (via FRAME_TOOLBAR_BUTTONS).
5473         (compute_frame_toolbar_buttons): Ditto.
5474         (CHECK_TOOLBAR): Ditto.
5475         (set_frame_toolbar): Removed allocation of toolbar_data lrecord.
5476         (update_frame_toolbars): Do not check for changed buffer
5477         here. Toolbar information is provided by cached specs in
5478         windows. The check for buffer is eliminated becuase toolbars are
5479         marked changed in set_frame_selected_window() in frame.c
5480         Added check for changed toolbars geometry.
5481         (compute_frame_toolbars_data): Removed unused second parameter;
5482         Adjusted callers of this static function throughout the file.
5483         (init_frame_toolbars): Initialize current_toolbar_size.
5484         (update_frame_toolbars): Use DEVICE_SUPPORTS_TOOLBARS_P instead of
5485         what is its current expansion, for clarity.
5486         (init_frame_toolbars): Ditto.
5487         (init_device_toolbars): Ditto.
5488         (init_global_toolbars): Ditto.
5489
5490         * toolbar.h: Removed definition of toolbar_data lrecord.
5491         Added accessor macros FRAME_TOOLBAR_BUTTONS and
5492         FRAME_CURRENT_TOOLBAR_SIZE.
5493         Added macro DEVICE_SUPPORTS_TOOLBARS_P.
5494
5495         * toolbar-x.c (x_output_toolbar): The same change as in
5496         toolbar-msw.c
5497         (x_output_toolbar): Ditto.
5498         (x_redraw_exposed_toolbar): Ditto.
5499
5500         * toolbar-msw.c (mswindows_output_toolbar): Retrieve current
5501         buttons from toolbar_buttons using FRAME_TOOLBAR_BUTTONS macro.
5502         (mswindows_output_toolbar): Ditto.
5503         (mswindows_output_toolbar): Ditto.
5504
5505         * frame.c (mark_frame): Removed marking of arrays, according to
5506         frameslots.h change.
5507         (nuke_all_frame_slots): Ditto.
5508         (set_frame_selected_window): Mark toolbars changed when
5509         last_nonminibuf_window changes.
5510
5511         * frame.h (struct frame): Moved some slots to frameslots.h.
5512         Added current_toolbar_size array.
5513         Changed references from toolbar_data to toolbar_buttons in macros
5514         FRAME_RAW_THEORETICAL_TOOLBAR_VISIBLE,
5515         FRAME_RAW_THEORETICAL_TOOLBAR_SIZE and
5516         FRAME_RAW_THEORETICAL_TOOLBAR_BORDER_WIDTH.
5517
5518         * frameslots.h: Added macro MARKED_SLOT_ARRAY a la winslots.h
5519         Moved arrays of lisp objects here from frame.h: toolbar_size,
5520         toolbar_visible_p, toolbar_border_width.
5521         Removed toolbar_data slot and added toolbar_buttons.
5522
5523 1998-05-17  Kirill M. Katsnelson  <kkm@kis.ru>
5524
5525         * symsinit.h: Externed syms_of_process_nt()
5526
5527         * emacs.c (main_1): Call syms_of_process_nt()
5528
5529         * process-nt.c: Quote process arguments by a call to Lisp function
5530         `nt-quote-process-args'.
5531         (syms_of_process_nt): New function.
5532         (nt_send_process): Flush data stream after each write, to avoid
5533         leaving buffered data.
5534         (nt_send_process): When blocked on process output, wait for
5535         process to slurp more for progressively increasing time intervals.
5536
5537 1998-05-17  Martin Buchholz  <martin@xemacs.org>
5538
5539         * window.c (have_undivided_common_edge): Make file-local function
5540         static.
5541         (map_windows): Return 0 if all map functions successful.
5542         Fix typos.
5543
5544         * winslots.h: Use unlikely names for local variables in macros to
5545         avoid shadowing warnings.
5546
5547 1998-05-17  Andy Piper  <andyp@parallax.co.uk>
5548
5549         * toolbar-msw.c (mswindows_output_toolbar): hash on toolbar width
5550         so that we re-output if the toolbar size has changed.
5551
5552 1998-05-17  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
5553
5554         * s/aix4-2.h (ALIGN_DATA_RELOC): Undefined to support new unexaix.c.
5555
5556         * s/aix3-1.h (ALIGN_DATA_RELOC): Defined to support new unexaix.c.
5557
5558         * unexaix.c: Massive cleanup and support of AIX 4.2 (and hopefully
5559         greater).
5560
5561 1998-05-16  Kirill M. Katsnelson  <kkm@kis.ru>
5562
5563         * glyphs-msw.c: Defined OEMRESOURCE before including windows.h to
5564         get bitmap manifest constants defined.
5565
5566         * console-msw.h: Include system files in angle brackets, not in
5567         quotes.
5568
5569         * window.c (specifier_vars_of_window): Fixed a typo in
5570         `vertical-divider-line-width' docstirng.
5571
5572 1998-05-16  Olivier Galibert  <galibert@pobox.com>
5573
5574         * line-number.c (delete_invalidate_line_number_cache): Use an
5575         EMACS_INT.
5576         (buffer_line_number): Remove dangerous, plain wrong when using
5577         64bits emacs ints, cast.
5578
5579         * insdel.c (buffer_delete_range): Use an EMACS_INT.
5580
5581         * cmds.c (Fforward_line): Use EMACS_INTs.
5582
5583         * search.c (bi_scan_buffer): Change to use EMACS_INTs.
5584         (scan_buffer): Ditto.
5585         (bi_find_next_newline_no_quit): Remove useless cast.
5586         (find_next_newline_no_quit): Ditto.
5587         (find_next_newline): Ditto.
5588         (find_before_next_newline): Use an EMACS_INT.
5589
5590         * lisp.h: Change scan_buffer to pass EMACS_INTs.
5591
5592 1998-05-16  Hrvoje Niksic  <hniksic@srce.hr>
5593
5594         * menubar-msw.c (mswindows_handle_wm_command): Ditto.
5595
5596         * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
5597
5598         * gui-x.c (popup_selection_callback): Use it.
5599
5600         * gui.h (get_callback): Declare it.
5601
5602         * gui.c (get_callback): New function.
5603
5604 1998-05-15  SL Baur  <steve@altair.xemacs.org>
5605
5606         * window.c (have_undivided_common_edge): Guard scrollbar specific
5607         stuff.
5608         (window_needs_vertical_divider_1): Ditto.
5609
5610 1998-05-16  Hrvoje Niksic  <hniksic@srce.hr>
5611
5612         * emacs.c (decode_path): Eliminate compiler warning.
5613         (Fdecode_path): Renamed to Fsplit_path.
5614         (Fsplit_string_by_char): New function.
5615
5616 1998-05-14  Damon Lipparelli  <lipp@primus.com>
5617
5618         * winslots.h: close comment
5619
5620 1998-05-16  Kirill M. Katsnelson  <kkm@kis.ru>
5621
5622         * callproc.c: Removed declared and unused variable Qbuffer_file_type.
5623
5624         * bufslots.h: Removed buffer_file_type slot.
5625
5626         * buffer.c (complex_vars_of_buffer): Removed buffer_file_type from
5627         buffer local flags.
5628         (complex_vars_of_buffer): Removed buffer-file-type variable and
5629         its default reference.
5630
5631 1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
5632
5633         * faces.c (complex_vars_of_faces): Defined
5634         Vvertical_divider_face.
5635         (vars_of_faces): Staticpro it.
5636
5637         * faces.h: Externed Vvertical_divider_face.
5638
5639         * redisplay-x.c (x_output_vertical_divider): Use
5640         Vvertical_divider_face to draw the divider instead of modeline
5641         face.
5642
5643         * redisplay-msw.c (mswindows_output_vertical_divider): Draw
5644         divider face using Vvertical_divider_face background.
5645         Fix drawing spacing gaps around the divider.
5646
5647 1998-05-14  Didier Verna  <verna@inf.enst.fr>
5648
5649         * redisplay-x.c (x_output_vertical_divider): removed hard-wired
5650         values for the vertical divider line width and spacing. Use the
5651         cached values from the window structure instead.
5652         (x_divider_width): ditto.
5653
5654         * window.c (specifier_vars_of_window): new specifiers:
5655         vertical-divier -line-width and -spacing.
5656         (vertical_divider_global_width_changed): formerly known as
5657         vertical_divider_shadow_thickness_changed.
5658
5659         * winslots.h: new slots: vertical_specifier _line_width and
5660         _spacing. Plus corrected a comment typo.
5661
5662 1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
5663
5664         * window.h: Declared window_divider_width().
5665
5666         * console-stream.c (stream_divider_width): Removed method.
5667         (console_type_create_stream): And declaration for it.
5668
5669         * redisplay.c (pixel_to_glyph_translation): Use
5670         window_divider_width() instead of divider_width redisplay method.
5671         (pixel_to_glyph_translation): Fix top divider edge calculation
5672         when scrollbar is on top.
5673
5674         * window.c (window_divider_width): New function, an outphaser for
5675         divider_width redisplay method.
5676         (window_right_gutter_width): Use it.
5677         (specifier_vars_of_window): For vertical-divider-{spacing,line-width}
5678         specifiers, set fallback values differently on TTYs, and document
5679         the behavior of these on TTYs in the docstrings.
5680
5681         * scrollbar.c (update_scrollbar_instance): Use
5682         window_divider_width() instead of divider_width redisplay method.
5683
5684         * console.h (struct console_methods): Removed divider_width_method.
5685
5686         * redisplay-tty.c (tty_divider_width): Removed device method.
5687         (console_type_create_redisplay_tty): Removed definition for it.
5688         (tty_output_vertical_divider): Respect the value returned by
5689         window_divider_width thus divider line width specification.
5690
5691         * redisplay-msw.c (mswindows_divider_width): Removed device method.
5692         (console_type_create_redisplay_mswindows): Removed definition for it.
5693         (mswinodws_output_vertical_divider): Respect the value returned by
5694         window_divider_width thus divider line width specification.
5695
5696 1998-05-15  Andy Piper  <andyp@parallax.co.uk>
5697
5698         * toolbar-msw.c: guess toolbar frame size a bit more accurately.
5699
5700 1998-05-15  Andy Piper  <andyp@parallax.co.uk>
5701
5702         * glyphs-msw.c: resource loading implementation.
5703         (cursor_normalize): new function.
5704         (cursor_validate): ditto.
5705         (cursor_instantiate): ditto.
5706         (cursor_name_to_resource): ditto.
5707         (cursor_possible_dest_types): ditto.
5708         (check_valid_symbol): ditto.
5709         (check_valid_string_or_int): ditto.
5710
5711 1998-05-14  Martin Buchholz  <martin@xemacs.org>
5712
5713         * sysdep.c (tty_init_sys_modes_on_device): Treat VSUSP just like
5714         VINTR and VQUIT.
5715
5716         * process-unix.c (process_signal_char): Use VSUSP instead of
5717         non-standard VSWTCH.  Always prefer VSUSP to VSWTCH.
5718
5719 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
5720
5721         * specifier.c (specifier_instance): Change locale precedence of
5722         instantiation so window locale has higher priority than buffer
5723         locale.
5724         (Fspecifier_instance): Reflect this in docstring.
5725         (Fadd_spec_list_to_specifier): Ditto.
5726         (Fadd_spec_to_specifier): Ditto.
5727         (Fremove_specifier): Ditto.
5728
5729 1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
5730
5731         ** Dialog separation into a device method from Andy Piper
5732
5733         * emacs.c (main_1): Call console_type_create_dialog_x().
5734
5735         * dialog-x.c (x_popup_dialog_box): Old Fpopup_dialog_box converted
5736         into this device method.
5737         (console_type_create_dialog_x): New function.
5738
5739         * dialog.c (Fpopup_dialog_box): New function.
5740         (syms_of_dialog): Defsubr it.
5741
5742         * console.h (struct console_methods): Declared
5743         popup_dialog_box_method().
5744
5745         * symsinit.h: Defined console_type_create_dialog_{x,mswindows}
5746
5747 1998-05-14  Oliver Graf <ograf@fga.de>
5748
5749         * dragdrop.c (vars_of_dragdrop): dragdrop-protocols created
5750         * frame-x.c (x_cde_transfer_callback): checked for merge errors
5751
5752 1998-05-13  Oliver Graf <ograf@fga.de>
5753
5754         * dragdrop.c (vars_of_dragdrop): provide dragdrop-api
5755
5756 1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
5757
5758         * console.h (device_metrics): Removed dbcs, input-method-editor
5759         and right-to-left metrics.
5760
5761         * device.c (Fdevice_system_metric): Ditto.
5762         (Fdevice_system_metrics): Ditto.
5763         (syms_of_device): Ditto.
5764         (Fdevice_system_metric): Swapped DEVICE and METRIC parameters back
5765         again.
5766
5767 1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
5768
5769         * line-number.h (mark_line_number_cache): Remove unused
5770         declaration.
5771
5772         * line-number.c (LINE_NUMBER_FAR): Increase to 32768.
5773         (get_nearest_line_number): Simplify.
5774         (add_position_to_cache): Make the old marker point nowhere.
5775
5776 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
5777
5778         ** Renamed window-divider-map => vertical-divider-map
5779         and event-over-divider-p => event-over-vertical-divider-p,
5780         in the following files/functions:
5781         * events.h:
5782         * events.c (Fevent_over_divider_p):
5783         * keymap.c (get_relevant_keymaps):
5784         (vars_of_keymap):
5785
5786         * redisplay.h (OVER_V_DIVIDER): Renamed so from OVER_DIVIDER.
5787
5788         * redisplay.c (pixel_to_glyph_translation): Use OVER_V_DIVIDER.
5789
5790 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
5791
5792         * window.c (vertical_divider_changed_in_window): Renamed so.
5793         (specifier_vars_of_window): Defined Vvertical_divider_draggable_p.
5794         (window_needs_vertical_divider_1): Decide whether we need it based
5795         on the value of the above specifier. If separators are unwanted,
5796         put them only if there's no scrollbar between this window and its
5797         right neighbor.
5798         (have_undivided_common_edge): New function, helper for the above.
5799         (window_needs_vertical_divider): Return either a cached value,
5800         or clauclate and cache one.
5801         (invalidate_vertical_divider_cache_in_window): Implemented.
5802         (map_windows): Changed return type to int, return the value from
5803         MAPFUN.
5804
5805         * window.h: Prototype invalidate_vertical_divider_cache_in_window.
5806         (struct window): Added need_vertical_divider_p and
5807         need_vertical_divider_valid_p.
5808
5809         * winslots.h: Added vertical_divider_draggable_p slot.
5810
5811         * scrollbar.c (vertical_scrollbar_changed_in_window): Implemented.
5812         (specifier_vars_of_scrollbar): Used it in all vertical specifiers.
5813
5814         * frame.c (invalidate_vertical_divider_cache_in_frame): New function.
5815
5816         * frame.h (MARK_FRAME_WINDOWS_STRUCTURE_CHANGED): Call
5817         invalidate_vertical_divider_cache_in_frame().
5818         Prototype it.
5819
5820 1998-05-14  Andy Piper  <andyp@parallax.co.uk>
5821
5822         * toolbar-msw.c: provide correct parameters to TB_SETROWS.
5823
5824         * glyphs-msw.c (mswindows_initialize_image_instance_mask): size
5825         masks correctly and don't select 0.
5826
5827 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
5828
5829         * winslots.h: New file, declaration of some struct window and
5830         struct saved_window members.
5831
5832         * window.h (struct window): Include it, with required preprocessor
5833         magic.
5834
5835         * window.c (mark_window): Ditto.
5836         (allocate_window): Ditto.
5837         (struct saved_window): Ditto.
5838         (mark_window_config): Ditto.
5839         (saved_window_equal): Ditto.
5840         (Fset_window_configuration): Ditto.
5841
5842 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
5843
5844         * redisplay-msw.c (mswindows_output_vertical_divider): Syntax fix.
5845
5846 1998-05-12  Didier Verna  <verna@inf.enst.fr>
5847
5848         * redisplay-x.c (x_output_vertical_divider): draw shadows around
5849         the divider line. The shadow thickness is currently
5850         hard-wired. This will probably be turned into a specifier soon.
5851
5852 1998-05-12  Didier Verna  <verna@inf.enst.fr>
5853
5854         * console.h (struct console_methods): the divider_width console
5855         method now requires a struct window * argument.
5856
5857         * redisplay-x.c (x_divider_width): ditto. Plus remove
5858         X_DIVIDER_WIDTH, X_DIVIDER_SHADOW_THICKNESS.
5859         (x_output_vertical_divider): give a depressed look when the shadow
5860         thickness is negative.
5861
5862         * console-stream.c (stream_divider_width): pass a struct window *
5863         argument.
5864
5865         * redisplay-tty.c (tty_divider_width): ditto.
5866
5867         * window.c (window_right_gutter_width): totdi.
5868
5869         * redisplay.c (generate_modeline): ittod.
5870
5871         * scrollbar.c (update_scrollbar_instance): ttido.
5872
5873         * redisplay-msw.c (mswindows_divider_width): ottid.
5874         WARNING: this enables to compile, but the feature is not functional.
5875
5876         * window.h (struct window): new field
5877         vertical_divider_shadow_thickness.
5878
5879         * window.c (specifier_vars_of_window): new specifier
5880         vertical-divider-shadow-thickness.
5881         (vertical_divider_shadow_thickness_changed): new function to
5882         inform redisplay that the window has changed.
5883         (mark_window): handle new field vertical_divider_shadow_thickness
5884         from struct window.
5885         (allocate_window): ditto.
5886         (saved_window_equal): toddi.
5887         (Fset_window_configuration): totid.
5888         (save_window_save): ttdio.
5889         (struct saved_window): new field vertical_divider_shadow_thickness.
5890
5891 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
5892
5893         * device-msw.c (mswindows_device_system_metrics): Support a deluge
5894         of metrics.
5895
5896 1998-05-12  Oliver Graf <ograf@fga.de>
5897
5898         * frame-x.c (x_cde_transfer_callback): fixed for the new protocol
5899         * event-Xt.c (x_event_to_emacs_event): C++ compability
5900
5901 1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
5902
5903         * emacs.c (Fdecode_path): Default SEPCHAR to value of
5904         path-separator.
5905
5906 1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
5907
5908         * emacs.c (vars_of_emacs): Do it here; change the meaning of
5909         Vpath_separator.
5910
5911         * fileio.c (vars_of_fileio): Don't define Vpath_separator here.
5912
5913 1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
5914
5915         * emacs.c (decode_path_1): New function.
5916         (decode_path): Use it.
5917         (Fdecode_path): Renamed from Fdecode_path_internal; use
5918         decode_path_1.
5919
5920 1998-05-12  Hrvoje Niksic  <hniksic@srce.hr>
5921
5922         * macros.c (Fzap_last_kbd_macro_event): New function.
5923         (Fend_kbd_macro): Remove REMOVE_LAST kludge.
5924
5925 1998-05-10  Andy Piper  <andyp@parallax.co.uk>
5926
5927         * redisplay-msw.c (mswindows_output_dibitmap_region): make sure
5928         multiple bitmaps are output vertically as well as horizontally.
5929         * (mswindows_output_dibitmap): don't cope with bitmap boundaries
5930         crossing lines this is handled by
5931         mswindows_output_dibitmap_region.
5932
5933 1998-05-12  Martin Buchholz  <martin@xemacs.org>
5934
5935         * inline.c: Include eldap.h
5936
5937         * menubar-x.c (x_update_frame_menubar_internal):
5938         Remove: unused variable `container'
5939
5940 1998-05-11  Martin Buchholz  <martin@xemacs.org>
5941
5942         * s/aix4.h: Allow AIX 4.3 XEmacs to compile cleanly.
5943         Unfortunately, the resulting temacs still cannot dump.
5944
5945         * symbols.c (symbol_is_constant):
5946         (verify_ok_for_buffer_local):
5947         -Wswitch Warning suppression - add default case to switches.
5948
5949         * redisplay.c (decode_mode_spec): Remove unused variables,
5950         Replace Fcoding_system_property (codesys, Qmnemonic) with
5951         XCODING_SYSTEM_MNEMONIC (codesys);
5952         Fcoding_system_property is for users.
5953
5954         * buffer.c:
5955         * fileio.c:
5956         * lread.c:
5957         * xselect.c:
5958         Change empty docstrings into no doc strings at all.
5959         Fix bogus FSF-format docstrings.
5960
5961         * extents.c:
5962         Standardize docstrings.
5963
5964         * floatfns.c:
5965         Explain problems with matherr.
5966
5967         * glyphs.c:  make DEFUNs etags-readable, i.e. single-line
5968
5969         * syssignal.h:
5970         if BROKEN_SIGIO, then SIGIO wants to be undefined.
5971         if SIGIO and not SIGPOLL, SIGPOLL wants to be SIGIO.\
5972         Fix the weird resultant interaction (causes windows problems)
5973
5974         * gdbinit:
5975         * dbxrc:
5976         Take new EMACSBOOTSTRAPLOADPATH into account.
5977         Update documentation strings
5978
5979         * Makefile.in.in:
5980         - Adjust for luser's CDPATH being set to something weird.
5981         - Take into account bash 2.02's tendency to print the cwd when
5982           using CDPATH.  Always use `cd ./foo' instead of `cd foo'.
5983         - fix the run-temacs target to use $(DUMPENV)
5984         - fix the run-puremacs target to use $(DUMPENV)
5985         - fix the `depend' target to properly $(RM) the right files
5986         - Generate a better TAGS file for XEmacs' lisp code using
5987           hand-crafted regexps.
5988         - Use standard coding conventions for modules/Makefile.in
5989
5990 1998-05-12  Didier Verna  <verna@inf.enst.fr>
5991
5992         * redisplay.c: removed the scrolling modeline code that didn't
5993         make it for 21.0. To be continued ...
5994
5995 1998-05-13  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
5996
5997         * emacs.c (Fdecode_path_internal): Removed bogus handling of nil
5998         and empty string inputs.
5999
6000 1998-05-12  Hrvoje Niksic  <hniksic@srce.hr>
6001
6002         * redisplay-x.c (x_output_vertical_divider): Fixed typo.
6003
6004 1998-05-10  Oliver Graf <ograf@fga.de>
6005
6006         * event-stream.c (enqueue_misc_user_event_pos): created
6007         * lisp.h (enqueue_misc_user_event_pos): prototype added
6008         * frame-x.c (x_cde_transfer_callback): debug code plus API changes
6009         * emacs.c: call vars_of_dragdrop
6010         * dragdrop.c (vars_of_dragdrop): provide dragdrop
6011
6012 1998-05-11  Oliver Graf <ograf@fga.de>
6013
6014         * frame-x.c (x_cde_transfer_callback): return at correct pos
6015         * event-Xt.c (x_event_to_emacs_event): changed format of drop
6016         object for MIME (see comment in dragdrop.c)
6017         * dragdrop.c: API change documented in comment
6018         removed provide of dragdrop [is provided by dragdrop.el]
6019
6020 1998-05-12  Kirill M. Katsnelson  <kkm@kis.ru>
6021
6022         * window.c (window_needs_vertical_divider): Enable vertical
6023         dividers for every non-rightmost window.
6024         (window_left_gutter_width): Left gutter consists of mythical
6025         toolbar and a virtual scrollbar.
6026         (window_right_gutter_width): The right one may have a divider
6027         also.
6028
6029         * scrollbar.c (update_scrollbar_instance): Position vertical
6030         scrollbar left to divider if the latter present.
6031
6032         * redisplay.h: Declared OVER_DIVIER constant.
6033
6034         * redisplay.c (pixel_to_glyph_translation): Handle OVER_DIVIDER
6035         case.
6036
6037         * redisplay-x.c (x_output_vertical_divider): Output divider along
6038         the right side of the window, down to window bottom. Swapped
6039         foreground and background colors so it is visible by default.
6040
6041         * redisplay-tty.c (tty_output_vertical_divider): Uncondiionally
6042         stick the divider to the right window side.
6043
6044         * redisplay-msw.c (mswindows_redisplay_deadbox_maybe): Fixed
6045         deadbox painting.
6046         (mswindows_divider_width): Ask system for user preferred value.
6047         (mswindows_output_vertical_divider): Always output the divider on
6048         the right side of a window, down to bottom.
6049
6050         * keymap.c (get_relevant_keymaps): Route mouse button events which
6051         happened over a window divider through window-divider-map.
6052         (Fkey_binding): Documented that in the docstring.
6053         Defined the variable Vwindow_divider_map.
6054
6055         * events.c (Fevent_over_divider_p): Added this function.
6056
6057         * events.h: EXFUNed it.
6058
6059 1998-05-12  Kirill M. Katsnelson  <kkm@kis.ru>
6060
6061         * toolbar.c (update_frame_toolbars): Re-layout frame windows if
6062         toolbar geometry is suspected to change.
6063
6064 1998-05-11  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6065
6066         * src/device-msw.c
6067         * src/event-msw.c
6068         Condition dnd and dde code on HAVE_DRAGNDROP.
6069
6070 1998-05-11  Hrvoje Niksic  <hniksic@srce.hr>
6071
6072         * events.c (format_event_object): Print space as SPC etc.
6073
6074 1998-05-11  Hrvoje Niksic  <hniksic@srce.hr>
6075
6076         * print.c (print_internal): In the default case, abort() if
6077         ERROR_CHECK_TYPECHECK.
6078
6079         * fileio.c (Fmake_temp_name): Doc fix.
6080
6081 1998-05-10  Hrvoje Niksic  <hniksic@srce.hr>
6082
6083         * xgccache.c (describe_gc_cache): Define only if DEBUG_XEMACS.
6084
6085         * undo.c (Fprimitive_undo): Fixed typo.
6086
6087 1998-05-11  Hrvoje Niksic  <hniksic@srce.hr>
6088
6089         * fns.c (concat): Signal error on integer argument.
6090
6091 1998-05-10  Kirill M. Katsnelson  <kkm@kis.ru>
6092
6093         * console.h (device_metrics): Prefixed each constatnt with DM_
6094
6095         * device.c: (Fdevice_system_metric): Renamed so from plural form
6096         (metrics); Changed parameters order and added DEFAULT parameter;
6097         Unabbreviated some metric constants; Fixed and untabified doc string.
6098         (Fdevice_system_metrics): Added. Returns a plist of all provided
6099         metrics.
6100
6101         * device-msw.c (mswindows_device_system_metrics): Renamed
6102         device_metrics enum constants.
6103         Return Qunbound instead of Qnil.
6104
6105         * device-tty.c (tty_device_system_metrics): Ditto.
6106
6107         * device-x.c (x_device_system_metrics): Ditto.
6108
6109 1998-05-10  Andy Piper  <andyp@parallax.co.uk>
6110
6111         * redisplay-msw.c: implement background pixmaps (really!). Make
6112         sure bg color is transparent if we have bg pmaps.
6113         * (mswindows_output_string) (mswindows_clear_region): output bg
6114         pmap if required.
6115         * (mswindows_output_dibitmap_region): new function.
6116         * (mswindows_output_dibitmap): output offset pixmaps, blt masks in
6117         the bg color rather than transparently.
6118
6119         * toolbar-msw.c: use masks if they exist.
6120
6121         * glyphs-msw.c: set up masks correctly.
6122
6123         * event-msw.c: typedef SOCKET if cygwin and not msg select().
6124
6125 1998-05-10  Hrvoje Niksic  <hniksic@srce.hr>
6126
6127         * regex.c (re_match_2_internal): Check for quit.
6128
6129 1998-05-10  Hrvoje Niksic  <hniksic@srce.hr>
6130
6131         * frame.c (Ffocus_frame): New function.