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