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