XEmacs 21.2.38 (Peisino)
[chise/xemacs-chise.git.1] / src / ChangeLog
1 2000-12-05  Martin Buchholz <martin@xemacs.org>
2
3         * XEmacs 21.2.38 is released.
4
5 2000-12-05  Martin Buchholz  <martin@xemacs.org>
6
7         * symsinit.h: Add init_postgresql_from_environment.
8
9 2000-12-04  Yoshiki Hayashi  <yoshiki@xemacs.org>
10
11         * regex.c: Convert to clean C.
12
13 2000-12-05  Dan Holmsand  <dan@eyebee.com>
14
15         * realpath.c:
16         Don't #include sysfile.h. Revert to duplicating PATH_MAX
17         initialization.
18         (sys_readlink): renamed to system_readlink to avoid conflict with
19         the other sys_readlink.
20
21 2000-12-04  Hiroaki Abe  <h-abe@pc.highway.ne.jp>
22
23         * dumper.c (pdump_file_get): Correct uses of pdump_fd.
24
25 2000-12-04  Stephen J. Turnbull  <stephen@xemacs.org>
26
27         * postgresql.c (init_postgresql_from_environment): new function.
28         (vars_of_postgresql): Move code initializing Lisp variables out and
29         into init_postgresql_from_environment.
30         emacs.c (main_1): Call init_postgresql_from_environment if and only
31         if running a dumped XEmacs.
32
33 2000-08-31  Dan Holmsand  <dan@eyebee.com>
34
35         * buffer.c: Make find-file-compare-truenames default to true on
36         windows.
37
38         * realpath.c (win32_abs_start): 
39         (cygwin_readlink):
40         (win32_readlink): New functions.
41         (xrealpath): Return really real filenames on windows.
42
43         * fileio.c (Ffile_truename): Make file-truename work on windows.
44
45 2000-11-29  Didier Verna  <didier@xemacs.org>
46
47         * faces.c (MAYBE_UNFROB_BACKGROUND_PIXMAP): new macro.
48         * faces.c (update_face_cachel_data): use it.
49         * faces.c (add_face_cachel): use it. Complete background pixmap
50         frobbing in face cache if `update_face_cachel_data' has not done so.
51
52 2000-11-29  Yoshiki Hayashi  <yoshiki@xemacs.org>
53
54         * search.c (string_match_1): Don't set last_thing_searched
55         when search failed.
56
57 2000-11-27  Yoshiki Hayashi  <yoshiki@xemacs.org>
58
59         * buffer.c: Include casetab.h
60         (common_init_complex_vars_of_buffer): Use new case-table object.
61         * buffer.h: Include casetab.h
62         * buffer.h (MAKE_TRT_TABLE): Use generic char-table.
63         (DOWNCASE_TABLE_OF): Ditto.
64         * bufslots.h: Remove char-tables and add case-table.
65         * casetab.c: Include casetab.h
66         (CASE_TABLE_P): Removed.
67         (mark_case_table): New function.
68         (allocate_case_table): New function.
69         (Fcase_table_p): Use new case-table.
70         (case_table_char): New function.
71         (Fget_case_table): Ditto.
72         (Fput_case_table): Ditto.
73         (Fput_case_table_pair): Ditto.
74         (Fcopy_case_table): Ditto.
75         (Fcurrent_case_table): Return case-table.
76         (Fstandard_case_table): Return case-table.
77         (Fset_case_table): Fix doc-string.
78         (set_case_table): Use case-table
79         (syms_of_casetab): DEFSUBR new functions.
80         (complex_vars_of_casetab): Set up standard case-table.
81         * casetab.h: New file.
82         * editfns.c: Include casetab.h
83         (Fcompare_buffer_substrings): Use case-table.
84         * inline.c: Include casetab.h
85         * lisp.h: Remove bogus extern.
86         * lrecord.h (lrecord_type): Add lrecord_type_case_table.
87         * search.c: Include casetab.h
88         (TRANSLATE_ASCII): Removed.
89         (TRANSLATE): Unconditionally translate character.
90         (looking_at_1): Use case-table.
91         (string_match_1): Ditto.
92         (fast_string_match): Ditto.
93         (search_command): Ditto.
94         (search_buffer): Separate boyer_moore.  Check whether
95         boyer_moore is poosible.
96         (simple_search): New function.
97         (boyer_moore): Separated from search_buffer. Translate char.
98
99 2000-11-24  Yoshiki Hayashi  <yoshiki@xemacs.org>
100
101         * regex.c (RE_TR_ASCII): Removed.
102         (RE_TRANSLATE): Unconditionally use TRT_TABLE.
103         (PATFETCH): Call PATFETCH_RAW.
104         (PATFETCH_RAW): Fetch Emchar.
105         (PATUNFETCH): Decrement charptr.
106         (GET_BUFFER_SPACE): Rename b to buf_end.
107         (BUF_PUSH): Ditto.
108         (BUF_PUSH_2): Ditto.
109         (BUF_PUSH_3): Ditto.
110         (EXTEND_BUFFER): Ditto.
111         (SET_LIST_BIT): Ditto.
112         (regex_compile): Ditto.  Translate non ASCII char.
113         (compile_range): Ditto.
114         (re_search_2): Ditto.
115         (re_match_2_internal): Compare Emchar.
116         (bcmp_translate): Ditto.
117
118 2000-11-29  Stephen J. Turnbull  <turnbull@xemacs.org>
119
120         * lisp.h (basic char/int typedefs):  comment improvement.
121
122 2000-11-24  Stephen J. Turnbull  <turnbull@xemacs.org>
123
124         * emacs.c (main_1):  unconditional pdump unstomping; don't save and
125         unstomp inhibit_site_lisp.  Improve comments.
126
127 2000-11-22  Stephen J. Turnbull  <turnbull@xemacs.org>
128
129         * mule-charset.c (Fcharset_property):  improve type checking, comments.
130
131 2000-11-28  Andy Piper  <andy@xemacs.org>
132
133         * redisplay-output.c (redisplay_output_subwindow): make sure we do
134         clipped display for windows in the gutter also.
135         (redisplay_display_boxes_in_window_p): change semantics of return
136         codes to be more intuitive.
137
138         * gutter.h: declare display_boxes_in_gutter_p.
139
140         * gutter.c (display_boxes_in_gutter_p): new function for
141         redisplay.
142
143 2000-11-22  Andy Piper  <andy@xemacs.org>
144
145         * glyphs-x.c (image_instantiator_format_create_glyphs_x): change
146         autodetect domain.
147
148 2000-11-21  Yoshiki Hayashi  <yoshiki@xemacs.org>
149
150         * callproc.c (Fold_call_process_internal):
151         * gpm.c (Freceive_gpm_event):
152         (tty_get_foreign_selection): Might be just warning supression.
153         * fileio.c (Fwrite_region_internal):
154         (Fset_visited_file_modtime):
155         * keymap.c (event_matches_key_specifier_p):
156         Initialize GCPROed variable.
157
158         * menubar-x.c (command_builder_find_menu_accelerator):
159         Initialize before use.
160
161 2000-11-23  Andy Piper  <andy@xemacs.org>
162
163         * unexcw.c (unexec): make the resulting executable executable.
164
165 2000-11-21  Martin Buchholz  <martin@xemacs.org>
166
167         * doc.c (get_doc_string):
168         Use size_t, not int, for result of XSTRING_LENGTH.
169
170         * cmds.c (Fdelete_char):
171         * cmds.c (Fpoint_at_eol):
172         * cmds.c (Fself_insert_command):
173         Use EMACS_INT, not int, for result of XINT.
174         Someday, someone will want to insert more than 2**31 identical characters.
175
176         * cmds.c (Fdelete_char):
177         * cmds.c (Fdelete_backward_char):
178         * syntax.c (Fforward_word):
179         * syntax.c (Fforward_comment):
180         Make COUNT argument optional, for consistency with forward-char et al.
181
182 2000-11-22  Martin Buchholz  <martin@xemacs.org>
183
184         * lisp.h:
185         * print.c (long_to_string):
186         Return a useful value: the pointer at end of data written.
187
188         * doprnt.c:
189         Use `static const char * const' for constant strings.
190         (union printf_arg): Delete `i', `ui' members.
191         (get_doprnt_args):
192         (emacs_doprnt_1):
193         Fix LP64 platform bug: (format "%d" most-positive-fixnum) ==> "-1"
194         Do all printf-ing via the `l' specifier.
195         Use EMACS_INT instead of int.
196         Optimize.
197
198 2000-11-20  Didier Verna  <didier@xemacs.org>
199
200         * faces.c (update_face_cachel_data): don't frob the background
201         pixmap when the window is being created. The face is needed but
202         does not exist yet.
203
204 2000-11-20  Andy Piper  <andy@xemacs.org>
205
206         * unexcw.c (copy_executable_and_dump_data_section): Only do bss
207         messing with a debug environment.
208
209 2000-11-20  Martin Buchholz  <martin@xemacs.org>
210
211         * emacs.c (__sti__iflPNGFile_c___): Pedantically correct prototype.
212
213 2000-11-20  Martin Buchholz  <martin@xemacs.org>
214
215         * casetab.c (Fcase_table_p): Fix compile error and crash.
216
217 2000-11-18  Philip Aston  <philipa@mail.com>
218
219         * s/cygwin32.h: Cygwin has SVR4-like pty support.
220
221 2000-11-18  Martin Buchholz  <martin@xemacs.org>
222
223         * fileio.c (Fexpand_file_name): GCPRO bug!  Protect `handler'.
224         * filelock.c (lock_file): GCPRO bug! Initialize all GCPROed vars!
225
226 2000-11-17  Martin Buchholz  <martin@xemacs.org>
227
228         * config.h.in: Define HAVE_ELF_H if elf.h exists.
229         * unexelf.c: Use HAVE_ELF_H.
230         * unexelfsgi.c: Fix bug with dumped xemacs stdout/stderr not working.
231         I copied FSF Emacs 20.7 unexelf.c to unexelfsgi.c and ANSIfied it.
232         Max Matveev <makc@sgi.com> removed non-SGI-relevant parts and tested.
233         Greg Harrington <greg_harrington@hotmail.com> provided a machine
234         for testing.
235         So this is an unexelfsgi.c from a different line of development.
236
237 2000-11-16  Yoshiki Hayashi  <yoshiki@xemacs.org>
238
239         * regex.c (RE_TR_ASCII): New function.
240         (RE_TRANSLATE): Call it.
241
242 2000-11-16  Yoshiki Hayashi  <yoshiki@xemacs.org>
243
244         * buffer.h (TRT_TABLE_OF): Remove assert.
245         (IN_TRT_TABLE_DOMAIN): Removed.
246
247 2000-11-16  Gunnar Evermann  <ge204@eng.cam.ac.uk>
248
249         * free-hook.c (log_gcpro):
250         (show_gcprohist): Add support for GCPRO5.
251
252 2000-11-08  Stephen J. Turnbull  <stephen@xemacs.org>
253
254         * emacs.c (main_1): Improve -sd error message when --pdump=no.
255
256 2000-11-16  Olivier Galibert  <galibert@xemacs.org>
257
258         * symeval.h: Declare flush_all_buffer_local_cache.
259
260         * symbols.c: Change XD_LO_RESET_NIL into XD_LISP_OBJECTs.
261         (flush_buffer_local_cache): Added.
262         (flush_all_buffer_local_cache): Added.
263
264         * lrecord.h: Remove unused XD_LO_RESET_NIL.
265
266         * dumper.c (pdump_register_sub): Remove unused XD_LO_RESET_NIL.
267         (pdump_dump_data): Ditto.
268         (pdump_reloc_one): Ditto.
269         (pdump): Remove unused pdump_qnil.  Flush buffer local caches
270         before dumping.
271
272
273 2000-11-14  Yoshiki Hayashi  <yoshiki@xemacs.org>
274
275         * buffer.c: Remove if 0'ed entry.
276         * buffer.h: Rewrite TRT to use char-table.
277         * bufslots.h: Remove mirror tables.
278         * casetab.c: Remove mirror tables.
279         (CASE_TABLE_P): New macro.
280         (Fcase_table_p): Element of a case table is string or char-table.
281         (make_mirror_trt_table): Removed.
282         (set_case_table): Setup char-table from strings for backward
283         compatibility.
284         * dired.c (Fdirectory_files):
285         * dired-msw.c: (mswindows_get_files):
286         * lisp.h: Change prototype of re_pattern_buffer.
287         * regex.c: (RE_TRANSLATE): New macro.
288         (TRANSLATE_P): Ditto.
289         Change translate to type RE_TRANSLATE_TYPE.
290         * regex.h: Define RE_TRANSLATE_TYPE
291         * search.c (TRANSLATE): New macro.
292         (TRANSLATE_ASCII): New macro.
293         Translate table is changed to Lisp_Object.
294         (signal_failure): Inhibit return.
295
296 2000-11-14  Yoshiki Hayashi  <yoshiki@xemacs.org>
297
298         * device-msw.c:
299         * eldap.c:
300         * event-Xt.c:
301         * event-stream.c:
302         * print.c:
303         Do UNGCPRO before return.
304
305 2000-11-14  Martin Buchholz <martin@xemacs.org>
306
307         * XEmacs 21.2.37 is released.
308
309 2000-11-13  Yoshiki Hayashi  <yoshiki@xemacs.org>
310
311         * fileio.c (Finsert_file_contents_internal): UNGCPRO before return.
312         Add comments about discarded return value.
313
314 2000-11-09  Yoshiki Hayashi  <yoshiki@xemacs.org>
315
316         * callint.c:
317         * event-stream.c: Fix comments.  Remove some #if 0'ed part.
318
319 2000-10-27  Andy Piper  <andy@xemacs.org>
320
321         * gutter.c (Fset_default_gutter_position): default left and right
322         gutters to visible.
323         (calculate_gutter_size): calculate resonable heuristic for left
324         and right gutter sizes.
325         (specifier_vars_of_gutter): change left and right gutter sizes to
326         autodetect.
327         (calculate_gutter_size_from_display_lines): new function.
328         (output_gutter): check for resizing on left and right gutters.
329         (clear_gutter): don't special case top and left gutters.
330         (specifier_vars_of_gutter): use new signature for
331         set_specifier_caching.
332
333         * glyphs-x.c (x_redisplay_widget): spelling fix.
334         * glyphs.c (specifier_vars_of_glyphs):
335         * menubar.c (specifier_vars_of_menubar):
336         * redisplay.c (specifier_vars_of_redisplay):
337         * toolbar.c (specifier_vars_of_toolbar):
338         * window.c (specifier_vars_of_window):
339         * scrollbar.c (specifier_vars_of_scrollbar):
340         (complex_vars_of_scrollbar): use new signature for
341         set_specifier_caching.
342
343         * specifier.c (set_specifier_caching): include recompute flag.
344         (recompute_one_cached_specifier_in_window): always recompute if
345         flag set.
346         (recompute_one_cached_specifier_in_frame): ditto.
347
348         * specifier.h (struct specifier_caching): add recompute flag.
349
350 2000-10-24  Andy Piper  <andy@xemacs.org>
351
352         * unexcw.c (copy_executable_and_dump_data_section): add new
353         BSS_PAD_SIZE so that we can re-instate a mini-bss. This keeps gdb
354         5.0 happy.
355
356 2000-11-06  Yoshiki Hayashi  <yoshiki@xemacs.org>
357
358         * console-x.h (x_device): New member modifier_release_time.
359         * event-Xt.c (x_handle_sticky_modifiers):
360         Bound interval modifier keys are sticky.
361         * event-stream.c (Vmodifier_keys_sticky_time): New variable.
362         * events.h: extern it.
363
364 2000-11-06  Yoshiki Hayashi  <yoshiki@xemacs.org>
365
366         * cmdloop.c (Fcommand_loop_1): Just add C-g to event queue.
367
368 2000-11-06  Yoshiki Hayashi  <yoshiki@xemacs.org>
369
370         * event-stream.c (execute_command_event): Preserve current_events
371         and the like when event is misc-user-event.
372         Inhibit quit during the call to maybe_echo_keys.
373
374 2000-10-31  Yoshiki Hayashi  <yoshiki@xemacs.org>
375
376         * filelock.c (lock_buffer): Cope with kill-buffer. Don't create a
377         symlink when buffer is killed.
378         (inhibit_clash_detection): New variable.
379
380 2000-10-30  Yoshiki Hayashi  <yoshiki@xemacs.org>
381
382         * console.c (Fset_input_method): Trigger redisplay on tty.
383
384 2000-11-07  Martin Buchholz  <martin@xemacs.org>
385
386         * process.c (Fprocess_status): Revert to previous behavior:
387         (process-status "nosuchprocess") ==> nil
388
389 2000-11-06  Martin Buchholz  <martin@xemacs.org>
390
391         * mule-charset.h (CHARSET_BY_LEADING_BYTE):
392         Work around another GCC 2.95.2 optimizer bug.
393
394 2000-11-02  Martin Buchholz  <martin@xemacs.org>
395
396         * process.c (Fget_process): Use LIST_LOOP_2.
397         (kill_buffer_processes): Use LIST_LOOP_2.
398
399         * minibuf.c (Fall_completions):
400         Delete old non-functional code for FSF fourth argument.
401
402         * frame.c (frame_matches_frame_spec):
403         Renamed from `frame_matches_frametype'.  Update all callers.
404         (device_matches_device_spec):
405         Renamed from 'device_matches_console_spec'.  Update all callers.
406
407         * doc.c (Fsubstitute_command_keys):
408         Remove buffer overflow crash.  Small code cleanups.
409
410         * casetab.c (check_case_table): Simpler code.
411
412         * window.c (Freplace_buffer_in_windows):
413         Give this the same WHICH-FRAMES and WHICH-DEVICES parameters
414         (and similar implementation) as Fdelete_windows_on.
415         Update all callers.
416
417         * alloc.c (Fmake_list):
418         * alloc.c (make_vector):
419         * alloc.c (Fmake_vector):
420         * alloc.c (make_bit_vector):
421         * alloc.c (Fmake_bit_vector):
422         * alloc.c (Fbit_vector):
423         * alloc.c (Fmake_string):
424         * alloc.c (Fpurecopy):
425         * alloc.c (Fmemory_limit):
426         * buffer.c:
427         * buffer.c (Fget_buffer):
428         * buffer.c (Fkill_buffer):
429         * buffer.c (complex_vars_of_buffer):
430         * bytecode.c (Fcompiled_function_stack_depth):
431         * callint.c (Fprefix_numeric_value):
432         * event-stream.c:
433         * event-stream.c (Fread_key_sequence):
434         * casetab.c:
435         * casetab.c (Fcase_table_p):
436         * casetab.c (check_case_table):
437         * casetab.c (Fset_case_table):
438         * casetab.c (Fset_standard_case_table):
439         * chartab.c:
440         * chartab.c (Fchar_table_type):
441         * chartab.c (Freset_char_table):
442         * chartab.c (Fget_char_table):
443         * chartab.c (Fget_range_char_table):
444         * chartab.c (Fput_char_table):
445         * chartab.c (Fmap_char_table):
446         * chartab.c (Fcategory_table_p):
447         * chartab.c (Fcheck_category_at):
448         * chartab.c (Fchar_in_category_p):
449         * chartab.c (Fcategory_table):
450         * chartab.c (Fcopy_category_table):
451         * chartab.c (Fset_category_table):
452         * chartab.c (Fcategory_designator_p):
453         * chartab.c (Fcategory_table_value_p):
454         * cmds.c (Fdelete_char):
455         * cmds.c (Fdelete_backward_char):
456         * cmds.c (Fself_insert_command):
457         * cmds.c (Fself_insert_internal):
458         * console.c (Fvalid_console_type_p):
459         * console.c (Fcdfw_console):
460         * console.c (Fconsole_type):
461         * console.c (Fconsole_name):
462         * console.c (Fconsole_device_list):
463         * console.c (Fconsole_on_window_system_p):
464         * data.c:
465         * data.c (Feq):
466         * data.c (Fold_eq):
467         * data.c (Fsubr_interactive):
468         * data.c (Fchar_to_int):
469         * data.c (Fint_to_char):
470         * data.c (Fsetcar):
471         * data.c (Fsetcdr):
472         * data.c (Fnumber_to_string):
473         * data.c (Fstring_to_number):
474         * data.c (Frem):
475         * database.c (mark_database):
476         * database.c (finalize_database):
477         * database.c (Fdatabase_live_p):
478         * database.c (Fdatabasep):
479         * device-x.c (Fx_get_resource):
480         * device.c (Fdfw_device):
481         * dired.c:
482         * dired.c (Ffile_name_completion):
483         * dired.c (Ffile_name_all_completions):
484         * dired.c (Fuser_name_completion):
485         * dired.c (Fuser_name_completion_1):
486         * dired.c (Fuser_name_all_completions):
487         * doc.c (Fdocumentation):
488         * doc.c (Fdocumentation_property):
489         * doc.c (Fsubstitute_command_keys):
490         * editfns.c:
491         * editfns.c (Fchar_to_string):
492         * editfns.c (Fstring_to_char):
493         * editfns.c (Ftemp_directory):
494         * editfns.c (Finsert_char):
495         * editfns.c (Fbuffer_substring_no_properties):
496         * editfns.c (Fnarrow_to_region):
497         * editfns.c (Fchar_equal):
498         * editfns.c (Fchar_Equal):
499         * editfns.c (Ftranspose_regions):
500         * emacs.c (Fdump_emacs):
501         * eval.c (Fthrow):
502         * eval.c (Fcommand_execute):
503         * eval.c (Fautoload):
504         * eval.c (Fbacktrace):
505         * eval.c (Fbacktrace_frame):
506         * events.c:
507         * events.c (Fcopy_event):
508         * events.c (Fcharacter_to_event):
509         * events.c (Fevent_button):
510         * events.c (Fevent_process):
511         * extents.c:
512         * extents.c (Fnext_extent_change):
513         * extents.c (Fextent_property):
514         * faces.c (Ffacep):
515         * faces.c (Fmake_face):
516         * file-coding.c:
517         * file-coding.c (Fencode_shift_jis_char):
518         * file-coding.c (Fencode_big5_char):
519         * fileio.c (Ffile_name_directory):
520         * fileio.c (Ffile_name_nondirectory):
521         * fileio.c (Ffile_name_as_directory):
522         * fileio.c (Fdirectory_file_name):
523         * fileio.c (Ffile_truename):
524         * fileio.c (Fsubstitute_in_file_name):
525         * fileio.c (Ffile_modes):
526         * fileio.c (Fset_file_modes):
527         * fileio.c (Fset_default_file_modes):
528         * fileio.c (Fverify_visited_file_modtime):
529         * floatfns.c (Facos):
530         * floatfns.c (Fasin):
531         * floatfns.c (Fatan):
532         * floatfns.c (Fcos):
533         * floatfns.c (Fsin):
534         * floatfns.c (Ftan):
535         * floatfns.c (Fbessel_j0):
536         * floatfns.c (Fbessel_j1):
537         * floatfns.c (Fbessel_jn):
538         * floatfns.c (Fbessel_y0):
539         * floatfns.c (Fbessel_y1):
540         * floatfns.c (Fbessel_yn):
541         * floatfns.c (Ferf):
542         * floatfns.c (Ferfc):
543         * floatfns.c (Flog_gamma):
544         * floatfns.c (Fexp):
545         * floatfns.c (Fexpt):
546         * floatfns.c (Flog):
547         * floatfns.c (Flog10):
548         * floatfns.c (Fsqrt):
549         * floatfns.c (Fcube_root):
550         * floatfns.c (Facosh):
551         * floatfns.c (Fasinh):
552         * floatfns.c (Fatanh):
553         * floatfns.c (Fcosh):
554         * floatfns.c (Fsinh):
555         * floatfns.c (Ftanh):
556         * floatfns.c (Fabs):
557         * floatfns.c (Ffloat):
558         * floatfns.c (Flogb):
559         * floatfns.c (Fceiling):
560         * floatfns.c (Ffloor):
561         * floatfns.c (Fround):
562         * floatfns.c (Ftruncate):
563         * floatfns.c (Ffceiling):
564         * floatfns.c (Fffloor):
565         * floatfns.c (Ffround):
566         * floatfns.c (Fftruncate):
567         * fns.c (Fstring_equal):
568         * fns.c (Fstring_lessp):
569         * fns.c (concat2):
570         * fns.c (concat3):
571         * fns.c (vconcat2):
572         * fns.c (vconcat3):
573         * fns.c (Fsubstring):
574         * fns.c (Fassoc):
575         * fns.c (Fold_assoc):
576         * fns.c (assoc_no_quit):
577         * fns.c (Fassq):
578         * fns.c (Fold_assq):
579         * fns.c (assq_no_quit):
580         * fns.c (Frassoc):
581         * fns.c (Fold_rassoc):
582         * fns.c (Frassq):
583         * fns.c (Fold_rassq):
584         * fns.c (rassq_no_quit):
585         * fns.c (Fremassoc):
586         * fns.c (remassoc_no_quit):
587         * fns.c (Fremassq):
588         * fns.c (remassq_no_quit):
589         * fns.c (Fremrassoc):
590         * fns.c (Fremrassq):
591         * fns.c (remrassq_no_quit):
592         * fns.c (Fsort):
593         * fns.c (Fplist_get):
594         * fns.c (Fplist_put):
595         * fns.c (Fplist_remprop):
596         * fns.c (Fplist_member):
597         * fns.c (Flax_plist_get):
598         * fns.c (Flax_plist_put):
599         * fns.c (Flax_plist_remprop):
600         * fns.c (Flax_plist_member):
601         * fns.c (Fequal):
602         * fns.c (Fold_equal):
603         * fns.c (Frequire):
604         * fns.c (Fbase64_encode_region):
605         * fns.c (Fbase64_encode_string):
606         * fns.c (Fbase64_decode_region):
607         * frame.c:
608         * frame.c (frame_matches_frame_spec):
609         * frame.c (device_matches_device_spec):
610         * frame.c (next_frame):
611         * frame.c (previous_frame):
612         * frame.c (Fnext_frame):
613         * frame.c (Fprevious_frame):
614         * frame.c (Fframe_property):
615         * frame.c (Fset_frame_height):
616         * frame.c (Fset_frame_size):
617         * frame.h:
618         * glyphs.c:
619         * glyphs.c (if):
620         * glyphs.c (decode_error_behavior_flag):
621         * glyphs.c (Fmake_image_instance):
622         * indent.c (Findent_to):
623         * intl.c (Fignore_defer_gettext):
624         * keymap.c (Fkeymapp):
625         * keymap.c (Flookup_key):
626         * lread.c:
627         * lread.c (Fload_internal):
628         * lread.c (Feval_buffer):
629         * lread.c (Feval_region):
630         * macros.c (Fexecute_kbd_macro):
631         * marker.c (set_marker_internal):
632         * marker.c (Fset_marker):
633         * marker.c (set_marker_restricted):
634         * marker.c (Fcopy_marker):
635         * marker.c (noseeum_copy_marker):
636         * menubar.c:
637         * menubar.c (Fpopup_menu):
638         * minibuf.c:
639         * mule-charset.c (Fcharset_name):
640         * mule-charset.c (Fchar_charset):
641         * mule-charset.c (Fchar_octet):
642         * mule-charset.c (Fsplit_char):
643         * mule-wnnfns.c (Fwnn_open):
644         * mule-wnnfns.c (Fwnn_dict_comment):
645         * mule-wnnfns.c (Fwnn_quit_henkan):
646         * mule-wnnfns.c (Fwnn_word_toroku):
647         * mule-wnnfns.c (Fwnn_word_sakujo):
648         * mule-wnnfns.c (Fwnn_word_use):
649         * mule-wnnfns.c (Fwnn_hindo_set):
650         * objects.c:
651         * objects.c (Fmake_color_instance):
652         * objects.c (Fmake_font_instance):
653         * print.c (Fwrite_char):
654         * process.c:
655         * process.c (mark_process):
656         * process.c (print_process):
657         * process.c (get_process_from_usid):
658         * process.c (Fprocessp):
659         * process.c (Fprocess_live_p):
660         * process.c (Fget_process):
661         * process.c (Fget_buffer_process):
662         * process.c (get_process):
663         * process.c (Fprocess_id):
664         * process.c (Fprocess_name):
665         * process.c (Fprocess_command):
666         * process.c (init_process_io_handles):
667         * process.c (start_process_unwind):
668         * process.c (Fstart_process_internal):
669         * process.c (Fopen_multicast_group_internal):
670         * process.c (Fset_process_window_size):
671         * process.c (read_process_output):
672         * process.c (send_process):
673         * process.c (Fprocess_tty_name):
674         * process.c (Fset_process_buffer):
675         * process.c (Fprocess_buffer):
676         * process.c (Fprocess_mark):
677         * process.c (set_process_filter):
678         * process.c (Fset_process_filter):
679         * process.c (Fprocess_filter):
680         * process.c (Fprocess_send_region):
681         * process.c (Fprocess_send_string):
682         * process.c (exec_sentinel):
683         * process.c (Fset_process_sentinel):
684         * process.c (Fprocess_sentinel):
685         * process.c (status_notify):
686         * process.c (Fprocess_status):
687         * process.c (Fprocess_exit_status):
688         * process.c (process_send_signal):
689         * process.c (Fprocess_send_eof):
690         * process.c (deactivate_process):
691         * process.c (remove_process):
692         * process.c (Fdelete_process):
693         * process.c (kill_buffer_processes):
694         * process.c (Fprocess_kill_without_query):
695         * process.c (Fprocess_kill_without_query_p):
696         * rangetab.c:
697         * rangetab.c (Fget_range_table):
698         * rangetab.c (Fput_range_table):
699         * rangetab.c (Fremove_range_table):
700         * rangetab.c (Fclear_range_table):
701         * search.c:
702         * search.c (Fskip_chars_forward):
703         * search.c (Fskip_chars_backward):
704         * search.c (Fskip_syntax_forward):
705         * search.c (Fskip_syntax_backward):
706         * search.c (search_command):
707         * search.c (Freplace_match):
708         * search.c (Fregexp_quote):
709         * select.c (Fown_selection_internal):
710         * select.c (Fselection_owner_p):
711         * select.c (Fselection_exists_p):
712         * select.c (Fget_selection_internal):
713         * specifier.c:
714         * symbols.c:
715         * symbols.c (Fintern):
716         * symbols.c (Fintern_soft):
717         * symbols.c (Funintern):
718         * symbols.c (Fapropos_internal):
719         * symbols.c (Fset_default):
720         * syntax.c:
721         * syntax.c (Fsyntax_table_p):
722         * syntax.c (Fcopy_syntax_table):
723         * syntax.c (Fset_syntax_table):
724         * syntax.c (Fchar_syntax):
725         * syntax.c (syntax_match):
726         * syntax.c (Fmatching_paren):
727         * syntax.c (Fforward_word):
728         * syntax.c (scan_lists):
729         * syntax.c (Fscan_lists):
730         * syntax.c (Fscan_sexps):
731         * syntax.c (Fparse_partial_sexp):
732         * toolbar.c (Fcheck_toolbar_button_syntax):
733         * tooltalk.doc:
734         * window.c:
735         * window.c (Fwindowp):
736         * window.c (Fwindow_live_p):
737         * window.c (Fwindow_point):
738         * window.c (Fdelete_window):
739         * window.c (Fnext_window):
740         * window.c (Fprevious_window):
741         * window.c (Fother_window):
742         * window.c (window_loop):
743         * window.c (Fget_lru_window):
744         * window.c (Fsplit_window):
745         * window.c (Fenlarge_window):
746         * window.c (Fenlarge_window_pixels):
747         * window.c (Fshrink_window):
748         * window.c (Fshrink_window_pixels):
749         * window.c (change_window_height):
750         * window.c (Fwindow_configuration_p):
751         * window.c (Fcurrent_window_configuration):
752         * window.h:
753         * casefiddle.c (casify_object):
754         * casefiddle.c (Fupcase):
755         * casefiddle.c (Fdowncase):
756         * casefiddle.c (Fcapitalize):
757         * casefiddle.c (Fupcase_initials):
758         * casefiddle.c (casify_region_internal):
759         * casefiddle.c (casify_region):
760         * casefiddle.c (Fupcase_region):
761         * casefiddle.c (Fdowncase_region):
762         * casefiddle.c (Fcapitalize_region):
763         * casefiddle.c (Fupcase_initials_region):
764         * casefiddle.c (Fupcase_word):
765         * casefiddle.c (Fdowncase_word):
766         * casefiddle.c (Fcapitalize_word):
767         Docstring arglist/Texinfo fixes.  See man/ChangeLog for details.
768         Replace 0 with '\0' when working with bytes.
769         Replace initial "(" with "\(" in docstrings.
770
771 2000-11-01  Martin Buchholz  <martin@xemacs.org>
772
773         * config.h.in: Handle alloca with Compaq C on Alpha Linux.
774
775         * m/alpha.h: Let configure handle SYSTEM_MALLOC on Linux.
776
777 2000-10-31  Martin Buchholz  <martin@xemacs.org>
778
779         * eldap.c (print_ldap): 64-bit cleaner.  Fixes warning.
780
781 2000-10-30  Yoshiki Hayashi  <yoshiki@xemacs.org>
782
783         * doprnt.c (emacs_do_prnt_1): Format (format "%01.2d" 10)
784         correctly.
785
786 2000-10-30  Yoshiki Hayashi  <yoshiki@xemacs.org>
787
788         * fileio.c (Vauto_save_list_file_prefix): Moved from startup.el.
789         (inhibit_auto_save_session): New variable.
790         (vars_of_fileio): Declare and initialize them.
791         * fileio.c (Fdo_auto_save): Don't create session file if
792         Vinhibit_auto_save_session or Vauto_save_list_file_prefix is non-nil.
793
794 2000-10-31  Martin Buchholz  <martin@xemacs.org>
795
796         * sgiplay.c (play_internal): C++ compilability.
797         * alloc.c (SWEEP_FIXED_TYPE_BLOCK): Remove unused var `SFTB_prev'.
798         * callproc.c (Fold_call_process_internal):
799         Remove unused vars `env', `first'.
800         * scrollbar.c (update_scrollbar_instance):
801         #### unused var `current_window'.
802         * redisplay-tty.c: Put currently unused vars insert_mode_on,
803         etc. within #ifdef NOT_YET.
804         * emacs.c: #### unused vars `initial_argc', `initial_argv'.
805         * dialog-x.c (dbox_descriptor_to_widget_value): ### unused var `title'.
806         * specifier.c (specifier_instance):
807         #### unused var `tag'.
808         Use WINDOW_BUFFER, FRAME_DEVICE instead of their expansion.
809
810 2000-10-27  Martin Buchholz  <martin@xemacs.org>
811
812         * fns.c (Fbutlast):
813         * fns.c (list_sort):
814         * fns.c (Ffillarray):
815         * fns.c (bytecode_nconc2):
816         * fns.c (Fnconc):
817         * fns.c (mapcar1):
818         * fns.c (Fmapconcat):
819         Be pedantically 64-bit correct.  For the time when someone will
820         want to have a list with length > 2**32.
821
822         * lisp.h (PRIVATE_EXTERNAL_LIST_LOOP_6):
823         Work around MIPSpro compiler bug.
824
825         * process-unix.c (unix_kill_child_process): Add snarky comment.
826         * process-unix.c (try_to_initialize_subtty):  Oops, `=' ==> `=='
827
828         * config.h.in: Oops, _getpt ==> _getpty
829
830 2000-10-26  Martin Buchholz  <martin@xemacs.org>
831
832         * config.h.in:
833         * regex.c:
834         Use void*, not char*, as return type of alloca().
835
836         * alloc.c (free_marker): Side effect inside assert expression!
837
838 2000-10-16  MIYASHITA Hisashi  <himi@m17n.org>
839
840         * mule-charset.c (Fset_charset_ccl_program): To check
841         if the given ccl program is valid, use setup_ccl_program()
842         instead of CHECK_VECTOR().
843         (Fmake_charset): Likewise.
844
845 2000-10-20  Golubev I. N.  <gin@mo.msk.ru>
846
847         * faces.c (get_extent_fragment_face_cache_index):
848         Fix cachel.merged_faces memory leak.
849
850 2000-10-14  MIYASHITA Hisashi  <himi@m17n.org>
851
852         * mule-ccl.c (ccl_driver)<CCL_DECODE_SJIS>:
853         Reset MSB of octets obtained by DECODE_SJIS
854         because of the incompatibility with Emacs.
855         (ccl_driver)<CCL_ENCODE_SJIS>:
856         Set MSB of octets before passing them to
857         ENCODE_SJIS because of the incompatibility
858         with Emacs.
859
860 2000-10-18   Daiki Ueno  <ueno@unixuser.org>
861
862         * lrecord.h (DECLARE_TYPECHECK_LRECORD): Abolish.
863         (DECLARE_LRECORD): Undo the last change.
864         (DECLARE_EXTERNAL_LRECORD): Expand typechecking stuff.
865
866 2000-10-17   Daiki Ueno  <ueno@unixuser.org>
867
868         * lrecord.h (INIT_EXTERNAL_LRECORD_IMPLEMENTATION): Connect
869         the implementation to lrecord_implementations_table.
870
871 2000-10-14   Daiki Ueno  <ueno@unixuser.org>
872
873         * lrecord.h (MAKE_EXTERNAL_LRECORD_IMPLEMENTATION): Don't set the
874         initial value of `lrecord_type_##c_name' and
875         `lrecord_##c_name.lrecord_type_index'; discard "const" qualifier.
876         (INIT_EXTERNAL_LRECORD_IMPLEMENTATION): New macro.
877         [ERROR_CHECK_TYPECHECK] (DECLARE_TYPECHECK_LRECORD): New macro.
878         [ERROR_CHECK_TYPECHECK] (DECLARE_LRECORD): Use it.
879         [ERROR_CHECK_TYPECHECK] (DECLARE_EXTERNAL_LRECORD): Use it.
880
881 2000-10-17  Martin Buchholz  <martin@xemacs.org>
882
883         * miscplay.c (sndcnv8S_2mono):
884         (sndcnv2monounsigned):
885         (sndcnvULaw_2linear):
886         (sndcnv16swap):
887         Remove implementation-defined behavior.
888
889 2000-10-12  Martin Buchholz  <martin@xemacs.org>
890
891         * input-method-xlib.c: Warning suppression.
892
893 2000-10-05  MIYASHITA Hisashi  <himi@m17n.org>
894
895         * mule-ccl.c: Sync up with Emacs 21.0.90.
896         (ccl_driver)<CCL_TranslateCharacter>: Disabled.
897         Do nothing.
898         (ccl_driver)<CCL_TranslateCharacterConstTbl>:
899         Likewise.
900         (ccl_driver[WriteMultibyteChar2]): Bug fix.
901         Use MAX_LEADING_BYTE_OFFICIAL_2 instead of
902         MIN_LEADING_BYTE_OFFICIAL_2 to check whether the
903         leading char belongs to official 2-dimensional charset.
904         (CCL_WRITE_CHAR): When CCL_MODE_ENCODING,
905         write the given character as is.  Otherwise,
906         if it is a multibyte char, convert it by
907         non_ascii_set_charptr_emchar, then write it.
908         (CCL_WRITE_STRING): Likewise.
909         (ccl_get_compiled_code): New function.
910         (setup_ccl_program): When ccl_prog is invalid,
911         return -1.
912         (Fregister_code_conversion_map): New function.
913         (syms_of_mule_ccl): defsubr Fregister_code_conversion_map.
914
915         * mule-ccl.h: Sync up with Emacs 21.0.90.
916         (Fregister_ccl_program): export it.
917
918         * redisplay-msw.c (separate_textual_runs):
919         If ccl program is not valid, don't do ccl conversion.
920
921         * redisplay-x.c (separate_textual_runs): Ditto.
922
923         * file-coding.c (Fmake_coding_system):
924         When type is ccl and value is vector, register it
925         with a proper symbol.  And checks whether the
926         given ccl program is valid.
927         (mule_decode): When calling ccl_driver, if src indicates
928         NULL pointer, set an empty string instead.
929         (mule_encode): Likewise.
930
931 2000-10-11  Martin Buchholz  <martin@xemacs.org>
932
933         The following large batch of changes gets us back to a state of
934         C++ compilability.  Extbyte is now a char, which means that
935         Extbyte * and Bufbyte * cannot be freely interchanged - a win!
936
937         * tooltalk.c (Fset_tooltalk_message_attribute): Type correctness.
938
939         * sound.c (Fplay_sound): Type correctness.
940
941         * select-x.c (hack_motif_clipboard_selection): Type correctness.
942         (x_get_window_property): Type correctness.
943         (receive_incremental_selection): unsigned char ==> Extbyte
944         (selection_data_to_lisp_data): unsigned char ==> Extbyte
945         (Fx_get_cutbuffer_internal): unsigned char ==> Extbyte
946         (Fx_store_cutbuffer_internal): Type correctness.
947
948         * process-unix.c (try_to_initialize_subtty): Type correctness.
949
950         * objects-x.c (x_print_color_instance): Type correctness.
951         (x_print_font_instance): Type correctness.
952         (x_list_fonts): SExtbyte ==> Extbyte.
953         (valid_x_font_name_p): SExtbyte ==> Extbyte.
954         (x_find_charset_font): SExtbyte ==> Extbyte.
955         Use TO_INTERNAL_FORMAT.  build_string ==> make_string.
956         (truename_via_XListFonts): SExtbyte ==> Extbyte.
957         (x_font_instance_properties): Use TO_INTERNAL_FORMAT.
958         Use bufbyte_strcmp.
959
960         * mule-charset.h (LEADING_BYTE_PREFIX_P): unsigned char ==> Bufbyte
961         (PRIVATE_LEADING_BYTE_PREFIX): Add paranoia cast.
962         (BYTE_ASCII_P): Use bit ops for char-signedness safety.
963         (BYTE_C0_P): Use bit ops for char-signedness safety.
964         (BYTE_C1_P): Use bit ops for char-signedness safety.
965         (CHARSET_BY_LEADING_BYTE):
966         (CHARSET_BY_ATTRIBUTES):
967         Always use inline function.
968         Use type_checking_assert.
969         Hide chlook.
970
971         * mule-charset.c (non_ascii_charptr_copy_char):
972         Modify to work with both ASCII and non-ASCII characters.
973         Improve docs and variable names.
974         Replace over-clever fall-through switch with a simple loop.
975         (Lstream_get_emchar_1):
976         Replace over-clever fall-through switch with a simple loop.
977
978         * menubar-x.c (menu_item_descriptor_to_widget_value_1):
979         Warning suppression.
980
981         * lstream.h (Lstream_get_emchar): BYTE_ASCII_P cannot be used on
982         the return value of Lstream_getc, which could be EOF as well.
983
984         * lstream.c (Lstream_raw_read): Now returns ssize_t, not int.
985
986         * lisp.h: Make Extbyte a char, not unsigned char, so that external
987         APIs can be used on Extbytes without casts.  Risky!
988         (SExtbyte): Remove.
989         (UExtbyte): Remove.
990
991         * input-method-xlib.c (XIM_init_device):
992         Use Xlib.h instead of IntrinsicP.h.
993         Use HAVE_XREGISTERIMINSTANTIATECALLBACK instead of THIS_IS_X11R6,
994         which will break in X11R7.
995         Use XREGISTERIMINSTANTIATECALLBACK_NONSTANDARD_PROTOTYPE,
996         to call XRegisterIMInstantiateCallback with correct types.
997
998         * gui-x.c (button_item_to_widget_value): Type correctness.
999
1000         * glyphs.c (bitmap_to_lisp_data):  Type correctness.
1001
1002         * glyphs-x.c (pixmap_from_xbm_inline): Type correctness.
1003         (xbm_instantiate_1): Type correctness.
1004         (BUILD_GLYPH_INST):  Type correctness.
1005
1006         * fileio.c (Fsubstitute_in_file_name): Type correctness.
1007
1008         * file-coding.c:
1009         (decode_coding_sjis):
1010         (decode_coding_big5):
1011         (decode_coding_ucs4):
1012         (decode_coding_utf8):
1013         (decode_coding_iso2022):
1014         (decode_coding_no_conversion):
1015         Make all decoding functions take an Extbyte * arg.
1016         (encode_coding_sjis):
1017         (encode_coding_big5):
1018         (encode_coding_ucs4):
1019         (encode_coding_utf8):
1020         (encode_coding_iso2022):
1021         (encode_coding_no_conversion):
1022         Make all encoding functions take a Bufbyte * arg.
1023         Use size_t instead of unsigned int for memory sizes.
1024         Only cast to unsigned char whenever dereferencing Extbyte *.
1025
1026         * doc.c (unparesseuxify_doc_string): Type correctness.
1027
1028         * console-x.c (split_up_display_spec):
1029         Rewrite without using details of internal string representation.
1030         (x_semi_canonicalize_device_connection): Type correctness.
1031
1032         * config.h.in:
1033         (HAVE_XREGISTERIMINSTANTIATECALLBACK): New.
1034         (XREGISTERIMINSTANTIATECALLBACK_NONSTANDARD_PROTOTYPE): New.
1035         (HAVE_XFREE386): Removed.
1036
1037         * buffer.h (DEC_CHARPTR): `const' correctness.
1038         (bufbyte_strcmp): New.
1039         (bufbyte_memcmp): New.
1040
1041         * buffer.c (dfc_convert_to_internal_format): Extbyte ==> Bufbyte
1042
1043         * buffer.h (XCHAR_OR_CHAR_INT):
1044         Always use inline function.
1045         Remove redundant type checking assert() - XINT will abort quite nicely.
1046
1047 2000-10-03  Yoshiki Hayashi  <yoshiki@xemacs.org>
1048
1049         * search.c (Freplace_match): Set newtext to an empty string.
1050
1051 2000-10-10  Martin Buchholz  <martin@xemacs.org>
1052
1053         * s/decosf1-3.h: Remove #include of stropts.h
1054         * s/ptx.h: Remove #include of stropts.h
1055         * s/usg5-4.h: Remove #include of stropts.h
1056         * sysproc.h:
1057         * config.h.in:
1058         Use stropts.h, not sys/stropts.h.
1059         Use strtio.h, not sys/strtio.h.
1060
1061 2000-10-04  Martin Buchholz <martin@xemacs.org>
1062
1063         * XEmacs 21.2.36 is released.
1064
1065 2000-09-21  Andy Piper  <andy@xemacs.org>
1066
1067         * glyphs-x.c (x_redisplay_widget): make sure non-structural
1068         changes still involve copying the widget tree.
1069         (update_widget_face): make sure a change is register in the widget
1070         tree. Call update_tab_widget_face appropriately.
1071         (update_tab_widget_face): ditto.
1072         (x_tab_control_redisplay): make sure non-structural changes still
1073         involve copying the widget tree.
1074
1075 2000-08-31   Daiki Ueno  <ueno@unixuser.org>
1076
1077         * lread.c (locate_file): Check the path element is non-nil.
1078
1079 2000-10-02  Martin Buchholz  <martin@xemacs.org>
1080
1081         * lisp.h: Warning suppression for SCO compilers.
1082
1083         * redisplay-tty.c (reset_tty_modes): Fix crash.
1084         E.g. from xemacs running on X: (delete-device (make-device 'tty nil))
1085
1086 2000-09-27  Martin Buchholz  <martin@xemacs.org>
1087
1088         Big signal/process handling overhaul.  Bugs fixed:
1089         M-x shell, type `sleep 10000', M-x comint-interrupt-subjob and
1090         M-x comint-kill-subjob should work for both values nil and t of
1091         process-connection-type. It was broken on most platforms.
1092         Testing on Irix and Cygwin still needed.  Other plaforms tested.
1093         * sysdep.c: Move #include of stropts.h into sysproc.h.  Use pid_t.
1094         * process-unix.c: Signal/Process handling overhaul.
1095         (pty_name): make 64 bytes, as `expect' does, for paranoia.
1096         (allocate_pty): Use all available modern methods of allocating
1097         ptys, falling back to old style BSD allocation as a last resort.
1098         Use allegedly more secure Unix98 pty allocation by default.
1099         (allocate_pty_the_old_fashioned_way): New. the last resort.
1100         (unix_create_process): Push ptem, ldterm, ttcompat where
1101         available.  Autoconfiscate.
1102         (try_to_initialize_subtty): New.
1103         (unix_kill_child_process): Proper signal handling for ptys on most
1104         platforms, using special knowledge of AIX, BSD, etc...
1105         (unix_create_process): Always disconnect_controlling_terminal() for
1106         subprocesses, whether using ptys or not.
1107         * process.h: Remove old getpt-dependent PTY code.
1108         * process.c (Fprocess_send_signal): New, obvious generic function.
1109         (decode_signal): New.
1110         (Finterrupt_process):
1111         (Fkill_process):
1112         (Fquit_process):
1113         (Fstop_process):
1114         (Fcontinue_process):
1115         (Fsignal_process): Use decode_signal.
1116         (process_send_signal):
1117         Many docstring corrections.
1118         Allow any signal to be sent to a process object.
1119         * config.h.in: Add symbols for big signal/process overhaul.
1120         * syssignal.h (EMACS_KILLPG): Use HAVE_KILLPG. Use `pid', not `gid'.
1121         * sysproc.h: Include process-related headers, where available:
1122         sys/stropts.h sys/strtio.h pty.h libutil.h
1123         * s/irix4-0.h:
1124         * s/irix5-0.h:
1125         * s/cygwin32.h:
1126         * s/gnu.h:
1127         * s/linux.h:
1128         * s/hpux.h:
1129         * s/aix3-1.h:
1130         Remove old S&M pty stuff.
1131         * console-tty.c (tty_init_console): Use pid_t, not int, for pids.
1132         * systty.h: Simplify cpp hackery, improve comments.
1133         Favor BSD ioctl(TIOCGPGRP) over Posix tcgetpgrp().
1134
1135         * editfns.c (Fformat_time_string):
1136         Be a little more paranoid with the return value of ctime.
1137
1138         * fileio.c (check_executable):
1139         (check_writable):
1140         Use symbolic constants X_OK, W_OK.
1141
1142         * console-x.c (split_up_display_spec): Fix a warning.
1143
1144 2000-10-02  Martin Buchholz  <martin@xemacs.org>
1145
1146         * gui-x.c (add_accel_and_to_external): strlen ==> XSTRING_LENGTH
1147         * ntproc.c (sys_spawnve): make_string ==> build_string
1148         Small clarity improvements.
1149
1150 2000-09-30  Martin Buchholz  <martin@xemacs.org>
1151
1152         * events.c (WRONG_EVENT_TYPE_FOR_PROPERTY): Warning removal.
1153
1154         * s/windowsnt.h (HAVE_STRCASECMP): Remove.
1155
1156         * config.h.in (HAVE_STRCASECMP): Remove.
1157
1158 2000-09-29  Martin Buchholz  <martin@xemacs.org>
1159
1160         * redisplay-output.c (redisplay_output_pixmap):
1161         Cleaner and possibly more 64-bit correct code.
1162
1163 2000-09-28  Stephen J. Turnbull  <stephen@xemacs.org>
1164
1165         * dumper.c (pdump_load_finish): move restoration of
1166         `noninteractive1' to emacs.c (main_1).
1167         * emacs.c (main_1): protect LISP-visible command-line flags
1168         from pdump_load().
1169
1170 2000-09-26  Stephen J. Turnbull  <stephen@xemacs.org>
1171
1172         * Makefile.in.in (versionclean):  Use EXE_TARGET and
1173         DUMP_TARGET instead of literal program names.
1174
1175 2000-09-20  Martin Buchholz  <martin@xemacs.org>
1176
1177         * Makefile.in.in: Recent purify's require absolute paths for cache-dir.
1178
1179 2000-09-19  Martin Buchholz  <martin@xemacs.org>
1180
1181         * *: Spelling mega-patch
1182
1183 2000-09-19  Martin Buchholz  <martin@xemacs.org>
1184
1185         * fns.c (bad_bad_turtle):
1186         Delete "Eek!" comment, since we fixed the bug to which it refers.
1187
1188 2000-09-16  Martin Buchholz  <martin@xemacs.org>
1189
1190         * alloca.c: Replace REGISTER with register.
1191
1192 2000-09-16   Daiki Ueno  <ueno@unixuser.org>
1193
1194         * file-coding.c (ucs_to_char): Use countof.
1195
1196 2000-09-16  Martin Buchholz  <martin@xemacs.org>
1197
1198         * file-coding.c: (ucs_to_char):
1199         (complex_vars_of_file_coding):
1200         Use countof instead of sizeof.
1201         Use CHECK_NATNUM instead of CHECK_INT.
1202
1203         * sysdep.c (strcasecmp): Remove.
1204         * device-x.c (ascii_strcasecmp): New.
1205         * device-x.c (Fx_get_resource): Use ascii_strcasecmp.
1206         Avoid using non-standard non-portable strcasecmp.
1207
1208 2000-09-16  Martin Buchholz  <martin@xemacs.org>
1209
1210         * Makefile.in.in (mostlyclean): remove reference to prefix-args.
1211         * font-lock.c: remove reference to emacsfns.h.
1212         * search.c: small doc improvement.
1213         * event-Xt.c: correct file names in comments.
1214         * console-x.h Correct file names in comments.
1215         * frame.c: Correct file names in comments.
1216         * event-stream.c: remove Energize from comments.
1217
1218 2000-09-15  Martin Buchholz  <martin@xemacs.org>
1219
1220         * symeval.h (DEFERROR_STANDARD):
1221         (DEFERROR):
1222         (DEFSYMBOL):
1223         (DEFSYMBOL_NO_DUMP):
1224         (DEFSYMBOL_MULTIWORD_PREDICATE):
1225         (DEFSYMBOL_MULTIWORD_PREDICATE_NO_DUMP):
1226         (DEFKEYWORD):
1227         The construct &##name is not sensible C.
1228         Fixes compilation errors with Unixware native compiler.
1229
1230 2000-09-14  Martin Buchholz  <martin@xemacs.org>
1231
1232         * frame.c (device_matches_console_spec): no longer takes a `frame' arg
1233         (next_frame_internal): Removed.  We now just have next_frame.
1234         (next_frame):
1235         Write a simpler and cleaner one-pass algorithm.
1236         Remove called_from_delete_device arg and #ifdefed-out code.
1237         (previous_frame):
1238         Renamed from prev_frame.  Update callers.
1239         Cleaned up to have an analogous implementation to next_frame.
1240         (other_visible_frames_internal): Remove the
1241         called_from_delete_device bogus arg, and hence, remove this
1242         function.  Just use other_visible_frames().
1243
1244         * window.c (Fnext_window):
1245         Prettify docstring.
1246         Since next_frame() is guaranteed to return a frame, remove check
1247         for nil inserted in previous patch.
1248         (Fprevious_window):
1249         Prettify docstring.
1250         Make code look more like Fnext_window.
1251         (window_loop):
1252         Respect the `console' arg when iterating through windows.
1253         Fixes bug: (get-buffer-window buffer t device) not respecting
1254         the `device' arg.
1255         This function needs more work, as others have pointed out.
1256
1257         * frame.h: Rename prev_frame to previous_frame.
1258         device_matches_console_spec no longer takes a `frame' arg.
1259
1260         * s/gnu.h:
1261         * s/linux.h:
1262         * s/hpux.h:
1263         Use EMACS_BLOCK_SIGNAL instead of sigblock.
1264         From "Golubev I. N." <gin@mo.msk.ru>.
1265
1266         * make-src-depend: Fix typo.
1267
1268 2000-09-13  Martin Buchholz  <martin@xemacs.org>
1269
1270         * window.c (Fnext_window):
1271         next_frame() might return nil, not a frame.
1272         Fixes this crash:
1273         (gdb) run -eval '(progn  (make-device (quote x) "polgar:0") (next-window (minibuffer-window) t (quote visible) (second (device-list))))'
1274
1275         * frame.c (next_frame_internal):
1276         We've passed a frame if we've passed its device.
1277         Fixes this crash:
1278         (gdb) run -eval '(progn (make-frame nil (make-device (quote x) "polgar:0")) (next-window (minibuffer-window) t (quote visible) (second (device-list))))'
1279 Fatal error: assertion failed, file /project/xemacs/ws/dev/src/frame.h, line 245, RECORD_TYPEP (obj, lrecord_type_frame)
1280
1281 2000-09-11  Jonathan Harris  <jhar@tardis.ed.ac.uk>
1282
1283         * menubar-msw.c (mswindows_translate_menu_or_dialog_item):
1284         Allow option to suppress accelerators in menu/dialog items.
1285         (populate_or_checksum_helper): Pass dialog title through above.
1286
1287 2000-09-10  Jonathan Harris  <jhar@tardis.ed.ac.uk>
1288
1289         * event-msw.c (mswindows_key_to_emacs_keysym):
1290         Add "pause" key, fix "menu" key.
1291
1292 2000-09-09  Martin Buchholz  <martin@xemacs.org>
1293
1294         * eval.c (reinit_vars_of_eval):
1295         Increase max_lisp_eval_depth to 1000,
1296         required for thai-xtis.el to byte-compile under some circumstances.
1297
1298 2000-09-04  Martin Buchholz  <martin@xemacs.org>
1299
1300         * event-Xt.c (x_to_emacs_keysym): Increase size of `buffer' to 513.
1301         From Kenichi Handa.
1302
1303 2000-09-01  Martin Buchholz  <martin@xemacs.org>
1304
1305         * make-src-depend: Make the generated Makefiles smaller.
1306
1307         * s/hpux.h (SETUP_SLAVE_PTY):
1308         Provide a %d in the format string for the errno argument.
1309
1310         * editfns.c (Ftemp_directory):
1311         Warning fix.
1312         Avoid buffer overrun on very long file name.
1313
1314         * input-method-xlib.c (XIM_init_device):
1315         6th parameter of XRegisterIMInstantiateCallback has different
1316         pointer types on different OSes, so simply cast to (void *).
1317
1318         * unexhp9k800.c: Warning fixes.  Fiddly changes.
1319
1320         * sysdll.c (dll_open):
1321         shl_load will hang hard if passed a NULL filename.
1322         Simply return NULL for compatibility with dlopen.
1323         * sysdll.c: Conform to XEmacs coding standards.
1324
1325         * sysdep.c (get_pty_max_bytes):
1326         Support pty input lines longer than 512 bytes on HP-UX 10.20.
1327
1328 2000-08-31  Martin Buchholz  <martin@xemacs.org>
1329
1330         * tooltalk.c: Add #include <syssignal.h>
1331
1332 2000-08-12  Alexandre Oliva  <aoliva@redhat.com>
1333
1334         * s/hpux.h: Don't use undefined function sigunblock().
1335
1336 2000-08-31  Martin Buchholz  <martin@xemacs.org>
1337
1338         * config.h.in: Add HAVE_BALLOON_HELP.
1339         * emacs.c: Use HAVE_BALLOON_HELP.
1340         * Makefile.in.in (x_objs):
1341         Make Balloon Help conditional on finding shape.h.
1342
1343 2000-08-23  Yoshiki Hayashi  <yoshiki@xemacs.org>
1344
1345         * syntax.c (regex_emacs_buffer_p): New variable.
1346         * syntax.h (regex_emacs_buffer_p): extern.
1347         * search.c (looking_at_1):
1348         (string_match_1):
1349         (fast_string_match):
1350         (search_buffer): Set regex_emacs_buffer_p.
1351         * regex.c (re_match_2_internal): Reference regex_emacs_buffer_p
1352         when before_dot, at_dot, after_dot.
1353
1354 2000-08-23  Andy Piper  <andy@xemacs.org>
1355
1356         * gui-x.c (popup_selection_callback): Only set action_occurred
1357         when we really have an image instance.
1358         * gui-msw.c (mswindows_handle_gui_wm_command): ditto.
1359
1360 2000-08-23  Andy Piper  <andy@xemacs.org>
1361
1362         * gui-msw.c (mswindows_handle_gui_wm_command): set
1363         action_occurred.
1364         * gui-x.c (popup_selection_callback): ditto.
1365
1366         * glyphs.h (IMAGE_INSTANCE_WIDGET_ACTION_OCCURRED): new accessor.
1367         (XIMAGE_INSTANCE_WIDGET_ACTION_OCCURRED): ditto.
1368         (struct Lisp_Image_Instance): add action_occurred flag.
1369
1370         * glyphs.c (redisplay_subwindow): use action_occurred flag.
1371         (image_instance_changed): ditto.
1372         (reset_frame_subwindow_instance_cache): only unmap windows - do
1373         not remove them from the cache also.
1374
1375         * glyphs-widget.c (tab_control_update): better debug.
1376         (progress_gauge_update): ditto.
1377         (layout_update): ditto.
1378         (layout_instantiate): ditto.
1379         (tab_control_order_only_changed): cope with null pending items.
1380
1381         * glyphs-msw.c (mswindows_tab_control_redisplay): add better
1382         debug. Force selection of an item when an action occurred. Cope
1383         with null pending_items.
1384         (mswindows_progress_gauge_redisplay): better debug.
1385         * glyphs-x.c (x_tab_control_redisplay): ditto.
1386
1387         * redisplay.c (redisplay_frame): reset the frame cache if the
1388         frame is garbaged.
1389
1390         * window.c (Fset_window_configuration): potentially re-enable
1391         frame cache reset.
1392         (window_unmap_subwindows): need to finalize instances here since
1393         it is only used in mark_window_as_deleted.
1394
1395 2000-08-22  Stephen J. Turnbull  <stephen@xemacs.org>
1396
1397         * nas.c (SndOpenDataForReading):
1398         nas.c (WaveOpenDataForReading):
1399         nas.c (readChunk): {BIG,LITTLE}_ENDIAN -> NAS_{BIG,LITTLE}_ENDIAN.
1400         Somehow escaped from the 2000-08-14 patch.
1401
1402 2000-08-14  Stephen J. Turnbull  <stephen@xemacs.org>
1403
1404         * nas.c:  Preprocessor trickery to use NAS_LITTLE_ENDIAN instead
1405         of LITTLE_ENDIAN (conflicts with glibc, at least) in NAS <= 1.2p5.
1406
1407 2000-08-21  Andy Piper  <andy@xemacs.org>
1408
1409         * glyphs-x.c (x_map_subwindow): Minor optimization - only map the
1410         window if it is not already displayed.
1411
1412         * glyphs-msw.c (mswindows_map_subwindow): only map the window if
1413         it is not already displayed.
1414
1415         * window.c (Fset_window_configuration): don't reset the frame
1416         cache.
1417
1418         * glyphs.c (unmap_subwindow_instance_cache_mapper): only remove
1419         instances from the frame cache if we are actually finalizing them.
1420         (reset_frame_subwindow_instance_cache): reset frame cache only
1421         after unmapping everything.
1422         (map_subwindow): set displayed flag after mapping.
1423
1424 2000-08-21  Martin Buchholz  <martin@xemacs.org>
1425
1426         * data.c (indirect_function):
1427         Rename ERRORP to non-misleading VOID_FUNCTION_ERRORP.
1428
1429         * eval.c (function_argcount):
1430         Use original function when signaling errors.
1431
1432 2000-08-18  Andy Piper  <andy@xemacs.org>
1433
1434         * frame.c (delete_frame_internal): use new
1435         free_frame_subwindow_instances name.
1436
1437         * glyphs-msw.c (mswindows_tab_control_instantiate): verify index.
1438         (add_tab_item): make return type correct.
1439         (mswindows_tab_control_instantiate): assert index of tab.
1440         (mswindows_tab_control_redisplay): Re-code to use
1441         gui_item_equal_sans_selected and gui_item_list_find_selected.
1442
1443         * glyphs-widget.c (tab_control_update): Correct comment.
1444
1445         * window.c (window_unmap_subwindows): use new
1446         unmap_subwindow_instance_cache_mapper.
1447         (window_unmap_subwindows_cache_mapper): deleted.
1448         (Fset_window_configuration): comparisons should now be with
1449         EQ. Preserve the subwindow instance cache across configuration
1450         changes.
1451         (allocate_window): ditto.
1452         (make_dummy_parent): ditto.
1453
1454         * glyphs.c (free_frame_subwindow_instances): rename from
1455         free_frame_subwindow_instance_cache. finalize all instances rather
1456         than just those in the display cache.
1457         (finalize_all_subwindow_instances): walk windows unmapping and
1458         finalizing subwindows.
1459         (unmap_subwindow_instance_cache_mapper): moved from
1460         window.c. Allow finalization as well as unmapping.
1461
1462         * gui.c (gui_item_list_find_selected): new function.
1463
1464         * gui.h (gui_item_list_find_selected): declare.
1465
1466         * glyphs-x.c (x_tab_control_redisplay): pick tab
1467         explicitly. Re-code to use gui_item_equal_sans_selected and
1468         gui_item_list_find_selected.
1469
1470         * glyphs-x.h: add lwlib-utils.h
1471
1472         * buffer.c (Frecord_buffer): undo previous change.
1473
1474 2000-08-09  Vin Shelton  <acs@xemacs.org>
1475
1476         * config.h.in, s/gnu.h, s/hpux.h, s/linux.h: Use UNIX98 PTYs if
1477         possible.  Create temporary files more securely.  The patch was
1478         generated by Torsten Duwe <duwe@caldera.de>, Florian Weimer
1479         <Florian.Weimer@RUS.Uni-Stuttgart.DE> and Olaf Kirch.  See
1480         http://www.xemacs.org/list-archives/xemacs-patches/200007/msg00123.html
1481         for details.
1482
1483 2000-08-07  Ben Wing  <ben@xemacs.org>
1484
1485         * getloadavg.c: remove duplicate (and windows-breaking)
1486         includes of fcntl.h and sys/file.h.
1487
1488         * nt.c: remove duplicate getloadavg() definition.
1489
1490         * sysdll.h (Qdll_filename_encoding): add missing stand-in
1491         encodings.
1492
1493 2000-08-07  Gunnar Evermann  <ge204@eng.cam.ac.uk>
1494
1495         * eval.c (function_argcount): If function needs to be autoloaded
1496         actually use the loaded definition.
1497         GCPRO function.
1498
1499 2000-08-05  Ben Wing  <ben@xemacs.org>
1500
1501         * getloadavg.c: add prototype for getloadavg().  remove
1502         duplicate WIN32_NATIVE/CYGWIN code (already in the middle
1503         of the code).  remove duplicate header includes.
1504
1505         * s\cygwin32.h, s\mingw32.h: remove stray NO_ARG_ARRAY.
1506
1507         * s\cygwin32.h, s\mingw32.h, m\windowsnt.h:
1508         don't define LOAD_AVE_TYPE/LOAD_AVE_CVT because we have no
1509         useful load average.
1510
1511         * alloc.c (reinit_alloc_once_early): removed references to
1512         VIRT_ADDR_VARIES, malloc_sbrk_used/free, and data-bytes-used/free.
1513         the lisp vars are the only things referencing the malloc_sbrk_*
1514         vars, and they were already if 0'd out.  these vars only exist
1515         in the older malloc.c, which is basically unused, and they're
1516         only for informational purposes.
1517
1518         * m\*.h: removed useless VIRT_ADDR_VARIES.
1519
1520         * m\powerpc.h: removed stray NO_ARG_ARRAY.
1521
1522 2000-04-26  IKEYAMA Tomonori  <tomonori@suiyokai.org>
1523
1524         * redisplay-msw.c (mswindows_output_dibitmap): Set foreground
1525         color if the image is a mono pixmap.
1526
1527 2000-07-30  Ben Wing  <ben@xemacs.org>
1528
1529         * Makefile.in.in (release):
1530         Remove stray @.
1531
1532         * buffer.c (directory_is_current_directory):
1533         * dired-msw.c (mswindows_get_files):
1534         * dired.c:
1535         * dired.c (Fdirectory_files):
1536         * dired.c (file_name_completion_stat):
1537         * dired.c (Ffile_attributes):
1538         [[[[1]]]]: Rename stat() -> xemacs_stat() and eliminate nasty
1539         preprocessor tricks, to avoid problems on some machines
1540         (e.g. SCO).
1541
1542         * callproc.c (egetenv): GC docs.
1543
1544         * console-msw.h:
1545         * console-msw.h (struct mswindows_dialog_id):
1546         * lrecord.h (lrecord_type):
1547         New object for use with MSW dialogs.
1548
1549         * console.h (struct console_methods):
1550         New enable/disable frame methods, for proper modal dialogs.
1551
1552         * device-msw.c (msprinter_default_printer): Fix to follow
1553         proper Mule conventions.
1554
1555         * device-msw.c:
1556         * device-msw.c (signal_open_printer_error):
1557         * device-msw.c (msprinter_init_device):
1558         * device-msw.c (ensure_not_printing):
1559         * device-msw.c (plist_get_margin):
1560         * device-msw.c (Fmsprinter_select_settings):
1561         * device-msw.c (finalize_devmode):
1562         * device-msw.c (Fmsprinter_settings_despecialize):
1563         * device-msw.c (signal_enum_priner_error):
1564         * extents.c (decode_extent):
1565         * extents.c (decode_map_extents_flags):
1566         * extents.c (decode_extent_at_flag):
1567         * extents.c (Fextent_at):
1568         * extents.c (Fextents_at):
1569         * extents.c (symbol_to_glyph_layout):
1570         [[[[2]]]] Use structured errors.
1571
1572         * dialog-msw.c:
1573         * dialog-msw.c (mswindows_is_dialog_msg):
1574         * dialog-msw.c (mark_mswindows_dialog_id):
1575         * dialog-msw.c (dialog_proc):
1576         * dialog-msw.c (handle_question_dialog_box):
1577         * dialog-msw.c (syms_of_dialog_mswindows):
1578         Define new object to clean up marking; use it as a dialog identifier.
1579         Call new delete-dialog-box-hook.
1580
1581         * dialog-x.c (dbox_selection_callback):
1582         * dialog-x.c (dbox_descriptor_to_widget_value):
1583         * dialog-x.c (x_make_dialog_box_internal):
1584         Call new delete-dialog-box-hook.
1585         Return an id.
1586
1587         * dialog.c:
1588         * dialog.c (syms_of_dialog):
1589         * dialog.c (vars_of_dialog):
1590         Define new delete-dialog-box-hook, for use w/modal dialog boxes.
1591
1592         * eval.c:
1593         * eval.c (signal_call_debugger):
1594         when noninteractive, output stack traces on the console instead
1595         of in a (never-seen) buffer.
1596
1597         * eval.c (signal_type_error):
1598         * eval.c (invalid_argument_2):
1599         * lisp.h:
1600         new funs for use w/structured errors.
1601
1602         * event-Xt.c:
1603         * event-Xt.c (x_to_emacs_keysym):
1604         * event-Xt.c (describe_event):
1605         * event-Xt.c (emacs_Xt_event_handler):
1606         * event-Xt.c (vars_of_event_Xt):
1607         * event-msw.c:
1608         * event-msw.c (mswindows_wnd_proc):
1609         * event-msw.c (vars_of_event_mswindows):
1610         rename {x,mswindows}-debug-events to debug-{}-events for
1611         consistency with other debug-foo variables.
1612
1613         * event-stream.c:
1614         document next-event more clearly.
1615
1616         * fileio.c (Ffile_name_directory):
1617         * fileio.c (Ffile_name_nondirectory):
1618         * fileio.c (Funhandled_file_name_directory):
1619         * fileio.c (file_name_as_directory):
1620         * fileio.c (Ffile_name_as_directory):
1621         * fileio.c (directory_file_name):
1622         * fileio.c (Fdirectory_file_name):
1623         * fileio.c (Fmake_temp_name):
1624         * fileio.c (Ffile_truename):
1625         * fileio.c (Fsubstitute_in_file_name):
1626         * fileio.c (expand_and_dir_to_file):
1627         * fileio.c (barf_or_query_if_file_exists):
1628         * fileio.c (check_executable):
1629         * fileio.c (Ffile_exists_p):
1630         * fileio.c (Ffile_writable_p):
1631         * fileio.c (Ffile_directory_p):
1632         * fileio.c (Ffile_regular_p):
1633         * fileio.c (Ffile_modes):
1634         * fileio.c (Ffile_newer_than_file_p):
1635         * fileio.c (Fverify_visited_file_modtime):
1636         * fileio.c (Fset_visited_file_modtime):
1637         * fileio.c (auto_save_1):
1638         (1). (2).
1639         fix up gcpro's.
1640
1641         * frame-msw.c:
1642         * frame-msw.c (mswindows_init_frame_1):
1643         * frame-msw.c (mswindows_enable_frame):
1644         * frame-msw.c (error_frame_unsizable):
1645         * frame-msw.c (msprinter_init_frame_1):
1646         * frame-msw.c (msprinter_init_frame_3):
1647         * frame-msw.c (console_type_create_frame_mswindows):
1648         (2).
1649         implement new enable/disable frame methods.
1650
1651         * frame-x.c:
1652         * frame-x.c (x_enable_frame):
1653         * frame-x.c (console_type_create_frame_x):
1654         implement new enable/disable frame methods.
1655
1656         * frame.c:
1657         * frame.c (Fdisable_frame):
1658         * frame.c (syms_of_frame):
1659         * frame.h (struct frame):
1660         implement new enable/disable frame methods/functions.
1661
1662         * general-slots.h:
1663         add initial-focus.
1664
1665         * glyphs-msw.c (mswindows_widget_instantiate):
1666         comment that initial-focus should be implemented.
1667
1668         * glyphs-widget.c:
1669         * glyphs-widget.c (check_valid_instantiator):
1670         * glyphs-widget.c (check_valid_orientation):
1671         * glyphs-widget.c (check_valid_tab_orientation):
1672         * glyphs-widget.c (check_valid_justification):
1673         * glyphs-widget.c (check_valid_border):
1674         * glyphs-widget.c (check_valid_callback):
1675         * glyphs-widget.c (check_valid_int_or_function):
1676         * glyphs-widget.c (check_valid_string_or_vector):
1677         * glyphs-widget.c (check_valid_item_list_1):
1678         * glyphs-widget.c (widget_validate):
1679         * glyphs-widget.c (combo_box_validate):
1680         * glyphs-widget.c (widget_instantiate):
1681         * glyphs-widget.c (syms_of_glyphs_widget):
1682         * glyphs-widget.c (VALID_WIDGET_KEYWORDS):
1683         * glyphs-widget.c (image_instantiator_combo_box):
1684         * glyphs-widget.c (image_instantiator_scrollbar):
1685         * glyphs-widget.c (image_instantiator_tab_control):
1686         * glyphs-widget.c (VALID_LAYOUT_KEYWORDS):
1687         (2).
1688         support (unimplemented) keyword initial-focus.
1689         reindent long macros.
1690
1691         * glyphs-x.c (x_redisplay_widget):
1692         * glyphs-x.c (x_button_instantiate):
1693         * glyphs-x.c (x_button_redisplay):
1694         * glyphs-x.c (x_progress_gauge_instantiate):
1695         * glyphs-x.c (x_edit_field_instantiate):
1696         * glyphs-x.c (x_combo_box_instantiate):
1697         * glyphs-x.c (x_tab_control_instantiate):
1698         * glyphs-x.c (x_label_instantiate):
1699         * gui-x.c:
1700         * gui-x.c (button_item_to_widget_value):
1701         * gui-x.c (gui_items_to_widget_values_1):
1702         * gui-x.c (gui_item_children_to_widget_values):
1703         * gui-x.c (gui_items_to_widget_values):
1704         * gui-x.h:
1705         * menubar-x.c (menu_item_descriptor_to_widget_value_1):
1706         add new flag to gui-parsing routines to indicate whether
1707         accelerator specs should be supported.
1708
1709         * glyphs.c (syms_of_glyphs): use DEFSYMBOL.
1710
1711         * glyphs.h (struct Lisp_Image_Instance):
1712         * glyphs.h (IMAGE_INSTANCE_WANTS_INITIAL_FOCUS):
1713         add initial-focus flag.
1714
1715         * gui.c:
1716         * gui.c (syms_of_gui):
1717         * gui.c (vars_of_gui):
1718         clean up menu-no-selection-hook.
1719
1720         * gui.h:
1721         support delete-dialog-box-hook.
1722
1723         * lread.c (Fload_internal):
1724         * lread.c (locate_file_in_directory_mapper):
1725         (1).
1726
1727         * lrecord.h:
1728         * lrecord.h (struct toolbar_button):
1729         * lrecord.h (syms_of_toolbar):
1730         document how to create a new object.
1731
1732         * menubar-msw.c (mswindows_char_is_accelerator):
1733         may be called on frames w/o menus.
1734
1735         * menubar.c (vars_of_menubar):
1736         clean up :filter docs.
1737
1738         * nt.c (readdir):
1739         * ntproc.c:
1740         (1).
1741
1742         * process-nt.c:
1743         * process-nt.c (validate_signal_number):
1744         * process-nt.c (signal_cannot_launch):
1745         * process-nt.c (nt_create_process):
1746         * process-nt.c (nt_send_process):
1747         * process-nt.c (nt_kill_child_process):
1748         * process-nt.c (nt_open_network_stream):
1749         * process-nt.c (syms_of_process_nt):
1750         (2).
1751         delete quote-handling.  call new lisp code that does it better.
1752
1753         * process-unix.c (connect_to_file_descriptor):
1754         * process-unix.c (allocate_pty):
1755         * process-unix.c (unix_send_process):
1756         * process-unix.c (unix_kill_child_process):
1757         * process-unix.c (unix_open_network_stream):
1758         * process-unix.c (unix_open_multicast_group):
1759         (1). (2).
1760
1761         * process.c:
1762         * process.c (Fstart_process_internal):
1763         (2).  need to canonicalize process path even if absolute.
1764
1765         * select-msw.c (symbol_to_ms_cf):
1766         * select-msw.c (ms_cf_to_symbol):
1767         * select-msw.c (cf_is_autofreed):
1768         * select-msw.c (mswindows_destroy_selection):
1769         * select.c:
1770         * select.c (syms_of_select):
1771         * select.h:
1772         support dibv5, fix bugs. (from Mike Alexander)
1773
1774         * select.c (Fget_selection_internal):
1775         * select.c (select_convert_out):
1776
1777         * sysdep.c:
1778         * sysdep.c (xemacs_stat):
1779         renamed.
1780
1781         * sysdep.c (mkdir):
1782         * sysdep.c (rmdir):
1783         but keep original stat() here because we provide encapsulation
1784         around these funs.
1785
1786         * sysfile.h:
1787         * sysfile.h (fstat):
1788         remove stat garbage.
1789
1790         * syswindows.h:
1791         fix X/MSW conflict.
1792         don't include tchar.h.  it's inappropriate because it makes
1793         compile-time distinctions when we want runtime distinctions.
1794         (we provide our own tchar replacements)
1795
1796         * toolbar.c:
1797         use default object printer for toolbar-button.
1798
1799         * unexcw.c:
1800         make sure we don't encapsulate.
1801
1802         * window.c (vars_of_window):
1803         emphasize that temp-buffer-show-hook is obsolete.
1804
1805 2000-08-05  Martin Buchholz  <martin@xemacs.org>
1806
1807         * glyphs.c (image_instance_hash): HASH2 wants EMACS_INT args.
1808         (Fimage_instance_subwindow_id): make_int wants EMACS_INT arg.
1809
1810         * events.c (Fevent_timestamp_lessp):
1811         Not 64-bit clean.  Use EMACS_INT, not int.
1812
1813 2000-06-05  Andrew Begel <abegel@cs.berkeley.edu>
1814
1815         * lrecord.h (lrecord_types): Changed lrecord_type_count to an
1816         unsigned int and changed the last enum to
1817         lrecord_type_last_built_in_type.
1818         (lrecord_implementations_table): changed prototype to know how
1819         long the array is supposed to be.
1820         (lrecord_type_count): new unsigned int to keep track of the
1821         current number of lisp lrecord types.
1822         (DEFINE_EXTERNAL_LRECORD):
1823         (DECLARE_EXTERNAL_LRECORD): Added these two for external
1824         dynamic-modules to declare new lisp types. They are the same
1825         as the non-EXTERNAL forms, but declare an lrecord_type unsigned
1826         int for each new type, and increment lrecord_type_count by 1.
1827
1828         * alloc.c (lrecord_implementations_table): Changed to reference
1829         lrecord_type_last_built_in_type for the size of the array.
1830         Moved MODULE_DEFINABLE_TYPE_COUNT to lrecord.h.
1831
1832 2000-08-03  Yoshiki Hayashi  <yoshiki@xemacs.org>
1833
1834         * glyphs.h (check_valid_item_list): Renamed from
1835         check_valid_item_list_1.
1836
1837 2000-08-01 Alastair J. Houghton <ajhoughton@lineone.net>
1838
1839         * select.c (Qselect_coerce): New.
1840         * select.c (Vselection_coercion_alist): New.
1841         * select.c (syms_of_select): Declare.
1842         * select.c (get-selection-internal): Use it.
1843         Use the new select-coerce functionality.
1844
1845         * select.c (select_coerce): New.
1846         * select.h (select_coerce): Declare.
1847         New function to coerce one type of data into another.
1848
1849 2000-08-03  Martin Buchholz  <martin@xemacs.org>
1850
1851         * callproc.c (Fcall_process_internal):
1852         (Fcall_process_internal):
1853         * process-unix.c (unix_create_process):
1854         Save and restore the value of errno, so that error messages are accurate.
1855
1856 2000-08-01  Martin Buchholz  <martin@xemacs.org>
1857
1858         * elhash.c (print_hash_table):
1859         Fix printing of hash tables to also use `key-and-value' instead of `t'.
1860         Prettify docstrings and indentation.
1861
1862 2000-07-31  Yoshiki Hayashi  <yoshiki@xemacs.org>
1863
1864         * window.c (Fwindow_pixel_edges): Subtract frame border and
1865         gutter size.
1866
1867 2000-07-31  Andy Piper  <andy@xemacs.org>
1868
1869         * buffer.c (Frecord_buffer): make absolutely sure that redisplay
1870         will acknowledge the change.
1871
1872         * glyphs.h: declare tab_control_order_only_changed.
1873
1874         * glyphs-x.c (x_tab_control_redisplay): use
1875         tab_control_order_only_changed.
1876
1877         * glyphs-widget.c (tab_control_order_only_changed): new function.
1878
1879         * glyphs-msw.c (mswindows_tab_control_redisplay): use
1880         tab_control_order_only_changed.
1881
1882         * gui.c (gui_item_equal_sans_selected): new function.
1883         (gui_item_equal): use it.
1884
1885         * glyphs-msw.c (mswindows_combo_box_instantiate): deprecate
1886         :properties in favor of :items..
1887
1888         * glyphs-widget.c (check_valid_item_list): rename from
1889         check_valid_item_list_1.
1890         (check_valid_item_list_1): renamed.
1891         (combo_box_validate): deprecate :properties in favor of :items.
1892         (widget_instantiate): ditto.
1893         (tab_control_update): ditto.
1894         (image_instantiator_combo_box): ditto.
1895         (image_instantiator_tree_view): ditto.
1896         (image_instantiator_tab_control): ditto.
1897         (layout_post_instantiate): remove dead code.
1898
1899         * print.c (debug_print_no_newline): only write to debugger if in
1900         WIN32_NATIVE.
1901
1902         * elhash.c (Fmake_hash_table): update doc string.
1903
1904         * event-msw.c (mswindows_wnd_proc): don't allow processing of
1905         messages whilst in GC. This at least stops XEmacs crashing but has
1906         the potential for wierd behaviour.
1907
1908 2000-07-31  Martin Buchholz  <martin@xemacs.org>
1909
1910         * config.h.in:
1911         Make existence of s&m files optional.
1912
1913         * s/bsd386.h: Remove HAVE_GETLOADAVG.
1914         * s/freebsd.h: Remove HAVE_GETLOADAVG.
1915         * s/gnu.h: Remove HAVE_GETLOADAVG.
1916         * s/netbsd.h: Remove HAVE_GETLOADAVG.
1917         * s/sol2.h: Remove HAVE_GETLOADAVG.
1918         * lisp.h: Remove getloadavg() declaration.
1919         * fns.c:
1920         Include <sys/loadavg.h> if available.
1921         Don't declare our own getloadavg() if HAVE_GETLOADAVG.
1922         * config.h.in:  Group together getloadavg()-related macros.
1923         Use only configure-time tests to detect getloadavg().
1924
1925 2000-07-30  Martin Buchholz  <martin@xemacs.org>
1926
1927         * Makefile.in.in (TransientEmacsShell.o): Fix race condition.
1928
1929 2000-07-25  Andy Piper  <andy@xemacs.org>
1930
1931         * syswindows.h: add tchar.h for native builds.
1932
1933         * frame.c (syms_of_frame): remove set-glyph-image.
1934
1935         * general-slots.h: add Qset_glyph_image.
1936
1937         * glyphs-widget.c (layout_update): add domain arg to
1938         set-glyph-image.
1939         (syms_of_glyphs_widget): remove set-glyph-image.
1940
1941 2000-07-23  Ben Wing  <ben@xemacs.org>
1942
1943         * dialog-msw.c (vars_of_dialog_mswindows): need to staticpro
1944         Vpopup_frame_list.
1945
1946 2000-07-22  Andy Piper  <andy@xemacs.org>
1947
1948         * symsinit.h: add syms_of_win32().
1949
1950         * gui-msw.c (syms_of_gui_mswindows): remove
1951         Fmswindows_shell_execute.
1952         (Fmswindows_shell_execute): moved to win32.c.
1953
1954         * emacs.c (main_1): add syms_of_win32 ().
1955
1956         * win32.c (init_potentially_nonexistent_functions): rewrite in
1957         compiler-friendly terms.
1958         (Fmswindows_shell_execute): move here from gui-msw.c.
1959         (syms_of_win32): new.
1960
1961         * device-msw.c (Fmswindows_printer_list): clean up args to
1962         EnumPrinters.
1963         Don't include tchar under cygwin or mingw.
1964         (msprinter_default_printer): make cygwin-friendly.
1965
1966 2000-07-21  Andy Piper  <andy@xemacs.org>
1967
1968         * glyphs-widget.c (image_instantiator_tree_view): use tab
1969         control's update function.
1970         (layout_property): new function. Retrieve items.
1971
1972         * glyphs-msw.c (mswindows_tree_view_redisplay): new
1973         function. Re-populate the tree view from the pending items.
1974
1975         * glyphs.c (instantiate_image_instantiator): Make sure the domain
1976         is designated the parent if the domain is an image instance. This
1977         is needed so that dirtiness can be cascade up the hierarchy and
1978         thus for layout children to be redisplayed correctly.
1979         (allocate_image_instance): rename glyph -> parent.
1980
1981         * redisplay.h: change redisplay_output_layout signature.
1982
1983         * redisplay-msw.c (mswindows_output_display_block): use domain
1984         arg.
1985
1986         * redisplay-x.c (x_output_display_block): use domain arg.
1987
1988 2000-07-10  Andy Piper  <andy@xemacs.org>
1989
1990         * window.c (Fset_window_configuration): add comment.
1991
1992         * redisplay-output.c (compare_runes):
1993         (redisplay_output_subwindow): redisplay rather than update subwindow.
1994         (redisplay_output_layout): ditto.
1995
1996         * redisplay-msw.c (mswindows_frame_output_end):
1997         (mswindows_frame_output_end): make defer window pos optional.
1998
1999         * lisp.h: add Flast.
2000
2001         * glyphs.h (struct image_instantiator_methods): add dest_mask top
2002         normalize method. Change update method to be for changed
2003         instantiators. Add redisplay method. Change signature of layout
2004         method.
2005         (struct Lisp_Image_Instance): add instantiator.
2006         (IMAGE_INSTANCE_INSTANTIATOR): new.
2007         (IMAGE_INSTANCE_SUBWINDOW_FACE): new.
2008         (XIMAGE_INSTANCE_INSTANTIATOR): new.
2009         (XIMAGE_INSTANCE_SUBWINDOW_FACE): new.
2010
2011         * glyphs.c:
2012         (find_instantiator_differences): new function.
2013         (Fset_instantiator_property): new convenience function.
2014         (check_image_instance_structure): strictly check for vector
2015         instantiators.
2016         (normalize_image_instantiator): make non-static.
2017         (instantiate_image_instantiator): pass on dest_mask and use new
2018         signatures for image_instance_layout and friends.
2019         (mark_image_instance): mark the instantiator. Mark the subwindow
2020         face not the widget face.
2021         (image_instance_equal): add instantiator.
2022         (image_instance_hash): ditto.
2023         (allocate_image_instance): ditto.
2024         (Fset_image_instance_property): removed.
2025         (Fimage_instance_file_name): ditto.
2026         (Fcolorize_image_instance): ditto.
2027         (image_instance_layout): add offsets to be set.
2028         (update_image_instance): new function. update an image instance
2029         from its changed instantiator.
2030         (inherit_normalize): add dest_mask.
2031         (xbm_normalize): ditto.
2032         (xface_normalize): ditto.
2033         (xpm_normalize): ditto.
2034         (text_update): set_property -> update.
2035         (image_instantiate): use the glyph identity as a hash key, not the
2036         instantiator.
2037         (glyph_width): use new image_instance_layout signature.
2038         (glyph_ascent): ditto.
2039         (glyph_descent): ditto.
2040         (glyph_height): ditto.
2041         (glyph_query_geometry): ressurrect.
2042         (glyph_layout): ditto.
2043         (redisplay_subwindow): update -> redisplay.
2044         (syms_of_glyphs): add Fset_instantiator_property.
2045         (image_instantiator_format_create): set_property -> update.
2046
2047         * glyphs-x.c:
2048         (autodetect_normalize): add dest_maks to signature.
2049         (x_redisplay_subwindow): update -> redisplay.
2050         (x_redisplay_widget): ditto.
2051         (x_button_redisplay): ditto.
2052         (x_progress_gauge_redisplay): ditto.
2053         (x_tab_control_redisplay): ditto. Rewrite to cope with changed
2054         stacking order.
2055         (console_type_create_glyphs_x): update -> redisplay.
2056         (image_instantiator_format_create_glyphs_x): ditto.
2057
2058         * glyphs-widget.c:
2059         (check_valid_instantiator): disallow glyphs in the instantiator,
2060         they must now be vectors.
2061         (check_valid_instantiator_list): ditto.
2062         (glyph_instantiator_to_glyph): use internal symbol rather than
2063         intern.
2064         (widget_update): renamed from widget_set_property. Call cascaded
2065         update methods.
2066         (redisplay_widget): renamed from update_widget.
2067         (widget_layout): image_instance_layout now takes position as well
2068         as size.
2069         (widget_normalize): ditto.
2070         (widget_instantiate): ditto.
2071         (tab_control_query_geometry) ditto.:
2072         (tab_control_update): renamed from tab_control_set_property.
2073         (progress_gauge_update): set_property -> update.
2074         (layout_normalize): rewrite so that child instantiators are
2075         normalized also.
2076         (layout_update): new function. Create glyphs from the normalized
2077         children and cope with any other layout keywords. We do not
2078         instantiate children here that will be take care of by
2079         redisplay_output_layout.
2080         (layout_instantiate): call layout_update and not much else.
2081         (layout_post_instantiate): not sure whether this is needed
2082         anymore.
2083         (layout_query_geometry): query glyph geometry rather than
2084         image_instance geometry.
2085         (layout_layout): set offsets from pass in parameters. Use glyph
2086         geometry and layout functions rather than image instance ones.
2087         (native_layout_layout): ditto.
2088         (syms_of_glyphs_widget): add make-glyph and set-glyph-image.
2089         (image_instantiator_widget): set_property -> update.
2090         (image_instantiator_buttons): ditto.
2091         (image_instantiator_progress_guage): ditto.
2092         (image_instantiator_tab_control): ditto.
2093         (VALID_LAYOUT_KEYWORDS): instantiators must now be vectors.
2094         (image_instantiator_layout): add update method.
2095
2096         * glyphs-msw.c (bmp_normalize):
2097         (mswindows_resource_normalize): add dest_mask so that it can be
2098         proprogated by layout_normalize.
2099         (begin_defer_window_pos): make optional because it may not be the
2100         right thing to do and it introduces differences with X.
2101         (mswindows_unmap_subwindow): ditto.
2102         (mswindows_map_subwindow): ditto.
2103         (mswindows_redisplay_subwindow): renamed from
2104         mswindows_update_subwindow.
2105         (mswindows_redisplay_widget): ditto.
2106         (mswindows_button_redisplay): renamed from
2107         mswindows_button_update. Update is now what the instantiation
2108         function does for a changed instantiator.
2109         (mswindows_progress_gauge_instantiate): set the progress value
2110         here if appropriate.
2111         (mswindows_tab_control_redisplay): cope with re-ordering of the
2112         members of the tab widget by simply selecting the new top
2113         widget. This makes things appear ok if you click on a tab.
2114         (mswindows_combo_box_instantiate): image_instance_layout now takes
2115         position as well as size.
2116         (mswindows_progress_gauge_redisplay): renamed from
2117         mswindows_progress_gauge_update.
2118         (console_type_create_glyphs_mswindows): fix update -> redisplay.
2119         (image_instantiator_format_create_glyphs_mswindows): ditto.
2120
2121         * glyphs-eimage.c (jpeg_normalize):
2122         (gif_normalize):
2123         (png_normalize):
2124         (tiff_normalize): add dest_mask so that it can be proprogated by
2125         layout_normalize.
2126
2127         * elhash.c:
2128         (print_hash_table):
2129         (hash_table_weakness_validate):
2130         (decode_hash_table_weakness):
2131         (Fhash_table_weakness):
2132         (Fhash_table_type):
2133         (syms_of_elhash): use Ben's naming scheme for hashtable types..
2134
2135         * console.h (struct console_methods): move update_* to
2136         redisplay_*.
2137
2138 2000-07-20  Ben Wing  <ben@xemacs.org>
2139
2140         * *.[ch] (XSETOBJ): remove unused middle argument.
2141         lisp-disunion.h: correct wrap_object() to one argument.
2142
2143 2000-07-15  Ben Wing  <ben@xemacs.org>
2144
2145         * s/cygwin32.h:
2146         * s/cygwin32.h (CYGWIN_CONV_PATH):
2147         Add missing logb prototype for v1.1.
2148         Use post-b20 names and alias to pre-b20 names when pre-b20.
2149
2150         * s/windowsnt.h: [5].
2151
2152 2000-07-15  Ben Wing  <ben@xemacs.org>
2153
2154         * Makefile.in.in (x_objs):
2155         * Makefile.in.in (sheap_objs):
2156         * Makefile.in.in (objs):
2157         added win32.o, cosmetic cleanups.
2158
2159         * alloc.c (Fmake_byte_code):
2160         [[[1]]]: Changes for new LIST_LOOP, EXTERNAL_LIST_LOOP,
2161         etc. macros which declare their own args now.
2162
2163         * alloc.c (syms_of_alloc):
2164         [[[2]]]: Use DEFSYMBOL, DEFKEYWORD, DEFERROR and friends.
2165
2166         * buffer.c:
2167         Moved buffer-dedicated-frame, set-buffer-dedicated-frame into lisp.
2168
2169         * buffer.c (Fget_file_buffer):
2170         Fixed GCPRO problem.
2171
2172         * buffer.c (get_truename_buffer):
2173         Fixed comment about GC checking.
2174
2175         * buffer.c (syms_of_buffer):
2176         Undeclared those dedicated frame funs.
2177         [2].
2178
2179         * buffer.h:
2180         Define convenience macros for internal/external conversions.
2181         [[[3]]]: Define codesys aliases Qcommand_argument_encoding
2182         and Qenvironment_variable_encoding for cleaner code.
2183
2184         * bufslots.h:
2185         Remove dedicated-frame; in lisp.
2186
2187         * bytecode.c (funcall_compiled_function):
2188         [1].
2189
2190         * bytecode.c (syms_of_bytecode):
2191         [2].
2192
2193         * console-msw.c:
2194         * console-msw.c (mswindows_show_console): Rewrote.
2195
2196         * console-msw.c (Fmswindows_debugging_output): New.
2197         Sends to OutputDebugString (special MSWin debugger interface).
2198
2199         * console-msw.c (Fmswindows_message_box):
2200         Fixed stupid bugs so it works when called from kill-emacs.
2201
2202         * console-msw.c (syms_of_console_mswindows):
2203         Declare Fmswindows_debugging_output.
2204
2205         * console-msw.h:
2206         New MSWin prototypes.
2207
2208         * console-msw.h (struct mswindows_frame):
2209         New entry last-click-mods for improved button-modifier support.
2210
2211         * console-msw.h (FRAME_MSWINDOWS_POPUP):
2212         New struct entry `popup' with corresponding accessor.
2213
2214         * console-x.c:
2215         * console-x.c (split_up_display_spec):
2216         * console-x.c (get_display_arg_connection):
2217         * console-x.c (x_semi_canonicalize_console_connection):
2218         * console-x.c (x_canonicalize_device_connection):
2219         [[[6]]]: Change char to more specific type.
2220         [[[8]]]: Make use of abstracting codesys aliases defined in [3], [4];
2221
2222         * console-x.c (x_semi_canonicalize_console_connection):
2223         * console-x.c (x_canonicalize_device_connection):
2224         [[[9]]]: Fix up error signalling to use new structured error system.
2225
2226         * console-x.h:
2227         [[[4]]]: Define codesys aliases:
2228         Qlwlib_encoding, Qx_atom_name_encoding, Qx_font_name_encoding,
2229         Qx_color_name_encoding, Qx_display_name_encoding.
2230
2231         * console.h (struct console_methods):
2232         New method make_dialog_box_internal supersedes older
2233         popup_dialog_box method.
2234
2235         * data.c:
2236         Define many new errors, part of new structured errors.
2237
2238         * data.c (init_errors_once_early):
2239         * data.c (syms_of_data):
2240         [2].
2241
2242         * device-msw.c (mswindows_init_device):
2243         [[[5]]]: Cleanup to support NT 3.51.
2244
2245         * device-msw.c (decode_devmode): Cleanup.
2246
2247         * device-msw.c (mswindows_handle_print_setup_dialog_box):
2248         * device-msw.c (mswindows_handle_print_dialog_box):
2249         * device-msw.c (mswindows_handle_page_setup_dialog_box):
2250         * device-msw.c (syms_of_device_mswindows):
2251         Delete the dialog box primitives recently introduced by Kirill and
2252         instead interface to general dialog box interface.
2253
2254         * device-x.c:
2255         * device-x.c (compute_x_app_name):
2256         * device-x.c (x_init_device):
2257         * device-x.c (Fx_valid_keysym_name_p):
2258         * device-x.c (Fx_set_font_path):
2259         [6].
2260         [7].
2261
2262         * device.h (wrap_device): New.
2263         First of its kind; meant to replace XSETDEVICE.
2264
2265         * dialog-msw.c: Many file-dialog symbols.
2266
2267         * dialog-msw.c (mswindows_register_popup_frame): New.
2268         * dialog-msw.c (mswindows_is_dialog_msg): New.
2269         For supporting kbd traversal in dialog boxes.
2270
2271         * dialog-msw.c (dialog_proc):
2272         Support hitting ESC in dialogs.
2273
2274         * dialog-msw.c (struct):
2275         Common dialog box errors.
2276
2277         * dialog-msw.c (handle_file_dialog_box): New.
2278         Add file dialog code.
2279
2280         * dialog-msw.c (handle_question_dialog_box):
2281         Redo existing code to support new question dialog syntax.
2282
2283         * dialog-msw.c (console_type_create_dialog_mswindows):
2284         We support new dialog console method.
2285
2286         * dialog-msw.c (syms_of_dialog_mswindows):
2287         * dialog-msw.c (vars_of_dialog_mswindows):
2288         New file dialog symbols, vars.
2289
2290         * dialog-x.c:
2291         * dialog-x.c (maybe_run_dbox_text_callback):
2292         * dialog-x.c (dbox_descriptor_to_widget_value):
2293         * dialog-x.c (x_make_dialog_box_internal):
2294         * dialog-x.c (console_type_create_dialog_x):
2295         Mule-ize entire file.
2296         Redo to support question dialog syntax.
2297         [6].
2298
2299         * dialog.c:
2300         * dialog.c (Fmake_dialog_box_internal):
2301         * dialog.c (syms_of_dialog):
2302         Kill old popup-dialog-box, replace with new primitive.
2303         Just call device method or signal error.
2304
2305         * eldap.c (Fldap_open):
2306         * eldap.c (Fldap_search_basic):
2307         * eldap.c (Fldap_add):
2308         * eldap.c (Fldap_modify):
2309         [1].
2310         [7].
2311
2312         * emacs.c:
2313         * emacs.c (make_arg_list_1):
2314         * emacs.c (make_arg_list):
2315         Mule-ize call to dll_init().
2316         [6].
2317         [8].
2318
2319         * emacs.c (make_argc_argv):
2320         * emacs.c (free_argc_argv):
2321         * emacs.c (init_cmdargs):
2322         * emacs.c (main_1):
2323         * emacs.c (Fkill_emacs):
2324         * emacs.c (Fdump_emacs):
2325         Update comments about what can be used in syms_* etc.
2326         Call init_win32() when necessary.
2327         Fix up MS Win dialog box in kill-buffer to actually work right.
2328         [7].
2329
2330         * eval.c:
2331         * eval.c (For):
2332         * eval.c (Fand):
2333         * eval.c (Fprogn):
2334         * eval.c (Fprog1):
2335         * eval.c (Fprog2):
2336         * eval.c (FletX):
2337         * eval.c (Flet):
2338         * eval.c (condition_case_3):
2339         * eval.c (Feval):
2340         * eval.c (function_argcount):
2341         * eval.c (funcall_lambda):
2342         [1].
2343
2344         * eval.c (type_error): New.
2345         * eval.c (maybe_type_error): New.
2346         * eval.c (continuable_type_error): New.
2347         * eval.c (maybe_continuable_type_error): New.
2348         * eval.c (type_error_with_frob): New.
2349         * eval.c (maybe_type_error_with_frob): New.
2350         * eval.c (continuable_type_error_with_frob): New.
2351         * eval.c (maybe_continuable_type_error_with_frob): New.
2352         New functions for use with structured errors.
2353
2354         * event-Xt.c:
2355         * event-Xt.c (x_event_to_emacs_event):
2356         Buttons are now modifiers too.
2357
2358         * event-Xt.c (emacs_Xt_current_event_timestamp):
2359         Implement new event method.
2360         * event-Xt.c (reinit_vars_of_event_Xt): Set it.
2361
2362         * event-msw.c:
2363         * event-msw.c (ntpipe_shove_writer): [5].
2364         * event-msw.c (mswindows_enqueue_mouse_button_event):
2365         * event-msw.c (mswindows_drain_windows_queue):
2366         * event-msw.c (mswindows_wnd_proc): [7].
2367         * event-msw.c (mswindows_current_layout_has_AltGr): [5].
2368         * event-msw.c (mswindows_modifier_state):
2369         Throughout: support new button modifiers.
2370
2371         * event-msw.c (emacs_mswindows_current_event_timestamp):
2372         Implement new event method.
2373         * event-msw.c (reinit_vars_of_event_mswindows): Set it.
2374
2375         * event-stream.c:
2376         * event-stream.c (event_stream_current_event_timestamp): New.
2377         * event-stream.c (maybe_kbd_translate): New functionality.
2378         * event-stream.c (vars_of_event_stream):
2379         Document new kbd-translate-table functionality.
2380
2381         * event-stream.c (Fcurrent_event_timestamp): New.
2382         New primitive for use in fabricated events.
2383         * event-stream.c (syms_of_event_stream): [2]. Declare new primitive.
2384
2385         * events-mod.h (XEMACS_MOD_BUTTON1): new button modifiers.
2386
2387         * events.c:
2388         * events.c (Fmake_event):
2389         * events.c (WRONG_EVENT_TYPE_FOR_PROPERTY):
2390         [1].
2391         [9].
2392
2393         * events.c (format_event_object): fix gcc warnings.
2394
2395         * events.c (Fevent_timestamp): Document new primitives.
2396
2397         * events.c (TIMESTAMP_HALFSPACE): New.
2398
2399         * events.c (Fevent_timestamp_lessp): New.  New primitive for
2400         comparing timestamps correctly (half-space algorithm).
2401
2402         * events.c (Fevent_modifier_bits): Doc fix.
2403
2404         * events.c (Fevent_modifiers): Major doc addition.
2405         * events.c (event_x_y_pixel_internal): Typo fix.
2406         * events.c (syms_of_events): Declare new primitives.
2407
2408         * events.h:
2409         Update long comment for button modifiers, timestamps.
2410
2411         * events.h (struct event_stream):
2412         New current_event_timestamp method.
2413
2414         * extents.c:
2415         * extents.c (extent_in_region_p):
2416         * extents.c (decode_extent):
2417         * extents.c (Fset_extent_parent):
2418         * extents.c (decode_map_extents_flags):
2419         Fix gcc warnings.
2420         [9].
2421
2422         * extents.c (struct extent_at_arg):
2423         * extents.c (decode_extent_at_flag):
2424         * extents.c (extent_at_mapper):
2425         * extents.c (extent_at_bytind):
2426         * extents.c (Fextent_at): Adapt to new lower-level interface. [9].
2427         * extents.c (Fextents_at): New primitive. [9].
2428         * extents.c (symbol_to_glyph_layout): [9].
2429         Support new primitive `extents-at'.
2430
2431
2432         * extents.c (get_text_property_bytind):
2433         extent_at_bytind has another arg.
2434         [9].
2435
2436         * extents.c (syms_of_extents): New primitive.
2437
2438         * file-coding.c (Fmake_coding_system): [1].
2439         * file-coding.c (subsidiary_coding_system): fix gcc warning
2440         * file-coding.c (syms_of_file_coding): [2].
2441
2442         * fileio.c (Fexpand_file_name):
2443         * fileio.c (Fsysnetunam):
2444         * fileio.c (Ffile_exists_p):
2445         * fileio.c (Ffile_executable_p):
2446         * fileio.c (Fverify_visited_file_modtime):
2447         Clean up GCPROing.
2448
2449         * fileio.c (syms_of_fileio): [2].
2450
2451         * filelock.c (lock_file_1):
2452         * filelock.c (current_lock_owner):
2453         * filelock.c (lock_if_free):
2454         * filelock.c (lock_file):
2455         * filelock.c (unlock_file):
2456         Clean up GCPROing.
2457
2458         * fns.c (concat): Fix gcc warning.
2459
2460         * fns.c (Fmember):
2461         * fns.c (Fold_member):
2462         * fns.c (Fmemq):
2463         * fns.c (Fold_memq):
2464         * fns.c (memq_no_quit):
2465         * fns.c (Fassoc):
2466         * fns.c (Fold_assoc):
2467         * fns.c (Fassq):
2468         * fns.c (Fold_assq):
2469         * fns.c (assq_no_quit):
2470         * fns.c (Frassoc):
2471         * fns.c (Fold_rassoc):
2472         * fns.c (Frassq):
2473         * fns.c (Fold_rassq):
2474         * fns.c (rassq_no_quit):
2475         * fns.c (Fdelete):
2476         * fns.c (Fold_delete):
2477         * fns.c (Fdelq):
2478         * fns.c (Fold_delq):
2479         * fns.c (delq_no_quit):
2480         * fns.c (Fremassoc):
2481         * fns.c (Fremassq):
2482         * fns.c (remassq_no_quit):
2483         * fns.c (Fremrassoc):
2484         * fns.c (Fremrassq):
2485         * fns.c (remrassq_no_quit):
2486         * fns.c (Freverse):
2487         * fns.c (mapcar1):
2488         [1].
2489
2490         * frame-msw.c (mswindows_init_frame_1):
2491         * frame-msw.c (mswindows_delete_frame):
2492         Register popups with dialog code so keyboard traversing works.
2493
2494         * frame-tty.c (tty_raise_frame_no_select): [1].
2495
2496         * frame-x.c:
2497         * frame-x.c (x_set_frame_text_value):
2498         * frame-x.c (x_set_frame_properties):
2499         * frame-x.c (x_create_widgets):
2500         [7].
2501
2502         * frame.c:
2503         * frame.c (Fmouse_pixel_position): Minor doc fixes.
2504
2505         * frame.h (wrap_frame): New.
2506         Macro like wrap_device.
2507
2508         * general.c:
2509         * general.c (SYMBOL):
2510         * general.c (syms_of_general):
2511         Major reorg.  This is now just a wrapper and symbols themselves
2512         are listed in general-slots.h.
2513
2514         * glyphs-eimage.c (tiff_instantiate): Need cast to fix warning.
2515         * glyphs-msw.c (mswindows_resource_instantiate): [5].
2516
2517         * glyphs-msw.c (mswindows_native_layout_instantiate):
2518         Add DS_CONTROL so keyboard traversal will work.
2519
2520         * glyphs-widget.c:
2521         * glyphs-widget.c (syms_of_glyphs_widget):
2522         Move some symbols to general-slots.h.
2523
2524         * glyphs-x.c:
2525         * glyphs-x.c (xbm_instantiate_1):
2526         * glyphs-x.c (x_xbm_instantiate):
2527         * glyphs-x.c (x_xface_instantiate):
2528         * glyphs-x.c (autodetect_instantiate):
2529         * glyphs-x.c (cursor_font_instantiate):
2530         * glyphs-x.c (x_update_widget):
2531         * glyphs-x.c (x_widget_instantiate):
2532         * glyphs.c (bitmap_to_lisp_data):
2533         * glyphs.c (pixmap_to_lisp_data):
2534         [7].
2535
2536         * glyphs.c (syms_of_glyphs):
2537         [2].
2538
2539         * gui-x.c:
2540         * gui-x.c (print_widget_value):
2541         * gui-x.c (menu_separator_style_and_to_external):
2542         * gui-x.c (add_accel_and_to_external):
2543         * gui-x.c (button_item_to_widget_value):
2544         * gui-x.c (gui_items_to_widget_values_1):
2545         * gui-x.c (gui_items_to_widget_values):
2546         * gui-x.c (syms_of_gui_x):
2547         * gui-x.c (vars_of_gui_x):
2548         Mule-ize entire file.  Move menu-no-selection-hook to gui.c.
2549         [9].
2550
2551         * gui-x.h:
2552         Muleize, prototype changes matching gui-x.c.
2553
2554         * gui.c:
2555         * gui.c (separator_string_p):
2556         * gui.c (gui_item_add_keyval_pair):
2557         * gui.c (make_gui_item_from_keywords_internal):
2558         * gui.c (signal_too_long_error):
2559         * gui.c (parse_gui_item_tree_item):
2560         * gui.c (syms_of_gui):
2561         * gui.c (vars_of_gui):
2562         * gui.h:
2563         menu-no-selection-hook moved here (used by MSWin).
2564         Move some symbols to general-slots.h.
2565         [6].
2566         [9].
2567
2568         * insdel.c (get_buffer_pos_char):
2569         * insdel.c (get_buffer_range_char):
2570         Add GC comments.
2571
2572         * keymap.c (keymap_lookup_directly):
2573         * keymap.c (keymap_store):
2574         * keymap.c (ensure_meta_prefix_char_keymapp):
2575         * keymap.c (describe_map):
2576         * keymap.h:
2577         Support new button modifiers.
2578
2579         * lisp-disunion.h (wrap_object):
2580         * lisp-disunion.h (XSETOBJ):
2581         Rename make_obj to wrap_object.
2582
2583         * lisp-union.h:
2584         * lisp-union.h (make_int):
2585         * lisp-union.h (make_char):
2586         Support wrap_object.
2587
2588         * lisp.h:
2589         * lisp.h (LIST_LOOP):
2590         * lisp.h (EXTERNAL_LIST_LOOP):
2591         * lisp.h (LIST_LOOP_2):
2592         * lisp.h (EXTERNAL_LIST_LOOP_1):
2593         * lisp.h (EXTERNAL_LIST_LOOP_2):
2594         * lisp.h (EXTERNAL_LIST_LOOP_3):
2595         * lisp.h (EXTERNAL_LIST_LOOP_4_NO_DECLARE):
2596         * lisp.h (PRIVATE_EXTERNAL_LIST_LOOP_6):
2597         * lisp.h (GET_EXTERNAL_LIST_LENGTH):
2598         * lisp.h (EXTERNAL_ALIST_LOOP_5):
2599         * lisp.h (EXTERNAL_ALIST_LOOP_6):
2600         * lisp.h (EXTERNAL_ALIST_LOOP_6_NO_DECLARE):
2601         * lisp.h (EXTERNAL_PROPERTY_LIST_LOOP_5_NO_DECLARE):
2602         * lisp.h (EXTERNAL_PROPERTY_LIST_LOOP_7):
2603         * lisp.h (struct Lisp_Symbol):
2604         * lisp.h (maybe_continuable_error_with_frob):
2605         Fix up section comments.
2606         Add new types for char to indicate usage.
2607         Delete symbols auto-generated from general-slots.h.
2608         Add prototypes for structured error functions.
2609         Add long comments describing looping macros and change interface
2610         so that lvalues are automatically declared.
2611         Add NO_DECLARE macro in case callers want to declare lvalues
2612         themselves.
2613
2614         * lread.c (read_syntax_error):
2615         * lread.c (continuable_read_syntax_error):
2616         * lread.c (read_structure):
2617         * lread.c (sequence_reader):
2618         * lread.c (read_list_conser):
2619         * lread.c (read_compiled_function):
2620         Rename syntax_error and continuable_syntax_error to avoid clash
2621         with same-named structured error functions.
2622
2623         * menubar-msw.c (mswindows_translate_menu_or_dialog_item):
2624         * menubar-msw.c (populate_menu_add_item):
2625         * menubar-msw.c (populate_or_checksum_helper):
2626         [5].
2627         [9].
2628
2629         * menubar-x.c:
2630         * menubar-x.c (menu_item_descriptor_to_widget_value_1):
2631         Mule-ize whole file.
2632
2633         * menubar.c (Fnormalize_menu_item_name): Add optimization.
2634
2635         * mule-charset.c (Fmake_charset):
2636         * mule-wnnfns.c (Fwnn_set_param):
2637         [1].
2638
2639         * ntproc.c (create_child):
2640         * ntproc.c (Fwin32_set_current_locale):
2641         Add comments portending doom.
2642
2643         * objects-msw.c:
2644         * objects-msw.c (old_font_enum_callback_2):
2645         * objects-msw.c (font_enum_callback_1):
2646         * objects-msw.c (mswindows_enumerate_fonts):
2647         [5].
2648
2649         * objects-x.c:
2650         * objects-x.c (allocate_nearest_color):
2651         * objects-x.c (x_parse_nearest_color):
2652         * objects-x.c (x_initialize_color_instance):
2653         * objects-x.c (x_print_color_instance):
2654         * objects-x.c (x_finalize_color_instance):
2655         * objects-x.c (x_valid_color_name_p):
2656         * objects-x.c (x_initialize_font_instance):
2657         * objects-x.c (x_print_font_instance):
2658         * objects-x.c (valid_x_font_name_p):
2659         * objects-x.c (truename_via_FONT_prop):
2660         * objects-x.c (truename_via_random_props):
2661         * objects-x.c (truename_via_XListFonts):
2662         * objects-x.c (x_font_truename):
2663         * objects-x.c (x_font_instance_truename):
2664         * objects-x.c (x_font_instance_properties):
2665         * objects-x.c (x_list_fonts):
2666         * objects-x.c (x_find_charset_font):
2667         Mule-ize entire file.
2668         [7].
2669
2670         * objects-x.h:
2671         Mule-verify.
2672
2673         * print.c:
2674         * print.c (std_handle_out_external):
2675         * print.c (debug_print_no_newline):
2676         * print.c (syms_of_print):
2677         Output to all debugger kinds in debug-print.
2678         Fix console-output code under MSWin to actually work.
2679
2680         * process-nt.c (send_signal):
2681         * process-nt.c (nt_create_process):
2682         Use newer Unicode macros.
2683
2684         * process-unix.c (unix_create_process):
2685         * process-unix.c (unix_canonicalize_host_name):
2686         * process-unix.c (unix_open_network_stream):
2687         [7].
2688
2689         * scrollbar-x.c:
2690         Mule-verify.
2691
2692         * search.c (syms_of_search):
2693         [2].
2694
2695         * select-msw.c (mswindows_destroy_selection):
2696         Use LIST_LOOP_2.
2697
2698         * select-x.c (symbol_to_x_atom):
2699         [7].
2700
2701         * select.c (syms_of_select):
2702         [2].
2703
2704         * sound.c (Fplay_sound_file):
2705         [7].
2706
2707         * specifier.c:
2708         * specifier.c (decode_specifier_type):
2709         * specifier.c (Fvalid_specifier_locale_type_p):
2710         * specifier.c (check_valid_locale_or_locale_type):
2711         * specifier.c (decode_locale):
2712         * specifier.c (decode_locale_type):
2713         * specifier.c (decode_locale_list):
2714         * specifier.c (check_valid_domain):
2715         * specifier.c (decode_specifier_tag_set):
2716         * specifier.c (Fcanonicalize_tag_set):
2717         * specifier.c (Fdefine_specifier_tag):
2718         * specifier.c (Fspecifier_tag_predicate):
2719         * specifier.c (check_valid_inst_list):
2720         * specifier.c (check_valid_spec_list):
2721         * specifier.c (decode_how_to_add_specification):
2722         * specifier.c (check_modifiable_specifier):
2723         * specifier.c (specifier_add_spec):
2724         * specifier.c (boolean_validate):
2725         * specifier.c (display_table_validate):
2726         [9].
2727
2728         * specifier.c (syms_of_specifier):
2729         Move some symbols to general-slots.h.
2730         [2].
2731
2732         * symbols.c:
2733         * symbols.c (Fmapatoms):
2734         * symbols.c (Fapropos_internal):
2735         Add GCPROs.
2736
2737         * symbols.c (set_default_buffer_slot_variable):
2738         * symbols.c (set_default_console_slot_variable):
2739         [1].
2740
2741         * symbols.c (defsymbol_massage_name_1):
2742         * symbols.c (defkeyword_massage_name):
2743         * symbols.c (deferror_1):
2744         * symbols.c (deferror):
2745         * symbols.c (deferror_massage_name_and_message):
2746         * symeval.h:
2747         * symeval.h (DEFSYMBOL):
2748         Support DEFSYMBOL*, DEFKEYWORD, DEFERROR
2749
2750         * symbols.c (syms_of_symbols):
2751         [2].
2752
2753         * symsinit.h:
2754         * symsinit.h (init_win32): New.
2755         Also new is syms_of_dialog_mswindows.
2756
2757         * syswindows.h:
2758         Add new Unicode macros, missing Cygwin wide-char functions,
2759         convenience conversion macros for Qmswindows_tstr, macros for
2760         encapsulating required MSWin <-> Cygwin filename conversions,
2761         prototype for dynamically-extracted (not in NT 3.51) functions.
2762
2763         * toolbar-x.c:
2764         Mule-verify.
2765
2766         * tooltalk.c (Fadd_tooltalk_message_arg):
2767         * tooltalk.c (Fadd_tooltalk_pattern_attribute):
2768         * tooltalk.c (Fadd_tooltalk_pattern_arg):
2769         [7].
2770
2771         * tooltalk.c (syms_of_tooltalk):
2772         [2].
2773
2774         * unexnt.c:
2775         * unexnt.c (unexec):
2776         Fix up headers, declaration of unexec() to be more standard.
2777
2778 2000-07-20  Martin Buchholz  <martin@xemacs.org>
2779
2780         * offix.h: Revert change to guard macros - they're used in offix.c!
2781
2782 2000-07-18  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
2783
2784         * lisp.h: Defsubred Fdelete.
2785
2786         * console-msw.h:  (msprinter_default_printer): Added.
2787
2788         * console-msw.c (msprinter_canonicalize_console_connection):
2789         (msprinter_canonicalize_device_connection): Added.
2790
2791         * device-msw.c (msprinter_default_printer):
2792         (Fmswingows_get_default_printer):
2793         (signal_enum_priner_error):
2794         (Fmswingows_printer_list): Added.
2795
2796 2000-07-19  Martin Buchholz <martin@xemacs.org>
2797
2798         * XEmacs 21.2.35 is released.
2799
2800 2000-07-19  Martin Buchholz  <martin@xemacs.org>
2801
2802         * select-x.c (x_handle_selection_request):
2803         Text selected in xemacs and pasted into xterm failed to appear.
2804         Spelling fixes and cosmetic changes.
2805
2806 2000-07-18  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
2807
2808         * event-msw.c (mswindows_drain_windows_queue): Correctly check for
2809         XEmacs frame (fix for doubling chars in dialog boxes).
2810
2811 2000-07-17 Alastair J. Houghton <ajhoughton@lineone.net>
2812
2813         * select.c (select_convert_in, select_convert_out):
2814         Don't call intern() every time.
2815
2816         * select.c (Qselect_convert_in, Qselect_convert_out): New.
2817         * select.c (vars_of_select): Initialise them.
2818
2819 2000-07-18 Alastair J. Houghton <ajhoughton@lineone.net>
2820
2821         * select.c (selection-coercible-types): New.
2822
2823         * select.c (own-selection-internal):
2824         * select.c (get-selection-internal):
2825         MULE bug fix - these should default to COMPOUND_TEXT and not
2826         STRING for MULE. I think.
2827
2828         * select.c (select_convert_out): Use selection-coercible-types
2829         to find types that we can attempt to perform coercions on.
2830
2831 2000-07-18  Martin Buchholz  <martin@xemacs.org>
2832
2833         * mule-wnnfns.c:
2834         * mule-canna.c:
2835         Add coding: cookie to identify encoding.
2836
2837         * mule-canna.c (CANNA_mode_keys): make static.
2838         Use proper prototypes, even for functions of no arguments.
2839         Remove external prototype for Fding().
2840
2841         * symsinit.h: Add missing prototype for reinit_vars_of_mule_wnn.
2842
2843         * select.c (syms_of_select): Add missing DEFSUBR.
2844
2845 2000-07-18 Alastair J. Houghton <ajhoughton@lineone.net>
2846
2847         * select.c (get_selection_internal, own_selection_internal):
2848         Make the type default to STRING, rather than placing a nil type
2849         into Vselection_alist.
2850
2851 2000-07-17 Alastair J. Houghton <ajhoughton@lineone.net>
2852
2853         * gpmevent.c (tty_selection_exists_p):
2854         * gpmevent.c (tty_own_selection):
2855         Updated parameter lists.
2856
2857 2000-07-15 Alastair J. Houghton <ajhoughton@lineone.net>
2858
2859         * select.h (selection-alist): Removed declaration.
2860
2861         * select.h (get_local_selection):
2862         * select.c (get_local_selection):
2863         Made static.
2864
2865         * select.h (convert_selection): Removed declaration.
2866         * select.c (convert_selection): Removed.
2867         This function belongs in Lisp.
2868
2869         * select.h (select_convert_in): Declare.
2870         * select.h (select_convert_out): Declare.
2871         * select.c (select_convert_in): New.
2872         * select.c (select_convert_out): New.
2873         New conversion functions for other files to call.
2874
2875         * select.h (select_notify_buffer_kill): Declare.
2876         * select.c (select_notify_buffer_kill): New.
2877         New functions that get called from kill-buffer.
2878
2879         * buffer.c (kill-buffer): Call select_notify_buffer_kill, rather than
2880         X-specific lisp code.
2881
2882         * select.h: Declare some of the lisp-visible functions for
2883         external use.
2884
2885         * select.c (clean_local_selection_data): Removed. This was
2886         a disgusting function, and previously should have been in
2887         select-x.c in any case. The functionality is now provided
2888         in select-convert-from-integer (select.el).
2889
2890         * select.c (available-selection-types): Fixed stupidity where
2891         INTEGER and ATOM got added twice. Also add STRING when we see an
2892         extent.
2893
2894         * select.c (get-selection-internal): Removed symbol stripping. No
2895         longer causes conversion when data comes from the internal cache.
2896
2897         * select.c (syms_of_select): Added new functions.
2898
2899         * select-x.c (motif_clipboard_cb): Use select_convert_out. Rewrote
2900         error checking - previously this called abort!
2901
2902         * select-x.c (x_own_selection): Changed comment.
2903
2904         * select-x.c (x_handle_selection_request): Use select_convert_out.
2905         Don't mess with selection-alist; it's an internal variable of select.c.
2906
2907         * select-x.c (x_get_foreign_selection): Use select_convert_in.
2908
2909         * select-x.c (x_handle_selection_clear): Use get-selection-timestamp,
2910         rather than messing with selection-alist.
2911
2912         * select-msw.c (mswindows_get_foreign_selection):
2913         Use TO_INTERNAL_FORMAT rather than hacking.
2914
2915 2000-07-14  Martin Buchholz  <martin@xemacs.org>
2916
2917         * process-unix.c (unix_open_multicast_group):
2918         (unix_open_multicast_group): Remove useless casts.
2919
2920 2000-07-13  Martin Buchholz  <martin@xemacs.org>
2921
2922         * sound.c (Fplay_sound): Fix `unused variable' warning.
2923
2924         * emacs.c (main): Use correct type for _environ on SCO5.
2925
2926 2000-07-12 Alastair J. Houghton <ajhoughton@lineone.net>
2927
2928         * console.h (own_selection_method):
2929         * console.h (selection_exists_p_method):
2930         * console.h (available_selection_types_method): New.
2931         * console.h (register_selection_data_type_method): New.
2932         * console.h (selection_data_type_name): New.
2933
2934         * console-msw.h (mswindows_destroy_selection): Declare it.  New
2935         function & alist to track GlobalAlloc()'d handles that need
2936         releasing when the clipboard data gets replaced or emptied.
2937
2938         * event-msw.c (mswindows_wnd_proc): Call it.
2939
2940         * lisp.h, general.c (Qappend): New symbol representing a
2941         `how-to-add' mode.
2942
2943         * select.c (own-selection-internal):
2944         * select.c (selection-exists-p):
2945         * select.c (available-selection-types): New.
2946         * select.c (register-selection-data-type): New.
2947         * select.c (selection-data-type-name): New.  New functions to deal
2948         with device-specific selection data formats.
2949         * select.c (selection-converter-out-alist): Renamed.
2950         * select.c (selection-converter-in-alist): New.
2951         * select.c (selection-appender-alist): New.  Added new alists.
2952         * select.c (syms_of_select, vars_of_select): Added new symbols &
2953         variables.
2954         * select.c (get_local_selection): Split.
2955         * select.c: Removed spurious type checking - selections may now be
2956         of any type, not just strings.
2957         * select.c (own-selection-internal):
2958
2959         * select.h, select.c (convert_selection): New. Created
2960         convert_selection() function based on get_local_selection().
2961         * select.h, select.c (QCF_*): New symbols representing mswindows
2962         clipboard formats.
2963         * select.h, select.c (Qreplace_all, Qreplace_existing): New
2964         symbols representing `how-to-add' modes.
2965
2966         * select-msw.c (x_sym_p): New.
2967         * select-msw.c (symbol_to_ms_cf): New.
2968         * select-msw.c (ms_cf_to_symbol): New. New functions to deal with
2969         symbols & clipboard formats. Can also handle string names.
2970         * select-msw.c (mswindows_own_selection):
2971         * select-msw.c (mswindows_selection_exists_p):
2972         Added `data-type' parameter. Use it.
2973         * select-msw.c (mswindows_available_selection_types): New.
2974         * select-msw.c (mswindows_register_selection_data_type): New.
2975         * select-msw.c (mswindows_selection_data_type_name): New.
2976         * select-msw.c (mswindows_own_selection):
2977         * select-msw.c (mswindows_get_foreign_selection):
2978         * select-msw.c (mswindows_selection_exists_p):  Rewrote.
2979         * select-msw.c (console_create_select_mswindows): Added new methods.
2980         * select-msw.c (mswindows_destroy_selection): New.
2981         * select-msw.c (Vhandle_alist): New list.
2982         * select-msw.c (mswindows_own_selection):
2983
2984         * select-x.c (x_own_selection):
2985         * select-x.c (x_selection_exists_p):
2986         * select-x.c: Added some comments about maybe using new
2987         functionality.
2988         * select-x.c (x_own_selection):
2989
2990         * specifier.c: Remove definition of Qappend (now in general.c)
2991         * specifier.c (syms_of_specifier): Remove Qappend.
2992
2993 2000-07-12  Martin Buchholz  <martin@xemacs.org>
2994
2995         * config.h.in: Add socklen_t.
2996
2997         * s/decosf4-0.h: No special compiler flags needed or desired.
2998         In particular, undefine _BSD for DEC OSF 4.0.
2999
3000 2000-07-07  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
3001
3002         * redisplay-msw.c (msprinter_frame_output_end): Added.
3003         (console_type_create_redisplay_mswindows): Referred the above.
3004
3005         * frame.c (setup_frame_without_minibuffer): Do not create a
3006         default minibuffer frame on a printer device.
3007
3008         * frame-msw.c (apply_dc_geometry): Added.
3009         (msprinter_start_page):
3010         (msprinter_init_frame_3):
3011         (msprinter_eject_page): Use it.
3012
3013         * console-msw.h (struct msprinter_frame): Added pix_left and top,
3014         and removed residual duplex and orientation properties.
3015
3016 2000-07-11  Martin Buchholz  <martin@xemacs.org>
3017
3018         * eval.c (function_argcount): Work around a DEC CC compiler bug.
3019
3020         * unexalpha.c: Remove system prototypes from C sources!
3021
3022 2000-07-09  Adrian Aichner  <aichner@ecf.teradyne.com>
3023
3024         * eval.c: Remove references to M-x edit-options in DEFUNs for
3025         `defvar' and `defconst'.
3026
3027 2000-07-09  Martin Buchholz  <martin@xemacs.org>
3028
3029         * config.h.in: Remove SMART_INCLUDE hackery.
3030
3031         PostgreSQL hacking:
3032         * config.h.in: Don't use SMART_INCLUDE.
3033
3034         * postgresql.h: Include libpq-fe.h here.  Fix typo.
3035         * inline.c: Simply #include "postgresql.h"
3036         * postgresql.c:
3037         - Don't use SMART_INCLUDE
3038         - Use simply "const".
3039         - Use standard doc string conventions.
3040         - Use correct type for result of PQstatus.
3041
3042 2000-07-09  Martin Buchholz  <martin@xemacs.org>
3043
3044         * glyphs-x.c (x_xface_instantiate): Fix C++ compilation warnings.
3045
3046         C++ compilation changes.
3047         * config.h.in (EXTERN_C): Define.
3048         * config.h.in (not): This is also a C++ keyword.
3049         * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Enable C++ compilation.
3050         * cm.c: Use EXTERN_C.
3051         * redisplay-tty.c: Use EXTERN_C.
3052         * sysdep.c: Use EXTERN_C.  Remove Gould support.
3053
3054 2000-07-09  Martin Buchholz  <martin@xemacs.org>
3055
3056         * general.c: Remove duplicate definition for Qfunction.
3057
3058 2000-07-08  Ben Wing  <ben@xemacs.org>
3059
3060         * device-msw.c (msprinter_init_device):
3061         * device-msw.c (sync_printer_with_devmode):
3062         * device-msw.c (handle_devmode_changes):
3063         * device-msw.c (print_dialog_worker):
3064         * device-msw.c (Fmsprinter_apply_settings):
3065         * device-msw.c (hash_devmode):
3066         * device-msw.c (Fmsprinter_settings_despecialize):
3067         use Qmswindows_tstr, not Qctext.
3068
3069         * vm-limit.c (check_memory_limits):
3070         avoid infinite loop printing warning messages.
3071
3072 2000-07-05  Craig Lanning  <lanning@scra.org>
3073
3074         * Makefile.in.in: Add support for including the Windows resources
3075         when building with the cygwin and mingw targets.
3076
3077         * buffer.c: from Dan Holmsand, on Windows $PWD is most likely either
3078         not set or not correct.
3079         (directory_is_current_directory): Don't compile for WIN32_NATIVE.
3080         (init_initial_directory): Don't try to use $PWD on the
3081         WIN32_NATIVE target.
3082
3083         * s\cygwin32.h:
3084         [[Add -mwindows to eliminate console window.]] not required --ben
3085         (HAVE_NATIVE_SOUND): removed; now handled by configure.
3086         (MAIL_USE_POP): removed; now handled by configure.
3087
3088         * s\mingw32.h: [[Add -mwindows to eliminate console window.]] not in
3089         C_SWITCH_SYSTEM or it will affect lib-src progs. --ben
3090         (HAVE_NATIVE_SOUND): removed; now handled by configure.
3091         (MAIL_USE_POP): removed; now handled by configure.
3092         (ENCAPSULATE_STAT): from Dan Holmsand, added.
3093         (ENCAPSULATE_FSTAT): from Dan Holmsand, added.
3094         (DIRECTORY_SEP): from Dan Holmsand, use lisp variable instead of
3095         constant string.
3096         (HAVE_TIMEVAL): from Dan Holmsand, added; struct timeval is picked
3097         up from <winsock.h> via systime.h.
3098         (HAVE_GETPAGESIZE): from Dan Holmsand, added.
3099         (getpagesize): from Dan Holmsand, added.
3100         Added #endif which was left dangling by Ben's mega patch; added
3101         comment to help prevent this in the future.
3102
3103         * sysdll.c: added #include <windows.h> for WIN32_NATIVE case.
3104
3105 2000-07-05  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
3106
3107         * console-msw.h (struct mswindows_device): Removed unnecessary
3108         cached device geometry values.
3109         Added update_tick and an accessor macro.
3110         (Lisp_Devmode): Added lrecord declaration.
3111         (struct msprinter_device): Contain devmode as a Lisp object.
3112         Added mswindows_get_selected_frame_hwnd();
3113
3114         * console.h (struct console_methods): Indentation nitpicking.
3115
3116         * device-msw.c (mswindows_init_device): Do not initialize geometry
3117         cache. Initialize update tick.
3118         (mswindows_device_system_metrics): Ask the device for its geometry.
3119         (global_free_2_maybe):
3120         (devmode_to_hglobal):
3121         (handle_printer_changes):
3122         (ensure_not_printing):
3123         (print_dialog_worker):
3124         (Fmsprinter_print_setup_dialog):
3125         (Fmsprinter_print_dialog):
3126         (plist_get_margin):
3127         (plist_set_margin):
3128         (Fmsprinter_page_setup_dialog): Added functions.
3129         (sync_printer_with_devmode):
3130         (handle_devmode_changes):
3131         (Fmsprinter_get_settings):
3132         (Fmsprinter_select_settings):
3133         (Fmsprinter_apply_settings):
3134         (allocate_devmode):
3135         (Fmsprinter_settings_copy):
3136         (Fmsprinter_settings_despecialize):
3137         (print_devmode):
3138         (finalize_devmode):
3139         (equal_devmode):
3140         (hash_devmode): Added functions
3141         (syms_of_device_mswindows): Init devmode lrecord class.
3142
3143         * device.h: Added an exfun for find-device.
3144
3145         * event-msw.c (mswindows_wnd_proc): Do not update the cached
3146         geometry; although, recreate the device compatible DC.
3147
3148         * frame-msw.c (mswindows_get_selected_frame_hwnd): Added.
3149         (msprinter_init_frame_3):
3150         (msprinter_frame_property):
3151         (msprinter_internal_frame_property_p):
3152         (msprinter_frame_properties):
3153         (msprinter_set_frame_properties): Removed 'orientation and 'duplex
3154         print job properties (will move to device settings).
3155
3156         * lisp.h: Added symbols.
3157
3158         * general.c (syms_of_general): Declared them.
3159
3160         * hash.c (string_hash): Added.
3161
3162         * lrecord.h (lrecord_type): Added devmode lrecord type.
3163
3164 2000-07-02  Mike Sperber <mike@xemacs.org>
3165
3166         * s/freebsd.h (INTERRUPTIBLE_OPEN): open *is* interruptible on
3167         FreeBSD 4.0.
3168
3169 2000-06-07  MORIOKA Tomohiko  <tomo@etl.go.jp>
3170
3171         * doprnt.c (emacs_doprnt_1): Fix problem with %0XXd for a negative
3172         integer.
3173
3174 2000-06-07  MORIOKA Tomohiko  <tomo@urania.m17n.org>
3175
3176         * data.c (Fstring_to_number): Don't recognize floating point if
3177         base is not 10.
3178
3179 2000-06-22  Martin Buchholz  <martin@xemacs.org>
3180
3181         * glyphs-widget.c (tab_control_query_geometry):
3182         (widget_query_geometry):
3183         (button_query_geometry):
3184         * glyphs.c (text_query_geometry):
3185         Enforce type correctness.
3186
3187 2000-06-18  Martin Buchholz  <martin@xemacs.org>
3188
3189         * s/decosf4-0.h (_etext): Use portable _etext instead of etext.
3190         * s/decosf4-0.h (_edata): Use portable _edata instead of edata.
3191
3192 2000-06-17  Martin Buchholz  <martin@xemacs.org>
3193
3194         * s/decosf4-0.h: Never #include "/usr/include/FOO.h" because this
3195         conflicts with gcc's fixincluded version of FOO.h.
3196
3197         * glyphs.h (image_instance_geometry): Remove trailing `,'
3198
3199 2000-06-08  Mike Alexander  <mta@arbortext.com>
3200
3201         (MAX_SHOVE_BUFFER_SIZE): Change to 512 to match stream buffer size
3202         (shove_thread): Don't write the same output twice
3203         (make_ntpipe_output_stream): Increase priority of shove thread
3204         (ntpipe_shove_writer): Call SwitchToThread to give shove thread a
3205         chance to run
3206         (ntpipe_shove_closer): Don't delete the pipe until we're done with
3207         it.
3208
3209 2000-06-12  Ben Wing  <ben@xemacs.org>
3210
3211         * s\mingw32.h (sigset):
3212         * s\windowsnt.h (sigset):
3213         rename msw_ to mswindows_ for consistency with general convention.
3214
3215 2000-06-12  Ben Wing  <ben@xemacs.org>
3216
3217         * console-msw.c:
3218         * console-msw.c (mswindows_get_console_hwnd):
3219         * console-msw.c (mswindows_ensure_console_allocated):
3220         * console-msw.c (mswindows_hide_console):
3221         * console-msw.c (mswindows_show_console):
3222         * console-msw.c (mswindows_ensure_console_buffered):
3223         * console-msw.c (mswindows_output_console_string):
3224         * console-msw.c (mswindows_windows9x_p):
3225         * console-msw.h:
3226         * device-msw.c (mswindows_get_workspace_coords):
3227         * device-msw.c (mswindows_device_system_metrics):
3228         * dialog-msw.c (mswindows_popup_dialog_box):
3229         * event-msw.c (mswindows_wnd_proc):
3230         * frame-msw.c (mswindows_size_frame_internal):
3231         * menubar-msw.c (mswindows_translate_menu_or_dialog_item):
3232         * menubar-msw.c (displayable_menu_item):
3233         * menubar-msw.c (mswindows_char_is_accelerator):
3234         * nt.c:
3235         * nt.c (mswindows_sigset):
3236         * nt.c (mswindows_sigrelse):
3237         * nt.c (mswindows_sigpause):
3238         * nt.c (mswindows_raise):
3239         * nt.c (timer_proc):
3240         * ntproc.c:
3241         * ntproc.c (find_child_console):
3242         * ntproc.c (sys_kill):
3243         * print.c:
3244         * print.c (std_handle_out_external):
3245         * process-nt.c (find_child_console):
3246         * process-nt.c (send_signal_the_95_way):
3247         * process-nt.c (ensure_console_window_exists):
3248         * process-nt.c (nt_create_process):
3249         * syssignal.h:
3250         rename msw_ to mswindows_ for consistency with general convention.
3251
3252         * emacs.c:
3253         * dumper.c:
3254         include nt.h, not syswindows.h.
3255
3256         * nt.c (mswindows_fstat):
3257         * nt.c (mswindows_stat):
3258         prefix mswindows_ instead of attempting to directly override the
3259         library functions.  fix declarations.
3260
3261         * nt.h:
3262         include syswindows.h.  move some sysdep.h stuff here.
3263
3264         * ntheap.h:
3265         include syswindows.h, not <windows.h>.
3266
3267         * ntplay.c:
3268         clean up headers.
3269
3270         * sysdep.c:
3271         clean up headers.
3272
3273         * sysdep.c (sys_fstat):
3274         * sysdep.c (sys_stat):
3275         call mswindows versions when appropriate.
3276
3277         * sysdep.h:
3278         move mswin decls to nt.h.
3279
3280         * syswindows.h:
3281         add long comment describing appropriate use of the various windows
3282         headers.
3283
3284 2000-06-11  Ben Wing  <ben@xemacs.org>
3285
3286         * device-x.c: Correct doc string for sixth arg of x-get-resource.
3287
3288 2000-06-10  Ben Wing  <ben@xemacs.org>
3289
3290         * Makefile.in.in (release):
3291         Correction to make sure xemacs.exe always dumped when correct.
3292
3293         * alloca.c:
3294         * balloon_help.c:
3295         [[[[3]]]]: Conditionalize on actual problem, not WINDOWSNT.
3296
3297         * buffer.c (set_buffer_internal):
3298         [[[[2]]]]: Remove HAVE_FEP code.
3299
3300         * buffer.c (init_initial_directory):
3301         [3].
3302
3303         * bytecode.c:
3304         [[[[4]]]]: limits.h standardly included in lisp.h; remove from
3305         individual files.
3306
3307         * callproc.c:
3308         * callproc.c (call_process_cleanup):
3309         * callproc.c (Fold_call_process_internal):
3310         * callproc.c (child_setup):
3311         * callproc.c (getenv_internal):
3312         * callproc.c (init_callproc):
3313         * callproc.c (vars_of_callproc):
3314         [[[[1]]]]: WINDOWSNT -> WIN32_NATIVE.
3315         __CYGWIN32__ -> CYGWIN.
3316         DOS_NT -> WIN32_NATIVE.
3317         Remove MSDOS support/references, converting to WIN32_NATIVE
3318           where correct.
3319         __MINGW32__ -> MINGW.
3320         Fix windows.h includes.
3321         Remove bogus HAVE_NTGUI.
3322
3323         * config.h.in:
3324         [2].
3325
3326         * console-msw.c:
3327         mswindows_message_outputted added for use in allowing startup
3328         errors on the console to be seen.
3329
3330         * console-msw.c (msw_ensure_console_allocated):
3331         * console-msw.c (msw_output_console_string):
3332         * console-msw.c (DHEADER):
3333         * console-msw.c (DOPAQUE_DATA):
3334         * console-msw.c (DEVENT):
3335         * console-msw.c (DCONS):
3336         * console-msw.c (DCONSCDR):
3337         * console-msw.c (DSTRING):
3338         * console-msw.c (DVECTOR):
3339         * console-msw.c (DSYMBOL):
3340         * console-msw.c (DSYMNAME):
3341         Fix warnings.
3342
3343         * console-stream.c (stream_init_console):
3344         Fix text/binary problems.
3345
3346         * device-msw.c:
3347         * device-msw.c (mswindows_finish_init_device):
3348         * device-msw.c (mswindows_delete_device):
3349         [1].
3350
3351         * device.c (handle_asynch_device_change):
3352         [3].
3353
3354         * dgif_lib.c:
3355         * dgif_lib.c (DGifOpenFileName):
3356         * dgif_lib.c (DGifOpenFileHandle):
3357         * dgif_lib.c (DGifGetLine):
3358         * dgif_lib.c (DGifGetPixel):
3359         Added config.h/lisp.h, fix up includes.
3360         [1].
3361
3362         * dired-msw.c:
3363         [4].
3364
3365         * dired.c:
3366         * dired.c (file_name_completion):
3367         * dired.c (Ffile_attributes):
3368         * dired.c (syms_of_dired):
3369         [1].
3370
3371         * dumper.c:
3372         * dumper.c (pdump_file_unmap):
3373         * dumper.c (pdump_load):
3374         [1].
3375
3376         * editfns.c:
3377         * editfns.c (Ftemp_directory):
3378         * editfns.c (user_login_name):
3379         * editfns.c (Fuser_real_login_name):
3380         * editfns.c (get_home_directory):
3381         [1].
3382
3383         * elhash.c (finish_marking_weak_hash_tables):
3384         [[[[5]]]]: Fix GCC warnings.
3385
3386         * emacs.c:
3387         * emacs.c (mswindows_handle_hardware_exceptions):
3388         * emacs.c (make_arg_list_1):
3389         * emacs.c (main_1):
3390         * emacs.c (Fkill_emacs):
3391         * emacs.c (Fdump_emacs):
3392         [1].
3393         Fix problems with nested crashes, add long comment.
3394
3395         * event-Xt.c (init_event_Xt_late):
3396         [1].
3397
3398         * event-msw.c:
3399         * event-msw.c (mswindows_dde_callback):
3400         * event-msw.c (mswindows_handle_sticky_modifiers):
3401         * event-msw.c (mswindows_wnd_proc):
3402         [1].
3403         [5].
3404
3405         * events.c (character_to_event):
3406         [1].
3407
3408         * fileio.c:
3409         * fileio.c (Ffile_name_directory):
3410         * fileio.c (Ffile_name_nondirectory):
3411         * fileio.c (directory_file_name):
3412         * fileio.c (Fexpand_file_name):
3413         * fileio.c (Fsubstitute_in_file_name):
3414         * fileio.c (Ffile_name_absolute_p):
3415         * fileio.c (check_executable):
3416         * fileio.c (Ffile_readable_p):
3417         * fileio.c (Ffile_accessible_directory_p):
3418         * fileio.c (Ffile_modes):
3419         * fileio.c (Funix_sync):
3420         * fileio.c (vars_of_fileio):
3421         [1]. [4].
3422
3423         [[[[7]]]]: Move CORRECT_DIR_SEPS to s\windowsnt.h.
3424
3425         Expand getdefdir defn.
3426         Fix bogus rename() comment.
3427
3428         [[[[6]]]]: Fix Windows includes w.r.t. removed nt\inc.  Attempt
3429         to use standard XEmacs include files, e.g. sysfile.h, rather
3430         than system-specific includes.
3431
3432         * fns.c:
3433         * fns.c (Fsubseq):
3434         [5]. [6].
3435
3436         * frame.c (vars_of_frame):
3437         [1].
3438
3439         * getloadavg.c:
3440         * getloadavg.c (getloadavg):
3441         [1]. [6].
3442         #ifdef XEMACS not defined on Cygwin.  Remove this; no need for it.
3443         (We don't use it elsewhere in the code; just add a comment.)
3444
3445         * gif_io.c:
3446         [6].
3447         Add config.h.
3448
3449         * glyphs-msw.c:
3450         * glyphs-msw.c (mswindows_resource_instantiate):
3451         [1].
3452
3453         * glyphs-x.c (x_native_layout_instantiate):
3454         [5].
3455
3456         * gui-msw.c (Fmswindows_shell_execute):
3457         [1].
3458
3459         * insdel.c:
3460         [4].
3461
3462         * lisp.h:
3463         [4]. [5].
3464
3465         * lread.c (locate_file_in_directory_mapper):
3466         [1].
3467
3468         * lstream.c:
3469         [4].
3470
3471         * mem-limits.h:
3472         * mem-limits.h (get_lim_data):
3473         [1].
3474
3475         * menubar-msw.c:
3476         [4].
3477
3478         * ndir.h:
3479         [1].
3480
3481         * nt.c:
3482         * nt.c (getwd):
3483         * nt.c (closedir):
3484         * nt.c (rva_to_section):
3485         * nt.c (mswindows_executable_type):
3486         [1]. [6].
3487         Fix closedir() defn.
3488
3489         * nt.h:
3490         [[[[8]]]]: *_OK defs moved to sysfile.h.
3491
3492         * ntproc.c:
3493         [6]. [7].
3494
3495         * objects-x.c:
3496         [4].
3497
3498         * print.c:
3499         * print.c (std_handle_out_external):
3500         [1]. [4].
3501
3502         * process-nt.c:
3503         * process-nt.c (nt_create_process):
3504         [6].
3505         try to fix process quoting somewhat.
3506
3507         * process-unix.c (unix_create_process):
3508         [1].
3509
3510         * process.c:
3511         * process.c (vars_of_process):
3512         Add Vnull_device.
3513
3514         * process.h:
3515         [1].
3516
3517         * realpath.c:
3518         * realpath.c (xrealpath):
3519         [1].
3520
3521         * redisplay-tty.c (init_tty_for_redisplay):
3522         [3].
3523
3524         * redisplay.c:
3525         [4]. [6].
3526
3527         * scrollbar-msw.c:
3528         [4].
3529
3530         * sheap.c:
3531         * sheap.c (more_static_core):
3532         * sheap.c (report_sheap_usage):
3533         [5]. [6].
3534
3535         * signal.c:
3536         * signal.c (alarm_signal):
3537         [1]. [6].
3538
3539         * sound.c:
3540         [6].
3541
3542         * strftime.c:
3543         * strftime.c (zone_name):
3544         [1]. [5].
3545
3546         * symsinit.h (init_sunpro):
3547         [1].
3548
3549         * syscommctrl.h:
3550         commctrl.h not in Cygwin b20.1.
3551
3552         * sysdep.c:
3553         * sysdep.c (endif):
3554         * sysdep.c (sys_subshell):
3555         * sysdep.c (init_baud_rate):
3556         * sysdep.c (emacs_get_tty):
3557         * sysdep.c (emacs_set_tty):
3558         * sysdep.c (tty_init_sys_modes_on_device):
3559         * sysdep.c (init_system_name):
3560         * sysdep.c (sys_open):
3561         * sysdep.c (interruptible_open):
3562         * sysdep.c (sys_fopen):
3563         * sysdep.c (sys_mkdir):
3564         * sysdep.c (sys_rename):
3565         * sysdep.c (get_process_times_1):
3566         [1]. [6].
3567
3568         * sysdep.h:
3569         [1].
3570
3571         * sysdir.h:
3572         * sysdir.h (DIRENTRY_NONEMPTY):
3573         [1]. [6].
3574
3575         * sysdll.c (dll_init):
3576         * sysdll.h:
3577         [1].
3578
3579         * sysfile.h:
3580         [1]. [6]. [8].
3581         added text/binary defs.
3582
3583         * sysfloat.h:
3584         [1].
3585
3586         * sysproc.h:
3587         * sysproc.h (EDESTADDRREQ):
3588         * sysproc.h (poll_fds_for_input):
3589         [1]. [6].
3590
3591         * syspwd.h:
3592         [6].
3593
3594         * syssignal.h:
3595         [1].
3596
3597         * systime.h:
3598         [1]. [6].
3599
3600         * systty.h:
3601         [1].
3602
3603         * syswindows.h:
3604         [1].
3605         Always define WIN32_LEAN_AND_MEAN.
3606
3607         * unexcw.c (unexec):
3608         [5].
3609
3610         * unexec.c:
3611         * unexec.c (copy_text_and_data):
3612         * unexec.c (adjust_lnnoptrs):
3613         [1].
3614
3615         * unexnt.c:
3616         * unexnt.c (_start):
3617         [1].
3618
3619 2000-06-07  Ben Wing  <ben@xemacs.org>
3620
3621         * mule-mcpath.c, mule-mcpath.h: Removed.  Old, crufty code that
3622         was used only as a model.  We've long since extracted any useful
3623         logic or code out of this. (I just did an exhaustive search.)
3624
3625         * s\msdos.h: Removed.
3626
3627         * s\windows95.h: Removed.
3628
3629 2000-06-10  Ben Wing  <ben@xemacs.org>
3630
3631         * s\cygwin32.h:
3632         [1]. [5].
3633         Don't use extern with fun defs.
3634
3635         * s\mingw32.h:
3636         [1]. [7].
3637         Remove nt\inc include.
3638         Remove getdisk, getdefdir. (The former is unused, the latter
3639         expanded in fileio.h.)
3640
3641         * s\windowsnt.h:
3642         * s\windowsnt.h (WIN32_NATIVE):
3643         * s\windowsnt.h (HAVE_STRCASECMP):
3644         [1]. [7].
3645         Add long comment about preprocessor changes.
3646         Remove getdisk, getdefdir. (The former is unused, the latter
3647         expanded in fileio.h.)
3648
3649 2000-06-10  Ben Wing  <ben@xemacs.org>
3650
3651         * m\arm.h:
3652         * m\delta.h:
3653         * m\intel386.h:
3654         * m\sequent.h:
3655         * m\template.h:
3656         * m\windowsnt.h:
3657         [1].
3658         Remove bogus/unused NO_SOCK_SIGIO.
3659
3660 2000-06-08  Hrvoje Niksic  <hniksic@iskon.hr>
3661
3662         * lisp.h (set_string_char): Call set_string_byte with a Bufbyte,
3663         not an Emchar.
3664
3665 2000-06-04  Mike Sperber <mike@xemacs.org>
3666
3667         * casetab.c (set_case_table): For `set-standard-case-table',
3668         actually deposit the new case tables where the rest of XEmacs can
3669         see them.
3670
3671 2000-06-05  Yoshiki Hayashi <yoshiki@xemacs.org>
3672
3673         * data.c (Faset): Don't cast XCHAR() to unsigned char.
3674
3675 2000-06-05  Ben Wing  <ben@xemacs.org>
3676
3677         * callproc.c (child_setup): Don't do close_load_descs() under
3678         MS Windows.  Put in a comment explaining why.
3679
3680 2000-05-28  Adrian Aichner  <aichner@ecf.teradyne.com>
3681
3682         * process-nt.c: Reverting patch "Fixing nt_create_process for MKS
3683         Toolkit shell" which breaks `kill-compilation' on Windows NT
3684         native, retaining STDERR handling improvements.
3685
3686 2000-06-01  Andreas Jaeger  <aj@suse.de>
3687
3688         * s/s390.h: Support for S390, based on a patch by Martin
3689         Schwidefsky <schwidefsky@de.ibm.com>.
3690
3691 2000-05-30  Andy Piper  <andy@xemacs.org>
3692
3693         * window.c (allocate_window):
3694         (make_dummy_parent):
3695         (Fset_window_configuration): use new hashtable type.
3696
3697         * glyphs.h (IMAGE_UNSPECIFIED_GEOMETRY):
3698         (struct image_instantiator_methods):
3699         (struct Lisp_Image_Instance): make instance geometry signed.
3700
3701         * glyphs.c (instantiate_image_instantiator):
3702         (image_instance_query_geometry):
3703         (image_instance_layout):
3704         (image_instance_layout):
3705         (query_string_geometry):
3706         (text_query_geometry):
3707         (image_instantiate):
3708         (image_instantiate):
3709         (cache_subwindow_instance_in_frame_maybe):
3710         (subwindow_query_geometry): make instance geometry signed.
3711
3712         * glyphs-widget.c (widget_query_geometry):
3713         (widget_layout):
3714         (button_query_geometry):
3715         (tree_view_query_geometry):
3716         (tab_control_query_geometry):
3717         (layout_query_geometry):
3718         (layout_layout):
3719         (native_layout_layout): make instance geometry signed.
3720
3721 2000-05-29  Olivier Galibert  <galibert@pobox.com>
3722
3723         * lisp.h: Add Qfull_assoc symbol and WEAK_LIST_FULL_ASSOC
3724         constant.
3725
3726         * general.c (syms_of_general): Add Qfull_assoc symbol.
3727
3728         * data.c (finish_marking_weak_lists): Mark full-assoc lists
3729         correctly.
3730         (decode_weak_list_type): Decode full-assoc type.
3731         (encode_weak_list_type): Encode full-assoc type.
3732         (Fmake_weak_list): Update doc string.
3733
3734 2000-05-30  Andy Piper  <andy@xemacs.org>
3735
3736         * elhash.h (hash_table_weakness): new KEY_VALUE weak hashtable.
3737
3738         * elhash.c (print_hash_table): new KEY_VALUE weak hashtable.
3739         (decode_hash_table_weakness): ditto.
3740         (Fhash_table_weakness): ditto.
3741         (Fhash_table_type): ditto.
3742         (finish_marking_weak_hash_tables): ditto.
3743         (hash_table_weakness_validate): ditto.
3744         (syms_of_elhash): ditto.
3745
3746 2000-05-28  Martin Buchholz <martin@xemacs.org>
3747
3748         * XEmacs 21.2.34 is released.
3749
3750 2000-05-22  Jan Vroonhof  <vroonhof@math.ethz.ch>
3751
3752         * redisplay.c (VERTICAL_CLIP): No longer reset when updating line
3753         start cache.
3754         (updating_line_start_cache): Gone.
3755         (regenerate_window): Replace resetting of VERTICAL_CLIP by
3756         generic code to force a minimum of 1 line laid out in the
3757         CMOTION_DISP case.
3758
3759 2000-05-22  Jan Vroonhof  <vroonhof@math.ethz.ch>
3760
3761         * glyphs.c (instantiate_image_instantiator): Check for initialized
3762         height & width no longer special cases IMAGE_NOTHING.
3763         (nothing_instantiate): Set height and width of instance.
3764
3765 2000-05-24  Yoshiki Hayashi  <yoshiki@xemacs.org>
3766
3767         * unexelf.c (unexec): Search for ".data" section.
3768         Initialize new_data2_offset from old_data_index.
3769         Remove redundant check for ElfW.
3770
3771 2000-05-23  Andy Piper  <andy@xemacs.org>
3772
3773         * glyphs.c (get_image_instantiator_governing_domain): allow more
3774         specific domains as the governing domain rather than expecting an
3775         exact match. This fixes problems with layouts.
3776
3777 2000-05-22  Andy Piper  <andy@xemacs.org>
3778
3779         * redisplay-output.c (compare_runes): check for non-images
3780
3781         * glyphs.c (set_glyph_dirty_p): ditto.
3782         (update_glyph_cachel_data): ditto.
3783
3784         * glyphs-widget.c (layout_post_instantiate): ditto.
3785         (layout_post_instantiate): ditto.
3786
3787         * event-msw.c (mswindows_wnd_proc): warning removal.
3788
3789 2000-05-12  Craig Lanning  <CraigL@DyCon.com>
3790
3791         * s\mingw32.h: Added #undef for CLASH_DETECTION.
3792
3793         * syswindows.h: Moved PBS_SMOOTH definition to syscommctrl.h.
3794
3795         * syscommctrl.h (PBS_SMOOTH): Moved from syswindows.h.
3796
3797         * nt.c (rva_to_section): mingw32 needs rva_to_section.
3798         (mswindows_executable_type): mingw32 now has enough headers for
3799         this to work.
3800
3801 2000-05-20  Andy Piper  <andy@xemacs.org>
3802
3803         * console-msw.c (mswindows_output_last_error): ; -> ,
3804
3805 2000-05-12  Andy Piper  <andy@xemacs.org>
3806
3807         * console-msw.c (FROB): compare ints with ints.
3808
3809 2000-05-11  Andy Piper  <andy@xemacs.org>
3810
3811         * glyphs-x.c (x_finalize_image_instance): make minimal build
3812         happy.
3813
3814 2000-05-20  Ben Wing  <ben@xemacs.org>
3815
3816         * event-Xt.c:
3817         * event-Xt.c (vars_of_event_Xt):
3818         move modifier-keys-are-sticky to event-stream.c.
3819
3820         * event-msw.c:
3821         * event-msw.c (mswindows_enqueue_mouse_button_event):
3822         * event-msw.c (key_needs_default_processing_p):
3823         * event-msw.c (XEMSW_LCONTROL):
3824         * event-msw.c (mswindows_handle_sticky_modifiers):
3825         * event-msw.c (FROB):
3826         * event-msw.c (clear_sticky_modifiers):
3827         * event-msw.c (output_modifier_keyboard_state):
3828         * event-msw.c (output_alt_keyboard_state):
3829         * event-msw.c (mswindows_wnd_proc):
3830         * event-msw.c (mswindows_modifier_state):
3831         * event-msw.c (emacs_mswindows_handle_magic_event):
3832         implement sticky modifiers.
3833
3834         * event-stream.c:
3835         * event-stream.c (vars_of_event_stream):
3836         move modifier-keys-are-sticky here.
3837
3838         * lisp.h:
3839         add CHECK_FUNCTION.
3840
3841         * rangetab.c:
3842         implement map-range-table.
3843
3844
3845 2000-05-17  Yoshiki Hayashi  <yoshiki@xemacs.org>
3846
3847         * redisplay-tty.c (reset_tty_modes):
3848         (tty_redisplay_shutdown): Adjust argument type to
3849         tty_frame_output_end.
3850
3851 2000-05-11  Yoshiki Hayashi  <yoshiki@xemacs.org>
3852
3853         * eval.c (Fbacktrace): Don't output a line with only right
3854         parenthesis.
3855
3856 2000-05-17  Kenji Itoh  <keit@tpj.co.jp>
3857
3858         * postgresql.c (Fpq_connect_poll): Replace `PS' with `polling_status'.
3859         (Fpq_reset_poll): Ditto.
3860
3861 2000-05-16  Katsumi Yamaoka  <yamaoka@jpl.org>
3862
3863         * redisplay-tty.c: Replace tty_output_end with tty_frame_output_end.
3864
3865 2000-05-16  Ben Wing  <ben@xemacs.org>
3866
3867         * buffer.c:
3868         * buffer.c (dfc_convert_to/from_internal_format):
3869         * buffer.c (reinit_vars_of_buffer):
3870         Fix conversion functions to allow reentrancy.
3871
3872         * console-msw.c:
3873         * console-msw.c (mswindows_output_last_error):
3874         New fun, generally useful -- output a human-readable
3875         version of GetLastError() on the console.
3876
3877         * console-msw.h:
3878         * console-msw.h (struct mswindows_frame):
3879         Changes for DeferWindowPos.  Declare mswindows_output_last_error().
3880
3881         * console-stream.c (stream_output_begin):
3882         * console-stream.c (stream_output_end):
3883         * console-stream.c (stream_output_vertical_divider):
3884         * console-stream.c (stream_clear_region):
3885         * console-stream.c (stream_flash):
3886         * console-stream.c (console_type_create_stream):
3887         Delete blank stream methods, not needed.
3888
3889         * console.h (struct console_methods):
3890         Split begin/end methods into window and frame.
3891
3892         * event-msw.c:
3893         * event-msw.c (mswindows_handle_paint):
3894         * event-msw.c (output_alt_keyboard_state):
3895         * event-msw.c (mswindows_wnd_proc):
3896         * event-msw.c (vars_of_event_mswindows):
3897         Comment about problems with ignored-expose.
3898         Define mswindows-debug-events; not really implemented.
3899
3900         * frame-msw.c (mswindows_init_frame_1):
3901         random cleanups.
3902
3903         * glyphs-msw.c:
3904         * glyphs-msw.c (begin_defer_window_pos):
3905         * glyphs-msw.c (mswindows_unmap_subwindow):
3906         * glyphs-msw.c (mswindows_map_subwindow):
3907         * glyphs-msw.c (mswindows_resize_subwindow):
3908         Use DeferWindowPos to reduce flashing when mapping/unmapping.
3909
3910         * glyphs.c (make_image_instance_1):
3911         Fix crash.
3912
3913         * gutter.c (Fredisplay_gutter_area):
3914         Use new begin/end methods.
3915
3916         * lisp.h (Dynarr_new2):
3917         New creation fun.
3918
3919         * redisplay-msw.c:
3920         * redisplay-msw.c (mswindows_frame_output_begin):
3921         * redisplay-msw.c (mswindows_frame_output_end):
3922         * redisplay-msw.c (console_type_create_redisplay_mswindows):
3923         New begin/end methods -- handle DeferWindowPos.
3924
3925         * redisplay-output.c (redisplay_move_cursor):
3926         * redisplay-output.c (redraw_cursor_in_window):
3927         * redisplay-output.c (redisplay_update_line):
3928         * redisplay-output.c (redisplay_output_window):
3929         New begin/end methods.
3930
3931         * redisplay-tty.c:
3932         * redisplay-tty.c (tty_frame_output_begin):
3933         * redisplay-tty.c (tty_frame_output_end):
3934         * redisplay-tty.c (console_type_create_redisplay_tty):
3935         New begin/end methods.
3936
3937         * redisplay-x.c:
3938         * redisplay-x.c (x_window_output_begin):
3939         * redisplay-x.c (x_window_output_end):
3940         * redisplay-x.c (console_type_create_redisplay_x):
3941         New begin/end methods.
3942
3943         * redisplay.c (redisplay_frame):
3944         * redisplay.c (Fredisplay_echo_area):
3945         New begin/end methods.
3946         use MAYBE_DEVMETH for clear_frame; it may not exist.
3947
3948         * window.h (WINDOW_XFRAME):
3949         WINDOW_XFOO macros -- get locale and decode struct pointer.
3950
3951
3952 2000-05-12  Ben Wing  <ben@xemacs.org>
3953
3954         * emacs.c:
3955         * emacs.c (ensure_no_quitting_from_now_on):
3956         * emacs.c (fatal_error_signal):
3957         * emacs.c (mswindows_handle_hardware_exceptions):
3958         * emacs.c (main):
3959         * emacs.c (Fkill_emacs):
3960         * emacs.c (shut_down_emacs):
3961         * emacs.c (assert_failed):
3962         various improvements in fatal error handling.
3963
3964         * eval.c:
3965         move preparing_for_armageddon to emacs.c.
3966
3967         * lisp.h:
3968         declare fatal_error_in_progress.
3969
3970         * print.c:
3971         * print.c (std_handle_out_external):
3972         * print.c (std_handle_out_va):
3973         * print.c (stderr_out):
3974         * print.c (stdout_out):
3975         use console under mswin when no standard output.
3976         don't do code conversion during fatal error.
3977
3978         * scrollbar.c (Fscrollbar_page_up):
3979         * scrollbar.c (Fscrollbar_page_down):
3980         fix missing else.  reindent.
3981
3982 2000-05-11  Jan Vroonhof  <vroonhof@math.ethz.ch>
3983
3984         Emergency fix.
3985
3986         * glyphs.h (GLYPH_CACHEL_DESCENT):
3987         (GLYPH_CACHEL_DESCENT):
3988         (GLYPH_CACHEL_DESCENT):
3989         * glyphs.h (GLYPH_CACHEL_ASCENT): Match parameters to variables
3990         used in case these are inline functions.
3991         Use more absurd values to error check.
3992
3993         include window.h for error check functions.
3994
3995 2000-05-11  Ben Wing  <ben@xemacs.org>
3996
3997         * cmdloop.c (Freally_early_error_handler):
3998         Display message box under windows; otherwise, message will disappear
3999         before it can be viewed.
4000
4001         * console-msw.c:
4002         * console-msw.c (Fmswindows_message_box):
4003         * console-msw.c (FROB):
4004         * console-msw.c (syms_of_console_mswindows):
4005         Define new fun `mswindows-message-box'.
4006         #### I will merge this into `popup-dialog-box'; just give me
4007         a bit of time.
4008
4009         * general.c:
4010         * general.c (syms_of_general):
4011         Some new symbols used in `mswindows-message-box'.
4012
4013         * glyphs.c:
4014         * glyphs.c (Fset_image_instance_property):
4015         put warning in this fun.
4016
4017         * glyphs.h:
4018         * glyphs.h (GLYPH_CACHEL_WIDTH):
4019         * glyphs.h (GLYPH_CACHEL_ASCENT):
4020         * glyphs.h (GLYPH_CACHEL):
4021         * glyphs.h (GLYPH_CACHEL_GLYPH):
4022         define error-checking versions to try to catch a bug i've seen --
4023         redisplay gets in an infinite loop because the glyph width of the
4024         continuation glyph is 65535.
4025
4026         * lisp.h:
4027         Extern message-box stuff.
4028
4029         * window.c (allocate_window):
4030         * window.c (make_dummy_parent):
4031         * window.c (Fset_window_configuration):
4032         Use EQUAL not EQ for subwindow caches to make them work a bit
4033         better. (Something is still very broken.)
4034
4035
4036 2000-05-11  Yoshiki Hayashi  <yoshiki@xemacs.org>
4037
4038         * glyphs.c (image_instantiate): Suppress gcc warnings.
4039         (Fmake_image_instance): Fix doc string.
4040         * specifier.c (Fmake_specifier): Ditto.
4041
4042 2000-05-02  Yoshiki Hayashi  <yoshiki@xemacs.org>
4043
4044         * paths.h.in (PATH_LOCK): Removed.
4045         * config.h.in (LOCKDIR_USER_DEFINED): Removed.
4046         * emacs.c (complex_vars_of_emacs): Remove configure-lock-directory.
4047
4048 2000-05-08  Yoshiki Hayashi  <yoshiki@xemacs.org>
4049
4050         * fns.c (Ffeaturep): Update e-mail address in doc-string.
4051         Document (featurep '(and xemacs 21.02)).
4052
4053 2000-05-09  Ben Wing  <ben@xemacs.org>
4054
4055         * buffer.c (complex_vars_of_buffer):
4056         update modeline-format doc.
4057
4058         * device.h:
4059         comment about how DFW_DEVICE should be merged with DOMAIN_DEVICE.
4060
4061         * emacs.c:
4062         timeline of all released versions of Emacs, for use in creating
4063         authorship comments and in synching up.
4064
4065         * glyphs-widget.c (image_instantiator_buttons):
4066         * glyphs-widget.c (image_instantiator_edit_fields):
4067         * glyphs-widget.c (image_instantiator_combo_box):
4068         * glyphs-widget.c (image_instantiator_scrollbar):
4069         * glyphs-widget.c (image_instantiator_progress_guage):
4070         * glyphs-widget.c (image_instantiator_tree_view):
4071         * glyphs-widget.c (image_instantiator_tab_control):
4072         * glyphs-widget.c (image_instantiator_labels):
4073         * glyphs-widget.c (image_instantiator_layout):
4074         * glyphs-widget.c (image_instantiator_native_layout):
4075         rename decode_domain method to governing_domain.
4076
4077         * glyphs.c:
4078         * glyphs.c (Fvalid_image_instantiator_format_p): doc update.
4079         * glyphs.c (add_entry_to_device_ii_format_list):
4080         make sure we don't put an entry more than once into the list.
4081         * glyphs.c (check_instance_cache_mapper):
4082         *************************************************************
4083         allow for nil.  THIS SHOULD FIX A REAL CRASH THAT MANY PEOPLE
4084         HAVE BEEN GETTING.
4085         *************************************************************
4086         * glyphs.c (get_image_instantiator_governing_domain):
4087         clean up, expand on new concept of governing domain.
4088         * glyphs.c (instantiate_image_instantiator):
4089         * glyphs.c (allocate_image_instance):
4090         use governing_domain instead of cache_domain in naming.
4091         * glyphs.c (Fvalid_image_instance_type_p): fix docs.
4092         * glyphs.c (make_image_instance_1):
4093         * glyphs.c (Fmake_image_instance):
4094         allow for any domain (not just device), and process the
4095         governing domain correctly.  very big doc fix.
4096         * glyphs.c (Fimage_instance_domain):
4097         new primitive, to retrieve the governing domain of an image instance.
4098         * glyphs.c (image_instantiate):
4099         use new governing_domain stuff.  this fixes a crash you could get
4100         by instantiating certain widget glyphs in frame locales. (should
4101         signal an error instead of crashing.)
4102         * glyphs.c (Fimage_specifier_p): move doc to make-image-specifier.
4103         * glyphs.c (Fglyphp): clean up doc.
4104         * glyphs.c (subwindow_governing_domain): renamed from *_decode_domain.
4105         * glyphs.c (syms_of_glyphs):
4106         declare Fimage_instance_domain, remove unused Qlayout_image_instance_p.
4107         * glyphs.c (image_instantiator_format_create): add some comments about
4108         bogus code.
4109         * glyphs.c (specifier_vars_of_glyphs): totally rewrite the doc string
4110         for current-display-table. (Apparently Hrjove implemented in 1998 a
4111         design I wrote up in 1996, but didn't update the doc string.)
4112
4113         * glyphs.h: clean up a doc string.
4114         * glyphs.h (governing_domain):
4115         * glyphs.h (struct image_instantiator_methods):
4116         changes for governing_domain stuff.
4117
4118         * gutter.c:
4119         * gutter.c (Fgutter_specifier_p):
4120         * gutter.c (Fgutter_size_specifier_p):
4121         * gutter.c (Fgutter_visible_specifier_p):
4122         * objects.c:
4123         * objects.c (Fcolor_specifier_p):
4124         * objects.c (Ffont_specifier_p):
4125         * objects.c (Fface_boolean_specifier_p):
4126         doc strings moved to make-*-specifier.
4127
4128         * redisplay.c (add_disp_table_entry_runes_1):
4129         * redisplay.c (generate_fstring_runes):
4130         * redisplay.c (screen):
4131         add random comments and doc strings.
4132
4133         * specifier.c:
4134         * specifier.c (Fmake_specifier):
4135         major overhaul of this doc string.
4136
4137         * specifier.c (Fvalid_specifier_domain_p):
4138         comment about the bogosity of image instances being domains.
4139         * specifier.c (decode_domain):
4140         now non-static, used in glyphs.c.
4141         * specifier.c (specifier_instance):
4142         comment about the bogosity of image instances being domains.
4143         * specifier.c (Fgeneric_specifier_p):
4144         move doc string to make-generic-specifier.
4145         * specifier.c (VALID_SINGLE_DISPTABLE_INSTANTIATOR_P):
4146         rebackslashify.
4147
4148         * specifier.h:
4149         * specifier.h (DOMAIN_FRAME):
4150         * specifier.h (DOMAIN_LIVE_P):
4151         * specifier.h (DOMAIN_XDEVICE):
4152         rebackslashify.
4153         add comments about problems with these macros.
4154         prototype for decode_domain.
4155
4156         * toolbar.c:
4157         * toolbar.c (Ftoolbar_specifier_p):
4158         move doc string to `make-toolbar-specifier'.
4159
4160         * window.c (window_unmap_subwindows_cache_mapper):
4161         *************************************************************
4162         allow for nil.  THIS SHOULD FIX A REAL CRASH THAT MANY PEOPLE
4163         HAVE BEEN GETTING.
4164         *************************************************************
4165
4166 2000-05-09  Andy Piper  <andy@xemacs.org>
4167
4168         * glyphs.h: declare reset_frame_subwindow_instance_cache.
4169
4170         * window.c (Fset_window_configuration): reset the frame subwindow
4171         cache and re-initialize the window subwindow caches.
4172
4173         * glyphs.c (reset_frame_subwindow_instance_cache): new function.
4174
4175 2000-05-09  Ben Wing  <ben@xemacs.org>
4176
4177         * ntheap.c (recreate_heap): Changed unknown (VC6 only?) SIZE_T to
4178         DWORD.
4179
4180 2000-04-26  Mike Woolley  <mike@bulsara.com>
4181
4182         * ntheap.c: Changed recreate_heap to limit the amount reserved
4183         for the heap to that which is actually available. Also now
4184         displays a message box (with some dignostics) in the event that
4185         it still can't start.
4186
4187 2000-05-07  Jan Vroonhof  <vroonhof@math.ethz.ch>
4188
4189         * callproc.c (Fold_call_process_internal): GCPRO path
4190
4191 2000-05-08  Jan Vroonhof  <jan@xemacs.org>
4192
4193         Patch by Bill Perry.
4194
4195         * scrollbar.c (Fscrollbar_page_up): Conditionalize on type of call
4196         back data instead of #ifdef.
4197         (Fscrollbar_page_down): ditto.
4198
4199 2000-05-07  Ben Wing  <ben@xemacs.org>
4200
4201         * buffer.h:
4202         Kludge for defining Qmswindows_tstr.
4203
4204         * nt.c:
4205         * nt.c (open_input_file):
4206         * nt.c (open_output_file):
4207         * nt.c (rva_to_section):
4208         * nt.c (mswindows_executable_type):
4209         Move all memory-mapped-file routines here (some were in unexnt.c,
4210         which is bad because they are used by process-nt.c, and unexnt
4211         won't be around when portable dumping).  Synched the above routines
4212         with FSF 20.6.
4213
4214         * nt.h:
4215         Removed ifdef'd out bogus code.
4216         Fixed some prototypes.
4217
4218         * nt.h (file_data):
4219         * nt.h (OFFSET_TO_RVA):
4220         * nt.h (RVA_TO_OFFSET):
4221         * nt.h (RVA_TO_PTR):
4222         Moved the memory-mapped-file structures, macros and prototypes
4223         here, to parallel nt.c.  ntheap.h should really be removed
4224         entirely, and it's a non-portable-dumper specific file.
4225
4226         * ntheap.h (round_to_next):
4227         Moved the memory-mapped-file structures, macros and prototypes
4228         to nt.h.
4229
4230         * ntproc.c (compare_env):
4231         Moved rva_to_section and mswindows_executable_type to nt.c.
4232         Moved compare_env to process-nt.c.
4233         ntproc.c will die, one day.
4234
4235         * ntproc.c (sys_spawnve):
4236         Account for win32_ -> mswindows_.
4237
4238         * process-nt.c:
4239         * process-nt.c (struct nt_process_data):
4240         * process-nt.c (ensure_console_window_exists):
4241         * process-nt.c (compare_env):
4242         * process-nt.c (nt_create_process):
4243         * process-nt.c (nt_kill_process_by_pid):
4244         * process-nt.c (syms_of_process_nt):
4245         * process-nt.c (vars_of_process_nt):
4246         Introduce variable `mswindows-quote-process-args', from FSF 20.6.
4247         Copy argument quoting code from FSF 20.6 (with appropriate Mule-ization
4248         changes).  Eliminate our old `nt-quote-process-args' mechanism.
4249         Synch up nt_create_process with FSF 20.6 sys_spawnve.
4250         Move compare_env here from ntproc.c.
4251
4252         * process.c (Fprocess_send_region):
4253         Takes an optional fourth argument, BUFFER, which should fix some
4254         problems with call-process.
4255
4256         * syscommctrl.h:
4257         Move ICC_BAR_CLASSES here from syswindows.h, to avoid a warning.
4258
4259         * syswindows.h:
4260         Move ICC_BAR_CLASSES to syscommctrl.h.
4261         Add preliminary macros for MSWindows/Mule.  More to come.
4262
4263         * unexnt.c:
4264         * unexnt.c (unexec):
4265         open_output_file moved to nt.c.
4266
4267
4268 2000-05-05  Andy Piper  <andy@xemacs.org>
4269
4270         * window.c (window_unmap_subwindows_cache_mapper): remove the dead
4271         instance from the frame cache also since GC may catch up too late
4272         to make frame deletion sane.
4273
4274 2000-05-04  Andy Piper  <andy@xemacs.org>
4275
4276         * glyphs-x.c (x_widget_instantiate): gcpro widget callbacks.
4277         (x_finalize_image_instance): ungcpro on deletion.
4278
4279         * glyphs.c (image_instantiator_format_create): give pointers a
4280         query geometry method so that the geometry is at least set.
4281
4282         * glyphs-x.c (image_instantiator_format_create_glyphs_x): only
4283         initialize layouts if using widgets.
4284
4285 2000-05-03  Andy Piper  <andy@xemacs.org>
4286
4287         * nt.c: remove bogus reference to sysmmsystem.h
4288
4289         * gui-x.c (popup_selection_callback): fix no selection abort.
4290
4291 2000-05-02  Andy Piper  <andy@xemacs.org>
4292
4293         * glyphs-msw.c (mswindows_update_widget): cope with nil text.
4294         (mswindows_widget_instantiate): ditto.
4295
4296         * glyphs-widget.c (initialize_widget_image_instance): initialize
4297         children correctly.
4298         (widget_instantiate): cope with children and items in the same
4299         instance.
4300
4301         * glyphs.c (mark_image_instance): cope with children as a first
4302         class member.
4303         (image_instance_equal): ditto.
4304         (image_instance_hash): ditto.
4305         (image_instance_changed): ditto.
4306
4307 2000-04-30  Andy Piper  <andy@xemacs.org>
4308
4309         * glyphs.c (subwindow_query_geometry): new function. Return some
4310         defaults.
4311         (subwindow_instantiate): don't assign dimensions if none have been
4312         given.
4313         (image_instantiator_format_create): add subwindow_query_geometry.
4314         (print_image_instance): cope with layouts as widgets.
4315
4316 2000-04-29  Andy Piper  <andy@xemacs.org>
4317
4318         * frame.c (delete_frame_internal): call
4319         free_frame_subwindow_instance_cache so that all subwindows are
4320         finalized before their parent.
4321         (mark_frame): remove subwindow_cachels.
4322         (Fmake_frame): remove subwindow_cachel manipulation.
4323         (allocate_frame_core): subwindow_instance_cache is a weak list.
4324         (delete_frame_internal): set subwindow_instance_cache to nil.
4325
4326         * glyphs-msw.c (mswindows_finalize_image_instance): make double
4327         finalization safe.
4328         (mswindows_finalize_image_instance): use the device
4329         not the domain as the domain may have died already.
4330
4331         * glyphs-x.c (x_finalize_image_instance): ditto.
4332         (x_subwindow_instantiate): remove SUBWINDOW_WIDTH &
4333         HEIGHT.
4334
4335         * redisplay-output.c (redisplay_unmap_subwindows): update for
4336         subwindow instance cache as a weak list.
4337         (redisplay_unmap_subwindows_maybe): ditto.
4338         (redisplay_unmap_subwindows_except_us): ditto.
4339
4340         * glyphs.c (unmap_subwindow): error checking will check the domain
4341         so don't deal with it here. Don't use cachels anymore.
4342         (map_subwindow): ditto.
4343         (update_subwindow_cachel_data): remove old accessor names.
4344         (subwindow_instantiate): remove SUBWINDOW_WIDTH & HEIGHT.
4345         (Fresize_subwindow): don't update cachel.
4346         (mark_subwindow_cachels):
4347         (update_subwindow_cachel_data):
4348         (add_subwindow_cachel):
4349         (get_subwindow_cachel_index):
4350         (update_subwindow_cachel):
4351         (reset_subwindow_cachels):
4352         (mark_subwindow_cachels_as_not_updated): deleted.
4353         (cache_subwindow_instance_in_frame_maybe): new function. Add a
4354         subwindow instance to the frame cache.
4355         (find_matching_subwindow): update for subwindow instance cache as
4356         a weak list.
4357         (update_widget_instances): ditto.
4358         (image_instance_type_to_mask):inlined.
4359         (free_frame_subwindow_instance_cache): new function. finalize all
4360         subwindows that are instantiated.
4361
4362         * glyphs.h (struct Lisp_Image_Instance): add display_data instead
4363         of cachel information.
4364         (IMAGE_INSTANCE_DISPLAY_X):
4365         (IMAGE_INSTANCE_DISPLAY_Y):
4366         (IMAGE_INSTANCE_DISPLAY_WIDTH):
4367         (IMAGE_INSTANCE_DISPLAY_HEIGHT):
4368         (XIMAGE_INSTANCE_DISPLAY_X):
4369         (XIMAGE_INSTANCE_DISPLAY_Y):
4370         (XIMAGE_INSTANCE_DISPLAY_WIDTH):
4371         (XIMAGE_INSTANCE_DISPLAY_HEIGHT): new accessors.
4372         remove subwindow_cachel structure and function references.
4373         (image_instance_type_to_mask): inline from glyphs.c
4374
4375         * redisplay.c (redisplay_frame): remove subwindow_cachel
4376         references.
4377
4378         * frame.h (struct frame): remove subwindow_cachels.
4379         (FRAME_SUBWINDOW_CACHE): access subwindow_instance_cache.
4380
4381         * frameslots.h: add subwindow_instance_cache.
4382
4383         * window.c (replace_window): check subwindow cache of replacement.
4384         (window_unmap_subwindows_cache_mapper):
4385         (window_unmap_subwindows): new functions. Unmap all subwindows
4386         cached on this window.
4387         (mark_window_as_deleted): unmap all subwindows.
4388
4389 2000-04-27  Andy Piper  <andy@xemacs.org>
4390
4391         * glyphs.h (IIFORMAT_METH_OR_GIVEN): cope with null meths.
4392
4393         * glyphs-widget.c (widget_layout): return something.
4394         (layout_layout): return something. Fail if not initialized.
4395         (layout_query_geometry): ditto.
4396         (image_instantiator_native_layout): new function. Initialized the
4397         native layout type.
4398         (widget_instantiate): don't do layout stuff here.
4399
4400         * glyphs.c (instantiate_image_instantiator): reorded calling or
4401         instantiate and post_instantiate with layout in between.
4402         (image_instance_layout): be more selective about deciding whether
4403         the layout has been done or not.
4404
4405         * glyphs.h (struct image_instantiator_methods): return a value
4406         from layout_method.
4407
4408 2000-04-26  Andy Piper  <andy@xemacs.org>
4409
4410         * glyphs.c (allocate_image_instance): make initial width and
4411         height unspecified. Set initialized to 0.
4412
4413         * syscommctrl.h new file. Encapsulates commctrl.h.
4414
4415         * syswindows.h new file. Encapsulates windows.h.
4416
4417         * ntplay.c: use new syswindows.h and syscommctrl.h header.
4418         * nt.c: ditto.
4419         * console-msw.h: ditto.
4420
4421         * redisplay-tty.c (tty_output_display_block): remove layout references.
4422
4423         * glyphs-msw.c (mswindows_widget_instantiate): use the domain
4424         window handle rather than just the frame.
4425
4426         * glyphs.c (mark_image_instance): remove layout references.
4427         (print_image_instance): ditto.
4428         (image_instance_equal): ditto.
4429         (image_instance_hash): ditto.
4430         (decode_image_instance_type): ditto.
4431         (encode_image_instance_type): ditto.
4432         (image_instantiate): ditto.
4433         (allocate_glyph): ditto.
4434         (Fimage_instance_height): ditto.
4435         (Fimage_instance_width): ditto.
4436         (update_subwindow): ditto.
4437
4438         * redisplay-x.c (x_output_display_block): recode for layouts as
4439         widgets.
4440
4441         * redisplay-output.c (redisplay_output_layout): recode for layouts
4442         as widgets.
4443         (compare_runes): remove layout references.
4444
4445         * redisplay-msw.c (mswindows_output_display_block): recode for
4446         layouts as widgets.
4447
4448         * glyphs-widget.c (image_instantiator_layout): remove
4449         layout_possible_dest_types.
4450         (layout_possible_dest_types): deleted.
4451
4452         * glyphs.h (image_instance_type): remove layout references.
4453         (struct Lisp_Image_Instance): ditto. Add initialized flag.
4454         (IMAGE_INSTANCE_INITIALIZED): new accessor.
4455         (XIMAGE_INSTANCE_INITIALIZED): ditto.
4456
4457 2000-04-25  Andy Piper  <andy@xemacs.org>
4458
4459         * glyphs-widget.c (image_instantiator_buttons):
4460         (image_instantiator_edit_fields):
4461         (image_instantiator_combo_box):
4462         (image_instantiator_scrollbar):
4463         (image_instantiator_progress_guage):
4464         (image_instantiator_tree_view):
4465         (image_instantiator_tab_control):
4466         (image_instantiator_labels):
4467         (image_instantiator_layout): call default post_instantiate method.
4468         (widget_post_instantiate): new function. Simply lays out the
4469         widgets.
4470
4471         * glyphs.h (struct image_instantiator_methods): add
4472         post_instantiate method.
4473
4474         * glyphs.c (instantiate_image_instantiator): add post_instantiate
4475         method calls.
4476
4477 2000-04-23  Andy Piper  <andy@xemacs.org>
4478
4479         * glyphs.h (struct image_instantiator_methods): add
4480         decode_domain_method.
4481         (struct Lisp_Image_Instance): remove subwindow frame - it can be
4482         derived from the domain.
4483         (IMAGE_INSTANCE_FRAME): new accessor.
4484         (XIMAGE_INSTANCE_FRAME): ditto.
4485
4486         * glyphs.c (print_image_instance): use IMAGE_INSTANCE_FRAME
4487         instead of _SUBWINDOW_FRAME.
4488         (finalize_image_instance): ditto.
4489         (Fimage_instance_foreground): ditto.
4490         (Fimage_instance_background): ditto.
4491         (image_instantiate): ditto.
4492         (update_subwindow_cachel): ditto.
4493         (update_subwindow): ditto.
4494         (unmap_subwindow): ditto.
4495         (map_subwindow): ditto
4496         (subwindow_instantiate): ditto.
4497         * glyphs-msw.c (mswindows_update_widget): ditto.
4498         (mswindows_progress_gauge_instantiate): ditto.
4499         (mswindows_tab_control_update): ditto.
4500         * glyphs-x.c (x_update_widget): ditto.
4501         (x_widget_instantiate): ditto.
4502         (x_tab_control_instantiate): ditto.
4503         (x_tab_control_update): ditto.
4504         * event-msw.c (mswindows_wnd_proc): ditto
4505
4506         * glyphs-widget.c (image_instantiator_layout): use
4507         subwindow_decode_domain.
4508         (image_instantiator_buttons): ditto.
4509         (image_instantiator_edit_fields): ditto.
4510         (image_instantiator_combo_box): ditto.
4511         (image_instantiator_scrollbar): ditto.
4512         (image_instantiator_progress_guage): ditto.
4513         (image_instantiator_tree_view): ditto.
4514         (image_instantiator_tab_control): ditto.
4515         (image_instantiator_labels): ditto.
4516         (image_instantiator_layout): ditto.
4517
4518         * glyphs.c: add instance error checking to many functions.
4519         (instantiate_image_instantiator): decode device from cache_domain.
4520         (image_instantiate): partially rewrite by using
4521         decode_image_instantiator_domain to determine what domain the
4522         instance needs to be cached in.
4523         (decode_image_instantiator_domain): new function. Determine what
4524         domain the image needs to be cached in.
4525         (check_window_subwindow_cache): new error checking function.
4526         (check_instance_cache_mapper): ditto.
4527         (check_image_instance_structure): ditto.
4528         (subwindow_decode_domain): new function. Encodes a window as a
4529         subwindow's cache domain.
4530         (image_instantiator_format_create): use it for text and
4531         subwindows.
4532
4533 2000-04-21  Andy Piper  <andy@xemacs.org>
4534
4535         * glyphs.c (image_instance_device): new function.
4536         (image_instance_frame): new function.
4537         (image_instance_window): new function.
4538         (image_instance_live_p): new function.
4539
4540         * window.c (mark_window_as_deleted): reset the subwindow_instance_
4541         cache to nil.
4542
4543         * glyphs.h (struct Lisp_Image_Instance): device->domain.
4544         (IMAGE_INSTANCE_DOMAIN): new accessor.
4545         (XIMAGE_INSTANCE_DOMAIN): ditto.
4546
4547         * glyphs-x.c (x_finalize_image_instance): device->domain.
4548
4549         * glyphs-msw.c (init_image_instance_geometry): device->domain.
4550         (mswindows_finalize_image_instance): ditto.
4551
4552         * glyphs-eimage.c (jpeg_instantiate): device->domain.
4553         (gif_instantiate): ditto.
4554         (png_instantiate): ditto.
4555         (tiff_instantiate): ditto.
4556
4557         * glyphs.c (instantiate_image_instantiator): use domain rather
4558         than device.
4559         (mark_image_instance): device -> domain.
4560         (print_image_instance): ditto.
4561         (finalize_image_instance): ditto.
4562         (image_instance_equal): ditto.
4563         (allocate_image_instance): ditto.
4564         (Fcolorize_image_instance): ditto.
4565         (query_string_geometry): ditto.
4566         (image_instantiate): ditto
4567         (query_string_font): ditto.
4568         (image_instantiate): ditto.
4569         (update_subwindow): ditto.
4570         (unmap_subwindow): ditto.
4571         (map_subwindow): ditto.
4572         (subwindow_instantiate): ditto.
4573
4574         * specifier.h (DOMAIN_DEVICE): new, semantically correct, decoder.
4575         (DOMAIN_FRAME): ditto.
4576         (DOMAIN_WINDOW): ditto.
4577         (DOMAIN_LIVE_P): ditto.
4578         (XDOMAIN_DEVICE): ditto.
4579         (XDOMAIN_FRAME): ditto.
4580         (XDOMAIN_WINDOW): ditto.
4581
4582         * specifier.c (Fvalid_specifier_domain_p): add image instances as
4583         a valid specifier domain.
4584
4585 2000-04-19  Andy Piper  <andy@xemacs.org>
4586
4587         * glyphs-widget.c (syms_of_glyphs_widget): remove
4588         widget-callback-current-channel.
4589         (vars_of_glyphs_widget): ditto.
4590         * glyphs.h: ditto
4591
4592         * gui.c (get_gui_callback): revert to previous behaviour.
4593
4594 2000-04-18  Andy Piper  <andy@xemacs.org>
4595
4596         * glyphs.h (struct Lisp_Image_Instance): add margin_width.
4597         (IMAGE_INSTANCE_MARGIN_WIDTH): new.
4598         (XIMAGE_INSTANCE_MARGIN_WIDTH): new.
4599
4600         * glyphs.c (image_instance_equal): add margin_width.
4601         (image_instance_hash): ditto.
4602
4603         * glyphs-widget.c (widget_instantiate): deal with margin-width.
4604         (layout_query_geometry): ditto.
4605         (layout_layout): ditto.
4606         (syms_of_glyphs_widget): add margin-width.
4607         (image_instantiator_layout): allow margin-width.
4608
4609         * glyphs.c (update_widget_instances): make a normal function.
4610         (syms_of_glyphs): remove Qupdate_widget_instances.
4611         * glyphs.h: ditto.
4612
4613         * gui-x.c (popup_selection_callback): use enqueue_magic_eval_event
4614         so that we don't corrupt ideas about the last event or
4615         command. Remove widget-callback-current-channel fiddling.
4616         * gui-msw.c (mswindows_handle_gui_wm_command): ditto.
4617
4618 2000-05-01  Martin Buchholz <martin@xemacs.org>
4619
4620         * XEmacs 21.2.33 is released.
4621
4622 2000-05-01  Yoshiki Hayashi  <yoshiki@xemacs.org>
4623
4624         * make-src-depend: Allow dots in header file name.
4625
4626 2000-05-01  Yoshiki Hayashi  <yoshiki@xmacs.org>
4627
4628         * mule-charset.h (struct charset_lookup): Add
4629         next_allocated_1_byte_leading_byte and
4630         next_allocated_2_byte_leading_byte.
4631         * mule-charset.c: Move above two variables so that those values
4632         will be dumped.
4633
4634 2000-04-26  Yoshiki Hayashi  <yoshiki@xemacs.org>
4635
4636         * insdel.c (find_charsets_in_bufbyte_string): Add Vcharset_ascii
4637         when string length is zero.
4638         (find_charsets_in_emchar_string): Ditto.
4639
4640 2000-04-29  Bjrn Torkelsson  <torkel@hpc2n.umu.se>
4641
4642         * lisp.h: extern Qdialog and Qmenubar.
4643
4644         * gui-x.c: added events.h.
4645                 also fixed typo which made the file uncompilable.
4646
4647         * general.c: Added Qmenubar and Qdialog
4648
4649 2000-04-28  Ben Wing  <ben@xemacs.org>
4650
4651         * frame-msw.c (mswindows_init_frame_1):
4652         * frame-msw.c (mswindows_mark_frame):
4653         * event-msw.c (mswindows_enqueue_dispatch_event):
4654         * console-msw.h:
4655         * console-msw.h (struct mswindows_frame):
4656         * console-msw.h (FRAME_MSWINDOWS_WIDGET_HASH_TABLE1):
4657         there are now three hash tables for callbacks.
4658         mswindows_enqueue_dispatch_event is no longer static.
4659
4660         * dialog-x.c (maybe_run_dbox_text_callback):
4661         * dialog-x.c (dbox_descriptor_to_widget_value):
4662         switch to new cons3 form for callbacks.
4663
4664         * glyphs-msw.c (mswindows_register_gui_item):
4665         * glyphs-msw.c (mswindows_widget_instantiate):
4666         * glyphs-msw.c (add_tree_item):
4667         * glyphs-msw.c (add_tab_item):
4668         new image instance parameter, so it can be passed to callback-ex.
4669         respect :callback-ex as well as :callback.
4670
4671         * glyphs-widget.c (VALID_GUI_KEYWORDS):
4672         add :callback-ex.
4673
4674         * glyphs.c (print_image_instance):
4675         prettify, e.g. now prints widget type.
4676
4677         * gui-x.h:
4678         certain funs have new image instance parameter.
4679
4680         * gui.c:
4681         * gui.c (get_gui_callback):
4682         * gui.c (gui_item_add_keyval_pair):
4683         * gui.c (gui_item_init):
4684         * gui.c (gui_add_item_keywords_to_plist):
4685         * gui.c (mark_gui_item):
4686         * gui.c (gui_item_hash):
4687         * gui.c (gui_item_equal):
4688         * gui.c (copy_gui_item):
4689         * gui.c (syms_of_gui):
4690         recognize callback-ex in a number of places.
4691         also, fix the annoying "can't get out of yes-no dialog" bug.
4692
4693         * gui.h:
4694         * gui.h (struct Lisp_Gui_Item):
4695         recognize callback-ex in a number of places.
4696
4697         * menubar-x.c (menu_item_descriptor_to_widget_value_1):
4698         new parameter in button_item_to_widget_value.
4699
4700         * glyphs-x.c (x_update_widget):
4701         * glyphs-x.c (x_button_instantiate):
4702         * glyphs-x.c (x_button_update):
4703         * glyphs-x.c (x_progress_gauge_instantiate):
4704         * glyphs-x.c (x_edit_field_instantiate):
4705         * glyphs-x.c (x_combo_box_instantiate):
4706         * glyphs-x.c (x_tab_control_instantiate):
4707         * glyphs-x.c (x_label_instantiate):
4708         new image instance parameter in various places.
4709
4710         * event-Xt.c:
4711         * event-Xt.c (enqueue_Xt_dispatch_event):
4712         this fun gets exported.
4713
4714         * gui-msw.c:
4715         * gui-msw.c (mswindows_handle_gui_wm_command):
4716         handle both :callback and :callback-ex, and generate our own
4717         event because it's one of the callback-ex arguments.
4718
4719         * gui-x.c:
4720         * gui-x.c (popup_selection_callback):
4721         handle both :callback and :callback-ex, and generate our own
4722         event because it's one of the callback-ex arguments.
4723         * gui-x.c (button_item_to_widget_value):
4724         * gui-x.c (gui_items_to_widget_values_1):
4725         * gui-x.c (gui_item_children_to_widget_values):
4726         * gui-x.c (gui_items_to_widget_values):
4727         new image instance parameter in various places.
4728
4729         * fns.c (Freplace_list):
4730         fix small typo in doc string.
4731
4732         * lisp.h:
4733         declare enqueue_Xt_dispatch_event.
4734
4735 2000-04-28  Ben Wing  <ben@xemacs.org>
4736
4737         * buffer.c:
4738         * buffer.c (Frecord_buffer):
4739         * buffer.c (syms_of_buffer):
4740         delete record-buffer-hook.
4741
4742         * fns.c:
4743         * fns.c (Freplace_list):
4744         * fns.c (syms_of_fns):
4745         new primitive replace-list.
4746
4747         * frameslots.h:
4748         slot for old buffer-alist.
4749
4750         * lisp.h:
4751         exfun replace-list.
4752
4753         * redisplay.c:
4754         * redisplay.c (redisplay_frame):
4755         * redisplay.c (syms_of_redisplay):
4756         * redisplay.c (vars_of_redisplay):
4757         new hook buffer-list-changed-hook.
4758         call it.
4759
4760 2000-04-27  Ben Wing  <ben@xemacs.org>
4761
4762         * extents.h: extern in_modeline_generation.
4763
4764         * redisplay.c (generate_formatted_string_db): set
4765         in_modeline_generation.
4766
4767         * extents.c (extent_changed_for_redisplay): don't mark redisplay
4768         flags if in modeline generation.  otherwise frame-modified-tick
4769         is ticked far too often.
4770         Declare in_modeline_generation.
4771
4772 2000-04-26  Ben Wing  <ben@xemacs.org>
4773
4774         * emacs.c (vars_of_emacs): document quick-build "error-checking"
4775         option.
4776         (vars_of_emacs): add quick-build as an error-checking option.
4777         A bit kludgy, but there doesn't seem much point in creating
4778         a real var for this.
4779
4780         * config.h.in: put in an entry for QUICK_BUILD; remove NO_DOC_FILE.
4781
4782 2000-04-14  IKEYAMA Tomonori  <tomonori@suiyokai.org>
4783
4784         * redisplay.h (struct display_line): Add a new variable,
4785         line_continuation.
4786
4787         * redisplay.c (create_text_block): Set dl->line_continuation if
4788         the line continues.
4789         (create_string_text_block): Ditto.
4790         (regenerate_window_incrementally): Use line_continuation instead
4791         of searching continuation glyph.
4792         (add_margin_runes): Call add_glyph_rune.
4793         (add_glyph_rune): Handle margin glyph.
4794
4795 2000-04-20  Martin Buchholz  <martin@xemacs.org>
4796
4797         * filelock.c (fill_in_lock_file_name):
4798         ANSIfy.
4799         Check for IS_ANY_SEP instead of '/'.
4800         (lock_file_1):
4801         Avoid generating gratuitous garbage.  Call user_login_name() directly.
4802         Never check errno without first seeing that system call failed.
4803         (unlock_file): Add GCPRO.
4804         (Flock_buffer): Fix docstring.
4805         (Ffile_locked_p): Fix docstring.  Add GCPRO.
4806
4807 2000-04-19  Martin Buchholz  <martin@xemacs.org>
4808
4809         * sysdep.c (get_pty_max_bytes):
4810         Fix hangs on DEC OSF 4.0 when (process-send-string) sends
4811         strings longer than 252 bytes.
4812
4813         * md5.c: Unconditionally include ANSI header <limits.h>
4814
4815         * glyphs-x.c (convert_EImage_to_XImage):
4816         * lisp-union.h (union Lisp_Object):
4817         Use consistently the syntax #ifdef FEATURE, not #if FEATURE.
4818
4819 2000-04-13  Yoshiki Hayashi  <yoshiki@xemacs.org>
4820
4821         * filelock.c (current_lock_owner): Remove unused variable o, p.
4822
4823 2000-04-17  Norbert Koch  <n.koch@eai-delta.de>
4824
4825         * callint.c: Remove multiply defined symbol Qlet
4826         (syms_of_callint): ditto.
4827
4828 2000-04-14  Andy Piper  <andy@xemacs.org>
4829
4830         * general.c (syms_of_general): add last-command, this-command, let
4831         and funcall.
4832
4833         * lisp.h: declare various symbols.
4834
4835         * glyphs.h: declare Qwidget_callback_current_channel;
4836
4837         * glyphs-widget.c (syms_of_glyphs_widget): add
4838         Qgui_callback_current_channel.
4839         (vars_of_glyphs_widget): add Vgui_callback_current_channel.
4840
4841         * gui-msw.c (mswindows_handle_gui_wm_command): bind
4842         widget-callback-current-channel when invoking the interactive
4843         arg. Also bind last-command and next-command when invoking the
4844         widget updates.
4845         * gui-x.c (popup_selection_callback): ditto.
4846
4847         * gui.c (get_gui_callback): massage args so that we are always
4848         calling eval. This allows us to add our own variable bindings
4849         outside.
4850
4851         * glyphs-x.c (x_button_instantiate): use
4852         gui_items_to_widget_values since this is GC safe.
4853         (x_progress_gauge_instantiate): ditto.
4854         (x_edit_field_instantiate): ditto.
4855         (x_label_instantiate): ditto.
4856
4857         * event-Xt.c (emacs_Xt_handle_magic_event): remove old printfs.
4858         (emacs_Xt_event_widget_focus_out): new function
4859         (emacs_Xt_event_widget_focus_in): new function. Set the keyboard
4860         focus.
4861         (emacs_Xt_event_add_widget_actions): new function. add focus
4862         functions as actions.
4863         (init_event_Xt_late): use it.
4864
4865 2000-04-14  Hrvoje Niksic  <hniksic@iskon.hr>
4866
4867         * event-stream.c (Fdispatch_event): Doc fix.
4868
4869 2000-03-29  SL Baur  <steve@musashimaru.m17n.org>
4870
4871         * postgresql.c: Remove all references to PQsetenv*.
4872
4873         * postgresql.h: Remove references to PGsetenvHandler object.
4874         * lrecord.h (lrecord_type): Ditto.
4875
4876 2000-04-11  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
4877
4878         * glyphs-msw.h (struct mswindows_image_instance_data): Added
4879         real_heigh and real_width members, and accessor macros for these.
4880
4881         * glyphs-msw.c (init_image_instance_geometry): New function.
4882         (init_image_instance_from_dibitmap): Use it.
4883         (mswindows_resource_instantiate): Use it.
4884         (init_image_instance_from_xbm_inline): Use it.
4885         (mswindows_initialize_image_instance_mask): Use real bitmap
4886         geometry.
4887         (mswindows_create_resized_bitmap): Ditto.
4888         (mswindows_create_resized_mask): Ditto.
4889
4890         * redisplay-msw.c (mswindows_output_dibitmap): Stretch real mask
4891         and bitmap to their surface size.
4892
4893 2000-04-11  Jan Vroonhof  <jan@xemacs.org>
4894
4895         * process-unix.c (unix_send_process): Guard against process MIA
4896         after Faccept_process_output.
4897
4898 2000-04-11  Ben Wing  <ben@xemacs.org>
4899
4900         * eval.c (unbind_to_hairy): fix brokenness introduced by
4901         nanosecond speed improvements.
4902
4903 2000-04-07  Raymond Toy  <toy@rtp.ericsson.se>
4904
4905         * sunplay.c (init_device): To play sounds correctly, the device
4906         apparently needs to be initialized at least once by XEmacs.  Make
4907         it so.
4908
4909 2000-04-10  IKEYAMA Tomonori  <tomonori@suiyokai.org>
4910
4911         * redisplay.c (add_margin_runes): Add text image glyph
4912           handling.
4913
4914 2000-04-06  Yoshiki Hayashi  <yoshiki@xemacs.org>
4915
4916         * lisp.h (DOESNT_RETURN): Don't declare as volatile when
4917         gcc is newer than 2.5.
4918
4919 2000-04-06  Colin Rafferty  <colin@xemacs.org>
4920
4921         * lisp.h (FLEXIBLE_ARRAY_STRUCT_SIZEOF): Created.
4922
4923         * fns.c (size_bit_vector):
4924         * alloc.c (size_vector):
4925         (make_vector_internal):
4926         (make_bit_vector_internal):
4927         (sweep_bit_vectors_1):
4928         Replace calls to offsetof with FLEXIBLE_ARRAY_STRUCT_SIZEOF macro.
4929
4930 2000-04-06  Andy Piper  <andy@xemacs.org>
4931
4932         * gmalloc.c (malloc): undo previous change.
4933         (malloc): ditto.
4934         (free): ditto.
4935         (realloc): ditto.
4936
4937 2000-04-06  IKEYAMA Tomonori <tomonori@suiyokai.org>
4938
4939         * line-number.c (buffer_line_number): Revert to former version.
4940
4941 2000-04-06  Andy Piper  <andy@xemacs.org>
4942
4943         * gmalloc.c (malloc): add error checking.
4944         (malloc): ditto.
4945         (free): ditto.
4946         (realloc): ditto.
4947
4948         * dialog-x.c (dbox_descriptor_to_widget_value): add extra
4949         button_item_to_widget_value arg.
4950
4951         * glyphs-x.c (x_button_instantiate): add extra
4952         button_item_to_widget_value arg.
4953         (x_progress_gauge_instantiate): ditto.
4954         (x_edit_field_instantiate): ditto.
4955         (x_label_instantiate): ditto.
4956
4957         * gui-x.c (gui_items_to_widget_values_1): add extra
4958         button_item_to_widget_value arg.
4959         (button_item_to_widget_value): add extra menu_item_p arg.
4960
4961         * gui-x.h: change signature of button_item_to_widget_value.
4962
4963         * menubar-x.c (menu_item_descriptor_to_widget_value_1): add extra
4964         button_item_to_widget_value arg.
4965
4966 2000-04-03  Yoshiki Hayashi  <yoshiki@xemacs.org>
4967
4968         * buffer.h (struct buffer): auto_save_modified should be long.
4969
4970 2000-04-05  Andy Piper  <andy@xemacs.org>
4971
4972         * glyphs-widget.c (widget_instantiate): pixwidth != pixheight
4973         type.
4974         (button_query_geometry): give a little more room so that athena
4975         buttons fit.
4976
4977 2000-04-05  Andy Piper  <andy@xemacs.org>
4978
4979         * faces.c (complex_vars_of_faces): The widget face should inherit
4980         the font of the gui-element face.
4981
4982 2000-04-04  Andy Piper  <andy@xemacs.org>
4983
4984         * glyphs-x.c (x_button_update): new function. unconditionally
4985         update a button's state when the instance is dirty.
4986         (image_instantiator_format_create_glyphs_x): add x_button_update.
4987         (x_widget_instantiate): remove old resize cruft.
4988
4989 2000-04-02  Andy Piper  <andy@xemacs.org>
4990
4991         * frame.c (change_frame_size_1): The introduction of gutters means
4992         that we need to allow 0 as a potential frame dimension.
4993
4994 2000-04-02  IKEYAMA Tomonori  <tomonori@suiyokai.org>
4995
4996         * redisplay.c (add_glyph_rune): Don't set 0 to bufpos for text
4997         image glyph if allow_cursor.
4998         (add_hscroll_rune): Don't allow cursor to border glyph.
4999         (create_text_block): Ditto.
5000
5001         * redisplay-output.c (redisplay_move_cursor): Do nothing even if
5002         text not in buffer.
5003         (redisplay_output_layout): Call ensure_face_cachel_complete for
5004         text image glyph.
5005
5006
5007 2000-03-16  IKEYAMA Tomonori  <tomonori@suiyokai.org>
5008
5009         * redisplay.c (add_glyph_rune): Adding text image as text runes.
5010
5011         * redisplay-output.c (redisplay_move_cursor): NO_CURSOR if text
5012         not in buffer
5013
5014         * redisplay-tty.c (tty_output_display_block): Delete the routine
5015         for text image glyph
5016         * redisplay-x.c (x_output_display_block): ditto
5017         * redisplay-msw.c (mswindows_output_display_block): ditto
5018
5019 2000-02-02  Mike Alexander  <mta@arbortext.com>
5020
5021         Note: Some of these were committed by accident as part of other
5022         patches.
5023
5024         * regex.c (regex_compile): Avoid compiler warnings.
5025
5026         * ntproc.c (sys_spawnve): Avoid compiler warnings.
5027
5028         * nt.h: Declare term_ntproc correctly.
5029
5030         * nt.c: Remove incorrect declaration of get_home_directory which
5031         is declared correctly in lisp.h.
5032
5033         * keymap.c (get_keyelt): Avoid compiler warnings.
5034         (raw_lookup_key_mapper): Avoid compiler warnings.
5035
5036         * gutter.c (gutter_was_visible): Add return statement to avoid warning.
5037
5038         * glyphs-eimage.c (png_instantiate): Avoid compiler warnings.
5039
5040         * filemode.c (mode_string): Avoid compiler warnings.
5041
5042         * file-coding.c (Fcoding_system_aliasee): Add return statement to
5043         avoid warning.
5044
5045         * events-mod.h: Undef some things that winuser.h defines differently.
5046
5047         * data.c (Faset): Avoid compiler warnings.
5048
5049         * alloc.c (Fmake_byte_code): Avoid compiler warnings.
5050
5051 2000-03-03  Jan Vroonhof  <vroonhof@math.ethz.ch>
5052
5053         * sound.c (Fplay_sound_file): Wrap ESD in start/stop_interrupts.
5054         Fall through to simple beep on error.
5055         Replace "extern" by real header file.
5056
5057         * linuxplay.c: Use nativesound.h
5058         (play_sound_data): Return error code. Be less verbose on error.
5059
5060         * sunplay.c: Use nativesound.h
5061         (play_sound_data): Return error code. Be less verbose on error.
5062
5063         * ntplay.c: Use nativesound.h
5064         (play_sound_data): Return fake error code
5065
5066         * sgiplay.c: Use nativesound.h
5067         (play_sound_data): Return error code
5068
5069         * hpplay.c: Use nativesound.h, partially implement
5070         new error code. Break compilation until finished.
5071         (play_sound_data): error code.
5072
5073         * nativesound.h (play_sound_file):
5074           (play_sound_data): Prototype in new header.
5075
5076 2000-03-31  Andy Piper  <andy@xemacs.org>
5077
5078         * glyphs-widget.c: (button_query_geometry): new function. Adjust
5079         for toggle and radio buttons.
5080         (image_instantiator_buttons): use it.
5081
5082 2000-03-03  Jan Vroonhof  <vroonhof@math.ethz.ch>
5083
5084         * scrollbar-x.c (x_update_vertical_scrollbar_callback):
5085         (x_update_horizontal_scrollbar_callback): Return if no mirror was
5086         found. Scrollbar event probably belonged to some old config.
5087
5088 2000-03-31  Andy Piper  <andy@xemacs.org>
5089
5090         * glyphs-widget.c (widget_instantiate): use LAYOUT_VERTICAL rather
5091         than 1.
5092         (initialize_widget_image_instance): default layout to
5093         LAYOUT_HORIZONTAL rather than 0.
5094         (widget_instantiate): reverse the item list at the end rather than
5095         every iteration.
5096         (layout_layout): re-code for the border text at the front of the
5097         item list rather than at the end.
5098         (layout_query_geometry): ditto. Pick up fixed and dynamic sizes
5099         provided by the user.
5100         (widget_query_geometry): comment.
5101
5102 2000-03-30  Andy Piper  <andy@xemacs.org>
5103
5104         * glyphs-widget.c (image_instantiator_layout): allow standard
5105         widget keywords in layouts.
5106
5107         * gutter.c (output_gutter): cope with nil gutter contents.
5108
5109         * frame.c (Fset_frame_properties): add gutter docs.
5110
5111 2000-03-29  Andy Piper  <andy@xemacs.org>
5112
5113         * toolbar-msw.c (TBSTYLE_FLAT): add.
5114         (mswindows_output_toolbar): minor fiddling.
5115
5116 2000-03-29  Andy Piper  <andy@xemacs.org>
5117
5118         * gutter.c (output_gutter): force gutter size recalculation if
5119         what we are trying to display won't fit.
5120         (update_gutter_geometry): new function. A per-gutter version of
5121         update_frame_gutter_geometry.
5122         (update_frame_gutter_geometry): use it.
5123         (redraw_exposed_gutter): add extra debugging output.
5124
5125 2000-03-28  Mike Alexander  <mta@arbortext.com>
5126
5127         * dumper.c: Declare pdump_hFile and pdump_hMap (Windows only)
5128         (pdump_file_unmap): Implement it on Windows
5129         (pdump_file_get): Save alocated handles for pdump_file_unmap
5130
5131 2000-03-28  Andy Piper  <andy@xemacs.org>
5132
5133         * gui.c (get_gui_callback): treat Quit specially.
5134
5135 2000-03-27  Andy Piper  <andy@xemacs.org>
5136
5137         * glyphs.c (image_instantiate): be careful to check in the same
5138         way we assigned.
5139
5140 2000-03-27  Didier Verna  <didier@xemacs.org>
5141
5142         * config.h.in: define the proper SMART_INCLUDE macro.
5143         handle renaming of `foo_h_path' to `foo_h_file'.
5144
5145         * database.c: ditto.
5146
5147         * emacs.c: ditto.
5148
5149         * linuxplay.c: ditto.
5150
5151         * terminfo.c: ditto.
5152
5153         * tooltalk.h: ditto.
5154
5155 2000-03-27  Andy Piper  <andy@xemacs.org>
5156
5157         * glyphs-msw.c (mswindows_update_widget): make sure the widget
5158         gets updated whenever the face might have changed.
5159
5160 2000-03-26  Mike Alexander  <mta@arbortext.com>
5161
5162         * dumper.c (pdump_resource_free): Fix the comment.
5163
5164 2000-03-21  Olivier Galibert  <galibert@pobox.com>
5165
5166         * input-method-xlib.c (XIM_init_frame): Remove painful warning.
5167
5168 2000-03-22  Mike Alexander  <mta@arbortext.com>
5169
5170         * dumper.c: Include Windows headers on Windows
5171         (pdump_resource_free): Add a body to the function
5172         (pdump_load): exe_name -> exe_path and add some comments.
5173
5174 2000-03-25  Mike Alexander  <mta@arbortext.com>
5175
5176         * gui.c (copy_gui_item_tree): Return a value in all cases
5177
5178 2000-03-21  Didier Verna  <didier@xemacs.org>
5179
5180         * config.h.in: move INCLUDE_GLUE_1 and INCLUDE_GLUE_2 here from
5181         lwlib/config.h.in.
5182         (SMART_INCLUDE): new macro.
5183         (POSTGRES_INCLUDE): new macro to include postgresql headers from
5184         the proper location.
5185
5186         * postgresql.c: use it.
5187
5188         * inline.c: ditto.
5189
5190 2000-03-24  Andy Piper  <andy@xemacs.org>
5191
5192         * gutter.c (redraw_exposed_gutters): must be "in display" when we
5193         do this.
5194
5195 2000-03-24  Andy Piper  <andy@xemacs.org>
5196
5197         * redisplay-output.c (compare_runes): use image_instance_changed
5198         to detect changes. Do not depend on glyphs_changed, only depend on
5199         dirtiness.
5200          (redisplay_output_layout): add debug messages.
5201         (compare_runes): ditto.
5202
5203         * glyphs.h: declare new functions.
5204         (struct Lisp_Image_Instance): remove percent and associated
5205         accessors.
5206
5207         * gui.h: declare new copying functions.
5208
5209         * gui.c (copy_gui_item_tree): new function.
5210         (copy_gui_item): new function.
5211         (gui_item_id_hash): revert to standard hash.
5212         (gui_item_hash): ditto.
5213         (gui_item_hash_internal): deleted.
5214         (mark_gui_item): mark value.
5215         (gui_item_add_keyval_pair): add value.
5216         (gui_item_init): ditto.
5217         (gui_add_item_keywords_to_plist): ditto.
5218         (gui_item_equal): ditto.
5219         (syms_of_gui): add Q_value.
5220
5221         * glyphs-x.c (x_progress_gauge_update): use pending items and
5222         value for setting the state.
5223         (x_update_widget): don't set items from pending here.
5224
5225         * glyphs-widget.c (update_widget): update items here.
5226         (progress_gauge_set_property): use items for storing value. Put
5227         new value in pending items.
5228
5229         * glyphs-msw.c (mswindows_progress_gauge_update): use pending
5230         items for new value. Convert percent -> value.
5231         (mswindows_tab_control_update): don't update items here.
5232
5233         * glyphs.c (Fupdate_widget_instances): use image_instance_changed.
5234         (update_subwindow): ditto.
5235         (image_instance_changed): new function. Compare hash values and
5236         past and present widget items.
5237         (image_instantiate): We more careful about where we instantiate
5238         things.
5239         (image_instantiate): add error checking.
5240
5241         * gutter.c (syms_of_gutter): use -hook.
5242
5243 2000-03-20  Yoshiki Hayashi  <yoshiki@xemacs.org>
5244
5245         * console-tty.c (Fset_console_tty_input_coding_system): Use
5246         Qkeyboard.
5247         (Fset_console_tty_output_coding_system): Use Qterminal.
5248         (tty_init_console): Use Qkeyboard and Qterminal.
5249
5250 2000-03-21  Ben Wing  <ben@xemacs.org>
5251
5252         * ntproc.c (create_child): remove bogus HAVE_NTGUI's.
5253         From Mike Alexander <mta@arbortext.com>.
5254
5255 2000-03-21  Ben Wing  <ben@xemacs.org>
5256
5257         * event-msw.c (mswindows_need_event): Horrible kludge to fix
5258         process brokenness.  Proper implementation to come.
5259         * callproc.c:
5260         Rename call-process-internal to old-call-process-internal.
5261         New impl. in process.el.
5262
5263 2000-03-21  Martin Buchholz  <martin@xemacs.org>
5264
5265         * Makefile.in.in: Coalesce HAVE_NATIVE_SOUND code fragments.
5266
5267 2000-03-20  Andy Piper  <andy@xemacs.org>
5268
5269         * glyphs.c (full_list_hash): make hashes of the same elements in
5270         different orders return different values.
5271
5272 2000-03-20  Martin Buchholz <martin@xemacs.org>
5273
5274         * XEmacs 21.2.32 is released.
5275
5276 2000-03-20  Martin Buchholz  <martin@xemacs.org>
5277
5278         * buffer.h (DFC_ALLOCA_USE_CONVERTED_DATA):
5279         (DFC_MALLOC_USE_CONVERTED_DATA):
5280         Add aliasing-safe casts to allow use with char* or unsigned char*
5281         lvalues.
5282
5283         * eldap.c (Fldap_open):
5284         (Fldap_search_basic):
5285         (Fldap_add):
5286         (Fldap_modify):
5287         Make C++-compilable.
5288         Make sure GCPRO'ed variables are initialized.
5289         Use temp variables to avoid repeated calls to Flength.
5290
5291 2000-03-16  Martin Buchholz  <martin@xemacs.org>
5292
5293         * sysfile.h:
5294         Make sure PATH_MAX is always defined.
5295         Include limits.h for PATH_MAX.
5296         Deprecate use of MAXPATHLEN.
5297
5298 2000-03-10  Martin Buchholz  <martin@xemacs.org>
5299
5300         * emacs.c: Add reinit_vars_of_fileio.
5301         * symsinit.h: Add reinit_vars_of_fileio.
5302         * fileio.c (reinit_vars_of_fileio): New.
5303         * fileio.c (Fmake_temp_name):
5304         Initialize temp_name random number from microseconds to make
5305         collisions even less likely.  Initialize always at process startup
5306         time.  (make-temp-name) used to return the same file name twice in
5307         a row when PDUMP.
5308         Random stylistic fiddling.
5309         Comment fixes.
5310
5311 2000-03-20  Andy Piper  <andy@xemacs.org>
5312
5313         * glyphs.c (image_instantiate): allow text glyphs to be
5314         instantiated in the minibuffer window.
5315
5316 2000-03-19  Andy Piper  <andy@xemacs.org>
5317
5318         * glyphs.c (image_instance_hash): be careful about which items we
5319         hash on.
5320
5321         * glyphs-widget.c (tab_control_set_property): record into pending
5322         items rather than the actual items.
5323
5324         * glyphs-x.c (x_update_widget): use pending items to update with.
5325
5326         * glyphs-msw.c (mswindows_tab_control_update): use pending items
5327         to update with.
5328
5329         * glyphs.c (mark_image_instance): mark pending items.
5330
5331         * window.c (Fset_window_configuration): record the buffer.
5332         (Fselect_window): totally revert previous change which breaks many
5333         things.
5334
5335 2000-03-18  Andy Piper  <andy@xemacs.org>
5336
5337         * glyphs-msw.c (mswindows_tab_control_update): force selected
5338         item.
5339
5340         * glyphs.c (image_instantiate): don't allow the minibuffer as a
5341         window domain cache, otherwise we get inconsistencies at
5342         startup. There is something fishy at startup which can lead to the
5343         minibuffer being the selected window when the gutter content is
5344         instantiated.
5345
5346         * gui.c (parse_gui_item_tree_list): add probably unnecessary
5347         gcpros.
5348         (parse_gui_item_tree_children): ditto.
5349         (parse_gui_item_tree_item): ditto.
5350
5351         * glyphs.c (Fupdate_widget_instances): return something.
5352
5353 2000-03-18  Yoshiki Hayashi  <yoshiki@xemacs.org>
5354
5355         * window.c (Fselect_window): Undo 2000-03-17 change.
5356
5357 2000-03-17  SL Baur  <steve@musashimaru.m17n.org>
5358
5359         * postgresql.c (Fpq_setenv): Remove this turkey when linking
5360         against v7.0 libraries.  Insta-coredump city until the postgres
5361         folks fix it.
5362
5363 2000-03-17  Andy Piper  <andy@xemacs.org>
5364
5365         * faces.c (complex_vars_of_faces): don't give the widget face an
5366         inherited background pixmap.
5367
5368         * glyphs-msw.c (mswindows_tab_control_instantiate): select the
5369         selected item.
5370
5371         * event-stream.c (Fdispatch_non_command_events): return something.
5372
5373         * gutter.c (output_gutter): use widget face.
5374         (clear_gutter): ditto.
5375
5376         * NEWS: adjust again.
5377
5378         * window.c (Fselect_window): make sure this runs to completion to
5379         avoid oddities with Fset_window_configuration.
5380         (Fcurrent_window_configuration): in general do not save the
5381         minibuffer as the selected window.
5382
5383         * glyphs.h (IMAGE_INSTANCE_HASH_DEPTH): increase.
5384
5385 2000-03-16  Olivier Galibert  <galibert@pobox.com>
5386
5387         * emacs.c (Frunning_temacs_p): Revert previous patch.
5388         (main_1): Reinitialize running_temacs_argc if pdump_load succeeds.
5389
5390 2000-03-16  Andy Piper  <andy@xemacs.org>
5391
5392         * glyphs-x.c (x_tab_control_update): if no widget values then
5393         return.
5394
5395         * NEWS: update for new features.
5396
5397         * event-Xt.c (emacs_Xt_force_event_pending): new function. Post a
5398         synthetic event to the native system.
5399         (reinit_vars_of_event_Xt): set force_event_pending to
5400         emacs_Xt_force_event_pending.
5401
5402         * events.h (struct event_stream): add force_event_pending.
5403
5404         * specifier.c (recompute_one_cached_specifier_in_window): add
5405         comment.
5406
5407         * redisplay.c (redisplay_frame): don't call
5408         update_frame_subwindows. Reset subwindow cachels when
5409         subwindows_changed, removing this was an optimization too far.
5410
5411         * redisplay-output.c (compare_runes): reorganize so that we catch
5412         glyph changes when we want them. Set optimize_output when this
5413         would help layouts.
5414         (redisplay_output_layout): remove frame_really_changed, use
5415         optimize_output instead.
5416
5417         * redisplay-msw.c (mswindows_output_display_block): reset
5418         optimize_output after outputting a glyph.
5419         * redisplay-x.c (x_output_display_block): ditto.
5420         * redisplay-tty.c (tty_output_display_block): ditto.
5421
5422         * gutter.c: (specifier_vars_of_gutter): use new spec changed
5423         functions.
5424         (gutter_specs_changed): do specific gutter positions.
5425         (top_gutter_specs_changed): new function. Only update the
5426         specified gutter specs.
5427         (bottom_gutter_specs_changed): ditto.
5428         (left_gutter_specs_changed): ditto.
5429         (right_gutter_specs_changed): ditto.
5430
5431         * gui.c (gui_item_hash_internal): new function, does a real hash.
5432         (gui_item_id_hash): use it.
5433         (gui_item_hash): hash the eval'ed gui_item.
5434
5435         * gui-x.c (popup_selection_callback): send an eval event to call
5436         Fupdate_widget_instances.
5437
5438         * gui-msw.c (mswindows_handle_gui_wm_command): send an eval event
5439         to call Fupdate_widget_instances.
5440
5441         * glyphs.h (struct Lisp_Image_Instance): add optimize_output flag.
5442         (IMAGE_INSTANCE_OPTIMIZE_OUTPUT): access it.
5443
5444         * glyphs.c: (update_frame_subwindows): deleted.
5445         (Fupdate_widget_instances): new function for updating the dirty
5446         state of widgets that might have changed.
5447         (syms_of_glyphs): add Qupdate_widget_instances.
5448         (full_list_hash): hash a list completely.
5449         (image_instance_hash): use it for items and properties.
5450
5451         * frame-msw.c (mswindows_size_frame_internal): remove unused
5452         variable.
5453
5454         * faces.h (struct face_cachel): fix comment.
5455
5456         * event-stream.c (Fdispatch_non_command_events): new
5457         function. Process non-command events, forcing an event cycle
5458         beforehand.
5459         (syms_of_event_stream): declare.
5460         (event_stream_force_event_pending): new function. Force an event
5461         on the native event queue so that an event cycle will occur next
5462         time we check.
5463
5464         * event-msw.c:
5465         (struct ntpipe_shove_stream):
5466         (mswindows_enqueue_dispatch_event):
5467         (mswindows_dequeue_dispatch_event):
5468         (mswindows_cancel_dispatch_event):
5469         (mswindows_pump_outstanding_events):
5470         (mswindows_drain_windows_queue):
5471         (mswindows_handle_paint):
5472         (mswindows_wnd_proc):
5473         (mswindows_key_to_emacs_keysym):
5474         (get_process_input_waitable):
5475         (emacs_mswindows_delete_stream_pair): re-indent file.
5476         (mswindows_need_event): do not process further fds if the windows
5477         fd is set, otherwise you get endless XM_BUMPQUEUE cycles. This
5478         fixes the 100% cpu problem.
5479         (reinit_vars_of_event_mswindows): set force_event_pending to 0.
5480
5481 2000-03-15  Olivier Galibert  <galibert@pobox.com>
5482
5483         * alloc.h: New.
5484         * dumper.h: New.
5485         * dumper.c: New.
5486
5487         * emacs.c: Moved dump file searching to dumper.c.
5488         (Frunning_temacs_p): Fixed.
5489
5490         * alloc.c: Moved everything pdump-related to dumper.c.  Removed
5491         last_lrecord_type_index_assigned.
5492
5493 2000-02-20  Olivier Galibert  <galibert@pobox.com>
5494
5495         * symsinit.h: Added reinit parameter to init_console_stream
5496         declaration.
5497
5498         * lisp.h: Added file parameter to pdump_load declaration.
5499
5500         * emacs.c (main_1): Added -nd/--nodump-file and -sd/--show-dump-id
5501         support.  Added dump file searching.
5502
5503         * config.h.in: Added EMACS_PROGNAME.
5504
5505         * console-stream.c (init_console_stream): Fix reinitialisation
5506         when running from temacs.
5507
5508         * alloc.c (pdump): Add id support.
5509         (pdump_load): Add file parameter and signature/id support.
5510
5511         * Makefile.in.in: Add full pdump support.
5512
5513 2000-03-15  SL Baur  <steve@musashimaru.m17n.org>
5514
5515         * postgresql.c: Update documentation to reflect latest code
5516         status.
5517         (print_result): Show tuple counts in printed representation when
5518         appropriate.
5519         (Fpq_put_nbytes): MULE-ize.
5520         (Fpq_get_line_async): Ditto.
5521
5522 2000-03-14  SL Baur  <steve@musashimaru.m17n.org>
5523
5524         * postgresql.c (Fpq_lo_import): Fix return value.
5525         Suggested by: Kenji Itoh <keit@tpj.co.jp>.
5526
5527 2000-03-13  Ben Wing  <ben@xemacs.org>
5528
5529         * alloc.c (pdump_load):
5530         Fix compile warning under mswin.
5531
5532 2000-03-14  SL Baur  <steve@musashimaru.m17n.org>
5533
5534         * postgresql.c: Mule-ization, bug fixes.
5535         Use PG_CODING to encapsulate coding system name changes.
5536         Backport a version of TO_EXTERNAL format for 21.1/InfoDock.
5537         (pg-coding-system): Create.
5538
5539         (Fpq_conn_defaults): Mule-ize.
5540         (Fpq_connectdb): Mule-ize & bug fix.
5541         (Fpq_connect_start): Mule-ize.
5542         (Fpq_set_client_encoding): Mule-ize.
5543         (Fpq_finish): Document `DEAD' connection status.
5544         (Fpq_clear): Ditto.
5545         (Fpq_pgconn): Mule-ize.
5546         (Fpq_exec): Mule-ize & bug fix.
5547         (Fpq_send_query): Ditto.
5548         (Fpq_get_result): Ditto.
5549         (Fpq_res_status): Mule-ize.
5550         (Fpq_result_error_message): Mule-ize.
5551         (Fpq_ntuples): fix comments.
5552         (Fpq_fname): Mule-ize.
5553         (Fpq_fnumber): Mule-ize.
5554         (Fpq_ftype): fix comments.
5555         (Fpq_get_value): Mule-ize.
5556         (Fpq_cmd_status): Ditto.
5557         (Fpq_cmd_tuples): Ditto.
5558         (Fpq_oid_value): Ditto.
5559         (Fpq_notifies): Ditto.
5560         (Fpq_lo_import): Ditto.
5561         (Fpq_lo_export): Ditto.
5562         (Fpq_get_line): Ditto.
5563         (Fpq_put_line): Mule-ize and bug fix.
5564         (syms_of_postgresql): Fix ifdef'ing, add pg-coding-system.
5565
5566 2000-03-10  SL Baur  <steve@musashimaru.m17n.org>
5567
5568         * postgresql.c (vars_of_postgresql): Mule-ize.
5569         (Fpq_conn_defaults): Ditto.
5570
5571 2000-03-12  Ben Wing  <ben@xemacs.org>
5572
5573         * alloc.c (Fmake_byte_code):
5574         * alloc.c (debug_string_purity_print):
5575         * alloc.c (pdump_backtrace):
5576         * alloc.c (pdump_get_indirect_count):
5577         * alloc.c (pdump_register_sub):
5578         * alloc.c (pdump_register_object):
5579         * alloc.c (pdump_register_struct):
5580         * alloc.c (pdump_dump_data):
5581         * alloc.c (pdump_reloc_one):
5582         Minor cleanups.
5583
5584         * console-msw.c:
5585         * console-msw.c (GetConsoleHwnd):
5586         * console-msw.c (msw_hide_console):
5587         * console-msw.c (msw_show_console):
5588         * console-msw.c (msw_ensure_console_buffered):
5589         * console-msw.c (msw_output_console_string):
5590         * console-msw.c (console_type_create_mswindows):
5591
5592         a) Added functions to manipulate the console window for use with
5593         shell support.
5594
5595         b) Added support for writing text to the console, which is now
5596         used under Windows when xemacs is not being run non-interactively,
5597         to write text that would otherwise be destined for stdout because
5598         under these circumstances, text written to stdout tends to
5599         disappear and not be seen.
5600
5601         * console-msw.h:
5602         * event-Xt.c:
5603         * event-Xt.c (x_event_to_emacs_event):
5604         * event-Xt.c (describe_event_window):
5605         * events-mod.h (XEMACS_MOD_CONTROL):
5606         * events.c:
5607         * events.c (Fmake_event):
5608         * events.c (character_to_event):
5609         * events.c (event_to_character):
5610         * events.c (format_event_object):
5611         * events.c (Fevent_modifiers):
5612         * events.h:
5613         * events.h (struct key_data):
5614         * events.h (struct button_data):
5615         * events.h (struct misc_user_data):
5616         * frame-x.c (Fcde_start_drag_internal):
5617         * frame-x.c (Foffix_start_drag_internal):
5618         * gpmevent.c (Freceive_gpm_event):
5619         * keymap.c:
5620         * keymap.c (bucky_sym_to_bucky_bit):
5621         * keymap.c (control_meta_superify):
5622         * keymap.c (make_key_description):
5623         * keymap.c (keymap_lookup_directly):
5624         * keymap.c (create_bucky_submap):
5625         * keymap.c (keymap_store):
5626         * keymap.c (define_key_check_and_coerce_keysym):
5627         * keymap.c (define_key_parser):
5628         * keymap.c (define_key_alternate_name):
5629         * keymap.c (Fdefine_key):
5630         * keymap.c (raw_lookup_key_mapper):
5631         * keymap.c (struct map_keymap_unsorted_closure):
5632         * keymap.c (map_keymap_unsorted_mapper):
5633         * keymap.c (map_keymap_sort_predicate):
5634         * keymap.c (map_keymap_sorted):
5635         * keymap.c (accessible_keymaps_mapper_1):
5636         * keymap.c (where_is_recursive_mapper):
5637         * keymap.c (describe_map_mapper):
5638         * keymap.c (describe_map_sort_predicate):
5639         * keymap.c (describe_map):
5640         * keymap.c (complex_vars_of_keymap):
5641         And a number of other files, the key modifier preprocessor
5642         constants that xemacs uses have names that conflict with constants
5643         defined under MS Windows for other purposes, so they were renamed
5644         to begin with the prefix XEMACS_. The variables that hold such
5645         modifiers were changed to consistently be of type int to fix
5646         various compile warnings.
5647
5648         * console.c (complex_vars_of_console):
5649         * device.c:
5650         * device-msw.c:
5651         * device-msw.c (mswindows_finish_init_device):
5652         * device-msw.c (msw_get_workspace_coords):
5653         * device-msw.c (mswindows_device_system_metrics):
5654         and various other files, added support for a new
5655         device property called offset-workspace which returns the position
5656         of the upper left corner of the workspace area and goes along with
5657         the existing size-workspace property.
5658
5659         * dialog-msw.c:
5660         * dialog-msw.c (push_bufbyte_string_as_unicode):
5661         * dialog-msw.c (mswindows_popup_dialog_box):
5662         Added support for XEmacs-style accelerator specifications in
5663         button text.  Note: I didn't add support for this under X Windows,
5664         and somebody needs to do this.
5665
5666         * dialog.c:
5667         * dialog.c (Fpopup_dialog_box):
5668         Documented the support for accelerators that was just mentioned.
5669
5670         editfns.c (get_home_directory): Changed behavior under Windows
5671         when HOME not defined; former behavior was irretrievably broken.
5672
5673         * emacs.c:
5674         * emacs.c (main_1):
5675         * emacs.c (main):
5676         * minibuf.c (clear_echo_area_internal):
5677         * minibuf.c (echo_area_append):
5678         * print.c:
5679         * print.c (std_handle_out_external):
5680         * print.c (std_handle_out_va):
5681         * print.c (fatal):
5682         * print.c (write_string_to_stdio_stream):
5683         * print.c (output_string):
5684         * print.c (debug_print):
5685         * print.c (debug_backtrace):
5686         * print.c (debug_short_backtrace):
5687         Cleaned up the code that prints text to stdout so that this can be
5688         changed to output into a console window instead under MS Windows,
5689         as described above.
5690
5691         * eval.c:
5692         * eval.c (DEFEND_AGAINST_THROW_RECURSION):
5693         * eval.c (internal_catch):
5694         * eval.c (unwind_to_catch):
5695         * eval.c (throw_or_bomb_out):
5696         * eval.c (condition_case_1):
5697         * eval.c (signal_1):
5698         * eval.c (check_error_state_sanity):
5699         * eval.c (call_with_suspended_errors_1):
5700         * eval.c (call_with_suspended_errors):
5701         * eval.c (reinit_vars_of_eval):
5702         Added code to catch throw loops and check for a pesky bug that may
5703         be gone now.
5704
5705         * event-msw.c:
5706         * event-msw.c (key_needs_default_processing_p):
5707         * event-msw.c (mswindows_wnd_proc):
5708         * event-msw.c (mswindows_modifier_state):
5709         * event-msw.c (emacs_mswindows_quit_p):
5710         * event-msw.c (vars_of_event_mswindows):
5711         a) Added support for using the alt key to select menu items as is
5712         standard under MS Windows.  This is controlled using the variable
5713         menu-accelerator-enabled, just like under X Windows.  There is an
5714         option on the options menu to turn this support on.  I really
5715         think that it should be on by default under Windows, but I'm not
5716         going to make this change yet.
5717
5718         b)  Added support for dynamic display size changes under Windows.
5719
5720         * event-stream.c:
5721         * event-stream.c (maybe_echo_keys):
5722         * event-stream.c (Fnext_event):
5723         * event-stream.c (command_builder_find_leaf):
5724         * event-stream.c (lookup_command_event):
5725         * event-stream.c (execute_command_event):
5726         * event-stream.c (pre_command_hook):
5727         * event-stream.c (post_command_hook):
5728         * event-stream.c (syms_of_event_stream):
5729         * event-stream.c (vars_of_event_stream):
5730         * event-stream.c (complex_vars_of_event_stream):
5731         * events.h (struct command_builder):
5732
5733         a) Tried to clean up a little bit the horribly written x-specific
5734         accelerator code that crept into this file.  I moved this code
5735         into menubar-x.c where it belongs. I also needed to move the
5736         command builder structure into the file events.h because it is
5737         accessed directly by this accelerator code.  What I didn't do, but
5738         which should be done at some point, is to properly abstract this
5739         code using device methods instead of the kludgy way that it
5740         currently hooks into the event code.
5741
5742         b) Added the lisp variables this-command-properties and
5743         last-command- properties, which should be used to synchronize two
5744         adjacent commands in preference to playing games with the variable
5745         this-command, which is typically what happens.
5746
5747         c) Added some slightly nasty code to hook into the lisp support
5748         for shifted- motion-key selection.  This is actually necessary for
5749         somewhat complicated reasons, which are described in
5750         simple.el. (NB: I think the proper thing would be to have the code
5751         that calls the pre and post command hooks also call out to generic
5752         lisp functions in simple.el, where all built-in stuff could be
5753         added.  I will think about this more.)
5754
5755         * event-unixoid.c (poll_fds_for_input):
5756         * lread.c (readchar):
5757         * redisplay-tty.c (tty_clear_frame):
5758         * redisplay-x.c (x_get_gc):
5759         * signal.c (interrupt_signal):
5760         And a whole bunch of other files: fixed up places that printed
5761         directly to stderr to instead call the function stderr_out so that
5762         the changes I made under Windows work correctly.
5763
5764         * filemode.c (mode_string):
5765         Warning fixes.
5766
5767         * frame-msw.c:
5768         * frame-msw.c (mswindows_size_frame_internal):
5769         Fixed the computation of frame size and position to keep the frame
5770         within the workspace area, rather than within the physical
5771         dimensions of the screen, so that the frame doesn't overlap window
5772         manager decorations, such as the start menu and toolbar, typically
5773         at the bottom of the screen.
5774
5775         * frame.c (vars_of_frame):
5776         Changed the default frame title format under MS Windows to consist
5777         of buffername-XEmacs, which is standard under MS Windows.  I think
5778         it might be a good idea to change this everywhere because I think
5779         it is superior to the current frame title format, but this is the
5780         kind of change that is likely to cause some people to get annoyed,
5781         so I'm not making it.
5782
5783         * glyphs-eimage.c (png_instantiate): Fixed some compile warnings.
5784
5785         * gui-msw.c (mswindows_handle_gui_wm_command):
5786         Fixed compile warnings.
5787
5788         * gui-x.c:
5789         * gui-x.c (strdup_and_add_accel):
5790         * gui-x.c (button_item_to_widget_value):
5791         * gui-x.h:
5792         Added code to automatically put an accelerator onto the beginning
5793         of menu items that don't have one as is now the standard, and is
5794         described more later.  Also fixed things so that the menu item
5795         name can be an evaluated expression, again a new standard.
5796
5797         * gui.c:
5798         * gui.c (gui_item_add_keyval_pair):
5799         * gui.c (make_gui_item_from_keywords_internal):
5800         * gui.c (gui_add_item_keywords_to_plist):
5801         * gui.c (gui_item_accelerator):
5802         * gui.c (gui_name_accelerator):
5803         * gui.c (gui_item_included_p):
5804         * gui.c (gui_item_display_flush_left):
5805         * gui.c (gui_item_display_flush_right):
5806         * gui.c (parse_gui_item_tree_item):
5807         * gui.c (parse_gui_item_tree_children):
5808         * gui.c (parse_gui_item_tree_list):
5809         Mule-ized.  Cleanup.  GCPRO addition.
5810
5811         * line-number.c (buffer_line_number):
5812         * lisp.h:
5813         * lisp.h (EMACS_INT_MAX):
5814         Added the manifest constant EMACS_INT_MIN corresponding to the
5815         existing constant EMACS_INT_MAX.  This is partially to fix compile
5816         warnings under Windows, and partly for cleanliness.
5817
5818         * menubar-msw.c:
5819         * menubar-msw.c (REPLACE_ME_WITH_GLOBAL_VARIABLE_WHICH_CONTROLS_RIGHT_FLUSH):
5820         * menubar-msw.c (msw_translate_menu_or_dialog_item):
5821         * menubar-msw.c (displayable_menu_item):
5822         * menubar-msw.c (populate_menu_add_item):
5823         * menubar-msw.c (populate_or_checksum_helper):
5824         * menubar-msw.c (populate_menu):
5825         * menubar-msw.c (update_frame_menubar_maybe):
5826         * menubar-msw.c (prune_menubar):
5827         * menubar-msw.c (msw_char_is_accelerator):
5828         * menubar-msw.c (unsafe_handle_wm_initmenu_1):
5829         * menubar-msw.c (mswindows_handle_wm_command):
5830         * menubar-msw.c (mswindows_handle_wm_initmenupopup):
5831         * menubar-msw.c (mswindows_handle_wm_initmenu):
5832         * menubar-msw.c (mswindows_update_frame_menubars):
5833         * menubar-msw.c (mswindows_free_frame_menubars):
5834         * menubar-msw.c (mswindows_popup_menu):
5835         Fixed a bug in handling accelerators where an extra character
5836         would be displayed in the menu item.  Also generalized the
5837         function displayable_menu_item because it is now used by the
5838         dialog box code as well.  And finally, added code in the functions
5839         that create the menubar to extract a list of accelerators for the
5840         top level menubar, which is used in the event code to determine
5841         whether a particular alt-key combination should be used to invoke
5842         a menu item, or should be passed through to access the standard
5843         XEmacs keymap binding for this key combination.
5844
5845         Much needed GCPROing.
5846
5847         * menubar-x.c:
5848         * menubar-x.c (menu_item_descriptor_to_widget_value_1):
5849         * menubar-x.c (menu_item_descriptor_to_widget_value):
5850         * menubar-x.c (restore_in_menu_callback):
5851         * menubar-x.c (x_popup_menu):
5852         * menubar-x.c (menu_move_up):
5853         * menubar-x.c (menu_move_down):
5854         * menubar-x.c (menu_move_left):
5855         * menubar-x.c (menu_move_right):
5856         * menubar-x.c (menu_select_item):
5857         * menubar-x.c (command_builder_operate_menu_accelerator):
5858         * menubar-x.c (menu_accelerator_junk_on_error):
5859         * menubar-x.c (command_builder_find_menu_accelerator):
5860         * menubar-x.c (Faccelerate_menu):
5861         * menubar.h:
5862         Moved a whole bunch of code here that was previously in
5863         event-stream.c as described above.  There is also code connected
5864         to the new standard of adding an accelerator to the beginning of
5865         menu items that don't have one as described above and below.
5866
5867         * menubar.c:
5868         * menubar.c (menu_parse_submenu_keywords):
5869         * menubar.c (Fmenu_find_real_submenu):
5870         * menubar.c (Fnormalize_menu_item_name):
5871         * menubar.c (syms_of_menubar):
5872         * menubar.c (vars_of_menubar):
5873         * menubar.c (complex_vars_of_menubar):
5874
5875         a) Cleaned up a bunch of documentation and improved it.
5876
5877         b) XEmacs now automatically adds an accelerator onto the beginning
5878         of any menu items that don't have one.  I did this because there
5879         will inevitably be some menu items on the main menubar that don't
5880         have accelerators on them because the package that adds that
5881         particular menu item hasn't yet been fixed up to have accelerators
5882         in them and it looked rather strange to have some items with and
5883         some items without accelerators, especially since even in items
5884         without accelerators, you can, at least under windows, still
5885         access the item through an accelerator corresponding to the first
5886         character in the item's name.  If people don't like this behavior,
5887         I can add a variable to turn it off optionally, but I'm not sure
5888         this is a good idea because we really do need to have accelerators
5889         on all of the menu items, and if a package doesn't like the
5890         accelerators being put on the first character, then it should put
5891         the accelerators where they belong.
5892
5893         c) I made a behavior change, which is that the descriptor that
5894         specifies the text of the menu item, which formerly was just a
5895         string, can now also be an evaluated expression.  This makes this
5896         descriptor parallel with all of the others, which could also be
5897         evaluated expressions.  This also obviates the need for the
5898         keyword :label, which was previously listed in the documentation
5899         as unimplemented, and which was for the same purpose.
5900
5901         d) GCPROing.
5902
5903         * ntproc.c:
5904         * ntproc.c (new_child):
5905         * ntproc.c (sys_spawnve):
5906         * ntproc.c (find_child_console):
5907         * ntproc.c (sys_kill):
5908         Fixed compile warnings.  By the way, this file should really go
5909         away entirely, and this will happen as soon as Kirill makes his
5910         final round of process cleanups, which affect the function
5911         call-process.
5912
5913         * process-nt.c:
5914         * process-nt.c (struct nt_process_data):
5915         * process-nt.c (find_process_from_pid):
5916         * process-nt.c (send_signal_the_nt_way):
5917         * process-nt.c (enable_child_signals):
5918         * process-nt.c (find_child_console):
5919         * process-nt.c (send_signal_the_95_way):
5920         * process-nt.c (nt_finalize_process_data):
5921         * process-nt.c (ensure_console_window_exists):
5922         * process-nt.c (nt_create_process):
5923         * process-nt.c (nt_kill_child_process):
5924         * process-nt.c (nt_kill_process_by_pid):
5925         * process-nt.c (nt_open_network_stream):
5926         * process-nt.c (vars_of_process_nt):
5927         Copied over code from Emacs 20.5 to correctly send signals to sub-
5928         processes under Windows 95.  Also added code to automatically
5929         create and hide console window when a sub-process is created under
5930         Windows 95, which obviates the need for the separate runemacs.exe
5931         executable, and finally implemented some variables that were
5932         implemented in Emacs 20.5, but previously not in XEmacs.  These
5933         include mswindows- start-process-share-console and
5934         mswindows-start-process-inherit-error-mode. (Both of these only
5935         apply to Windows 95.)
5936
5937         * regex.c (regex_compile): Fixed a compile warning.
5938
5939         * select-msw.c:
5940         * select-msw.c (mswindows_own_selection):
5941         * select-msw.c (mswindows_get_foreign_selection):
5942         * select-msw.c (mswindows_disown_selection):
5943         * select-msw.c (console_type_create_select_mswindows):
5944         * select-msw.c (syms_of_select_mswindows):
5945         Cleaned up the file and implemented the device method
5946         selection_exists_p, which had accidentally been left out.  Also
5947         removed four lisp functions that were remnants from before the
5948         time when the selection code was properly device abstracted.
5949         These functions are no longer needed because there are generic
5950         equivalents, and because they were added recently and don't exist
5951         in FSF Emacs, I don't think there's any problem with just deleting
5952         them.
5953
5954         * sysdep.c:
5955         * sysdep.c (sys_subshell):
5956         Fixed a compile warning, although in this case there's probably
5957         something wrong with this code, and it ought to be looked into
5958         more thoroughly by somebody who understands it.
5959
5960         * window.c:
5961         * window.c (Fwindow_text_area_height):
5962         * window.c (Fwindow_width):
5963         * window.c (Fwindow_full_width):
5964         * window.c (Fwindow_pixel_width):
5965         * window.c (debug_print_window):
5966         * window.c (syms_of_window):
5967         Added functions window-text-area-height and window-full-width,
5968         which are functions for returning various width and height
5969         characteristics of a window. (One of these functions is necessary
5970         for making the file dialog box work correctly, and the other one
5971         was added for completeness.)  Also added a table to the
5972         documentation for window-height which describes the entire scheme
5973         for accessing width and height characteristics of a window.
5974
5975 2000-03-12  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
5976
5977         * nt.c (fstat): Added a comment for another problem with
5978         non-encapsulated [f]stat(), reported by Adrian Aichner
5979         <aichner@ecf.teradyne.com>.
5980
5981 2000-03-11  Andy Piper  <andy@xemacs.org>
5982
5983         * window.c (make_dummy_parent): initialize subwindow instance
5984         cache.
5985         (Fset_window_configuration): zero extent_modiff.
5986
5987 2000-03-10  Andy Piper  <andy@xemacs.org>
5988
5989         * redisplay.c (Fredraw_frame): reset the changed_set flags so that
5990         more changes can be triggered.
5991         (Fredisplay_frame): ditto.
5992         (Fredraw_device): ditto.
5993         (Fredisplay_device): ditto.
5994         (redisplay_frame): make non-static.
5995         (redisplay_frame): call update_frame_gutter_geometry outside of
5996         display proper.
5997
5998         * gutter.h: declare update_frame_gutter_geometry.
5999
6000         * redisplay.h: declare redisplay_frame.
6001
6002         * gutter.c (update_frame_gutter_geometry): move geometry changes
6003         in update_frame_gutters here. Geometry changes can only occur
6004         outside of redisplay.
6005         (update_frame_gutters): remove geometry change code.
6006         (Fredisplay_gutter_area): make sure that we are in display when we
6007         update and that we have flushed any size changes.
6008
6009 2000-03-11  Andy Piper  <andy@xemacs.org>
6010
6011         * alloc.c (pdump_dump_data): remove i & count shadows.
6012
6013 2000-02-27  Mike Alexander  <mta@arbortext.com>
6014
6015         * sysdep.h: Declare pdump_read_file
6016
6017         * sysdep.c (pdump_read_file): New function
6018
6019         * alloc.c (pdump_load): Call pdump_read_file to get the portable
6020         dump data
6021
6022 2000-03-10  SL Baur  <steve@musashimaru.m17n.org>
6023
6024         * lrecord.h: add `lrecord_type_pgsetenv'.
6025
6026 2000-03-08  SL Baur  <steve@musashimaru.m17n.org>
6027
6028         * symsinit.h: declare (vars|syms)_of* functions.
6029         * lrecord.h: add `lrecord_type_pgconn' and 'lrecord_type_pgresult'.
6030
6031 2000-03-06  SL Baur  <steve@musashimaru.m17n.org>
6032
6033         * config.h.in: Add symbols HAVE_POSTGRESQL and HAVE_POSTGRESQLV7
6034
6035         * inline.c: Include postgresql.h lrecord stuffs to placate buggy
6036         GCCs.
6037
6038         * emacs.c (main_1): Call postgres initialization code.
6039
6040         * postgresql.h: New file.  PostgreSQL RDBMS support.
6041         * postgresql.c: New file.
6042
6043 2000-03-08  Yoshiki Hayashi  <yoshiki@xemacs.org>
6044
6045         * redisplay-output.c (redisplay_output_display_block): Disable
6046         redundant code.
6047
6048 2000-03-09  Yoshiki Hayashi  <yoshiki@xemacs.org>
6049
6050         * mule-canna.c (Fcanna_henkan_region): Translate doc-string.
6051         (Fcanna_henkan_next): Ditto.
6052         (Fcanna_bunsetu_henkou): Ditto.
6053         (Fcanna_henkan_kakutei): Ditto.
6054         (Fcanna_henkan_end): Ditto.
6055         (Fcanna_henkan_quit): Ditto.
6056         (Fcanna_henkan_next): Set retun value correctly.
6057         (c2mu): Use unsigned char instead of signed char.
6058
6059 2000-03-09  Yoshiki Hayashi  <yoshiki@xemacs.org>
6060
6061         * emacs.c (main_1): Always call syms_of_gui.
6062         * inline.c: include gui.h
6063
6064 2000-03-09  Yoshiki Hayashi  <yoshiki@xemacs.org>
6065
6066         * redisplay.c (Vvisible_bell): Renamed from visible_bell and
6067         converted to Lisp_Object.
6068         (Qtop_bottom): New variable.
6069         (syms_of_redisplay): Initialize it.
6070         * redisplay.h (Vvisible_bell): Ditto.
6071         * sound.c (ding): Ditto and check if Vvisible_bell is nil.
6072         * redisplay-x.c (x_flash): When Vvisible_bell is top-bottom,
6073         only flash top and bottom.
6074
6075 2000-03-08  Andy Piper  <andy@xemacs.org>
6076
6077         * buffer.c (Frename_buffer): record new buffer name the right way.
6078
6079 2000-03-08  Andy Piper  <andy@xemacs.org>
6080
6081         * glyphs.c (update_subwindow): increase hash depth so that widget
6082         items get picked up properly.
6083
6084         * redisplay-output.c (compare_runes): increase hash depth so that
6085         widget items get picked up properly.
6086
6087 2000-03-08  Andy Piper  <andy@xemacs.org>
6088
6089         * gutter.c (output_gutter): add some debug.
6090
6091         * glyphs.h (struct Lisp_Image_Instance): add display_hash.
6092         (IMAGE_INSTANCE_DISPLAY_HASH): new macro.
6093         (XIMAGE_INSTANCE_DISPLAY_HASH): ditto.
6094
6095         * redisplay-output.c (compare_runes): use display_hash to
6096         determine if glyphs really are not the same.
6097
6098         * glyphs.c (update_subwindow): check display_hash to see if
6099         anything really needs to be updated. If not then do
6100         nothing. Record the display_hash after updating.
6101         (image_instance_equal): compare the image_instance face also.
6102
6103 2000-03-07  Yoshiki Hayashi  <yoshiki@xemacs.org>
6104
6105         * redisplay.h: Fix comment style.
6106
6107 2000-03-08  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6108
6109         * consle-msw.h (struct mswindows_frame):
6110         Added new member paint_pending to indicate whether a WM_PAINT
6111         magic event has been queued for this frame.
6112
6113         * event-msw.c (mswindows_drain_windows_queue):
6114         Don't queue a WM_PAINT magic event if one is already queued.
6115         (emacs_mswindows_handle_magic_event): clear paint_pending flag.
6116
6117         * frame-msw.c (mswindows_init_frame_1): initialise paint_pending flag.
6118
6119 2000-03-07  Didier Verna  <didier@xemacs.org>
6120
6121         * dired.c: #include `regex.h' after `sysfile.h'.
6122
6123 2000-03-06  Martin Buchholz  <martin@xemacs.org>
6124
6125         * sound.c (init_nas_sound): Fix compiler warning.
6126
6127         * alloc.c (ALIASING_VOIDPP_DEREFERENCE): New.
6128         (FREE_STRUCT_P):
6129         (MARK_STRUCT_AS_FREE):
6130         (MARK_STRUCT_AS_NOT_FREE):
6131         Make `gcc -fstrict-aliasing' work properly.
6132
6133 2000-03-07  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6134
6135         * device-msw.c (mswindows_finish_init_device): Call CoInitialize().
6136         (mswindows_delete_device): Call CoUnnitialize().
6137
6138         * event-msw.c (mswindows_wnd_proc): WM_DROPFILES: Decode Shortcuts.
6139
6140 2000-02-25    <CraigL@DyCon.com>
6141
6142         * process-nt.c: MinGW now has <shellapi.h>, but still needs
6143         <errno.h>.
6144
6145         * sysdep.c: This extern declaration for environ prevents MinGW
6146         from finding the variable in CRTDLL.DLL.
6147
6148         * s\mingw32.h (PBS_SMOOTH): Removed, now defined in cygwin's
6149         windows headers.
6150         (SHGFI_EXETYPE): ..
6151         (WM_MOUSEWHEEL): ..
6152         (_WIN32_IE): Added, needed to get the TCS_BOTTOM and TCS_VERTICAL
6153         definitions.
6154         (MMRESULT): Removed, now defined in cygwin's windows headers.
6155         (TIMECAPS): ..
6156         (uid_t,gid_t,pid_t,ssize_t): ..
6157         (_timeb): Removed, MinGW defines both _timeb and timeb.
6158         (HAVE_H_ERRNO): Added.
6159         (HAVE_TZNAME): Added, configure is not detecting this.
6160
6161 2000-02-03  IKEYAMA Tomonori <tomonori@suiyokai.org>
6162
6163         * chartab.h (XCHAR_TABLE_VALUE_UNSAFE): New macro.
6164         * syntax.c (syntax_match): Use it.
6165
6166         * cmds.c: Import auto-fill-chars from FSF Emacs.
6167         (Vauto_fill_chars): New variables.
6168         (internal_self_insert): Check Vauto_fill_chars.
6169         (vars_of_cmds):
6170         Declare auto-fill-chars as a Lisp variable and initialize it.
6171
6172 2000-03-05  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6173
6174         * fileio.c (Fmake_symbolic_link):
6175         (Ffile_symlink_p):
6176         Run handlers even if local machine doesn't have symlinks.
6177
6178 2000-03-05  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6179
6180         * event-msw.c (mswindows_drain_windows_queue):
6181         Don't generate paint magic events for non-XEmacs frames.
6182
6183 2000-03-05  Andy Piper  <andy@xemacs.org>
6184
6185         * redisplay.c (redisplay_frame): generate_displayable_area and
6186         friends assumes that we are not in GC, we therefore have to make
6187         sure that this doesn't happen.
6188
6189         * gutter.c (calculate_gutter_size): generate_displayable_area
6190         assumes that we are not in GC, we therefore have to make sure that
6191         this doesn't happen.
6192
6193 2000-03-05  Martin Buchholz  <martin@xemacs.org>
6194
6195         * opaque.c (DEFINE_LRECORD_IMPLEMENTATION): opaque_ptr ==> opaque-ptr
6196
6197 2000-03-03  Jan Vroonhof  <vroonhof@math.ethz.ch>
6198
6199         * redisplay.c (regenerate_window): Make sure we set a sane value
6200         for end_pos even if we jump out of the loop.
6201         (regenerate_window): Answer Ben's question :-).
6202         (start_end_of_last_line): Add may_error argument.
6203         (start_of_last_line):
6204         (end_of_last_line): Pass may_error = 0.
6205         (end_of_last_line_may_error): New function.
6206         (pixel_to_glyph_translation): Use it, so we don't crash in
6207         event_to_glyph.
6208
6209 2000-03-04  Andy Piper  <andy@xemacs.org>
6210
6211         * window.h (struct window): add gutter_extent_modiff.
6212
6213         * window.c (allocate_window): zero out gutter_extent_modiff.
6214
6215         * redisplay.h: declare sync_display_line_structs.
6216
6217         * redisplay.c (add_glyph_rune): add a better comment.
6218
6219         * redisplay-output.c (sync_display_line_structs): made non-static.
6220         (compare_runes): remove unneccesary glyph cachel access.
6221
6222         * gutter.h: declare gutter_extent_signal_changed_region_maybe.
6223
6224         * gutter.c (output_gutter): don't output the gutter if extent
6225         changes only involve extents in buffers. use 4 sets of display
6226         lines.
6227         (gutter_extent_signal_changed_region_maybe): new function. Mark
6228         extents in gutters as changed.
6229         (update_frame_gutters): use 4 sets of display lines.
6230         (reset_gutter_display_lines): ditto.
6231         (free_frame_gutters): ditto.
6232         (redraw_exposed_gutter): force output of gutters.
6233
6234         * frame.h (struct frame): add 4 sets of gutter display lines.
6235
6236         * extents.c: (extent_changed_for_redisplay): signal changes to
6237         extents in strings in the gutter as well as extents in buffers.
6238
6239 2000-03-02  Andy Piper  <andy@xemacs.org>
6240
6241         * gutter.c (specifier_vars_of_gutter): cosmetic changes.
6242
6243         * frame.c (Fmake_frame): make sure the gutters get initialized
6244         after the frame is visible.
6245         (set_frame_selected_window): re-arrange compilation macros a
6246         little.
6247         (change_frame_size_1): mark gutters changed.
6248
6249         * device.c (Fset_device_class): mark gutters changed.
6250
6251 2000-03-01  Andy Piper  <andy@xemacs.org>
6252
6253         * window.c (window_top_frame_gutter_height): deleted.
6254         (window_bottom_frame_gutter_height): ditto.
6255         (window_left_frame_gutter_height): ditto.
6256         (window_right_frame_gutter_height): ditto.
6257         (window_top_gutter_height): don't use them.
6258         (window_bottom_gutter_height): ditto.
6259         (window_left_gutter_width): ditto.
6260         (window_right_gutter_width): ditto.
6261         (Fsplit_window): ditto.
6262         (Fwindow_pixel_edges): don't use border dimensions here.
6263
6264         * scrollbar.c (update_scrollbar_instance): don't take gutters into account.
6265         (update_scrollbar_instance): ditto.
6266
6267         * redisplay.c (generate_modeline): don't take gutters into account.
6268         (generate_modeline): ditto.
6269         (redisplay_frame): small gutter display optimization.
6270
6271         * redisplay-x.c (x_output_vertical_divider): don't take gutters into account.
6272
6273         * redisplay-msw.c (mswindows_output_vertical_divider): don't take
6274         gutters into account.
6275
6276         * gutter.h (WINDOW_REAL_*_GUTTER_BOUNDS): remove bogus checks
6277         for window position and type.
6278
6279         * gutter.c (get_gutter_coords): fix for frame gutters.
6280         (update_frame_gutters): update frame geometry if the gutters have
6281         changed.
6282         (init_frame_gutters): record current gutter geometries.
6283
6284         * glyphs-msw.c (mswindows_subwindow_instantiate): remove unused
6285         var.
6286         (mswindows_widget_instantiate): ditto.
6287
6288         * frame.h (struct frame): add current_gutter_bounds.
6289
6290         * frame.c (change_frame_size_1): position window and minibuffer
6291         appropriately taking into account the frame gutters.
6292
6293         * frame-x.c: (x_initialize_frame_size): take into account the
6294         frame gutters.
6295
6296 2000-02-29  Stephen J. Turnbull  <stephen@xemacs.org>
6297
6298         * emacs.c (data-directory):  Xref `locate-data-file' in docstring.
6299
6300 2000-02-29  Stephen J. Turnbull  <stephen@xemacs.org>
6301
6302         * alloc.c (dumpopaquevec): Increase dimension for --with-canna.
6303
6304 1999-12-30  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
6305
6306         * file-coding.c (reset_decoding_stream): Clear previous
6307         detection state when autodetect.
6308
6309 2000-02-29  Didier Verna  <didier@xemacs.org>
6310
6311         * extents.c (set_extent_glyph_1): don't require extents to be
6312         attached.
6313
6314 2000-02-27  Andy Piper  <andy@xemacs.org>
6315
6316         * gutter.c (Fset_default_gutter_position): don't default left and
6317         right gutter visibility to t.
6318         (Fset_default_gutter_position): run
6319         default-gutter-position-changed-hook.
6320         (syms_of_gutter): add default-gutter-position-changed-hook.
6321
6322 2000-02-26  Andy Piper  <andy@xemacs.org>
6323
6324         * specifier.c (Fmake_specifier): add gutter references.
6325
6326         * gutter.h (RAW_WINDOW_GUTTER): new macro.
6327
6328         * lisp.h: declare Fvalid_plist_p.
6329
6330         * gutter.c (gutter_geometry_changed_in_window): mark the modeline
6331         as changed.
6332         (default_gutter_visible_p_changed_in_window): invalidate gutter as
6333         well as its visibility so that it gets reconstructed.
6334         (construct_window_gutter_spec): new function. Construct a string
6335         to be displayed in the gutter from a plist of strings. Take care
6336         to only use elements that are declared as visible.
6337         (calculate_gutter_size): use RAW_WINDOW_GUTTER instead of
6338         WINDOW_GUTTER.
6339         (gutter_validate): allow plists of strings in the specifier.
6340         (gutter_specs_changed): construct the real_gutter from the gutter
6341         specs using construct_window_gutter_spec.
6342         (gutter_visible_validate): gutter-visible is a new specifier type.
6343         (Fgutter_visible_specifier_p): new function for the new specifier.
6344         (syms_of_gutter): declare gutter-visible and
6345         Fgutter_visible_specifier_p.
6346         (specifier_type_create_gutter): intitalize new gutter-visible
6347         specifier.
6348         (reinit_specifier_type_create_gutter): ditto.
6349         (specifier_vars_of_gutter): use new specifier type for gutter
6350         visibility.
6351         (init_frame_gutters): construct real_gutter correctly.
6352         (Fgutter_specifier_p): beef up documentation.
6353         (Fgutter_size_specifier_p): ditto.
6354
6355         * winslots.h: add real_gutter slots.
6356
6357 2000-02-25  Andy Piper  <andy@xemacs.org>
6358
6359         * device-msw.c: Be kind to older cygwin versions. From Raymond
6360         Toy <toy@rtp.ericsson.se>.
6361
6362         * gui-msw.c (Fmswindows_shell_execute): Remove things unknown to
6363         earlier cygwins. From Raymond Toy <toy@rtp.ericsson.se>.
6364
6365 2000-02-25  Martin Buchholz  <martin@xemacs.org>
6366
6367         * elhash.c (MARK_OBJ): Practice macro hygiene.
6368
6369 2000-02-24  Martin Buchholz  <martin@xemacs.org>
6370
6371         * miscplay.c: s/__inline__/inline/g;
6372         * glyphs-msw.c (set_mono_pixel): INLINE ==> static inline
6373         (get_device_compdc): INLINE ==> static inline
6374         * *.[ch]: Change INLINE to INLINE_HEADER globally.
6375         find -name '*.h' | \
6376         xargs global-replace \
6377         's/(^|(?<=[^A-Za-z0-9_]))INLINE((?=[^A-Za-z0-9_])|$)/INLINE_HEADER/g'
6378
6379 2000-02-25  Andy Piper  <andy@xemacs.org>
6380
6381         * window.c (window_top_frame_gutter_height): new function.
6382         (window_top_window_gutter_height): ditto.
6383         (window_top_gutter_height): use them.
6384         (window_bottom_frame_gutter_height): new function.
6385         (window_bottom_window_gutter_height): ditto.
6386         (window_bottom_gutter_height): use them.
6387         (window_left_window_gutter_width): new function.
6388         (window_left_frame_gutter_width): ditto.
6389         (window_left_gutter_width): use them.
6390         (window_right_window_gutter_width): new function.
6391         (window_right_frame_gutter_width): ditto.
6392         (window_right_gutter_width): use them.
6393         (window_pixel_height): new function. calulate window pixel height
6394         with frame gutter involvement.
6395         (Fsplit_window): calculate new sizes taking frame gutters into
6396         account.
6397         (window_char_height_to_pixel_height): don't include frame gutters.
6398         (window_char_height): use window_pixel_height.
6399         (window_pixheight): rename from window_pixel_height.
6400         (change_window_height): use it.
6401         (window_pixel_height_to_char_height): don't include frame gutters.
6402         (window_char_width_to_pixel_width): ditto.
6403
6404 2000-02-25  Andy Piper  <andy@xemacs.org>
6405
6406         * glyphs.h (IMAGE_INSTANCE_FACE): glyph might be nil, don't crash
6407         if it is.
6408
6409 2000-02-24  Martin Buchholz  <martin@xemacs.org>
6410
6411         * alloc.c (staticpro):
6412         (staticpro_nodump):
6413         (dumpstruct):
6414         (dumpopaque):
6415         (pdump_wire):
6416         (pdump_wire_list):
6417         (compact_string_chars):
6418         (pdump_dump_wired):
6419         Convert:  if (foo) abort();  ==>  assert (! foo);
6420
6421         * eldap.c (Fldap_search_basic):
6422         (Fldap_add):
6423         (Fldap_modify):
6424         (Fldap_delete):
6425         Fix compiler warnings, and possible crashes if (random) return
6426         value were to be used.
6427
6428 2000-02-21  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
6429
6430         * device-msw.c: Workaround ResetDC failure.
6431
6432         * frame-msw.c (msprinter_init_frame_3): Added an assertion before
6433         applying a devmode.
6434
6435         * redisplay-msw.c (get_frame_dc): Added start_page_p.
6436         (mswindows_text_width): Do not start printer page.
6437
6438         * console-msw.h (CHECK_MSGDI_DEVICE): Added this and friends.
6439
6440         * glyphs-msw.c: Added image methods to msprinter console and
6441         msprinter-specific image instantiation.
6442
6443 2000-02-20  Mike Alexander  <mta@arbortext.com>
6444
6445         * select-msw.c (Fmswindows_set_clipboard): GC protect more things
6446         to avoid crashes when selection-sets-clipboard is on
6447         (mswindows_own_selection): ditto
6448
6449 2000-02-19  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
6450
6451         * glyphs-msw.c:
6452         * redisplay-msw.c (get_frame_dc):
6453         (get_frame_compdc):
6454         * console-msw.h:
6455         * device-msw.c (mswindows_init_device):
6456         (mswindows_delete_device):
6457         (msprinter_init_device):
6458         (msprinter_delete_device):
6459         * frame-msw.c (mswindows_init_frame_1):
6460         (mswindows_delete_frame):
6461         (msprinter_init_frame_3):
6462         (msprinter_delete_frame): Move compatible DC to device object from
6463         frame object, for both mswindows and msprinter. Only one at a time
6464         is needed, it is a real waste to have one per frame!
6465
6466 2000-02-23  Andy Piper  <andy@xemacs.org>
6467
6468         * glyphs.c: add dynamic width and height elements.
6469         (image_instance_equal): ditto.
6470
6471         * glyphs-widget.c (widget_query_geometry): calculate width and
6472         height dynamically if required.
6473         (initialize_widget_image_instance): initialize dynamic dimensions.
6474         (widget_instantiate): pick-up dynamic dimensions.
6475
6476         * glyphs.h (struct Lisp_Image_Instance): add width and height for
6477         dynamic determination. Add appropriate macros.
6478
6479         * gutter.h (WINDOW_GUTTER_BORDER_WIDTH): make non-integer
6480         dimensions safe.
6481         (WINDOW_GUTTER_SIZE): ditto.
6482         (WINDOW_GUTTER_SIZE_INTERNAL): ditto.
6483
6484         * redisplay-msw.c (get_frame_compdc): gcc can't cope with this
6485         inline.
6486         (get_frame_dc): ditto.
6487
6488         * redisplay.h (GLOBAL_RESET_CHANGED_FLAGS): don't reset faces
6489         here.
6490
6491 2000-02-23  Martin Buchholz <martin@xemacs.org>
6492
6493         * XEmacs 21.2.31 is released.
6494
6495 2000-02-22  Ben Wing <ben@xemacs.org>
6496
6497         * ntheap.c (allocate_heap): Make sure `ptr' is initialized.
6498
6499 2000-02-22  Andy Piper  <andy@xemacs.org>
6500
6501         * glyphs-x.c (x_widget_instantiate): don't explicitly resize here.
6502
6503 2000-02-21  Mike Sperber <mike@xemacs.org>
6504
6505         * .dbxrc:
6506         * .gdbinit:
6507         * Makefile.in.in: Remove obsolete EMACSBOOTSTRAP... environment
6508         variables.
6509
6510 2000-02-21  Mike Sperber <mike@xemacs.org>
6511
6512         * s/aix4.h: Declare getaddrinfo broken for AIX 4, which it is.
6513
6514 2000-02-21  Martin Buchholz <martin@xemacs.org>
6515
6516         * XEmacs 21.2.30 is released.
6517
6518 2000-02-20  Martin Buchholz  <martin@xemacs.org>
6519
6520         Performance hacking.
6521         * *.c (syms_of_*):
6522         Add INIT_LRECORD_IMPLEMENTATION macros, paired with
6523         DEFINE_LRECORD_IMPLEMENTATION macros in the same file.
6524         * emacs.c (main_1):
6525         * lisp.h (DEFUN):
6526         * console.c (DEFVAR_CONSOLE_LOCAL_1):
6527         * buffer.c (DEFVAR_BUFFER_LOCAL_1):
6528         * symeval.h (DEFVAR_SYMVAL_FWD):
6529         * symbols.c (guts_of_unbound_marker):
6530         Make all c_readonly objects also lisp_readonly and marked for life.
6531         * lrecord.h (struct lrecord_implementation):
6532         Document flags better.
6533         * lrecord.h (DEFINE_LRECORD_SEQUENCE_IMPLEMENTATION_WITH_PROPS):
6534         * lrecord.h (DECLARE_LRECORD):
6535         * lrecord.h (XSETRECORD):
6536         * lrecord.h (RECORDP):
6537         * lrecord.h (RECORD_TYPEP):
6538         * lrecord.h (RECORD_MARKER): New.
6539         * lrecord.h (error_check_*):
6540         * lrecord.h (CONCHECK_NONRECORD):
6541         * lrecord.h (MAKE_LRECORD_IMPLEMENTATION):
6542         * lrecord.h (INIT_LRECORD_IMPLEMENTATION): New.
6543         * lrecord.h (set_lheader_implementation):
6544         * lrecord.h (enum lrecord_type): New.
6545         * symeval.h (SYMBOL_VALUE_MAGIC_P):
6546         * alloc.c (disksave_object_finalization_1):
6547         * alloc.c (mark_object):
6548         * alloc.c (lrecord_type_index):
6549         * alloc.c (tick_lcrecord_stats):
6550         * alloc.c (Fgarbage_collect):
6551         * alloc.c (init_alloc_once_early):
6552         * alloc.c (pdump_load):
6553         * alloc.c (GC_CHECK_LHEADER_INVARIANTS): New.
6554         * alloc.c (lrecord_type_index): Delete.
6555         Make lisp object type indexes be constant.
6556           Makes (byte-compile) 5% faster.
6557         Put all marker functions into their own array.
6558           Makes (garbage-collect) 5% faster.
6559         Optimize SYMBOL_VALUE_MAGIC_P.
6560           Makes (byte-compile) 2-3% faster.
6561         * config.h.in (gc_checking_assert): New.
6562         * alloc.c: Use gc_checking_assert().
6563         * .dbxrc: Make compatible with new object type implementation.
6564         * .gdbinit: Make compatible with new object type implementation.
6565         * alloc.c: Delete all symbols defined only for debugging, such as
6566         Lisp_Type_Vector and lrecord_charset.
6567
6568 2000-02-21  Andy Piper  <andy@xemacs.org>
6569
6570         * gui-msw.c (Fmswindows_shell_execute): fix file location
6571         problems.
6572
6573         * buffer.c (Fkill_buffer): remove buffer from alist buffer
6574         unshowing so that set_window_buffer doesn't undo
6575         kill_buffer_hook's hard work.
6576
6577         * glyphs-widget.c (tab_control_query_geometry): don't count the
6578         first item when calculating geometry.
6579
6580         * glyphs.c (map_subwindow): remove redundant code.
6581         (update_frame_subwindows): be more circumspect about when to
6582         update subwindows.
6583
6584         * glyphs-x.c (x_update_widget): Properly fix sizing bug. Fix bug
6585         when items haven't changed. Update faces if faces have changed as
6586         well as just the widget face.
6587         (x_tab_control_update): Update faces if faces have changed as well
6588         as just the widget face.
6589
6590 2000-02-21  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6591
6592         * device-msw.c: (mswindows_delete_device): Remove redundant DDE
6593         registration.
6594         (build_syscolor_string): Use mswindows_color_to_string to try to
6595         get a named color.
6596         (mswindows_device_system_metrics): Reverse the foreground and
6597         background colors so that they match the documentation.
6598
6599         * objects-msw.c: (mswindows_X_color_map): tweak some values so
6600         they match the default Windows palette.
6601         (mswindows_color_to_string): New function.
6602
6603 2000-02-21  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6604
6605         * s/windowsnt.h: Only use __declspec(noreturn) with MSVC>=6.
6606
6607 2000-02-18  Olivier Galibert  <galibert@pobox.com>
6608
6609         * m/*, s/*: Removed obsolete DATA_SEG_BITS, PURE_SEG_BITS,
6610         WORD_MACHINE, SIGN_EXTEND_CHAR and EXPLICIT_SIGN_EXTEND.
6611
6612         * symbols.c (init_symbols_once_early): Removed obsolete
6613         DATA_SEG_BITS related kludge.
6614         (defvar_magic): Ditto.
6615
6616         * malloc.c: Removed obsolete DATA_SEG_BITS
6617         * ralloc.c: Ditto.
6618         * mem-limits.h: Ditto.
6619
6620         * Makefile.in.in: Removed obsolete HAVE_SHM
6621         * emacs.c: Ditto.
6622
6623 2000-02-13  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6624
6625         *  device-msw.c (mswindows_delete_device): Free DDE string
6626         handles.
6627
6628 2000-02-16  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
6629
6630         * keymap.c (get_keyelt):
6631         * unexnt.c (unexec):
6632         * vm-limit.c (memory_warnings):
6633         * ntheap.c (recreate_heap):
6634         * ntheap.h (UNINIT_PTR):
6635         * select-msw.c (Fmswindows_get_clipboard):
6636         (Fmswindows_set_clipboard):
6637         * objects-msw.h (MSWINDOWS_BAD_HFONT):
6638         * objects-msw.c:
6639         * menubar-msw.c (displayable_menu_item):
6640         * glyphs-msw.c:
6641         * glyphs-msw.h (IMAGE_INSTANCE_MSWINDOWS_MASK):
6642         * sysdep.c (sys_subshell):
6643         * process-nt.c (nt_create_process):
6644         * nt.c (normalize_filename):
6645         (dostounix_filename):
6646         (unixtodos_filename):
6647         * ntproc.c (win32_executable_type):
6648         * ntplay.c (play_sound_data_1):
6649         (play_sound_file):
6650         * editfns.c (get_home_directory):
6651         * event-msw.c (struct winsock_stream):
6652         (mswindows_dde_callback):
6653         * device-msw.c (msprinter_init_device):
6654         (msprinter_get_devmode_copy): Frobbed syntax frivolities.
6655
6656         * toolbar-msw.c (mswindows_free_frame_toolbars): Paramters to
6657         mswindows_clear_toolbar were swapped!
6658
6659         * objects-msw.c:(colormap_t):
6660         (fontmap_t):
6661         * emacs.c (struct standard_args): Fixed const jumble.
6662
6663         * glyphs-widget.c (update_widget): Fixed comparison notation.
6664
6665         * event-msw.c (mswindows_dde_callback): Removed extraneous ';'.
6666
6667         * s\windowsnt.h (DOESNT_RETURN): Defined to support the MSVC
6668         __declspec(noreturn) syntax.
6669
6670 2000-02-19  Martin Buchholz  <martin@xemacs.org>
6671
6672         * eldap.c (Fldap_open):
6673         (Fldap_search_basic):
6674         (Fldap_add):
6675         (Fldap_modify):
6676         Use new coding system conversion macros.
6677
6678 2000-01-06  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
6679
6680         * console-tty.c (tty_init_console): Change MULE to FILE_CODING.
6681
6682 1999-11-27  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
6683
6684         * eldap.h (Fldap_search) Renamed from Fldap_search_internal:
6685         (Fldap_add, Fldap_modify, Fldap_delete): New functions
6686
6687         * eldap.c (Qadd, Qreplace): New constant symbols
6688         (Fldap_open): Use the LDAP_OPT_RESTART option to avoid
6689         interruptions by XEmacs signals
6690         Remove unnecessary calls to slow_down_interrupts and
6691         speed_up_interrupts
6692         (Fldap_search_basic): Renamed from Fldap_search_internal
6693         Added new optional parameter VERBOSE that triggers the
6694         display of progress messages
6695         Remove unnecessary calls to slow_down_interrupts and
6696         speed_up_interrupts
6697         LDAP result code analysis rewritten
6698         (Fldap_add, Fldap_modify, Fldap_delete): New functions
6699         (syms_of_eldap): Define the new symbols and functions
6700
6701
6702 2000-02-17  Martin Buchholz  <martin@xemacs.org>
6703
6704         * realpath.c: Determine PATH_MAX maximally portably.
6705
6706         * insdel.c (bytecount_to_charcount): Optimize.
6707         The function used to be optimized for entirely ASCII sequences.
6708         Now it is optimized for successive characters from the same
6709         charset.  This also wins big for _mostly_ ASCII sequences.
6710
6711         * fileio.c (Ffile_truename): convert return from realpath() using
6712         Qfile_name, not Qbinary.  Fixes obvious bug with non-ASCII symlinks.
6713         - Rewrite GCPROing slightly.
6714
6715         * sysdep.c (sys_open): Do filename conversion, like all other
6716         sys_* functions.  Fixes bug:
6717         (let ((file-name-coding-system 'iso-8859-2))
6718            (write-region x y latin2-name))
6719         ==> writes filename using internal encoding.
6720
6721 2000-02-18  Martin Buchholz  <martin@xemacs.org>
6722
6723         * buffer.c (DEFVAR_BUFFER_LOCAL_1): Turn on c_readonly. Always const.
6724         * console.c (DEFVAR_CONSOLE_LOCAL_1): Turn on c_readonly. Always const.
6725         * symeval.h (DEFVAR_SYMVAL_FWD): Turn on c_readonly. Always const.
6726         * eval.c (lrecord_subr): Remove this_one_is_unmarkable.
6727         * symbols.c (lrecord_symbol_value_forward): Remove this_one_is_unmarkable.
6728         * symbols.c (guts_of_unbound_marker): Turn on c_readonly.
6729         * lrecord.h (UNMARKABLE_LRECORD_HEADER_P): Delete.
6730         (CONST_IF_NOT_DEBUG): Delete.
6731         * alloc.c (this_one_is_unmarkable): Delete.
6732         (mark_object): Don't check for this_one_is_unmarkable. Use the
6733         c_readonly flag instead.
6734         * lisp.h (DEFUN): Define a Lisp_Subr as c_readonly.
6735
6736 2000-02-18  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6737
6738         * event-msw.c (mswindows_drain_windows_queue):
6739         (emacs_mswindows_handle_magic_event): Remove attempt to optimise
6740         away redundant repaint events.
6741
6742 2000-02-17  Andy Piper  <andy@xemacs.org>
6743
6744         * redisplay.h: declare mark_redisplay_structs.
6745
6746         * redisplay.c (redisplay_window):
6747         (redisplay_frame): don't check subwindows_state_changed.
6748         (mark_redisplay): mark gutters here.
6749
6750         * glyphs.c: (instantiate_image_instantiator): always layout if we
6751         haven't done so already.
6752         (allocate_image_instance): don't mark as dirty.
6753         (update_subwindow): bind inhibit_quit.
6754
6755         * gutter.c (mark_gutters): new function.
6756
6757         * glyphs-x.c (x_update_widget): Always resize to get round a
6758         widget bug.
6759
6760         * glyphs-msw.c (mswindows_tab_control_update): remove `;' that was
6761         breaking absolutely everything.
6762
6763         * gutter.h: declare mark_gutters.
6764
6765 2000-02-16  Martin Buchholz <martin@xemacs.org>
6766
6767         * XEmacs 21.2.29 is released.
6768
6769 2000-02-15  Olivier Galibert  <galibert@pobox.com>
6770
6771         * fns.c (size_bit_vector): Fix computation of the size.
6772
6773 2000-02-15  Martin Buchholz  <martin@xemacs.org>
6774
6775         * *.[ch]: Change CONST to const globally.
6776         find -name '*.[ch]' | \
6777         xargs global-replace \
6778         's/(^|(?<=[^A-Za-z0-9_]))CONST((?=[^A-Za-z0-9_])|$)/const/g'
6779         - Remove vestigial references to CONST_IS_LOSING
6780
6781 2000-02-13  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6782
6783         * event-msw.c (mswindows_drain_windows_queue): Remove hack to
6784         bailout early on quit. Enqueue WM_PAINT events as XEmacs magic
6785         events instead of dispatching them directly.
6786         (mswindows_handle_paint): New function to do repainting.
6787         (mswindows_wnd_proc):
6788         (emacs_mswindows_handle_magic_event): Call above function.
6789
6790 2000-02-13  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6791
6792         * objects-msw.c (mswindows_create_font_variant): Return the new
6793         font handle.
6794         (initialize_font_instance): Get font metrics from the underlined
6795         variant of the font to cope with the case where the underlined
6796         font has a bigger descent.
6797
6798 2000-02-08   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
6799
6800         * gui.c (gui_item_accelerator): Return the first underlined
6801         character in item name.
6802
6803 2000-02-11  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
6804
6805         * lisp.h: Added Qprinter.
6806
6807         * general.c (syms_of_general): Initialized it.
6808
6809         * redisplay-msw.c (get_frame_dc): Conditionally start a new page.
6810         (get_frame_dc):
6811         (get_frame_compdc): Made inline.
6812
6813         * console.h (struct console_methods): Added eject_page method.
6814
6815         * frame.h: Added FRAME_DISPLAY_P and friends.
6816         Aligned backslahes in many macros in more readable fashion.
6817         Added page_number to struct frame, and an accessor macro
6818         for it.
6819
6820         * defice.h: Added DEVICE_DISPLAY_P and friends.
6821
6822         * device.c (Fdevice_printer_p): Used these.
6823
6824         * frame.c (allocate_frame_core): Initialize page number.
6825         (Fprint_job_page_number):
6826         (Fprint_job_eject_page): Implemented.
6827
6828         * frame-msw.c (msprinter_eject_page): Added method.
6829         (msprinter_start_page): Added.
6830
6831         * window.c (Fwindow_truncated_p): Fixed docstring.
6832         (Fwindow_last_line_visible_height): Implemented.
6833
6834 2000-02-09  Yoshiki Hayashi  <yoshiki@xemacs.org>
6835
6836         * frame.c (change_frame_size_1): Undo 2000-02-03 change.
6837
6838 1999-12-20  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
6839
6840         * syntax.c (scan_words): Always advance at least one character.
6841
6842 2000-02-13  Andy Piper  <andy@xemacs.org>
6843
6844         * redisplay.c (add_glyph_rune): call get_glyph_cachel_index here
6845         to make sure the glyph is in the cachels.
6846
6847         * glyphs.h (struct Lisp_Image_Instance): make layout_changed a
6848         global image instance flag.
6849         (IMAGE_INSTANCE_NEEDS_LAYOUT): new macro.
6850         (XIMAGE_INSTANCE_NEEDS_LAYOUT): ditto.
6851
6852         * glyphs.c (allocate_image_instance): set dirty bits correctly.
6853         (Fset_image_instance_property): mark layout as changed.
6854         (invalidate_glyph_geometry_maybe): mark layout as changed.
6855         (glyph_width): use new NEEDS_LAYOUT macro.
6856         (glyph_ascent): ditto.
6857         (glyph_descent): ditto.
6858         (glyph_height): ditto.
6859         (image_instance_layout): mark layout as clean after laying out.
6860         (update_subwindow): don't mark layout as clean here.
6861
6862         * glyphs-x.h (IMAGE_INSTANCE_X_WIDGET_ID): undo C++ changes, they
6863         should no longer be needed.
6864
6865         * glyphs-x.c (x_update_widget): sanitize asserts.
6866         (x_finalize_image_instance): sanitize assignment to widgets.
6867
6868         * glyphs-widget.c (widget_instantiate): don't need to clear the
6869         layout flag here.
6870
6871 2000-02-13  Martin Buchholz  <martin@xemacs.org>
6872
6873         * sysdep.c (getcwd): Use standard prototype.
6874         * sysdep.h (getcwd): Use standard prototype.
6875
6876         * fns.c (Fsubseq): Change parameters to more natural ANSI Lisp
6877         (sequence, start, end).
6878         Remove redundant type checking.
6879         (Fmapconcat): Remove useless GCPRO, a wrong-headed attempt (in
6880         view of `caller-protects') to avoid a crash where the real fix was
6881         found elsewhere.
6882
6883 2000-02-12  Martin Buchholz  <martin@xemacs.org>
6884
6885         * glyphs-x.c (x_finalize_image_instance): Compile error fixes.
6886
6887         * s/sol2.h: Remove feature macro initialization.
6888
6889         * alloc.c (alloc_lcrecord): Add more type checking assertions.
6890         (vector_hash): New.  Code from internal_hash.
6891         * lrecord.h:
6892         Fix up allocation subsystem comments.
6893
6894         * config.h.in: Add __EXTENSIONS__ for Solaris.
6895
6896         * systime.h (EMACS_GETTIMEOFDAY): New.
6897         (EMACS_GET_TIME): Use EMACS_GETTIMEOFDAY.
6898         Remove Solaris-specific code.
6899         Use void* for the (ignored) second arg for gettimeofday().
6900
6901         * elhash.c (hash_table_hash): Implement it, finally.
6902         * elhash.c:  Use hashcode_t.
6903
6904         * linuxplay.c (sighandler): Fix prototypes to use SIGTYPE.
6905         * sunplay.c (sighandler): Fix prototype to use SIGTYPE.
6906
6907         * lisp.h (STRETCHY_STRUCT_SIZEOF): Delete.
6908         * fns.c (size_bit_vector):
6909         * alloc.c (size_vector):
6910         (make_vector_internal):
6911         (make_bit_vector_internal):
6912         (sweep_bit_vectors_1):
6913         Replace calls to STRETCHY_STRUCT_SIZEOF with offsetof expression.
6914
6915 2000-02-10  Martin Buchholz  <martin@xemacs.org>
6916
6917         * s/aix4.h: #define MAP_FAILED if sys/mman.h didn't.
6918         Include strings.h to avoid warnings for bzero and strcasecmp.
6919
6920 2000-02-10  Olivier Galibert  <galibert@pobox.com>
6921
6922         * alloc.c: Move STRETCHY_STRUCT_SIZEOF from here...
6923         * lisp.h (STRETCHY_STRUCT_SIZEOF): ...to here
6924
6925         * fns.c (size_bit_vector): New.  Declare bit vectors as a
6926         sequence.
6927
6928 2000-02-10  Olivier Galibert  <galibert@pobox.com>
6929
6930         * symeval.h (struct symbol_value_magic): Remove "next" kludge and
6931         use a value field instead.
6932         (symbol_value_forward_forward): Use value field.
6933         (DEFVAR_SYMVAL_FWD): Use value field.
6934         (DEFVAR_SYMVAL_FWD_INT): Added.  Dumps the int with dumpopaque.
6935         (DEFVAR_INT): Use DEFVAR_SYMVAL_FWD_INT.
6936         (DEFVAR_CONST_INT): Ditto.
6937         (DEFVAR_BOOL): Ditto.
6938         (DEFVAR_CONST_BOOL): Ditto.
6939         (DEFVAR_INT_MAGIC): Ditto.
6940         (DEFVAR_BOOL_MAGIC): Ditto.
6941
6942         * symbols.c (guts_of_unbound_marker): Use value field.
6943         * console.c (DEFVAR_CONSOLE_LOCAL_1): Ditto.
6944         * buffer.c (DEFVAR_BUFFER_LOCAL_1): Ditto.
6945
6946         * lisp.h: Declare dumpopaque and noninteractive1.
6947
6948         * alloc.c (dumpopaque): Added.
6949         (pdump_dump_opaquevec): Added.
6950         (pdump): Call pdump_dump_opaquevec to dump opaque data.
6951         (pdump_load): Reload opaque data.  Sync noninteractive1 with
6952         noninteractive.
6953
6954 2000-02-10  Andy Piper  <andy@xemacs.org>
6955
6956         * glyphs.c (image_instance_layout): if the size changes, mark it
6957         as such.
6958
6959         * redisplay-output.c (redisplay_output_layout): Update the
6960         subwindow here.
6961         (redisplay_output_subwindow): ditto.
6962
6963         * glyphs.c (update_subwindow): make sure we reset flags for
6964         layouts as well as everything else.
6965
6966         * glyphs-widget.c (layout_layout): don't need to set the instances
6967         dimensions here.
6968
6969 2000-02-09  Martin Buchholz  <martin@xemacs.org>
6970
6971         * device-x.c (x_init_device): Wrap calls to dll_*  in HAVE_SHLIB,
6972         not HAVE_DLOPEN, which is a lower-level thing.
6973
6974         * .cvsignore: Ignore gmon.out
6975
6976 2000-02-09  Hamish Macdonald <hamishm@lucent.com>
6977
6978         * .cvsignore: Ignore portable dumper xemacs.dmp file
6979
6980 2000-02-09  Andy Piper  <andy@xemacs.org>
6981
6982         * redisplay-output.c (redisplay_output_layout): be more clever
6983         about when we output based on the changed flags.
6984
6985         * glyphs.h (struct image_instantiator_methods): add update_method.
6986         (struct Lisp_Image_Instance): add changed flags. Declare new
6987         macros for manipulating them.
6988
6989         * glyphs.c (allocate_image_instance): renamed glyph -> parent.
6990         (image_instance_parent_glyph): find an image_instance's parent
6991         glyph or image_instance.
6992         (image_instance_layout): mark the size as changed.
6993         (set_image_instance_dirty_p): new function. mark an image
6994         instance, plus all of its parents, as dirty.
6995         (Fset_image_instance_property): use it.
6996         (Fglyph_animated_timeout_handler): use it.
6997         (update_subwindow): call update_widget and device methods for
6998         update_subwindow. Mark all changed flags as clean.
6999         (Fresize_subwindow): mark size as changed.
7000
7001         * glyphs-x.c (x_finalize_image_instance): try and detect gc
7002         failures.
7003         (x_update_subwindow): only resize subwindows here.
7004         (x_update_widget): new function. Update all changed properties of
7005         a widget.
7006         (x_resize_subwindow): deleted.
7007         (x_widget_set_property): deleted.
7008         (x_progress_gauge_set_property): deleted.
7009         (x_progress_gauge_update): new function. Implement recorded
7010         changes.
7011         (x_tab_control_update): ditto.
7012         (x_tab_control_set_property): deleted.
7013         (console_type_create_glyphs_x): declare new functions.
7014         (image_instantiator_format_create_glyphs_x): ditto.
7015
7016         * glyphs-widget.c (widget_set_property): mark text changed.
7017         (update_widget): new function. Update properties of a widget.
7018         (widget_instantiate): for layouts make sure we set their
7019         children's parent correctly.
7020         (tab_control_set_property): new function. Record changes that will
7021         take place under redisplay's control.
7022         (progress_gauge_set_property): ditto.
7023         (image_instantiator_progress_guage): declare new functions.
7024         (image_instantiator_tab_control): ditto.
7025
7026         * glyphs-msw.c (mswindows_update_subwindow): just do resizing here
7027         now.
7028         (mswindows_update_widget): new function. Update all properties on
7029         a widget that have changed.
7030         (mswindows_button_update): new function. Update a button's set
7031         state.
7032         (mswindows_tab_control_update): new function. Update the items in
7033         a tab.
7034         (mswindows_tab_control_set_property): deleted.
7035         (mswindows_progress_gauge_update): new function. Update the
7036         progress gauge's progress.
7037         (mswindows_widget_set_property): deleted. This is all done
7038         asynchronously now.
7039         (mswindows_progress_gauge_set_property): ditto.
7040         (console_type_create_glyphs_mswindows): declare new methods.
7041         (image_instantiator_format_create_glyphs_mswindows): ditto.
7042
7043         * frame-msw.c (msprinter_init_frame_1): Remove unused variables.
7044         (msprinter_set_frame_properties): ditto.
7045
7046         * console.h (struct console_methods): Add update_widget_method.
7047
7048 2000-02-09  Andy Piper  <andy@xemacs.org>
7049
7050         * gui-msw.c (Fmswindows_shell_execute): Make
7051         mswindows-shell-execute industrial strength.
7052
7053 2000-02-08  Martin Buchholz  <martin@xemacs.org>
7054
7055         * lrecord.h: Make macro argument `props' match member function `plist'.
7056         * fns.c (Fget):
7057         * fns.c (Fput):
7058         * fns.c (Fremprop):
7059         * fns.c (Fobject_plist):
7060         * alloc.c:
7061         * symbols.c:
7062         Object property list frobbing cleanup.
7063         - Allow any lisp object (compared with `eq'), not just symbols, as
7064           keys in object plists.
7065         - Move symbol plist frobbing into symbols.c, where it belongs.
7066         - Move string plist frobbing into alloc.c, where it belongs.
7067         - Everything's an lrecord now, so no need to test for symbolp, etc.
7068         - Fix up doc strings to refer to PROPERTY, not PROPNAME.
7069
7070         * extents.c: Reorder code to remove declarations.
7071
7072         * frame.h (store_in_alist): Remove useless declaration.
7073
7074 2000-02-07  Martin Buchholz  <martin@xemacs.org>
7075
7076         * event-Xt.c (x_has_keysym): Use XConvertCase only if available.
7077         * config.h.in: Add HAVE_XCONVERTCASE.
7078
7079 2000-02-07  Andy Piper  <andy@xemacs.org>
7080
7081         * glyphs.c (image_instance_layout): undo 2000-01-29 change since
7082         it breaks many things.
7083
7084 2000-02-07  Jan Vroonhof  <vroonhof@math.ethz.ch>
7085
7086         * src/syntax.h (SYNTAX_START_P): Check whether the two chars
7087         actually can start a common comment type.
7088         * src/syntax.h (SYNTAX_END_P): ditto for end.
7089
7090 2000-02-07  Martin Buchholz <martin@xemacs.org>
7091
7092         * XEmacs 21.2.28 is released.
7093
7094 2000-02-06  Martin Buchholz  <martin@xemacs.org>
7095
7096         * event-Xt.c (x_keysym_to_character): New.
7097         (maybe_define_x_key_as_self_inserting_character): New.
7098         (x_has_keysym): New.
7099         Auto-define all keys on the keyboard as self-insert-key.
7100
7101 2000-02-02  Martin Buchholz  <martin@xemacs.org>
7102
7103         * menubar.c (vars_of_menubar): A small code simplification.
7104
7105         * minibuf.c (echo_area_append): Workaround egcs-20000131 c++ compiler bug
7106
7107         * ExternalShell.c:
7108         * ExternalClient.c:
7109         * EmacsShell-sub.c:
7110         * EmacsManager.c:
7111         * EmacsFrame.c:
7112         Use consistent style for specifying X resources.
7113
7114         * symbols.c (Fset): Further implement SYMVAL_LISP_MAGIC.
7115         This makes (dontusethis-set-symbol-value-handler) actually usable.
7116
7117         * lrecord.h (lrecord_decription_type):
7118         * alloc.c (pdump_register_sub):
7119         (pdump_dump_data):
7120         (pdump_reloc_one):
7121         Add XD_LISP_OBJECT_ARRAY to describe multiple Lisp_Objects.
7122         Comply with XEmacs coding style.
7123         All lrecord descriptions updated to use XD_LISP_OBJECT with 2
7124         args, and XD_LISP_OBJECT_ARRAY with 3 args.
7125
7126         * keymap.c (Faccessible_keymaps):
7127         Make (accessible-keymaps map "\C-h") do the Right Thing.
7128         Make (accessible-keymaps map []) do the Right Thing.
7129         Make (accessible-keymaps map "") do the Right Thing.
7130         (check_keymap_definition_loop): New function.
7131         (keymap_store_internal): Keep luser from shooting self in foot,
7132           via (define-key ctl-x-4-map "p" global-map).
7133         Remove fullness slot from struct Lisp_Keymap, since hash tables
7134         are now reliable.
7135         (print_keymap): Remove 'Yuck' factor by simply printing "size %d".
7136
7137 2000-01-30  Martin Buchholz  <martin@xemacs.org>
7138
7139         * redisplay.c (init_redisplay): Fix small memory leak.
7140         * elhash.h:
7141         * elhash.c (pdump_reorganize_hash_table):
7142         Rename from reorganize_hash_table. Change prototype.
7143         Reuse the original memory for hentries.  Save 100k.
7144         * alloc.c (PDUMP_READ): new macro.
7145         * alloc.c (pdump_load): Replace LISP_TO_VOID with higher-level macros.
7146         * alloc.c: No need to #ifndef before #undef.
7147
7148         * print.c: Allow debug_print() to print readably by modifying
7149         debug_print_readably.  Use consistent variable names.
7150
7151         * .dbxrc: Try to get things to work even if stopped in a function
7152         without source available by explicitly specifying source files.
7153 2000-02-03  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
7154
7155         * unexnt.c (_start): Removed bogus code which caused loading heap
7156         from differrent executable file.
7157         Removed bogus assignment to _fmode, which caused inconsistencies.
7158
7159 2000-02-03  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
7160
7161         * s\windowsnt.h: Removed lots of #if 0 blocks of Emacs heritage.
7162         Have spawnve encapsulation regard DONT_ENCAPSULATE.
7163         Do not preliminary `#define signal sigset'.
7164
7165         * systime.h: Do not prototype environ on windows nt and cygwin,
7166         this conflicts with system header.
7167
7168         * syssignal.h: Use correct define for WINDOWSNT
7169
7170         * sysdep.h: Do not prototype environ on windows nt, this conflicts
7171         with system header.
7172
7173         * sysdep.c (near start of file): Fixed commentary and rearranged
7174         ifdefs in readable order.
7175         (NEED_STARTS): Do not force NEED_STARTS when PDUMPing.
7176         (start_of_text):
7177         (end_of_text):
7178         (end_of_data): Do not compile in if using PDUMP.
7179
7180         * symsinit.h: Prototyped vars_of_nt().
7181
7182         * ntproc.c (windows9x_p): Added, instead of os_subtype.
7183         (find_child_console): Use it.
7184         (sys_kill): Use it.
7185
7186         * ntheap.h: Do not extern os_subtype.
7187
7188         * ntheap.c (cache_system_info): Do not cache unneeded:
7189         nt_major_version, nt_minor_version and os_subtype.
7190         (recreate_heap): Do not compile in when PDUMPing.
7191
7192         * nt.c (geteuid and friends): Use the new varibale
7193         nt_fake_unix_uid, instead of hashing fake uid out of NT RID.
7194         (init_user_info): Removed the above mentioned hackery.
7195         (fstat, stat): Do not compile in if using MSVC 5.0 and above -
7196         stat has been fixed in the C runtime.
7197         (vars_of_nt): Added, defined the nt_fake_unix_uid variable there.
7198
7199         * file-coding.c (struct file_coding_dump): Do not define
7200         ucs_to_mule_table in the struct if not MULE.
7201         (struct struct lrecord_description fcd_description_1): Do not dump
7202         the above.
7203
7204         * emacs.c (main_1): Call vars_of_nt().
7205         (right before Fdump_emacs_data): Don't need lastfile if using both
7206         portabe dumper and system malloc.
7207
7208         * alloc.c (Fmemory_limit): Conditionalized out.
7209         (pdump): Use OPEN_BINARY for the portable dump file.
7210         (pdump_load): Ditto.
7211
7212 2000-02-02  Mike Alexander  <mta@arbortext.com>
7213
7214         * nt.c (convert_time): Set tm_isdst before calling mktime and
7215         avoid calling it at all if the compiler supports 64 bit integers.
7216         Also initialize utc_base_ft before using it.
7217
7218 2000-02-03   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
7219
7220         * frame.c (change_frame_size_1): Take f->internal_border_width
7221         into consideration when calculating the width of the frame.
7222
7223 2000-02-01  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
7224
7225         * window.c (frame_min_height):
7226         (frame_size_valid_p):
7227         (frame_pixsize_valid_p): Added.
7228         (check_frame_size): Generalized.
7229
7230         * window.h: Prototyped the above.
7231
7232         * lisp.h:
7233         * general.c: Added Qbottom_margin, Qduplex, Qlandscape,
7234         Qleft_margin, Qorientation, Qportrait, Qright_margin, Qtop_margin.
7235         Deleted Vwin32_* and Vbinary_process_* unused variables.
7236
7237         * device-msw.c (msprinter_init_device): Do not get printer font
7238         list; Added DEVMODE functions.
7239
7240         * frame-msw.c: Added lots of printer code.
7241
7242         * faces.c: Moved 'left-margin and 'right-margin defsymbols to
7243         general.c.
7244
7245         * console-msw.h: Added more msprinter device private slots.
7246
7247 2000-02-01  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
7248
7249         * event-msw.c (key_needs_default_processing_p): Added.
7250         (mswindows_wnd_proc, WM_KEYUP, KEYDOWN): Call it.
7251
7252 2000-01-29  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
7253
7254         * glyphs.c (image_instance_layout): Mark image instance as clean
7255         after layout.
7256         (glyph_dirty_p): Removed redundant function.
7257         (invalidate_glyph_geometry_maybe): Added.
7258         (update_glyph_cachel_data): Call it.
7259
7260         * glyphs.h: Prototyped it.
7261
7262         * redisplay.c (add_glyph_rune): Call it.
7263         (redisplay_window): Reset glyphs cachels when frame faces have
7264         changed, thus forcing recomputation of built-in border glyphs.
7265
7266 2000-01-30  Martin Buchholz  <martin@xemacs.org>
7267
7268         * Makefile.in.in: Make portable dumper and purify play well together.
7269         Add imperfect, but better than nothing, support for pdump.
7270         Remove xemacs.dmp when temacs is re-generated.
7271         Don't ignore errors when dumping xemacs.
7272
7273         * symbols.c (maybe_call_magic_handler): Remove one magic number.
7274
7275 2000-01-28  Andy Piper  <andy@xemacs.org>
7276
7277         * frame.c (allocate_frame_core): Use new Fset_window_buffer signature.
7278         (setup_normal_frame): ditto.
7279         (setup_frame_without_minibuffer): ditto.
7280         (setup_minibuffer_frame): ditto.
7281         (delete_frame_internal): ditto.
7282         (Fmake_frame_invisible): ditto.
7283         (Ficonify_frame): ditto.
7284
7285         * window.h: change Fset_window_buffer signature.
7286
7287         * window.c (Fsplit_window): Use new Fset_window_buffer signature.
7288         (Fset_window_buffer): allow recording of buffer if the window is
7289         the selected window.
7290         (window_loop): Use new Fset_window signature.
7291
7292 2000-01-23  Daniel Pittman  <daniel@danann.net>
7293
7294         * config.h.in: Added template for `HAVE_ATHENA_3D'
7295
7296 2000-01-29  Andy Piper  <andy@xemacs.org>
7297
7298         * glyphs-x.c (x_resize_subwindow): Try and catch bogus resizes.
7299
7300         * gutter.c (output_gutter): Don't output if the window isn't live.
7301
7302 2000-01-28  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
7303
7304         * glyphs-msw.c (mswindows_unmap_subwindow): Fix of corrupted patch
7305         of 01/12/00: Moved SetFocus back here where it belongs.
7306
7307 2000-01-23  Andy Piper  <andy@xemacs.org>
7308
7309         * s/cygwin32.h: declare printer things.
7310
7311 2000-01-26  Andy Piper  <andy@xemacs.org>
7312
7313         * select.c (Fown_selection_internal): GCPRO bug fix from Mike
7314         Alexander.
7315
7316 2000-01-24  Andy Piper  <andy@xemacs.org>
7317
7318         * glyphs-msw.c (mswindows_locate_pixmap_file): Expand filename.
7319         (mswindows_button_instantiate): Make sure glyph is a pixmap.
7320
7321         * glyphs-widget.c (widget_instantiate): Avoid shadows.
7322
7323         * frame-msw.c (msprinter_init_frame_3): Nuke warning.
7324
7325         * glyphs-msw.c: (mswindows_string_to_color): remove declaration.
7326
7327         * redisplay-msw.c (mswindows_output_cursor): Avoid shadows.
7328         (mswindows_output_display_block): Avoid local shadows.
7329
7330         * event-msw.c (mswindows_enqueue_magic_event): Avoid shadows.
7331         (mswindows_enqueue_mouse_button_event): ditto.
7332         (mswindows_handle_gui_wm_command): remove declaration.
7333
7334         * console-msw.c (mswindows_canonicalize_console_connection): Avoid
7335         warnings.
7336
7337         * console-msw.h: Avoid shadows.
7338         (mswindows_get_toolbar_button_text):
7339         (emacs_mswindows_create_stream_pair):
7340         (emacs_mswindows_delete_stream_pair):
7341         (mswindows_handle_toolbar_wm_command): declare.
7342
7343         * device-msw.c (build_syscolor_string): Avoid shadows.
7344
7345 2000-01-23  Andy Piper  <andy@xemacs.org>
7346
7347         * glyphs-widget.c (widget_instantiate): reverse the items for
7348         layouts so that children are in the expected order.
7349
7350 2000-01-28  Martin Buchholz  <martin@xemacs.org>
7351
7352         * ralloc.c: safe_bcopy ==> memmove
7353         * gmalloc.c: Remove MEMMOVE_MISSING conditional code.
7354         * s/msdos.h: Remove BCOPY macros.
7355         * insdel.c (gap_right): Remove BCOPY conditional code.
7356         * insdel.c (gap_left): Remove BCOPY conditional code.
7357         XEmacs demands a working ANSI C compiler - hence memmove.
7358
7359         * regex.c (regex_compile): Remove accidental use of trigraphs.
7360
7361 2000-01-27  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
7362
7363         * event-msw.c (mswindows_enqueue_misc_user_event): Initialize
7364         event timestamp.
7365
7366 2000-01-26  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
7367
7368         * event-msw.c (mswindows_drain_windows_queue): Added the
7369         parameter.
7370         (mswindows_need_event): Commented the call to
7371         mswindows_drain_windows_queue().
7372         (emacs_mswindows_quit_p): Lookup the windows for keyboard messages
7373         only.
7374
7375         * console-msw.h: Moved a few function prototypes here from
7376         event-msw.c.
7377
7378         * gui-msw.c (mswindows_handle_gui_wm_command): Changed the ID
7379         parameter from unsigned short to unsigned long.
7380         (Fmswindows_shell_execute): Added return value.
7381
7382 2000-01-27  URA Hiroshi <ura@hiru.aoba.yokohama.jp>
7383
7384         * sysdep.c (init_system_name):
7385           process-unix.c (unix_canonicalized_host_name):
7386         Don't call freeaddrinfo() if getaddrinfo() fails.
7387
7388         * process-unix.c (unix_open_unix_network_stream):
7389         Moved the code to get a port # into address loop.
7390
7391 2000-01-27  Martin Buchholz  <martin@xemacs.org>
7392
7393         * buffer.c (reinit_vars_of_buffer):
7394         The right place to initialize conversion_in_dynarr and
7395         conversion_out_dynarr.
7396
7397         * alloc.c (pdump): Use the real open() till sys_open() is functional.
7398
7399         * process-unix.c (unix_canonicalize_host_name): Muleize.
7400         (unix_open_network_stream): Muleize.
7401
7402         * buffer.h: Fix up prototypes for ralloc.c functions.
7403
7404 2000-01-27  URA Hiroshi <ura@hiru.aoba.yokohama.jp>
7405         * config.h.in: added HAVE_GETADDRINFO and HAVE_GETNAMEINFO
7406         * sysdep.c: In init_system_name(), add code to use getaddrinfo()
7407                 instead of gethostbyname()
7408         * process-unix.c: In unix_canonicalize_host_name() and
7409                 unix_open_network_stream(), add code to use getaddrinfo()
7410                 instead of gethostbyname().
7411
7412 2000-01-27  Daniel Pittman <daniel@danann.net>
7413
7414         * device-x.c (x_init_device): Warn at run-time if using Athena 3d
7415         libs when built with flat Athena.
7416
7417 2000-01-27  Martin Buchholz  <martin@xemacs.org>
7418
7419         * ralloc.c: Replace SIZE (conflicts with Windows headers) with size_t.
7420         Use coding standards for function prototypes.
7421
7422 2000-01-25  Martin Buchholz  <martin@xemacs.org>
7423
7424         * dialog-msw.c (push_lisp_string_as_unicode):
7425         * doc.c (unparesseuxify_doc_string):
7426         * dired.c (Fuser_name_completion_1):
7427         * dired.c (Fuser_name_all_completions):
7428         * dired.c (free_user_cache):
7429         * dired.c (user_name_completion):
7430         * console-x.c (get_display_arg_connection):
7431         * minibuf.c (clear_echo_area_internal):
7432         * minibuf.c (echo_area_append):
7433         * eldap.c (Fldap_open):
7434         * eldap.c (Fldap_search_internal):
7435         * frame-x.c (x_set_frame_text_value):
7436         * frame-x.c (x_set_frame_properties):
7437         * frame-x.c (x_create_widgets):
7438         * redisplay-tty.c (term_get_fkeys_1):
7439         * objects-x.c (x_parse_nearest_color):
7440         * objects-x.c (x_valid_color_name_p):
7441         * objects-x.c (x_initialize_font_instance):
7442         * objects-x.c (x_list_fonts):
7443         * objects-x.c (x_find_charset_font):
7444         * tooltalk.c (Fadd_tooltalk_message_arg):
7445         * tooltalk.c (Fadd_tooltalk_pattern_attribute):
7446         * tooltalk.c (Fadd_tooltalk_pattern_arg):
7447         * process-unix.c (unix_create_process):
7448         * ntproc.c (sys_spawnve):
7449         * sound.c (Fplay_sound_file):
7450         * sound.c (Fplay_sound):
7451         * buffer.c (init_initial_directory):
7452         * buffer.c (init_buffer):
7453         * editfns.c (init_editfns):
7454         * editfns.c (Ftemp_directory):
7455         * editfns.c (Fuser_full_name):
7456         * editfns.c (uncache_home_directory):
7457         * editfns.c (get_home_directory):
7458         * editfns.c (Fuser_home_directory):
7459         * editfns.c (Fformat_time_string):
7460         * editfns.c (Fcurrent_time_string):
7461         * gui-x.c (button_item_to_widget_value):
7462         * database.c (Fopen_database):
7463         * event-Xt.c (x_to_emacs_keysym):
7464         * event-Xt.c (x_event_to_emacs_event):
7465         * event-Xt.c (describe_event_window):
7466         * event-msw.c (mswindows_wnd_proc):
7467         * glyphs-eimage.c (jpeg_instantiate):
7468         * glyphs-eimage.c (gif_instantiate):
7469         * glyphs-eimage.c (png_instantiate):
7470         * glyphs-eimage.c (tiff_instantiate):
7471         * glyphs-x.c (xbm_instantiate_1):
7472         * glyphs-x.c (x_xbm_instantiate):
7473         * glyphs-x.c (x_xface_instantiate):
7474         * glyphs-x.c (autodetect_instantiate):
7475         * glyphs-x.c (cursor_font_instantiate):
7476         * glyphs-x.c (x_widget_instantiate):
7477         * glyphs-x.c (x_widget_set_property):
7478         * glyphs-x.c (x_widget_property):
7479         * glyphs-x.c (BUILD_GLYPH_INST):
7480         * print.c (write_string_to_stdio_stream):
7481         * print.c (output_string):
7482         * print.c (Falternate_debugging_output):
7483         * print.c (Fexternal_debugging_output):
7484         * glyphs-msw.c (extract_xpm_color_names):
7485         * glyphs-msw.c (mswindows_xpm_instantiate):
7486         * glyphs-msw.c (bmp_instantiate):
7487         * glyphs-msw.c (resource_name_to_resource):
7488         * glyphs-msw.c (mswindows_resource_instantiate):
7489         * glyphs-msw.c (xbm_instantiate_1):
7490         * glyphs-msw.c (mswindows_xbm_instantiate):
7491         * glyphs-msw.c (mswindows_xface_instantiate):
7492         * glyphs-msw.c (mswindows_widget_instantiate):
7493         * glyphs-msw.c (add_tree_item):
7494         * glyphs-msw.c (add_tab_item):
7495         * glyphs-msw.c (mswindows_combo_box_instantiate):
7496         * glyphs-msw.c (mswindows_widget_property):
7497         * glyphs-msw.c (mswindows_combo_box_property):
7498         * glyphs-msw.c (mswindows_widget_set_property):
7499         * console.c (stuff_buffered_input):
7500         * objects-msw.c (mswindows_initialize_color_instance):
7501         * objects-msw.c (mswindows_valid_color_name_p):
7502         * objects-msw.c (mswindows_list_fonts):
7503         * objects-msw.c (mswindows_font_instance_truename):
7504         * bytecode.c (optimize_compiled_function):
7505         * select-x.c (symbol_to_x_atom):
7506         * select-x.c (x_atom_to_symbol):
7507         * select-x.c (hack_motif_clipboard_selection):
7508         * select-x.c (selection_data_to_lisp_data):
7509         * select-x.c (lisp_data_to_selection_data):
7510         * select-x.c (Fx_get_cutbuffer_internal):
7511         * select-x.c (Fx_store_cutbuffer_internal):
7512         * buffer.h (TO_EXTERNAL_FORMAT): New function.
7513         * buffer.h (TO_INTERNAL_FORMAT): New function.
7514         * emacs.c (make_arg_list_1):
7515         * emacs.c (make_argc_argv):
7516         * emacs.c (main_1):
7517         * emacs.c (Fdump_emacs):
7518         * emacs.c (split_string_by_emchar_1):
7519         * file-coding.h:
7520         * lisp.h:
7521         * lstream.h:
7522         * symsinit.h:
7523         * device-x.c (x_init_device):
7524         * device-x.c (Fx_valid_keysym_name_p):
7525         * device-x.c (Fx_get_font_path):
7526         * device-x.c (Fx_set_font_path):
7527         * glyphs.c (bitmap_to_lisp_data):
7528         * glyphs.c (pixmap_to_lisp_data):
7529         * alloc.c (make_ext_string): Use coding system arguments.  Update
7530         all callers.
7531         * alloc.c (build_string):
7532         * callproc.c (child_setup):
7533         * callproc.c (init_callproc):
7534         * fileio.c (lisp_strerror):
7535         * fileio.c (directory_file_name):
7536         * fileio.c (Fexpand_file_name):
7537         * fileio.c (Ffile_truename):
7538         * fileio.c (Fsysnetunam):
7539         * fileio.c (Fdo_auto_save):
7540         * sysdep.c (sys_readdir):
7541         * tests.c: New file.  Allow adding C tests.
7542         Replace GET_* macros with a more comprehensible and flexible
7543         interface, TO_INTERNAL_FORMAT() and TO_EXTERNAL_FORMAT().
7544         Modify all calls.
7545         Any coding system can be used to do format conversion.
7546         Eliminate enum external_data_format.
7547         Eliminate convert_to_external_format.
7548         Eliminate convert_to_internal_format.
7549         Make sure file-name, keyboard, terminal, and ctext are always
7550         defined as coding systems or aliases.  Make
7551         file-name-coding-system, terminal-coding-system, and
7552         keyboard-coding-system magical variables that are equivalent to
7553         defining the corresponding coding system aliases.
7554
7555         * file-coding.c (Fcoding_system_canonical_name_p): New function.
7556         * file-coding.c (Fcoding_system_alias_p): New function.
7557         * file-coding.c (Fcoding_system_aliasee): New function.
7558         * file-coding.c (append_suffix_to_symbol): New function.
7559         * file-coding.c (dangling_coding_system_alias_p): New function.
7560         * file-coding.c (Ffind_coding_system):
7561         * file-coding.c (Fcopy_coding_system):
7562         * file-coding.c (encode_coding_no_conversion):
7563         * file-coding.c (syms_of_file_coding):
7564         * file-coding.c (vars_of_file_coding):
7565         Rewrite coding system alias code.
7566         Allow nested aliases, like symbolic links.
7567         Allow redefinition of coding system aliases.
7568         Prevent existence of dangling coding system aliases.
7569
7570         * dired.c (Fuser_name_completion_1):
7571         * dired.c (Fuser_name_all_completions):
7572         A crash would happen if user did QUIT in the middle of building
7573         user_name_cache.  Remove redundant code in mainline and unwind_protect.
7574
7575         * lisp.h:
7576         * dynarr.c (Dynarr_min_size): Make static.  Increase value to 8.
7577
7578         * lstream.c (make_fixed_buffer_input_stream): Take a void *, not
7579         an unsigned char *.  Update all callers.
7580
7581 2000-01-26  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
7582
7583         * callproc.c (Fcall_process_internal): Ignore Vbinary-process_output.
7584
7585 2000-01-25  Martin Buchholz  <martin@xemacs.org>
7586
7587         * elhash.c (hentry_description): Use more portable definition.
7588         (resize_hash_table): Initialize new hentries using
7589         xnew_array_and_zero, thereby simplifying the code.
7590
7591         * mule-charset.c (make_charset): Make sure entire object is
7592         initialized, to avoid Purify warnings.
7593
7594         * alloc.c (resize_string): Fix unlikely crash with big strings.
7595
7596 2000-01-24  Martin Buchholz  <martin@xemacs.org>
7597
7598         * realpath.c (xrealpath):
7599         Don't call getwd().
7600
7601 2000-01-25  Martin Buchholz  <martin@xemacs.org>
7602
7603         * lread.c (read_bit_vector): Fix memory leak reading literal bit vectors.
7604
7605 1999-12-28  Max Matveev  <max@melbourne.sgi.com>
7606
7607         * unexelfsgi.c (unexec): Change the way we decide which segment
7608         should be extended.
7609
7610         Assumption that .bss section should be outside the PT_LOADable
7611         segment. On IRIX with version 6.2 and above, .bss (or .sbss, if
7612         it's present) is inside the 'data' segment. This would fail the
7613         test which was used to find a segment to grow and cover new
7614         heap. Instead of this assumption, I created another one - on IRIX
7615         the segment to grow should start below .bss and it's address
7616         should extent above the end of .bss. Once this segment is
7617         identified, it's grown to accommodate the new heap and new
7618         zero-length .bss section is added at the end of .data2.
7619
7620 2000-01-25  Martin Buchholz  <martin@xemacs.org>
7621
7622         * eval.c (Feval): Wrong number of arguments should use original
7623         function, not the indirect_function version of it.
7624
7625 2000-01-24  Yoshiki Hayashi  <yoshiki@xemacs.org>
7626
7627         * glyphs-x.c (x_button_instantiate): Don't add image if
7628         it is not a pixmap.
7629         (x_locate_pixmap_file): Call Fexpand_file_name when file name
7630         is relative.
7631
7632 2000-01-21  Yoshiki Hayashi  <yoshiki@xemacs.org>
7633
7634         * symeval.h (DEFVAR_LISP_MAGIC): Remove semicolon after macro
7635         declaration.
7636         (DEFVAR_INT_MAGIC): Ditto.
7637         (DEFVAR_BOOL_MAGIC): Ditto.
7638         * glyphs.h: Reindent backslash.
7639
7640 2000-01-24  Martin Buchholz  <martin@xemacs.org>
7641
7642         * glyphs-widget.c (layout_query_geometry):
7643         (layout_layout): Use correct types for gheight, gwidth.
7644
7645 2000-01-24  Martin Buchholz  <martin@xemacs.org>
7646
7647         * EmacsManager.c (QueryGeometry): Purified.
7648
7649 2000-01-23  Martin Buchholz  <martin@xemacs.org>
7650
7651         * alloc.c (make_float): Make sure entire object is initialized, to
7652         avoid Purify warnings.
7653         (pdump_register_sub): Remove useless assignment.
7654         (pdump): Use xmalloc, not malloc.
7655         (pdump_load): Use xmalloc, not malloc.
7656
7657 2000-01-23  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
7658
7659         * callproc.c:
7660         * dired-msw.c:
7661         * fileio.c:
7662         * process-nt.c:
7663         * redisplay-msw.c:
7664         * sysdep.c: Removed redundant #include <windows.h>
7665
7666 2000-01-22  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
7667
7668         * frame.c (delete_frame_internal): Do not delete device when its
7669         implementation so declares.
7670         (delete_frame_internal): Set device selected frame to nil when
7671         last frame goes away.
7672
7673         * device-msw.c (msprinter_device_system_metrics): Implemented.
7674         (mswindows_device_system_metrics): Added 'device-dpi property.
7675
7676         * device.c: (Fdevice_printer_p): Added.
7677         Added 'offset-workspace device metric.
7678
7679         * console.h (device_metrics): Declared DM_offset_workspace.
7680
7681 2000-01-23  Martin Buchholz  <martin@xemacs.org>
7682
7683         * fileio.c (Ffile_truename): Remove pointless and confusing
7684         initialization of elen.
7685
7686         * glyphs-widget.c: Compiler warning fixes.
7687
7688 2000-01-23  Gunnar Evermann  <ge204@eng.cam.ac.uk>
7689
7690         * process.h (PROCESS_LIVE_P): Modify to take a Lisp_Process
7691         instead of a Lisp_Object as argument to make it consistent with
7692         the other LIVE_P macros.
7693         (CHECK_LIVE_PROCESS): New macro.
7694
7695         * process.c: Declare Qprocess_live_p.
7696         (Fprocess_live_p): New function.
7697         (create_process): Use PROCESS_LIVE_P.
7698         (read_process_output): Ditto.
7699         (set_process_filter): Ditto.
7700         (Fdelete_process): Ditto.
7701         (kill_buffer_processes): Ditto
7702         (process_send_signal): Use CHECK_LIVE_PROCESS.
7703         (Fprocess_input_coding_system): Check whether process is still
7704         alive (fix PR#1061).
7705         (Fprocess_output_coding_system): Ditto.
7706         (Fprocess_coding_system): Ditto.
7707         (Fset_process_input_coding_system): Ditto.
7708         (Fset_process_output_coding_system): Ditto.
7709
7710 2000-01-23  Andy Piper  <andy@xemacs.org>
7711
7712         * glyphs.h (struct Lisp_Image_Instance): change format by unifying
7713         layout and widget.
7714
7715         * glyphs.c (mark_image_instance): take into account changed
7716         image_instance format.
7717         (image_instance_equal): ditto.
7718         (image_instance_hash): ditto.
7719
7720         * glyphs-widget.c (widget_instantiate): Incorporate layout
7721         instantiation here. Delay layout of the layout until later.
7722         (layout_instantiate): deleted.
7723         (layout_query_geometry): new function. get the geometry of a
7724         layout.
7725         (layout_layout): layout a layout dynamically.
7726         (image_instantiator_widget): New function - splitting up
7727         image_instantiator_format_create_glyphs_widget for netwinder
7728         compilation.
7729         (image_instantiator_buttons):
7730         (image_instantiator_edit_fields):
7731         (image_instantiator_combo_box):
7732         (image_instantiator_scrollbar):
7733         (image_instantiator_progress_guage):
7734         (image_instantiator_tree_view):
7735         (image_instantiator_tab_control):
7736         (image_instantiator_labels):
7737         (image_instantiator_layout): ditto.
7738         (image_instantiator_format_create_glyphs_widget): Call preceding
7739         functions.
7740
7741 2000-01-22  Martin Buchholz  <martin@xemacs.org>
7742
7743         * process.c (Fset_process_coding_system):
7744         * device-x.c (Fx_keysym_hash_table):
7745         Docstring fixes.
7746
7747         * lstream.c (Lstream_write): Return documented value, not 0.
7748
7749         * fileio.c (directory_file_name):
7750         (Fsubstitute_in_file_name):
7751         (Fsubstitute_insert_file_contents_internal):
7752         (Fwrite_region_internal):
7753         * emacs.c:
7754         * sysdep.c:
7755         * getloadavg.c:
7756         * systty.h:
7757         Remove vestigial APOLLO-conditional code.
7758
7759 2000-01-21  Martin Buchholz  <martin@xemacs.org>
7760
7761         * getpagesize.h: Add guard macros.
7762         * libsst.h: Add guard macros.
7763         * libst.h: Add guard macros.
7764         * line-number.h: Add guard macros.
7765         * ndir.h: Add guard macros.
7766         * sysfloat.h: Add guard macros.
7767         * sysfile.h: Add guard macros.
7768         * sysproc.h: Add guard macros.
7769         * syswait.h: Add guard macros.
7770         * xintrinsic.h: Add guard macros.
7771         * xintrinsicp.h: Add guard macros.
7772         * xmmanager.h: Add guard macros.
7773         * xmmanagerp.h: Add guard macros.
7774         * xmprimitive.h: Add guard macros.
7775         * xmu.h: Add guard macros.
7776         * gpmevent.h: Add copyright statement. Add guard macros.
7777         * miscplay.h: Add guard macros.
7778         * *.h: Use consistent C-standards-approved guard macro names.
7779
7780         * opaque.c (make_opaque): Switch parameter order.
7781         * opaque.h (make_opaque): Switch parameter order.
7782         Update all callers.
7783         * buffer.h (MAKE_MIRROR_TRT_TABLE): Use symbolic constant OPAQUE_CLEAR.
7784
7785         * config.h.in (type_checking_assert): Added.
7786         (bufpos_checking_assert): Added.
7787
7788 2000-01-21  Martin Buchholz  <martin@xemacs.org>
7789
7790         * alloc.c: Harmless pdump changes.
7791         - Use countof().
7792         - spell alignment correctly.
7793         * sysdep.c: Use countof()
7794
7795 2000-01-20  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
7796
7797         * console.c (create_console): Use CONMETH_OR_GIVEN when calling
7798         initially_selected_for_input() console method, default to 0.
7799         (semi_canonicalize_console_connection): Try to delegate to
7800         canonicalize_console_connection if no such console method.
7801         (canonicalize_console_connection): Vice versa.
7802         (print_console): Do not print nil connection.
7803
7804         * console.h (XDEVIMPF_IS_A_PRINTER): Added.
7805         (XDEVIMPF_NO_AUTO_REDISPLAY): Added.
7806         (XDEVIMPF_FRAMELESS_OK): Added.
7807         (CONSOLE_INHERITS_METHOD): Added.
7808
7809         * console-msw.c (mswindows_canonicalize_console_connection):
7810         Added.
7811         (mswindows_canonicalize_device_connection): Added.
7812
7813         * console-msw.h (struct msprinter_device): Added this struct and
7814         accessor macros.
7815         (mswindows_device): Made fontlist a lisp object.
7816
7817         * device.c (semi_canonicalize_device_connection):  Try to delegate
7818         to canonicalize_device_connection if no such console method.
7819         (canonicalize_device_connection): Vice versa.
7820         (print_device): Do not print nil connection.
7821
7822         * device-msw.c (mswindows_init_device): Call InitCommonControls
7823         when have widgets.
7824         (mswindows_delete_device): Removed fontlist deallocation.
7825         (mswindows_mark_device): Added.
7826
7827         * events.c (event_equal): Added abort() at unreached code.
7828         (event_hash): Ditto.
7829
7830         * faces.c (complex_vars_of_faces): Added Qmsprinter to the list of
7831         fallback tags of Windows devices.
7832
7833         * general.c (syms_of_general): Initialized Qmsprinter.
7834
7835         * gutter.c (complex_vars_of_gutters): Added Qmsprinter to the list
7836         of fallback tags of Windows devices.
7837
7838         * lisp.h: Declared Qmsprinter.
7839
7840         * objects-msw.c (font_enum_callback_2): Rewrote to build lisp list
7841         of strings.
7842         (mswindows_list_fonts): Ditto.
7843         (mswindows_enumerate_fonts): Removed dependency on XDEVICE, so
7844         that it can be used by both mswindows and msprinter devices.
7845         (initialize_font_instance): Added.
7846         (mswindows_initialize_font_instance): Use it.
7847         (msprinter_initialize_font_instance): Added.
7848
7849         * redisplay.c (redisplay_device): Added the parameter AUTOMATIC
7850         and implementation flags check.
7851         (redisplay_without_hooks): Changed the call to the above.
7852         (Fredraw_device): Ditto.
7853         (Fredisplay_device): Ditto.
7854
7855         * redisplay-msw.c (get_frame_dc): Implemented.
7856         (get_frame_compdc): Implemented.
7857         (many functions): Use the two functions above to get device
7858         contexts, ether for a window or a printer.
7859
7860 2000-01-21  Olivier Galibert  <galibert@pobox.com>
7861
7862         * symbols.c (reinit_symbols_once_early): Put Qzero/Qnull_pointer
7863         initialization here.
7864         (init_symbols_once_early): Call it.
7865         * emacs.c (main_1): Call it.
7866         * symsinit.h: Declare it.
7867
7868 2000-01-19  Olivier Galibert  <galibert@pobox.com>
7869
7870         * alloc.c: Use a lrecord_header * in the backtrace instead of a
7871         Lisp_Object.
7872         (pdump_backtrace): Ditto.
7873         (pdump_register_object): Ditto.  Cleanup use of the pointers.
7874         (pdump_get_entry): Abort if trying to register a null pointer.
7875         (pdump_dump_data): Cleanup types when relocating.
7876         (pdump_dump_staticvec): Cleanup types w.r.t the reloc table.
7877         (pdump_dump_rtables): Remove bad casts.
7878         (pdump_load): Cleanup relocation w.r.t union type.  Use a
7879         Lisp_Object instead of a EMACS_INT for the hashtable
7880         reorganization.
7881
7882 2000-01-20  Martin Buchholz  <martin@xemacs.org>
7883
7884         * emacs.c (main_1): Rearrange morass of #ifdef's for correctness.
7885
7886         * callproc.c (call_process_cleanup): Isolate WINDOWSNT code for clarity.
7887
7888         * EmacsManager.c (GeometryManager): Avoid use of CPP for clarity.
7889
7890         * *.[ch]: global-replace 's/_of_xselect/_of_select_x/g' *.[ch]
7891
7892 2000-01-17  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
7893
7894         * faces.h (FACE_STRIKETHRU_P): Added.
7895
7896         * glyphs-msw.c (mswindows_widget_hfont): Implemented, to take care
7897         of font variants.
7898
7899         * redisplay-msw.c (mswindows_apply_face_effects): Deleted.
7900         (mswindows_set_dc_font): New function, aware of font variants,
7901         separated from mswindows_update_dc.
7902
7903         * objects-msw.h (struct mswindows_font_instance_data): Added
7904         definition.
7905
7906         * objects-msw.c (mswindows_finalize_font_instance): Delete all
7907         cached fonts and the data structure.
7908         (mswindows_initialize_font_instance): Added creation of font data
7909         structure.
7910         (mswindows_print_font_instance): Print at least something.
7911         (mswindows_create_font_variant): Implemented.
7912         (mswindows_get_hfont): Implemented.
7913
7914 2000-01-13  Fabrice Popineau  <Fabrice.Popineau@supelec.fr>
7915
7916         * dired-msw.c: permute "sysdir.h" with "sysfile.h" because of
7917         prototyping problem with msvc.
7918
7919         * emacs.c (main_1): added syms_of_gui_mswindows() call
7920
7921         * gui-msw.c: added "mswindows-shell-execute" lisp subr and
7922         syms_of_gui_mswindows() function
7923
7924         * symsinit.h: added the prototype for syms_of_gui_mswindows()
7925
7926 2000-01-18  Martin Buchholz <martin@xemacs.org>
7927
7928         * XEmacs 21.2.27 is released.
7929
7930 2000-01-18  Martin Buchholz  <martin@xemacs.org>
7931
7932         * glyphs-eimage.c (struct tiff_error_struct):
7933         (tiff_error_func):
7934         (tiff_warning_func):
7935         #if HAVE_VSNPRINTF ==> #ifdef HAVE_VSNPRINTF
7936
7937         * unexmips.c:
7938         * unexhp9k3.c:
7939         * unexfreebsd.c:
7940         * unexec.c: Remove vestigial Lucid C code.
7941         * unexalpha.c:
7942         * unexaix.c:
7943         * termcap.c:
7944         * libsst.c: Ansify.
7945         Remove declarations of errno and strerror().
7946
7947         * eval.c (Fbacktrace): Small Purify-cation.  Fix docstring.
7948
7949         * .dbxrc (run-temacs): Use the horrible ${1+"$@"} instead of "$@".
7950
7951 2000-01-16  Martin Buchholz  <martin@xemacs.org>
7952
7953         * mule-charset.c (Fchar_octet): Resurrect from earlier in 1999.
7954         Optimize.
7955
7956 2000-01-14  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
7957
7958         * md5.c:
7959         * file-coding.c:
7960         * file-coding.h:
7961         Change enum eol_type to eol_type_t.
7962
7963 2000-01-17  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
7964
7965         * gui.c (get_gui_callback): Check cons before accessing car.
7966
7967 2000-01-17  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
7968
7969         * specifier.h (XSPECIFIER_TYPE): Add error checking version.
7970         (XSETSPECIFIER_TYPE): Ditto.
7971
7972 2000-01-17  Didier Verna  <didier@xemacs.org>
7973
7974         * redisplay.c (generate_fstring_runes): compute string size in
7975         characters, not bytes.
7976
7977 2000-01-09  Hrvoje Niksic  <hniksic@iskon.hr>
7978
7979         * window.c (Fwindow_minibuffer_p): Make WINDOW optional.
7980
7981 2000-01-14  Hrvoje Niksic  <hniksic@iskon.hr>
7982
7983         * print.c (print_error_message): Call print_prepare().
7984
7985 2000-01-14  Martin Buchholz  <martin@xemacs.org>
7986
7987         * .dbxrc: Renamed from dbxrc.
7988
7989         * events.c (event_to_character):
7990         Use `assert (foo)' instead of `if (!foo) abort()'
7991
7992         * .gdbinit (xtype): Add documentation.
7993         * .gdbinit (check-temacs): New function.
7994         * .gdbinit (check-xemacs): New function.
7995         * dbxrc (check-xemacs): New function.
7996         * dbxrc (check-xemacs): New function.
7997
7998 2000-01-14  Andy Piper  <andy@xemacs.org>
7999
8000         * glyphs-widget.c (widget_query_geometry): Make sure that we
8001         calculate default dimensions correctly.
8002
8003 2000-01-13  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
8004
8005         * symsinit.h: Added prototype for reinit_vars_of_frame_mswindows.
8006
8007         * event-msw.c (vars_of_event_mswindows): Fixed a mistyped
8008         pdump_wire'd variable.
8009
8010         * emacs.c: (main_1): Conditionalized calls to
8011         reinit_vars_of_scrollbar_x and reinit_vars_of_module.
8012
8013 2000-01-13  Martin Buchholz  <martin@xemacs.org>
8014
8015         * window.c (Fset_window_configuration):
8016         * sysdep.c (_start):
8017         * input-method-motif.c (res):
8018         * event-Xt.c (Xt_process_to_emacs_event):
8019         Simple compiler warning fixes.
8020
8021         * bytecode.c (funcall_compiled_function): Use the original
8022         function symbol on the backtrace list in preference to the
8023         compiled_function object in error messages.
8024
8025 2000-01-13  Andy Piper  <andy@xemacs.org>
8026
8027         * glyphs-x.c (update_widget_face): Make sure we update the widget
8028         background as well as foreground.
8029
8030 2000-01-13  Andy Piper  <andy@xemacs.org>
8031
8032         * glyphs.h (struct Lisp_Image_Instance): Move justify and orient
8033         fields to subwindow.
8034         (IMAGE_INSTANCE_SUBWINDOW_JUSTIFY): new macro.
8035         (XIMAGE_INSTANCE_SUBWINDOW_JUSTIFY): ditto.
8036         (IMAGE_INSTANCE_SUBWINDOW_ORIENT): ditto.
8037         (XIMAGE_INSTANCE_SUBWINDOW_ORIENT): ditto.
8038
8039         * glyphs-widget.c (check_valid_tab_orientation): new function.
8040         (initialize_widget_image_instance): zero orientation and
8041         justification.
8042         (widget_instantiate): pick up orientation.
8043         (tab_control_query_geometry): return appropriate values for
8044         vertical tabs.
8045
8046         * glyphs-msw.c: (mswindows_tab_control_instantiate): assign
8047         appropriate creation flags for left, right and bottom tabs.
8048
8049         * s/cygwin32.h: add tab definitions.
8050
8051 2000-01-12  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
8052
8053         * glyphs-msw.c (mswindows_unmap_subwindow): Set focus back to the
8054         frame upon hiding a subwindow.
8055         (mswindows_button_instantiate): Changed the push button style to
8056         BS_PUSHBUTTON.
8057         (mswindows_button_instantiate): Removed button BS_NOTIFY
8058         style.
8059         (mswindows_button_instantiate): Removed redundant check for
8060         a disabled gui item.
8061         (mswindows_button_instantiate): Made use of WS_TABSTOP
8062         consistent: "operable" controls (edit, button, tree, scroll) have
8063         this style, "display-only" ones (static, progress gauge) do
8064         not. This style is currently ignored by XEmacs though. Also,
8065         removed the WS_EX_CONTROLPARENT style - it is not for children,
8066         it is for their parents!
8067         (mswindows_edit_field_instantiate): Ditto.
8068         (mswindows_progress_gauge_instantiate): Ditto.
8069         (mswindows_tree_view_instantiate): Ditto.
8070         (mswindows_tab_control_instantiate): Ditto.
8071         (mswindows_scrollbar_instantiate): Ditto.
8072         (mswindows_combo_box_instantiate): Ditto.
8073         (mswindows_widget_instantiate): Added the WS_EX_CONTROLPARENT
8074         style to the "clip" window.
8075         (mswindows_button_instantiate): Removed compilation warning by
8076         equally typing terms of the ?: operator.
8077
8078 2000-01-12  Didier Verna  <didier@xemacs.org>
8079
8080         * redisplay.c (generate_fstring_runes): new parameter holding the
8081         last modeline-format extent.
8082         (add_glyph_to_fstring_db_runes): new parameter holding the glyph
8083         extent, fill the glyph block with it.
8084         (generate_fstring_runes): handle these parameters.
8085         (generate_formatted_string_db): ditto.
8086
8087         * keymap.c (get_relevant_keymaps): retreive the keymaps from the
8088         glyphs'extents in the modeline.
8089
8090 1999-01-11  Mike Woolley  <mike@bulsara.com>
8091
8092         * ntheap.c: Reduced the reserved heap space from 1Gb down to
8093         256Mb, as a workaround for the non-starting problem many people
8094         have experienced.
8095
8096 2000-01-06  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
8097
8098         * console-tty.c (Fset_console_tty_output_coding_system):
8099         Force redrawing tty frame.
8100
8101 2000-01-10  Didier Verna  <didier@xemacs.org>
8102
8103         * redisplay.c (generate_fstring_runes): fix size computation bug.
8104
8105 2000-01-09  William M. Perry <wmperry@aventail.com>
8106
8107         * gpmevent.c: (gpm_next_event_cb): Don't return value from void function.
8108
8109 2000-01-09  Andy Piper  <andy@xemacs.org>
8110
8111         * glyphs-msw.c: index -> i to avoid shadows.
8112         (xbm_create_bitmap_from_data): make static.
8113         (check_valid_string_or_int): deleted.
8114         (mswindows_control_wnd_proc): message -> msg to avoid shadows.
8115
8116         * glyphs-x.c (x_update_subwindow): remove unused args.
8117
8118         * glyphs.c (glyph_image_instance): return the thing. Don't set the
8119         back pointer - this is done in allocate_image_instance.
8120         (query_string_font): return Qnil to make the compiler happy.
8121         (unmap_subwindow): set to ~0 to make the compiler happy.
8122         (glyph_query_geometry): comment out until used.
8123         (glyph_layout): ditto.
8124
8125 2000-01-09  Hrvoje Niksic  <hniksic@iskon.hr>
8126
8127         * insdel.c (signal_after_change): Remove extraneous unbind_to().