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