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