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