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