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