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