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