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