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