XEmacs 21.4.19 (Constant Variable).
[chise/xemacs-chise.git.1] / src / ChangeLog
1 2006-01-28  Vin Shelton  <acs@xemacs.org>
2
3         * XEmacs 21.4.19 is released
4
5 2006-01-20  Rick Rankin <rrankin1424-xemacs@yahoo.com>
6
7         * sysdir.h: Workaround missing d_ino field from 'struct dirent'.
8
9 2005-12-24  Aidan Kehoe  <kehoea@parhasard.net>
10
11         * objects-gtk.c (MAX_FONT_COUNT): Increase MAX_FONT_COUNT from
12         5000 to INT_MAX.
13
14 2005-12-05  Dr. Volker Zell  <Dr.Volker.Zell@oracle.com>
15
16         * database.c: Suppress compiler warning under Cygwin.
17         * database.c: Removed __FreeBSD__ check, should be handled by
18         HAVE_U_xxx_T defines.
19
20 2005-12-18  Malcolm Purvis  <malcolmp@xemacs.org>
21
22         * console.c (stuff_buffered_input): Compile body only if
23         HAVE_TTY.
24
25 2005-05-10  Aidan Kehoe  <kehoea@parhasard.net>
26
27         * callproc.c: #include sysdir.h, so that any appropriate Mule
28         magic happens with the chdir() call when calling a subprocess. 
29
30 2005-12-06  Aidan Kehoe  <kehoea@parhasard.net>
31
32         * mule-ccl.c (POSSIBLE_LEADING_BYTE_P): Add.
33         * mule-ccl.c: Check that a character set exists before using it
34         to create a character. 
35
36 2005-12-06  Vin Shelton  <acs@xemacs.org>
37
38         * objects-x.c (MAX_FONT_COUNT): Increase MAX_FONT_COUNT from 5000
39         to INT_MAX.
40
41 2005-12-03  Vin Shelton <acs@xemacs.org>
42
43         * XEmacs 21.4.18 is released
44
45 2005-11-27  Kean Johnston <kean@armory.com>
46
47         * redisplay-tty.c (set_tty_modes):
48         (reset_tty_modes): disable auto-margins if the terminal supports
49         them.
50         (init_tty_for_redisplay): fix cursor shape.
51
52 2005-04-05  Aidan Kehoe  <kehoea@parhasard.net>
53
54         * mule-ccl.c (ccl_driver): Calculate the charset and position code
55         for control-1 characters properly, both when reading multibyte
56         characters and writing them. 
57
58 2005-03-12  Aidan Kehoe  <kehoea@parhasard.net>
59
60         * config.h.in: Make HAVE_XTREGISTERDRAWABLE available. 
61         * select-x.c (x_reply_selection_request): Use it; fix the bug we
62         were seeing with incremental selection transfer failing. 
63
64 2005-11-26  Vin Shelton  <acs@xemacs.org>
65
66         * callproc.c (Fold_call_process_internal): Create the buffer if it
67         does not already exist.  The original patch came from Ben Wing in
68         http://list-archive.xemacs.org/xemacs-patches/200205/msg00117.html
69
70 2002-05-13  Adrian Aichner  <adrian@xemacs.org>
71
72         * callproc.c: Process-related docstring improvements spurred by
73         Norbert Koch.
74
75 2005-11-25  Vin Shelton  <acs@xemacs.org>
76
77         * depend: Regenerated.
78
79 2005-07-11  Malcolm Purvis  <malcolmp@xemacs.org>
80
81         * glyphs-gtk.c:  Rename a local static variable because gcc 4.0
82         says it clashes with a global with the same name.
83
84 2005-07-11  Atanu Ghosh <atanu@icsi.berkeley.edu>
85
86         * sysdll.c (dll_open): Under MacOS X return NULL under the
87         filename is NULL.  Fixes problems finding local symbols under 10.4
88         (Tiger)
89
90 2005-11-15  Dr. Volker Zell  <Dr.Volker.Zell@oracle.com>
91         
92         * config.h.in: New HAVE_U_INT*_T defines.
93         
94         * database.c: Only use u_int*_t typedefs if not already
95         defined.
96
97 2005-04-07 15:08  Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
98
99         * src/process-unix.c (unix_open_network_stream): moved
100           'portbuf' buffer out of an inner block as it is used in the
101           entire function. With gcc4, the stack may get corrupted
102           after leaving this block. This patches adjusts the size of
103           the used buffer also; static '128' bytes are far too much
104           currently and might not suffice for future architectures
105           (e.g. for 512 bit ones ;)). Instead of, use only the really
106           required space (max octets * ln(256)/ln(10) chars + space
107           for '\0' and the sign)
108
109 2005-04-08  Aidan Kehoe  <kehoea@parhasard.net>
110
111         * callproc.c: Include sysdir.h, so any necessary Mule processing
112         is done on the current directory name before starting a new
113         process.
114
115 2005-04-06  Stephen J. Turnbull  <stephen@xemacs.org>
116
117         * chartab.c (Fchar_table_p):
118         (Fget_range_char_table):
119         (Fput_char_table):
120         (Fmap_char_table):
121         Describe range representation and fix typo.
122
123 2005-02-12  Vin Shelton  <acs@xemacs.org>
124
125         * emacs.c (shut_down_emacs): Advise users to send email to the
126         xemacs-beta list instead of crashes@xemacs.org.
127
128 2005-02-03  David Evers  <extsw@appliedgenerics.com>
129
130         * process-unix.c (unix_send_process): Flush the last chunk, even
131         when the pipe is blocked.
132
133 2005-02-06  Vin Shelton <acs@xemacs.org>
134
135         * XEmacs 21.4.17 is released
136
137 2005-01-31  Ben Wing  <ben@xemacs.org>
138
139         * emacs.c:
140         Define assert_failed() always.
141         * lisp.h:
142         Always define ABORT().
143
144 2005-01-25  Ben Wing  <ben@xemacs.org>
145
146         * Makefile.in.in:
147         * Makefile.in.in (%.o):
148         Don't compile executable as Windows (-mwindows) under Cygwin.
149         Semi-recent changes to Cygwin's executable-startup handling make
150         it impossible to access the TTY this way.
151
152         Don't use special linker file under Cygwin (cygwin.sc) except
153         when non-PDUMP (even in this case it is highly questionable); you
154         get errors like
155
156       1 [main] temacs 1364 fhandler_console::fixup_after_exec: error opening input console handle after exec, errno 13, Win32 error 5
157    5820 [main] temacs 1364 fhandler_console::fixup_after_exec: error opening output console handle after exec, errno 13, Win32 error 5
158
159 2005-01-29  Ben Wing  <ben@xemacs.org>
160
161         Port this: 2003-08-14  Stephen J. Turnbull  <stephen@xemacs.org>
162
163         * mule-charset.c (get_unallocated_leading_byte): Compiler quietus.
164
165 2005-01-29  Ben Wing  <ben@xemacs.org>
166
167         * bytecode.c (optimize_compiled_function):
168         * print.c (FROB):
169         * print.c (long_to_string):
170         Add casts to avoid warning.
171         
172         * glyphs-eimage.c:
173         Some really nasty hacks to allow TIFF and JPEG to both be compiled.
174         #### The better solution is to move the TIFF and JPEG code to
175         different files.
176         
177         * glyphs-msw.c (mswindows_xbm_instantiate):
178         Define __STDC__ to avoid problems with compface.h.
179         
180         * EmacsFrame.c (EmacsFrameRecomputeCellSize):
181         * EmacsShell-sub.c:
182         * EmacsShell-sub.c (ABORT):
183         * EmacsShell-sub.c (SuperClassRootGeometryManager):
184         * EmacsShell-sub.c (RootGeometryManager):
185         * EmacsShell.c:
186         * EmacsShell.c (ABORT):
187         * EmacsShell.c (EmacsShellUpdateSizeHints):
188         * alloc.c (free_lcrecord):
189         * alloca.c (i00afunc):
190         * buffer.c (delete_from_buffer_alist):
191         * buffer.c (MARKED_SLOT):
192         * bytecode.c (execute_rare_opcode):
193         * bytecode.c (optimize_byte_code):
194         * bytecode.c (Ffetch_bytecode):
195         * chartab.c (char_table_type_to_symbol):
196         * chartab.c (Freset_char_table):
197         * chartab.c (decode_char_table_range):
198         * chartab.c (Fget_range_char_table):
199         * chartab.c (check_valid_char_table_value):
200         * chartab.c (map_char_table):
201         * chartab.c (slow_map_char_table_fun):
202         * chartab.c (chartab_instantiate):
203         * cm.c (cmcheckmagic):
204         * console-msw.c (DHEADER):
205         * console.c (MARKED_SLOT):
206         * data.c (finish_marking_weak_lists):
207         * data.c (encode_weak_list_type):
208         * debug.h (DASSERT):
209         * device-gtk.c (gtk_init_device):
210         * device-msw.c (mswindows_get_default_margin):
211         * device-tty.c (tty_init_device):
212         * device-x.c (get_device_from_display):
213         * device-x.c (x_get_visual_depth):
214         * doprnt.c (parse_doprnt_spec):
215         * doprnt.c (get_doprnt_args):
216         * dumper.c (pdump_get_indirect_count):
217         * dumper.c (pdump_register_sub):
218         * dumper.c (pdump_register_object):
219         * dumper.c (pdump_register_struct):
220         * dumper.c (pdump_dump_data):
221         * dumper.c (pdump_reloc_one):
222         * elhash.c (print_hash_table):
223         * elhash.c (make_standard_lisp_hash_table):
224         * elhash.c (hash_table_instantiate):
225         * emacs.c:
226         * emacs.c (Fforce_debugging_signal):
227         * emacs.c (sort_args):
228         * emacs.c (main):
229         * emacs.c (assert_failed):
230         * eval.c (throw_or_bomb_out):
231         * eval.c (signal_1):
232         * eval.c (Fsignal):
233         * event-Xt.c:
234         * event-Xt.c (emacs_Xt_mapping_action):
235         * event-Xt.c (Xt_process_to_emacs_event):
236         * event-msw.c:
237         * event-stream.c (check_event_stream_ok):
238         * event-stream.c (Fadd_timeout):
239         * event-stream.c (Fadd_async_timeout):
240         * event-stream.c (Fdiscard_input):
241         * event-stream.c (execute_internal_event):
242         * event-stream.c (Frecent_keys):
243         * event-stream.c (extract_this_command_keys_nth_mouse_event):
244         * event-stream.c (lookup_command_event):
245         * event-unixoid.c (poll_fds_for_input):
246         * events.c:
247         * events.c (mark_event):
248         * events.c (event_equal):
249         * events.c (event_hash):
250         * events.c (Fmake_event):
251         * events.c (Fdeallocate_event):
252         * events.c (event_chain_find_previous):
253         * events.c (event_to_character):
254         * events.c (format_event_object):
255         * events.c (Fevent_type):
256         * events.c (event_pixel_translation):
257         * events.c (Fevent_properties):
258         * extents.c (extent_in_region_p):
259         * extents.c (print_extent):
260         * extents.c (process_extents_for_insertion_mapper):
261         * extents.c (report_extent_modification_mapper):
262         * extents.c (glyph_layout_to_symbol):
263         * faces.c (face_validate):
264         * file-coding.c (eol_type_to_symbol):
265         * file-coding.c (subsidiary_coding_system):
266         * file-coding.c (Fcoding_system_type):
267         * file-coding.c (Fcoding_system_property):
268         * file-coding.c (mule_decode):
269         * file-coding.c (mule_encode):
270         * file-coding.c (encode_coding_ucs4):
271         * file-coding.c (encode_coding_utf8):
272         * file-coding.c (parse_iso2022_esc):
273         * file-coding.c (encode_coding_iso2022):
274         * fileio.c:
275         * fns.c (concat):
276         * fns.c (Fsubseq):
277         * fns.c (mapcar1):
278         * fns.c (Fbase64_encode_region):
279         * fns.c (Fbase64_encode_string):
280         * fns.c (Fbase64_decode_region):
281         * fns.c (Fbase64_decode_string):
282         * font-lock.c (find_context):
283         * font-lock.c (context_to_symbol):
284         * frame-gtk.c (gtk_set_frame_pointer):
285         * frame-gtk.c (gtk_update_frame_external_traits):
286         * frame-x.c (x_wm_mark_shell_size_user_specified):
287         * frame-x.c (x_wm_mark_shell_position_user_specified):
288         * frame-x.c (x_wm_set_shell_iconic_p):
289         * frame-x.c (x_wm_set_cell_size):
290         * frame-x.c (x_wm_set_variable_size):
291         * frame-x.c (x_wm_store_class_hints):
292         * frame-x.c (x_wm_maybe_store_wm_command):
293         * frame-x.c (x_initialize_frame_size):
294         * frame-x.c (x_update_frame_external_traits):
295         * frame.c:
296         * frame.c (delete_frame_internal):
297         * frame.c (mouse_pixel_position_1):
298         * frame.c (change_frame_size_1):
299         * free-hook.c (check_free):
300         * free-hook.c (check_realloc):
301         * free-hook.c (note_block_input):
302         * free-hook.c (log_gcpro):
303         * gccache-gtk.c (gc_cache_lookup):
304         * glyphs-eimage.c (tiff_memory_write):
305         * glyphs-gtk.c (gtk_finalize_image_instance):
306         * glyphs-gtk.c (init_image_instance_from_gdk_pixmap):
307         * glyphs-gtk.c (init_image_instance_from_xbm_inline):
308         * glyphs-gtk.c (gtk_xpm_instantiate):
309         * glyphs-gtk.c (gtk_unmap_subwindow):
310         * glyphs-gtk.c (gtk_map_subwindow):
311         * glyphs-gtk.c (gtk_button_redisplay):
312         * glyphs-msw.c:
313         * glyphs-msw.c (init_image_instance_from_xbm_inline):
314         * glyphs-x.c (init_image_instance_from_xbm_inline):
315         * glyphs-x.c (extract_xpm_color_names):
316         * glyphs-x.c (x_xpm_instantiate):
317         * glyphs.c (get_image_instantiator_governing_domain):
318         * glyphs.c (print_image_instance):
319         * glyphs.c (image_instance_equal):
320         * glyphs.c (image_instance_hash):
321         * glyphs.c (encode_image_instance_type):
322         * glyphs.c (make_image_instance_1):
323         * glyphs.c (inherit_instantiate):
324         * glyphs.c (image_instantiate):
325         * glyphs.c (allocate_glyph):
326         * glyphs.c (Fglyph_type):
327         * glyphs.c (redisplay_subwindow):
328         * glyphs.c (display_table_entry):
329         * gtk-glue.c (xemacs_list_to_gtklist):
330         * gtk-glue.c (xemacs_gtklist_to_list):
331         * gtk-glue.c (xemacs_list_to_array):
332         * gutter.c (SET_GUTTER_WAS_VISIBLE_FLAG):
333         * gutter.c (gutter_was_visible):
334         * gutter.c (get_gutter_coords):
335         * input-method-xlib.c (get_XIM_input):
336         * insdel.c (bufpos_to_bytind_func):
337         * insdel.c (bytind_to_bufpos_func):
338         * insdel.c (move_gap):
339         * intl.c (x_get_composed_input):
340         * keymap.c (keymap_lookup_directly):
341         * keymap.c (keymap_delete_inverse_internal):
342         * keymap.c (ensure_meta_prefix_char_keymapp):
343         * keymap.c (accessible_keymaps_mapper_1):
344         * keymap.c (where_is_recursive_mapper):
345         * lisp.h:
346         * lisp.h (ABORT):
347         * lread.c (read_atom):
348         * lstream.c (Lstream_delete):
349         * lstream.c (make_lisp_buffer_stream_1):
350         * macros.c (pop_kbd_macro_event):
351         * malloc.c (malloc):
352         * malloc.c (free):
353         * marker.c (bi_marker_position):
354         * marker.c (set_bi_marker_position):
355         * menubar-gtk.c (menu_descriptor_to_widget_1):
356         * menubar-msw.c (prune_menubar):
357         * menubar-x.c (set_frame_menubar):
358         * mule-charset.c (get_unallocated_leading_byte):
359         * mule-charset.h (CHAR_LEADING_BYTE):
360         * native-gtk-toolbar.c (SET_TOOLBAR_WAS_VISIBLE_FLAG):
361         * nt.c (init_environment):
362         * nt.c (generate_inode_val):
363         * ntproc.c (delete_child):
364         * ntproc.c (_sys_read_ahead):
365         * ntproc.c (create_child):
366         * objects.c (color_instantiate):
367         * objects.c (font_instantiate):
368         * objects.c (face_boolean_instantiate):
369         * print.c (printing_major_badness):
370         * process-nt.c (nt_send_process):
371         * process-unix.c (unix_send_process):
372         * process.c (get_process):
373         * ralloc.c (obtain):
374         * ralloc.c (relinquish):
375         * ralloc.c (relocate_blocs):
376         * ralloc.c (resize_bloc):
377         * ralloc.c (r_alloc_free):
378         * ralloc.c (r_re_alloc):
379         * ralloc.c (r_alloc_thaw):
380         * ralloc.c (init_ralloc):
381         * ralloc.c (Free_Addr_Block):
382         * ralloc.c (r_alloc):
383         * redisplay-gtk.c (gtk_output_display_block):
384         * redisplay-msw.c (mswindows_output_display_block):
385         * redisplay-output.c (get_next_display_block):
386         * redisplay-output.c (get_cursor_size_and_location):
387         * redisplay-output.c (redisplay_output_layout):
388         * redisplay-output.c (redisplay_clear_region):
389         * redisplay-tty.c (tty_output_display_block):
390         * redisplay-x.c (x_output_display_block):
391         * redisplay.c (add_propagation_runes):
392         * redisplay.c (add_glyph_rune):
393         * redisplay.c (create_text_block):
394         * redisplay.c (add_margin_runes):
395         * redisplay.c (create_left_glyph_block):
396         * redisplay.c (create_right_glyph_block):
397         * redisplay.c (create_string_text_block):
398         * redisplay.c (regenerate_window):
399         * redisplay.c (REGEN_INC_FIND_START_END):
400         * redisplay.c (redisplay_frame):
401         * redisplay.c (point_in_line_start_cache):
402         * regex.c:
403         * regex.c (ABORT):
404         * regex.c (re_compile_fastmap):
405         * regex.c (re_match_2_internal):
406         * regex.c (regerror):
407         * scrollbar-gtk.c (gtk_scrollbar_loop):
408         * scrollbar-gtk.c (scrollbar_cb):
409         * scrollbar-gtk.c (gtk_update_frame_scrollbars):
410         * scrollbar-msw.c (mswindows_handle_scrollbar_event):
411         * scrollbar-x.c (x_update_scrollbar_instance_status):
412         * scrollbar-x.c (x_scrollbar_loop):
413         * scrollbar-x.c (x_update_frame_scrollbars):
414         * search.c (search_command):
415         * search.c (Fmatch_data):
416         * select-x.c (motif_clipboard_cb):
417         * signal.c (interrupt_signal):
418         * specifier.c (specifier_add_spec):
419         * specifier.c (specifier_instance_from_inst_list):
420         * specifier.c (specifier_instance):
421         * specifier.h:
422         * specifier.h (struct specifier_methods):
423         * strftime.c (add_num_time_t):
424         * sunplay.c (init_device):
425         * symbols.c (Fsetplist):
426         * symbols.c (do_symval_forwarding):
427         * symbols.c (store_symval_forwarding):
428         * symbols.c (Fset):
429         * symbols.c (Fbuilt_in_variable_type):
430         * symbols.c (decode_magic_handler_type):
431         * symbols.c (handler_type_from_function_symbol):
432         * syntax.c (update_syntax_cache):
433         * sysdep.c (init_baud_rate):
434         * toolbar-gtk.c (SET_TOOLBAR_WAS_VISIBLE_FLAG):
435         * toolbar-msw.c (SET_TOOLBAR_WAS_VISIBLE_FLAG):
436         * toolbar-x.c (SET_TOOLBAR_WAS_VISIBLE_FLAG):
437         * toolbar.c (get_toolbar_coords):
438         * ui-gtk.c (build_gtk_boxed):
439         * ui-gtk.c (describe_gtk_arg):
440         * ui-gtk.c (gtk_type_to_lisp):
441         * ui-gtk.c (lisp_to_gtk_type):
442         * ui-gtk.c (lisp_to_gtk_ret_type):
443         * ui-gtk.c (lisp_to_flag):
444         * unexnt.c (read_in_bss):
445         * unexnt.c (map_in_heap):
446         * window.c (real_window):
447         * window.c (window_display_lines):
448         * window.c (window_display_buffer):
449         * window.c (set_window_display_buffer):
450         * window.c (window_modeline_height):
451         * window.c (unshow_buffer):
452         * window.c (window_loop):
453         * window.c (Fget_lru_window):
454         * window.c (Fsplit_window):
455         * window.c (Fset_window_configuration):
456         * window.c (saved_window_index):
457         * xgccache.c (gc_cache_lookup):
458         abort() -> ABORT().  Eliminate preprocessor games with abort()
459         since it creates huge problems in VC7, solvable only by including
460         massive amounts of files in every compile (and not worth it).
461
462         * sysdep.c:
463         * sysproc.h:
464         Inclusion of process.h does not need to be before lisp.h any more.
465         Move later and remove comment about abort().
466
467 2005-01-26  Arnaud Giersch  <arnaud.giersch@free.fr>
468
469         * regex.c (re_match_2_internal):
470         Correctly initialize loop which clears uninitialized registers.
471
472 2005-01-28  Vin Shelton  <acs@xemacs.org>
473
474         * sheap.c (more_static_core): Applied Ben's version of the long
475         string patch.
476
477 2005-01-24  Vin Shelton  <acs@xemacs.org>
478
479         * sheap.c (more_static_core): Reformatted printf string so
480         gcc-3.3.3 will compile this on Cygwin.
481
482 2004-02-22  Stephen J. Turnbull  <stephen@xemacs.org>
483
484         * console.c (function_key_map): Reference `key-binding'.
485
486         * keymap.c (Vkey_translation_map): Improve docstring.
487
488 2004-03-30  Zajcev Evgeny  <zevlg@yandex.ru>
489
490         * window.c: Declare `allow_deletion_of_last_visible_frame' extern.
491         * window.c (window_loop): [fix] Take into account
492         `allow-deletion-of-last-visible-frame' variable.
493         * window.c (replace-buffer-in-windows): Ditto.
494
495 2004-12-15  Stephen J. Turnbull  <stephen@xemacs.org>
496
497         * EmacsManager.c (EmacsManagerChangeSize): Respect XtGeometryNo.
498
499 2005-01-20  Malcolm Purvis  <malcolmp@xemacs.org>
500
501         * event-gtk.c: Recognise AltGr as a valid modifier.
502
503 2005-01-12  Ville Skyttä  <scop@xemacs.org>
504
505         * console-x.h: #include X11/keysym.h before xintrinsic.h.
506
507 2005-01-13  Stephen J. Turnbull  <stephen@xemacs.org>
508
509         Fix backreference bug caught by test suite.
510
511         * regex.c (regex_compile):
512         Make backref duplicate internal register.
513
514 2005-01-13  Stephen J. Turnbull  <stephen@xemacs.org>
515
516         Documentation, code clarification, and warning suppression.
517         
518         * regex.c (regex_compile):
519         Improve comments.
520         (re_match_2_internal):
521         Improve comments and avoid redundant braces.  [Most of the big hunk
522         at l. 4710 is indentation; use diff -w to see the real changes.]
523         (alt_match_null_string_p):
524         (common_op_match_null_string_p):
525         Avoid shadowing global on Mac OS X 10.4, at least.
526
527 2004-09-08  Stephen J. Turnbull  <stephen@xemacs.org>
528
529         * regex.c (regcomp): Fix "unsigned comparison" warning (maybe
530         introduced with shy groups fix).  [Already applied, probably
531         with the second "fix shy groups" patch of 2004-10-07.] 
532
533 2005-01-10  Steve Youngs  <steve@sxemacs.org>
534
535         From Andrey Slusar <anrays@gmail.com>:
536
537         * unexelf.c: define `Elfw(type)' for FreeBSD alpha and amd64.
538
539 2004-11-21  Malcolm Purvis  <malcolmp@xemacs.org>
540
541         * Makefile (RECURSIVE_MAKE): Removed.
542         * Makefile (RECURSIVE_MAKE_ARGS): New.  The new method for
543         handling parallel builds.
544
545 2004-09-08  Malcolm Purvis  <malcolmp@xemacs.org>
546
547         * Makefile.in.in: Enable support for parallel builds.
548
549 2005-01-09  Steve Youngs  <steve@sxemacs.org>
550
551         From Andrey Slusar <anrays@gmail.com>:
552
553         * s/freebsd.h (LIBS_SYSTEM): Only set to "-lutil -lxpg4" if
554         FreeBSD version is >= 199701 _and_ < 600006.
555
556 2005-01-06  Zajcev Evgeny <zevlg@yandex.ru>
557
558         * scrollbar.c (compute_scrollbar_instance_usage):
559         Only call device method compute_scrollbar_instance_usage() if it
560         is defined.
561
562 2004-12-05  Vin Shelton <acs@xemacs.org>
563
564         * XEmacs 21.4.16 is released
565
566 2004-12-04  Vin Shelton  <acs@xemacs.org>
567
568         * depend: Regenerated.
569
570 2004-10-07  Stephen J. Turnbull  <stephen@xemacs.org>
571
572         * regex.c (re_match_2_internal): Map internal to external
573         registers.  Fixes bug identified by Steve Youngs 2004-09-30
574         <microsoft-free.87ekkjhj7t.fsf@youngs.au.com>.
575
576 2004-09-02  Yoshiki Hayashi  <yoshiki@xemacs.org>
577
578         * buffer.c (Frecord_buffer): Make sure the argument is buffer
579         to fix a crash.  Also, check the buffer is live and it
580         really exists in buffer_list.  If the buffer is not in the list,
581         prepend it.
582
583 2004-09-08  Stephen J. Turnbull  <stephen@xemacs.org>
584
585         Fix shy groups by implementing recording of all groups for
586         repetition and backtracking.  Backport from 21.5.
587         
588         * regex.h (struct re_pattern_buffer): Add members re_ngroups,
589         external_to_internal_register, external_to_internal_register_size,
590         and update comments for re_nsub.
591
592         * regex.c (re_opcode_t): Update comments.
593         (print_compiled_pattern): Ouput external_to_internal_register,
594         external_to_internal_register_size, and re_ngroups for debugging.
595         (INIT_REG_TRANSLATE_SIZE): New manifest constant.
596         (regex_compile): Update header comment.
597         Ensure that all groups are recorded so that repeat matches and
598         backtracking work correctly.  Comment related warning for groups >
599         255.
600         (re_search_2): Construct map of API indexes (which count only
601         nonshy groups) to internal register numbers, and keep it updated.
602
603 2004-07-27  Malcolm Purvis  <malcolmp@xemacs.org>
604
605         * frame-gtk.c (gtk_make_frame_visible):
606         * frame-gtk.c (gtk_make_frame_invisible): Use map/unmap instead of
607         show/hide.  This is what X uses and is prevents previously hidden
608         widgets from suddenly reappearing.
609         * gtk-xemacs.c (gtk_xemacs_paint):
610         * gtk-xemacs.c (gtk_xemacs_draw):
611         * gtk-xemacs.c (gtk_xemacs_expose): Only operate if the widget is
612         drawable.
613         * scrollbar-gtk.c (gtk_update_scrollbar_instance_status): Force
614         size and location changes so that they can be seen before the next
615         idle event.  Without this rapid changes to scrollbar properties
616         are not seen.
617
618 2004-07-02  Malcolm Purvis  <malcolmp@xemacs.org>
619
620         * console-gtk.h:
621         * console-gtk.h (struct gtk_frame):
622         * console-gtk.h (FRAME_GTK_WIDGET_INSTANCE_HASH_TABLE):
623           Add hash tables track tab_control callback data.
624           Added #defines for GTK object data names.
625           Declaration of gtk_widget_to_frame().
626         * event-gtk.c (enqueue_gtk_dispatch_event) No longer static:
627         * frame-gtk.c (gtk_widget_to_frame): New.
628         * frame-gtk.c (gtk_create_widgets):
629         * frame-gtk.c (allocate_gtk_frame_struct):
630         * frame-gtk.c (gtk_mark_frame):
631         Manage frame callbakc hash tables.
632         * glyphs-gtk.c (gtk_map_subwindow): Fix size and moving bugs.
633         * glyphs-gtk.c (gtk_redisplay_widget): Use correct size for widgets.
634         * glyphs-gtk.c (gtk_widget_instantiate_1): Force reconsideration
635         of widget size.
636         * glyphs-gtk.c (gtk_widget_query_geometry): New
637         * glyphs-gtk.c (gtk_register_gui_item): New
638         * glyphs-gtk.c (gtk_add_tab_item): New
639         * glyphs-gtk.c (gtk_tab_control_callback): New
640         * glyphs-gtk.c (gtk_tab_control_instantiate): New
641         * glyphs-gtk.c (gtk_tab_control_redisplay): Set notebook page.
642         Use correct list when loading item.
643         * glyphs-gtk.c (image_instantiator_format_create_glyphs_gtk):
644         Register new methods.
645         * gtk-xemacs.c (gtk_xemacs_size_allocate): Use XEmacs size, not
646         default size, for widgets.
647         * gui-x.c:  Improved comment.
648         * menubar-gtk.c (__generic_button_callback): Use
649         gtk_widget_to_frame instead of __get_channel.
650         * scrollbar-gtk.c:
651         * ui-gtk.c: Use symbolic names for GTK object data.
652
653 2004-06-23  Ilya N. Golubev <gin@mo.msk.ru>
654
655         * s/usg5-4.h (NSIG): Define only inside emacs binary.
656
657 2002-03-04  Stephen J. Turnbull  <stephen@xemacs.org>
658
659         * fileio.c (Fwrite_region_internal): Document use of start == Qnil.
660
661 2004-06-16  Malcolm Purvis  <malcolmp@xemacs.org>
662
663         * malloc.c (morecore): siz is a long because in some architectures
664         (eg ia-64) an int cannot hold the address range.  Additional patch
665         from the SuSe distribution.
666
667 2004-06-13  Malcolm Purvis  <malcolmp@xemacs.org>
668
669         * emacs.c:
670         * malloc.c: lim_data is a long because in some architectures
671         (eg ia-64) an int cannot hold the address range.
672         * mem-limits.h: lim-data is a long.  Linux uses getrlimit()
673         instead of ulimit() because ulimit() always returns -1.
674
675 2004-06-09  Stephen J. Turnbull  <stephen@xemacs.org>
676
677         * search.c: Reenable an ansync semaphore.  Remove bogus comments.
678
679 2004-06-11  David Kastrup  <dak@gnu.org>
680
681         * search.c (match_limit): Don't flag an error if match-data
682         exceeding the allocated search_regs.num_regs gets requested, just
683         return Qnil.
684
685 2003-07-21  Malcolm Purvis  <malcolmpurvis@optushome.com.au>
686
687         * glyphs-gtk.c (gtk_xpm_instantiate): Rewrite the XPM data to
688         replace symbolic color entries with the real colors specified in
689         xpm-color-symbols, before passing the XPM to gtk.
690         * glyphs-gtk.h: Use the generic pixmap_image_instance.mask for masks,
691         instead of a GTK specific field, so that it is used in by generic
692         code.
693
694 2004-05-05  Chuck Hines <chuck.hines@baesystems.com>
695
696        * dgif_lib.c (DGifSlurp): Changed do-while to while to stop
697         coredump from deref of NULL ptr (ExtData)
698
699 2004-04-19  Jerry James  <james@xemacs.org>
700
701         * data.c (sign_extend_lisp_int): Use INT_VALBITS instead of
702         VALBITS to compute the location of the sign bit.
703         * event-stream.c (Fcurrent_event_timestamp): Replace incorrect use
704         of VALBITS with EMACS_INT_MAX.
705         * events.c (Fevent_timestamp): Ditto.
706         * events.c (TIMESTAMP_HALFSPACE): Change VALBITS to INT_VALBITS to
707         compute the halfway point to timestamp wraparound.
708         * floatfns.c (float_to_int): Compare against EMACS_INT_MAX and
709         EMACS_INT_MIN instead of using VALBITS.
710         * floatfns.c (Flogb): Use EMACS_INT_MIN instead of building an
711         incorrect number with VALBITS.
712         * fns.c (Frandom): Correct number of integer bits in docstring.
713         Use INT_VALBITS instead of VALBITS to compute the denominator.
714         * sysdep.c (get_random): Use INT_VALBITS instead of VALBITS to
715         build random numbers.
716
717 2004-03-23  Malcolm Purvis  <malcolmpurvis@optushome.com.au>
718         * event-gtk.c:
719         * event-gtk.c (gtk_event_to_emacs_event):
720         * menubar-gtk.c:
721         * menubar-gtk.c (gtk_xemacs_menubar_class_init):
722         * menubar-gtk.c (gtk_xemacs_menubar_size_request):
723         * menubar-gtk.c (gtk_xemacs_accel_label_get_type):
724         * menubar-gtk.c (gtk_xemacs_set_accel_keys):
725         * menubar-gtk.c (__activate_menu):
726         * menubar-gtk.c (convert_underscores):
727         * menubar-gtk.c (remove_underscores):
728         * menubar-gtk.c (menu_convert):
729         * menubar-gtk.c (menu_descriptor_to_widget_1):
730         * menubar-gtk.c (menu_descriptor_to_widget):
731         * menubar-gtk.c (menu_can_reuse_widget):
732         * menubar-gtk.c (menu_create_menubar):
733         * menubar-gtk.c (gtk_popup_menu):
734         * menubar-gtk.c (Fgtk_build_xemacs_menu):
735         Added support for Gtk menu bar and menu item mnemonics.
736
737 2004-03-23  Malcolm Purvis  <malcolmpurvis@optushome.com.au>
738
739         * sysdll.c: (dll_function): Added support for finding symbols in
740         Darwin shared libraries as well in Darwin bundles.
741         * sysdll.c (image_for_address): New
742         * sysdll.c (my_find_image): New
743         * sysdll.c (search_linked_libs): New
744
745 2004-03-23  Malcolm Purvis  <malcolmpurvis@optushome.com.au>
746
747         * ui-gtk.c (__internal_callback_marshal): Marshalling data to
748         return to GTK requires a different API to marshalling data to use
749         as GTK parameters.
750         * ui-gtk.c (lisp_to_gtk_ret_type): New.
751
752 2004-03-08  Lutz Euler  <lutz.euler@freenet.de>
753
754         * lstream.c (Lstream_pseudo_close): Fix test for LSTREAM_FL_IS_OPEN.
755
756 2004-02-19  Stephen J. Turnbull  <stephen@xemacs.org>
757
758         * glyphs.c (process_image_string_instantiator):
759         (Fset_console_type_image_conversion_list):
760         Stop GCC from warning about shadowing of `exp'.
761
762         * redisplay-x.c (x_output_string): Fix unsigned lossage.
763
764 2004-02-19  Stephen J. Turnbull  <stephen@xemacs.org>
765
766         * regex.c (re_match_2_internal): Shut up GCC about syn1, syn2.
767
768 2004-02-03  Vin Shelton  <acs@xemacs.org>
769
770         * glyphs.c (image_instance_layout): Remove pointless assertion.
771         * regex.c (regex_grow_registers): Return type is void.
772
773 2004-02-02  Vin Shelton <acs@xemacs.org>
774
775         * XEmacs 21.4.15 is released
776
777 2004-01-30  Glynn Clements  <glynn.clements@virgin.net>
778
779         * device-x.c (x_error_handler): Don't call stderr_out
780
781 2003-11-07  Katsumi Yamaoka <yamaoka@jpl.org>
782
783         * buffer.c (other-buffer): Clarify documentation of order of
784         arguments for FSF Emacs.
785
786 2003-10-11  Olivier Galibert  <galibert@pobox.com>
787
788         * window.c (Fdelete_window): Dirty the mirror structure _before_
789         marking the window deleted.
790
791 2003-09-15  Jerry James  <james@xemacs.org>
792
793         * event-msw.c (debug_mswin_messages): Conditionally compile
794         messages missing from the Cygwin headers.
795
796 2003-06-16  Stephen J. Turnbull  <stephen@xemacs.org>
797
798         * data.c (eq_with_ebola_notice): Fix typo in comment.
799         (Ftrue_list_p): Improve docstring.
800
801 2003-10-13  Stephen J. Turnbull  <stephen@xemacs.org>
802
803         * frame-x.c (x_update_frame_external_traits): Fix XtSetArg idiom.
804
805 2003-09-27  Stephen J. Turnbull  <stephen@xemacs.org>
806
807         * search.c (trivial_regexp_p): Regexps containing "\{" are
808         nontrivial.  Thanks to Manfred Bartz for reporting the bug and
809         Stefan Monnier for suggesting a diagnosis.
810
811 2003-09-25  Stephen J. Turnbull  <stephen@xemacs.org>
812
813         * elhash.c (make-hash-table): Clarify use of :test #'equal.
814
815 2003-09-12  Stephen J. Turnbull  <stephen@xemacs.org>
816
817         * search.c (Fsearch_forward):
818         (Fsearch_backward):
819         Document negative count.
820
821 2003-09-13  Stephen J. Turnbull  <stephen@xemacs.org>
822
823         * regex.c (re_max_failures): Bump to 20000 for REGEX_MALLOC, too.
824
825 2003-09-13  Martin Buchholz  <martin@xemacs.org>
826
827         * s/sol2.h: Use OS_RELEASE=os_release_major*100+os_release_minor
828
829 2003-09-15  Vin Shelton  <acs@xemacs.org>
830
831         * .gdbinit (pobj): Remove Ilya's fix that was only intended for
832         21.5.
833
834 2003-09-12  Yoshiki Hayashi  <yoshiki@xemacs.org>
835
836         * regex.c (TRANSLATE_EXTENDED_UNSAFE): Remove.
837         (re_search_2): Match the first byte of Bufbyte, not Emchar.
838         (re_match_2_internal): Use TRANSLATE instead of
839         TRANSLATE_EXTENDED_UNSAFE.  The latter was a hack to bypass
840         non-ASCII char case conversion.
841
842 2003-09-08  Mike Sperber  <mike@xemacs.org>
843
844         * symbols.c (Fvariable_binding_locus): Add, as per suggestion from
845         RMS at: http://article.gmane.org/gmane.emacs.pretest.bugs/1010
846
847 2003-06-14  Ilya N. Golubev  <gin@mo.msk.ru>
848
849        * .gdbinit (pobj): fix printing of symbol name.
850
851 2003-08-01  Ilya N. Golubev  <gin@mo.msk.ru>
852
853         * frame-x.c (x_layout_widgets): When resizing is about to cause
854         frame size slip, mark it for redisplay.
855
856 2003-08-18  Jerry James  <james@xemacs.org>
857
858         * opaque.h: Remove unused (X)OPAQUE_MARKFUN definitions.
859
860 2003-09-03  Vin Shelton <acs@xemacs.org>
861
862         * XEmacs 21.4.14 is released
863
864 2003-08-15  Stephen J. Turnbull  <stephen@xemacs.org>
865
866         * config.h.in (REGEX_MALLOC): Make it configure'able.
867
868 2003-08-14  Andrew Begel  <abegel@CS.Berkeley.EDU>
869
870         * config.h.in: Add HAVE_DYLD to indicate Darwin/MacOSX dynamic
871         linking.
872         * sysdll.c (dll_init):
873         * sysdll.c (dll_open):
874         * sysdll.c (dll_close):
875         * sysdll.c (dll_function):
876         * sysdll.c (dll_variable):
877         * sysdll.c (dll_error):
878         Add support for loading bundles using Darwin/MacOSX
879         native API.
880
881 2003-08-12  Stephen J. Turnbull  <stephen@xemacs.org>
882
883         * process.c (start-process-internal): Document coding systems.
884
885 2003-07-30  Jerry James  <james@xemacs.org>
886
887         * sysdll.c: configure sets HAVE_DLD_INIT, not HAVE_INIT_DLD.
888
889 2003-07-31  René Kyllingstad  <listmailxemacs@kyllingstad.com>
890
891         * event-msw.c (mswindows_enqueue_mouse_button_event):
892         * event-msw.c (mswindows_wnd_proc):
893           enqueue button event when scrollwheel event isn't handled by 
894           mswindows_handle_mousewheel_event, such as when the scrollbars
895           are not showing.
896
897 2003-07-29  Stephen J. Turnbull  <stephen@xemacs.org>
898
899         * EmacsFrame.c (emacsFrameClassRec): Motif groks not XtCompress*.
900
901 2003-03-24  Stephen J. Turnbull  <stephen@xemacs.org>
902
903         * database.c (Fopen_database): Don't use DB_AUTO_COMMIT.
904
905 2003-03-21  Stephen J. Turnbull  <stephen@xemacs.org>
906
907         * regex.c (re_match_2_internal): Fix matching degenerate word
908         boundaries.
909
910 2003-05-25  XEmacs Build Bot <builds@cvs.xemacs.org>
911
912         * XEmacs 21.4.13 is released
913
914 2003-03-20  Stephen J. Turnbull  <stephen@xemacs.org>
915
916         * config.h.in (INTPTR_T_IN_CYGWIN_TYPES_H): 
917         * lisp.h (<inttypes.h>):
918         Cygwin defines these types in <cygwin/types.h>.  Don't duplicate
919         the definition.
920
921 2003-03-15  Martin Buchholz  <martin@xemacs.org>
922
923         * dumper.c (pdump_load): Pdump'ed XEmacs can't find its .dmp file.
924         Scenario: Prepend ~/bin to PATH; then `mkdir ~/bin/xemacs'
925         Result: "temacs can only be run in -batch mode."
926         Fix: Check xemacs executable candidate for directory-ness.
927
928 2003-03-03  Robert Pluim  <rpluim@bigfoot.com>
929
930         * database.c: Don't use the u_int8_t etc typedefs on FreeBSD,
931           they conflict with <sys/types.h>.
932
933 2003-02-14  Martin Buchholz  <martin@xemacs.org>
934
935         * database.c: Berkeley DB wants __STDC__ to be defined.
936
937 2003-02-13  Martin Buchholz  <martin@xemacs.org>
938
939         * EmacsFrame.c: Use symbolic name `NotUseful' in lieu of `0'.
940
941 2003-02-01  Martin Buchholz  <martin@xemacs.org>
942
943         * process-unix.c (unix_send_process): Fix C++ compile error.
944
945 2003-02-25  Andrew Begel  <abegel@cs.berkeley.edu>
946
947         * Added .dylib as an acceptable shared library file extension
948         * to support MacOSX.
949
950 2003-02-01  Martin Buchholz  <martin@xemacs.org>
951
952         * EmacsFrameP.h (EmacsFramePart):
953         Kludge to allow compiling with Motif1, but linking with Motif2.
954
955 2003-01-28  Martin Buchholz  <martin@xemacs.org>
956
957         * config.h.in (_ALL_SOURCE): Guard against multiple definition.
958
959
960 2003-02-23  Stephen J. Turnbull  <stephen@xemacs.org>
961
962         * config.h.in (DLSYM_NEEDS_UNDERSCORE): Define on darwin.
963
964 2003-02-06  Andrew Begel  <abegel@CS.Berkeley.EDU>
965
966         * sysdll.c: Included lisp.h to define needed alloca_array.
967
968 2003-02-13  Martin Buchholz  <martin@xemacs.org>
969
970         Make XEmacs redisplay 10 times faster.
971         If, that is, you're using a slow X connection and MoveOpaque.
972         Use compress_exposure = XtExposeCompressMaximal | XtExposeNoRegion.
973         Use compress_motion = TRUE.
974         * EmacsFrame.c (emacsFrameClassRec): 
975         * EmacsShell-sub.c (EMACS_SHELL_CLASS_REC):
976         * EmacsManager.c (emacsManagerClassRec):
977         * xintrinsicp.h: Make sure XtExposeNoRegion is defined.
978
979 2003-01-30  Vin Shelton  <acs@xemacs.org>
980
981         * s/linux.h (ORDINARY_LINK): define ORDINARY_LINK for linux.
982
983 2003-01-17  Stephen J. Turnbull  <stephen@xemacs.org>
984
985         * glyphs-eimage.c (tiff_memory_seek): Lobotomize unsigned typedef.
986         Patch by Martin Buchholz.
987
988 2003-01-16  Stephen J. Turnbull  <stephen@xemacs.org>
989
990         * glyphs-eimage.c (tiff_instantiate): Fix unsigned comparison.
991         Thanks to icc for warning and Martin Buchholz for reporting.
992
993 2003-01-29  Vin Shelton <acs@xemacs.org>
994
995         Patch courtesy of Andrew Begel <abegel@cs.berkeley.edu>
996
997         * dynarr.c (Dynarr_realloc): memcpy copies number of bytes, so
998         remember to multiply by the element size.
999
1000 2003-01-15  Stephen J. Turnbull  <stephen@xemacs.org>
1001
1002         * XEmacs 21.4.12 "Portable Code" is released.
1003
1004 2003-01-14  Sergey Okhapkin <sos@prospect.com.ru>
1005
1006         * Makefile.in.in (ldflags): re-order sections for gcc 3.2.
1007         * s/cygwin.sc: new linker file.
1008
1009 2003-01-14  Stephen J. Turnbull  <stephen@xemacs.org>
1010
1011         Build fixes courtesy Martin Buchholz <martin@xemacs.org>:
1012
1013         * redisplay-x.c (x_output_string): Use X11-specified types.
1014         * syntax.c, syntax.h (SYNTAX_CODE): Use enum syntaxcode, not int.
1015         * emacs.c (__free_hook): Use typeof with Intel compiler.
1016         * config.h.in (alloca.h): Quick safe hack to please Intel compiler.
1017
1018 2003-01-08  Andy Piper  <andy@xemacs.org>
1019
1020         * unexcw.c (copy_executable_and_dump_data_section): Set the stack
1021         reserve size during unexec().
1022
1023 2003-01-07  Daiki Ueno  <daiki@xemacs.org>
1024
1025         * process-unix.c (unix_create_process): Don't let outchannel block.
1026
1027 2003-01-05  Rick Rankin  <rick_rankin@yahoo.com>
1028
1029         * emacs.c: Include "syswindows.h" when compiling under Cygwin.
1030         Needed for IsBadReadPtr().
1031
1032 2003-01-03  Stephen J. Turnbull  <stephen@xemacs.org>
1033
1034         * XEmacs 21.4.11 "Native Windows TTY Support" is released.
1035
1036 2002-12-14  Ben Wing  <ben@xemacs.org>
1037
1038         * callint.c: Declaration error.
1039         * dumper.c (pdump):
1040         * dumper.c (pdump_load): Warning fix.
1041         * process.c: GCPRO error.
1042         * glyphs.c (unmap_subwindow):
1043         * glyphs.c (map_subwindow): Parenthesizing errors with ! and &&.
1044         * event-stream.c (maybe_kbd_translate): Wrong argument to
1045         character_to_event().
1046
1047         * alloc.c (garbage_collect_1):
1048         * emacs.c:
1049         * emacs.c (debug_can_access_memory):
1050         * emacs.c (fatal_error_signal):
1051         * emacs.c (mswindows_handle_hardware_exceptions):
1052         * emacs.c (main_1):
1053         * emacs.c (main):
1054         * emacs.c (assert_failed):
1055         * emacs.c (syms_of_emacs):
1056         * lisp.h:
1057         * print.c:
1058         * print.c (std_handle_out_va):
1059         * print.c (write_string_to_stdio_stream):
1060         * print.c (write_fmt_string):
1061         * print.c (printing_badness):
1062         * print.c (printing_major_badness):
1063         * print.c (print_internal):
1064         * print.c (debug_print_no_newline):
1065         * print.c (debug_backtrace):
1066         Be more defensive in handling bad values when printing.  Add code
1067         from trunk involving inhibit_non_essential_printing_operations.
1068         When going down or in debug_print(), don't do external conversion
1069         and such and try really, really hard when printing to avoid core
1070         dumping.  Add force-debugging-signal, debug_break().
1071
1072 2002-12-12  Stephen J. Turnbull  <stephen@xemacs.org>
1073
1074         * dumper.c (pdump_load): Include sysdep.h; retry with truename.
1075         Analysis and original patch by Vin Shelton <acs@xemacs.org>.
1076
1077 2002-12-02  Greg Allen  <greg_allen@westlb-systems.co.uk>
1078
1079         * database.c: Fix open_database. Berkeley DB API has changed in
1080         4.1. see: http://www.sleepycat.com/docs/ref/upgrade.4.1/fop.html
1081
1082 2002-11-26  Stephen J. Turnbull  <stephen@xemacs.org>
1083
1084         * specifier.c (Fvalid_specifier_type_p): Typo in comment.
1085
1086 2002-11-13  Stephen J. Turnbull  <stephen@xemacs.org>
1087
1088         * event-Xt.c (Xt_timeout):
1089         (Xt_timeout_callback):
1090         (emacs_Xt_add_timeout):
1091         (emacs_Xt_remove_timeout):
1092         (Xt_timeout_to_emacs_event):
1093         Turn completed_timeouts from a stack into a queue.  Fixes
1094         deadlocks <15829.21626.171573.994716@sinisa.nasamreza.org>.
1095
1096 2002-11-07  Wolfram Gloger  <wg@malloc.de>
1097
1098         * alloc.c (reinit_alloc_once_early): Disable mmap in Doug Lea malloc.
1099         * emacs.c (main): Assert that mmap'd allocation is disabled.
1100
1101 2002-10-14  Andy Piper  <andy@xemacs.org>
1102
1103         * glyphs-widget.c (layout_query_geometry): add in fiddle
1104         factor. Include border text in width layout calculation.
1105         (layout_layout): use BORDER_FIDDLE_FACTOR instead of 10.
1106
1107 2002-11-02  Stephen J. Turnbull  <stephen@xemacs.org>
1108
1109         * XEmacs 21.4.10 "Military Intelligence" is released.
1110
1111 2002-10-17  Raymond Toy  <toy@rtp.ericsson.se>
1112
1113         * nas.c: Update for NAS 1.6 and later, from Jon Trulson.  Was
1114         using the NAS private array SoundFileInfo that no longer exists in
1115         NAS 1.6 and later.  Preserve backward compatibility with NAS 1.5a
1116         and earlier.  This is broken for some versions between 1.5a and
1117         1.5f.
1118
1119 2002-10-10  Stephen J. Turnbull  <stephen@xemacs.org>
1120
1121         * realpath.c (win32_readlink): Try to fix truename of wildcard bug.
1122
1123         * emacs.c (shut_down_emacs): Improve crash message.
1124
1125 2002-10-09  Stephen J. Turnbull  <stephen@xemacs.org>
1126
1127         * file-coding.c (determine_real_coding_system): Check for coding
1128         cookie in first LINES_TO_CHECK lines (currently 2).  Cater to
1129         shebangs and Python PEP 263.
1130
1131 2002-10-08  Andy Piper  <andy@xemacs.org>
1132
1133         * glyphs-widget.c (layout_query_geometry): only resize dynamically
1134         if static sizes haven't been set.
1135
1136 2002-08-30  Mike Alexander  <mta@arbortext.com>
1137
1138         * event-msw.c (winsock_closer): Use closesocket, not CloseHandle
1139         to close a socket.
1140
1141 2002-10-03  Stephen J. Turnbull  <stephen@xemacs.org>
1142
1143         * callproc.c (child_setup): 21.4 doesn't have retry_close.
1144
1145 2002-09-20  Mike Sperber <mike@xemacs.org>
1146
1147         (This partially gets back my patch from 2002-07-20 without the
1148         bug.)
1149         * callproc.c (child_setup): Remove Ben's comment noting confusion
1150         over the file descriptors >= 3: close_process_descs() doesn't
1151         close those.  Fix fd range to go up to MAXDESC-1 instead of 64.
1152         * process-unix.c (unix_create_process): Call
1153         begin_dont_check_for_quit to inhibit unwanted interaction (and
1154         thus breaking of X event synchronicity) in the child.
1155
1156 2002-09-26  Golubev I. N.  <gin@mo.msk.ru>
1157
1158         * frame-x.c (x_delete_frame): do not call XtDisplay on a destroyed
1159         widget.
1160
1161 2002-08-20  Ben Sigelman  <bhsigelm@cs.brown.edu>
1162
1163         * event-Xt.c (drain_X_queue): loop over while(XEventsQueued())
1164         instead of while(XtAppPending()&XtIMXEvent).  Upon a gdm logout,
1165         the xemacs process did not exit, but looped infinitely here.  This
1166         fixes that problem.
1167
1168 2002-09-28  Stephen J. Turnbull  <stephen@xemacs.org>
1169
1170         * font-lock.c (SYNTAX_START_STYLE, SYNTAX_END_STYLE): Quiet GCC.
1171         (find_context): Improve comments.
1172
1173         * regex.c (re_compile_fastmap):  Gratuitous #ifdef comment fixes.
1174         (re_match_2): An XCHAR_TABLE operation was missing.
1175
1176         Many of the following changes were inspired by Andy Piper's (now
1177         obsolete) patch to make syntax-table text property lookup optional.
1178
1179         [Documentation]
1180
1181         * syntax.h (top level): Document semantics of syntax flags.
1182         * syntax.c (comstr_start, Fforward_comment): Improve comments.
1183         * syntax.c, syntax.h (top level): Document syntax cache better in
1184         comments.
1185
1186         [Instrument syntax caching (temporary change)]
1187
1188         * syntax.h (enum syntax_cache_statistics_functions, struct
1189         syntax_cache_statistics, SCS_STATISTICS_SET_FUNCTION,
1190         SYNTAX_CACHE_STATISTICS_COUNT_INIT): New types and macros.
1191         * syntax.c (scan_words, Fforward_comment, scan_lists,
1192         Fbackward_prefix_characters):
1193         * font-lock.c (find_context):
1194         Use them to instrument syntax caching. 
1195         * syntax.c (struct syntax_cache_statistics, scs_statistics,
1196         syntax_cache_statistics_function_names): New type and variables.
1197         * syntax.c (update_syntax_cache): Update and report statistics.
1198
1199         [Major syntax cache optimizations]
1200
1201         syntax.c (lookup_syntax_properties): Default off.
1202
1203         * syntax.h (UPDATE_SYNTAX_INTERNAL): New, implements UPDATE_SYNTAX*.
1204         * syntax.c (update_syntax_cache):
1205         Move init test from update_syntax_cache to UPDATE_SYNTAX_INTERNAL.
1206
1207         [Minor syntax cache optimizations and code clarifications]
1208
1209         * syntax.h (SYNTAX_COMMENT_BITS, SYNTAX_START_P, SYNTAX_END_P,
1210         SYNTAX_STYLES_MATCH_START_P, SYNTAX_STYLES_MATCH_1CHAR_P,
1211         SYNTAX_STYLES_MATCH_END_P, STYLE_FOUND_1CHAR_P, STYLE_FOUND_P,
1212         SYNTAX_COMMENT_MASK_END, SYNTAX_COMMENT_MASK_START,
1213         SYNTAX_COMMENT_1CHAR_MASK): Remove redundant argument `table'.
1214         (Code clarification.)
1215
1216         * syntax.c (scan_words, find_end_of_comment, scan_sexps_forward,
1217         scan_lists): Compute code from syncode, use Boolean macros instead
1218         of redundant masking operations.  (Code clarification; any decent
1219         compiler can do this optimization.)
1220
1221         * syntax.c (scan_lists): Rearrange switches (case Sstring_fence)
1222         for clarity.
1223
1224         * syntax.h, syntax.c (NEXT_SINGLE_PROPERTY_CHANGE,
1225         PREVIOUS_SINGLE_PROPERTY_CHANGE, update_syntax_cache): Conditionally
1226         use F*_single_property_change instead of F*_extent_change.
1227         Currently F*_single_property_change is _much_ less efficient.
1228
1229         * dired.c (Fdirectory_files): Qt not valid in syntax_cache.object.
1230         * syntax.h (SETUP_SYNTAX_CACHE_FOR_OBJECT):  Initialize
1231         syntax_cache.object properly, don't leave Qt or Qnil.
1232         (SYNTAX_CACHE_BYTE_TO_CHAR): Use SETUP_SYNTAX_CACHE_FOR_OBJECT.
1233         * syntax.c (update_syntax_cache): Use BUFFERP and STRINGP, not
1234         tests for Qt or Qnil.
1235
1236 2002-09-21  Stephen J. Turnbull  <stephen@xemacs.org>
1237
1238         * redisplay.c (point_in_line_start_cache): 
1239         * extents.c (print_extent_1):
1240         Fix warnings.
1241
1242         * extents.c (Fset_extent_property): Document `syntax-table' property.
1243
1244         * extents.h (Fnext_single_property_change): EXFUN it.
1245
1246 2002-09-09  Stephen J. Turnbull  <stephen@xemacs.org>
1247
1248         * search.c (clear_unused_search_regs): New static function.
1249         (search_buffer): 
1250         (simple_search): 
1251         (boyer_moore):
1252         Use it.  Fixes "stale match data" bug reported by Martin Stjernholm.
1253         Minor clarifications in comments.
1254
1255         * regex.c (re_match_2_internal): Ensure no stale submatches.
1256
1257 2002-09-09  Stephen J. Turnbull  <stephen@xemacs.org>
1258
1259         * event-Xt.c (enqueue_focus_event): Add missing prototype.
1260
1261 2002-08-29  Jerry James  <james@xemacs.org>
1262
1263         * lisp.h: structrures -> structures.
1264
1265 2002-06-03  Andy Piper  <andy@xemacs.org>
1266
1267         * frame.c (frame_conversion_internal): add conversion appropriate
1268         for setting frame dimensions in pixels.
1269
1270         * console.h (struct console_methods): add device-specific widget
1271         layout functions.
1272
1273         * emacs.c (main_1): initialize glyph vars.
1274
1275         * event-Xt.c (handle_focus_event_1): call handle_focus_event_2
1276         (handle_focus_event_2): new function. Allow focus to
1277         be set to a particular window and widget.
1278         (enqueue_focus_event): new function. Create a
1279         synthetic focus event.
1280         (emacs_Xt_handle_magic_event): call
1281         handle_focus_event_2.
1282
1283         * frame.c (Fset_frame_pixel_height): new function. Allow
1284         pixel-based sizing. Does the right thing on character-oriented
1285         displays.
1286         (Fset_frame_pixel_width): ditto.
1287         (Fset_frame_pixel_size): ditto.
1288         (syms_of_frame): declare.
1289
1290         * general-slots.h: add :vertically-justify and
1291         :horizontally-justify.
1292
1293         * glyphs-msw.c (xbm_create_bitmap_from_data): warning fix.
1294         (mswindows_widget_border_width): new function.
1295         (mswindows_combo_box_instantiate): set border widths.
1296         (console_type_create_glyphs_mswindows): declare.
1297
1298         * glyphs-widget.c:
1299         (check_valid_justification): allow vertical and horizontal
1300         justification.
1301         (widget_border_width): new function. Call device methods.
1302         (widget_instance_border_width): ditto.
1303         (logical_unit_height): new function. Determine the height of a
1304         logical-unit. Logical units are intended to provide grid-like
1305         layout for subcontrols in a layout. If the layout is
1306         :vertically-justify top then subcontrols will be positioned on
1307         logical-unit boundaries, thus allowing adjacent subcontrols to
1308         line up.
1309         (widget_logical_unit_height): ditto for widgets.
1310         (redisplay_widget): misc cleanup.
1311         (widget_spacing): new function. Call device specific
1312         methods. Intended to be the default gap between adjacent widgets.
1313         (widget_query_geometry): use new spacing functions to determine
1314         appropriate geometry.
1315         (initialize_widget_image_instance): initialize horizontal and
1316         vertical justification.
1317         (widget_instantiate): use logica-units where appropriate for
1318         sizing large widgets.
1319         (button_query_geometry): use widget_instance_border_width.
1320         (tree_view_query_geometry): ditto.
1321         (tab_control_query_geometry): ditto.
1322         (edit_field_query_geometry): new function.
1323         (layout_update): pick up :justify, :horizontally-justify and
1324         :vertically-justify none of which worked previously. :justify is
1325         used as a fallback for both horizontal and vertical justification.
1326         (layout_query_geometry): use logical units to size appropriately.
1327         (layout_layout): ditto.
1328         (Fwidget_logical_to_character_width): new function. Allow users to
1329         convert from logical units to characters so that frame sizes can
1330         be set appropriately.
1331         (Fwidget_logical_to_character_height): ditto.
1332         (syms_of_glyphs_widget): declare.
1333         (image_instantiator_edit_fields): add edit_field_query_geometry.
1334         (VALID_LAYOUT_KEYWORDS): declare :vertically-justify and
1335         :horizontally-justify.
1336         (specifier_vars_of_glyphs_widget): new function. Declare
1337         Vwidget_border_width which is not yet used.
1338
1339         * glyphs-x.c (x_map_subwindow): enqueue appropriate focus events.
1340         (x_widget_border_width): new function.
1341         (x_widget_instantiate): create a sensible name for widgets.
1342         (console_type_create_glyphs_x): declare x_widget_border_width.
1343
1344         * glyphs.h (DEFAULT_WIDGET_BORDER_WIDTH): new macro.
1345         (struct Lisp_Image_Instance): add :vertically-justify and
1346         :horizontally-justify.
1347         (LAYOUT_JUSTIFY_TOP): new.
1348         (IMAGE_INSTANCE_SUBWINDOW_H_JUSTIFY): new.
1349         (ROUND_UP): new macro. Round argument up to next integral
1350         interval.
1351
1352         * redisplay-output.c (redisplay_output_layout): misc formatting.
1353
1354         * symsinit.h: declare specifier_vars_of_glyphs_widget.
1355
1356 2002-08-23  Stephen J. Turnbull  <stephen@xemacs.org>
1357
1358         * XEmacs 21.4.9 "Informed Management" is released.
1359
1360 2002-08-19  Andy Piper  <andy@xemacs.org>
1361
1362         * fileio.c (Ffile_truename): on cygwin using win32 normalize to
1363         win32 format.
1364
1365         * realpath.c (xrealpath): normalize drive spec also so that dir
1366         sep chars are not mixed on cygwin.
1367
1368 2002-08-06  Jerry James  <james@xemacs.org>
1369
1370         * window.c (Fsplit_window): Count only half of the divider width
1371         against the left window when splitting horizontally. 
1372
1373 2002-06-24  Andy Piper  <andy@xemacs.org>
1374
1375         * toolbar-gtk.c (GTK_OUTPUT_BUTTONS_LOOP): output button if whole
1376         toolbar was cleared.
1377
1378         * toolbar-msw.c (mswindows_clear_frame_toolbars): new
1379         function. Split out from mswindows_output_frame_toolbars.
1380         (mswindows_output_frame_toolbars): move clear pieces to
1381         mswindows_output_frame_toolbars.
1382
1383         * toolbar-gtk.c (gtk_clear_frame_toolbars): new function. Split
1384         out from gtk_output_frame_toolbars.
1385         (gtk_output_frame_toolbars): move clear pieces to
1386         gtk_clear_frame_toolbars.
1387
1388         * toolbar-x.c (X_OUTPUT_BUTTONS_LOOP): always output buttons when
1389         the frame is cleared. How this ever worked before is a mystery.
1390         (x_output_frame_toolbars): Only output toolbars.
1391         (x_clear_frame_toolbars): new. Clear previous toolbar locations.
1392
1393         * gutter.c (update_gutter_geometry):
1394         Mark frame layout changed.
1395         (update_frame_gutter_geometry, update_frame_gutters):
1396         Respect frame_layout_changed.
1397
1398         * console.h (struct console_methods): add
1399         clear_frame_toolbars_method.
1400
1401         * redisplay.c (redisplay_frame): call
1402         update_frame_toolbars_geometry and re-order update_frame_toolbars.
1403
1404         * toolbar.h: declare update_frame_toolbars_geometry.
1405
1406         * toolbar.c (update_frame_toolbars_geometry): new function. Split
1407         out from update_frame_toolbars.  Call clear_frame_toolbars.
1408         (update_frame_toolbars): only output, do not change geometry.
1409
1410         * redisplay.c: add frame_layout_changed.
1411
1412         * redisplay.h: add frame_layout_changed.
1413         (CLASS_RESET_CHANGED_FLAGS): set it.
1414         (GLOBAL_RESET_CHANGED_FLAGS): ditto.
1415         (CLASS_REDISPLAY_FLAGS_CHANGEDP): test it.
1416         (GLOBAL_REDISPLAY_FLAGS_CHANGEDP): ditto.
1417
1418         * device.h (struct device): add frame_layout_changed.
1419         (MARK_DEVICE_FRAME_LAYOUT_CHANGED): new.
1420
1421         * frame.h (struct frame): add frame_layout_changed.
1422         (MARK_FRAME_LAYOUT_CHANGED): new.
1423
1424 2002-06-30  Mike Alexander  <mta@arbortext.com>
1425
1426         * event-msw.c (mswindows_need_event): Don't wait for a new message
1427         if the queue is not empty.  Suggested by Paul Moore.
1428
1429 2002-06-12  Andy Piper  <andy@xemacs.org>
1430
1431         * frame-msw.c (msprinter_init_frame_3): calculate the frame size
1432         for printing on accurately.
1433
1434 2002-06-09  Rick Rankin <rick_rankin@yahoo.com>
1435
1436         * event-msw.c (mswindows_wnd_proc): Add a handler for the
1437         WM_ACTIVATE message. Make sure that the frame is visible if the
1438         window is visible. This seemss to fix the problem where XEmacs
1439         appears to freeze after switching desktops with certain virtual
1440         window managers.
1441         (debug_output_mswin_message): Added code to output message
1442         parameters for WM_WINDOWPOSCHANGED, 
1443         WM_WINDOWPOSCHANGING, WM_MOVE, and WM_SIZE messages.
1444
1445 2002-05-25  Andy Piper  <andy@xemacs.org>
1446
1447         * select-x.c (vars_of_select_x): Fix docstring of
1448         x-selection-strict-motif-ownership
1449
1450 2002-08-14  Stephen J. Turnbull  <stephen@xemacs.org>
1451
1452         * keymap.c (get_keymap):
1453         Add comment about do_autoload GCPROs own args.
1454
1455 2002-08-14  Stephen J. Turnbull  <stephen@xemacs.org>
1456
1457         * bytecode.c (execute_optimized_program): check_opcode ifdef
1458         ERROR_CHECK_BYTE_CODE.
1459
1460 2002-08-14  Stephen J. Turnbull  <stephen@xemacs.org>
1461
1462         Thanks to Ben Wing and Michael Sperber.
1463
1464         * eval.c (Fcommand_execute):
1465         (Feval):
1466         (Ffuncall):
1467         (Fmacroexpand_internal):
1468         (function_argcount):
1469         callint.c (Fcall_interactively):
1470         Add comment about do_autoload GCPROs own args.
1471
1472         * (do_autoload): GCPRO both args as well as local Lisp_Object.
1473
1474         * eval.c (Ffuncall): Extra braces to placate GCC.
1475
1476 2002-08-10  Stephen J. Turnbull  <stephen@xemacs.org>
1477
1478         * backtrace.h (grow_specpdl):
1479         (SPECPDL_RESERVE):
1480         * EmacsFrame.c (EmacsFrameSetValues):
1481         * eval.c (grow_specpdl):
1482         * ExternalShell.c (hack_event_masks_1):
1483         * glyphs-x.c (convert_EImage_to_XImage): 
1484         (x_finalize_image_instance):
1485         * ralloc.c (page_size):
1486         (r_alloc_sbrk):
1487         * xgccache.c (gc_cache_hash):
1488         Fix unsigned comparison warnings.
1489
1490 2002-07-29  Jerry James  <james@xemacs.org>
1491
1492         * lread.c (locate_file): Any nonnegative return value indicates
1493         success if MODE is nonnegative.
1494
1495 2002-08-03  Brian A Palmer  <bpalmer@rescomp.Stanford.EDU>
1496
1497         * emacs.c (Fsplit_string_by_char): Make 2nd arg SEPCHAR a required
1498         argument. 
1499
1500 2002-07-17  Stephen J. Turnbull  <stephen@xemacs.org>
1501
1502         * process-unix.c (unix_send_process): #ifdef the coding_stream member.
1503
1504         * dumper.c (pdump_get_indirect_count):
1505         (pdump_scan_by_alignment):
1506         (pdump_dump_root_struct_ptrs):
1507         (pdump_dump_rtables):
1508         (pdump_dump_root_objects):
1509         (pdump):
1510         * nas.c (WaveOpenDataForReading):
1511         * fns.c (print_bit_vector):
1512         * font-lock.c (SINGLE_SYNTAX_STYLE):
1513         * glyphs.c (check_for_ignored_expose):
1514         (find_matching_subwindow):
1515         * glyphs-eimage.c:
1516         * imgproc.c (get_histogram):
1517         * redisplay.c (point_in_line_start_cache):
1518         * redisplay-output.c (redisplay_unmap_subwindows):
1519         * symbols.c (defsymbol_massage_name_1):
1520         (defkeyword_massage_name):
1521         (deferror_massage_name_and_message):
1522         * redisplay-x.c (x_output_string): 
1523         * emacs.c (run_temacs_argv_size, run_temacs_args_size):
1524         * frame.h (struct frame):
1525         * filelock.c (current_lock_owner):
1526         * doprnt.c (emacs_doprnt_1):
1527         * lisp.h (struct Lisp_Bit_Vector):
1528         (DO_REALLOC):
1529         Fix warnings.
1530
1531 2002-02-13  Ben Wing  <ben@xemacs.org>
1532
1533         * event-stream.c (reset_key_echo):
1534         * event-stream.c (reset_this_command_keys):
1535         * event-stream.c (execute_command_event):
1536         If console is dead as a result of C-x 5 0, then post-command stuff
1537         needs to be careful and do only non-console-specific stuff.
1538
1539 2002-07-01  Mike Sperber <mike@xemacs.org>
1540
1541         * process-unix.c (unix_send_process): Mark coding_outstream as
1542         non-open upon SIGPIPE.
1543
1544         * event-stream.c (Fnext_event): Reorder switch cases to something
1545         that makes sense.
1546
1547 2001-08-13  Dmitry Astapov  <adept@umc.com.ua>
1548
1549         * event-Xt.c (maybe_define_x_key_as_self_inserting_character):
1550         Don't bogusly reinitialize ascii_character property.
1551
1552 2002-07-08  Mike Sperber <mike@xemacs.org>
1553
1554         * process.c (Fstart_process_internal): Do error checking before we
1555         fork off the child, so the child can't muck with the state of the
1556         parent.
1557
1558 2002-07-08  Mike Sperber <mike@xemacs.org>
1559
1560         * ralloc.c (init_ralloc): Allocate properly for pdump.
1561
1562 2002-06-12  Andy Piper  <andy@xemacs.org>
1563
1564         * glyphs.c (query_string_geometry): check the string.
1565
1566         * glyphs-widget.c (widget_logical_unit_height): cope with nil
1567         widget names.
1568
1569 2002-06-17  Jerry James  <james@xemacs.org>
1570
1571         * sysdll.c: Remove RTLD_GLOBAL initialization.
1572         * sysdll.c (dll_open): Do not use RTLD_GLOBAL.
1573
1574 2002-06-25  Stephen J. Turnbull  <stephen@xemacs.org>
1575
1576         * search.c (skip_chars): Port Ben's crash fix and efficiency patch.
1577
1578 2002-05-16  Mathias Grimmberger  <mgri@zaphod.sax.de>
1579
1580         * sysdep.c (sys_rename): Make sys_rename work for the case where
1581         Windows rename sets errno to EACCES if target file exists.
1582
1583 2002-05-21  Jonathan Harris  <jonathan@xemacs.org>
1584
1585         * device-msw.c (mswindows_handle_page_setup_dialog_box):
1586         Fix detection of metric units to work on Win95
1587
1588 2002-05-21  Stephen J. Turnbull  <stephen@xemacs.org>
1589
1590         * syswindows.h: #define LOCALE_RETURN_NUMBER.  Why, I don't know.
1591
1592 2002-04-25  Andy Piper  <andy@xemacs.org>
1593
1594         * redisplay.c (create_text_block): Remove extra comment trailer.
1595
1596 2002-04-24  Andy Piper  <andy@xemacs.org>
1597
1598         * redisplay.c (create_text_block): Don't actually add propagation
1599         data if the line ends after we have added a glyph.
1600
1601 2002-04-22  Andy Piper  <andy@xemacs.org>
1602
1603         * extents.c (extent_fragment_update): check for glyphs we have
1604         previously displayed.
1605         * extents.c (print_extent_1): warning removal.
1606         * extents.h: change prototype.
1607         * redisplay-output.c (redisplay_normalize_glyph_area): calculate
1608         widths correctly for wide glyphs.
1609         * redisplay.c (position_redisplay_data_type): add end_glyph_width.
1610         * redisplay.c (prop_type): add PROP_GLYPH.
1611         * redisplay.c (struct prop_block): add glyph type
1612         * redisplay.c (add_glyph_rune): when adding part of a glyph add it
1613         to the propagation data.
1614         * redisplay.c (create_text_block): if there is a glyph in the
1615         propagation data use it to salt extent_fragment_update.
1616         * redisplay.c (create_string_text_block): ditto.
1617
1618 2002-04-13  Nix  <nix@esperi.demon.co.uk>
1619
1620         * redisplay.h (struct rune): Add ascent, descent, and yoffset fields.
1621         * redisplay-output.c (compare_runes): Compare them.
1622         * redisplay.c: Update copyright date.
1623         * redisplay.c (pos_data): Add need_baseline_computation field.
1624         * redisplay.c (add_glyph_rune): Update ascent, descent, and
1625         need_baseline_computation; zero yoffset. Set max_pixmap_height
1626         for all pixmaps, not just automatically positioned ones.
1627         * redisplay.c (calculate_yoffset): New, compute yoffset values.
1628         * redisplay.c (calculate_baseline): New, compute textual baseline.
1629         * redisplay.c (add_glyph_rune): Call them.
1630         * redisplay.c (create_text_block): Likewise.
1631         * redisplay.c (create_overlay_glyph_block): Likewise.
1632         * redisplay.c (add_margin_runes): Likewise.
1633         * redisplay.c (create_string_text_block): Likewise. Fix tabdamage.
1634
1635         * redisplay.h: (redisplay_calculate_display_boxes): Change prototype.
1636         * redisplay-output.c (redisplay_calculate_display_boxes): Use yoffset.
1637         * redisplay-msw.c (mswindows_output_blank): Pass 0 as yoffset.
1638         * redisplay-msw.c (mswindows_output_string): Likewise.
1639         * redisplay-msw.c (mswindows_output_display_block): Pass yoffset.
1640         * redisplay-gtk.c (gtk_output_display_block): Likewise.
1641         * redisplay-x.c (x_output_display_block): Likewise.
1642
1643 2002-03-28  Ben Wing  <ben@xemacs.org>
1644
1645         * redisplay.c: Fixed bug in redisplay
1646         w.r.t. hscroll/truncation/continuation glyphs causing jumping up
1647         and down of the lines, since they're bigger than the line
1648         size. (It was seen most obviously when there's a horizontal scroll
1649         bar, e.g. do C-h a glyph or something like that.) The problem was
1650         that the glyph-contrib-p setting on glyphs was ignored even if it
1651         was set properly, which it wasn't until now.
1652
1653 2002-04-24  Andy Piper  <andy@xemacs.org>
1654
1655         * lisp.h (Dynarr_end): Fix definition.
1656
1657 2002-02-06  Adrian Aichner  <adrian@xemacs.org>
1658
1659         * redisplay.c (mark_redisplay): Remove call to
1660         update_frame_window_mirror.
1661
1662 2001-11-15  Andy Piper  <andy@xemacs.org>
1663
1664         * win32.c (Fmswindows_shell_execute): fix handling of URL's under
1665         cygwin (again).
1666
1667 2002-02-13  Andy Piper  <andy@xemacs.org>
1668
1669         * event-msw.c (mswindows_wnd_proc): only mark the frame visible if
1670         we did in fact enqueue the XM_MAPFRAME event.
1671
1672 2002-01-15  Adrian Aichner  <adrian@xemacs.org>
1673
1674         * event-msw.c (mswindows_wnd_proc): Add handling of WM_SHOWWINDOW
1675         to fix problem switching between virtual desktops under virtuawin
1676         virtual window manager.
1677
1678 2001-07-30  Adrian Aichner  <adrian@xemacs.org>
1679
1680         * event-msw.c: Typo fix.
1681         * event-msw.c (mswindows_wnd_proc): Set FRAME_VISIBLE_P after
1682         magic XM_MAPFRAME event has been sent.
1683
1684 2001-11-23  Andy Piper  <andy@xemacs.org>
1685
1686         * event-msw.c (mswindows_wnd_proc): Don't pump mousewheel events.
1687
1688 2001-11-21  Andy Piper  <andy@xemacs.org>
1689
1690         * scrollbar-msw.c (mswindows_handle_mousewheel_event): cope with
1691         mouse events outside the frame.
1692
1693 2002-03-20  Andy Piper  <andy@xemacs.org>
1694
1695         * menubar-msw.c (mswindows_popup_menu): warning removal.
1696         * dialog-msw.c (dialog_popped_down): ditto.
1697
1698 2001-12-11  Andy Piper  <andy@xemacs.org>
1699
1700         * dialog-msw.c (dialog_popped_down): new function. unset popup_up_p.
1701         * dialog-msw.c (mswindows_make_dialog_box_internal): set
1702         popup_up_p.
1703         * menubar-msw.c (unsafe_handle_wm_initmenupopup_1): ditto.
1704         * menubar-msw.c (mswindows_handle_wm_command): ditto.
1705         * menubar-msw.c (mswindows_popup_menu): ditto.
1706
1707 2001-10-29  Andy Piper  <andy@xemacs.org>
1708
1709         * dialog-msw.c (handle_directory_dialog_box): quit if the user
1710         cancels.
1711
1712 2002-01-03  Andy Piper  <andy@xemacs.org>
1713
1714         * realpath.c (ABS_LENGTH): dtrt for cygwin systems using drive
1715         letters.
1716         (xrealpath): ditto.
1717
1718 2002-03-29  Jonathan Harris  <jonathan@xemacs.org>
1719
1720         * device-msw.c (plist_get_margin): Add arg specifying mm or inches
1721         * device-msw.c (plist_set_margin): Fix multiplicand used for mm
1722         * device-msw.c (mswindows_handle_page_setup_dialog_box):
1723         Detect and handle case where machine is set up for metric units
1724
1725 2002-04-02  Andy Piper  <andy@xemacs.org>
1726
1727         * dired-msw.c (mswindows_get_files): 
1728         * nt.c (mswindows_stat): SetErrorMode() so that file errors are
1729         completely handled by XEmacs. Suggested by Thomas Vogler
1730         <mail@thomas-vogler.de>.
1731
1732 2001-11-14  Andy Piper  <andy@xemacs.org>
1733
1734         * nt.c (REG_ROOT): change registry key to XEmacs.
1735
1736 2002-04-27  Andy Piper  <andy@xemacs.org>
1737
1738         * glyphs-msw.c (mswindows_widget_instantiate): remove dead-code.
1739
1740 2002-04-26  Andy Piper  <andy@xemacs.org>
1741
1742         * glyphs-msw.c (mswindows_map_subwindow): observe :initial-focus
1743         behavior.
1744
1745 2002-03-14  Mike Alexander  <mta@arbortext.com>
1746
1747         * event-msw.c (mswindows_unwait_process): New, remove process from
1748         wait list
1749         * process-nt.c (nt_finalize_process_data): Call
1750         mswindows_unwait_process
1751         * console-msw.h: Declare mswindows_unwait_process
1752
1753 2002-05-14  Stephen J. Turnbull  <stephen@xemacs.org>
1754
1755         * editfns.c (Fdecode_time):
1756         (Fformat_time_string):
1757         Check for invalid time.  Thanks to Nick Pakoulin <npak@ispras.ru>.
1758         (make_time): Warning elimination (change arg name).
1759
1760 2001-11-24  Andy Piper  <andy@xemacs.org>
1761
1762         * window.c (Fsplit_window): Doc return type.
1763
1764 2002-04-01  Andy Piper  <andy@xemacs.org>
1765
1766         * emacs.c (Fkill_emacs): Only output message box in interactive
1767         mode.
1768
1769 2002-04-26  Andy Piper  <andy@xemacs.org>
1770  
1771         * config.h.in: pull in 21.5.x change to stop alloca warnings under
1772         cygwin.
1773
1774 2002-03-18  Gregory Steuck  <greg-xemacs-patch@nest.cx>
1775
1776         * unexelf.c:  Use ELFSIZE or define from _LP64 to indicate a 64
1777         bit platform.
1778
1779 2002-05-09  Stephen J. Turnbull  <stephen@xemacs.org>
1780
1781         * XEmacs 21.4.8 "Honest Recruiter" is released.
1782
1783 2002-05-07  Nix  <nix@esperi.demon.co.uk>
1784
1785         Supersedes 2002-04-17 patch.
1786
1787         * process.h (PROCESS_LIVE_P): Use the process status as
1788         evidence of health, not the state of the input stream.
1789         (PROCESS_READABLE_P): Say if the process is readable
1790         from. (It may be dead nonetheless.)
1791         (CHECK_READABLE_PROCESS): Test for that condition.
1792
1793         * process.c (create_process): Use PROCESS_READABLE_P.
1794         (read_process_output, set_process_filter): Likewise.
1795
1796         * process.c (Fprocess_input_coding_system): Use CHECK_READABLE_PROCESS.
1797         (Fset_process_input_coding_system, Fprocess_coding_system): Likewise.
1798
1799         This code is #if 0'd, this is not the time to add new functions:
1800
1801         * process.c (Fprocess_readable_p): Report readability status.
1802         * process.c (Qprocess_readable_p): New, associated symbol...
1803         * process.c (syms_of_process): ... initialize it.
1804
1805 2002-05-04  Stephen J. Turnbull  <stephen@xemacs.org>
1806
1807         * XEmacs 21.4.7 "Economic Science" is released.
1808
1809 2002-04-17  Nix  <nix@esperi.demon.co.uk>
1810
1811         * process.h (PROCESS_LIVE_P): Use the process status as
1812         evidence of health, not the state of the input stream.
1813
1814 2002-04-30  Charles G. Waldman <cgw@xemacs.org>
1815
1816         * sysdep.c (sys_siglist): change "signum" to "signal"
1817
1818 2001-04-21  Martin Buchholz  <martin@xemacs.org>
1819
1820         * s/darwin.h: New file.
1821         Thanks to Greg Parker <gparker@cs.stanford.edu>.
1822         
1823 2002-04-23  Andreas Jaeger  <aj@suse.de>
1824
1825         * s/linux.h (LIB_STANDARD): Define correctly for x86-64 and s390x
1826         which use lib64 for 64-bit libs.
1827         (START_FILES): Likewise.
1828
1829 2002-02-11  Mike Sperber  <mike@xemacs.org>
1830
1831         * device-x.c: 
1832         (x_IO_error_handler):
1833         (x_init_device): Temporarily keep device in static variable
1834         `device_being_initialized' so we can recover gracefully from
1835         internal XOpenDevice failure.  (XOpenDevice is documented to
1836         return NULL on failure, but sometimes calls the IO error handler
1837         instead.)
1838
1839 2002-01-31  John H. Palmieri  <palmieri@math.washington.edu>
1840
1841         * dired.c (Ffile_name_all_completions): Change documentation --
1842         remove reference to completion-ignored-extensions.
1843         * dired.c (vars_of_dired): Change documentation for
1844         completion-ignored-extensions -- remove reference to
1845         file-name-all-completions.
1846
1847 2002-03-06  Jerry James  <james@xemacs.org>
1848
1849         * emodules.c (emodules_load): Fix multiple loading of same module.
1850
1851 2002-01-25  Andrew Begel <abegel@cs.berkeley.edu>
1852         * sysdll.c (dll_open): Changed to use RTLD_NOW instead of
1853         RTLD_LAZY to avoid incorrect symbol binding when using nested
1854         shared libraries on Solaris.
1855
1856 2002-02-12  Stephen J. Turnbull  <stephen@xemacs.org>
1857
1858         * fileio.c (Ffind_file_name_handler): Improve docstring.
1859
1860 2002-01-20  Stephen J. Turnbull  <stephen@xemacs.org>
1861
1862         * fns.c (Fmapconcat): Improve docstring.
1863
1864 2002-01-03  Eric Gillespie, Jr.  <epg@pretzelnet.org>
1865
1866         * device-gtk.c: Add prototype for
1867         emacs_gtk_selection_clear_event_handle.
1868         (gtk_init_device): Call gtk_selection_add_target for CLIPBOARD
1869         selection.  Setup signal handler for "selection_clear_event"
1870         (emacs_gtk_selection_clear_event_handle).
1871
1872         * select-gtk.c (emacs_gtk_selection_clear_event_handle): Handle
1873         other applications owning the clipboard (based on
1874         x_handle_selection_clear).
1875
1876 2001-12-23  William M. Perry  <wmperry@gnu.org>
1877
1878         * menubar-gtk.c (gtk_popup_menu)  Add sanity checks, fix crash.
1879         
1880 2002-01-04  Martin Buchholz  <martin@xemacs.org>
1881
1882         * keymap.c (define_key_alternate_name): Parenthesize EQ.
1883
1884 2001-12-17  Stephen J. Turnbull  <stephen@xemacs.org>
1885
1886         * XEmacs 21.4.6 "Common Lisp" is released.
1887
1888 2001-12-16  Torsten Duwe  <duwe@caldera.de>
1889
1890         * search.c (Freplace_match): Add missing sub-expression functionality.
1891
1892         * buffer.c (decode_buffer): Add a check for pointer type to
1893         decode_buffer, before gcc's CSE optimization reorders a
1894         dereference in front of the allow_string test.
1895
1896 2001-11-16  Darryl Okahata  <darrylo@xemacs.org>
1897
1898         * window.c (window_loop): Fix bug that sometimes prevented
1899         window_loop() from iterating across multiple devices.  Also, at
1900         Ben's request, changed infloop-detecting code to abort() instead
1901         of silently terminating window_loop().
1902
1903 2001-11-21  Stephen J. Turnbull  <stephen@xemacs.org>
1904
1905         Based on analysis and patch by Simon Josefson <jas@extundo.com>.
1906         * editfns.c (make_time): New function.
1907         (Fencode_time): Use it instead of wasteful_word_to_lisp.
1908         * lisp.h (make_time): Prototype and comment it.
1909         * dired.c (wasteful_word_to_lisp): Deprecate.
1910         (Ffile_attributes): Use make_time() instead of wasteful_word_to_lisp().
1911
1912 2001-10-31  Kyle Jones  <kyle_jones@wonderworks.com>
1913
1914         * fileio.c (auto_save_1): Use current coding system, not
1915         escape-quoted.
1916
1917 2001-11-13  Ben Wing  <ben@xemacs.org>
1918
1919         * window.c:
1920         * window.c (window_truncation_on):
1921         * window.c (syms_of_window):
1922         truncate-partial-width-windows should respect the buffer being
1923         displayed, like other redisplay vars.
1924
1925 2001-11-13  Hirokazu FUKUI  <hfukui@sannet.ne.jp>
1926
1927         * event-stream.c (Fread_key_sequence): save current buffer.
1928
1929 2001-10-29  Andrew Begel  <abegel@eecs.berkeley.edu>
1930
1931         * ntheap.c (_heap_init): Don't redefine in VS.NET (MSC >= 1300).
1932
1933 2001-10-29  Andrew Begel  <abegel@eecs.berkeley.edu>
1934
1935         * alloc.c (lcrecord_stats): Add space for types defined in modules.
1936
1937 2001-10-26  Mike Alexander  <mta@arbortext.com>
1938
1939         * event-msw.c (slurper_free_shared_data_maybe): Free the pipe handle.
1940
1941 2001-10-25  Andy Piper  <andy@xemacs.org>
1942
1943         * ChangeLog:
1944         * dialog-msw.c (handle_directory_proc): new function.
1945          (handle_directory_dialog_box): new fucntion.
1946          (handle_file_dialog_box): use new directory dialog support.
1947          (mswindows_make_dialog_box_internal): ditto.
1948         * event-msw.c (mswindows_wnd_proc): minor fix to scrollbar event
1949         handling.
1950         (mswindows_find_frame): make global.
1951         * fileio.c (Fexpand_file_name): build fix.
1952         * general-slots.h: add Qdirectory.
1953         * scrollbar-msw.c (mswindows_handle_scrollbar_event): fix focus
1954         handling.
1955         * syswindows.h (LOCAL_TO_WIN32_FILE_FORMAT): fix problem with
1956         cygwin not leaving win32 paths unchanged.
1957         * win32.c (Fmswindows_cygwin_to_win32_path): new function. Use the
1958         cygwin runtime to do path conversion.
1959         (Fmswindows_shell_execute): fix cygwin handling of URLs.
1960         (syms_of_win32): add new function.
1961         * window.c (window_loop): build fix.
1962
1963 2001-10-15  Andy Piper  <andy@xemacs.org>
1964
1965         (Fmswindows_shell_execute): fix handling of URL's under cygwin.
1966
1967 2001-10-23  Stephen J. Turnbull  <stephen@xemacs.org>
1968
1969         * XEmacs 21.4.5 "Civil Service" is released.
1970
1971 2001-04-08  Danny Colascione  <qtmstr@optonline.net>
1972
1973         * glyphs-x.c: Force buffer-tab highlight update when moving the
1974         buffer, avoiding an ugly black border, used for keyboard focus
1975         indication, on a widget that can never have keyboard focus, the
1976         buffer tab.
1977
1978 2001-08-30  Daiki Ueno  <ueno@unixuser.org>
1979
1980         * process-unix.c (unix_open_multicast_group): Remove too much
1981         conversion between host and network byte order.
1982
1983 2001-09-10  Nix  <nix@esperi.demon.co.uk>
1984
1985         * src/buffer.c (kill_buffer): Undedicate windows showing BUF
1986         before replacing them.
1987
1988         * src/window.c (window_loop): Implement new UNDEDICATE_BUFFER
1989         operation.
1990
1991         * src/window.c (undedicate_windows): Use it.
1992         * src/window.h: Add prototype.
1993
1994 2001-09-17  Ben Wing  <ben@xemacs.org>
1995
1996         * fileio.c (normalize_filename):
1997         * fileio.c (Fexpand_file_name):
1998         Fix various C++ compile errors in Andy's recent code.
1999         
2000         * callint.c (Fcall_interactively):
2001         * editfns.c (Ftemp_directory):
2002         * editfns.c (Fuser_full_name):
2003         * emacs.c (argmatch):
2004         * lread.c (locate_file_map_suffixes):
2005         * redisplay-x.c (x_ring_bell):
2006         Fix sign-compare warnings.
2007         
2008 2001-09-08  Andy Piper  <andy@xemacs.org>
2009
2010         * fileio.c (normalize_filename): copied from nt.c
2011         * (Ffile_name_directory): enable win32 paths under cygwin.
2012         * (Ffile_name_nondirectory): ditto.
2013         * (directory_file_name): ditto.
2014         * (Fexpand_file_name): ditto.
2015         * (Ffile_truename): ditto.
2016         * (Fsubstitute_in_file_name): ditto.
2017         * (Ffile_name_absolute_p): ditto.
2018         * (Ffile_readable_p): ditto.
2019
2020 2001-09-08  Andy Piper  <andy@xemacs.org>
2021
2022         * device-msw.c (mswindows_finish_init_device): remove dde
2023         initialization.
2024         * device-msw.c (mswindows_init_dde): factor out from
2025         mswindows_finish_init_device()
2026         * device-msw.c (init_mswindows_very_early): new function
2027         initialize but don't enable dde.
2028         * emacs.c (main_1): call init_mswindows_very_early.
2029         * event-msw.c:
2030         * event-msw.c (mswindows_dde_callback): only execute when we are
2031         ready.
2032         * symsinit.h: declare init_mswindows_very_early.
2033
2034 2001-05-02  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
2035
2036         [sjt: This has been in 21.5 for months with no complaints.]
2037
2038         * console.h (struct console_methods): Added flags member.
2039         (CONSOLE_IMPLEMENTATION_FLAGS): Defined.
2040         (CONMETH_IMPL_FLAG):
2041         (CONSOLE_IMPL_FLAG): Macro to check implememntation flags.
2042         Defined XDEVIMPF_DONT_PREEMPT_REDISPLAY.
2043
2044         * device.c (window_system_pixelated_geometry): Use the above macros.
2045
2046         * device.h (DEVICE_IMPL_FLAG): Macro to check a device
2047         implememntation flag.
2048         * device.h (DEVICE_DISPLAY_P): Use it.
2049
2050         * frame.c (delete_frame_internal): Use the above macro.
2051
2052         * redisplay.c (redisplay_device): Use it.
2053         (redisplay_device): Obey XDEVIMPF_DONT_PREEMPT_REDISPLAY.
2054         (redisplay_frame): Ditto.
2055
2056         * device-msw.c (mswindows_device_implementation_flags): Removed.
2057         (msprinter_device_implementation_flags): Removed.
2058         (console_type_create_device_mswindows): Removed references to
2059         implementation_flags methods, set implementation flags here.
2060         (console_type_create_device_mswindows): Added XDEVIMPF_DONT_PREEMPT.
2061
2062         * device-gtk.c (gtk_device_implementation_flags): Removed method.
2063         (console_type_create_device_gtk): Removed method declaration.
2064         Added commented out statement which semantically matches the
2065         commented out statement in the above removed method.
2066
2067 2001-04-14  Gordon Sadler  <gbsadler1@lcisp.com>
2068
2069         The attached patch fixes a few warnings. 
2070
2071         * src/emacs.c: prototype console_type_create_select_gtk for GTK only
2072         * src/frame-gtk.c: guard against GNOME calls in GTK only
2073         * src/redisplay-gtk.c: include <sys/poll.h> #ifdef HAVE_POLL
2074         * src/select-gtk.c: prototype lisp_to_time
2075
2076 2001-06-08  Ben Wing  <ben@xemacs.org>
2077
2078         ------ gc-in-window-procedure fixes ------
2079         
2080         * alloc.c:
2081         * alloc.c (struct post_gc_action):
2082         * alloc.c (register_post_gc_action):
2083         * alloc.c (run_post_gc_actions):
2084         * alloc.c (garbage_collect_1):
2085         Create "post-gc actions", to avoid those dreaded "GC during window
2086         procedure" problems.
2087
2088         * event-msw.c:
2089         Abort, clean and simple, when GC in window procedure.  We want
2090         to flush these puppies out.
2091
2092         * glyphs-msw.c:
2093         * glyphs-msw.c (finalize_destroy_window):
2094         * glyphs-msw.c (mswindows_finalize_image_instance):
2095         Use a post-gc action when destroying subwindows.
2096
2097         * lisp.h:
2098         Declare register_post_gc_action().
2099
2100         * scrollbar-msw.c:
2101         * scrollbar-msw.c (unshow_that_mofo):
2102         Use a post-gc action when unshowing scrollbar windows, if in gc.
2103
2104         * redisplay.c (mark_redisplay):
2105         Add comment about the utter evilness of what's going down here.
2106
2107         ------ cygwin setitimer fixes ------
2108         
2109         * Makefile.in.in (sheap_objs):
2110         * Makefile.in.in (profile_objs):
2111         * Makefile.in.in (objs):
2112         Compile profile.c only when HAVE_SETITIMER.
2113         
2114         * nt.c (mswindows_sigset):
2115         * nt.c (mswindows_sighold):
2116         * nt.c (mswindows_sigrelse):
2117         * nt.c (mswindows_sigpause):
2118         * nt.c (mswindows_raise):
2119         * nt.c (close_file_data):
2120         Style fixes.
2121         
2122         * nt.c:
2123         Move setitimer() emulation to win32.c, because Cygwin needs it too.
2124         
2125         * profile.c:
2126         * profile.c (Fstart_profiling):
2127         * profile.c (Fstop_profiling):
2128         Make sure we don't compile if no setitimer().  Use qxe_setitimer()
2129         instead of just plain setitimer().
2130         
2131         * signal.c:
2132         * signal.c (set_one_shot_timer):
2133         * signal.c (alarm):
2134         Define qxe_setitimer() as an encapsulation around setitimer() --
2135         call setitimer() directly unless Cygwin or MS Win, in which case
2136         we use our simulated version in win32.c.
2137         
2138         * systime.h:
2139         * systime.h (struct itimerval):
2140         * systime.h (ITIMER_REAL):
2141         Prototype mswindows_setitimer() and qxe_setitimer().  Long
2142         comment about "qxe" and the policy regarding encapsulation.
2143
2144         * win32.c:
2145         * win32.c (setitimer_helper_proc):
2146         * win32.c (setitimer_helper_period):
2147         * win32.c (setitimer_helper):
2148         * win32.c (mswindows_setitimer):
2149         Move setitimer() emulation here, so Cygwin can use it.
2150         Rename a couple of functions and variables to be longer and more
2151         descriptive.  In setitimer_helper_proc(), send the signal
2152         using either mswindows_raise() or (on Cygwin) kill().  If for
2153         some reason we are still getting lockups, we'll change the kill()
2154         to directly invoke the signal handlers.
2155
2156         ------ windows shell fixes ------
2157         
2158         * callproc.c:
2159         * ntproc.c:
2160         Comments about how these two files must die.
2161
2162         * callproc.c (init_callproc):
2163         On MS Windows, init shell-file-name from SHELL, then COMSPEC,
2164         not just COMSPEC. (more correct and closer to FSF.) Don't
2165         force a value for SHELL into the environment. (Comments added
2166         to explain why not.)
2167         
2168         * nt.c (init_user_info):
2169         Don't shove a fabricated SHELL into the environment.  See above.
2170
2171 2001-06-01  Ben Wing  <ben@xemacs.org>
2172
2173         * Makefile.in.in (ldflags):
2174         eliminate that pesky "defaulting to 00401000" warning.
2175         * nt.h:
2176         eliminate warnings.
2177
2178 2001-06-15  Golubev I. N.  <gin@mo.msk.ru>
2179
2180         * s/sco5.h (FORCE_ALLOCATE_PTY_THE_OLD_FASHIONED_WAY): #define.
2181         * process-unix.c (allocate_pty): #ifndef "modern" pty allocation.
2182
2183 2001-04-24  Jerry James <james@xemacs.org>
2184
2185         * faces.h: pass parameters to Fadd_spec_to_specifier in the
2186         correct order.
2187
2188 2001-06-01  Ben Wing  <ben@xemacs.org>
2189
2190         * event-msw.c (debug_mswin_messages):
2191         conditionalize the messages that were causing compile errors.
2192         (if only macros could generate #ifdef statements ...)
2193
2194 2001-07-28  Stephen J. Turnbull  <stephen@xemacs.org>
2195
2196         * XEmacs 21.4.4 "Artificial Intelligence" is released.
2197
2198 2001-07-22  Stephen J. Turnbull  <stephen@xemacs.org>
2199
2200         * event-msw.c (mswindows_wnd_proc): Add GC debugging assert.
2201
2202 2001-07-22  Stephen J. Turnbull  <stephen@xemacs.org>
2203
2204         * config.h.in (IPV6_CANONICALIZE): New #define for --with-ipv6-lookup.
2205         * process-unix.c (unix_canonicalize_host_name):
2206         sysdep.c (init_system_name):
2207         Use it to conditionally support IPv6 canonicalization.
2208
2209 2001-05-31  Paul Stodghill  <stodghil@cs.cornell.edu>
2210
2211         * event-msw.c:
2212         Cygwin does not define WM_IME_xxx. Modify the #if's accordingly.
2213
2214 2001-05-19  Paul Krause  <paulkrause1@mediaone.net>
2215
2216         * scrollbar-msw.c: Fixes a crash that occurs on Windows when an
2217         attempt is made to scroll when no scroll bar is available.
2218
2219 2001-04-19  Glynn Clements  <glynn.clements@virgin.net>
2220
2221         * input-method-motif.c (XIM_delete_frame): New callback.
2222         (XIM_init_frame): Register it.  (Reapplied by SJT, it somehow
2223         got deleted from 21.4.3.)
2224
2225 2001-06-01  Ben Wing  <ben@xemacs.org>
2226
2227         * nt.c (mswindows_utime):
2228         * nt.c (close_file_data):
2229         fix off-by-one-indirection error.
2230
2231 2001-05-29  Adrian Aichner  <adrian@xemacs.org>
2232
2233         * fileio.c: Include nt.h.  Remove lisp_string_set_file_times()
2234         because set_file_times() now takes Lisp_Object path, instead of
2235         char*.
2236         * nt.c: Include buffer.h.
2237         * nt.c (convert_from_time_t): New.
2238         * nt.c (mswindows_utime): New.  Use utime, since SetFileTime does
2239         not set mtime correctly.
2240         * nt.h: Declare mswindows_utime().
2241         * sysdep.c (set_file_times): set_file_times() now takes Lisp_Object
2242         path, instead of char*.
2243         * systime.h: Include <sys/utime.h> on WIN32_NATIVE.
2244
2245 2001-05-30  Ben Wing  <ben@xemacs.org>
2246
2247         For 21.4:
2248
2249         (Stephen, just take all event-msw.c patches.  This includes
2250         the "iconify" fix below.)
2251
2252         * event-msw.c:
2253         * event-msw.c (mswindows_dequeue_dispatch_event):
2254         * event-msw.c (assert):
2255         * event-msw.c (emacs_mswindows_quit_p):
2256         * event-msw.c (debug_mswin_messages):
2257         * event-msw.c (debug_output_mswin_message):
2258         * event-msw.c (vars_of_event_mswindows):
2259         Fix yet more problems with C-g handling.
2260         Implement debug-mswindows-events.
2261         
2262 2001-05-24  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
2263
2264         * event-msw.c (WM_DROPFILES): Use correct type for OLE characters.
2265         
2266 2001-05-23  Ben Wing  <ben@xemacs.org>
2267
2268         * event-msw.c (winsock_writer):
2269         * event-msw.c (winsock_closer):
2270         prior kludgy code was clobbering the buffer, thinking it was
2271         "unused" space to store an unneeded return value; instead, use
2272         the variable we've already got staring us in the face.
2273
2274 2001-05-17  Andy Piper  <andy@xemacs.org>
2275
2276         * sysfile.h: don't assume that file attributes are boolean
2277
2278 2001-05-23  Ben Wing  <ben@xemacs.org>
2279
2280         * device-msw.c (msprinter_init_device):
2281         signal an error rather than crash with an unavailable network
2282         printer (from Mike Alexander).
2283         
2284         * event-msw.c:
2285         * event-msw.c (struct winsock_stream):
2286         * event-msw.c (winsock_writer):
2287         * event-msw.c (winsock_closer):
2288         * event-msw.c (make_winsock_stream_1):
2289         cleanup headers.  fix (hopefully) an error with data corruption
2290         when sending to a network connection.
2291
2292         * fileio.c (Fexpand_file_name): Fix evil code that attempts
2293         to handle the ~user prefix by (a) always assuming we're referencing
2294         ourselves and not even verifying the user -- hence any file with
2295         a tilde as its first char is invalid! (b) if there wasn't a slash
2296         following the filename, the pointer was set *past* the end of
2297         file and we started reading from uninitialized memory.  Now we
2298         simply treat these as files, always.
2299
2300         * buffer.c (common_init_complex_vars_of_buffer): comment change.
2301         
2302 2001-05-19  Ben Wing  <ben@xemacs.org>
2303
2304         * eval.c: doc comment about gcpro'ing in record_unwind_protect.
2305
2306         * process-nt.c:
2307         * process-nt.c (vars_of_process_nt):
2308         remove unused mswindows-quote-process-args.  rec for 21.4.
2309         
2310 2001-05-12  Ben Wing  <ben@xemacs.org>
2311
2312         * event-msw.c (mswindows_dde_callback):
2313         * event-msw.c (mswindows_wnd_proc):
2314         eliminate cygwin warnings.
2315
2316 2001-05-06  Ben Wing  <ben@xemacs.org>
2317
2318         * console-msw.h:
2319         * device-msw.c:
2320         * device-msw.c (print_dialog_worker):
2321         * device-msw.c (mswindows_handle_print_dialog_box):
2322         * device-msw.c (syms_of_device_mswindows):
2323         * dialog-msw.c (mswindows_make_dialog_box_internal):
2324         * general-slots.h:
2325         implement printing the selection when it's selected.
2326
2327 2001-05-20  Drazen Kacar  <dave@arsdigita.com>
2328
2329         * glyphs-gtk.c (gtk_resource_instantiate): C++ comment -> #if 0
2330
2331 2001-05-11  Yoshiki Hayashi  <yoshiki@xemacs.org>
2332
2333         * lisp.h (EMACS_INT_MAX): This should be one bit less since
2334         EMACS_INT is signed.
2335
2336 2001-04-15  Michael Lausch  <mla@1012surf.net>
2337
2338         * scrollbar-gtk.c (gtk_create_scrollbar_instance): Call
2339         gtk_widget_request_size() to give scrollbar >0 width for
2340         GTK >1.2.8.
2341
2342 2001-05-30  William M. Perry  <wmperry@gnu.org>
2343
2344         * event-gtk.c: Check for buttons as modifier keys.
2345
2346 2001-05-25  Craig Lanning  <CraigL@Knology.net>
2347
2348         * s\mingw32.h:
2349         Properly find MinGW's <process.h> inside Cygwin's restructured
2350         include directories.  Don't try to include <cygwin/version.h>
2351         since we are dropping support for MinGW in versions of Cygwin
2352         earlier than b21.
2353         * nt.c:
2354         Drop support for MinGW in versions of Cygwin before b21.
2355         * sysdep.c:
2356         Properly find MinGW's <process.h> inside Cygwin's restructured
2357         include directories.
2358         * syswindows.h:
2359         Drop support for MinGW in versions of Cygwin before b21.
2360         * unexcw.c:
2361         Even though a.out.h is no longer detected by configure, allow
2362         MinGW to use it until we figure out how to do the job with Win32.
2363
2364 2001-07-11  Matt Tucker  <tuck@whistlingfish.net>
2365
2366         * syntax.c (find_start_of_comment):
2367         Fix `unbalanced parentheses' bug when dealing with mixed comment
2368         styles in c++/java/etc. mode
2369
2370 2001-05-29  Mike Alexander  <mta@arbortext.com>
2371
2372         * console-msw.h (FRAME_MSPRINTER_CHARHEIGHT): Unswap
2373         FRAME_MSPRINTER_CHARWIDTH and FRAME_MSPRINTER_CHARHEIGHT
2374
2375 2001-05-17  Andrew Begel  <abegel@eecs.berkeley.edu>
2376
2377         * lrecord.h (INIT_EXTERNAL_LRECORD_IMPLEMENTATION): Add needed cast.
2378
2379 2001-03-31  Mike Sperber <mike@xemacs.org>
2380
2381         * search.c (Freplace_match): Support FSF-style specification of
2382         match subexpression when applied to a buffer.
2383
2384 2001-05-27  Karl M. Hegbloom  <karlheg@hegbloom.net>
2385
2386         * event-stream.c (is_scrollbar_event): add missing semicolon
2387
2388 2001-05-22  Isaac Hollander  <ysh@mindspring.com>
2389
2390         * Makefile.in.in: Use TAR macro instead of hardcoding
2391           tar.  Allows use of GNU tar instead of system tar
2392
2393 2001-05-27  Karl M. Hegbloom  <karlheg@hegbloom.net>
2394
2395         * event-stream.c (is_scrollbar_event): add missing semicolon
2396
2397 2001-05-17  Stephen J. Turnbull  <stephen@xemacs.org>
2398
2399         * XEmacs 21.4.3 "Academic Rigor" is released.
2400
2401 2001-05-17  Stephen J. Turnbull  <stephen@xemacs.org>
2402
2403         * regex.c: Define DECLARE_NOTHING when "lisp.h" is not included.
2404
2405 2001-05-08  Yoshiki Hayashi  <yoshiki@xemacs.org>
2406
2407         * buffer.c (Vcase_fold_search): Remove obsolete
2408           comment about non ASCII case-fold-search.  This
2409           bug has been fixed by case-table changes.
2410
2411 2001-05-11  Stephen J. Turnbull  <stephen@xemacs.org>
2412
2413         * event-msw.c: Restore include of events-mod.h.
2414
2415 2001-04-22   zhaoway  <zw@debian.org>
2416
2417         * event-stream.c (is_scrollbar_event): Noop returning 0 if
2418         !HAVE_SCROLLBARS.
2419
2420 2001-05-10  Stephen J. Turnbull  <stephen@xemacs.org>
2421
2422         * XEmacs 21.4.2 "Developer-Friendly Unix APIs" is released.
2423
2424 2001-05-08  Yoshiaki Kasahara  <kasahara@nc.kyushu-u.ac.jp>
2425
2426         * mule-charset.c (Fmake_charset): Add missing else.
2427
2428 2001-04-23  Ben Wing  <ben@xemacs.org>
2429
2430         * event-msw.c (FAKE_MOD_QUIT):
2431         * event-msw.c (mswindows_dequeue_dispatch_event):
2432         * event-msw.c (mswindows_wnd_proc):
2433         * event-msw.c (emacs_mswindows_quit_p):
2434         Get critical quit working.
2435
2436 2001-05-05  Ben Wing  <ben@xemacs.org>
2437
2438         * console-msw.h:
2439         * device-msw.c:
2440         * device-msw.c (mswindows_get_default_margin):
2441         * frame-msw.c (mswindows_size_frame_internal):
2442         * frame-msw.c (msprinter_init_frame_1):
2443         * frame-msw.c (vars_of_frame_mswindows):
2444         Change top/bottom margin defaults to 0.5 inches.
2445
2446 2001-05-01  Martin Buchholz  <martin@xemacs.org>
2447
2448         Fix link error with gcc 3.0 on Linux.
2449         * terminfo.c (UP): Remove.
2450         * terminfo.c (BC): Remove.
2451         * terminfo.c (PC): Remove.
2452         They weren't used, and in any case, these symbols should be
2453         defined in the *library*.
2454
2455 2001-05-03  Martin Buchholz  <martin@xemacs.org>
2456
2457         * s/aix4.h: Fix crash with xlc -O3.
2458         Improve comment explaining how -O3 works.
2459
2460 2001-04-15  Ben Wing  <ben@xemacs.org>
2461
2462         * event-stream.c:
2463         * event-stream.c (Fnext_event):
2464         * event-stream.c (is_scrollbar_event):
2465         * event-stream.c (execute_command_event):
2466         Better fix for Yoshiki's `C-x @ h <scrollbar-drag> x causes a
2467         crash' problem.  His fix introduces other problems.  We filter
2468         out scrollbar events specifically, making them somewhat invisible
2469         to command-building, and not appearing in `this-command-keys'.
2470         More work is still needed (see comments in event-stream.c), but
2471         this fixes all the major problems.
2472
2473 2001-04-20  Ben Wing  <ben@xemacs.org>
2474
2475         * .cvsignore: Added stuff for Windows.
2476
2477 2001-04-28  Ben Wing  <ben@xemacs.org>
2478
2479         * buffer.c (Ferase_buffer):
2480         * editfns.c (buffer_insert1):
2481         * editfns.c (Finsert_before_markers):
2482         * editfns.c (Finsert_string):
2483         * editfns.c (Finsert_char):
2484         * editfns.c (Fdelete_region):
2485         * editfns.c (Fwiden):
2486         * editfns.c (Fnarrow_to_region):
2487         remove bogus lines setting zmacs_region_stays to 0.
2488         
2489 2001-04-15  Gunnar Evermann  <ge204@eng.cam.ac.uk>
2490
2491         * process-unix.c (unix_open_network_stream): If connect() fails
2492         invalidate file descriptor after closing it.
2493
2494 2001-03-08  Mike Alexander  <mta@arbortext.com>
2495
2496         * event-msw.c (mswindows_need_event_in_modal_loop):
2497         Don't dispatch a message if we didn't get one.
2498         (mswindows_need_event):
2499         Terminate the correct process when one exits instead of the first
2500         one on Vprocess_list and look for process termination when in
2501         mswindows_protect_modal_loop.
2502
2503 2001-04-19  Stephen J. Turnbull  <stephen@xemacs.org>
2504
2505         * XEmacs 21.4.1 "Copyleft" is released.
2506
2507 2001-04-19  Glynn Clements  <glynn.clements@virgin.net>
2508
2509         * input-method-motif.c (XIM_delete_frame): New callback.
2510         (XIM_init_frame): Register it.
2511
2512 2001-04-16  Stephen J. Turnbull  <stephen@xemacs.org>
2513
2514         * XEmacs 21.4.0 "Solid Vapor" is released.
2515
2516 2001-04-15  Ben Wing  <ben@xemacs.org>
2517
2518         * cmdloop.c (call_command_loop):
2519         Fix braino in bit-rotting code.
2520         
2521 2001-04-07  Hrvoje Niksic  <hniksic@arsdigita.com>
2522
2523         * extents.c (Fset_extent_endpoints): Force creation of extent info
2524         in buffer_or_string.
2525
2526         * extents.c (process_extents_for_insertion_mapper): Correctly
2527         check for open-open zero-length extents.
2528
2529 2001-04-16  Stephen J. Turnbull  <stephen@xemacs.org>
2530
2531         * lisp.h: New typedefs Memory_count, Element_count.
2532         * regex.c:
2533         * regex.h:
2534         Sign-compare warning elimination: several unsigned -> signed.
2535         Based on work by Ben Wing <ben@xemacs.org>.
2536
2537 2001-04-14  Stephen J. Turnbull  <stephen@xemacs.org>
2538
2539         * XEmacs 21.2.47 "Zephir" is released.
2540
2541 2001-04-02  Jan Vroonhof  <jan@xemacs.org>
2542
2543         * redisplay.c (add_bufbyte_string_runes): Update data->bytepos
2544
2545 2001-04-03  Mike Sperber <mike@xemacs.org>
2546
2547         * search.c: Revert previous patch due because of release.
2548
2549 2001-03-30  Ben Wing  <ben@xemacs.org>
2550
2551         * s\cygwin32.h:
2552         Add missing killpg prototype.
2553
2554         * elhash.c:
2555         Add a comment about fixing problems when a new entry is added
2556         while mapping.
2557
2558         * frame-msw.c (mswindows_init_frame_1):
2559         Fix compile warnings.
2560
2561         * menubar.c (vars_of_menubar):
2562         Provide `menu-accelerator-support' to indicate that we properly
2563         support %_ in menu specifications, so that package code can
2564         conditionalize on this (and remove %_ from menu specifications
2565         on older versions).
2566
2567         * event-msw.c:
2568         * scrollbar-msw.c:
2569         * scrollbar-msw.c (can_scroll):
2570         * scrollbar-msw.h:
2571         Fix handling of mouse wheel under Windows to follow standards --
2572         now scrolls window under pointer, not selected window.
2573
2574 2001-03-31  Mike Sperber <mike@xemacs.org>
2575
2576         * search.c (Freplace_match): Support FSF-style specification of
2577         match subexpression when applied to a buffer.
2578
2579 2001-03-15  Martin Buchholz  <martin@xemacs.org>
2580
2581         * keymap.c (Fmap_keymap): map-keymap explicitly allows a mapping
2582         function to modify KEYMAP, so map over a copy of the hash table.
2583
2584 2001-03-21  Martin Buchholz <martin@xemacs.org>
2585
2586         * XEmacs 21.2.46 "Urania" is released.
2587
2588 2001-03-20  Dan Holmsand  <dan@eyebee.com>
2589
2590         * realpath.c (xrealpath): Make file-truename work with symlinks to
2591         /cygdrive paths on cygwin. Always lowercase drive-letters on
2592         native windows.
2593         (cygwin_readlink): Don't try to find canonical filename unless
2594         file exists.
2595
2596 2001-03-15  Stephen J. Turnbull  <stephen@xemacs.org>
2597
2598         * ChangeLog: Log GTK merge.
2599
2600         * dumper.c:
2601         * select-x.c:
2602         * specifier.c:
2603         * symeval.h:
2604         Revert gratuitous whitespace changes from GTK merge.
2605
2606         * emacs.c: Document end of complex #ifdef @ l. 1495.
2607
2608
2609 2001-03-12  Andy Piper  <andy@xemacs.org>
2610
2611         * mingw32.h: unfortunately cygnus changed mingw32 -> mingw so we
2612         have to do likewise.
2613
2614 2001-03-12  Andy Piper  <andy@xemacs.org>
2615
2616         * sysdep.c: we only support mingw now.
2617
2618 2001-03-09  Andy Piper  <andy@xemacs.org>
2619
2620         * unexcw.c (copy_executable_and_dump_data_section): making approx
2621         overrun a warning only.
2622
2623 2001-03-10  William M. Perry  <wmperry@aventail.com>
2624
2625         * faces.c (complex_vars_of_faces): Rewrote the font mucking to
2626         satisfy Stephen's identical-after-cpp plea.
2627
2628 2001-03-02  Ben Wing  <ben@xemacs.org>
2629
2630         * cmds.c:
2631         * cmds.c (Fforward_char):
2632         * syntax.c:
2633         * window.c:
2634
2635         Augment documentation of the most common motion commands to make
2636         note of the shifted-motion support.
2637         
2638 2001-03-02  Ben Wing  <ben@xemacs.org>
2639
2640         * nt.c (mswindows_fstat):
2641         * nt.c (mswindows_stat):
2642         * search.c (boyer_moore):
2643         Fix compile warnings under Windows.
2644         
2645         * sysdep.c (sys_readdir):
2646         Fix buggy filename-conversion code under Mule.
2647
2648 2001-03-09  William M. Perry  <wmperry@aventail.com>
2649
2650         * Makefile.in.in:
2651         * config.h.in:
2652         * console.c:
2653         * console.h:
2654         * device.c:
2655         * device.h:
2656         * dragdrop.c:
2657         * emacs.c:
2658         * event-stream.c:
2659         * events.c:
2660         * events.h:
2661         * faces.c:
2662         * frame.h:
2663         * general-slots.h:
2664         * glyphs.c:
2665         * gutter.c:
2666         * inline.c:
2667         * lisp.h:
2668         * lrecord.h:
2669         * make-src-depend:
2670         * redisplay-output.c:
2671         * redisplay.c:
2672         * symsinit.h:
2673         * sysfile.h:
2674         * toolbar.c:
2675         * window.c:
2676         The Great GTK Merge.
2677
2678         * ChangeLog.GTK:
2679         * console-gtk.c:
2680         * console-gtk.h:
2681         * device-gtk.c:
2682         * emacs-marshals.c:
2683         * emacs-widget-accessors.c:
2684         * event-gtk.c:
2685         * frame-gtk.c:
2686         * gccache-gtk.c:
2687         * gccache-gtk.h:
2688         * glade.c:
2689         * glyphs-gtk.c:
2690         * glyphs-gtk.h:
2691         * gtk-glue.c:
2692         * gtk-xemacs.c:
2693         * gtk-xemacs.h:
2694         * gui-gtk.c:
2695         * gui-gtk.h:
2696         * menubar-gtk.c:
2697         * native-gtk-toolbar.c:
2698         * objects-gtk.c:
2699         * objects-gtk.h:
2700         * redisplay-gtk.c:
2701         * scrollbar-gtk.c:
2702         * scrollbar-gtk.h:
2703         * select-gtk.c:
2704         * toolbar-gtk.c:
2705         * ui-byhand.c:
2706         * ui-gtk.c:
2707         * ui-gtk.h:
2708         The Great GTK Merge: new files.
2709
2710 2001-02-26  Ben Wing  <ben@xemacs.org>
2711
2712         Reapplied Lstream change.
2713
2714 2001-02-26  Ben Wing  <ben@xemacs.org>
2715
2716         Undid the last change, since it is more controversial than I
2717         thought.  It should be back in at some point soon.
2718         
2719 2001-02-25  Ben Wing  <ben@xemacs.org>
2720
2721         * buffer.c:
2722         * callproc.c (Fold_call_process_internal):
2723         * event-msw.c (ntpipe_slurp_reader):
2724         * event-msw.c (ntpipe_shove_writer):
2725         * event-msw.c (winsock_reader):
2726         * event-msw.c (winsock_writer):
2727         * file-coding.c:
2728         * file-coding.c (detect_eol_type):
2729         * file-coding.c (detect_coding_type):
2730         * file-coding.c (determine_real_coding_system):
2731         * file-coding.c (Fdetect_coding_region):
2732         * file-coding.c (decoding_reader):
2733         * file-coding.c (decoding_writer):
2734         * file-coding.c (mule_decode):
2735         * file-coding.c (Fdecode_coding_region):
2736         * file-coding.c (encoding_reader):
2737         * file-coding.c (encoding_writer):
2738         * file-coding.c (mule_encode):
2739         * file-coding.c (Fencode_coding_region):
2740         * file-coding.c (detect_coding_sjis):
2741         * file-coding.c (decode_coding_sjis):
2742         * file-coding.c (encode_coding_sjis):
2743         * file-coding.c (detect_coding_big5):
2744         * file-coding.c (decode_coding_big5):
2745         * file-coding.c (encode_coding_big5):
2746         * file-coding.c (detect_coding_ucs4):
2747         * file-coding.c (decode_coding_ucs4):
2748         * file-coding.c (encode_coding_ucs4):
2749         * file-coding.c (detect_coding_utf8):
2750         * file-coding.c (decode_coding_utf8):
2751         * file-coding.c (encode_coding_utf8):
2752         * file-coding.c (detect_coding_iso2022):
2753         * file-coding.c (decode_coding_iso2022):
2754         * file-coding.c (encode_coding_iso2022):
2755         * file-coding.c (decode_coding_no_conversion):
2756         * file-coding.c (encode_coding_no_conversion):
2757         * glyphs-x.c (write_lisp_string_to_temp_file):
2758         * gpmevent.c (tty_get_foreign_selection):
2759         * lisp.h:
2760         * lstream.c:
2761         * lstream.c (Lstream_flush_out):
2762         * lstream.c (Lstream_adding):
2763         * lstream.c (Lstream_write_1):
2764         * lstream.c (Lstream_write):
2765         * lstream.c (Lstream_raw_read):
2766         * lstream.c (Lstream_read_more):
2767         * lstream.c (Lstream_read):
2768         * lstream.c (Lstream_unread):
2769         * lstream.c (Lstream_fputc):
2770         * lstream.c (stdio_reader):
2771         * lstream.c (stdio_writer):
2772         * lstream.c (filedesc_reader):
2773         * lstream.c (filedesc_writer):
2774         * lstream.c (lisp_string_reader):
2775         * lstream.c (struct fixed_buffer_stream):
2776         * lstream.c (make_fixed_buffer_input_stream):
2777         * lstream.c (make_fixed_buffer_output_stream):
2778         * lstream.c (fixed_buffer_reader):
2779         * lstream.c (fixed_buffer_writer):
2780         * lstream.c (struct resizing_buffer_stream):
2781         * lstream.c (resizing_buffer_writer):
2782         * lstream.c (dynarr_writer):
2783         * lstream.c (lisp_buffer_reader):
2784         * lstream.c (lisp_buffer_writer):
2785         * lstream.h:
2786         * lstream.h (lstream_implementation):
2787         * lstream.h (struct lstream):
2788         * md5.c (Fmd5):
2789         * process-nt.c (nt_send_process):
2790         * process-unix.c (unix_send_process):
2791         
2792         Correct Lstream lossage due to mixing of signed and unsigned
2793         quantities.  All Lstream uses of size_t and ssize_t are now a
2794         single signed data type Lstream_data_count.  This fixes problems
2795         under Windows with sending large quantities of data to a process,
2796         and may well fix other subtle bugs.
2797
2798 2001-02-23  Martin Buchholz <martin@xemacs.org>
2799
2800         * XEmacs 21.2.45 "Thelxepeia" is released.
2801
2802 2001-02-21  Martin Buchholz  <martin@xemacs.org>
2803
2804         * lisp-union.h (XSETINT): 
2805         (XSETCHAR):
2806         (XSETOBJ): 
2807         Reverse previous change of 2001-02-06.
2808
2809 2001-02-20  Matt Tucker  <tuck@whistlingfish.net>
2810
2811         Fix `VALID_BYTIND_P' crashes in regex.c when using narrowed
2812         buffers.
2813         * syntax.h (SYNTAX_CACHE_BYTE_TO_CHAR):
2814         * syntax.h (SYNTAX_CACHE_OBJECT_BYTE_TO_CHAR):
2815         Add `BI_BUF_BEGV' to bytepos before calculating bufpos.
2816         * regex.c (POS_AS_IN_BUFFER): removed
2817         * regex.c (re_search_2):
2818         * regex.c (re_match_2):
2819         Don't use an offset of 1 when calculating buffer positions, since
2820         `BI_BUF_BEGV' does it already.
2821
2822 2001-02-18  Wim Dumon  <wim@easics.be>
2823
2824         * insdel.c (prepare_to_modify_buffer): Also check for
2825         supersession when clash-detection is enabled. 
2826
2827 2001-02-17  Matt Tucker  <tuck@whistlingfish.net>
2828
2829         * regex.c (re_match_2_internal):
2830         Convert temp characters from 'const unsigned char' to 're_char'.
2831         Fix crashing bug with extended characters under mule.
2832         * syntax.c (Qsyntax_table): Moved from vars_of_syntax to
2833         syms_of_syntax. Use defsymbol to define. Fixes hanging bug with
2834         font-lock, pdump, and new syntax-table code.
2835         * syntax.c (find_start_of_comment):
2836         (find_end_of_comment):
2837         (forward-comment):
2838         Fix crashing bugs involving moving beyond end of buffer.
2839         * syntax.c (find_start_of_comment):
2840         Fixed logic to allow proper detection of cases where the same
2841         character is used to end both a two-char comment start and a
2842         two-char comment end sequence. Fixes `(forward-comment -1)'.
2843         * syntax.c (find_start_of_comment):
2844         Return position just past last comment-end character for all cases
2845         (previously was only done for two-char comment-end sequences).
2846         * syntax.c (forward-comment):
2847         Take value returned from `find_end_of_comment', rather than
2848         incrementing it.
2849         * syntax.h (SYNTAX_CACHE_BYTE_TO_CHAR):
2850         Properly deal with BUFFERP (syntax_cache.object)
2851
2852 2001-02-17  Martin Buchholz  <martin@xemacs.org>
2853
2854         * alloc.c (Fgarbage_collect): 
2855         * alloc.c (make_bit_vector_from_byte_vector):
2856         -Wsign-compare-correctness.
2857
2858 2001-02-16  Martin Buchholz  <martin@xemacs.org>
2859
2860         * lisp-union.h (XSETINT): Eliminate unnecessary temp var.
2861         (XSETCHAR): Likewise.
2862         (XSETOBJ): Likewise.
2863
2864 2001-02-15  Martin Buchholz  <martin@xemacs.org>
2865
2866         * mule-canna.c (canna-func-delete_previous): 
2867         Rename to canna-func-delete-previous.
2868
2869 2001-02-14  Martin Buchholz  <martin@xemacs.org>
2870
2871         * mule-ccl.c (ccl_driver): Warning suppression.  Use countof.
2872
2873 2001-02-13  Matt Tucker  <tuck@whistlingfish.net>
2874
2875         * font-lock.c (find_context): Fix C++ compile errors introduced by
2876         recent patch
2877
2878 2001-02-13  Martin Buchholz  <martin@xemacs.org>
2879
2880         * s/aix4.h: Later versions of IBM C compiler need a bug workaround
2881         pragma, but earlier ones barf on the same pragma.
2882
2883 2001-02-06  Mike Sperber <mike@xemacs.org>
2884
2885         * emacs.c (complex_vars_of_emacs): Add `mule-lisp-directory' and
2886         `configure-mule-lisp-directory'.
2887
2888 2001-02-12  Martin Buchholz  <martin@xemacs.org>
2889
2890         Make sure dump-id.c is compiled in the same way as other .c's.
2891         Fixes pdump compilation failure with HP's cc, which defaults to K&R.
2892         * dump-id.h: Remove.
2893         * emacs.c: Move dump-id.h into dumper.h.
2894         * dumper.h: Move dump-id.h into dumper.h.
2895         * Makefile.in.in:
2896         Use standard .c.o rule for building dump-id.o.
2897         Remove preprocessor flags from link command.
2898         Add dump-id.o to ${otherobjs} if PDUMP.
2899
2900 2001-02-07  Matt Tucker  <tuck@whistlingfish.net>
2901
2902         Port FSF 20.7 syntax table improvements.
2903         * syntax.c.
2904         * syntax.h.
2905
2906         Fixups for new syntax table stuff.
2907         * dired.c: Include syntax.c.
2908         (Fdirectory_files): Initialize regex_match_object and
2909         regex_emacs_buffer.
2910         * extents.h: EXFUN Fnext_extent_change, Fprevious_extent_change,
2911         and Fget_char_property.
2912
2913         Use ported FSF 20.7 syntax table improvements.
2914         * font-lock.c.
2915         * regex.c.
2916         * search.c.
2917         
2918 2001-02-09  Martin Buchholz  <martin@xemacs.org>
2919
2920         * regex.c (Boolean): Renamed to `re_bool', to avoid conflict with
2921         Unixware's enum boolean from sys/types.h.
2922
2923 2001-02-10  Martin Buchholz  <martin@xemacs.org>
2924
2925         Fix support for building with latest Purify.
2926         * Makefile.in.in (PURIFY_LIBS): Remove thread flags.
2927         (PURIFY_FLAGS): Likewise.
2928
2929 2001-02-09  Martin Buchholz  <martin@xemacs.org>
2930
2931         * fileio.c (lisp_string_set_file_times): New.
2932         * fileio.c (Fcopy_file): Use it.
2933         Fixes bug:
2934         (copy-file filename non-ascii-filename t t)
2935         ==> No such file or directory, non-ascii-filename
2936
2937 2001-02-10  Martin Buchholz  <martin@xemacs.org>
2938
2939         * glyphs-x.c (generate_cursor_fg_bg): Avoid a warning.
2940         USHRT_MAX seems clearer than ~0 anyways.
2941
2942 2001-02-09  Martin Buchholz  <martin@xemacs.org>
2943
2944         dumper improvements.  Inspired by Olivier.
2945         * dumper.c (pdump_max_align): New.
2946         * dumper.c (pdump_add_entry): Use pdump_max_align.
2947         * dumper.c (pdump_get_entry_list): Likewise.
2948         * dumper.c (pdump_scan_by_alignment): Likewise.
2949         Don't iterate through unnecessary alignments.
2950         * dumper.c (pdump_file_get): No need to align result of malloc().
2951         * dumper.c (pdump_mallocadr): Remove.  
2952         The result of malloc() is guaranteed to be maximally aligned.
2953         * dumper.c: s/elmt/elt/g;
2954         * dumper.c (pdump_object_table): Allocate dynamically, not statically.
2955         * dumper.c (pdump_alert_undump_object): Likewise.
2956         * dumper.c (pdump_align_table): 
2957         Don't support alignments > 64.
2958         Store ALIGNOF's, not shift counts, in table.
2959
2960 2001-02-09  Martin Buchholz  <martin@xemacs.org>
2961
2962         * s/mingw32.h (HAVE_STRUCT_UTIMBUF): Remove.
2963         * s/windowsnt.h (HAVE_STRUCT_UTIMBUF): Remove.
2964         * systime.h: Use HAVE_UTIME.
2965         * sysdep.c (struct utimbuf): Remove.
2966         * sysdep.c (set_file_times): Prefer utime() to utimes().
2967         * config.h.in (HAVE_UTIME): New.
2968         * config.h.in (HAVE_UTIME_H): Remove.
2969         * config.h.in (HAVE_STRUCT_UTIMBUF): Remove.
2970
2971 2001-02-09  Martin Buchholz  <martin@xemacs.org>
2972
2973         * s/aix4.h: Hide #pragmas inside #ifndef NOT_C_CODE.
2974
2975 2001-02-08  Martin Buchholz  <martin@xemacs.org>
2976
2977         * s/irix6-0.h: Use the standard system memmove, not bcopy.
2978
2979 2001-02-08  Martin Buchholz <martin@xemacs.org>
2980
2981         * XEmacs 21.2.44 "Thalia" is released.
2982
2983 2001-02-06  Martin Buchholz  <martin@xemacs.org>
2984
2985         Fixes crashes in kill-emacs on some systems.
2986         * process-unix.c (unix_kill_child_process):
2987         It's OK for kill() to fail with ESRCH.
2988
2989 2001-02-07  Martin Buchholz  <martin@xemacs.org>
2990
2991         Contortions to make .gdbinit tricks work on most systems.
2992         * alloc.c (dbg_inhibit_dbg_symbol_deletion): Keep debugger info.
2993         * alloc.c (dbg_valmask): Make non-const.
2994         * alloc.c (dbg_typemask): Make non-const.
2995         * alloc.c (dbg_USE_UNION_TYPE): Make non-const.
2996         * alloc.c (dbg_valbits): Make non-const.
2997         * alloc.c (dbg_gctypebits): Make non-const.
2998         * .gdbinit (decode_object): Make it work with AIX cc.
2999
3000 2001-02-06  Martin Buchholz  <martin@xemacs.org>
3001
3002         * elhash.c (make_general_lisp_hash_table):
3003         Use simpler and more efficient calloc to clear entries.
3004
3005 2001-02-07  Martin Buchholz  <martin@xemacs.org>
3006
3007         * window.c (window_scroll): Work around an AIX C compiler bug.
3008         Fixes 'scroll-up' does nothing problem with xlC.
3009
3010 2001-02-05  Martin Buchholz  <martin@xemacs.org>
3011
3012         * .gdbinit: Remove obsolete comment.
3013
3014 2001-01-31  Mike Alexander  <mta@arbortext.com>
3015
3016         * select.c (Fown_selection_internal): Set owned_p for device
3017         method correctly.
3018
3019 2001-02-01  Martin Buchholz  <martin@xemacs.org>
3020
3021         Port to g++ 2.97.
3022         "not" cannot be used as a macro name as it is an operator in C++
3023         * config.h.in: Stop #defining `not'.
3024         * chartab.c (check_category_char): not ==> not_p
3025         * chartab.h: Likewise.
3026         * regex.c (re_match_2_internal): Likewise.
3027
3028 2001-02-02  Martin Buchholz  <martin@xemacs.org>
3029
3030         * lisp-disunion.h: Fix up comments.
3031
3032 2001-01-31  Martin Buchholz  <martin@xemacs.org>
3033
3034         * keymap.c (define_key_check_and_coerce_keysym):
3035         (syms_of_keymap):
3036         Support mouse-6 and mouse-7 bindings in the obvious way.
3037
3038 2001-02-01  Martin Buchholz  <martin@xemacs.org>
3039
3040         * m/hp9000s300.h (UNEXEC): Check for HPUX, not !BSD.
3041
3042 2001-01-30  Martin Buchholz  <martin@xemacs.org>
3043
3044         Previous patch changing DEFVAR_INT to use EMACS_INT was incomplete.
3045         Previous patch missed DEFVAR_INT_MAGIC.
3046         Make sure future DEFVAR_foo use correct types.
3047         * symeval.h (DEFVAR_SYMVAL_FWD_FIXNUM): New.
3048         * (DEFVAR_SYMVAL_FWD_INT): Add type checking.
3049         * (DEFVAR_SYMVAL_FWD_OBJECT): Add type checking.
3050         * (DEFVAR_INT_MAGIC): Use DEFVAR_SYMVAL_FWD_FIXNUM.
3051         * (DEFVAR_INT): Likewise.
3052         * redisplay.c (vertical_clip): Should be of type Fixnum.
3053         * redisplay.c (horizontal_clip): Likewise.
3054         * lisp.h (dump_add_opaque_int): New.
3055         (dump_add_opaque_fixnum): New.
3056
3057 2001-01-29  Andy Piper  <andy@xemacs.org>
3058
3059         * glyphs-widget.c (check_valid_int_or_function): allow symbols
3060         since they can be eval'ed
3061
3062 2001-01-29  Martin Buchholz  <martin@xemacs.org>
3063
3064         * lisp.h (ALIGNOF): Make it work on non-gcc C++ compilers.
3065         Oops, XEmacs redefines `class'.  Use `typename' instead.
3066
3067 2001-01-28  Martin Buchholz  <martin@xemacs.org>
3068
3069         * dumper.c: Fix C++ compile errors.
3070
3071 2001-01-29  Martin Buchholz  <martin@xemacs.org>
3072
3073         * tparam.c: Use correct prototypes.
3074
3075 2001-01-28  Martin Buchholz  <martin@xemacs.org>
3076
3077         * sysproc.h: #include util.h for NetBSD's openpty.
3078
3079 2001-01-27  Martin Buchholz  <martin@xemacs.org>
3080
3081         More 64-bit correctness.
3082         The C value of a DEFVAR_INT should be of type EMACS_INT, not int.
3083         Use a typedef `fixnum' for the type used for DEFVAR_INT.
3084         Fix up comments.
3085         This finally finishes the 64-bit SGI port.
3086         Fixes things like (let ((gc-cons-threshold most-positive-fixnum)) ...).
3087         * symbols.c: Fix up comments and type casts.
3088         * symbols.c (do_symval_forwarding): s/int/Fixnum/g
3089         * symbols.c (store_symval_forwarding): s/int/Fixnum/g
3090         * symeval.h (Fixnum): New type.
3091         * symeval.h (symbol_value_type): Fix up comment.
3092
3093         * commands.h:
3094         * nt.c:
3095         * emacs.c:
3096         * data.c:
3097         * redisplay.c:
3098         * abbrev.c:
3099         * dired-msw.c:
3100         * event-Xt.c:
3101         * eldap.c:
3102         * window.c:
3103         * sound.c:
3104         * event-stream.c:
3105         * eval.c:
3106         * buffer.c:
3107         * mule-canna.c: A million DEFVAR_INTs here...
3108         * mule-canna.c (count_char): s/int */Fixnum */g in arglist.
3109         * extents.c:
3110         * cmdloop.c:
3111         * lisp.h:
3112         * select-x.c:
3113         * console-x.h:
3114         * event-msw.c:
3115         * mule-wnnfns.c:
3116         * hpplay.c:
3117         * ralloc.c:
3118         * alloc.c:
3119         * keymap.c:
3120         * profile.c:
3121         s/int/Fixnum/g in DEFVAR_INT declarations.
3122
3123 2001-01-26  Martin Buchholz  <martin@xemacs.org>
3124
3125         Port pdump to SGI alignment-sensitive environment.
3126         Lisp Object sizeof methods now return aligned sizes.  Rely on that.
3127         Eliminate is_lrecord since Lisp_Objects sizeof methods are now all
3128         properly aligned.
3129         Define and use aligned reading and writing macros.
3130         Use buffered stdio instead of posix i/o for faster dumping.
3131         Eliminate kludgy 256 byte space for header.
3132         Read and write from dump file using structs for alignment safety.
3133         * dumper.c (pdump_align_stream): New.
3134         * dumper.c (PDUMP_ALIGN_OUTPUT): New.
3135         * dumper.c (PDUMP_READ_ALIGNED): New.
3136         * dumper.c (PDUMP_WRITE_ALIGNED): New.
3137         * dumper.c (pdump_static_Lisp_Object): New struct.
3138         * dumper.c (pdump_static_pointer): New struct.
3139         * dumper.c (pdump_entry_list_element): Remove is_lrecord member.
3140         * dumper.c (pdump_add_entry): Remove is_lrecord parameter.
3141         * dumper.c (pdump_dump_data): Rely on sizeof method alignment.
3142         * dumper.c (pdump_allocate_offset): Rely on sizeof method alignment.
3143
3144         * dumper.c (pdump_backtrace):
3145         * dumper.c (pdump_get_indirect_count):
3146         * dumper.c (pdump_register_object):
3147         * dumper.c (pdump_register_struct):
3148         * dumper.c (pdump_reloc_one):
3149         * dumper.c (pdump_scan_by_alignment):
3150         * dumper.c (pdump_dump_from_root_struct_ptrs):
3151         * dumper.c (pdump_dump_opaques):
3152         * dumper.c (pdump_dump_rtables):
3153         * dumper.c (pdump_dump_from_root_objects):
3154         * dumper.c (pdump):
3155         * dumper.c (pdump_load_finish):
3156         Use aligned reading and writing.
3157
3158         * dumper.c (pdump_free): Make static.
3159         * dumper.c (pdump_hFile): Likewise.
3160         * dumper.c (pdump_hMap): Likewise.
3161
3162 2001-01-26  Martin Buchholz <martin@xemacs.org>
3163
3164         * XEmacs 21.2.43 "Terspichore" is released.
3165
3166 2001-01-25  Martin Buchholz  <martin@xemacs.org>
3167
3168         Type fiddling for window_config.saved_windows_count
3169         * window.c (struct window_config): 
3170         Make saved_windows_count member unsigned.
3171         * window.c (sizeof_window_config_for_n_windows): 
3172         Make parameter unsigned.
3173         * window.c (mark_window_config):
3174         * window.c (window_config_equal):
3175         * window.c (free_window_configuration):
3176         * window.c (Fset_window_configuration):
3177         * window.c (count_windows):
3178         * window.c (Fcurrent_window_configuration):
3179         * window.c (reinit_vars_of_window):
3180         Update all callers and users.
3181
3182 2001-01-25  Martin Buchholz  <martin@xemacs.org>
3183
3184         Alignment correctness for flexible arrays.
3185         * lisp.h (FLEXIBLE_ARRAY_STRUCT_SIZEOF):
3186         Make alignment-correct. Add interesting comments.
3187         * alloc.c (size_vector):
3188         * alloc.c (make_vector_internal):
3189         * alloc.c (make_bit_vector_internal):
3190         * alloc.c (sweep_bit_vectors_1):
3191         * fns.c (size_bit_vector):
3192         Update all callers of FLEXIBLE_ARRAY_STRUCT_SIZEOF to add new arg.
3193         * window.c (sizeof_window_config_for_n_windows): 
3194         Use FLEXIBLE_ARRAY_STRUCT_SIZEOF.
3195
3196 2001-01-24  Martin Buchholz  <martin@xemacs.org>
3197
3198         * lread.c (read1): Rename `fexp', which is #defined in SGI's math.h
3199
3200 2001-01-23  Andy Piper  <andy@xemacs.org>
3201
3202         * select.c (Fown_selection_internal): pass owned_p
3203
3204         * select-msw.c (mswindows_own_selection): New Signature.
3205
3206         * console.h (struct console_methods): add owned_p to
3207         _own_selection.
3208
3209         * select-x.c (x_own_selection): pass owned_p
3210         (hack_motif_clipboard_selection): use owned_p
3211         (vars_of_select_x): new variable -
3212         x_selection_strict_motif_ownership.
3213
3214 2001-01-23  Martin Buchholz  <martin@xemacs.org>
3215
3216         * specifier.h (specifier_data_offset): Remove pointless parens.
3217         * glyphs.h (IMAGE_SPECIFIER_DATA): Likewise.
3218
3219 2001-01-24  Martin Buchholz  <martin@xemacs.org>
3220
3221         Make Lisp_Object sizeof methods be alignment-correct.
3222         pdump must restore objects to the same alignment as the C compiler
3223         assumes.  It really matters on SGIs.
3224         * lstream.c (aligned_sizeof_lstream): New.
3225         (sizeof_lstream): Use aligned_sizeof_lstream.
3226         (Lstream_new): Likewise.
3227         * opaque.c (aligned_sizeof_opaque): New.
3228         (sizeof_opaque): Use aligned_sizeof_opaque.
3229         (make_opaque): Likewise.
3230         * specifier.c (aligned_sizeof_specifier): New.
3231         (sizeof_specifier): Use aligned_sizeof_specifier.
3232         (make_specifier_internal): Likewise.
3233
3234 2001-01-23  Martin Buchholz  <martin@xemacs.org>
3235
3236         * lstream.h (struct lstream): Use max_align_t for trailing data.
3237         * specifier.h (struct Lisp_Specifier): Likewise.
3238
3239 2001-01-22  Martin Buchholz  <martin@xemacs.org>
3240
3241         * mule-ccl.c (CCL_Extension): Renamed from CCL_Extention.
3242         (CCL_SUCCESS): Kludge to prevent Sun cc compiler warnings.
3243         (CCL_SUSPEND): Likewise.
3244         (CCL_INVALID_CMD): Likewise.
3245         (CCL_CALL_FOR_MAP_INSTRUCTION): Likewise.
3246         (ccl_driver): Likewise.
3247         (CCL_WRITE_CHAR): Macro hygiene.
3248         (CCL_WRITE_STRING): Macro hygiene.
3249
3250 2001-01-22  Martin Buchholz  <martin@xemacs.org>
3251
3252         Port "portable" dumper to SunOS 4 and HP-UX.
3253         * s/aix4.h (AIX4): Move MAP_FAILED definition elsewhere.
3254         * emacs.c (main): PDUMP implies no RUN_TIME_REMAP.
3255         * dumper.c (pdump_file_get): Define MAP_FAILED if not already defined.
3256
3257 2001-01-22  Martin Buchholz  <martin@xemacs.org>
3258
3259         * lisp.h (ALIGNOF): A better definition for C++.
3260
3261 2001-01-20  Martin Buchholz  <martin@xemacs.org>
3262
3263         Macro hygiene.
3264         Fix printf warnings: int format, long int arg.
3265         * regex.c (DECLARE_DESTINATION): Use DECLARE_NOTHING.
3266         (PUSH_FAILURE_POINT): Use correct printf formats.
3267         (POP_FAILURE_POINT): Use correct printf formats.  
3268         Use do {...} while (0)
3269
3270 2001-01-20  Martin Buchholz <martin@xemacs.org>
3271
3272         * XEmacs 21.2.42 "Poseidon" is released.
3273
3274 2001-01-20  Martin Buchholz  <martin@xemacs.org>
3275
3276         * console-x.h: typo fix du jour.  Remove #if 0'ed code.
3277
3278 2001-01-19  Martin Buchholz  <martin@xemacs.org>
3279
3280         De-kludgify FIXED_TYPE free list frobbing.
3281         Fix crashes on 64-bit platforms introduced by my patch of 2001-01-13.
3282         * alloc.c (DECLARE_FIXED_TYPE_ALLOC): Use Lisp_Free.
3283         * alloc.c (ALLOCATE_FIXED_TYPE_1): Use new definitions.
3284         * alloc.c (Lisp_Free): New pseudo lisp object definition.
3285         * alloc.c (LRECORD_FREE_P): New.
3286         * alloc.c (MARK_LRECORD_AS_FREE): New.
3287         * alloc.c (MARK_LRECORD_AS_NOT_FREE): New.
3288         * alloc.c (STRUCT_FREE_P): Deleted.
3289         * alloc.c (MARK_STRUCT_AS_FREE): Deleted.
3290         * alloc.c (MARK_STRUCT_AS_NOT_FREE): Deleted.
3291         * alloc.c (STRING_CHARS_FREE_P): New.
3292         * alloc.c (MARK_STRING_CHARS_AS_FREE): New.
3293         * alloc.c (PUT_FIXED_TYPE_ON_FREE_LIST): Use new definitions.
3294         * alloc.c (FREE_FIXED_TYPE): Use new definitions.
3295         * alloc.c (STRING_CHARS_FREE_P): Use new definitions.
3296         * alloc.c (resize_string): Use new definitions.
3297         * alloc.c (SWEEP_FIXED_TYPE_BLOCK): Use new definitions.
3298         * alloc.c (verify_string_chars_integrity): Use new definitions.
3299         * alloc.c (compact_string_chars): Use new definitions.
3300         * alloc.c: Update monster comments.
3301         * lrecord.h (lrecord_type): Add some new lrecord types for
3302         alloc.c's use.
3303
3304 2001-01-18  Martin Buchholz  <martin@xemacs.org>
3305
3306         Improve alignment hackery.
3307         * lisp.h (ALIGNOF): Better definition for the non-gcc case.
3308         (max_align_t): Moved from opaque.h - general purpose.
3309         (ALIGN_PTR): Use size_t, not long.
3310         * opaque.h (max_align_t): Move to lisp.h.
3311
3312 2001-01-18  Norbert Koch  <nk@LF.net>
3313
3314         * gui.h: Fix and add prototypes to fix build problems.
3315
3316 2001-01-18  Martin Buchholz  <martin@xemacs.org>
3317
3318         temacs is going away, so `dump-temacs' is now a bad name.
3319         * .dbxrc (dump-temacs): Rename to `dmp'.
3320         * .gdbinit (dump-temacs): Rename to `dmp'.
3321
3322 2001-01-17  Andy Piper  <andy@xemacs.org>
3323
3324         * glyphs.c (print_image_instance): comment to make martin happy.
3325
3326         * glyphs-x.c (x_redisplay_widget): update faces after a frame
3327         change.
3328
3329         * glyphs-msw.c (mswindows_redisplay_widget): add code to cope with
3330         activation.
3331         (mswindows_tab_control_redisplay): warning suppression.
3332
3333         * glyphs-widget.c (widget_update): re-write to cope with updated
3334         items.
3335         (widget_instantiate): use new gui_item functions.
3336         (tab_control_update): deleted.
3337         (progress_gauge_update): deleted.
3338         (image_instantiator_progress_guage): take out update reference.
3339         (image_instantiator_tree_view): ditto.
3340         (image_instantiator_tab_control): ditto.
3341
3342         * gui.c (widget_gui_parse_item_keywords): new function. Do things
3343         Right the new way.
3344         (gui_item_add_keyval_pair): re-write to cope with descriptors and
3345         return whether anything was changed.
3346         (update_gui_item_keywords): as it sounds.
3347
3348         * gui.h: declare widget_gui_parse_item_keywords.
3349
3350         * fns.c (safe_copy_tree): new function taken from Fcopy_tree.
3351         (Fcopy_tree): use it. Stops infloop death in bogus instantiators.
3352
3353 2001-01-17  Martin Buchholz <martin@xemacs.org>
3354
3355         * XEmacs 21.2.41 "Polyhymnia" is released.
3356
3357 2001-01-16  Didier Verna  <didier@xemacs.org>
3358
3359         * glyphs.c (image_instantiate): don't use fallbacks when
3360         instantiating a face's background pixmap by inheritance.
3361
3362 2001-01-14  Mike Sperber <mike@xemacs.org>
3363
3364         * sysdep.c (start_of_data): PDUMP implies ORDINARY_LINK.
3365         Conditionalize accordingly.
3366
3367 2001-01-16  Martin Buchholz  <martin@xemacs.org>
3368
3369         * dumper.c (pdump_file_get): Fix a compiler warning.
3370
3371 2001-01-15  Martin Buchholz  <martin@xemacs.org>
3372
3373         Make Purify happy when pdumping.
3374         * symbols.c (Fmake_variable_buffer_local): Make Purify happy, by
3375         iniitalizing all bits of new lisp object memory.
3376         * symbols.c (Fmake_local_variable): Likewise.
3377         * symbols.c (Fdontusethis_set_symbol_value_handler): Likewise.
3378         * symbols.c (Fdefvaralias): Likewise.
3379         * mule-charset.c (vars_of_mule_charset): Likewise.
3380
3381 2001-01-15  Martin Buchholz  <martin@xemacs.org>
3382         Add the `-nd' flag when running pre-dump operations under the debugger.
3383         * .dbxrc (run-temacs): Add `-nd'.
3384         * .dbxrc (update-elc): Likewise.
3385         * .dbxrc (dump-temacs): Likewise.
3386         * .gdbinit (run-temacs): Likewise.
3387         * .gdbinit (check-temacs): Likewise.
3388         * .gdbinit (update-elc): Likewise.
3389         * .gdbinit (dump-temacs): Likewise.
3390
3391 2001-01-14  Martin Buchholz  <martin@xemacs.org>
3392
3393         Allow building 64-bit executables on AIX with GNU malloc, e.g.
3394         export OBJECT_MODE=64
3395         configure --pdump --use-union-type=no
3396         * m/ibmrs6000.h (DATA_START): Define for 64-bit world.
3397         * gmalloc.c (__default_morecore): Remove pre-ANSI cruft.
3398
3399         * miscplay.c (sndcnv8U_2mono):
3400         Avoid two uses of `++' in the same expression.
3401         Suppresses a GCC warning.
3402
3403 2001-01-13  Martin Buchholz  <martin@xemacs.org>
3404
3405         Make sure future compilers don't miscompile alloc.c.
3406         * alloc.c:
3407         (MARK_STRUCT_AS_FREE): Make aliasing-optimization-resistant.
3408         (MARK_STRUCT_AS_NOT_FREE): Make aliasing-optimization-resistant.
3409
3410 2001-01-12  Martin Buchholz  <martin@xemacs.org>
3411
3412         * dumper.c: A little post-pdump-rename comment fixup.
3413
3414 2001-01-09  Jerry James  <james@eecs.ku.edu>
3415
3416         * lisp-disunion.h: Change LISP_TO_CVOID arg to match its use.
3417
3418 2001-01-13  Martin Buchholz  <martin@xemacs.org>
3419
3420         * *.[ch]: Globally rename symbols using the following `pdump-rename'
3421         script:
3422         #!/bin/sh
3423         replace_symbol () {
3424           (findn texi$; findn [ch]$) | xargs g -lw "$1" | xargs global-replace 's/(?<!_)\b'$1'\b(?!_)/'$2'/g'
3425         }
3426
3427         replace_symbol pdump_wire_lists pdump_weak_object_chains
3428         replace_symbol pdump_wire_list dump_add_weak_object_chain
3429
3430         replace_symbol pdump_wires pdump_root_objects
3431         replace_symbol pdump_wire dump_add_root_object
3432
3433         replace_symbol pdump_dump_wired pdump_dump_from_root_objects
3434         replace_symbol pdump_dump_structs pdump_dump_from_root_struct_ptrs
3435
3436         replace_symbol dumpstructinfos pdump_root_struct_ptrs
3437         replace_symbol dumpstructinfo_dynarr pdump_root_struct_ptr_dynarr
3438         replace_symbol dumpstructinfo pdump_root_struct_ptr
3439         replace_symbol dumpstruct dump_add_root_struct_ptr
3440
3441         replace_symbol dumpopaque dump_add_opaque
3442         replace_symbol dumpopaqueinfo_dynarr pdump_opaque_dynarr
3443         replace_symbol dumpopaqueinfos pdump_opaques
3444         replace_symbol dumpopaqueinfo pdump_opaque
3445
3446         replace_symbol nb_structdump nb_root_struct_ptrs
3447         replace_symbol nb_opaquedump nb_opaques
3448
3449         replace_symbol align_table pdump_align_table
3450         replace_symbol dump_header pdump_header
3451
3452         replace_symbol DUMP_SIGNATURE_LEN PDUMP_SIGNATURE_LEN
3453         replace_symbol DUMP_SIGNATURE PDUMP_SIGNATURE
3454
3455
3456 2001-01-12  Martin Buchholz  <martin@xemacs.org>
3457
3458         * s/aix4.h: Keep the C for AIX compiler from overaggressively
3459         optimizing bytecount_to_charcount().
3460
3461 2001-01-06  Golubev I. N.  <gin@mo.msk.ru>
3462
3463         * config.h.in:
3464         (HAVE_DLFCN_H): Removed.
3465         * sysdll.c: Remove HAVE__DLOPEN, HAVE_DLFCN_H.
3466
3467 2001-01-06  Martin Buchholz  <martin@xemacs.org>
3468
3469         Portable dumper maintainability improvements.
3470         * alloc.c (staticpro):
3471         * alloc.c (staticpro_nodump):
3472         * alloc.c (garbage_collect_1):
3473         * alloc.c (reinit_alloc_once_early):
3474         * alloc.c (init_alloc_once_early):
3475         * alloc.c: Move dumper functions to alloc.c.
3476         * dumper.c (pdump_backtrace):
3477         * dumper.c (pdump_dump_structs):
3478         * dumper.c (pdump_dump_opaques):
3479         * dumper.c (pdump_dump_rtables):
3480         * dumper.c (pdump_dump_wired):
3481         * dumper.c (pdump):
3482         * dumper.c (pdump_load_check):
3483         * dumper.c (pdump_load_finish):
3484         * dumper.c (pdump_file_unmap):
3485         * dumper.c (pdump_file_get):
3486         * dumper.c (pdump_resource_free):
3487         * dumper.c (pdump_resource_get):
3488         * dumper.c (pdump_file_free):
3489         * dumper.c (pdump_file_try):
3490         * dumper.c (pdump_load):
3491         Remove fixed size limits on staticpro(), staticpro_nodump(),
3492         dumpopaque(), dumpstruct() by using Dynarrs instead of static C arrays.
3493         Remove custom code for dumping lrecord_implementations_table - use
3494         dumpopaque instead.
3495         Remove (most of the) custom code for dumping staticpros - dump it
3496         like any other dynarr.
3497
3498         * alloc.h: Removed.  No longer useful, since dumper now more self-contained.
3499         * dumper.c: Moved functions from alloc.c.
3500         * alloc.c (dumpstruct): Moved to dumper.c.
3501         * alloc.c (dumpopaque): Likewise.
3502         * alloc.c (pdump_wire): Likewise.
3503         * alloc.c (pdump_wire_list): Likewise.
3504
3505         * lisp.h (Dynarr_sizeof): New.
3506         * lisp.h (Dynarr_begin): New.  Very slightly C++oid.
3507         * lisp.h (Dynarr_end): New.  Very slightly C++oid.
3508         * lisp.h (Lisp_Object_ptr_dynarr): New.  For staticpros.
3509
3510         * lisp.h (dumpstruct): Define to nothing if not PDUMPing.
3511         * lisp.h (dumpopaque): ditto.
3512         * lisp.h (pdump_wire): ditto.
3513         * lisp.h (pdump_wire_list): ditto.
3514
3515 2001-01-09  Martin Buchholz  <martin@xemacs.org>
3516
3517         * make-src-depend (PrintPatternDeps):
3518         Use `sort' to make output independent of perl version.
3519
3520 2001-01-08  Martin Buchholz  <martin@xemacs.org>
3521
3522         Port to Netbsd 1.5.
3523         * unexelf.c: Remove (never used) bogus Netbsd-specific cruft.
3524         * s/netbsd.c: Use unexelf.o if __ELF__ is defined.
3525
3526 2001-01-03  Didier Verna  <didier@xemacs.org>
3527
3528         * event-stream.c (emacs_handle_focus_change_preliminary): ensure
3529         that `focus_frame' is alive before thinking of calling
3530         `redisplay_redraw_cursor' on it.
3531
3532 2001-01-08  Martin Buchholz <martin@xemacs.org>
3533
3534         * XEmacs 21.2.40 is released.
3535
3536 2001-01-06  Golubev I. N.  <gin@mo.msk.ru>
3537
3538         * regex.c: Replace PREFETCH with REGEX_PREFETCH.
3539
3540 2001-01-06  Martin Buchholz  <martin@xemacs.org>
3541
3542         * alloc.c (dbg_valmask): Make const.
3543         * alloc.c (dbg_typemask): Make const.
3544         * alloc.c (dbg_USE_UNION_TYPE): Make const.
3545         * alloc.c (dbg_valbits): Make const.
3546         * alloc.c (dbg_gctypebits): Make const.
3547
3548 2001-01-06  Stephen J. Turnbull  <stephen@xemacs.org>
3549
3550         * redisplay-x.c (x_bevel_area):
3551         redisplay.h (struct rune):
3552         Typo fixes in comments.
3553
3554 2001-01-05  Andy Piper  <andy@xemacs.org>
3555
3556         * glyphs-x.c (x_redisplay_widget): use size changed for offset
3557         adjustment.
3558
3559         * menubar.c (menubar_visible_p_changed): don't mark frame changed.
3560
3561 2001-01-05  Martin Buchholz  <martin@xemacs.org>
3562
3563         * alloc.c (pure-bytes-used): Remove unused mendacious variable.
3564
3565         * mule-ccl.c (stack_idx_of_map_multiple):
3566         Non const global data must not be initialized!
3567         Found by MIYASHITA Hisashi.
3568
3569 2001-01-02  Andy Piper  <andy@xemacs.org>
3570
3571         * frame.c (change_frame_size): make sure frame size is always
3572         marked as changed.
3573
3574         * glyphs.c (image_instance_layout): minor code reuse.
3575
3576         * window.c (Fcurrent_window_configuration): revert previous
3577         change.
3578
3579 2001-01-02  Martin Buchholz  <martin@xemacs.org>
3580
3581         * glyphs.h:
3582         * glyphs.c (make_image_instance_cache_hash_table): Use ANSI prototypes.
3583
3584 2000-12-31  Andy Piper  <andy@xemacs.org>
3585
3586         * glyphs-x.c (x_unmap_subwindow): return focus to enclosing frame
3587         when widget gets unmapped.
3588
3589         * event-Xt.c (emacs_Xt_handle_widget_losing_focus): new
3590         function. Make sure widgets losing focus don't just drop it.
3591         (handle_focus_event_1): record the widget with focus.
3592
3593 2000-12-31  Andy Piper  <andy@xemacs.org>
3594
3595         * window.c (allocate_window): use
3596         make_image_instance_cache_hash_table.
3597         (make_dummy_parent): ditto.
3598         (Fset_window_configuration): ditto.
3599
3600         * glyphs.h (INSTANTIATOR_TYPE): new macro.  declare new functions.
3601
3602         * glyphs.c (process_image_string_instantiator): use
3603         INSTANTIATOR_TYPE.
3604         (get_image_instantiator_governing_domain): ditto.
3605         (normalize_image_instantiator): ditto.
3606         (instantiate_image_instantiator): ditto.
3607         (make_image_instance_1): ditto.
3608         (image_instantiate): ditto. Key on glyph *and* instantiator type.
3609         (instantiator_eq_equal): new function for use with instance hash
3610         tables.
3611         (instantiator_eq_hash): ditto.
3612         (make_image_instance_cache_hash_table): create a suitable hash
3613         table for storing image instances.
3614
3615         * elhash.h (hash_table_weakness): new internal weakness type
3616         HASH_TABLE_KEY_CAR_VALUE_WEAK.
3617         declare new functions.
3618
3619         * elhash.c (finish_marking_weak_hash_tables): introduce yet
3620         another weakness type for glyphs.
3621         (make_standard_lisp_hash_table): new function split out from
3622         make_general_lisp_hash_table.
3623         (make_lisp_hash_table): call make_standard_lisp_hash_table.
3624         (hash_table_instantiate): ditto.
3625         (Fmake_hash_table): ditto.
3626
3627 2000-12-31  Martin Buchholz <martin@xemacs.org>
3628
3629         * XEmacs 21.2.39 is released.
3630
3631 2000-12-29  Andy Piper  <andy@xemacs.org>
3632
3633         * menubar.c (menubar_visible_p_changed): signal the frame changed.
3634
3635         * glyphs-x.c (x_redisplay_widget): Re-calculate widget offsets if
3636         the frame has changed so that we pick up geometry changes such as
3637         menubar visibility.
3638
3639 2000-12-28  Andy Piper  <andy@xemacs.org>
3640
3641         * lastfile.c (my_ebss): make a char array so we can pad the
3642         bss. Fixes cygwin unexec.
3643
3644         * unexcw.c: invert BROKEN_GDB to NO_DEBUG.
3645
3646 2000-12-26  Andy Piper  <andy@xemacs.org>
3647
3648         * event-Xt.c (emacs_Xt_force_event_pending): add some verbose
3649         comments and try and be more precise about a non-/SIGIO world.
3650         (emacs_Xt_event_pending_p): use XtAppPending under cygwin and non
3651         SIGIO.
3652
3653         * redisplay-output.c (redisplay_normalize_glyph_area): make sure
3654         we don't normalize to zero width or height.
3655
3656 2000-12-24  Andy Piper  <andy@xemacs.org>
3657
3658         * Makefile.in.in (ldflags): add -mwindows when appropriate.
3659
3660 2000-08-18  Golubev I. N.  <gin@mo.msk.ru>
3661
3662         * s/sco5.h: SCO 5 has pty support.
3663
3664 2000-07-20  Kazuyuki IENAGA <ienaga@xemacs.org>
3665
3666         * input-method-xlib.c: supports both XIM_XLIB and USE_XFONTSET.
3667         input-method-xlib.c contains whole contents of input-method-xfs.c,
3668         so we can use input-method-xlib.c's code for USE_XFONTSET
3669         using #ifdefs.
3670         * input-method-xfs.c: removed.
3671
3672 2000-12-20  Stephen Turnbull  <stephen@xemacs.org>
3673
3674         * file-coding.h (enum coding_category_type): reorder enumerators to
3675         make autodetection safer.  Make CODING_CATEGORY_LAST an enumerator
3676         (now one greater than largest real coding_category_type enumerator).
3677         * file-coding.c (coding_category_symbol, coding_category_by_priority,
3678         coding_category_system, fcd_descriptihon_1, decode_coding_category,
3679         Fcoding_category_list, Fset_coding_priority_list,
3680         Fcoding_priority_list, coding_system_from_mask, Fdetect_coding_region,
3681         vars_of_file_coding): adjust for change in CODING_CATEGORY_LAST.
3682
3683 2000-12-18  Yoshiki Hayashi  <yoshiki@xemacs.org>
3684
3685         * redisplay-output.c (redisplay_clear_top_of_window): Remove static.
3686         * redisplay-output.c (redisplay_output_window): Clear top of window
3687         when face is changed.
3688         * redisplay-x.c (x_redraw_exposed_window): Call
3689         redisplay_clear_top_of_window.
3690         * redisplay.h: Publish redisplay_clear_top_of_window.
3691
3692 2000-12-18  Yoshiki Hayashi  <yoshiki@xemacs.org>
3693
3694         * buffer.c (Fkill_buffer): Map over all devices.
3695         * window.c (window_loop): Remove UNSHOW_BUFFER code.
3696         (list_windows): New function.
3697         (list_all_windows): Ditto.
3698         (Freplace_buffer_in_windows): Use them.
3699
3700 2000-02-02   Daiki Ueno <ueno@ueda.info.waseda.ac.jp>
3701
3702         * database.c (berkdb_subtype): Recognize new subtype `queue'.
3703         (Fopen_database): Use `db_create' instead of `db_open'.
3704         (syms_of_database): Initialize Qqueue.
3705
3706 2000-12-13  Yoshiki Hayashi  <yoshiki@xemacs.org>
3707
3708         * buffer.c (common_init_complex_vars_of_buffer): Initialize
3709         buffer_local_face_property.
3710         * buffer.h (struct buffer): New member buffer_local_face_property.
3711         * window.c (Fset_window_buffer):  Mark window's face as changed
3712         when buffer has buffer local face.
3713         * window.h (MARK_WINDOW_FACES_CHANGED): New macro.
3714         * objects.c (color_after_change): Set buffer_local_face_property
3715         when locale of face specifier is buffer.
3716         * objects.c (font_after_change): Ditto.
3717         * objects.c (face_boolean_after_change): Ditto.
3718         * glyphs.c (image_after_change): Ditto.
3719
3720 2000-12-09  Dan Holmsand  <dan@eyebee.com>
3721
3722         * nt.c (mswindows_fstat): Report file permissions, volume serial
3723         number, etc. Code adapted from FSF Emacs 20.7.
3724
3725 2000-12-09  Dan Holmsand  <dan@eyebee.com>
3726
3727         * sysfile.h (lstat): Make lstat an alias for xemacs_stat instead
3728         of stat when we don't have symbolic links, to make sure
3729         mswindows_stat is called on mswindows.
3730
3731 2000-12-12  Yoshiki Hayashi  <yoshiki@xemacs.org>
3732
3733         * alloca.c: Define malloc to xmalloc only when built with XEmacs.
3734
3735 2000-12-12  Martin Buchholz  <martin@xemacs.org>
3736
3737         * doprnt.c (emacs_doprnt_1): More printing fixes.
3738         Make printing of numbers compatible with libc and FSF Emacs.
3739         BUG was: (format "%6.3f" 1.2) ==>"1.200000"
3740         Use the system printf to do most of the hard work of formatting,
3741         instead of doprnt_1().
3742         Calculate memory to allocate for format string.
3743         Remove arbitrary limit on precision, e.g. (format "%.1000f" 3.14)
3744         (doprnt_1): Cleaner code and documentation.
3745
3746 2000-12-01  Jerry James  <james@eecs.ukans.edu>
3747
3748         * Makefile.in.in: Use the loop variable to install headers.
3749
3750 2000-12-04  Yoshiki Hayashi  <yoshiki@xemacs.org>
3751
3752         * window.c (Fsplit_window): Don't invalidate face cache.
3753
3754 2000-12-04  Yoshiki Hayashi  <yoshiki@xemacs.org>
3755
3756         * minibuf.c (Fall_completions): Undo the previous change
3757         which removed checking elements start with space.
3758
3759 2000-12-06  Stephen Turnbull  <stephen@xemacs.org>
3760
3761         * mule-canna.c: Didier suppression.
3762
3763 2000-12-06  Stephen Turnbull  <stephen@xemacs.org>
3764
3765         * mule-canna.c: rename static unsigned char buf[] to key_buffer
3766         (warning suppression).  Add English comment translations.
3767
3768 2000-12-05  Martin Buchholz  <martin@xemacs.org>
3769
3770         * unexelfsgi.c (unexec): Better test for mmap failure.
3771
3772 2000-12-05  Martin Buchholz <martin@xemacs.org>
3773
3774         * XEmacs 21.2.38 is released.
3775
3776 2000-12-05  Martin Buchholz  <martin@xemacs.org>
3777
3778         * redisplay.c (bar-cursor): Make a user variable.
3779
3780         * symsinit.h: Add init_postgresql_from_environment.
3781
3782 2000-12-04  Yoshiki Hayashi  <yoshiki@xemacs.org>
3783
3784         * regex.c: Convert to clean C.
3785
3786 2000-12-05  Dan Holmsand  <dan@eyebee.com>
3787
3788         * realpath.c:
3789         Don't #include sysfile.h. Revert to duplicating PATH_MAX
3790         initialization.
3791         (sys_readlink): renamed to system_readlink to avoid conflict with
3792         the other sys_readlink.
3793
3794 2000-12-04  Hiroaki Abe  <h-abe@pc.highway.ne.jp>
3795
3796         * dumper.c (pdump_file_get): Correct uses of pdump_fd.
3797
3798 2000-12-04  Stephen J. Turnbull  <stephen@xemacs.org>
3799
3800         * postgresql.c (init_postgresql_from_environment): new function.
3801         (vars_of_postgresql): Move code initializing Lisp variables out and
3802         into init_postgresql_from_environment.
3803         emacs.c (main_1): Call init_postgresql_from_environment if and only
3804         if running a dumped XEmacs.
3805
3806 2000-08-31  Dan Holmsand  <dan@eyebee.com>
3807
3808         * buffer.c: Make find-file-compare-truenames default to true on
3809         windows.
3810
3811         * realpath.c (win32_abs_start):
3812         (cygwin_readlink):
3813         (win32_readlink): New functions.
3814         (xrealpath): Return really real filenames on windows.
3815
3816         * fileio.c (Ffile_truename): Make file-truename work on windows.
3817
3818 2000-11-29  Didier Verna  <didier@xemacs.org>
3819
3820         * faces.c (MAYBE_UNFROB_BACKGROUND_PIXMAP): new macro.
3821         * faces.c (update_face_cachel_data): use it.
3822         * faces.c (add_face_cachel): use it. Complete background pixmap
3823         frobbing in face cache if `update_face_cachel_data' has not done so.
3824
3825 2000-11-29  Yoshiki Hayashi  <yoshiki@xemacs.org>
3826
3827         * search.c (string_match_1): Don't set last_thing_searched
3828         when search failed.
3829
3830 2000-11-27  Yoshiki Hayashi  <yoshiki@xemacs.org>
3831
3832         * buffer.c: Include casetab.h
3833         (common_init_complex_vars_of_buffer): Use new case-table object.
3834         * buffer.h: Include casetab.h
3835         * buffer.h (MAKE_TRT_TABLE): Use generic char-table.
3836         (DOWNCASE_TABLE_OF): Ditto.
3837         * bufslots.h: Remove char-tables and add case-table.
3838         * casetab.c: Include casetab.h
3839         (CASE_TABLE_P): Removed.
3840         (mark_case_table): New function.
3841         (allocate_case_table): New function.
3842         (Fcase_table_p): Use new case-table.
3843         (case_table_char): New function.
3844         (Fget_case_table): Ditto.
3845         (Fput_case_table): Ditto.
3846         (Fput_case_table_pair): Ditto.
3847         (Fcopy_case_table): Ditto.
3848         (Fcurrent_case_table): Return case-table.
3849         (Fstandard_case_table): Return case-table.
3850         (Fset_case_table): Fix doc-string.
3851         (set_case_table): Use case-table
3852         (syms_of_casetab): DEFSUBR new functions.
3853         (complex_vars_of_casetab): Set up standard case-table.
3854         * casetab.h: New file.
3855         * editfns.c: Include casetab.h
3856         (Fcompare_buffer_substrings): Use case-table.
3857         * inline.c: Include casetab.h
3858         * lisp.h: Remove bogus extern.
3859         * lrecord.h (lrecord_type): Add lrecord_type_case_table.
3860         * search.c: Include casetab.h
3861         (TRANSLATE_ASCII): Removed.
3862         (TRANSLATE): Unconditionally translate character.
3863         (looking_at_1): Use case-table.
3864         (string_match_1): Ditto.
3865         (fast_string_match): Ditto.
3866         (search_command): Ditto.
3867         (search_buffer): Separate boyer_moore.  Check whether
3868         boyer_moore is possible.
3869         (simple_search): New function.
3870         (boyer_moore): Separated from search_buffer. Translate char.
3871
3872 2000-11-24  Yoshiki Hayashi  <yoshiki@xemacs.org>
3873
3874         * regex.c (RE_TR_ASCII): Removed.
3875         (RE_TRANSLATE): Unconditionally use TRT_TABLE.
3876         (PATFETCH): Call PATFETCH_RAW.
3877         (PATFETCH_RAW): Fetch Emchar.
3878         (PATUNFETCH): Decrement charptr.
3879         (GET_BUFFER_SPACE): Rename b to buf_end.
3880         (BUF_PUSH): Ditto.
3881         (BUF_PUSH_2): Ditto.
3882         (BUF_PUSH_3): Ditto.
3883         (EXTEND_BUFFER): Ditto.
3884         (SET_LIST_BIT): Ditto.
3885         (regex_compile): Ditto.  Translate non ASCII char.
3886         (compile_range): Ditto.
3887         (re_search_2): Ditto.
3888         (re_match_2_internal): Compare Emchar.
3889         (bcmp_translate): Ditto.
3890
3891 2000-11-29  Stephen J. Turnbull  <turnbull@xemacs.org>
3892
3893         * lisp.h (basic char/int typedefs):  comment improvement.
3894
3895 2000-11-24  Stephen J. Turnbull  <turnbull@xemacs.org>
3896
3897         * emacs.c (main_1):  unconditional pdump unstomping; don't save and
3898         unstomp inhibit_site_lisp.  Improve comments.
3899
3900 2000-11-22  Stephen J. Turnbull  <turnbull@xemacs.org>
3901
3902         * mule-charset.c (Fcharset_property):  improve type checking, comments.
3903
3904 2000-11-28  Andy Piper  <andy@xemacs.org>
3905
3906         * redisplay-output.c (redisplay_output_subwindow): make sure we do
3907         clipped display for windows in the gutter also.
3908         (redisplay_display_boxes_in_window_p): change semantics of return
3909         codes to be more intuitive.
3910
3911         * gutter.h: declare display_boxes_in_gutter_p.
3912
3913         * gutter.c (display_boxes_in_gutter_p): new function for
3914         redisplay.
3915
3916 2000-11-22  Andy Piper  <andy@xemacs.org>
3917
3918         * glyphs-x.c (image_instantiator_format_create_glyphs_x): change
3919         autodetect domain.
3920
3921 2000-11-21  Yoshiki Hayashi  <yoshiki@xemacs.org>
3922
3923         * callproc.c (Fold_call_process_internal):
3924         * gpm.c (Freceive_gpm_event):
3925         (tty_get_foreign_selection): Might be just warning supression.
3926         * fileio.c (Fwrite_region_internal):
3927         (Fset_visited_file_modtime):
3928         * keymap.c (event_matches_key_specifier_p):
3929         Initialize GCPROed variable.
3930
3931         * menubar-x.c (command_builder_find_menu_accelerator):
3932         Initialize before use.
3933
3934 2000-11-23  Andy Piper  <andy@xemacs.org>
3935
3936         * unexcw.c (unexec): make the resulting executable executable.
3937
3938 2000-11-21  Martin Buchholz  <martin@xemacs.org>
3939
3940         * doc.c (get_doc_string):
3941         Use size_t, not int, for result of XSTRING_LENGTH.
3942
3943         * cmds.c (Fdelete_char):
3944         * cmds.c (Fpoint_at_eol):
3945         * cmds.c (Fself_insert_command):
3946         Use EMACS_INT, not int, for result of XINT.
3947         Someday, someone will want to insert more than 2**31 identical characters.
3948
3949         * cmds.c (Fdelete_char):
3950         * cmds.c (Fdelete_backward_char):
3951         * syntax.c (Fforward_word):
3952         * syntax.c (Fforward_comment):
3953         Make COUNT argument optional, for consistency with forward-char et al.
3954
3955 2000-11-22  Martin Buchholz  <martin@xemacs.org>
3956
3957         * lisp.h:
3958         * print.c (long_to_string):
3959         Return a useful value: the pointer at end of data written.
3960
3961         * doprnt.c:
3962         Use `static const char * const' for constant strings.
3963         (union printf_arg): Delete `i', `ui' members.
3964         (get_doprnt_args):
3965         (emacs_doprnt_1):
3966         Fix LP64 platform bug: (format "%d" most-positive-fixnum) ==> "-1"
3967         Do all printf-ing via the `l' specifier.
3968         Use EMACS_INT instead of int.
3969         Optimize.
3970
3971 2000-11-20  Didier Verna  <didier@xemacs.org>
3972
3973         * faces.c (update_face_cachel_data): don't frob the background
3974         pixmap when the window is being created. The face is needed but
3975         does not exist yet.
3976
3977 2000-11-20  Andy Piper  <andy@xemacs.org>
3978
3979         * unexcw.c (copy_executable_and_dump_data_section): Only do bss
3980         messing with a debug environment.
3981
3982 2000-11-20  Martin Buchholz  <martin@xemacs.org>
3983
3984         * emacs.c (__sti__iflPNGFile_c___): Pedantically correct prototype.
3985
3986 2000-11-20  Martin Buchholz  <martin@xemacs.org>
3987
3988         * casetab.c (Fcase_table_p): Fix compile error and crash.
3989
3990 2000-11-18  Philip Aston  <philipa@mail.com>
3991
3992         * s/cygwin32.h: Cygwin has SVR4-like pty support.
3993
3994 2000-11-18  Martin Buchholz  <martin@xemacs.org>
3995
3996         * fileio.c (Fexpand_file_name): GCPRO bug!  Protect `handler'.
3997         * filelock.c (lock_file): GCPRO bug! Initialize all GCPROed vars!
3998
3999 2000-11-17  Martin Buchholz  <martin@xemacs.org>
4000
4001         * config.h.in: Define HAVE_ELF_H if elf.h exists.
4002         * unexelf.c: Use HAVE_ELF_H.
4003         * unexelfsgi.c: Fix bug with dumped xemacs stdout/stderr not working.
4004         I copied FSF Emacs 20.7 unexelf.c to unexelfsgi.c and ANSIfied it.
4005         Max Matveev <makc@sgi.com> removed non-SGI-relevant parts and tested.
4006         Greg Harrington <greg_harrington@hotmail.com> provided a machine
4007         for testing.
4008         So this is an unexelfsgi.c from a different line of development.
4009
4010 2000-11-16  Yoshiki Hayashi  <yoshiki@xemacs.org>
4011
4012         * regex.c (RE_TR_ASCII): New function.
4013         (RE_TRANSLATE): Call it.
4014
4015 2000-11-16  Yoshiki Hayashi  <yoshiki@xemacs.org>
4016
4017         * buffer.h (TRT_TABLE_OF): Remove assert.
4018         (IN_TRT_TABLE_DOMAIN): Removed.
4019
4020 2000-11-16  Gunnar Evermann  <ge204@eng.cam.ac.uk>
4021
4022         * free-hook.c (log_gcpro):
4023         (show_gcprohist): Add support for GCPRO5.
4024
4025 2000-11-08  Stephen J. Turnbull  <stephen@xemacs.org>
4026
4027         * emacs.c (main_1): Improve -sd error message when --pdump=no.
4028
4029 2000-11-16  Olivier Galibert  <galibert@xemacs.org>
4030
4031         * symeval.h: Declare flush_all_buffer_local_cache.
4032
4033         * symbols.c: Change XD_LO_RESET_NIL into XD_LISP_OBJECTs.
4034         (flush_buffer_local_cache): Added.
4035         (flush_all_buffer_local_cache): Added.
4036
4037         * lrecord.h: Remove unused XD_LO_RESET_NIL.
4038
4039         * dumper.c (pdump_register_sub): Remove unused XD_LO_RESET_NIL.
4040         (pdump_dump_data): Ditto.
4041         (pdump_reloc_one): Ditto.
4042         (pdump): Remove unused pdump_qnil.  Flush buffer local caches
4043         before dumping.
4044
4045
4046 2000-11-14  Yoshiki Hayashi  <yoshiki@xemacs.org>
4047
4048         * buffer.c: Remove if 0'ed entry.
4049         * buffer.h: Rewrite TRT to use char-table.
4050         * bufslots.h: Remove mirror tables.
4051         * casetab.c: Remove mirror tables.
4052         (CASE_TABLE_P): New macro.
4053         (Fcase_table_p): Element of a case table is string or char-table.
4054         (make_mirror_trt_table): Removed.
4055         (set_case_table): Setup char-table from strings for backward
4056         compatibility.
4057         * dired.c (Fdirectory_files):
4058         * dired-msw.c: (mswindows_get_files):
4059         * lisp.h: Change prototype of re_pattern_buffer.
4060         * regex.c: (RE_TRANSLATE): New macro.
4061         (TRANSLATE_P): Ditto.
4062         Change translate to type RE_TRANSLATE_TYPE.
4063         * regex.h: Define RE_TRANSLATE_TYPE
4064         * search.c (TRANSLATE): New macro.
4065         (TRANSLATE_ASCII): New macro.
4066         Translate table is changed to Lisp_Object.
4067         (signal_failure): Inhibit return.
4068
4069 2000-11-14  Yoshiki Hayashi  <yoshiki@xemacs.org>
4070
4071         * device-msw.c:
4072         * eldap.c:
4073         * event-Xt.c:
4074         * event-stream.c:
4075         * print.c:
4076         Do UNGCPRO before return.
4077
4078 2000-11-14  Martin Buchholz <martin@xemacs.org>
4079
4080         * XEmacs 21.2.37 is released.
4081
4082 2000-11-13  Yoshiki Hayashi  <yoshiki@xemacs.org>
4083
4084         * fileio.c (Finsert_file_contents_internal): UNGCPRO before return.
4085         Add comments about discarded return value.
4086
4087 2000-11-09  Yoshiki Hayashi  <yoshiki@xemacs.org>
4088
4089         * callint.c:
4090         * event-stream.c: Fix comments.  Remove some #if 0'ed part.
4091
4092 2000-10-27  Andy Piper  <andy@xemacs.org>
4093
4094         * gutter.c (Fset_default_gutter_position): default left and right
4095         gutters to visible.
4096         (calculate_gutter_size): calculate resonable heuristic for left
4097         and right gutter sizes.
4098         (specifier_vars_of_gutter): change left and right gutter sizes to
4099         autodetect.
4100         (calculate_gutter_size_from_display_lines): new function.
4101         (output_gutter): check for resizing on left and right gutters.
4102         (clear_gutter): don't special case top and left gutters.
4103         (specifier_vars_of_gutter): use new signature for
4104         set_specifier_caching.
4105
4106         * glyphs-x.c (x_redisplay_widget): spelling fix.
4107         * glyphs.c (specifier_vars_of_glyphs):
4108         * menubar.c (specifier_vars_of_menubar):
4109         * redisplay.c (specifier_vars_of_redisplay):
4110         * toolbar.c (specifier_vars_of_toolbar):
4111         * window.c (specifier_vars_of_window):
4112         * scrollbar.c (specifier_vars_of_scrollbar):
4113         (complex_vars_of_scrollbar): use new signature for
4114         set_specifier_caching.
4115
4116         * specifier.c (set_specifier_caching): include recompute flag.
4117         (recompute_one_cached_specifier_in_window): always recompute if
4118         flag set.
4119         (recompute_one_cached_specifier_in_frame): ditto.
4120
4121         * specifier.h (struct specifier_caching): add recompute flag.
4122
4123 2000-10-24  Andy Piper  <andy@xemacs.org>
4124
4125         * unexcw.c (copy_executable_and_dump_data_section): add new
4126         BSS_PAD_SIZE so that we can re-instate a mini-bss. This keeps gdb
4127         5.0 happy.
4128
4129 2000-11-06  Yoshiki Hayashi  <yoshiki@xemacs.org>
4130
4131         * console-x.h (x_device): New member modifier_release_time.
4132         * event-Xt.c (x_handle_sticky_modifiers):
4133         Bound interval modifier keys are sticky.
4134         * event-stream.c (Vmodifier_keys_sticky_time): New variable.
4135         * events.h: extern it.
4136
4137 2000-11-06  Yoshiki Hayashi  <yoshiki@xemacs.org>
4138
4139         * cmdloop.c (Fcommand_loop_1): Just add C-g to event queue.
4140
4141 2000-11-06  Yoshiki Hayashi  <yoshiki@xemacs.org>
4142
4143         * event-stream.c (execute_command_event): Preserve current_events
4144         and the like when event is misc-user-event.
4145         Inhibit quit during the call to maybe_echo_keys.
4146
4147 2000-10-31  Yoshiki Hayashi  <yoshiki@xemacs.org>
4148
4149         * filelock.c (lock_buffer): Cope with kill-buffer. Don't create a
4150         symlink when buffer is killed.
4151         (inhibit_clash_detection): New variable.
4152
4153 2000-10-30  Yoshiki Hayashi  <yoshiki@xemacs.org>
4154
4155         * console.c (Fset_input_method): Trigger redisplay on tty.
4156
4157 2000-11-07  Martin Buchholz  <martin@xemacs.org>
4158
4159         * process.c (Fprocess_status): Revert to previous behavior:
4160         (process-status "nosuchprocess") ==> nil
4161
4162 2000-11-06  Martin Buchholz  <martin@xemacs.org>
4163
4164         * mule-charset.h (CHARSET_BY_LEADING_BYTE):
4165         Work around another GCC 2.95.2 optimizer bug.
4166
4167 2000-11-02  Martin Buchholz  <martin@xemacs.org>
4168
4169         * process.c (Fget_process): Use LIST_LOOP_2.
4170         (kill_buffer_processes): Use LIST_LOOP_2.
4171
4172         * minibuf.c (Fall_completions):
4173         Delete old non-functional code for FSF fourth argument.
4174
4175         * frame.c (frame_matches_frame_spec):
4176         Renamed from `frame_matches_frametype'.  Update all callers.
4177         (device_matches_device_spec):
4178         Renamed from 'device_matches_console_spec'.  Update all callers.
4179
4180         * doc.c (Fsubstitute_command_keys):
4181         Remove buffer overflow crash.  Small code cleanups.
4182
4183         * casetab.c (check_case_table): Simpler code.
4184
4185         * window.c (Freplace_buffer_in_windows):
4186         Give this the same WHICH-FRAMES and WHICH-DEVICES parameters
4187         (and similar implementation) as Fdelete_windows_on.
4188         Update all callers.
4189
4190         * alloc.c (Fmake_list):
4191         * alloc.c (make_vector):
4192         * alloc.c (Fmake_vector):
4193         * alloc.c (make_bit_vector):
4194         * alloc.c (Fmake_bit_vector):
4195         * alloc.c (Fbit_vector):
4196         * alloc.c (Fmake_string):
4197         * alloc.c (Fpurecopy):
4198         * alloc.c (Fmemory_limit):
4199         * buffer.c:
4200         * buffer.c (Fget_buffer):
4201         * buffer.c (Fkill_buffer):
4202         * buffer.c (complex_vars_of_buffer):
4203         * bytecode.c (Fcompiled_function_stack_depth):
4204         * callint.c (Fprefix_numeric_value):
4205         * event-stream.c:
4206         * event-stream.c (Fread_key_sequence):
4207         * casetab.c:
4208         * casetab.c (Fcase_table_p):
4209         * casetab.c (check_case_table):
4210         * casetab.c (Fset_case_table):
4211         * casetab.c (Fset_standard_case_table):
4212         * chartab.c:
4213         * chartab.c (Fchar_table_type):
4214         * chartab.c (Freset_char_table):
4215         * chartab.c (Fget_char_table):
4216         * chartab.c (Fget_range_char_table):
4217         * chartab.c (Fput_char_table):
4218         * chartab.c (Fmap_char_table):
4219         * chartab.c (Fcategory_table_p):
4220         * chartab.c (Fcheck_category_at):
4221         * chartab.c (Fchar_in_category_p):
4222         * chartab.c (Fcategory_table):
4223         * chartab.c (Fcopy_category_table):
4224         * chartab.c (Fset_category_table):
4225         * chartab.c (Fcategory_designator_p):
4226         * chartab.c (Fcategory_table_value_p):
4227         * cmds.c (Fdelete_char):
4228         * cmds.c (Fdelete_backward_char):
4229         * cmds.c (Fself_insert_command):
4230         * cmds.c (Fself_insert_internal):
4231         * console.c (Fvalid_console_type_p):
4232         * console.c (Fcdfw_console):
4233         * console.c (Fconsole_type):
4234         * console.c (Fconsole_name):
4235         * console.c (Fconsole_device_list):
4236         * console.c (Fconsole_on_window_system_p):
4237         * data.c:
4238         * data.c (Feq):
4239         * data.c (Fold_eq):
4240         * data.c (Fsubr_interactive):
4241         * data.c (Fchar_to_int):
4242         * data.c (Fint_to_char):
4243         * data.c (Fsetcar):
4244         * data.c (Fsetcdr):
4245         * data.c (Fnumber_to_string):
4246         * data.c (Fstring_to_number):
4247         * data.c (Frem):
4248         * database.c (mark_database):
4249         * database.c (finalize_database):
4250         * database.c (Fdatabase_live_p):
4251         * database.c (Fdatabasep):
4252         * device-x.c (Fx_get_resource):
4253         * device.c (Fdfw_device):
4254         * dired.c:
4255         * dired.c (Ffile_name_completion):
4256         * dired.c (Ffile_name_all_completions):
4257         * dired.c (Fuser_name_completion):
4258         * dired.c (Fuser_name_completion_1):
4259         * dired.c (Fuser_name_all_completions):
4260         * doc.c (Fdocumentation):
4261         * doc.c (Fdocumentation_property):
4262         * doc.c (Fsubstitute_command_keys):
4263         * editfns.c:
4264         * editfns.c (Fchar_to_string):
4265         * editfns.c (Fstring_to_char):
4266         * editfns.c (Ftemp_directory):
4267         * editfns.c (Finsert_char):
4268         * editfns.c (Fbuffer_substring_no_properties):
4269         * editfns.c (Fnarrow_to_region):
4270         * editfns.c (Fchar_equal):
4271         * editfns.c (Fchar_Equal):
4272         * editfns.c (Ftranspose_regions):
4273         * emacs.c (Fdump_emacs):
4274         * eval.c (Fthrow):
4275         * eval.c (Fcommand_execute):
4276         * eval.c (Fautoload):
4277         * eval.c (Fbacktrace):
4278         * eval.c (Fbacktrace_frame):
4279         * events.c:
4280         * events.c (Fcopy_event):
4281         * events.c (Fcharacter_to_event):
4282         * events.c (Fevent_button):
4283         * events.c (Fevent_process):
4284         * extents.c:
4285         * extents.c (Fnext_extent_change):
4286         * extents.c (Fextent_property):
4287         * faces.c (Ffacep):
4288         * faces.c (Fmake_face):
4289         * file-coding.c:
4290         * file-coding.c (Fencode_shift_jis_char):
4291         * file-coding.c (Fencode_big5_char):
4292         * fileio.c (Ffile_name_directory):
4293         * fileio.c (Ffile_name_nondirectory):
4294         * fileio.c (Ffile_name_as_directory):
4295         * fileio.c (Fdirectory_file_name):
4296         * fileio.c (Ffile_truename):
4297         * fileio.c (Fsubstitute_in_file_name):
4298         * fileio.c (Ffile_modes):
4299         * fileio.c (Fset_file_modes):
4300         * fileio.c (Fset_default_file_modes):
4301         * fileio.c (Fverify_visited_file_modtime):
4302         * floatfns.c (Facos):
4303         * floatfns.c (Fasin):
4304         * floatfns.c (Fatan):
4305         * floatfns.c (Fcos):
4306         * floatfns.c (Fsin):
4307         * floatfns.c (Ftan):
4308         * floatfns.c (Fbessel_j0):
4309         * floatfns.c (Fbessel_j1):
4310         * floatfns.c (Fbessel_jn):
4311         * floatfns.c (Fbessel_y0):
4312         * floatfns.c (Fbessel_y1):
4313         * floatfns.c (Fbessel_yn):
4314         * floatfns.c (Ferf):
4315         * floatfns.c (Ferfc):
4316         * floatfns.c (Flog_gamma):
4317         * floatfns.c (Fexp):
4318         * floatfns.c (Fexpt):
4319         * floatfns.c (Flog):
4320         * floatfns.c (Flog10):
4321         * floatfns.c (Fsqrt):
4322         * floatfns.c (Fcube_root):
4323         * floatfns.c (Facosh):
4324         * floatfns.c (Fasinh):
4325         * floatfns.c (Fatanh):
4326         * floatfns.c (Fcosh):
4327         * floatfns.c (Fsinh):
4328         * floatfns.c (Ftanh):
4329         * floatfns.c (Fabs):
4330         * floatfns.c (Ffloat):
4331         * floatfns.c (Flogb):
4332         * floatfns.c (Fceiling):
4333         * floatfns.c (Ffloor):
4334         * floatfns.c (Fround):
4335         * floatfns.c (Ftruncate):
4336         * floatfns.c (Ffceiling):
4337         * floatfns.c (Fffloor):
4338         * floatfns.c (Ffround):
4339         * floatfns.c (Fftruncate):
4340         * fns.c (Fstring_equal):
4341         * fns.c (Fstring_lessp):
4342         * fns.c (concat2):
4343         * fns.c (concat3):
4344         * fns.c (vconcat2):
4345         * fns.c (vconcat3):
4346         * fns.c (Fsubstring):
4347         * fns.c (Fassoc):
4348         * fns.c (Fold_assoc):
4349         * fns.c (assoc_no_quit):
4350         * fns.c (Fassq):
4351         * fns.c (Fold_assq):
4352         * fns.c (assq_no_quit):
4353         * fns.c (Frassoc):
4354         * fns.c (Fold_rassoc):
4355         * fns.c (Frassq):
4356         * fns.c (Fold_rassq):
4357         * fns.c (rassq_no_quit):
4358         * fns.c (Fremassoc):
4359         * fns.c (remassoc_no_quit):
4360         * fns.c (Fremassq):
4361         * fns.c (remassq_no_quit):
4362         * fns.c (Fremrassoc):
4363         * fns.c (Fremrassq):
4364         * fns.c (remrassq_no_quit):
4365         * fns.c (Fsort):
4366         * fns.c (Fplist_get):
4367         * fns.c (Fplist_put):
4368         * fns.c (Fplist_remprop):
4369         * fns.c (Fplist_member):
4370         * fns.c (Flax_plist_get):
4371         * fns.c (Flax_plist_put):
4372         * fns.c (Flax_plist_remprop):
4373         * fns.c (Flax_plist_member):
4374         * fns.c (Fequal):
4375         * fns.c (Fold_equal):
4376         * fns.c (Frequire):
4377         * fns.c (Fbase64_encode_region):
4378         * fns.c (Fbase64_encode_string):
4379         * fns.c (Fbase64_decode_region):
4380         * frame.c:
4381         * frame.c (frame_matches_frame_spec):
4382         * frame.c (device_matches_device_spec):
4383         * frame.c (next_frame):
4384         * frame.c (previous_frame):
4385         * frame.c (Fnext_frame):
4386         * frame.c (Fprevious_frame):
4387         * frame.c (Fframe_property):
4388         * frame.c (Fset_frame_height):
4389         * frame.c (Fset_frame_size):
4390         * frame.h:
4391         * glyphs.c:
4392         * glyphs.c (if):
4393         * glyphs.c (decode_error_behavior_flag):
4394         * glyphs.c (Fmake_image_instance):
4395         * indent.c (Findent_to):
4396         * intl.c (Fignore_defer_gettext):
4397         * keymap.c (Fkeymapp):
4398         * keymap.c (Flookup_key):
4399         * lread.c:
4400         * lread.c (Fload_internal):
4401         * lread.c (Feval_buffer):
4402         * lread.c (Feval_region):
4403         * macros.c (Fexecute_kbd_macro):
4404         * marker.c (set_marker_internal):
4405         * marker.c (Fset_marker):
4406         * marker.c (set_marker_restricted):
4407         * marker.c (Fcopy_marker):
4408         * marker.c (noseeum_copy_marker):
4409         * menubar.c:
4410         * menubar.c (Fpopup_menu):
4411         * minibuf.c:
4412         * mule-charset.c (Fcharset_name):
4413         * mule-charset.c (Fchar_charset):
4414         * mule-charset.c (Fchar_octet):
4415         * mule-charset.c (Fsplit_char):
4416         * mule-wnnfns.c (Fwnn_open):
4417         * mule-wnnfns.c (Fwnn_dict_comment):
4418         * mule-wnnfns.c (Fwnn_quit_henkan):
4419         * mule-wnnfns.c (Fwnn_word_toroku):
4420         * mule-wnnfns.c (Fwnn_word_sakujo):
4421         * mule-wnnfns.c (Fwnn_word_use):
4422         * mule-wnnfns.c (Fwnn_hindo_set):
4423         * objects.c:
4424         * objects.c (Fmake_color_instance):
4425         * objects.c (Fmake_font_instance):
4426         * print.c (Fwrite_char):
4427         * process.c:
4428         * process.c (mark_process):
4429         * process.c (print_process):
4430         * process.c (get_process_from_usid):
4431         * process.c (Fprocessp):
4432         * process.c (Fprocess_live_p):
4433         * process.c (Fget_process):
4434         * process.c (Fget_buffer_process):
4435         * process.c (get_process):
4436         * process.c (Fprocess_id):
4437         * process.c (Fprocess_name):
4438         * process.c (Fprocess_command):
4439         * process.c (init_process_io_handles):
4440         * process.c (start_process_unwind):
4441         * process.c (Fstart_process_internal):
4442         * process.c (Fopen_multicast_group_internal):
4443         * process.c (Fset_process_window_size):
4444         * process.c (read_process_output):
4445         * process.c (send_process):
4446         * process.c (Fprocess_tty_name):
4447         * process.c (Fset_process_buffer):
4448         * process.c (Fprocess_buffer):
4449         * process.c (Fprocess_mark):
4450         * process.c (set_process_filter):
4451         * process.c (Fset_process_filter):
4452         * process.c (Fprocess_filter):
4453         * process.c (Fprocess_send_region):
4454         * process.c (Fprocess_send_string):
4455         * process.c (exec_sentinel):
4456         * process.c (Fset_process_sentinel):
4457         * process.c (Fprocess_sentinel):
4458         * process.c (status_notify):
4459         * process.c (Fprocess_status):
4460         * process.c (Fprocess_exit_status):
4461         * process.c (process_send_signal):
4462         * process.c (Fprocess_send_eof):
4463         * process.c (deactivate_process):
4464         * process.c (remove_process):
4465         * process.c (Fdelete_process):
4466         * process.c (kill_buffer_processes):
4467         * process.c (Fprocess_kill_without_query):
4468         * process.c (Fprocess_kill_without_query_p):
4469         * rangetab.c:
4470         * rangetab.c (Fget_range_table):
4471         * rangetab.c (Fput_range_table):
4472         * rangetab.c (Fremove_range_table):
4473         * rangetab.c (Fclear_range_table):
4474         * search.c:
4475         * search.c (Fskip_chars_forward):
4476         * search.c (Fskip_chars_backward):
4477         * search.c (Fskip_syntax_forward):
4478         * search.c (Fskip_syntax_backward):
4479         * search.c (search_command):
4480         * search.c (Freplace_match):
4481         * search.c (Fregexp_quote):
4482         * select.c (Fown_selection_internal):
4483         * select.c (Fselection_owner_p):
4484         * select.c (Fselection_exists_p):
4485         * select.c (Fget_selection_internal):
4486         * specifier.c:
4487         * symbols.c:
4488         * symbols.c (Fintern):
4489         * symbols.c (Fintern_soft):
4490         * symbols.c (Funintern):
4491         * symbols.c (Fapropos_internal):
4492         * symbols.c (Fset_default):
4493         * syntax.c:
4494         * syntax.c (Fsyntax_table_p):
4495         * syntax.c (Fcopy_syntax_table):
4496         * syntax.c (Fset_syntax_table):
4497         * syntax.c (Fchar_syntax):
4498         * syntax.c (syntax_match):
4499         * syntax.c (Fmatching_paren):
4500         * syntax.c (Fforward_word):
4501         * syntax.c (scan_lists):
4502         * syntax.c (Fscan_lists):
4503         * syntax.c (Fscan_sexps):
4504         * syntax.c (Fparse_partial_sexp):
4505         * toolbar.c (Fcheck_toolbar_button_syntax):
4506         * tooltalk.doc:
4507         * window.c:
4508         * window.c (Fwindowp):
4509         * window.c (Fwindow_live_p):
4510         * window.c (Fwindow_point):
4511         * window.c (Fdelete_window):
4512         * window.c (Fnext_window):
4513         * window.c (Fprevious_window):
4514         * window.c (Fother_window):
4515         * window.c (window_loop):
4516         * window.c (Fget_lru_window):
4517         * window.c (Fsplit_window):
4518         * window.c (Fenlarge_window):
4519         * window.c (Fenlarge_window_pixels):
4520         * window.c (Fshrink_window):
4521         * window.c (Fshrink_window_pixels):
4522         * window.c (change_window_height):
4523         * window.c (Fwindow_configuration_p):
4524         * window.c (Fcurrent_window_configuration):
4525         * window.h:
4526         * casefiddle.c (casify_object):
4527         * casefiddle.c (Fupcase):
4528         * casefiddle.c (Fdowncase):
4529         * casefiddle.c (Fcapitalize):
4530         * casefiddle.c (Fupcase_initials):
4531         * casefiddle.c (casify_region_internal):
4532         * casefiddle.c (casify_region):
4533         * casefiddle.c (Fupcase_region):
4534         * casefiddle.c (Fdowncase_region):
4535         * casefiddle.c (Fcapitalize_region):
4536         * casefiddle.c (Fupcase_initials_region):
4537         * casefiddle.c (Fupcase_word):
4538         * casefiddle.c (Fdowncase_word):
4539         * casefiddle.c (Fcapitalize_word):
4540         Docstring arglist/Texinfo fixes.  See man/ChangeLog for details.
4541         Replace 0 with '\0' when working with bytes.
4542         Replace initial "(" with "\(" in docstrings.
4543
4544 2000-11-01  Martin Buchholz  <martin@xemacs.org>
4545
4546         * config.h.in: Handle alloca with Compaq C on Alpha Linux.
4547
4548         * m/alpha.h: Let configure handle SYSTEM_MALLOC on Linux.
4549
4550 2000-10-31  Martin Buchholz  <martin@xemacs.org>
4551
4552         * eldap.c (print_ldap): 64-bit cleaner.  Fixes warning.
4553
4554 2000-10-30  Yoshiki Hayashi  <yoshiki@xemacs.org>
4555
4556         * doprnt.c (emacs_do_prnt_1): Format (format "%01.2d" 10)
4557         correctly.
4558
4559 2000-10-30  Yoshiki Hayashi  <yoshiki@xemacs.org>
4560
4561         * fileio.c (Vauto_save_list_file_prefix): Moved from startup.el.
4562         (inhibit_auto_save_session): New variable.
4563         (vars_of_fileio): Declare and initialize them.
4564         * fileio.c (Fdo_auto_save): Don't create session file if
4565         Vinhibit_auto_save_session or Vauto_save_list_file_prefix is non-nil.
4566
4567 2000-10-31  Martin Buchholz  <martin@xemacs.org>
4568
4569         * sgiplay.c (play_internal): C++ compilability.
4570         * alloc.c (SWEEP_FIXED_TYPE_BLOCK): Remove unused var `SFTB_prev'.
4571         * callproc.c (Fold_call_process_internal):
4572         Remove unused vars `env', `first'.
4573         * scrollbar.c (update_scrollbar_instance):
4574         #### unused var `current_window'.
4575         * redisplay-tty.c: Put currently unused vars insert_mode_on,
4576         etc. within #ifdef NOT_YET.
4577         * emacs.c: #### unused vars `initial_argc', `initial_argv'.
4578         * dialog-x.c (dbox_descriptor_to_widget_value): ### unused var `title'.
4579         * specifier.c (specifier_instance):
4580         #### unused var `tag'.
4581         Use WINDOW_BUFFER, FRAME_DEVICE instead of their expansion.
4582
4583 2000-10-27  Martin Buchholz  <martin@xemacs.org>
4584
4585         * fns.c (Fbutlast):
4586         * fns.c (list_sort):
4587         * fns.c (Ffillarray):
4588         * fns.c (bytecode_nconc2):
4589         * fns.c (Fnconc):
4590         * fns.c (mapcar1):
4591         * fns.c (Fmapconcat):
4592         Be pedantically 64-bit correct.  For the time when someone will
4593         want to have a list with length > 2**32.
4594
4595         * lisp.h (PRIVATE_EXTERNAL_LIST_LOOP_6):
4596         Work around MIPSpro compiler bug.
4597
4598         * process-unix.c (unix_kill_child_process): Add snarky comment.
4599         * process-unix.c (try_to_initialize_subtty):  Oops, `=' ==> `=='
4600
4601         * config.h.in: Oops, _getpt ==> _getpty
4602
4603 2000-10-26  Martin Buchholz  <martin@xemacs.org>
4604
4605         * config.h.in:
4606         * regex.c:
4607         Use void*, not char*, as return type of alloca().
4608
4609         * alloc.c (free_marker): Side effect inside assert expression!
4610
4611 2000-10-16  MIYASHITA Hisashi  <himi@m17n.org>
4612
4613         * mule-charset.c (Fset_charset_ccl_program): To check
4614         if the given ccl program is valid, use setup_ccl_program()
4615         instead of CHECK_VECTOR().
4616         (Fmake_charset): Likewise.
4617
4618 2000-10-20  Golubev I. N.  <gin@mo.msk.ru>
4619
4620         * faces.c (get_extent_fragment_face_cache_index):
4621         Fix cachel.merged_faces memory leak.
4622
4623 2000-10-14  MIYASHITA Hisashi  <himi@m17n.org>
4624
4625         * mule-ccl.c (ccl_driver)<CCL_DECODE_SJIS>:
4626         Reset MSB of octets obtained by DECODE_SJIS
4627         because of the incompatibility with Emacs.
4628         (ccl_driver)<CCL_ENCODE_SJIS>:
4629         Set MSB of octets before passing them to
4630         ENCODE_SJIS because of the incompatibility
4631         with Emacs.
4632
4633 2000-10-18   Daiki Ueno  <ueno@unixuser.org>
4634
4635         * lrecord.h (DECLARE_TYPECHECK_LRECORD): Abolish.
4636         (DECLARE_LRECORD): Undo the last change.
4637         (DECLARE_EXTERNAL_LRECORD): Expand typechecking stuff.
4638
4639 2000-10-17   Daiki Ueno  <ueno@unixuser.org>
4640
4641         * lrecord.h (INIT_EXTERNAL_LRECORD_IMPLEMENTATION): Connect
4642         the implementation to lrecord_implementations_table.
4643
4644 2000-10-14   Daiki Ueno  <ueno@unixuser.org>
4645
4646         * lrecord.h (MAKE_EXTERNAL_LRECORD_IMPLEMENTATION): Don't set the
4647         initial value of `lrecord_type_##c_name' and
4648         `lrecord_##c_name.lrecord_type_index'; discard "const" qualifier.
4649         (INIT_EXTERNAL_LRECORD_IMPLEMENTATION): New macro.
4650         [ERROR_CHECK_TYPECHECK] (DECLARE_TYPECHECK_LRECORD): New macro.
4651         [ERROR_CHECK_TYPECHECK] (DECLARE_LRECORD): Use it.
4652         [ERROR_CHECK_TYPECHECK] (DECLARE_EXTERNAL_LRECORD): Use it.
4653
4654 2000-10-17  Martin Buchholz  <martin@xemacs.org>
4655
4656         * miscplay.c (sndcnv8S_2mono):
4657         (sndcnv2monounsigned):
4658         (sndcnvULaw_2linear):
4659         (sndcnv16swap):
4660         Remove implementation-defined behavior.
4661
4662 2000-10-12  Martin Buchholz  <martin@xemacs.org>
4663
4664         * input-method-xlib.c: Warning suppression.
4665
4666 2000-10-05  MIYASHITA Hisashi  <himi@m17n.org>
4667
4668         * mule-ccl.c: Sync up with Emacs 21.0.90.
4669         (ccl_driver)<CCL_TranslateCharacter>: Disabled.
4670         Do nothing.
4671         (ccl_driver)<CCL_TranslateCharacterConstTbl>:
4672         Likewise.
4673         (ccl_driver[WriteMultibyteChar2]): Bug fix.
4674         Use MAX_LEADING_BYTE_OFFICIAL_2 instead of
4675         MIN_LEADING_BYTE_OFFICIAL_2 to check whether the
4676         leading char belongs to official 2-dimensional charset.
4677         (CCL_WRITE_CHAR): When CCL_MODE_ENCODING,
4678         write the given character as is.  Otherwise,
4679         if it is a multibyte char, convert it by
4680         non_ascii_set_charptr_emchar, then write it.
4681         (CCL_WRITE_STRING): Likewise.
4682         (ccl_get_compiled_code): New function.
4683         (setup_ccl_program): When ccl_prog is invalid,
4684         return -1.
4685         (Fregister_code_conversion_map): New function.
4686         (syms_of_mule_ccl): defsubr Fregister_code_conversion_map.
4687
4688         * mule-ccl.h: Sync up with Emacs 21.0.90.
4689         (Fregister_ccl_program): export it.
4690
4691         * redisplay-msw.c (separate_textual_runs):
4692         If ccl program is not valid, don't do ccl conversion.
4693
4694         * redisplay-x.c (separate_textual_runs): Ditto.
4695
4696         * file-coding.c (Fmake_coding_system):
4697         When type is ccl and value is vector, register it
4698         with a proper symbol.  And checks whether the
4699         given ccl program is valid.
4700         (mule_decode): When calling ccl_driver, if src indicates
4701         NULL pointer, set an empty string instead.
4702         (mule_encode): Likewise.
4703
4704 2000-10-11  Martin Buchholz  <martin@xemacs.org>
4705
4706         The following large batch of changes gets us back to a state of
4707         C++ compilability.  Extbyte is now a char, which means that
4708         Extbyte * and Bufbyte * cannot be freely interchanged - a win!
4709
4710         * tooltalk.c (Fset_tooltalk_message_attribute): Type correctness.
4711
4712         * sound.c (Fplay_sound): Type correctness.
4713
4714         * select-x.c (hack_motif_clipboard_selection): Type correctness.
4715         (x_get_window_property): Type correctness.
4716         (receive_incremental_selection): unsigned char ==> Extbyte
4717         (selection_data_to_lisp_data): unsigned char ==> Extbyte
4718         (Fx_get_cutbuffer_internal): unsigned char ==> Extbyte
4719         (Fx_store_cutbuffer_internal): Type correctness.
4720
4721         * process-unix.c (try_to_initialize_subtty): Type correctness.
4722
4723         * objects-x.c (x_print_color_instance): Type correctness.
4724         (x_print_font_instance): Type correctness.
4725         (x_list_fonts): SExtbyte ==> Extbyte.
4726         (valid_x_font_name_p): SExtbyte ==> Extbyte.
4727         (x_find_charset_font): SExtbyte ==> Extbyte.
4728         Use TO_INTERNAL_FORMAT.  build_string ==> make_string.
4729         (truename_via_XListFonts): SExtbyte ==> Extbyte.
4730         (x_font_instance_properties): Use TO_INTERNAL_FORMAT.
4731         Use bufbyte_strcmp.
4732
4733         * mule-charset.h (LEADING_BYTE_PREFIX_P): unsigned char ==> Bufbyte
4734         (PRIVATE_LEADING_BYTE_PREFIX): Add paranoia cast.
4735         (BYTE_ASCII_P): Use bit ops for char-signedness safety.
4736         (BYTE_C0_P): Use bit ops for char-signedness safety.
4737         (BYTE_C1_P): Use bit ops for char-signedness safety.
4738         (CHARSET_BY_LEADING_BYTE):
4739         (CHARSET_BY_ATTRIBUTES):
4740         Always use inline function.
4741         Use type_checking_assert.
4742         Hide chlook.
4743
4744         * mule-charset.c (non_ascii_charptr_copy_char):
4745         Modify to work with both ASCII and non-ASCII characters.
4746         Improve docs and variable names.
4747         Replace over-clever fall-through switch with a simple loop.
4748         (Lstream_get_emchar_1):
4749         Replace over-clever fall-through switch with a simple loop.
4750
4751         * menubar-x.c (menu_item_descriptor_to_widget_value_1):
4752         Warning suppression.
4753
4754         * lstream.h (Lstream_get_emchar): BYTE_ASCII_P cannot be used on
4755         the return value of Lstream_getc, which could be EOF as well.
4756
4757         * lstream.c (Lstream_raw_read): Now returns ssize_t, not int.
4758
4759         * lisp.h: Make Extbyte a char, not unsigned char, so that external
4760         APIs can be used on Extbytes without casts.  Risky!
4761         (SExtbyte): Remove.
4762         (UExtbyte): Remove.
4763
4764         * input-method-xlib.c (XIM_init_device):
4765         Use Xlib.h instead of IntrinsicP.h.
4766         Use HAVE_XREGISTERIMINSTANTIATECALLBACK instead of THIS_IS_X11R6,
4767         which will break in X11R7.
4768         Use XREGISTERIMINSTANTIATECALLBACK_NONSTANDARD_PROTOTYPE,
4769         to call XRegisterIMInstantiateCallback with correct types.
4770
4771         * gui-x.c (button_item_to_widget_value): Type correctness.
4772
4773         * glyphs.c (bitmap_to_lisp_data):  Type correctness.
4774
4775         * glyphs-x.c (pixmap_from_xbm_inline): Type correctness.
4776         (xbm_instantiate_1): Type correctness.
4777         (BUILD_GLYPH_INST):  Type correctness.
4778
4779         * fileio.c (Fsubstitute_in_file_name): Type correctness.
4780
4781         * file-coding.c:
4782         (decode_coding_sjis):
4783         (decode_coding_big5):
4784         (decode_coding_ucs4):
4785         (decode_coding_utf8):
4786         (decode_coding_iso2022):
4787         (decode_coding_no_conversion):
4788         Make all decoding functions take an Extbyte * arg.
4789         (encode_coding_sjis):
4790         (encode_coding_big5):
4791         (encode_coding_ucs4):
4792         (encode_coding_utf8):
4793         (encode_coding_iso2022):
4794         (encode_coding_no_conversion):
4795         Make all encoding functions take a Bufbyte * arg.
4796         Use size_t instead of unsigned int for memory sizes.
4797         Only cast to unsigned char whenever dereferencing Extbyte *.
4798
4799         * doc.c (unparesseuxify_doc_string): Type correctness.
4800
4801         * console-x.c (split_up_display_spec):
4802         Rewrite without using details of internal string representation.
4803         (x_semi_canonicalize_device_connection): Type correctness.
4804
4805         * config.h.in:
4806         (HAVE_XREGISTERIMINSTANTIATECALLBACK): New.
4807         (XREGISTERIMINSTANTIATECALLBACK_NONSTANDARD_PROTOTYPE): New.
4808         (HAVE_XFREE386): Removed.
4809
4810         * buffer.h (DEC_CHARPTR): `const' correctness.
4811         (bufbyte_strcmp): New.
4812         (bufbyte_memcmp): New.
4813
4814         * buffer.c (dfc_convert_to_internal_format): Extbyte ==> Bufbyte
4815
4816         * buffer.h (XCHAR_OR_CHAR_INT):
4817         Always use inline function.
4818         Remove redundant type checking assert() - XINT will abort quite nicely.
4819
4820 2000-10-03  Yoshiki Hayashi  <yoshiki@xemacs.org>
4821
4822         * search.c (Freplace_match): Set newtext to an empty string.
4823
4824 2000-10-10  Martin Buchholz  <martin@xemacs.org>
4825
4826         * s/decosf1-3.h: Remove #include of stropts.h
4827         * s/ptx.h: Remove #include of stropts.h
4828         * s/usg5-4.h: Remove #include of stropts.h
4829         * sysproc.h:
4830         * config.h.in:
4831         Use stropts.h, not sys/stropts.h.
4832         Use strtio.h, not sys/strtio.h.
4833
4834 2000-10-04  Martin Buchholz <martin@xemacs.org>
4835
4836         * XEmacs 21.2.36 is released.
4837
4838 2000-09-21  Andy Piper  <andy@xemacs.org>
4839
4840         * glyphs-x.c (x_redisplay_widget): make sure non-structural
4841         changes still involve copying the widget tree.
4842         (update_widget_face): make sure a change is register in the widget
4843         tree. Call update_tab_widget_face appropriately.
4844         (update_tab_widget_face): ditto.
4845         (x_tab_control_redisplay): make sure non-structural changes still
4846         involve copying the widget tree.
4847
4848 2000-08-31   Daiki Ueno  <ueno@unixuser.org>
4849
4850         * lread.c (locate_file): Check the path element is non-nil.
4851
4852 2000-10-02  Martin Buchholz  <martin@xemacs.org>
4853
4854         * lisp.h: Warning suppression for SCO compilers.
4855
4856         * redisplay-tty.c (reset_tty_modes): Fix crash.
4857         E.g. from xemacs running on X: (delete-device (make-device 'tty nil))
4858
4859 2000-09-27  Martin Buchholz  <martin@xemacs.org>
4860
4861         Big signal/process handling overhaul.  Bugs fixed:
4862         M-x shell, type `sleep 10000', M-x comint-interrupt-subjob and
4863         M-x comint-kill-subjob should work for both values nil and t of
4864         process-connection-type. It was broken on most platforms.
4865         Testing on Irix and Cygwin still needed.  Other plaforms tested.
4866         * sysdep.c: Move #include of stropts.h into sysproc.h.  Use pid_t.
4867         * process-unix.c: Signal/Process handling overhaul.
4868         (pty_name): make 64 bytes, as `expect' does, for paranoia.
4869         (allocate_pty): Use all available modern methods of allocating
4870         ptys, falling back to old style BSD allocation as a last resort.
4871         Use allegedly more secure Unix98 pty allocation by default.
4872         (allocate_pty_the_old_fashioned_way): New. the last resort.
4873         (unix_create_process): Push ptem, ldterm, ttcompat where
4874         available.  Autoconfiscate.
4875         (try_to_initialize_subtty): New.
4876         (unix_kill_child_process): Proper signal handling for ptys on most
4877         platforms, using special knowledge of AIX, BSD, etc...
4878         (unix_create_process): Always disconnect_controlling_terminal() for
4879         subprocesses, whether using ptys or not.
4880         * process.h: Remove old getpt-dependent PTY code.
4881         * process.c (Fprocess_send_signal): New, obvious generic function.
4882         (decode_signal): New.
4883         (Finterrupt_process):
4884         (Fkill_process):
4885         (Fquit_process):
4886         (Fstop_process):
4887         (Fcontinue_process):
4888         (Fsignal_process): Use decode_signal.
4889         (process_send_signal):
4890         Many docstring corrections.
4891         Allow any signal to be sent to a process object.
4892         * config.h.in: Add symbols for big signal/process overhaul.
4893         * syssignal.h (EMACS_KILLPG): Use HAVE_KILLPG. Use `pid', not `gid'.
4894         * sysproc.h: Include process-related headers, where available:
4895         sys/stropts.h sys/strtio.h pty.h libutil.h
4896         * s/irix4-0.h:
4897         * s/irix5-0.h:
4898         * s/cygwin32.h:
4899         * s/gnu.h:
4900         * s/linux.h:
4901         * s/hpux.h:
4902         * s/aix3-1.h:
4903         Remove old S&M pty stuff.
4904         * console-tty.c (tty_init_console): Use pid_t, not int, for pids.
4905         * systty.h: Simplify cpp hackery, improve comments.
4906         Favor BSD ioctl(TIOCGPGRP) over Posix tcgetpgrp().
4907
4908         * editfns.c (Fformat_time_string):
4909         Be a little more paranoid with the return value of ctime.
4910
4911         * fileio.c (check_executable):
4912         (check_writable):
4913         Use symbolic constants X_OK, W_OK.
4914
4915         * console-x.c (split_up_display_spec): Fix a warning.
4916
4917 2000-10-02  Martin Buchholz  <martin@xemacs.org>
4918
4919         * gui-x.c (add_accel_and_to_external): strlen ==> XSTRING_LENGTH
4920         * ntproc.c (sys_spawnve): make_string ==> build_string
4921         Small clarity improvements.
4922
4923 2000-09-30  Martin Buchholz  <martin@xemacs.org>
4924
4925         * events.c (WRONG_EVENT_TYPE_FOR_PROPERTY): Warning removal.
4926
4927         * s/windowsnt.h (HAVE_STRCASECMP): Remove.
4928
4929         * config.h.in (HAVE_STRCASECMP): Remove.
4930
4931 2000-09-29  Martin Buchholz  <martin@xemacs.org>
4932
4933         * redisplay-output.c (redisplay_output_pixmap):
4934         Cleaner and possibly more 64-bit correct code.
4935
4936 2000-09-28  Stephen J. Turnbull  <stephen@xemacs.org>
4937
4938         * dumper.c (pdump_load_finish): move restoration of
4939         `noninteractive1' to emacs.c (main_1).
4940         * emacs.c (main_1): protect LISP-visible command-line flags
4941         from pdump_load().
4942
4943 2000-09-26  Stephen J. Turnbull  <stephen@xemacs.org>
4944
4945         * Makefile.in.in (versionclean):  Use EXE_TARGET and
4946         DUMP_TARGET instead of literal program names.
4947
4948 2000-09-20  Martin Buchholz  <martin@xemacs.org>
4949
4950         * Makefile.in.in: Recent purify's require absolute paths for cache-dir.
4951
4952 2000-09-19  Martin Buchholz  <martin@xemacs.org>
4953
4954         * *: Spelling mega-patch
4955
4956 2000-09-19  Martin Buchholz  <martin@xemacs.org>
4957
4958         * fns.c (bad_bad_turtle):
4959         Delete "Eek!" comment, since we fixed the bug to which it refers.
4960
4961 2000-09-16  Martin Buchholz  <martin@xemacs.org>
4962
4963         * alloca.c: Replace REGISTER with register.
4964
4965 2000-09-16   Daiki Ueno  <ueno@unixuser.org>
4966
4967         * file-coding.c (ucs_to_char): Use countof.
4968
4969 2000-09-16  Martin Buchholz  <martin@xemacs.org>
4970
4971         * file-coding.c: (ucs_to_char):
4972         (complex_vars_of_file_coding):
4973         Use countof instead of sizeof.
4974         Use CHECK_NATNUM instead of CHECK_INT.
4975
4976         * sysdep.c (strcasecmp): Remove.
4977         * device-x.c (ascii_strcasecmp): New.
4978         * device-x.c (Fx_get_resource): Use ascii_strcasecmp.
4979         Avoid using non-standard non-portable strcasecmp.
4980
4981 2000-09-16  Martin Buchholz  <martin@xemacs.org>
4982
4983         * Makefile.in.in (mostlyclean): remove reference to prefix-args.
4984         * font-lock.c: remove reference to emacsfns.h.
4985         * search.c: small doc improvement.
4986         * event-Xt.c: correct file names in comments.
4987         * console-x.h Correct file names in comments.
4988         * frame.c: Correct file names in comments.
4989         * event-stream.c: remove Energize from comments.
4990
4991 2000-09-15  Martin Buchholz  <martin@xemacs.org>
4992
4993         * symeval.h (DEFERROR_STANDARD):
4994         (DEFERROR):
4995         (DEFSYMBOL):
4996         (DEFSYMBOL_NO_DUMP):
4997         (DEFSYMBOL_MULTIWORD_PREDICATE):
4998         (DEFSYMBOL_MULTIWORD_PREDICATE_NO_DUMP):
4999         (DEFKEYWORD):
5000         The construct &##name is not sensible C.
5001         Fixes compilation errors with Unixware native compiler.
5002
5003 2000-09-14  Martin Buchholz  <martin@xemacs.org>
5004
5005         * frame.c (device_matches_console_spec): no longer takes a `frame' arg
5006         (next_frame_internal): Removed.  We now just have next_frame.
5007         (next_frame):
5008         Write a simpler and cleaner one-pass algorithm.
5009         Remove called_from_delete_device arg and #ifdefed-out code.
5010         (previous_frame):
5011         Renamed from prev_frame.  Update callers.
5012         Cleaned up to have an analogous implementation to next_frame.
5013         (other_visible_frames_internal): Remove the
5014         called_from_delete_device bogus arg, and hence, remove this
5015         function.  Just use other_visible_frames().
5016
5017         * window.c (Fnext_window):
5018         Prettify docstring.
5019         Since next_frame() is guaranteed to return a frame, remove check
5020         for nil inserted in previous patch.
5021         (Fprevious_window):
5022         Prettify docstring.
5023         Make code look more like Fnext_window.
5024         (window_loop):
5025         Respect the `console' arg when iterating through windows.
5026         Fixes bug: (get-buffer-window buffer t device) not respecting
5027         the `device' arg.
5028         This function needs more work, as others have pointed out.
5029
5030         * frame.h: Rename prev_frame to previous_frame.
5031         device_matches_console_spec no longer takes a `frame' arg.
5032
5033         * s/gnu.h:
5034         * s/linux.h:
5035         * s/hpux.h:
5036         Use EMACS_BLOCK_SIGNAL instead of sigblock.
5037         From "Golubev I. N." <gin@mo.msk.ru>.
5038
5039         * make-src-depend: Fix typo.
5040
5041 2000-09-13  Martin Buchholz  <martin@xemacs.org>
5042
5043         * window.c (Fnext_window):
5044         next_frame() might return nil, not a frame.
5045         Fixes this crash:
5046         (gdb) run -eval '(progn  (make-device (quote x) "polgar:0") (next-window (minibuffer-window) t (quote visible) (second (device-list))))'
5047
5048         * frame.c (next_frame_internal):
5049         We've passed a frame if we've passed its device.
5050         Fixes this crash:
5051         (gdb) run -eval '(progn (make-frame nil (make-device (quote x) "polgar:0")) (next-window (minibuffer-window) t (quote visible) (second (device-list))))'
5052 Fatal error: assertion failed, file /project/xemacs/ws/dev/src/frame.h, line 245, RECORD_TYPEP (obj, lrecord_type_frame)
5053
5054 2000-09-11  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5055
5056         * menubar-msw.c (mswindows_translate_menu_or_dialog_item):
5057         Allow option to suppress accelerators in menu/dialog items.
5058         (populate_or_checksum_helper): Pass dialog title through above.
5059
5060 2000-09-10  Jonathan Harris  <jhar@tardis.ed.ac.uk>
5061
5062         * event-msw.c (mswindows_key_to_emacs_keysym):
5063         Add "pause" key, fix "menu" key.
5064
5065 2000-09-09  Martin Buchholz  <martin@xemacs.org>
5066
5067         * eval.c (reinit_vars_of_eval):
5068         Increase max_lisp_eval_depth to 1000,
5069         required for thai-xtis.el to byte-compile under some circumstances.
5070
5071 2000-09-04  Martin Buchholz  <martin@xemacs.org>
5072
5073         * event-Xt.c (x_to_emacs_keysym): Increase size of `buffer' to 513.
5074         From Kenichi Handa.
5075
5076 2000-09-01  Martin Buchholz  <martin@xemacs.org>
5077
5078         * make-src-depend: Make the generated Makefiles smaller.
5079
5080         * s/hpux.h (SETUP_SLAVE_PTY):
5081         Provide a %d in the format string for the errno argument.
5082
5083         * editfns.c (Ftemp_directory):
5084         Warning fix.
5085         Avoid buffer overrun on very long file name.
5086
5087         * input-method-xlib.c (XIM_init_device):
5088         6th parameter of XRegisterIMInstantiateCallback has different
5089         pointer types on different OSes, so simply cast to (void *).
5090
5091         * unexhp9k800.c: Warning fixes.  Fiddly changes.
5092
5093         * sysdll.c (dll_open):
5094         shl_load will hang hard if passed a NULL filename.
5095         Simply return NULL for compatibility with dlopen.
5096         * sysdll.c: Conform to XEmacs coding standards.
5097
5098         * sysdep.c (get_pty_max_bytes):
5099         Support pty input lines longer than 512 bytes on HP-UX 10.20.
5100
5101 2000-08-31  Martin Buchholz  <martin@xemacs.org>
5102
5103         * tooltalk.c: Add #include <syssignal.h>
5104
5105 2000-08-12  Alexandre Oliva  <aoliva@redhat.com>
5106
5107         * s/hpux.h: Don't use undefined function sigunblock().
5108
5109 2000-08-31  Martin Buchholz  <martin@xemacs.org>
5110
5111         * config.h.in: Add HAVE_BALLOON_HELP.
5112         * emacs.c: Use HAVE_BALLOON_HELP.
5113         * Makefile.in.in (x_objs):
5114         Make Balloon Help conditional on finding shape.h.
5115
5116 2000-08-23  Yoshiki Hayashi  <yoshiki@xemacs.org>
5117
5118         * syntax.c (regex_emacs_buffer_p): New variable.
5119         * syntax.h (regex_emacs_buffer_p): extern.
5120         * search.c (looking_at_1):
5121         (string_match_1):
5122         (fast_string_match):
5123         (search_buffer): Set regex_emacs_buffer_p.
5124         * regex.c (re_match_2_internal): Reference regex_emacs_buffer_p
5125         when before_dot, at_dot, after_dot.
5126
5127 2000-08-23  Andy Piper  <andy@xemacs.org>
5128
5129         * gui-x.c (popup_selection_callback): Only set action_occurred
5130         when we really have an image instance.
5131         * gui-msw.c (mswindows_handle_gui_wm_command): ditto.
5132
5133 2000-08-23  Andy Piper  <andy@xemacs.org>
5134
5135         * gui-msw.c (mswindows_handle_gui_wm_command): set
5136         action_occurred.
5137         * gui-x.c (popup_selection_callback): ditto.
5138
5139         * glyphs.h (IMAGE_INSTANCE_WIDGET_ACTION_OCCURRED): new accessor.
5140         (XIMAGE_INSTANCE_WIDGET_ACTION_OCCURRED): ditto.
5141         (struct Lisp_Image_Instance): add action_occurred flag.
5142
5143         * glyphs.c (redisplay_subwindow): use action_occurred flag.
5144         (image_instance_changed): ditto.
5145         (reset_frame_subwindow_instance_cache): only unmap windows - do
5146         not remove them from the cache also.
5147
5148         * glyphs-widget.c (tab_control_update): better debug.
5149         (progress_gauge_update): ditto.
5150         (layout_update): ditto.
5151         (layout_instantiate): ditto.
5152         (tab_control_order_only_changed): cope with null pending items.
5153
5154         * glyphs-msw.c (mswindows_tab_control_redisplay): add better
5155         debug. Force selection of an item when an action occurred. Cope
5156         with null pending_items.
5157         (mswindows_progress_gauge_redisplay): better debug.
5158         * glyphs-x.c (x_tab_control_redisplay): ditto.
5159
5160         * redisplay.c (redisplay_frame): reset the frame cache if the
5161         frame is garbaged.
5162
5163         * window.c (Fset_window_configuration): potentially re-enable
5164         frame cache reset.
5165         (window_unmap_subwindows): need to finalize instances here since
5166         it is only used in mark_window_as_deleted.
5167
5168 2000-08-22  Stephen J. Turnbull  <stephen@xemacs.org>
5169
5170         * nas.c (SndOpenDataForReading):
5171         nas.c (WaveOpenDataForReading):
5172         nas.c (readChunk): {BIG,LITTLE}_ENDIAN -> NAS_{BIG,LITTLE}_ENDIAN.
5173         Somehow escaped from the 2000-08-14 patch.
5174
5175 2000-08-14  Stephen J. Turnbull  <stephen@xemacs.org>
5176
5177         * nas.c:  Preprocessor trickery to use NAS_LITTLE_ENDIAN instead
5178         of LITTLE_ENDIAN (conflicts with glibc, at least) in NAS <= 1.2p5.
5179
5180 2000-08-21  Andy Piper  <andy@xemacs.org>
5181
5182         * glyphs-x.c (x_map_subwindow): Minor optimization - only map the
5183         window if it is not already displayed.
5184
5185         * glyphs-msw.c (mswindows_map_subwindow): only map the window if
5186         it is not already displayed.
5187
5188         * window.c (Fset_window_configuration): don't reset the frame
5189         cache.
5190
5191         * glyphs.c (unmap_subwindow_instance_cache_mapper): only remove
5192         instances from the frame cache if we are actually finalizing them.
5193         (reset_frame_subwindow_instance_cache): reset frame cache only
5194         after unmapping everything.
5195         (map_subwindow): set displayed flag after mapping.
5196
5197 2000-08-21  Martin Buchholz  <martin@xemacs.org>
5198
5199         * data.c (indirect_function):
5200         Rename ERRORP to non-misleading VOID_FUNCTION_ERRORP.
5201
5202         * eval.c (function_argcount):
5203         Use original function when signaling errors.
5204
5205 2000-08-18  Andy Piper  <andy@xemacs.org>
5206
5207         * frame.c (delete_frame_internal): use new
5208         free_frame_subwindow_instances name.
5209
5210         * glyphs-msw.c (mswindows_tab_control_instantiate): verify index.
5211         (add_tab_item): make return type correct.
5212         (mswindows_tab_control_instantiate): assert index of tab.
5213         (mswindows_tab_control_redisplay): Re-code to use
5214         gui_item_equal_sans_selected and gui_item_list_find_selected.
5215
5216         * glyphs-widget.c (tab_control_update): Correct comment.
5217
5218         * window.c (window_unmap_subwindows): use new
5219         unmap_subwindow_instance_cache_mapper.
5220         (window_unmap_subwindows_cache_mapper): deleted.
5221         (Fset_window_configuration): comparisons should now be with
5222         EQ. Preserve the subwindow instance cache across configuration
5223         changes.
5224         (allocate_window): ditto.
5225         (make_dummy_parent): ditto.
5226
5227         * glyphs.c (free_frame_subwindow_instances): rename from
5228         free_frame_subwindow_instance_cache. finalize all instances rather
5229         than just those in the display cache.
5230         (finalize_all_subwindow_instances): walk windows unmapping and
5231         finalizing subwindows.
5232         (unmap_subwindow_instance_cache_mapper): moved from
5233         window.c. Allow finalization as well as unmapping.
5234
5235         * gui.c (gui_item_list_find_selected): new function.
5236
5237         * gui.h (gui_item_list_find_selected): declare.
5238
5239         * glyphs-x.c (x_tab_control_redisplay): pick tab
5240         explicitly. Re-code to use gui_item_equal_sans_selected and
5241         gui_item_list_find_selected.
5242
5243         * glyphs-x.h: add lwlib-utils.h
5244
5245         * buffer.c (Frecord_buffer): undo previous change.
5246
5247 2000-08-09  Vin Shelton  <acs@xemacs.org>
5248
5249         * config.h.in, s/gnu.h, s/hpux.h, s/linux.h: Use UNIX98 PTYs if
5250         possible.  Create temporary files more securely.  The patch was
5251         generated by Torsten Duwe <duwe@caldera.de>, Florian Weimer
5252         <Florian.Weimer@RUS.Uni-Stuttgart.DE> and Olaf Kirch.  See
5253         http://www.xemacs.org/list-archives/xemacs-patches/200007/msg00123.html
5254         for details.
5255
5256 2000-08-07  Ben Wing  <ben@xemacs.org>
5257
5258         * getloadavg.c: remove duplicate (and windows-breaking)
5259         includes of fcntl.h and sys/file.h.
5260
5261         * nt.c: remove duplicate getloadavg() definition.
5262
5263         * sysdll.h (Qdll_filename_encoding): add missing stand-in
5264         encodings.
5265
5266 2000-08-07  Gunnar Evermann  <ge204@eng.cam.ac.uk>
5267
5268         * eval.c (function_argcount): If function needs to be autoloaded
5269         actually use the loaded definition.
5270         GCPRO function.
5271
5272 2000-08-05  Ben Wing  <ben@xemacs.org>
5273
5274         * getloadavg.c: add prototype for getloadavg().  remove
5275         duplicate WIN32_NATIVE/CYGWIN code (already in the middle
5276         of the code).  remove duplicate header includes.
5277
5278         * s\cygwin32.h, s\mingw32.h: remove stray NO_ARG_ARRAY.
5279
5280         * s\cygwin32.h, s\mingw32.h, m\windowsnt.h:
5281         don't define LOAD_AVE_TYPE/LOAD_AVE_CVT because we have no
5282         useful load average.
5283
5284         * alloc.c (reinit_alloc_once_early): removed references to
5285         VIRT_ADDR_VARIES, malloc_sbrk_used/free, and data-bytes-used/free.
5286         the lisp vars are the only things referencing the malloc_sbrk_*
5287         vars, and they were already if 0'd out.  these vars only exist
5288         in the older malloc.c, which is basically unused, and they're
5289         only for informational purposes.
5290
5291         * m\*.h: removed useless VIRT_ADDR_VARIES.
5292
5293         * m\powerpc.h: removed stray NO_ARG_ARRAY.
5294
5295 2000-04-26  IKEYAMA Tomonori  <tomonori@suiyokai.org>
5296
5297         * redisplay-msw.c (mswindows_output_dibitmap): Set foreground
5298         color if the image is a mono pixmap.
5299
5300 2000-07-30  Ben Wing  <ben@xemacs.org>
5301
5302         * Makefile.in.in (release):
5303         Remove stray @.
5304
5305         * buffer.c (directory_is_current_directory):
5306         * dired-msw.c (mswindows_get_files):
5307         * dired.c:
5308         * dired.c (Fdirectory_files):
5309         * dired.c (file_name_completion_stat):
5310         * dired.c (Ffile_attributes):
5311         [[[[1]]]]: Rename stat() -> xemacs_stat() and eliminate nasty
5312         preprocessor tricks, to avoid problems on some machines
5313         (e.g. SCO).
5314
5315         * callproc.c (egetenv): GC docs.
5316
5317         * console-msw.h:
5318         * console-msw.h (struct mswindows_dialog_id):
5319         * lrecord.h (lrecord_type):
5320         New object for use with MSW dialogs.
5321
5322         * console.h (struct console_methods):
5323         New enable/disable frame methods, for proper modal dialogs.
5324
5325         * device-msw.c (msprinter_default_printer): Fix to follow
5326         proper Mule conventions.
5327
5328         * device-msw.c:
5329         * device-msw.c (signal_open_printer_error):
5330         * device-msw.c (msprinter_init_device):
5331         * device-msw.c (ensure_not_printing):
5332         * device-msw.c (plist_get_margin):
5333         * device-msw.c (Fmsprinter_select_settings):
5334         * device-msw.c (finalize_devmode):
5335         * device-msw.c (Fmsprinter_settings_despecialize):
5336         * device-msw.c (signal_enum_priner_error):
5337         * extents.c (decode_extent):
5338         * extents.c (decode_map_extents_flags):
5339         * extents.c (decode_extent_at_flag):
5340         * extents.c (Fextent_at):
5341         * extents.c (Fextents_at):
5342         * extents.c (symbol_to_glyph_layout):
5343         [[[[2]]]] Use structured errors.
5344
5345         * dialog-msw.c:
5346         * dialog-msw.c (mswindows_is_dialog_msg):
5347         * dialog-msw.c (mark_mswindows_dialog_id):
5348         * dialog-msw.c (dialog_proc):
5349         * dialog-msw.c (handle_question_dialog_box):
5350         * dialog-msw.c (syms_of_dialog_mswindows):
5351         Define new object to clean up marking; use it as a dialog identifier.
5352         Call new delete-dialog-box-hook.
5353
5354         * dialog-x.c (dbox_selection_callback):
5355         * dialog-x.c (dbox_descriptor_to_widget_value):
5356         * dialog-x.c (x_make_dialog_box_internal):
5357         Call new delete-dialog-box-hook.
5358         Return an id.
5359
5360         * dialog.c:
5361         * dialog.c (syms_of_dialog):
5362         * dialog.c (vars_of_dialog):
5363         Define new delete-dialog-box-hook, for use w/modal dialog boxes.
5364
5365         * eval.c:
5366         * eval.c (signal_call_debugger):
5367         when noninteractive, output stack traces on the console instead
5368         of in a (never-seen) buffer.
5369
5370         * eval.c (signal_type_error):
5371         * eval.c (invalid_argument_2):
5372         * lisp.h:
5373         new funs for use w/structured errors.
5374
5375         * event-Xt.c:
5376         * event-Xt.c (x_to_emacs_keysym):
5377         * event-Xt.c (describe_event):
5378         * event-Xt.c (emacs_Xt_event_handler):
5379         * event-Xt.c (vars_of_event_Xt):
5380         * event-msw.c:
5381         * event-msw.c (mswindows_wnd_proc):
5382         * event-msw.c (vars_of_event_mswindows):
5383         rename {x,mswindows}-debug-events to debug-{}-events for
5384         consistency with other debug-foo variables.
5385
5386         * event-stream.c:
5387         document next-event more clearly.
5388
5389         * fileio.c (Ffile_name_directory):
5390         * fileio.c (Ffile_name_nondirectory):
5391         * fileio.c (Funhandled_file_name_directory):
5392         * fileio.c (file_name_as_directory):
5393         * fileio.c (Ffile_name_as_directory):
5394         * fileio.c (directory_file_name):
5395         * fileio.c (Fdirectory_file_name):
5396         * fileio.c (Fmake_temp_name):
5397         * fileio.c (Ffile_truename):
5398         * fileio.c (Fsubstitute_in_file_name):
5399         * fileio.c (expand_and_dir_to_file):
5400         * fileio.c (barf_or_query_if_file_exists):
5401         * fileio.c (check_executable):
5402         * fileio.c (Ffile_exists_p):
5403         * fileio.c (Ffile_writable_p):
5404         * fileio.c (Ffile_directory_p):
5405         * fileio.c (Ffile_regular_p):
5406         * fileio.c (Ffile_modes):
5407         * fileio.c (Ffile_newer_than_file_p):
5408         * fileio.c (Fverify_visited_file_modtime):
5409         * fileio.c (Fset_visited_file_modtime):
5410         * fileio.c (auto_save_1):
5411         (1). (2).
5412         fix up gcpro's.
5413
5414         * frame-msw.c:
5415         * frame-msw.c (mswindows_init_frame_1):
5416         * frame-msw.c (mswindows_enable_frame):
5417         * frame-msw.c (error_frame_unsizable):
5418         * frame-msw.c (msprinter_init_frame_1):
5419         * frame-msw.c (msprinter_init_frame_3):
5420         * frame-msw.c (console_type_create_frame_mswindows):
5421         (2).
5422         implement new enable/disable frame methods.
5423
5424         * frame-x.c:
5425         * frame-x.c (x_enable_frame):
5426         * frame-x.c (console_type_create_frame_x):
5427         implement new enable/disable frame methods.
5428
5429         * frame.c:
5430         * frame.c (Fdisable_frame):
5431         * frame.c (syms_of_frame):
5432         * frame.h (struct frame):
5433         implement new enable/disable frame methods/functions.
5434
5435         * general-slots.h:
5436         add initial-focus.
5437
5438         * glyphs-msw.c (mswindows_widget_instantiate):
5439         comment that initial-focus should be implemented.
5440
5441         * glyphs-widget.c:
5442         * glyphs-widget.c (check_valid_instantiator):
5443         * glyphs-widget.c (check_valid_orientation):
5444         * glyphs-widget.c (check_valid_tab_orientation):
5445         * glyphs-widget.c (check_valid_justification):
5446         * glyphs-widget.c (check_valid_border):
5447         * glyphs-widget.c (check_valid_callback):
5448         * glyphs-widget.c (check_valid_int_or_function):
5449         * glyphs-widget.c (check_valid_string_or_vector):
5450         * glyphs-widget.c (check_valid_item_list_1):
5451         * glyphs-widget.c (widget_validate):
5452         * glyphs-widget.c (combo_box_validate):
5453         * glyphs-widget.c (widget_instantiate):
5454         * glyphs-widget.c (syms_of_glyphs_widget):
5455         * glyphs-widget.c (VALID_WIDGET_KEYWORDS):
5456         * glyphs-widget.c (image_instantiator_combo_box):
5457         * glyphs-widget.c (image_instantiator_scrollbar):
5458         * glyphs-widget.c (image_instantiator_tab_control):
5459         * glyphs-widget.c (VALID_LAYOUT_KEYWORDS):
5460         (2).
5461         support (unimplemented) keyword initial-focus.
5462         reindent long macros.
5463
5464         * glyphs-x.c (x_redisplay_widget):
5465         * glyphs-x.c (x_button_instantiate):
5466         * glyphs-x.c (x_button_redisplay):
5467         * glyphs-x.c (x_progress_gauge_instantiate):
5468         * glyphs-x.c (x_edit_field_instantiate):
5469         * glyphs-x.c (x_combo_box_instantiate):
5470         * glyphs-x.c (x_tab_control_instantiate):
5471         * glyphs-x.c (x_label_instantiate):
5472         * gui-x.c:
5473         * gui-x.c (button_item_to_widget_value):
5474         * gui-x.c (gui_items_to_widget_values_1):
5475         * gui-x.c (gui_item_children_to_widget_values):
5476         * gui-x.c (gui_items_to_widget_values):
5477         * gui-x.h:
5478         * menubar-x.c (menu_item_descriptor_to_widget_value_1):
5479         add new flag to gui-parsing routines to indicate whether
5480         accelerator specs should be supported.
5481
5482         * glyphs.c (syms_of_glyphs): use DEFSYMBOL.
5483
5484         * glyphs.h (struct Lisp_Image_Instance):
5485         * glyphs.h (IMAGE_INSTANCE_WANTS_INITIAL_FOCUS):
5486         add initial-focus flag.
5487
5488         * gui.c:
5489         * gui.c (syms_of_gui):
5490         * gui.c (vars_of_gui):
5491         clean up menu-no-selection-hook.
5492
5493         * gui.h:
5494         support delete-dialog-box-hook.
5495
5496         * lread.c (Fload_internal):
5497         * lread.c (locate_file_in_directory_mapper):
5498         (1).
5499
5500         * lrecord.h:
5501         * lrecord.h (struct toolbar_button):
5502         * lrecord.h (syms_of_toolbar):
5503         document how to create a new object.
5504
5505         * menubar-msw.c (mswindows_char_is_accelerator):
5506         may be called on frames w/o menus.
5507
5508         * menubar.c (vars_of_menubar):
5509         clean up :filter docs.
5510
5511         * nt.c (readdir):
5512         * ntproc.c:
5513         (1).
5514
5515         * process-nt.c:
5516         * process-nt.c (validate_signal_number):
5517         * process-nt.c (signal_cannot_launch):
5518         * process-nt.c (nt_create_process):
5519         * process-nt.c (nt_send_process):
5520         * process-nt.c (nt_kill_child_process):
5521         * process-nt.c (nt_open_network_stream):
5522         * process-nt.c (syms_of_process_nt):
5523         (2).
5524         delete quote-handling.  call new lisp code that does it better.
5525
5526         * process-unix.c (connect_to_file_descriptor):
5527         * process-unix.c (allocate_pty):
5528         * process-unix.c (unix_send_process):
5529         * process-unix.c (unix_kill_child_process):
5530         * process-unix.c (unix_open_network_stream):
5531         * process-unix.c (unix_open_multicast_group):
5532         (1). (2).
5533
5534         * process.c:
5535         * process.c (Fstart_process_internal):
5536         (2).  need to canonicalize process path even if absolute.
5537
5538         * select-msw.c (symbol_to_ms_cf):
5539         * select-msw.c (ms_cf_to_symbol):
5540         * select-msw.c (cf_is_autofreed):
5541         * select-msw.c (mswindows_destroy_selection):
5542         * select.c:
5543         * select.c (syms_of_select):
5544         * select.h:
5545         support dibv5, fix bugs. (from Mike Alexander)
5546
5547         * select.c (Fget_selection_internal):
5548         * select.c (select_convert_out):
5549
5550         * sysdep.c:
5551         * sysdep.c (xemacs_stat):
5552         renamed.
5553
5554         * sysdep.c (mkdir):
5555         * sysdep.c (rmdir):
5556         but keep original stat() here because we provide encapsulation
5557         around these funs.
5558
5559         * sysfile.h:
5560         * sysfile.h (fstat):
5561         remove stat garbage.
5562
5563         * syswindows.h:
5564         fix X/MSW conflict.
5565         don't include tchar.h.  it's inappropriate because it makes
5566         compile-time distinctions when we want runtime distinctions.
5567         (we provide our own tchar replacements)
5568
5569         * toolbar.c:
5570         use default object printer for toolbar-button.
5571
5572         * unexcw.c:
5573         make sure we don't encapsulate.
5574
5575         * window.c (vars_of_window):
5576         emphasize that temp-buffer-show-hook is obsolete.
5577
5578 2000-08-05  Martin Buchholz  <martin@xemacs.org>
5579
5580         * glyphs.c (image_instance_hash): HASH2 wants EMACS_INT args.
5581         (Fimage_instance_subwindow_id): make_int wants EMACS_INT arg.
5582
5583         * events.c (Fevent_timestamp_lessp):
5584         Not 64-bit clean.  Use EMACS_INT, not int.
5585
5586 2000-06-05  Andrew Begel <abegel@cs.berkeley.edu>
5587
5588         * lrecord.h (lrecord_types): Changed lrecord_type_count to an
5589         unsigned int and changed the last enum to
5590         lrecord_type_last_built_in_type.
5591         (lrecord_implementations_table): changed prototype to know how
5592         long the array is supposed to be.
5593         (lrecord_type_count): new unsigned int to keep track of the
5594         current number of lisp lrecord types.
5595         (DEFINE_EXTERNAL_LRECORD):
5596         (DECLARE_EXTERNAL_LRECORD): Added these two for external
5597         dynamic-modules to declare new lisp types. They are the same
5598         as the non-EXTERNAL forms, but declare an lrecord_type unsigned
5599         int for each new type, and increment lrecord_type_count by 1.
5600
5601         * alloc.c (lrecord_implementations_table): Changed to reference
5602         lrecord_type_last_built_in_type for the size of the array.
5603         Moved MODULE_DEFINABLE_TYPE_COUNT to lrecord.h.
5604
5605 2000-08-03  Yoshiki Hayashi  <yoshiki@xemacs.org>
5606
5607         * glyphs.h (check_valid_item_list): Renamed from
5608         check_valid_item_list_1.
5609
5610 2000-08-01 Alastair J. Houghton <ajhoughton@lineone.net>
5611
5612         * select.c (Qselect_coerce): New.
5613         * select.c (Vselection_coercion_alist): New.
5614         * select.c (syms_of_select): Declare.
5615         * select.c (get-selection-internal): Use it.
5616         Use the new select-coerce functionality.
5617
5618         * select.c (select_coerce): New.
5619         * select.h (select_coerce): Declare.
5620         New function to coerce one type of data into another.
5621
5622 2000-08-03  Martin Buchholz  <martin@xemacs.org>
5623
5624         * callproc.c (Fcall_process_internal):
5625         (Fcall_process_internal):
5626         * process-unix.c (unix_create_process):
5627         Save and restore the value of errno, so that error messages are accurate.
5628
5629 2000-08-01  Martin Buchholz  <martin@xemacs.org>
5630
5631         * elhash.c (print_hash_table):
5632         Fix printing of hash tables to also use `key-and-value' instead of `t'.
5633         Prettify docstrings and indentation.
5634
5635 2000-07-31  Yoshiki Hayashi  <yoshiki@xemacs.org>
5636
5637         * window.c (Fwindow_pixel_edges): Subtract frame border and
5638         gutter size.
5639
5640 2000-07-31  Andy Piper  <andy@xemacs.org>
5641
5642         * buffer.c (Frecord_buffer): make absolutely sure that redisplay
5643         will acknowledge the change.
5644
5645         * glyphs.h: declare tab_control_order_only_changed.
5646
5647         * glyphs-x.c (x_tab_control_redisplay): use
5648         tab_control_order_only_changed.
5649
5650         * glyphs-widget.c (tab_control_order_only_changed): new function.
5651
5652         * glyphs-msw.c (mswindows_tab_control_redisplay): use
5653         tab_control_order_only_changed.
5654
5655         * gui.c (gui_item_equal_sans_selected): new function.
5656         (gui_item_equal): use it.
5657
5658         * glyphs-msw.c (mswindows_combo_box_instantiate): deprecate
5659         :properties in favor of :items..
5660
5661         * glyphs-widget.c (check_valid_item_list): rename from
5662         check_valid_item_list_1.
5663         (check_valid_item_list_1): renamed.
5664         (combo_box_validate): deprecate :properties in favor of :items.
5665         (widget_instantiate): ditto.
5666         (tab_control_update): ditto.
5667         (image_instantiator_combo_box): ditto.
5668         (image_instantiator_tree_view): ditto.
5669         (image_instantiator_tab_control): ditto.
5670         (layout_post_instantiate): remove dead code.
5671
5672         * print.c (debug_print_no_newline): only write to debugger if in
5673         WIN32_NATIVE.
5674
5675         * elhash.c (Fmake_hash_table): update doc string.
5676
5677         * event-msw.c (mswindows_wnd_proc): don't allow processing of
5678         messages whilst in GC. This at least stops XEmacs crashing but has
5679         the potential for wierd behaviour.
5680
5681 2000-07-31  Martin Buchholz  <martin@xemacs.org>
5682
5683         * config.h.in:
5684         Make existence of s&m files optional.
5685
5686         * s/bsd386.h: Remove HAVE_GETLOADAVG.
5687         * s/freebsd.h: Remove HAVE_GETLOADAVG.
5688         * s/gnu.h: Remove HAVE_GETLOADAVG.
5689         * s/netbsd.h: Remove HAVE_GETLOADAVG.
5690         * s/sol2.h: Remove HAVE_GETLOADAVG.
5691         * lisp.h: Remove getloadavg() declaration.
5692         * fns.c:
5693         Include <sys/loadavg.h> if available.
5694         Don't declare our own getloadavg() if HAVE_GETLOADAVG.
5695         * config.h.in:  Group together getloadavg()-related macros.
5696         Use only configure-time tests to detect getloadavg().
5697
5698 2000-07-30  Martin Buchholz  <martin@xemacs.org>
5699
5700         * Makefile.in.in (TransientEmacsShell.o): Fix race condition.
5701
5702 2000-07-25  Andy Piper  <andy@xemacs.org>
5703
5704         * syswindows.h: add tchar.h for native builds.
5705
5706         * frame.c (syms_of_frame): remove set-glyph-image.
5707
5708         * general-slots.h: add Qset_glyph_image.
5709
5710         * glyphs-widget.c (layout_update): add domain arg to
5711         set-glyph-image.
5712         (syms_of_glyphs_widget): remove set-glyph-image.
5713
5714 2000-07-23  Ben Wing  <ben@xemacs.org>
5715
5716         * dialog-msw.c (vars_of_dialog_mswindows): need to staticpro
5717         Vpopup_frame_list.
5718
5719 2000-07-22  Andy Piper  <andy@xemacs.org>
5720
5721         * symsinit.h: add syms_of_win32().
5722
5723         * gui-msw.c (syms_of_gui_mswindows): remove
5724         Fmswindows_shell_execute.
5725         (Fmswindows_shell_execute): moved to win32.c.
5726
5727         * emacs.c (main_1): add syms_of_win32 ().
5728
5729         * win32.c (init_potentially_nonexistent_functions): rewrite in
5730         compiler-friendly terms.
5731         (Fmswindows_shell_execute): move here from gui-msw.c.
5732         (syms_of_win32): new.
5733
5734         * device-msw.c (Fmswindows_printer_list): clean up args to
5735         EnumPrinters.
5736         Don't include tchar under cygwin or mingw.
5737         (msprinter_default_printer): make cygwin-friendly.
5738
5739 2000-07-21  Andy Piper  <andy@xemacs.org>
5740
5741         * glyphs-widget.c (image_instantiator_tree_view): use tab
5742         control's update function.
5743         (layout_property): new function. Retrieve items.
5744
5745         * glyphs-msw.c (mswindows_tree_view_redisplay): new
5746         function. Re-populate the tree view from the pending items.
5747
5748         * glyphs.c (instantiate_image_instantiator): Make sure the domain
5749         is designated the parent if the domain is an image instance. This
5750         is needed so that dirtiness can be cascade up the hierarchy and
5751         thus for layout children to be redisplayed correctly.
5752         (allocate_image_instance): rename glyph -> parent.
5753
5754         * redisplay.h: change redisplay_output_layout signature.
5755
5756         * redisplay-msw.c (mswindows_output_display_block): use domain
5757         arg.
5758
5759         * redisplay-x.c (x_output_display_block): use domain arg.
5760
5761 2000-07-10  Andy Piper  <andy@xemacs.org>
5762
5763         * window.c (Fset_window_configuration): add comment.
5764
5765         * redisplay-output.c (compare_runes):
5766         (redisplay_output_subwindow): redisplay rather than update subwindow.
5767         (redisplay_output_layout): ditto.
5768
5769         * redisplay-msw.c (mswindows_frame_output_end):
5770         (mswindows_frame_output_end): make defer window pos optional.
5771
5772         * lisp.h: add Flast.
5773
5774         * glyphs.h (struct image_instantiator_methods): add dest_mask top
5775         normalize method. Change update method to be for changed
5776         instantiators. Add redisplay method. Change signature of layout
5777         method.
5778         (struct Lisp_Image_Instance): add instantiator.
5779         (IMAGE_INSTANCE_INSTANTIATOR): new.
5780         (IMAGE_INSTANCE_SUBWINDOW_FACE): new.
5781         (XIMAGE_INSTANCE_INSTANTIATOR): new.
5782         (XIMAGE_INSTANCE_SUBWINDOW_FACE): new.
5783
5784         * glyphs.c:
5785         (find_instantiator_differences): new function.
5786         (Fset_instantiator_property): new convenience function.
5787         (check_image_instance_structure): strictly check for vector
5788         instantiators.
5789         (normalize_image_instantiator): make non-static.
5790         (instantiate_image_instantiator): pass on dest_mask and use new
5791         signatures for image_instance_layout and friends.
5792         (mark_image_instance): mark the instantiator. Mark the subwindow
5793         face not the widget face.
5794         (image_instance_equal): add instantiator.
5795         (image_instance_hash): ditto.
5796         (allocate_image_instance): ditto.
5797         (Fset_image_instance_property): removed.
5798         (Fimage_instance_file_name): ditto.
5799         (Fcolorize_image_instance): ditto.
5800         (image_instance_layout): add offsets to be set.
5801         (update_image_instance): new function. update an image instance
5802         from its changed instantiator.
5803         (inherit_normalize): add dest_mask.
5804         (xbm_normalize): ditto.
5805         (xface_normalize): ditto.
5806         (xpm_normalize): ditto.
5807         (text_update): set_property -> update.
5808         (image_instantiate): use the glyph identity as a hash key, not the
5809         instantiator.
5810         (glyph_width): use new image_instance_layout signature.
5811         (glyph_ascent): ditto.
5812         (glyph_descent): ditto.
5813         (glyph_height): ditto.
5814         (glyph_query_geometry): ressurrect.
5815         (glyph_layout): ditto.
5816         (redisplay_subwindow): update -> redisplay.
5817         (syms_of_glyphs): add Fset_instantiator_property.
5818         (image_instantiator_format_create): set_property -> update.
5819
5820         * glyphs-x.c:
5821         (autodetect_normalize): add dest_maks to signature.
5822         (x_redisplay_subwindow): update -> redisplay.
5823         (x_redisplay_widget): ditto.
5824         (x_button_redisplay): ditto.
5825         (x_progress_gauge_redisplay): ditto.
5826         (x_tab_control_redisplay): ditto. Rewrite to cope with changed
5827         stacking order.
5828         (console_type_create_glyphs_x): update -> redisplay.
5829         (image_instantiator_format_create_glyphs_x): ditto.
5830
5831         * glyphs-widget.c:
5832         (check_valid_instantiator): disallow glyphs in the instantiator,
5833         they must now be vectors.
5834         (check_valid_instantiator_list): ditto.
5835         (glyph_instantiator_to_glyph): use internal symbol rather than
5836         intern.
5837         (widget_update): renamed from widget_set_property. Call cascaded
5838         update methods.
5839         (redisplay_widget): renamed from update_widget.
5840         (widget_layout): image_instance_layout now takes position as well
5841         as size.
5842         (widget_normalize): ditto.
5843         (widget_instantiate): ditto.
5844         (tab_control_query_geometry) ditto.:
5845         (tab_control_update): renamed from tab_control_set_property.
5846         (progress_gauge_update): set_property -> update.
5847         (layout_normalize): rewrite so that child instantiators are
5848         normalized also.
5849         (layout_update): new function. Create glyphs from the normalized
5850         children and cope with any other layout keywords. We do not
5851         instantiate children here that will be take care of by
5852         redisplay_output_layout.
5853         (layout_instantiate): call layout_update and not much else.
5854         (layout_post_instantiate): not sure whether this is needed
5855         anymore.
5856         (layout_query_geometry): query glyph geometry rather than
5857         image_instance geometry.
5858         (layout_layout): set offsets from pass in parameters. Use glyph
5859         geometry and layout functions rather than image instance ones.
5860         (native_layout_layout): ditto.
5861         (syms_of_glyphs_widget): add make-glyph and set-glyph-image.
5862         (image_instantiator_widget): set_property -> update.
5863         (image_instantiator_buttons): ditto.
5864         (image_instantiator_progress_guage): ditto.
5865         (image_instantiator_tab_control): ditto.
5866         (VALID_LAYOUT_KEYWORDS): instantiators must now be vectors.
5867         (image_instantiator_layout): add update method.
5868
5869         * glyphs-msw.c (bmp_normalize):
5870         (mswindows_resource_normalize): add dest_mask so that it can be
5871         proprogated by layout_normalize.
5872         (begin_defer_window_pos): make optional because it may not be the
5873         right thing to do and it introduces differences with X.
5874         (mswindows_unmap_subwindow): ditto.
5875         (mswindows_map_subwindow): ditto.
5876         (mswindows_redisplay_subwindow): renamed from
5877         mswindows_update_subwindow.
5878         (mswindows_redisplay_widget): ditto.
5879         (mswindows_button_redisplay): renamed from
5880         mswindows_button_update. Update is now what the instantiation
5881         function does for a changed instantiator.
5882         (mswindows_progress_gauge_instantiate): set the progress value
5883         here if appropriate.
5884         (mswindows_tab_control_redisplay): cope with re-ordering of the
5885         members of the tab widget by simply selecting the new top
5886         widget. This makes things appear ok if you click on a tab.
5887         (mswindows_combo_box_instantiate): image_instance_layout now takes
5888         position as well as size.
5889         (mswindows_progress_gauge_redisplay): renamed from
5890         mswindows_progress_gauge_update.
5891         (console_type_create_glyphs_mswindows): fix update -> redisplay.
5892         (image_instantiator_format_create_glyphs_mswindows): ditto.
5893
5894         * glyphs-eimage.c (jpeg_normalize):
5895         (gif_normalize):
5896         (png_normalize):
5897         (tiff_normalize): add dest_mask so that it can be proprogated by
5898         layout_normalize.
5899
5900         * elhash.c:
5901         (print_hash_table):
5902         (hash_table_weakness_validate):
5903         (decode_hash_table_weakness):
5904         (Fhash_table_weakness):
5905         (Fhash_table_type):
5906         (syms_of_elhash): use Ben's naming scheme for hashtable types..
5907
5908         * console.h (struct console_methods): move update_* to
5909         redisplay_*.
5910
5911 2000-07-20  Ben Wing  <ben@xemacs.org>
5912
5913         * *.[ch] (XSETOBJ): remove unused middle argument.
5914         lisp-disunion.h: correct wrap_object() to one argument.
5915
5916 2000-07-15  Ben Wing  <ben@xemacs.org>
5917
5918         * s/cygwin32.h:
5919         * s/cygwin32.h (CYGWIN_CONV_PATH):
5920         Add missing logb prototype for v1.1.
5921         Use post-b20 names and alias to pre-b20 names when pre-b20.
5922
5923         * s/windowsnt.h: [5].
5924
5925 2000-07-15  Ben Wing  <ben@xemacs.org>
5926
5927         * Makefile.in.in (x_objs):
5928         * Makefile.in.in (sheap_objs):
5929         * Makefile.in.in (objs):
5930         added win32.o, cosmetic cleanups.
5931
5932         * alloc.c (Fmake_byte_code):
5933         [[[1]]]: Changes for new LIST_LOOP, EXTERNAL_LIST_LOOP,
5934         etc. macros which declare their own args now.
5935
5936         * alloc.c (syms_of_alloc):
5937         [[[2]]]: Use DEFSYMBOL, DEFKEYWORD, DEFERROR and friends.
5938
5939         * buffer.c:
5940         Moved buffer-dedicated-frame, set-buffer-dedicated-frame into lisp.
5941
5942         * buffer.c (Fget_file_buffer):
5943         Fixed GCPRO problem.
5944
5945         * buffer.c (get_truename_buffer):
5946         Fixed comment about GC checking.
5947
5948         * buffer.c (syms_of_buffer):
5949         Undeclared those dedicated frame funs.
5950         [2].
5951
5952         * buffer.h:
5953         Define convenience macros for internal/external conversions.
5954         [[[3]]]: Define codesys aliases Qcommand_argument_encoding
5955         and Qenvironment_variable_encoding for cleaner code.
5956
5957         * bufslots.h:
5958         Remove dedicated-frame; in lisp.
5959
5960         * bytecode.c (funcall_compiled_function):
5961         [1].
5962
5963         * bytecode.c (syms_of_bytecode):
5964         [2].
5965
5966         * console-msw.c:
5967         * console-msw.c (mswindows_show_console): Rewrote.
5968
5969         * console-msw.c (Fmswindows_debugging_output): New.
5970         Sends to OutputDebugString (special MSWin debugger interface).
5971
5972         * console-msw.c (Fmswindows_message_box):
5973         Fixed stupid bugs so it works when called from kill-emacs.
5974
5975         * console-msw.c (syms_of_console_mswindows):
5976         Declare Fmswindows_debugging_output.
5977
5978         * console-msw.h:
5979         New MSWin prototypes.
5980
5981         * console-msw.h (struct mswindows_frame):
5982         New entry last-click-mods for improved button-modifier support.
5983
5984         * console-msw.h (FRAME_MSWINDOWS_POPUP):
5985         New struct entry `popup' with corresponding accessor.
5986
5987         * console-x.c:
5988         * console-x.c (split_up_display_spec):
5989         * console-x.c (get_display_arg_connection):
5990         * console-x.c (x_semi_canonicalize_console_connection):
5991         * console-x.c (x_canonicalize_device_connection):
5992         [[[6]]]: Change char to more specific type.
5993         [[[8]]]: Make use of abstracting codesys aliases defined in [3], [4];
5994
5995         * console-x.c (x_semi_canonicalize_console_connection):
5996         * console-x.c (x_canonicalize_device_connection):
5997         [[[9]]]: Fix up error signalling to use new structured error system.
5998
5999         * console-x.h:
6000         [[[4]]]: Define codesys aliases:
6001         Qlwlib_encoding, Qx_atom_name_encoding, Qx_font_name_encoding,
6002         Qx_color_name_encoding, Qx_display_name_encoding.
6003
6004         * console.h (struct console_methods):
6005         New method make_dialog_box_internal supersedes older
6006         popup_dialog_box method.
6007
6008         * data.c:
6009         Define many new errors, part of new structured errors.
6010
6011         * data.c (init_errors_once_early):
6012         * data.c (syms_of_data):
6013         [2].
6014
6015         * device-msw.c (mswindows_init_device):
6016         [[[5]]]: Cleanup to support NT 3.51.
6017
6018         * device-msw.c (decode_devmode): Cleanup.
6019
6020         * device-msw.c (mswindows_handle_print_setup_dialog_box):
6021         * device-msw.c (mswindows_handle_print_dialog_box):
6022         * device-msw.c (mswindows_handle_page_setup_dialog_box):
6023         * device-msw.c (syms_of_device_mswindows):
6024         Delete the dialog box primitives recently introduced by Kirill and
6025         instead interface to general dialog box interface.
6026
6027         * device-x.c:
6028         * device-x.c (compute_x_app_name):
6029         * device-x.c (x_init_device):
6030         * device-x.c (Fx_valid_keysym_name_p):
6031         * device-x.c (Fx_set_font_path):
6032         [6].
6033         [7].
6034
6035         * device.h (wrap_device): New.
6036         First of its kind; meant to replace XSETDEVICE.
6037
6038         * dialog-msw.c: Many file-dialog symbols.
6039
6040         * dialog-msw.c (mswindows_register_popup_frame): New.
6041         * dialog-msw.c (mswindows_is_dialog_msg): New.
6042         For supporting kbd traversal in dialog boxes.
6043
6044         * dialog-msw.c (dialog_proc):
6045         Support hitting ESC in dialogs.
6046
6047         * dialog-msw.c (struct):
6048         Common dialog box errors.
6049
6050         * dialog-msw.c (handle_file_dialog_box): New.
6051         Add file dialog code.
6052
6053         * dialog-msw.c (handle_question_dialog_box):
6054         Redo existing code to support new question dialog syntax.
6055
6056         * dialog-msw.c (console_type_create_dialog_mswindows):
6057         We support new dialog console method.
6058
6059         * dialog-msw.c (syms_of_dialog_mswindows):
6060         * dialog-msw.c (vars_of_dialog_mswindows):
6061         New file dialog symbols, vars.
6062
6063         * dialog-x.c:
6064         * dialog-x.c (maybe_run_dbox_text_callback):
6065         * dialog-x.c (dbox_descriptor_to_widget_value):
6066         * dialog-x.c (x_make_dialog_box_internal):
6067         * dialog-x.c (console_type_create_dialog_x):
6068         Mule-ize entire file.
6069         Redo to support question dialog syntax.
6070         [6].
6071
6072         * dialog.c:
6073         * dialog.c (Fmake_dialog_box_internal):
6074         * dialog.c (syms_of_dialog):
6075         Kill old popup-dialog-box, replace with new primitive.
6076         Just call device method or signal error.
6077
6078         * eldap.c (Fldap_open):
6079         * eldap.c (Fldap_search_basic):
6080         * eldap.c (Fldap_add):
6081         * eldap.c (Fldap_modify):
6082         [1].
6083         [7].
6084
6085         * emacs.c:
6086         * emacs.c (make_arg_list_1):
6087         * emacs.c (make_arg_list):
6088         Mule-ize call to dll_init().
6089         [6].
6090         [8].
6091
6092         * emacs.c (make_argc_argv):
6093         * emacs.c (free_argc_argv):
6094         * emacs.c (init_cmdargs):
6095         * emacs.c (main_1):
6096         * emacs.c (Fkill_emacs):
6097         * emacs.c (Fdump_emacs):
6098         Update comments about what can be used in syms_* etc.
6099         Call init_win32() when necessary.
6100         Fix up MS Win dialog box in kill-buffer to actually work right.
6101         [7].
6102
6103         * eval.c:
6104         * eval.c (For):
6105         * eval.c (Fand):
6106         * eval.c (Fprogn):
6107         * eval.c (Fprog1):
6108         * eval.c (Fprog2):
6109         * eval.c (FletX):
6110         * eval.c (Flet):
6111         * eval.c (condition_case_3):
6112         * eval.c (Feval):
6113         * eval.c (function_argcount):
6114         * eval.c (funcall_lambda):
6115         [1].
6116
6117         * eval.c (type_error): New.
6118         * eval.c (maybe_type_error): New.
6119         * eval.c (continuable_type_error): New.
6120         * eval.c (maybe_continuable_type_error): New.
6121         * eval.c (type_error_with_frob): New.
6122         * eval.c (maybe_type_error_with_frob): New.
6123         * eval.c (continuable_type_error_with_frob): New.
6124         * eval.c (maybe_continuable_type_error_with_frob): New.
6125         New functions for use with structured errors.
6126
6127         * event-Xt.c:
6128         * event-Xt.c (x_event_to_emacs_event):
6129         Buttons are now modifiers too.
6130
6131         * event-Xt.c (emacs_Xt_current_event_timestamp):
6132         Implement new event method.
6133         * event-Xt.c (reinit_vars_of_event_Xt): Set it.
6134
6135         * event-msw.c:
6136         * event-msw.c (ntpipe_shove_writer): [5].
6137         * event-msw.c (mswindows_enqueue_mouse_button_event):
6138         * event-msw.c (mswindows_drain_windows_queue):
6139         * event-msw.c (mswindows_wnd_proc): [7].
6140         * event-msw.c (mswindows_current_layout_has_AltGr): [5].
6141         * event-msw.c (mswindows_modifier_state):
6142         Throughout: support new button modifiers.
6143
6144         * event-msw.c (emacs_mswindows_current_event_timestamp):
6145         Implement new event method.
6146         * event-msw.c (reinit_vars_of_event_mswindows): Set it.
6147
6148         * event-stream.c:
6149         * event-stream.c (event_stream_current_event_timestamp): New.
6150         * event-stream.c (maybe_kbd_translate): New functionality.
6151         * event-stream.c (vars_of_event_stream):
6152         Document new kbd-translate-table functionality.
6153
6154         * event-stream.c (Fcurrent_event_timestamp): New.
6155         New primitive for use in fabricated events.
6156         * event-stream.c (syms_of_event_stream): [2]. Declare new primitive.
6157
6158         * events-mod.h (XEMACS_MOD_BUTTON1): new button modifiers.
6159
6160         * events.c:
6161         * events.c (Fmake_event):
6162         * events.c (WRONG_EVENT_TYPE_FOR_PROPERTY):
6163         [1].
6164         [9].
6165
6166         * events.c (format_event_object): fix gcc warnings.
6167
6168         * events.c (Fevent_timestamp): Document new primitives.
6169
6170         * events.c (TIMESTAMP_HALFSPACE): New.
6171
6172         * events.c (Fevent_timestamp_lessp): New.  New primitive for
6173         comparing timestamps correctly (half-space algorithm).
6174
6175         * events.c (Fevent_modifier_bits): Doc fix.
6176
6177         * events.c (Fevent_modifiers): Major doc addition.
6178         * events.c (event_x_y_pixel_internal): Typo fix.
6179         * events.c (syms_of_events): Declare new primitives.
6180
6181         * events.h:
6182         Update long comment for button modifiers, timestamps.
6183
6184         * events.h (struct event_stream):
6185         New current_event_timestamp method.
6186
6187         * extents.c:
6188         * extents.c (extent_in_region_p):
6189         * extents.c (decode_extent):
6190         * extents.c (Fset_extent_parent):
6191         * extents.c (decode_map_extents_flags):
6192         Fix gcc warnings.
6193         [9].
6194
6195         * extents.c (struct extent_at_arg):
6196         * extents.c (decode_extent_at_flag):
6197         * extents.c (extent_at_mapper):
6198         * extents.c (extent_at_bytind):
6199         * extents.c (Fextent_at): Adapt to new lower-level interface. [9].
6200         * extents.c (Fextents_at): New primitive. [9].
6201         * extents.c (symbol_to_glyph_layout): [9].
6202         Support new primitive `extents-at'.
6203
6204
6205         * extents.c (get_text_property_bytind):
6206         extent_at_bytind has another arg.
6207         [9].
6208
6209         * extents.c (syms_of_extents): New primitive.
6210
6211         * file-coding.c (Fmake_coding_system): [1].
6212         * file-coding.c (subsidiary_coding_system): fix gcc warning
6213         * file-coding.c (syms_of_file_coding): [2].
6214
6215         * fileio.c (Fexpand_file_name):
6216         * fileio.c (Fsysnetunam):
6217         * fileio.c (Ffile_exists_p):
6218         * fileio.c (Ffile_executable_p):
6219         * fileio.c (Fverify_visited_file_modtime):
6220         Clean up GCPROing.
6221
6222         * fileio.c (syms_of_fileio): [2].
6223
6224         * filelock.c (lock_file_1):
6225         * filelock.c (current_lock_owner):
6226         * filelock.c (lock_if_free):
6227         * filelock.c (lock_file):
6228         * filelock.c (unlock_file):
6229         Clean up GCPROing.
6230
6231         * fns.c (concat): Fix gcc warning.
6232
6233         * fns.c (Fmember):
6234         * fns.c (Fold_member):
6235         * fns.c (Fmemq):
6236         * fns.c (Fold_memq):
6237         * fns.c (memq_no_quit):
6238         * fns.c (Fassoc):
6239         * fns.c (Fold_assoc):
6240         * fns.c (Fassq):
6241         * fns.c (Fold_assq):
6242         * fns.c (assq_no_quit):
6243         * fns.c (Frassoc):
6244         * fns.c (Fold_rassoc):
6245         * fns.c (Frassq):
6246         * fns.c (Fold_rassq):
6247         * fns.c (rassq_no_quit):
6248         * fns.c (Fdelete):
6249         * fns.c (Fold_delete):
6250         * fns.c (Fdelq):
6251         * fns.c (Fold_delq):
6252         * fns.c (delq_no_quit):
6253         * fns.c (Fremassoc):
6254         * fns.c (Fremassq):
6255         * fns.c (remassq_no_quit):
6256         * fns.c (Fremrassoc):
6257         * fns.c (Fremrassq):
6258         * fns.c (remrassq_no_quit):
6259         * fns.c (Freverse):
6260         * fns.c (mapcar1):
6261         [1].
6262
6263         * frame-msw.c (mswindows_init_frame_1):
6264         * frame-msw.c (mswindows_delete_frame):
6265         Register popups with dialog code so keyboard traversing works.
6266
6267         * frame-tty.c (tty_raise_frame_no_select): [1].
6268
6269         * frame-x.c:
6270         * frame-x.c (x_set_frame_text_value):
6271         * frame-x.c (x_set_frame_properties):
6272         * frame-x.c (x_create_widgets):
6273         [7].
6274
6275         * frame.c:
6276         * frame.c (Fmouse_pixel_position): Minor doc fixes.
6277
6278         * frame.h (wrap_frame): New.
6279         Macro like wrap_device.
6280
6281         * general.c:
6282         * general.c (SYMBOL):
6283         * general.c (syms_of_general):
6284         Major reorg.  This is now just a wrapper and symbols themselves
6285         are listed in general-slots.h.
6286
6287         * glyphs-eimage.c (tiff_instantiate): Need cast to fix warning.
6288         * glyphs-msw.c (mswindows_resource_instantiate): [5].
6289
6290         * glyphs-msw.c (mswindows_native_layout_instantiate):
6291         Add DS_CONTROL so keyboard traversal will work.
6292
6293         * glyphs-widget.c:
6294         * glyphs-widget.c (syms_of_glyphs_widget):
6295         Move some symbols to general-slots.h.
6296
6297         * glyphs-x.c:
6298         * glyphs-x.c (xbm_instantiate_1):
6299         * glyphs-x.c (x_xbm_instantiate):
6300         * glyphs-x.c (x_xface_instantiate):
6301         * glyphs-x.c (autodetect_instantiate):
6302         * glyphs-x.c (cursor_font_instantiate):
6303         * glyphs-x.c (x_update_widget):
6304         * glyphs-x.c (x_widget_instantiate):
6305         * glyphs.c (bitmap_to_lisp_data):
6306         * glyphs.c (pixmap_to_lisp_data):
6307         [7].
6308
6309         * glyphs.c (syms_of_glyphs):
6310         [2].
6311
6312         * gui-x.c:
6313         * gui-x.c (print_widget_value):
6314         * gui-x.c (menu_separator_style_and_to_external):
6315         * gui-x.c (add_accel_and_to_external):
6316         * gui-x.c (button_item_to_widget_value):
6317         * gui-x.c (gui_items_to_widget_values_1):
6318         * gui-x.c (gui_items_to_widget_values):
6319         * gui-x.c (syms_of_gui_x):
6320         * gui-x.c (vars_of_gui_x):
6321         Mule-ize entire file.  Move menu-no-selection-hook to gui.c.
6322         [9].
6323
6324         * gui-x.h:
6325         Muleize, prototype changes matching gui-x.c.
6326
6327         * gui.c:
6328         * gui.c (separator_string_p):
6329         * gui.c (gui_item_add_keyval_pair):
6330         * gui.c (make_gui_item_from_keywords_internal):
6331         * gui.c (signal_too_long_error):
6332         * gui.c (parse_gui_item_tree_item):
6333         * gui.c (syms_of_gui):
6334         * gui.c (vars_of_gui):
6335         * gui.h:
6336         menu-no-selection-hook moved here (used by MSWin).
6337         Move some symbols to general-slots.h.
6338         [6].
6339         [9].
6340
6341         * insdel.c (get_buffer_pos_char):
6342         * insdel.c (get_buffer_range_char):
6343         Add GC comments.
6344
6345         * keymap.c (keymap_lookup_directly):
6346         * keymap.c (keymap_store):
6347         * keymap.c (ensure_meta_prefix_char_keymapp):
6348         * keymap.c (describe_map):
6349         * keymap.h:
6350         Support new button modifiers.
6351
6352         * lisp-disunion.h (wrap_object):
6353         * lisp-disunion.h (XSETOBJ):
6354         Rename make_obj to wrap_object.
6355
6356         * lisp-union.h:
6357         * lisp-union.h (make_int):
6358         * lisp-union.h (make_char):
6359         Support wrap_object.
6360
6361         * lisp.h:
6362         * lisp.h (LIST_LOOP):
6363         * lisp.h (EXTERNAL_LIST_LOOP):
6364         * lisp.h (LIST_LOOP_2):
6365         * lisp.h (EXTERNAL_LIST_LOOP_1):
6366         * lisp.h (EXTERNAL_LIST_LOOP_2):
6367         * lisp.h (EXTERNAL_LIST_LOOP_3):
6368         * lisp.h (EXTERNAL_LIST_LOOP_4_NO_DECLARE):
6369         * lisp.h (PRIVATE_EXTERNAL_LIST_LOOP_6):
6370         * lisp.h (GET_EXTERNAL_LIST_LENGTH):
6371         * lisp.h (EXTERNAL_ALIST_LOOP_5):
6372         * lisp.h (EXTERNAL_ALIST_LOOP_6):
6373         * lisp.h (EXTERNAL_ALIST_LOOP_6_NO_DECLARE):
6374         * lisp.h (EXTERNAL_PROPERTY_LIST_LOOP_5_NO_DECLARE):
6375         * lisp.h (EXTERNAL_PROPERTY_LIST_LOOP_7):
6376         * lisp.h (struct Lisp_Symbol):
6377         * lisp.h (maybe_continuable_error_with_frob):
6378         Fix up section comments.
6379         Add new types for char to indicate usage.
6380         Delete symbols auto-generated from general-slots.h.
6381         Add prototypes for structured error functions.
6382         Add long comments describing looping macros and change interface
6383         so that lvalues are automatically declared.
6384         Add NO_DECLARE macro in case callers want to declare lvalues
6385         themselves.
6386
6387         * lread.c (read_syntax_error):
6388         * lread.c (continuable_read_syntax_error):
6389         * lread.c (read_structure):
6390         * lread.c (sequence_reader):
6391         * lread.c (read_list_conser):
6392         * lread.c (read_compiled_function):
6393         Rename syntax_error and continuable_syntax_error to avoid clash
6394         with same-named structured error functions.
6395
6396         * menubar-msw.c (mswindows_translate_menu_or_dialog_item):
6397         * menubar-msw.c (populate_menu_add_item):
6398         * menubar-msw.c (populate_or_checksum_helper):
6399         [5].
6400         [9].
6401
6402         * menubar-x.c:
6403         * menubar-x.c (menu_item_descriptor_to_widget_value_1):
6404         Mule-ize whole file.
6405
6406         * menubar.c (Fnormalize_menu_item_name): Add optimization.
6407
6408         * mule-charset.c (Fmake_charset):
6409         * mule-wnnfns.c (Fwnn_set_param):
6410         [1].
6411
6412         * ntproc.c (create_child):
6413         * ntproc.c (Fwin32_set_current_locale):
6414         Add comments portending doom.
6415
6416         * objects-msw.c:
6417         * objects-msw.c (old_font_enum_callback_2):
6418         * objects-msw.c (font_enum_callback_1):
6419         * objects-msw.c (mswindows_enumerate_fonts):
6420         [5].
6421
6422         * objects-x.c:
6423         * objects-x.c (allocate_nearest_color):
6424         * objects-x.c (x_parse_nearest_color):
6425         * objects-x.c (x_initialize_color_instance):
6426         * objects-x.c (x_print_color_instance):
6427         * objects-x.c (x_finalize_color_instance):
6428         * objects-x.c (x_valid_color_name_p):
6429         * objects-x.c (x_initialize_font_instance):
6430         * objects-x.c (x_print_font_instance):
6431         * objects-x.c (valid_x_font_name_p):
6432         * objects-x.c (truename_via_FONT_prop):
6433         * objects-x.c (truename_via_random_props):
6434         * objects-x.c (truename_via_XListFonts):
6435         * objects-x.c (x_font_truename):
6436         * objects-x.c (x_font_instance_truename):
6437         * objects-x.c (x_font_instance_properties):
6438         * objects-x.c (x_list_fonts):
6439         * objects-x.c (x_find_charset_font):
6440         Mule-ize entire file.
6441         [7].
6442
6443         * objects-x.h:
6444         Mule-verify.
6445
6446         * print.c:
6447         * print.c (std_handle_out_external):
6448         * print.c (debug_print_no_newline):
6449         * print.c (syms_of_print):
6450         Output to all debugger kinds in debug-print.
6451         Fix console-output code under MSWin to actually work.
6452
6453         * process-nt.c (send_signal):
6454         * process-nt.c (nt_create_process):
6455         Use newer Unicode macros.
6456
6457         * process-unix.c (unix_create_process):
6458         * process-unix.c (unix_canonicalize_host_name):
6459         * process-unix.c (unix_open_network_stream):
6460         [7].
6461
6462         * scrollbar-x.c:
6463         Mule-verify.
6464
6465         * search.c (syms_of_search):
6466         [2].
6467
6468         * select-msw.c (mswindows_destroy_selection):
6469         Use LIST_LOOP_2.
6470
6471         * select-x.c (symbol_to_x_atom):
6472         [7].
6473
6474         * select.c (syms_of_select):
6475         [2].
6476
6477         * sound.c (Fplay_sound_file):
6478         [7].
6479
6480         * specifier.c:
6481         * specifier.c (decode_specifier_type):
6482         * specifier.c (Fvalid_specifier_locale_type_p):
6483         * specifier.c (check_valid_locale_or_locale_type):
6484         * specifier.c (decode_locale):
6485         * specifier.c (decode_locale_type):
6486         * specifier.c (decode_locale_list):
6487         * specifier.c (check_valid_domain):
6488         * specifier.c (decode_specifier_tag_set):
6489         * specifier.c (Fcanonicalize_tag_set):
6490         * specifier.c (Fdefine_specifier_tag):
6491         * specifier.c (Fspecifier_tag_predicate):
6492         * specifier.c (check_valid_inst_list):
6493         * specifier.c (check_valid_spec_list):
6494         * specifier.c (decode_how_to_add_specification):
6495         * specifier.c (check_modifiable_specifier):
6496         * specifier.c (specifier_add_spec):
6497         * specifier.c (boolean_validate):
6498         * specifier.c (display_table_validate):
6499         [9].
6500
6501         * specifier.c (syms_of_specifier):
6502         Move some symbols to general-slots.h.
6503         [2].
6504
6505         * symbols.c:
6506         * symbols.c (Fmapatoms):
6507         * symbols.c (Fapropos_internal):
6508         Add GCPROs.
6509
6510         * symbols.c (set_default_buffer_slot_variable):
6511         * symbols.c (set_default_console_slot_variable):
6512         [1].
6513
6514         * symbols.c (defsymbol_massage_name_1):
6515         * symbols.c (defkeyword_massage_name):
6516         * symbols.c (deferror_1):
6517         * symbols.c (deferror):
6518         * symbols.c (deferror_massage_name_and_message):
6519         * symeval.h:
6520         * symeval.h (DEFSYMBOL):
6521         Support DEFSYMBOL*, DEFKEYWORD, DEFERROR
6522
6523         * symbols.c (syms_of_symbols):
6524         [2].
6525
6526         * symsinit.h:
6527         * symsinit.h (init_win32): New.
6528         Also new is syms_of_dialog_mswindows.
6529
6530         * syswindows.h:
6531         Add new Unicode macros, missing Cygwin wide-char functions,
6532         convenience conversion macros for Qmswindows_tstr, macros for
6533         encapsulating required MSWin <-> Cygwin filename conversions,
6534         prototype for dynamically-extracted (not in NT 3.51) functions.
6535
6536         * toolbar-x.c:
6537         Mule-verify.
6538
6539         * tooltalk.c (Fadd_tooltalk_message_arg):
6540         * tooltalk.c (Fadd_tooltalk_pattern_attribute):
6541         * tooltalk.c (Fadd_tooltalk_pattern_arg):
6542         [7].
6543
6544         * tooltalk.c (syms_of_tooltalk):
6545         [2].
6546
6547         * unexnt.c:
6548         * unexnt.c (unexec):
6549         Fix up headers, declaration of unexec() to be more standard.
6550
6551 2000-07-20  Martin Buchholz  <martin@xemacs.org>
6552
6553         * offix.h: Revert change to guard macros - they're used in offix.c!
6554
6555 2000-07-18  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
6556
6557         * lisp.h: Defsubred Fdelete.
6558
6559         * console-msw.h:  (msprinter_default_printer): Added.
6560
6561         * console-msw.c (msprinter_canonicalize_console_connection):
6562         (msprinter_canonicalize_device_connection): Added.
6563
6564         * device-msw.c (msprinter_default_printer):
6565         (Fmswingows_get_default_printer):
6566         (signal_enum_priner_error):
6567         (Fmswingows_printer_list): Added.
6568
6569 2000-07-19  Martin Buchholz <martin@xemacs.org>
6570
6571         * XEmacs 21.2.35 is released.
6572
6573 2000-07-19  Martin Buchholz  <martin@xemacs.org>
6574
6575         * select-x.c (x_handle_selection_request):
6576         Text selected in xemacs and pasted into xterm failed to appear.
6577         Spelling fixes and cosmetic changes.
6578
6579 2000-07-18  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
6580
6581         * event-msw.c (mswindows_drain_windows_queue): Correctly check for
6582         XEmacs frame (fix for doubling chars in dialog boxes).
6583
6584 2000-07-17 Alastair J. Houghton <ajhoughton@lineone.net>
6585
6586         * select.c (select_convert_in, select_convert_out):
6587         Don't call intern() every time.
6588
6589         * select.c (Qselect_convert_in, Qselect_convert_out): New.
6590         * select.c (vars_of_select): Initialise them.
6591
6592 2000-07-18 Alastair J. Houghton <ajhoughton@lineone.net>
6593
6594         * select.c (selection-coercible-types): New.
6595
6596         * select.c (own-selection-internal):
6597         * select.c (get-selection-internal):
6598         MULE bug fix - these should default to COMPOUND_TEXT and not
6599         STRING for MULE. I think.
6600
6601         * select.c (select_convert_out): Use selection-coercible-types
6602         to find types that we can attempt to perform coercions on.
6603
6604 2000-07-18  Martin Buchholz  <martin@xemacs.org>
6605
6606         * mule-wnnfns.c:
6607         * mule-canna.c:
6608         Add coding: cookie to identify encoding.
6609
6610         * mule-canna.c (CANNA_mode_keys): make static.
6611         Use proper prototypes, even for functions of no arguments.
6612         Remove external prototype for Fding().
6613
6614         * symsinit.h: Add missing prototype for reinit_vars_of_mule_wnn.
6615
6616         * select.c (syms_of_select): Add missing DEFSUBR.
6617
6618 2000-07-18 Alastair J. Houghton <ajhoughton@lineone.net>
6619
6620         * select.c (get_selection_internal, own_selection_internal):
6621         Make the type default to STRING, rather than placing a nil type
6622         into Vselection_alist.
6623
6624 2000-07-17 Alastair J. Houghton <ajhoughton@lineone.net>
6625
6626         * gpmevent.c (tty_selection_exists_p):
6627         * gpmevent.c (tty_own_selection):
6628         Updated parameter lists.
6629
6630 2000-07-15 Alastair J. Houghton <ajhoughton@lineone.net>
6631
6632         * select.h (selection-alist): Removed declaration.
6633
6634         * select.h (get_local_selection):
6635         * select.c (get_local_selection):
6636         Made static.
6637
6638         * select.h (convert_selection): Removed declaration.
6639         * select.c (convert_selection): Removed.
6640         This function belongs in Lisp.
6641
6642         * select.h (select_convert_in): Declare.
6643         * select.h (select_convert_out): Declare.
6644         * select.c (select_convert_in): New.
6645         * select.c (select_convert_out): New.
6646         New conversion functions for other files to call.
6647
6648         * select.h (select_notify_buffer_kill): Declare.
6649         * select.c (select_notify_buffer_kill): New.
6650         New functions that get called from kill-buffer.
6651
6652         * buffer.c (kill-buffer): Call select_notify_buffer_kill, rather than
6653         X-specific lisp code.
6654
6655         * select.h: Declare some of the lisp-visible functions for
6656         external use.
6657
6658         * select.c (clean_local_selection_data): Removed. This was
6659         a disgusting function, and previously should have been in
6660         select-x.c in any case. The functionality is now provided
6661         in select-convert-from-integer (select.el).
6662
6663         * select.c (available-selection-types): Fixed stupidity where
6664         INTEGER and ATOM got added twice. Also add STRING when we see an
6665         extent.
6666
6667         * select.c (get-selection-internal): Removed symbol stripping. No
6668         longer causes conversion when data comes from the internal cache.
6669
6670         * select.c (syms_of_select): Added new functions.
6671
6672         * select-x.c (motif_clipboard_cb): Use select_convert_out. Rewrote
6673         error checking - previously this called abort!
6674
6675         * select-x.c (x_own_selection): Changed comment.
6676
6677         * select-x.c (x_handle_selection_request): Use select_convert_out.
6678         Don't mess with selection-alist; it's an internal variable of select.c.
6679
6680         * select-x.c (x_get_foreign_selection): Use select_convert_in.
6681
6682         * select-x.c (x_handle_selection_clear): Use get-selection-timestamp,
6683         rather than messing with selection-alist.
6684
6685         * select-msw.c (mswindows_get_foreign_selection):
6686         Use TO_INTERNAL_FORMAT rather than hacking.
6687
6688 2000-07-14  Martin Buchholz  <martin@xemacs.org>
6689
6690         * process-unix.c (unix_open_multicast_group):
6691         (unix_open_multicast_group): Remove useless casts.
6692
6693 2000-07-13  Martin Buchholz  <martin@xemacs.org>
6694
6695         * sound.c (Fplay_sound): Fix `unused variable' warning.
6696
6697         * emacs.c (main): Use correct type for _environ on SCO5.
6698
6699 2000-07-12 Alastair J. Houghton <ajhoughton@lineone.net>
6700
6701         * console.h (own_selection_method):
6702         * console.h (selection_exists_p_method):
6703         * console.h (available_selection_types_method): New.
6704         * console.h (register_selection_data_type_method): New.
6705         * console.h (selection_data_type_name): New.
6706
6707         * console-msw.h (mswindows_destroy_selection): Declare it.  New
6708         function & alist to track GlobalAlloc()'d handles that need
6709         releasing when the clipboard data gets replaced or emptied.
6710
6711         * event-msw.c (mswindows_wnd_proc): Call it.
6712
6713         * lisp.h, general.c (Qappend): New symbol representing a
6714         `how-to-add' mode.
6715
6716         * select.c (own-selection-internal):
6717         * select.c (selection-exists-p):
6718         * select.c (available-selection-types): New.
6719         * select.c (register-selection-data-type): New.
6720         * select.c (selection-data-type-name): New.  New functions to deal
6721         with device-specific selection data formats.
6722         * select.c (selection-converter-out-alist): Renamed.
6723         * select.c (selection-converter-in-alist): New.
6724         * select.c (selection-appender-alist): New.  Added new alists.
6725         * select.c (syms_of_select, vars_of_select): Added new symbols &
6726         variables.
6727         * select.c (get_local_selection): Split.
6728         * select.c: Removed spurious type checking - selections may now be
6729         of any type, not just strings.
6730         * select.c (own-selection-internal):
6731
6732         * select.h, select.c (convert_selection): New. Created
6733         convert_selection() function based on get_local_selection().
6734         * select.h, select.c (QCF_*): New symbols representing mswindows
6735         clipboard formats.
6736         * select.h, select.c (Qreplace_all, Qreplace_existing): New
6737         symbols representing `how-to-add' modes.
6738
6739         * select-msw.c (x_sym_p): New.
6740         * select-msw.c (symbol_to_ms_cf): New.
6741         * select-msw.c (ms_cf_to_symbol): New. New functions to deal with
6742         symbols & clipboard formats. Can also handle string names.
6743         * select-msw.c (mswindows_own_selection):
6744         * select-msw.c (mswindows_selection_exists_p):
6745         Added `data-type' parameter. Use it.
6746         * select-msw.c (mswindows_available_selection_types): New.
6747         * select-msw.c (mswindows_register_selection_data_type): New.
6748         * select-msw.c (mswindows_selection_data_type_name): New.
6749         * select-msw.c (mswindows_own_selection):
6750         * select-msw.c (mswindows_get_foreign_selection):
6751         * select-msw.c (mswindows_selection_exists_p):  Rewrote.
6752         * select-msw.c (console_create_select_mswindows): Added new methods.
6753         * select-msw.c (mswindows_destroy_selection): New.
6754         * select-msw.c (Vhandle_alist): New list.
6755         * select-msw.c (mswindows_own_selection):
6756
6757         * select-x.c (x_own_selection):
6758         * select-x.c (x_selection_exists_p):
6759         * select-x.c: Added some comments about maybe using new
6760         functionality.
6761         * select-x.c (x_own_selection):
6762
6763         * specifier.c: Remove definition of Qappend (now in general.c)
6764         * specifier.c (syms_of_specifier): Remove Qappend.
6765
6766 2000-07-12  Martin Buchholz  <martin@xemacs.org>
6767
6768         * config.h.in: Add socklen_t.
6769
6770         * s/decosf4-0.h: No special compiler flags needed or desired.
6771         In particular, undefine _BSD for DEC OSF 4.0.
6772
6773 2000-07-07  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
6774
6775         * redisplay-msw.c (msprinter_frame_output_end): Added.
6776         (console_type_create_redisplay_mswindows): Referred the above.
6777
6778         * frame.c (setup_frame_without_minibuffer): Do not create a
6779         default minibuffer frame on a printer device.
6780
6781         * frame-msw.c (apply_dc_geometry): Added.
6782         (msprinter_start_page):
6783         (msprinter_init_frame_3):
6784         (msprinter_eject_page): Use it.
6785
6786         * console-msw.h (struct msprinter_frame): Added pix_left and top,
6787         and removed residual duplex and orientation properties.
6788
6789 2000-07-11  Martin Buchholz  <martin@xemacs.org>
6790
6791         * eval.c (function_argcount): Work around a DEC CC compiler bug.
6792
6793         * unexalpha.c: Remove system prototypes from C sources!
6794
6795 2000-07-09  Adrian Aichner  <aichner@ecf.teradyne.com>
6796
6797         * eval.c: Remove references to M-x edit-options in DEFUNs for
6798         `defvar' and `defconst'.
6799
6800 2000-07-09  Martin Buchholz  <martin@xemacs.org>
6801
6802         * config.h.in: Remove SMART_INCLUDE hackery.
6803
6804         PostgreSQL hacking:
6805         * config.h.in: Don't use SMART_INCLUDE.
6806
6807         * postgresql.h: Include libpq-fe.h here.  Fix typo.
6808         * inline.c: Simply #include "postgresql.h"
6809         * postgresql.c:
6810         - Don't use SMART_INCLUDE
6811         - Use simply "const".
6812         - Use standard doc string conventions.
6813         - Use correct type for result of PQstatus.
6814
6815 2000-07-09  Martin Buchholz  <martin@xemacs.org>
6816
6817         * glyphs-x.c (x_xface_instantiate): Fix C++ compilation warnings.
6818
6819         C++ compilation changes.
6820         * config.h.in (EXTERN_C): Define.
6821         * config.h.in (not): This is also a C++ keyword.
6822         * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Enable C++ compilation.
6823         * cm.c: Use EXTERN_C.
6824         * redisplay-tty.c: Use EXTERN_C.
6825         * sysdep.c: Use EXTERN_C.  Remove Gould support.
6826
6827 2000-07-09  Martin Buchholz  <martin@xemacs.org>
6828
6829         * general.c: Remove duplicate definition for Qfunction.
6830
6831 2000-07-08  Ben Wing  <ben@xemacs.org>
6832
6833         * device-msw.c (msprinter_init_device):
6834         * device-msw.c (sync_printer_with_devmode):
6835         * device-msw.c (handle_devmode_changes):
6836         * device-msw.c (print_dialog_worker):
6837         * device-msw.c (Fmsprinter_apply_settings):
6838         * device-msw.c (hash_devmode):
6839         * device-msw.c (Fmsprinter_settings_despecialize):
6840         use Qmswindows_tstr, not Qctext.
6841
6842         * vm-limit.c (check_memory_limits):
6843         avoid infinite loop printing warning messages.
6844
6845 2000-07-05  Craig Lanning  <lanning@scra.org>
6846
6847         * Makefile.in.in: Add support for including the Windows resources
6848         when building with the cygwin and mingw targets.
6849
6850         * buffer.c: from Dan Holmsand, on Windows $PWD is most likely either
6851         not set or not correct.
6852         (directory_is_current_directory): Don't compile for WIN32_NATIVE.
6853         (init_initial_directory): Don't try to use $PWD on the
6854         WIN32_NATIVE target.
6855
6856         * s\cygwin32.h:
6857         [[Add -mwindows to eliminate console window.]] not required --ben
6858         (HAVE_NATIVE_SOUND): removed; now handled by configure.
6859         (MAIL_USE_POP): removed; now handled by configure.
6860
6861         * s\mingw32.h: [[Add -mwindows to eliminate console window.]] not in
6862         C_SWITCH_SYSTEM or it will affect lib-src progs. --ben
6863         (HAVE_NATIVE_SOUND): removed; now handled by configure.
6864         (MAIL_USE_POP): removed; now handled by configure.
6865         (ENCAPSULATE_STAT): from Dan Holmsand, added.
6866         (ENCAPSULATE_FSTAT): from Dan Holmsand, added.
6867         (DIRECTORY_SEP): from Dan Holmsand, use lisp variable instead of
6868         constant string.
6869         (HAVE_TIMEVAL): from Dan Holmsand, added; struct timeval is picked
6870         up from <winsock.h> via systime.h.
6871         (HAVE_GETPAGESIZE): from Dan Holmsand, added.
6872         (getpagesize): from Dan Holmsand, added.
6873         Added #endif which was left dangling by Ben's mega patch; added
6874         comment to help prevent this in the future.
6875
6876         * sysdll.c: added #include <windows.h> for WIN32_NATIVE case.
6877
6878 2000-07-05  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
6879
6880         * console-msw.h (struct mswindows_device): Removed unnecessary
6881         cached device geometry values.
6882         Added update_tick and an accessor macro.
6883         (Lisp_Devmode): Added lrecord declaration.
6884         (struct msprinter_device): Contain devmode as a Lisp object.
6885         Added mswindows_get_selected_frame_hwnd();
6886
6887         * console.h (struct console_methods): Indentation nitpicking.
6888
6889         * device-msw.c (mswindows_init_device): Do not initialize geometry
6890         cache. Initialize update tick.
6891         (mswindows_device_system_metrics): Ask the device for its geometry.
6892         (global_free_2_maybe):
6893         (devmode_to_hglobal):
6894         (handle_printer_changes):
6895         (ensure_not_printing):
6896         (print_dialog_worker):
6897         (Fmsprinter_print_setup_dialog):
6898         (Fmsprinter_print_dialog):
6899         (plist_get_margin):
6900         (plist_set_margin):
6901         (Fmsprinter_page_setup_dialog): Added functions.
6902         (sync_printer_with_devmode):
6903         (handle_devmode_changes):
6904         (Fmsprinter_get_settings):
6905         (Fmsprinter_select_settings):
6906         (Fmsprinter_apply_settings):
6907         (allocate_devmode):
6908         (Fmsprinter_settings_copy):
6909         (Fmsprinter_settings_despecialize):
6910         (print_devmode):
6911         (finalize_devmode):
6912         (equal_devmode):
6913         (hash_devmode): Added functions
6914         (syms_of_device_mswindows): Init devmode lrecord class.
6915
6916         * device.h: Added an exfun for find-device.
6917
6918         * event-msw.c (mswindows_wnd_proc): Do not update the cached
6919         geometry; although, recreate the device compatible DC.
6920
6921         * frame-msw.c (mswindows_get_selected_frame_hwnd): Added.
6922         (msprinter_init_frame_3):
6923         (msprinter_frame_property):
6924         (msprinter_internal_frame_property_p):
6925         (msprinter_frame_properties):
6926         (msprinter_set_frame_properties): Removed 'orientation and 'duplex
6927         print job properties (will move to device settings).
6928
6929         * lisp.h: Added symbols.
6930
6931         * general.c (syms_of_general): Declared them.
6932
6933         * hash.c (string_hash): Added.
6934
6935         * lrecord.h (lrecord_type): Added devmode lrecord type.
6936
6937 2000-07-02  Mike Sperber <mike@xemacs.org>
6938
6939         * s/freebsd.h (INTERRUPTIBLE_OPEN): open *is* interruptible on
6940         FreeBSD 4.0.
6941
6942 2000-06-07  MORIOKA Tomohiko  <tomo@etl.go.jp>
6943
6944         * doprnt.c (emacs_doprnt_1): Fix problem with %0XXd for a negative
6945         integer.
6946
6947 2000-06-07  MORIOKA Tomohiko  <tomo@urania.m17n.org>
6948
6949         * data.c (Fstring_to_number): Don't recognize floating point if
6950         base is not 10.
6951
6952 2000-06-22  Martin Buchholz  <martin@xemacs.org>
6953
6954         * glyphs-widget.c (tab_control_query_geometry):
6955         (widget_query_geometry):
6956         (button_query_geometry):
6957         * glyphs.c (text_query_geometry):
6958         Enforce type correctness.
6959
6960 2000-06-18  Martin Buchholz  <martin@xemacs.org>
6961
6962         * s/decosf4-0.h (_etext): Use portable _etext instead of etext.
6963         * s/decosf4-0.h (_edata): Use portable _edata instead of edata.
6964
6965 2000-06-17  Martin Buchholz  <martin@xemacs.org>
6966
6967         * s/decosf4-0.h: Never #include "/usr/include/FOO.h" because this
6968         conflicts with gcc's fixincluded version of FOO.h.
6969
6970         * glyphs.h (image_instance_geometry): Remove trailing `,'
6971
6972 2000-06-08  Mike Alexander  <mta@arbortext.com>
6973
6974         (MAX_SHOVE_BUFFER_SIZE): Change to 512 to match stream buffer size
6975         (shove_thread): Don't write the same output twice
6976         (make_ntpipe_output_stream): Increase priority of shove thread
6977         (ntpipe_shove_writer): Call SwitchToThread to give shove thread a
6978         chance to run
6979         (ntpipe_shove_closer): Don't delete the pipe until we're done with
6980         it.
6981
6982 2000-06-12  Ben Wing  <ben@xemacs.org>
6983
6984         * s\mingw32.h (sigset):
6985         * s\windowsnt.h (sigset):
6986         rename msw_ to mswindows_ for consistency with general convention.
6987
6988 2000-06-12  Ben Wing  <ben@xemacs.org>
6989
6990         * console-msw.c:
6991         * console-msw.c (mswindows_get_console_hwnd):
6992         * console-msw.c (mswindows_ensure_console_allocated):
6993         * console-msw.c (mswindows_hide_console):
6994         * console-msw.c (mswindows_show_console):
6995         * console-msw.c (mswindows_ensure_console_buffered):
6996         * console-msw.c (mswindows_output_console_string):
6997         * console-msw.c (mswindows_windows9x_p):
6998         * console-msw.h:
6999         * device-msw.c (mswindows_get_workspace_coords):
7000         * device-msw.c (mswindows_device_system_metrics):
7001         * dialog-msw.c (mswindows_popup_dialog_box):
7002         * event-msw.c (mswindows_wnd_proc):
7003         * frame-msw.c (mswindows_size_frame_internal):
7004         * menubar-msw.c (mswindows_translate_menu_or_dialog_item):
7005         * menubar-msw.c (displayable_menu_item):
7006         * menubar-msw.c (mswindows_char_is_accelerator):
7007         * nt.c:
7008         * nt.c (mswindows_sigset):
7009         * nt.c (mswindows_sigrelse):
7010         * nt.c (mswindows_sigpause):
7011         * nt.c (mswindows_raise):
7012         * nt.c (timer_proc):
7013         * ntproc.c:
7014         * ntproc.c (find_child_console):
7015         * ntproc.c (sys_kill):
7016         * print.c:
7017         * print.c (std_handle_out_external):
7018         * process-nt.c (find_child_console):
7019         * process-nt.c (send_signal_the_95_way):
7020         * process-nt.c (ensure_console_window_exists):
7021         * process-nt.c (nt_create_process):
7022         * syssignal.h:
7023         rename msw_ to mswindows_ for consistency with general convention.
7024
7025         * emacs.c:
7026         * dumper.c:
7027         include nt.h, not syswindows.h.
7028
7029         * nt.c (mswindows_fstat):
7030         * nt.c (mswindows_stat):
7031         prefix mswindows_ instead of attempting to directly override the
7032         library functions.  fix declarations.
7033
7034         * nt.h:
7035         include syswindows.h.  move some sysdep.h stuff here.
7036
7037         * ntheap.h:
7038         include syswindows.h, not <windows.h>.
7039
7040         * ntplay.c:
7041         clean up headers.
7042
7043         * sysdep.c:
7044         clean up headers.
7045
7046         * sysdep.c (sys_fstat):
7047         * sysdep.c (sys_stat):
7048         call mswindows versions when appropriate.
7049
7050         * sysdep.h:
7051         move mswin decls to nt.h.
7052
7053         * syswindows.h:
7054         add long comment describing appropriate use of the various windows
7055         headers.
7056
7057 2000-06-11  Ben Wing  <ben@xemacs.org>
7058
7059         * device-x.c: Correct doc string for sixth arg of x-get-resource.
7060
7061 2000-06-10  Ben Wing  <ben@xemacs.org>
7062
7063         * Makefile.in.in (release):
7064         Correction to make sure xemacs.exe always dumped when correct.
7065
7066         * alloca.c:
7067         * balloon_help.c:
7068         [[[[3]]]]: Conditionalize on actual problem, not WINDOWSNT.
7069
7070         * buffer.c (set_buffer_internal):
7071         [[[[2]]]]: Remove HAVE_FEP code.
7072
7073         * buffer.c (init_initial_directory):
7074         [3].
7075
7076         * bytecode.c:
7077         [[[[4]]]]: limits.h standardly included in lisp.h; remove from
7078         individual files.
7079
7080         * callproc.c:
7081         * callproc.c (call_process_cleanup):
7082         * callproc.c (Fold_call_process_internal):
7083         * callproc.c (child_setup):
7084         * callproc.c (getenv_internal):
7085         * callproc.c (init_callproc):
7086         * callproc.c (vars_of_callproc):
7087         [[[[1]]]]: WINDOWSNT -> WIN32_NATIVE.
7088         __CYGWIN32__ -> CYGWIN.
7089         DOS_NT -> WIN32_NATIVE.
7090         Remove MSDOS support/references, converting to WIN32_NATIVE
7091           where correct.
7092         __MINGW32__ -> MINGW.
7093         Fix windows.h includes.
7094         Remove bogus HAVE_NTGUI.
7095
7096         * config.h.in:
7097         [2].
7098
7099         * console-msw.c:
7100         mswindows_message_outputted added for use in allowing startup
7101         errors on the console to be seen.
7102
7103         * console-msw.c (msw_ensure_console_allocated):
7104         * console-msw.c (msw_output_console_string):
7105         * console-msw.c (DHEADER):
7106         * console-msw.c (DOPAQUE_DATA):
7107         * console-msw.c (DEVENT):
7108         * console-msw.c (DCONS):
7109         * console-msw.c (DCONSCDR):
7110         * console-msw.c (DSTRING):
7111         * console-msw.c (DVECTOR):
7112         * console-msw.c (DSYMBOL):
7113         * console-msw.c (DSYMNAME):
7114         Fix warnings.
7115
7116         * console-stream.c (stream_init_console):
7117         Fix text/binary problems.
7118
7119         * device-msw.c:
7120         * device-msw.c (mswindows_finish_init_device):
7121         * device-msw.c (mswindows_delete_device):
7122         [1].
7123
7124         * device.c (handle_asynch_device_change):
7125         [3].
7126
7127         * dgif_lib.c:
7128         * dgif_lib.c (DGifOpenFileName):
7129         * dgif_lib.c (DGifOpenFileHandle):
7130         * dgif_lib.c (DGifGetLine):
7131         * dgif_lib.c (DGifGetPixel):
7132         Added config.h/lisp.h, fix up includes.
7133         [1].
7134
7135         * dired-msw.c:
7136         [4].
7137
7138         * dired.c:
7139         * dired.c (file_name_completion):
7140         * dired.c (Ffile_attributes):
7141         * dired.c (syms_of_dired):
7142         [1].
7143
7144         * dumper.c:
7145         * dumper.c (pdump_file_unmap):
7146         * dumper.c (pdump_load):
7147         [1].
7148
7149         * editfns.c:
7150         * editfns.c (Ftemp_directory):
7151         * editfns.c (user_login_name):
7152         * editfns.c (Fuser_real_login_name):
7153         * editfns.c (get_home_directory):
7154         [1].
7155
7156         * elhash.c (finish_marking_weak_hash_tables):
7157         [[[[5]]]]: Fix GCC warnings.
7158
7159         * emacs.c:
7160         * emacs.c (mswindows_handle_hardware_exceptions):
7161         * emacs.c (make_arg_list_1):
7162         * emacs.c (main_1):
7163         * emacs.c (Fkill_emacs):
7164         * emacs.c (Fdump_emacs):
7165         [1].
7166         Fix problems with nested crashes, add long comment.
7167
7168         * event-Xt.c (init_event_Xt_late):
7169         [1].
7170
7171         * event-msw.c:
7172         * event-msw.c (mswindows_dde_callback):
7173         * event-msw.c (mswindows_handle_sticky_modifiers):
7174         * event-msw.c (mswindows_wnd_proc):
7175         [1].
7176         [5].
7177
7178         * events.c (character_to_event):
7179         [1].
7180
7181         * fileio.c:
7182         * fileio.c (Ffile_name_directory):
7183         * fileio.c (Ffile_name_nondirectory):
7184         * fileio.c (directory_file_name):
7185         * fileio.c (Fexpand_file_name):
7186         * fileio.c (Fsubstitute_in_file_name):
7187         * fileio.c (Ffile_name_absolute_p):
7188         * fileio.c (check_executable):
7189         * fileio.c (Ffile_readable_p):
7190         * fileio.c (Ffile_accessible_directory_p):
7191         * fileio.c (Ffile_modes):
7192         * fileio.c (Funix_sync):
7193         * fileio.c (vars_of_fileio):
7194         [1]. [4].
7195
7196         [[[[7]]]]: Move CORRECT_DIR_SEPS to s\windowsnt.h.
7197
7198         Expand getdefdir defn.
7199         Fix bogus rename() comment.
7200
7201         [[[[6]]]]: Fix Windows includes w.r.t. removed nt\inc.  Attempt
7202         to use standard XEmacs include files, e.g. sysfile.h, rather
7203         than system-specific includes.
7204
7205         * fns.c:
7206         * fns.c (Fsubseq):
7207         [5]. [6].
7208
7209         * frame.c (vars_of_frame):
7210         [1].
7211
7212         * getloadavg.c:
7213         * getloadavg.c (getloadavg):
7214         [1]. [6].
7215         #ifdef XEMACS not defined on Cygwin.  Remove this; no need for it.
7216         (We don't use it elsewhere in the code; just add a comment.)
7217
7218         * gif_io.c:
7219         [6].
7220         Add config.h.
7221
7222         * glyphs-msw.c:
7223         * glyphs-msw.c (mswindows_resource_instantiate):
7224         [1].
7225
7226         * glyphs-x.c (x_native_layout_instantiate):
7227         [5].
7228
7229         * gui-msw.c (Fmswindows_shell_execute):
7230         [1].
7231
7232         * insdel.c:
7233         [4].
7234
7235         * lisp.h:
7236         [4]. [5].
7237
7238         * lread.c (locate_file_in_directory_mapper):
7239         [1].
7240
7241         * lstream.c:
7242         [4].
7243
7244         * mem-limits.h:
7245         * mem-limits.h (get_lim_data):
7246         [1].
7247
7248         * menubar-msw.c:
7249         [4].
7250
7251         * ndir.h:
7252         [1].
7253
7254         * nt.c:
7255         * nt.c (getwd):
7256         * nt.c (closedir):
7257         * nt.c (rva_to_section):
7258         * nt.c (mswindows_executable_type):
7259         [1]. [6].
7260         Fix closedir() defn.
7261
7262         * nt.h:
7263         [[[[8]]]]: *_OK defs moved to sysfile.h.
7264
7265         * ntproc.c:
7266         [6]. [7].
7267
7268         * objects-x.c:
7269         [4].
7270
7271         * print.c:
7272         * print.c (std_handle_out_external):
7273         [1]. [4].
7274
7275         * process-nt.c:
7276         * process-nt.c (nt_create_process):
7277         [6].
7278         try to fix process quoting somewhat.
7279
7280         * process-unix.c (unix_create_process):
7281         [1].
7282
7283         * process.c:
7284         * process.c (vars_of_process):
7285         Add Vnull_device.
7286
7287         * process.h:
7288         [1].
7289
7290         * realpath.c:
7291         * realpath.c (xrealpath):
7292         [1].
7293
7294         * redisplay-tty.c (init_tty_for_redisplay):
7295         [3].
7296
7297         * redisplay.c:
7298         [4]. [6].
7299
7300         * scrollbar-msw.c:
7301         [4].
7302
7303         * sheap.c:
7304         * sheap.c (more_static_core):
7305         * sheap.c (report_sheap_usage):
7306         [5]. [6].
7307
7308         * signal.c:
7309         * signal.c (alarm_signal):
7310         [1]. [6].
7311
7312         * sound.c:
7313         [6].
7314
7315         * strftime.c:
7316         * strftime.c (zone_name):
7317         [1]. [5].
7318
7319         * symsinit.h (init_sunpro):
7320         [1].
7321
7322         * syscommctrl.h:
7323         commctrl.h not in Cygwin b20.1.
7324
7325         * sysdep.c:
7326         * sysdep.c (endif):
7327         * sysdep.c (sys_subshell):
7328         * sysdep.c (init_baud_rate):
7329         * sysdep.c (emacs_get_tty):
7330         * sysdep.c (emacs_set_tty):
7331         * sysdep.c (tty_init_sys_modes_on_device):
7332         * sysdep.c (init_system_name):
7333         * sysdep.c (sys_open):
7334         * sysdep.c (interruptible_open):
7335         * sysdep.c (sys_fopen):
7336         * sysdep.c (sys_mkdir):
7337         * sysdep.c (sys_rename):
7338         * sysdep.c (get_process_times_1):
7339         [1]. [6].
7340
7341         * sysdep.h:
7342         [1].
7343
7344         * sysdir.h:
7345         * sysdir.h (DIRENTRY_NONEMPTY):
7346         [1]. [6].
7347
7348         * sysdll.c (dll_init):
7349         * sysdll.h:
7350         [1].
7351
7352         * sysfile.h:
7353         [1]. [6]. [8].
7354         added text/binary defs.
7355
7356         * sysfloat.h:
7357         [1].
7358
7359         * sysproc.h:
7360         * sysproc.h (EDESTADDRREQ):
7361         * sysproc.h (poll_fds_for_input):
7362         [1]. [6].
7363
7364         * syspwd.h:
7365         [6].
7366
7367         * syssignal.h:
7368         [1].
7369
7370         * systime.h:
7371         [1]. [6].
7372
7373         * systty.h:
7374         [1].
7375
7376         * syswindows.h:
7377         [1].
7378         Always define WIN32_LEAN_AND_MEAN.
7379
7380         * unexcw.c (unexec):
7381         [5].
7382
7383         * unexec.c:
7384         * unexec.c (copy_text_and_data):
7385         * unexec.c (adjust_lnnoptrs):
7386         [1].
7387
7388         * unexnt.c:
7389         * unexnt.c (_start):
7390         [1].
7391
7392 2000-06-07  Ben Wing  <ben@xemacs.org>
7393
7394         * mule-mcpath.c, mule-mcpath.h: Removed.  Old, crufty code that
7395         was used only as a model.  We've long since extracted any useful
7396         logic or code out of this. (I just did an exhaustive search.)
7397
7398         * s\msdos.h: Removed.
7399
7400         * s\windows95.h: Removed.
7401
7402 2000-06-10  Ben Wing  <ben@xemacs.org>
7403
7404         * s\cygwin32.h:
7405         [1]. [5].
7406         Don't use extern with fun defs.
7407
7408         * s\mingw32.h:
7409         [1]. [7].
7410         Remove nt\inc include.
7411         Remove getdisk, getdefdir. (The former is unused, the latter
7412         expanded in fileio.h.)
7413
7414         * s\windowsnt.h:
7415         * s\windowsnt.h (WIN32_NATIVE):
7416         * s\windowsnt.h (HAVE_STRCASECMP):
7417         [1]. [7].
7418         Add long comment about preprocessor changes.
7419         Remove getdisk, getdefdir. (The former is unused, the latter
7420         expanded in fileio.h.)
7421
7422 2000-06-10  Ben Wing  <ben@xemacs.org>
7423
7424         * m\arm.h:
7425         * m\delta.h:
7426         * m\intel386.h:
7427         * m\sequent.h:
7428         * m\template.h:
7429         * m\windowsnt.h:
7430         [1].
7431         Remove bogus/unused NO_SOCK_SIGIO.
7432
7433 2000-06-08  Hrvoje Niksic  <hniksic@iskon.hr>
7434
7435         * lisp.h (set_string_char): Call set_string_byte with a Bufbyte,
7436         not an Emchar.
7437
7438 2000-06-04  Mike Sperber <mike@xemacs.org>
7439
7440         * casetab.c (set_case_table): For `set-standard-case-table',
7441         actually deposit the new case tables where the rest of XEmacs can
7442         see them.
7443
7444 2000-06-05  Yoshiki Hayashi <yoshiki@xemacs.org>
7445
7446         * data.c (Faset): Don't cast XCHAR() to unsigned char.
7447
7448 2000-06-05  Ben Wing  <ben@xemacs.org>
7449
7450         * callproc.c (child_setup): Don't do close_load_descs() under
7451         MS Windows.  Put in a comment explaining why.
7452
7453 2000-05-28  Adrian Aichner  <aichner@ecf.teradyne.com>
7454
7455         * process-nt.c: Reverting patch "Fixing nt_create_process for MKS
7456         Toolkit shell" which breaks `kill-compilation' on Windows NT
7457         native, retaining STDERR handling improvements.
7458
7459 2000-06-01  Andreas Jaeger  <aj@suse.de>
7460
7461         * s/s390.h: Support for S390, based on a patch by Martin
7462         Schwidefsky <schwidefsky@de.ibm.com>.
7463
7464 2000-05-30  Andy Piper  <andy@xemacs.org>
7465
7466         * window.c (allocate_window):
7467         (make_dummy_parent):
7468         (Fset_window_configuration): use new hashtable type.
7469
7470         * glyphs.h (IMAGE_UNSPECIFIED_GEOMETRY):
7471         (struct image_instantiator_methods):
7472         (struct Lisp_Image_Instance): make instance geometry signed.
7473
7474         * glyphs.c (instantiate_image_instantiator):
7475         (image_instance_query_geometry):
7476         (image_instance_layout):
7477         (image_instance_layout):
7478         (query_string_geometry):
7479         (text_query_geometry):
7480         (image_instantiate):
7481         (image_instantiate):
7482         (cache_subwindow_instance_in_frame_maybe):
7483         (subwindow_query_geometry): make instance geometry signed.
7484
7485         * glyphs-widget.c (widget_query_geometry):
7486         (widget_layout):
7487         (button_query_geometry):
7488         (tree_view_query_geometry):
7489         (tab_control_query_geometry):
7490         (layout_query_geometry):
7491         (layout_layout):
7492         (native_layout_layout): make instance geometry signed.
7493
7494 2000-05-29  Olivier Galibert  <galibert@pobox.com>
7495
7496         * lisp.h: Add Qfull_assoc symbol and WEAK_LIST_FULL_ASSOC
7497         constant.
7498
7499         * general.c (syms_of_general): Add Qfull_assoc symbol.
7500
7501         * data.c (finish_marking_weak_lists): Mark full-assoc lists
7502         correctly.
7503         (decode_weak_list_type): Decode full-assoc type.
7504         (encode_weak_list_type): Encode full-assoc type.
7505         (Fmake_weak_list): Update doc string.
7506
7507 2000-05-30  Andy Piper  <andy@xemacs.org>
7508
7509         * elhash.h (hash_table_weakness): new KEY_VALUE weak hashtable.
7510
7511         * elhash.c (print_hash_table): new KEY_VALUE weak hashtable.
7512         (decode_hash_table_weakness): ditto.
7513         (Fhash_table_weakness): ditto.
7514         (Fhash_table_type): ditto.
7515         (finish_marking_weak_hash_tables): ditto.
7516         (hash_table_weakness_validate): ditto.
7517         (syms_of_elhash): ditto.
7518
7519 2000-05-28  Martin Buchholz <martin@xemacs.org>
7520
7521         * XEmacs 21.2.34 is released.
7522
7523 2000-05-22  Jan Vroonhof  <vroonhof@math.ethz.ch>
7524
7525         * redisplay.c (VERTICAL_CLIP): No longer reset when updating line
7526         start cache.
7527         (updating_line_start_cache): Gone.
7528         (regenerate_window): Replace resetting of VERTICAL_CLIP by
7529         generic code to force a minimum of 1 line laid out in the
7530         CMOTION_DISP case.
7531
7532 2000-05-22  Jan Vroonhof  <vroonhof@math.ethz.ch>
7533
7534         * glyphs.c (instantiate_image_instantiator): Check for initialized
7535         height & width no longer special cases IMAGE_NOTHING.
7536         (nothing_instantiate): Set height and width of instance.
7537
7538 2000-05-24  Yoshiki Hayashi  <yoshiki@xemacs.org>
7539
7540         * unexelf.c (unexec): Search for ".data" section.
7541         Initialize new_data2_offset from old_data_index.
7542         Remove redundant check for ElfW.
7543
7544 2000-05-23  Andy Piper  <andy@xemacs.org>
7545
7546         * glyphs.c (get_image_instantiator_governing_domain): allow more
7547         specific domains as the governing domain rather than expecting an
7548         exact match. This fixes problems with layouts.
7549
7550 2000-05-22  Andy Piper  <andy@xemacs.org>
7551
7552         * redisplay-output.c (compare_runes): check for non-images
7553
7554         * glyphs.c (set_glyph_dirty_p): ditto.
7555         (update_glyph_cachel_data): ditto.
7556
7557         * glyphs-widget.c (layout_post_instantiate): ditto.
7558         (layout_post_instantiate): ditto.
7559
7560         * event-msw.c (mswindows_wnd_proc): warning removal.
7561
7562 2000-05-12  Craig Lanning  <CraigL@DyCon.com>
7563
7564         * s\mingw32.h: Added #undef for CLASH_DETECTION.
7565
7566         * syswindows.h: Moved PBS_SMOOTH definition to syscommctrl.h.
7567
7568         * syscommctrl.h (PBS_SMOOTH): Moved from syswindows.h.
7569
7570         * nt.c (rva_to_section): mingw32 needs rva_to_section.
7571         (mswindows_executable_type): mingw32 now has enough headers for
7572         this to work.
7573
7574 2000-05-20  Andy Piper  <andy@xemacs.org>
7575
7576         * console-msw.c (mswindows_output_last_error): ; -> ,
7577
7578 2000-05-12  Andy Piper  <andy@xemacs.org>
7579
7580         * console-msw.c (FROB): compare ints with ints.
7581
7582 2000-05-11  Andy Piper  <andy@xemacs.org>
7583
7584         * glyphs-x.c (x_finalize_image_instance): make minimal build
7585         happy.
7586
7587 2000-05-20  Ben Wing  <ben@xemacs.org>
7588
7589         * event-Xt.c:
7590         * event-Xt.c (vars_of_event_Xt):
7591         move modifier-keys-are-sticky to event-stream.c.
7592
7593         * event-msw.c:
7594         * event-msw.c (mswindows_enqueue_mouse_button_event):
7595         * event-msw.c (key_needs_default_processing_p):
7596         * event-msw.c (XEMSW_LCONTROL):
7597         * event-msw.c (mswindows_handle_sticky_modifiers):
7598         * event-msw.c (FROB):
7599         * event-msw.c (clear_sticky_modifiers):
7600         * event-msw.c (output_modifier_keyboard_state):
7601         * event-msw.c (output_alt_keyboard_state):
7602         * event-msw.c (mswindows_wnd_proc):
7603         * event-msw.c (mswindows_modifier_state):
7604         * event-msw.c (emacs_mswindows_handle_magic_event):
7605         implement sticky modifiers.
7606
7607         * event-stream.c:
7608         * event-stream.c (vars_of_event_stream):
7609         move modifier-keys-are-sticky here.
7610
7611         * lisp.h:
7612         add CHECK_FUNCTION.
7613
7614         * rangetab.c:
7615         implement map-range-table.
7616
7617
7618 2000-05-17  Yoshiki Hayashi  <yoshiki@xemacs.org>
7619
7620         * redisplay-tty.c (reset_tty_modes):
7621         (tty_redisplay_shutdown): Adjust argument type to
7622         tty_frame_output_end.
7623
7624 2000-05-11  Yoshiki Hayashi  <yoshiki@xemacs.org>
7625
7626         * eval.c (Fbacktrace): Don't output a line with only right
7627         parenthesis.
7628
7629 2000-05-17  Kenji Itoh  <keit@tpj.co.jp>
7630
7631         * postgresql.c (Fpq_connect_poll): Replace `PS' with `polling_status'.
7632         (Fpq_reset_poll): Ditto.
7633
7634 2000-05-16  Katsumi Yamaoka  <yamaoka@jpl.org>
7635
7636         * redisplay-tty.c: Replace tty_output_end with tty_frame_output_end.
7637
7638 2000-05-16  Ben Wing  <ben@xemacs.org>
7639
7640         * buffer.c:
7641         * buffer.c (dfc_convert_to/from_internal_format):
7642         * buffer.c (reinit_vars_of_buffer):
7643         Fix conversion functions to allow reentrancy.
7644
7645         * console-msw.c:
7646         * console-msw.c (mswindows_output_last_error):
7647         New fun, generally useful -- output a human-readable
7648         version of GetLastError() on the console.
7649
7650         * console-msw.h:
7651         * console-msw.h (struct mswindows_frame):
7652         Changes for DeferWindowPos.  Declare mswindows_output_last_error().
7653
7654         * console-stream.c (stream_output_begin):
7655         * console-stream.c (stream_output_end):
7656         * console-stream.c (stream_output_vertical_divider):
7657         * console-stream.c (stream_clear_region):
7658         * console-stream.c (stream_flash):
7659         * console-stream.c (console_type_create_stream):
7660         Delete blank stream methods, not needed.
7661
7662         * console.h (struct console_methods):
7663         Split begin/end methods into window and frame.
7664
7665         * event-msw.c:
7666         * event-msw.c (mswindows_handle_paint):
7667         * event-msw.c (output_alt_keyboard_state):
7668         * event-msw.c (mswindows_wnd_proc):
7669         * event-msw.c (vars_of_event_mswindows):
7670         Comment about problems with ignored-expose.
7671         Define mswindows-debug-events; not really implemented.
7672
7673         * frame-msw.c (mswindows_init_frame_1):
7674         random cleanups.
7675
7676         * glyphs-msw.c:
7677         * glyphs-msw.c (begin_defer_window_pos):
7678         * glyphs-msw.c (mswindows_unmap_subwindow):
7679         * glyphs-msw.c (mswindows_map_subwindow):
7680         * glyphs-msw.c (mswindows_resize_subwindow):
7681         Use DeferWindowPos to reduce flashing when mapping/unmapping.
7682
7683         * glyphs.c (make_image_instance_1):
7684         Fix crash.
7685
7686         * gutter.c (Fredisplay_gutter_area):
7687         Use new begin/end methods.
7688
7689         * lisp.h (Dynarr_new2):
7690         New creation fun.
7691
7692         * redisplay-msw.c:
7693         * redisplay-msw.c (mswindows_frame_output_begin):
7694         * redisplay-msw.c (mswindows_frame_output_end):
7695         * redisplay-msw.c (console_type_create_redisplay_mswindows):
7696         New begin/end methods -- handle DeferWindowPos.
7697
7698         * redisplay-output.c (redisplay_move_cursor):
7699         * redisplay-output.c (redraw_cursor_in_window):
7700         * redisplay-output.c (redisplay_update_line):
7701         * redisplay-output.c (redisplay_output_window):
7702         New begin/end methods.
7703
7704         * redisplay-tty.c:
7705         * redisplay-tty.c (tty_frame_output_begin):
7706         * redisplay-tty.c (tty_frame_output_end):
7707         * redisplay-tty.c (console_type_create_redisplay_tty):
7708         New begin/end methods.
7709
7710         * redisplay-x.c:
7711         * redisplay-x.c (x_window_output_begin):
7712         * redisplay-x.c (x_window_output_end):
7713         * redisplay-x.c (console_type_create_redisplay_x):
7714         New begin/end methods.
7715
7716         * redisplay.c (redisplay_frame):
7717         * redisplay.c (Fredisplay_echo_area):
7718         New begin/end methods.
7719         use MAYBE_DEVMETH for clear_frame; it may not exist.
7720
7721         * window.h (WINDOW_XFRAME):
7722         WINDOW_XFOO macros -- get locale and decode struct pointer.
7723
7724
7725 2000-05-12  Ben Wing  <ben@xemacs.org>
7726
7727         * emacs.c:
7728         * emacs.c (ensure_no_quitting_from_now_on):
7729         * emacs.c (fatal_error_signal):
7730         * emacs.c (mswindows_handle_hardware_exceptions):
7731         * emacs.c (main):
7732         * emacs.c (Fkill_emacs):
7733         * emacs.c (shut_down_emacs):
7734         * emacs.c (assert_failed):
7735         various improvements in fatal error handling.
7736
7737         * eval.c:
7738         move preparing_for_armageddon to emacs.c.
7739
7740         * lisp.h:
7741         declare fatal_error_in_progress.
7742
7743         * print.c:
7744         * print.c (std_handle_out_external):
7745         * print.c (std_handle_out_va):
7746         * print.c (stderr_out):
7747         * print.c (stdout_out):
7748         use console under mswin when no standard output.
7749         don't do code conversion during fatal error.
7750
7751         * scrollbar.c (Fscrollbar_page_up):
7752         * scrollbar.c (Fscrollbar_page_down):
7753         fix missing else.  reindent.
7754
7755 2000-05-11  Jan Vroonhof  <vroonhof@math.ethz.ch>
7756
7757         Emergency fix.
7758
7759         * glyphs.h (GLYPH_CACHEL_DESCENT):
7760         (GLYPH_CACHEL_DESCENT):
7761         (GLYPH_CACHEL_DESCENT):
7762         * glyphs.h (GLYPH_CACHEL_ASCENT): Match parameters to variables
7763         used in case these are inline functions.
7764         Use more absurd values to error check.
7765
7766         include window.h for error check functions.
7767
7768 2000-05-11  Ben Wing  <ben@xemacs.org>
7769
7770         * cmdloop.c (Freally_early_error_handler):
7771         Display message box under windows; otherwise, message will disappear
7772         before it can be viewed.
7773
7774         * console-msw.c:
7775         * console-msw.c (Fmswindows_message_box):
7776         * console-msw.c (FROB):
7777         * console-msw.c (syms_of_console_mswindows):
7778         Define new fun `mswindows-message-box'.
7779         #### I will merge this into `popup-dialog-box'; just give me
7780         a bit of time.
7781
7782         * general.c:
7783         * general.c (syms_of_general):
7784         Some new symbols used in `mswindows-message-box'.
7785
7786         * glyphs.c:
7787         * glyphs.c (Fset_image_instance_property):
7788         put warning in this fun.
7789
7790         * glyphs.h:
7791         * glyphs.h (GLYPH_CACHEL_WIDTH):
7792         * glyphs.h (GLYPH_CACHEL_ASCENT):
7793         * glyphs.h (GLYPH_CACHEL):
7794         * glyphs.h (GLYPH_CACHEL_GLYPH):
7795         define error-checking versions to try to catch a bug i've seen --
7796         redisplay gets in an infinite loop because the glyph width of the
7797         continuation glyph is 65535.
7798
7799         * lisp.h:
7800         Extern message-box stuff.
7801
7802         * window.c (allocate_window):
7803         * window.c (make_dummy_parent):
7804         * window.c (Fset_window_configuration):
7805         Use EQUAL not EQ for subwindow caches to make them work a bit
7806         better. (Something is still very broken.)
7807
7808
7809 2000-05-11  Yoshiki Hayashi  <yoshiki@xemacs.org>
7810
7811         * glyphs.c (image_instantiate): Suppress gcc warnings.
7812         (Fmake_image_instance): Fix doc string.
7813         * specifier.c (Fmake_specifier): Ditto.
7814
7815 2000-05-02  Yoshiki Hayashi  <yoshiki@xemacs.org>
7816
7817         * paths.h.in (PATH_LOCK): Removed.
7818         * config.h.in (LOCKDIR_USER_DEFINED): Removed.
7819         * emacs.c (complex_vars_of_emacs): Remove configure-lock-directory.
7820
7821 2000-05-08  Yoshiki Hayashi  <yoshiki@xemacs.org>
7822
7823         * fns.c (Ffeaturep): Update e-mail address in doc-string.
7824         Document (featurep '(and xemacs 21.02)).
7825
7826 2000-05-09  Ben Wing  <ben@xemacs.org>
7827
7828         * buffer.c (complex_vars_of_buffer):
7829         update modeline-format doc.
7830
7831         * device.h:
7832         comment about how DFW_DEVICE should be merged with DOMAIN_DEVICE.
7833
7834         * emacs.c:
7835         timeline of all released versions of Emacs, for use in creating
7836         authorship comments and in synching up.
7837
7838         * glyphs-widget.c (image_instantiator_buttons):
7839         * glyphs-widget.c (image_instantiator_edit_fields):
7840         * glyphs-widget.c (image_instantiator_combo_box):
7841         * glyphs-widget.c (image_instantiator_scrollbar):
7842         * glyphs-widget.c (image_instantiator_progress_guage):
7843         * glyphs-widget.c (image_instantiator_tree_view):
7844         * glyphs-widget.c (image_instantiator_tab_control):
7845         * glyphs-widget.c (image_instantiator_labels):
7846         * glyphs-widget.c (image_instantiator_layout):
7847         * glyphs-widget.c (image_instantiator_native_layout):
7848         rename decode_domain method to governing_domain.
7849
7850         * glyphs.c:
7851         * glyphs.c (Fvalid_image_instantiator_format_p): doc update.
7852         * glyphs.c (add_entry_to_device_ii_format_list):
7853         make sure we don't put an entry more than once into the list.
7854         * glyphs.c (check_instance_cache_mapper):
7855         *************************************************************
7856         allow for nil.  THIS SHOULD FIX A REAL CRASH THAT MANY PEOPLE
7857         HAVE BEEN GETTING.
7858         *************************************************************
7859         * glyphs.c (get_image_instantiator_governing_domain):
7860         clean up, expand on new concept of governing domain.
7861         * glyphs.c (instantiate_image_instantiator):
7862         * glyphs.c (allocate_image_instance):
7863         use governing_domain instead of cache_domain in naming.
7864         * glyphs.c (Fvalid_image_instance_type_p): fix docs.
7865         * glyphs.c (make_image_instance_1):
7866         * glyphs.c (Fmake_image_instance):
7867         allow for any domain (not just device), and process the
7868         governing domain correctly.  very big doc fix.
7869         * glyphs.c (Fimage_instance_domain):
7870         new primitive, to retrieve the governing domain of an image instance.
7871         * glyphs.c (image_instantiate):
7872         use new governing_domain stuff.  this fixes a crash you could get
7873         by instantiating certain widget glyphs in frame locales. (should
7874         signal an error instead of crashing.)
7875         * glyphs.c (Fimage_specifier_p): move doc to make-image-specifier.
7876         * glyphs.c (Fglyphp): clean up doc.
7877         * glyphs.c (subwindow_governing_domain): renamed from *_decode_domain.
7878         * glyphs.c (syms_of_glyphs):
7879         declare Fimage_instance_domain, remove unused Qlayout_image_instance_p.
7880         * glyphs.c (image_instantiator_format_create): add some comments about
7881         bogus code.
7882         * glyphs.c (specifier_vars_of_glyphs): totally rewrite the doc string
7883         for current-display-table. (Apparently Hrjove implemented in 1998 a
7884         design I wrote up in 1996, but didn't update the doc string.)
7885
7886         * glyphs.h: clean up a doc string.
7887         * glyphs.h (governing_domain):
7888         * glyphs.h (struct image_instantiator_methods):
7889         changes for governing_domain stuff.
7890
7891         * gutter.c:
7892         * gutter.c (Fgutter_specifier_p):
7893         * gutter.c (Fgutter_size_specifier_p):
7894         * gutter.c (Fgutter_visible_specifier_p):
7895         * objects.c:
7896         * objects.c (Fcolor_specifier_p):
7897         * objects.c (Ffont_specifier_p):
7898         * objects.c (Fface_boolean_specifier_p):
7899         doc strings moved to make-*-specifier.
7900
7901         * redisplay.c (add_disp_table_entry_runes_1):
7902         * redisplay.c (generate_fstring_runes):
7903         * redisplay.c (screen):
7904         add random comments and doc strings.
7905
7906         * specifier.c:
7907         * specifier.c (Fmake_specifier):
7908         major overhaul of this doc string.
7909
7910         * specifier.c (Fvalid_specifier_domain_p):
7911         comment about the bogosity of image instances being domains.
7912         * specifier.c (decode_domain):
7913         now non-static, used in glyphs.c.
7914         * specifier.c (specifier_instance):
7915         comment about the bogosity of image instances being domains.
7916         * specifier.c (Fgeneric_specifier_p):
7917         move doc string to make-generic-specifier.
7918         * specifier.c (VALID_SINGLE_DISPTABLE_INSTANTIATOR_P):
7919         rebackslashify.
7920
7921         * specifier.h:
7922         * specifier.h (DOMAIN_FRAME):
7923         * specifier.h (DOMAIN_LIVE_P):
7924         * specifier.h (DOMAIN_XDEVICE):
7925         rebackslashify.
7926         add comments about problems with these macros.
7927         prototype for decode_domain.
7928
7929         * toolbar.c:
7930         * toolbar.c (Ftoolbar_specifier_p):
7931         move doc string to `make-toolbar-specifier'.
7932
7933         * window.c (window_unmap_subwindows_cache_mapper):
7934         *************************************************************
7935         allow for nil.  THIS SHOULD FIX A REAL CRASH THAT MANY PEOPLE
7936         HAVE BEEN GETTING.
7937         *************************************************************
7938
7939 2000-05-09  Andy Piper  <andy@xemacs.org>
7940
7941         * glyphs.h: declare reset_frame_subwindow_instance_cache.
7942
7943         * window.c (Fset_window_configuration): reset the frame subwindow
7944         cache and re-initialize the window subwindow caches.
7945
7946         * glyphs.c (reset_frame_subwindow_instance_cache): new function.
7947
7948 2000-05-09  Ben Wing  <ben@xemacs.org>
7949
7950         * ntheap.c (recreate_heap): Changed unknown (VC6 only?) SIZE_T to
7951         DWORD.
7952
7953 2000-04-26  Mike Woolley  <mike@bulsara.com>
7954
7955         * ntheap.c: Changed recreate_heap to limit the amount reserved
7956         for the heap to that which is actually available. Also now
7957         displays a message box (with some dignostics) in the event that
7958         it still can't start.
7959
7960 2000-05-07  Jan Vroonhof  <vroonhof@math.ethz.ch>
7961
7962         * callproc.c (Fold_call_process_internal): GCPRO path
7963
7964 2000-05-08  Jan Vroonhof  <jan@xemacs.org>
7965
7966         Patch by Bill Perry.
7967
7968         * scrollbar.c (Fscrollbar_page_up): Conditionalize on type of call
7969         back data instead of #ifdef.
7970         (Fscrollbar_page_down): ditto.
7971
7972 2000-05-07  Ben Wing  <ben@xemacs.org>
7973
7974         * buffer.h:
7975         Kludge for defining Qmswindows_tstr.
7976
7977         * nt.c:
7978         * nt.c (open_input_file):
7979         * nt.c (open_output_file):
7980         * nt.c (rva_to_section):
7981         * nt.c (mswindows_executable_type):
7982         Move all memory-mapped-file routines here (some were in unexnt.c,
7983         which is bad because they are used by process-nt.c, and unexnt
7984         won't be around when portable dumping).  Synched the above routines
7985         with FSF 20.6.
7986
7987         * nt.h:
7988         Removed ifdef'd out bogus code.
7989         Fixed some prototypes.
7990
7991         * nt.h (file_data):
7992         * nt.h (OFFSET_TO_RVA):
7993         * nt.h (RVA_TO_OFFSET):
7994         * nt.h (RVA_TO_PTR):
7995         Moved the memory-mapped-file structures, macros and prototypes
7996         here, to parallel nt.c.  ntheap.h should really be removed
7997         entirely, and it's a non-portable-dumper specific file.
7998
7999         * ntheap.h (round_to_next):
8000         Moved the memory-mapped-file structures, macros and prototypes
8001         to nt.h.
8002
8003         * ntproc.c (compare_env):
8004         Moved rva_to_section and mswindows_executable_type to nt.c.
8005         Moved compare_env to process-nt.c.
8006         ntproc.c will die, one day.
8007
8008         * ntproc.c (sys_spawnve):
8009         Account for win32_ -> mswindows_.
8010
8011         * process-nt.c:
8012         * process-nt.c (struct nt_process_data):
8013         * process-nt.c (ensure_console_window_exists):
8014         * process-nt.c (compare_env):
8015         * process-nt.c (nt_create_process):
8016         * process-nt.c (nt_kill_process_by_pid):
8017         * process-nt.c (syms_of_process_nt):
8018         * process-nt.c (vars_of_process_nt):
8019         Introduce variable `mswindows-quote-process-args', from FSF 20.6.
8020         Copy argument quoting code from FSF 20.6 (with appropriate Mule-ization
8021         changes).  Eliminate our old `nt-quote-process-args' mechanism.
8022         Synch up nt_create_process with FSF 20.6 sys_spawnve.
8023         Move compare_env here from ntproc.c.
8024
8025         * process.c (Fprocess_send_region):
8026         Takes an optional fourth argument, BUFFER, which should fix some
8027         problems with call-process.
8028
8029         * syscommctrl.h:
8030         Move ICC_BAR_CLASSES here from syswindows.h, to avoid a warning.
8031
8032         * syswindows.h:
8033         Move ICC_BAR_CLASSES to syscommctrl.h.
8034         Add preliminary macros for MSWindows/Mule.  More to come.
8035
8036         * unexnt.c:
8037         * unexnt.c (unexec):
8038         open_output_file moved to nt.c.
8039
8040
8041 2000-05-05  Andy Piper  <andy@xemacs.org>
8042
8043         * window.c (window_unmap_subwindows_cache_mapper): remove the dead
8044         instance from the frame cache also since GC may catch up too late
8045         to make frame deletion sane.
8046
8047 2000-05-04  Andy Piper  <andy@xemacs.org>
8048
8049         * glyphs-x.c (x_widget_instantiate): gcpro widget callbacks.
8050         (x_finalize_image_instance): ungcpro on deletion.
8051
8052         * glyphs.c (image_instantiator_format_create): give pointers a
8053         query geometry method so that the geometry is at least set.
8054
8055         * glyphs-x.c (image_instantiator_format_create_glyphs_x): only
8056         initialize layouts if using widgets.
8057
8058 2000-05-03  Andy Piper  <andy@xemacs.org>
8059
8060         * nt.c: remove bogus reference to sysmmsystem.h
8061
8062         * gui-x.c (popup_selection_callback): fix no selection abort.
8063
8064 2000-05-02  Andy Piper  <andy@xemacs.org>
8065
8066         * glyphs-msw.c (mswindows_update_widget): cope with nil text.
8067         (mswindows_widget_instantiate): ditto.
8068
8069         * glyphs-widget.c (initialize_widget_image_instance): initialize
8070         children correctly.
8071         (widget_instantiate): cope with children and items in the same
8072         instance.
8073
8074         * glyphs.c (mark_image_instance): cope with children as a first
8075         class member.
8076         (image_instance_equal): ditto.
8077         (image_instance_hash): ditto.
8078         (image_instance_changed): ditto.
8079
8080 2000-04-30  Andy Piper  <andy@xemacs.org>
8081
8082         * glyphs.c (subwindow_query_geometry): new function. Return some
8083         defaults.
8084         (subwindow_instantiate): don't assign dimensions if none have been
8085         given.
8086         (image_instantiator_format_create): add subwindow_query_geometry.
8087         (print_image_instance): cope with layouts as widgets.
8088
8089 2000-04-29  Andy Piper  <andy@xemacs.org>
8090
8091         * frame.c (delete_frame_internal): call
8092         free_frame_subwindow_instance_cache so that all subwindows are
8093         finalized before their parent.
8094         (mark_frame): remove subwindow_cachels.
8095         (Fmake_frame): remove subwindow_cachel manipulation.
8096         (allocate_frame_core): subwindow_instance_cache is a weak list.
8097         (delete_frame_internal): set subwindow_instance_cache to nil.
8098
8099         * glyphs-msw.c (mswindows_finalize_image_instance): make double
8100         finalization safe.
8101         (mswindows_finalize_image_instance): use the device
8102         not the domain as the domain may have died already.
8103
8104         * glyphs-x.c (x_finalize_image_instance): ditto.
8105         (x_subwindow_instantiate): remove SUBWINDOW_WIDTH &
8106         HEIGHT.
8107
8108         * redisplay-output.c (redisplay_unmap_subwindows): update for
8109         subwindow instance cache as a weak list.
8110         (redisplay_unmap_subwindows_maybe): ditto.
8111         (redisplay_unmap_subwindows_except_us): ditto.
8112
8113         * glyphs.c (unmap_subwindow): error checking will check the domain
8114         so don't deal with it here. Don't use cachels anymore.
8115         (map_subwindow): ditto.
8116         (update_subwindow_cachel_data): remove old accessor names.
8117         (subwindow_instantiate): remove SUBWINDOW_WIDTH & HEIGHT.
8118         (Fresize_subwindow): don't update cachel.
8119         (mark_subwindow_cachels):
8120         (update_subwindow_cachel_data):
8121         (add_subwindow_cachel):
8122         (get_subwindow_cachel_index):
8123         (update_subwindow_cachel):
8124         (reset_subwindow_cachels):
8125         (mark_subwindow_cachels_as_not_updated): deleted.
8126         (cache_subwindow_instance_in_frame_maybe): new function. Add a
8127         subwindow instance to the frame cache.
8128         (find_matching_subwindow): update for subwindow instance cache as
8129         a weak list.
8130         (update_widget_instances): ditto.
8131         (image_instance_type_to_mask):inlined.
8132         (free_frame_subwindow_instance_cache): new function. finalize all
8133         subwindows that are instantiated.
8134
8135         * glyphs.h (struct Lisp_Image_Instance): add display_data instead
8136         of cachel information.
8137         (IMAGE_INSTANCE_DISPLAY_X):
8138         (IMAGE_INSTANCE_DISPLAY_Y):
8139         (IMAGE_INSTANCE_DISPLAY_WIDTH):
8140         (IMAGE_INSTANCE_DISPLAY_HEIGHT):
8141         (XIMAGE_INSTANCE_DISPLAY_X):
8142         (XIMAGE_INSTANCE_DISPLAY_Y):
8143         (XIMAGE_INSTANCE_DISPLAY_WIDTH):
8144         (XIMAGE_INSTANCE_DISPLAY_HEIGHT): new accessors.
8145         remove subwindow_cachel structure and function references.
8146         (image_instance_type_to_mask): inline from glyphs.c
8147
8148         * redisplay.c (redisplay_frame): remove subwindow_cachel
8149         references.
8150
8151         * frame.h (struct frame): remove subwindow_cachels.
8152         (FRAME_SUBWINDOW_CACHE): access subwindow_instance_cache.
8153
8154         * frameslots.h: add subwindow_instance_cache.
8155
8156         * window.c (replace_window): check subwindow cache of replacement.
8157         (window_unmap_subwindows_cache_mapper):
8158         (window_unmap_subwindows): new functions. Unmap all subwindows
8159         cached on this window.
8160         (mark_window_as_deleted): unmap all subwindows.
8161
8162 2000-04-27  Andy Piper  <andy@xemacs.org>
8163
8164         * glyphs.h (IIFORMAT_METH_OR_GIVEN): cope with null meths.
8165
8166         * glyphs-widget.c (widget_layout): return something.
8167         (layout_layout): return something. Fail if not initialized.
8168         (layout_query_geometry): ditto.
8169         (image_instantiator_native_layout): new function. Initialized the
8170         native layout type.
8171         (widget_instantiate): don't do layout stuff here.
8172
8173         * glyphs.c (instantiate_image_instantiator): reorded calling or
8174         instantiate and post_instantiate with layout in between.
8175         (image_instance_layout): be more selective about deciding whether
8176         the layout has been done or not.
8177
8178         * glyphs.h (struct image_instantiator_methods): return a value
8179         from layout_method.
8180
8181 2000-04-26  Andy Piper  <andy@xemacs.org>
8182
8183         * glyphs.c (allocate_image_instance): make initial width and
8184         height unspecified. Set initialized to 0.
8185
8186         * syscommctrl.h new file. Encapsulates commctrl.h.
8187
8188         * syswindows.h new file. Encapsulates windows.h.
8189
8190         * ntplay.c: use new syswindows.h and syscommctrl.h header.
8191         * nt.c: ditto.
8192         * console-msw.h: ditto.
8193
8194         * redisplay-tty.c (tty_output_display_block): remove layout references.
8195
8196         * glyphs-msw.c (mswindows_widget_instantiate): use the domain
8197         window handle rather than just the frame.
8198
8199         * glyphs.c (mark_image_instance): remove layout references.
8200         (print_image_instance): ditto.
8201         (image_instance_equal): ditto.
8202         (image_instance_hash): ditto.
8203         (decode_image_instance_type): ditto.
8204         (encode_image_instance_type): ditto.
8205         (image_instantiate): ditto.
8206         (allocate_glyph): ditto.
8207         (Fimage_instance_height): ditto.
8208         (Fimage_instance_width): ditto.
8209         (update_subwindow): ditto.
8210
8211         * redisplay-x.c (x_output_display_block): recode for layouts as
8212         widgets.
8213
8214         * redisplay-output.c (redisplay_output_layout): recode for layouts
8215         as widgets.
8216         (compare_runes): remove layout references.
8217
8218         * redisplay-msw.c (mswindows_output_display_block): recode for
8219         layouts as widgets.
8220
8221         * glyphs-widget.c (image_instantiator_layout): remove
8222         layout_possible_dest_types.
8223         (layout_possible_dest_types): deleted.
8224
8225         * glyphs.h (image_instance_type): remove layout references.
8226         (struct Lisp_Image_Instance): ditto. Add initialized flag.
8227         (IMAGE_INSTANCE_INITIALIZED): new accessor.
8228         (XIMAGE_INSTANCE_INITIALIZED): ditto.
8229
8230 2000-04-25  Andy Piper  <andy@xemacs.org>
8231
8232         * glyphs-widget.c (image_instantiator_buttons):
8233         (image_instantiator_edit_fields):
8234         (image_instantiator_combo_box):
8235         (image_instantiator_scrollbar):
8236         (image_instantiator_progress_guage):
8237         (image_instantiator_tree_view):
8238         (image_instantiator_tab_control):
8239         (image_instantiator_labels):
8240         (image_instantiator_layout): call default post_instantiate method.
8241         (widget_post_instantiate): new function. Simply lays out the
8242         widgets.
8243
8244         * glyphs.h (struct image_instantiator_methods): add
8245         post_instantiate method.
8246
8247         * glyphs.c (instantiate_image_instantiator): add post_instantiate
8248         method calls.
8249
8250 2000-04-23  Andy Piper  <andy@xemacs.org>
8251
8252         * glyphs.h (struct image_instantiator_methods): add
8253         decode_domain_method.
8254         (struct Lisp_Image_Instance): remove subwindow frame - it can be
8255         derived from the domain.
8256         (IMAGE_INSTANCE_FRAME): new accessor.
8257         (XIMAGE_INSTANCE_FRAME): ditto.
8258
8259         * glyphs.c (print_image_instance): use IMAGE_INSTANCE_FRAME
8260         instead of _SUBWINDOW_FRAME.
8261         (finalize_image_instance): ditto.
8262         (Fimage_instance_foreground): ditto.
8263         (Fimage_instance_background): ditto.
8264         (image_instantiate): ditto.
8265         (update_subwindow_cachel): ditto.
8266         (update_subwindow): ditto.
8267         (unmap_subwindow): ditto.
8268         (map_subwindow): ditto
8269         (subwindow_instantiate): ditto.
8270         * glyphs-msw.c (mswindows_update_widget): ditto.
8271         (mswindows_progress_gauge_instantiate): ditto.
8272         (mswindows_tab_control_update): ditto.
8273         * glyphs-x.c (x_update_widget): ditto.
8274         (x_widget_instantiate): ditto.
8275         (x_tab_control_instantiate): ditto.
8276         (x_tab_control_update): ditto.
8277         * event-msw.c (mswindows_wnd_proc): ditto
8278
8279         * glyphs-widget.c (image_instantiator_layout): use
8280         subwindow_decode_domain.
8281         (image_instantiator_buttons): ditto.
8282         (image_instantiator_edit_fields): ditto.
8283         (image_instantiator_combo_box): ditto.
8284         (image_instantiator_scrollbar): ditto.
8285         (image_instantiator_progress_guage): ditto.
8286         (image_instantiator_tree_view): ditto.
8287         (image_instantiator_tab_control): ditto.
8288         (image_instantiator_labels): ditto.
8289         (image_instantiator_layout): ditto.
8290
8291         * glyphs.c: add instance error checking to many functions.
8292         (instantiate_image_instantiator): decode device from cache_domain.
8293         (image_instantiate): partially rewrite by using
8294         decode_image_instantiator_domain to determine what domain the
8295         instance needs to be cached in.
8296         (decode_image_instantiator_domain): new function. Determine what
8297         domain the image needs to be cached in.
8298         (check_window_subwindow_cache): new error checking function.
8299         (check_instance_cache_mapper): ditto.
8300         (check_image_instance_structure): ditto.
8301         (subwindow_decode_domain): new function. Encodes a window as a
8302         subwindow's cache domain.
8303         (image_instantiator_format_create): use it for text and
8304         subwindows.
8305
8306 2000-04-21  Andy Piper  <andy@xemacs.org>
8307
8308         * glyphs.c (image_instance_device): new function.
8309         (image_instance_frame): new function.
8310         (image_instance_window): new function.
8311         (image_instance_live_p): new function.
8312
8313         * window.c (mark_window_as_deleted): reset the subwindow_instance_
8314         cache to nil.
8315
8316         * glyphs.h (struct Lisp_Image_Instance): device->domain.
8317         (IMAGE_INSTANCE_DOMAIN): new accessor.
8318         (XIMAGE_INSTANCE_DOMAIN): ditto.
8319
8320         * glyphs-x.c (x_finalize_image_instance): device->domain.
8321
8322         * glyphs-msw.c (init_image_instance_geometry): device->domain.
8323         (mswindows_finalize_image_instance): ditto.
8324
8325         * glyphs-eimage.c (jpeg_instantiate): device->domain.
8326         (gif_instantiate): ditto.
8327         (png_instantiate): ditto.
8328         (tiff_instantiate): ditto.
8329
8330         * glyphs.c (instantiate_image_instantiator): use domain rather
8331         than device.
8332         (mark_image_instance): device -> domain.
8333         (print_image_instance): ditto.
8334         (finalize_image_instance): ditto.
8335         (image_instance_equal): ditto.
8336         (allocate_image_instance): ditto.
8337         (Fcolorize_image_instance): ditto.
8338         (query_string_geometry): ditto.
8339         (image_instantiate): ditto
8340         (query_string_font): ditto.
8341         (image_instantiate): ditto.
8342         (update_subwindow): ditto.
8343         (unmap_subwindow): ditto.
8344         (map_subwindow): ditto.
8345         (subwindow_instantiate): ditto.
8346
8347         * specifier.h (DOMAIN_DEVICE): new, semantically correct, decoder.
8348         (DOMAIN_FRAME): ditto.
8349         (DOMAIN_WINDOW): ditto.
8350         (DOMAIN_LIVE_P): ditto.
8351         (XDOMAIN_DEVICE): ditto.
8352         (XDOMAIN_FRAME): ditto.
8353         (XDOMAIN_WINDOW): ditto.
8354
8355         * specifier.c (Fvalid_specifier_domain_p): add image instances as
8356         a valid specifier domain.
8357
8358 2000-04-19  Andy Piper  <andy@xemacs.org>
8359
8360         * glyphs-widget.c (syms_of_glyphs_widget): remove
8361         widget-callback-current-channel.
8362         (vars_of_glyphs_widget): ditto.
8363         * glyphs.h: ditto
8364
8365         * gui.c (get_gui_callback): revert to previous behaviour.
8366
8367 2000-04-18  Andy Piper  <andy@xemacs.org>
8368
8369         * glyphs.h (struct Lisp_Image_Instance): add margin_width.
8370         (IMAGE_INSTANCE_MARGIN_WIDTH): new.
8371         (XIMAGE_INSTANCE_MARGIN_WIDTH): new.
8372
8373         * glyphs.c (image_instance_equal): add margin_width.
8374         (image_instance_hash): ditto.
8375
8376         * glyphs-widget.c (widget_instantiate): deal with margin-width.
8377         (layout_query_geometry): ditto.
8378         (layout_layout): ditto.
8379         (syms_of_glyphs_widget): add margin-width.
8380         (image_instantiator_layout): allow margin-width.
8381
8382         * glyphs.c (update_widget_instances): make a normal function.
8383         (syms_of_glyphs): remove Qupdate_widget_instances.
8384         * glyphs.h: ditto.
8385
8386         * gui-x.c (popup_selection_callback): use enqueue_magic_eval_event
8387         so that we don't corrupt ideas about the last event or
8388         command. Remove widget-callback-current-channel fiddling.
8389         * gui-msw.c (mswindows_handle_gui_wm_command): ditto.
8390
8391 2000-05-01  Martin Buchholz <martin@xemacs.org>
8392
8393         * XEmacs 21.2.33 is released.
8394
8395 2000-05-01  Yoshiki Hayashi  <yoshiki@xemacs.org>
8396
8397         * make-src-depend: Allow dots in header file name.
8398
8399 2000-05-01  Yoshiki Hayashi  <yoshiki@xmacs.org>
8400
8401         * mule-charset.h (struct charset_lookup): Add
8402         next_allocated_1_byte_leading_byte and
8403         next_allocated_2_byte_leading_byte.
8404         * mule-charset.c: Move above two variables so that those values
8405         will be dumped.
8406
8407 2000-04-26  Yoshiki Hayashi  <yoshiki@xemacs.org>
8408
8409         * insdel.c (find_charsets_in_bufbyte_string): Add Vcharset_ascii
8410         when string length is zero.
8411         (find_charsets_in_emchar_string): Ditto.
8412
8413 2000-04-29  Bjrn Torkelsson  <torkel@hpc2n.umu.se>
8414
8415         * lisp.h: extern Qdialog and Qmenubar.
8416
8417         * gui-x.c: added events.h.
8418                 also fixed typo which made the file uncompilable.
8419
8420         * general.c: Added Qmenubar and Qdialog
8421
8422 2000-04-28  Ben Wing  <ben@xemacs.org>
8423
8424         * frame-msw.c (mswindows_init_frame_1):
8425         * frame-msw.c (mswindows_mark_frame):
8426         * event-msw.c (mswindows_enqueue_dispatch_event):
8427         * console-msw.h:
8428         * console-msw.h (struct mswindows_frame):
8429         * console-msw.h (FRAME_MSWINDOWS_WIDGET_HASH_TABLE1):
8430         there are now three hash tables for callbacks.
8431         mswindows_enqueue_dispatch_event is no longer static.
8432
8433         * dialog-x.c (maybe_run_dbox_text_callback):
8434         * dialog-x.c (dbox_descriptor_to_widget_value):
8435         switch to new cons3 form for callbacks.
8436
8437         * glyphs-msw.c (mswindows_register_gui_item):
8438         * glyphs-msw.c (mswindows_widget_instantiate):
8439         * glyphs-msw.c (add_tree_item):
8440         * glyphs-msw.c (add_tab_item):
8441         new image instance parameter, so it can be passed to callback-ex.
8442         respect :callback-ex as well as :callback.
8443
8444         * glyphs-widget.c (VALID_GUI_KEYWORDS):
8445         add :callback-ex.
8446
8447         * glyphs.c (print_image_instance):
8448         prettify, e.g. now prints widget type.
8449
8450         * gui-x.h:
8451         certain funs have new image instance parameter.
8452
8453         * gui.c:
8454         * gui.c (get_gui_callback):
8455         * gui.c (gui_item_add_keyval_pair):
8456         * gui.c (gui_item_init):
8457         * gui.c (gui_add_item_keywords_to_plist):
8458         * gui.c (mark_gui_item):
8459         * gui.c (gui_item_hash):
8460         * gui.c (gui_item_equal):
8461         * gui.c (copy_gui_item):
8462         * gui.c (syms_of_gui):
8463         recognize callback-ex in a number of places.
8464         also, fix the annoying "can't get out of yes-no dialog" bug.
8465
8466         * gui.h:
8467         * gui.h (struct Lisp_Gui_Item):
8468         recognize callback-ex in a number of places.
8469
8470         * menubar-x.c (menu_item_descriptor_to_widget_value_1):
8471         new parameter in button_item_to_widget_value.
8472
8473         * glyphs-x.c (x_update_widget):
8474         * glyphs-x.c (x_button_instantiate):
8475         * glyphs-x.c (x_button_update):
8476         * glyphs-x.c (x_progress_gauge_instantiate):
8477         * glyphs-x.c (x_edit_field_instantiate):
8478         * glyphs-x.c (x_combo_box_instantiate):
8479         * glyphs-x.c (x_tab_control_instantiate):
8480         * glyphs-x.c (x_label_instantiate):
8481         new image instance parameter in various places.
8482
8483         * event-Xt.c:
8484         * event-Xt.c (enqueue_Xt_dispatch_event):
8485         this fun gets exported.
8486
8487         * gui-msw.c:
8488         * gui-msw.c (mswindows_handle_gui_wm_command):
8489         handle both :callback and :callback-ex, and generate our own
8490         event because it's one of the callback-ex arguments.
8491
8492         * gui-x.c:
8493         * gui-x.c (popup_selection_callback):
8494         handle both :callback and :callback-ex, and generate our own
8495         event because it's one of the callback-ex arguments.
8496         * gui-x.c (button_item_to_widget_value):
8497         * gui-x.c (gui_items_to_widget_values_1):
8498         * gui-x.c (gui_item_children_to_widget_values):
8499         * gui-x.c (gui_items_to_widget_values):
8500         new image instance parameter in various places.
8501
8502         * fns.c (Freplace_list):
8503         fix small typo in doc string.
8504
8505         * lisp.h:
8506         declare enqueue_Xt_dispatch_event.
8507
8508 2000-04-28  Ben Wing  <ben@xemacs.org>
8509
8510         * buffer.c:
8511         * buffer.c (Frecord_buffer):
8512         * buffer.c (syms_of_buffer):
8513         delete record-buffer-hook.
8514
8515         * fns.c:
8516         * fns.c (Freplace_list):
8517         * fns.c (syms_of_fns):
8518         new primitive replace-list.
8519
8520         * frameslots.h:
8521         slot for old buffer-alist.
8522
8523         * lisp.h:
8524         exfun replace-list.
8525
8526         * redisplay.c:
8527         * redisplay.c (redisplay_frame):
8528         * redisplay.c (syms_of_redisplay):
8529         * redisplay.c (vars_of_redisplay):
8530         new hook buffer-list-changed-hook.
8531         call it.
8532
8533 2000-04-27  Ben Wing  <ben@xemacs.org>
8534
8535         * extents.h: extern in_modeline_generation.
8536
8537         * redisplay.c (generate_formatted_string_db): set
8538         in_modeline_generation.
8539
8540         * extents.c (extent_changed_for_redisplay): don't mark redisplay
8541         flags if in modeline generation.  otherwise frame-modified-tick
8542         is ticked far too often.
8543         Declare in_modeline_generation.
8544
8545 2000-04-26  Ben Wing  <ben@xemacs.org>
8546
8547         * emacs.c (vars_of_emacs): document quick-build "error-checking"
8548         option.
8549         (vars_of_emacs): add quick-build as an error-checking option.
8550         A bit kludgy, but there doesn't seem much point in creating
8551         a real var for this.
8552
8553         * config.h.in: put in an entry for QUICK_BUILD; remove NO_DOC_FILE.
8554
8555 2000-04-14  IKEYAMA Tomonori  <tomonori@suiyokai.org>
8556
8557         * redisplay.h (struct display_line): Add a new variable,
8558         line_continuation.
8559
8560         * redisplay.c (create_text_block): Set dl->line_continuation if
8561         the line continues.
8562         (create_string_text_block): Ditto.
8563         (regenerate_window_incrementally): Use line_continuation instead
8564         of searching continuation glyph.
8565         (add_margin_runes): Call add_glyph_rune.
8566         (add_glyph_rune): Handle margin glyph.
8567
8568 2000-04-20  Martin Buchholz  <martin@xemacs.org>
8569
8570         * filelock.c (fill_in_lock_file_name):
8571         ANSIfy.
8572         Check for IS_ANY_SEP instead of '/'.
8573         (lock_file_1):
8574         Avoid generating gratuitous garbage.  Call user_login_name() directly.
8575         Never check errno without first seeing that system call failed.
8576         (unlock_file): Add GCPRO.
8577         (Flock_buffer): Fix docstring.
8578         (Ffile_locked_p): Fix docstring.  Add GCPRO.
8579
8580 2000-04-19  Martin Buchholz  <martin@xemacs.org>
8581
8582         * sysdep.c (get_pty_max_bytes):
8583         Fix hangs on DEC OSF 4.0 when (process-send-string) sends
8584         strings longer than 252 bytes.
8585
8586         * md5.c: Unconditionally include ANSI header <limits.h>
8587
8588         * glyphs-x.c (convert_EImage_to_XImage):
8589         * lisp-union.h (union Lisp_Object):
8590         Use consistently the syntax #ifdef FEATURE, not #if FEATURE.
8591
8592 2000-04-13  Yoshiki Hayashi  <yoshiki@xemacs.org>
8593
8594         * filelock.c (current_lock_owner): Remove unused variable o, p.
8595
8596 2000-04-17  Norbert Koch  <n.koch@eai-delta.de>
8597
8598         * callint.c: Remove multiply defined symbol Qlet
8599         (syms_of_callint): ditto.
8600
8601 2000-04-14  Andy Piper  <andy@xemacs.org>
8602
8603         * general.c (syms_of_general): add last-command, this-command, let
8604         and funcall.
8605
8606         * lisp.h: declare various symbols.
8607
8608         * glyphs.h: declare Qwidget_callback_current_channel;
8609
8610         * glyphs-widget.c (syms_of_glyphs_widget): add
8611         Qgui_callback_current_channel.
8612         (vars_of_glyphs_widget): add Vgui_callback_current_channel.
8613
8614         * gui-msw.c (mswindows_handle_gui_wm_command): bind
8615         widget-callback-current-channel when invoking the interactive
8616         arg. Also bind last-command and next-command when invoking the
8617         widget updates.
8618         * gui-x.c (popup_selection_callback): ditto.
8619
8620         * gui.c (get_gui_callback): massage args so that we are always
8621         calling eval. This allows us to add our own variable bindings
8622         outside.
8623
8624         * glyphs-x.c (x_button_instantiate): use
8625         gui_items_to_widget_values since this is GC safe.
8626         (x_progress_gauge_instantiate): ditto.
8627         (x_edit_field_instantiate): ditto.
8628         (x_label_instantiate): ditto.
8629
8630         * event-Xt.c (emacs_Xt_handle_magic_event): remove old printfs.
8631         (emacs_Xt_event_widget_focus_out): new function
8632         (emacs_Xt_event_widget_focus_in): new function. Set the keyboard
8633         focus.
8634         (emacs_Xt_event_add_widget_actions): new function. add focus
8635         functions as actions.
8636         (init_event_Xt_late): use it.
8637
8638 2000-04-14  Hrvoje Niksic  <hniksic@iskon.hr>
8639
8640         * event-stream.c (Fdispatch_event): Doc fix.
8641
8642 2000-03-29  SL Baur  <steve@musashimaru.m17n.org>
8643
8644         * postgresql.c: Remove all references to PQsetenv*.
8645
8646         * postgresql.h: Remove references to PGsetenvHandler object.
8647         * lrecord.h (lrecord_type): Ditto.
8648
8649 2000-04-11  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
8650
8651         * glyphs-msw.h (struct mswindows_image_instance_data): Added
8652         real_heigh and real_width members, and accessor macros for these.
8653
8654         * glyphs-msw.c (init_image_instance_geometry): New function.
8655         (init_image_instance_from_dibitmap): Use it.
8656         (mswindows_resource_instantiate): Use it.
8657         (init_image_instance_from_xbm_inline): Use it.
8658         (mswindows_initialize_image_instance_mask): Use real bitmap
8659         geometry.
8660         (mswindows_create_resized_bitmap): Ditto.
8661         (mswindows_create_resized_mask): Ditto.
8662
8663         * redisplay-msw.c (mswindows_output_dibitmap): Stretch real mask
8664         and bitmap to their surface size.
8665
8666 2000-04-11  Jan Vroonhof  <jan@xemacs.org>
8667
8668         * process-unix.c (unix_send_process): Guard against process MIA
8669         after Faccept_process_output.
8670
8671 2000-04-11  Ben Wing  <ben@xemacs.org>
8672
8673         * eval.c (unbind_to_hairy): fix brokenness introduced by
8674         nanosecond speed improvements.
8675
8676 2000-04-07  Raymond Toy  <toy@rtp.ericsson.se>
8677
8678         * sunplay.c (init_device): To play sounds correctly, the device
8679         apparently needs to be initialized at least once by XEmacs.  Make
8680         it so.
8681
8682 2000-04-10  IKEYAMA Tomonori  <tomonori@suiyokai.org>
8683
8684         * redisplay.c (add_margin_runes): Add text image glyph
8685           handling.
8686
8687 2000-04-06  Yoshiki Hayashi  <yoshiki@xemacs.org>
8688
8689         * lisp.h (DOESNT_RETURN): Don't declare as volatile when
8690         gcc is newer than 2.5.
8691
8692 2000-04-06  Colin Rafferty  <colin@xemacs.org>
8693
8694         * lisp.h (FLEXIBLE_ARRAY_STRUCT_SIZEOF): Created.
8695
8696         * fns.c (size_bit_vector):
8697         * alloc.c (size_vector):
8698         (make_vector_internal):
8699         (make_bit_vector_internal):
8700         (sweep_bit_vectors_1):
8701         Replace calls to offsetof with FLEXIBLE_ARRAY_STRUCT_SIZEOF macro.
8702
8703 2000-04-06  Andy Piper  <andy@xemacs.org>
8704
8705         * gmalloc.c (malloc): undo previous change.
8706         (malloc): ditto.
8707         (free): ditto.
8708         (realloc): ditto.
8709
8710 2000-04-06  IKEYAMA Tomonori <tomonori@suiyokai.org>
8711
8712         * line-number.c (buffer_line_number): Revert to former version.
8713
8714 2000-04-06  Andy Piper  <andy@xemacs.org>
8715
8716         * gmalloc.c (malloc): add error checking.
8717         (malloc): ditto.
8718         (free): ditto.
8719         (realloc): ditto.
8720
8721         * dialog-x.c (dbox_descriptor_to_widget_value): add extra
8722         button_item_to_widget_value arg.
8723
8724         * glyphs-x.c (x_button_instantiate): add extra
8725         button_item_to_widget_value arg.
8726         (x_progress_gauge_instantiate): ditto.
8727         (x_edit_field_instantiate): ditto.
8728         (x_label_instantiate): ditto.
8729
8730         * gui-x.c (gui_items_to_widget_values_1): add extra
8731         button_item_to_widget_value arg.
8732         (button_item_to_widget_value): add extra menu_item_p arg.
8733
8734         * gui-x.h: change signature of button_item_to_widget_value.
8735
8736         * menubar-x.c (menu_item_descriptor_to_widget_value_1): add extra
8737         button_item_to_widget_value arg.
8738
8739 2000-04-03  Yoshiki Hayashi  <yoshiki@xemacs.org>
8740
8741         * buffer.h (struct buffer): auto_save_modified should be long.
8742
8743 2000-04-05  Andy Piper  <andy@xemacs.org>
8744
8745         * glyphs-widget.c (widget_instantiate): pixwidth != pixheight
8746         type.
8747         (button_query_geometry): give a little more room so that athena
8748         buttons fit.
8749
8750 2000-04-05  Andy Piper  <andy@xemacs.org>
8751
8752         * faces.c (complex_vars_of_faces): The widget face should inherit
8753         the font of the gui-element face.
8754
8755 2000-04-04  Andy Piper  <andy@xemacs.org>
8756
8757         * glyphs-x.c (x_button_update): new function. unconditionally
8758         update a button's state when the instance is dirty.
8759         (image_instantiator_format_create_glyphs_x): add x_button_update.
8760         (x_widget_instantiate): remove old resize cruft.
8761
8762 2000-04-02  Andy Piper  <andy@xemacs.org>
8763
8764         * frame.c (change_frame_size_1): The introduction of gutters means
8765         that we need to allow 0 as a potential frame dimension.
8766
8767 2000-04-02  IKEYAMA Tomonori  <tomonori@suiyokai.org>
8768
8769         * redisplay.c (add_glyph_rune): Don't set 0 to bufpos for text
8770         image glyph if allow_cursor.
8771         (add_hscroll_rune): Don't allow cursor to border glyph.
8772         (create_text_block): Ditto.
8773
8774         * redisplay-output.c (redisplay_move_cursor): Do nothing even if
8775         text not in buffer.
8776         (redisplay_output_layout): Call ensure_face_cachel_complete for
8777         text image glyph.
8778
8779
8780 2000-03-16  IKEYAMA Tomonori  <tomonori@suiyokai.org>
8781
8782         * redisplay.c (add_glyph_rune): Adding text image as text runes.
8783
8784         * redisplay-output.c (redisplay_move_cursor): NO_CURSOR if text
8785         not in buffer
8786
8787         * redisplay-tty.c (tty_output_display_block): Delete the routine
8788         for text image glyph
8789         * redisplay-x.c (x_output_display_block): ditto
8790         * redisplay-msw.c (mswindows_output_display_block): ditto
8791
8792 2000-02-02  Mike Alexander  <mta@arbortext.com>
8793
8794         Note: Some of these were committed by accident as part of other
8795         patches.
8796
8797         * regex.c (regex_compile): Avoid compiler warnings.
8798
8799         * ntproc.c (sys_spawnve): Avoid compiler warnings.
8800
8801         * nt.h: Declare term_ntproc correctly.
8802
8803         * nt.c: Remove incorrect declaration of get_home_directory which
8804         is declared correctly in lisp.h.
8805
8806         * keymap.c (get_keyelt): Avoid compiler warnings.
8807         (raw_lookup_key_mapper): Avoid compiler warnings.
8808
8809         * gutter.c (gutter_was_visible): Add return statement to avoid warning.
8810
8811         * glyphs-eimage.c (png_instantiate): Avoid compiler warnings.
8812
8813         * filemode.c (mode_string): Avoid compiler warnings.
8814
8815         * file-coding.c (Fcoding_system_aliasee): Add return statement to
8816         avoid warning.
8817
8818         * events-mod.h: Undef some things that winuser.h defines differently.
8819
8820         * data.c (Faset): Avoid compiler warnings.
8821
8822         * alloc.c (Fmake_byte_code): Avoid compiler warnings.
8823
8824 2000-03-03  Jan Vroonhof  <vroonhof@math.ethz.ch>
8825
8826         * sound.c (Fplay_sound_file): Wrap ESD in start/stop_interrupts.
8827         Fall through to simple beep on error.
8828         Replace "extern" by real header file.
8829
8830         * linuxplay.c: Use nativesound.h
8831         (play_sound_data): Return error code. Be less verbose on error.
8832
8833         * sunplay.c: Use nativesound.h
8834         (play_sound_data): Return error code. Be less verbose on error.
8835
8836         * ntplay.c: Use nativesound.h
8837         (play_sound_data): Return fake error code
8838
8839         * sgiplay.c: Use nativesound.h
8840         (play_sound_data): Return error code
8841
8842         * hpplay.c: Use nativesound.h, partially implement
8843         new error code. Break compilation until finished.
8844         (play_sound_data): error code.
8845
8846         * nativesound.h (play_sound_file):
8847           (play_sound_data): Prototype in new header.
8848
8849 2000-03-31  Andy Piper  <andy@xemacs.org>
8850
8851         * glyphs-widget.c: (button_query_geometry): new function. Adjust
8852         for toggle and radio buttons.
8853         (image_instantiator_buttons): use it.
8854
8855 2000-03-03  Jan Vroonhof  <vroonhof@math.ethz.ch>
8856
8857         * scrollbar-x.c (x_update_vertical_scrollbar_callback):
8858         (x_update_horizontal_scrollbar_callback): Return if no mirror was
8859         found. Scrollbar event probably belonged to some old config.
8860
8861 2000-03-31  Andy Piper  <andy@xemacs.org>
8862
8863         * glyphs-widget.c (widget_instantiate): use LAYOUT_VERTICAL rather
8864         than 1.
8865         (initialize_widget_image_instance): default layout to
8866         LAYOUT_HORIZONTAL rather than 0.
8867         (widget_instantiate): reverse the item list at the end rather than
8868         every iteration.
8869         (layout_layout): re-code for the border text at the front of the
8870         item list rather than at the end.
8871         (layout_query_geometry): ditto. Pick up fixed and dynamic sizes
8872         provided by the user.
8873         (widget_query_geometry): comment.
8874
8875 2000-03-30  Andy Piper  <andy@xemacs.org>
8876
8877         * glyphs-widget.c (image_instantiator_layout): allow standard
8878         widget keywords in layouts.
8879
8880         * gutter.c (output_gutter): cope with nil gutter contents.
8881
8882         * frame.c (Fset_frame_properties): add gutter docs.
8883
8884 2000-03-29  Andy Piper  <andy@xemacs.org>
8885
8886         * toolbar-msw.c (TBSTYLE_FLAT): add.
8887         (mswindows_output_toolbar): minor fiddling.
8888
8889 2000-03-29  Andy Piper  <andy@xemacs.org>
8890
8891         * gutter.c (output_gutter): force gutter size recalculation if
8892         what we are trying to display won't fit.
8893         (update_gutter_geometry): new function. A per-gutter version of
8894         update_frame_gutter_geometry.
8895         (update_frame_gutter_geometry): use it.
8896         (redraw_exposed_gutter): add extra debugging output.
8897
8898 2000-03-28  Mike Alexander  <mta@arbortext.com>
8899
8900         * dumper.c: Declare pdump_hFile and pdump_hMap (Windows only)
8901         (pdump_file_unmap): Implement it on Windows
8902         (pdump_file_get): Save alocated handles for pdump_file_unmap
8903
8904 2000-03-28  Andy Piper  <andy@xemacs.org>
8905
8906         * gui.c (get_gui_callback): treat Quit specially.
8907
8908 2000-03-27  Andy Piper  <andy@xemacs.org>
8909
8910         * glyphs.c (image_instantiate): be careful to check in the same
8911         way we assigned.
8912
8913 2000-03-27  Didier Verna  <didier@xemacs.org>
8914
8915         * config.h.in: define the proper SMART_INCLUDE macro.
8916         handle renaming of `foo_h_path' to `foo_h_file'.
8917
8918         * database.c: ditto.
8919
8920         * emacs.c: ditto.
8921
8922         * linuxplay.c: ditto.
8923
8924         * terminfo.c: ditto.
8925
8926         * tooltalk.h: ditto.
8927
8928 2000-03-27  Andy Piper  <andy@xemacs.org>
8929
8930         * glyphs-msw.c (mswindows_update_widget): make sure the widget
8931         gets updated whenever the face might have changed.
8932
8933 2000-03-26  Mike Alexander  <mta@arbortext.com>
8934
8935         * dumper.c (pdump_resource_free): Fix the comment.
8936
8937 2000-03-21  Olivier Galibert  <galibert@pobox.com>
8938
8939         * input-method-xlib.c (XIM_init_frame): Remove painful warning.
8940
8941 2000-03-22  Mike Alexander  <mta@arbortext.com>
8942
8943         * dumper.c: Include Windows headers on Windows
8944         (pdump_resource_free): Add a body to the function
8945         (pdump_load): exe_name -> exe_path and add some comments.
8946
8947 2000-03-25  Mike Alexander  <mta@arbortext.com>
8948
8949         * gui.c (copy_gui_item_tree): Return a value in all cases
8950
8951 2000-03-21  Didier Verna  <didier@xemacs.org>
8952
8953         * config.h.in: move INCLUDE_GLUE_1 and INCLUDE_GLUE_2 here from
8954         lwlib/config.h.in.
8955         (SMART_INCLUDE): new macro.
8956         (POSTGRES_INCLUDE): new macro to include postgresql headers from
8957         the proper location.
8958
8959         * postgresql.c: use it.
8960
8961         * inline.c: ditto.
8962
8963 2000-03-24  Andy Piper  <andy@xemacs.org>
8964
8965         * gutter.c (redraw_exposed_gutters): must be "in display" when we
8966         do this.
8967
8968 2000-03-24  Andy Piper  <andy@xemacs.org>
8969
8970         * redisplay-output.c (compare_runes): use image_instance_changed
8971         to detect changes. Do not depend on glyphs_changed, only depend on
8972         dirtiness.
8973          (redisplay_output_layout): add debug messages.
8974         (compare_runes): ditto.
8975
8976         * glyphs.h: declare new functions.
8977         (struct Lisp_Image_Instance): remove percent and associated
8978         accessors.
8979
8980         * gui.h: declare new copying functions.
8981
8982         * gui.c (copy_gui_item_tree): new function.
8983         (copy_gui_item): new function.
8984         (gui_item_id_hash): revert to standard hash.
8985         (gui_item_hash): ditto.
8986         (gui_item_hash_internal): deleted.
8987         (mark_gui_item): mark value.
8988         (gui_item_add_keyval_pair): add value.
8989         (gui_item_init): ditto.
8990         (gui_add_item_keywords_to_plist): ditto.
8991         (gui_item_equal): ditto.
8992         (syms_of_gui): add Q_value.
8993
8994         * glyphs-x.c (x_progress_gauge_update): use pending items and
8995         value for setting the state.
8996         (x_update_widget): don't set items from pending here.
8997
8998         * glyphs-widget.c (update_widget): update items here.
8999         (progress_gauge_set_property): use items for storing value. Put
9000         new value in pending items.
9001
9002         * glyphs-msw.c (mswindows_progress_gauge_update): use pending
9003         items for new value. Convert percent -> value.
9004         (mswindows_tab_control_update): don't update items here.
9005
9006         * glyphs.c (Fupdate_widget_instances): use image_instance_changed.
9007         (update_subwindow): ditto.
9008         (image_instance_changed): new function. Compare hash values and
9009         past and present widget items.
9010         (image_instantiate): We more careful about where we instantiate
9011         things.
9012         (image_instantiate): add error checking.
9013
9014         * gutter.c (syms_of_gutter): use -hook.
9015
9016 2000-03-20  Yoshiki Hayashi  <yoshiki@xemacs.org>
9017
9018         * console-tty.c (Fset_console_tty_input_coding_system): Use
9019         Qkeyboard.
9020         (Fset_console_tty_output_coding_system): Use Qterminal.
9021         (tty_init_console): Use Qkeyboard and Qterminal.
9022
9023 2000-03-21  Ben Wing  <ben@xemacs.org>
9024
9025         * ntproc.c (create_child): remove bogus HAVE_NTGUI's.
9026         From Mike Alexander <mta@arbortext.com>.
9027
9028 2000-03-21  Ben Wing  <ben@xemacs.org>
9029
9030         * event-msw.c (mswindows_need_event): Horrible kludge to fix
9031         process brokenness.  Proper implementation to come.
9032         * callproc.c:
9033         Rename call-process-internal to old-call-process-internal.
9034         New impl. in process.el.
9035
9036 2000-03-21  Martin Buchholz  <martin@xemacs.org>
9037
9038         * Makefile.in.in: Coalesce HAVE_NATIVE_SOUND code fragments.
9039
9040 2000-03-20  Andy Piper  <andy@xemacs.org>
9041
9042         * glyphs.c (full_list_hash): make hashes of the same elements in
9043         different orders return different values.
9044
9045 2000-03-20  Martin Buchholz <martin@xemacs.org>
9046
9047         * XEmacs 21.2.32 is released.
9048
9049 2000-03-20  Martin Buchholz  <martin@xemacs.org>
9050
9051         * buffer.h (DFC_ALLOCA_USE_CONVERTED_DATA):
9052         (DFC_MALLOC_USE_CONVERTED_DATA):
9053         Add aliasing-safe casts to allow use with char* or unsigned char*
9054         lvalues.
9055
9056         * eldap.c (Fldap_open):
9057         (Fldap_search_basic):
9058         (Fldap_add):
9059         (Fldap_modify):
9060         Make C++-compilable.
9061         Make sure GCPRO'ed variables are initialized.
9062         Use temp variables to avoid repeated calls to Flength.
9063
9064 2000-03-16  Martin Buchholz  <martin@xemacs.org>
9065
9066         * sysfile.h:
9067         Make sure PATH_MAX is always defined.
9068         Include limits.h for PATH_MAX.
9069         Deprecate use of MAXPATHLEN.
9070
9071 2000-03-10  Martin Buchholz  <martin@xemacs.org>
9072
9073         * emacs.c: Add reinit_vars_of_fileio.
9074         * symsinit.h: Add reinit_vars_of_fileio.
9075         * fileio.c (reinit_vars_of_fileio): New.
9076         * fileio.c (Fmake_temp_name):
9077         Initialize temp_name random number from microseconds to make
9078         collisions even less likely.  Initialize always at process startup
9079         time.  (make-temp-name) used to return the same file name twice in
9080         a row when PDUMP.
9081         Random stylistic fiddling.
9082         Comment fixes.
9083
9084 2000-03-20  Andy Piper  <andy@xemacs.org>
9085
9086         * glyphs.c (image_instantiate): allow text glyphs to be
9087         instantiated in the minibuffer window.
9088
9089 2000-03-19  Andy Piper  <andy@xemacs.org>
9090
9091         * glyphs.c (image_instance_hash): be careful about which items we
9092         hash on.
9093
9094         * glyphs-widget.c (tab_control_set_property): record into pending
9095         items rather than the actual items.
9096
9097         * glyphs-x.c (x_update_widget): use pending items to update with.
9098
9099         * glyphs-msw.c (mswindows_tab_control_update): use pending items
9100         to update with.
9101
9102         * glyphs.c (mark_image_instance): mark pending items.
9103
9104         * window.c (Fset_window_configuration): record the buffer.
9105         (Fselect_window): totally revert previous change which breaks many
9106         things.
9107
9108 2000-03-18  Andy Piper  <andy@xemacs.org>
9109
9110         * glyphs-msw.c (mswindows_tab_control_update): force selected
9111         item.
9112
9113         * glyphs.c (image_instantiate): don't allow the minibuffer as a
9114         window domain cache, otherwise we get inconsistencies at
9115         startup. There is something fishy at startup which can lead to the
9116         minibuffer being the selected window when the gutter content is
9117         instantiated.
9118
9119         * gui.c (parse_gui_item_tree_list): add probably unnecessary
9120         gcpros.
9121         (parse_gui_item_tree_children): ditto.
9122         (parse_gui_item_tree_item): ditto.
9123
9124         * glyphs.c (Fupdate_widget_instances): return something.
9125
9126 2000-03-18  Yoshiki Hayashi  <yoshiki@xemacs.org>
9127
9128         * window.c (Fselect_window): Undo 2000-03-17 change.
9129
9130 2000-03-17  SL Baur  <steve@musashimaru.m17n.org>
9131
9132         * postgresql.c (Fpq_setenv): Remove this turkey when linking
9133         against v7.0 libraries.  Insta-coredump city until the postgres
9134         folks fix it.
9135
9136 2000-03-17  Andy Piper  <andy@xemacs.org>
9137
9138         * faces.c (complex_vars_of_faces): don't give the widget face an
9139         inherited background pixmap.
9140
9141         * glyphs-msw.c (mswindows_tab_control_instantiate): select the
9142         selected item.
9143
9144         * event-stream.c (Fdispatch_non_command_events): return something.
9145
9146         * gutter.c (output_gutter): use widget face.
9147         (clear_gutter): ditto.
9148
9149         * NEWS: adjust again.
9150
9151         * window.c (Fselect_window): make sure this runs to completion to
9152         avoid oddities with Fset_window_configuration.
9153         (Fcurrent_window_configuration): in general do not save the
9154         minibuffer as the selected window.
9155
9156         * glyphs.h (IMAGE_INSTANCE_HASH_DEPTH): increase.
9157
9158 2000-03-16  Olivier Galibert  <galibert@pobox.com>
9159
9160         * emacs.c (Frunning_temacs_p): Revert previous patch.
9161         (main_1): Reinitialize running_temacs_argc if pdump_load succeeds.
9162
9163 2000-03-16  Andy Piper  <andy@xemacs.org>
9164
9165         * glyphs-x.c (x_tab_control_update): if no widget values then
9166         return.
9167
9168         * NEWS: update for new features.
9169
9170         * event-Xt.c (emacs_Xt_force_event_pending): new function. Post a
9171         synthetic event to the native system.
9172         (reinit_vars_of_event_Xt): set force_event_pending to
9173         emacs_Xt_force_event_pending.
9174
9175         * events.h (struct event_stream): add force_event_pending.
9176
9177         * specifier.c (recompute_one_cached_specifier_in_window): add
9178         comment.
9179
9180         * redisplay.c (redisplay_frame): don't call
9181         update_frame_subwindows. Reset subwindow cachels when
9182         subwindows_changed, removing this was an optimization too far.
9183
9184         * redisplay-output.c (compare_runes): reorganize so that we catch
9185         glyph changes when we want them. Set optimize_output when this
9186         would help layouts.
9187         (redisplay_output_layout): remove frame_really_changed, use
9188         optimize_output instead.
9189
9190         * redisplay-msw.c (mswindows_output_display_block): reset
9191         optimize_output after outputting a glyph.
9192         * redisplay-x.c (x_output_display_block): ditto.
9193         * redisplay-tty.c (tty_output_display_block): ditto.
9194
9195         * gutter.c: (specifier_vars_of_gutter): use new spec changed
9196         functions.
9197         (gutter_specs_changed): do specific gutter positions.
9198         (top_gutter_specs_changed): new function. Only update the
9199         specified gutter specs.
9200         (bottom_gutter_specs_changed): ditto.
9201         (left_gutter_specs_changed): ditto.
9202         (right_gutter_specs_changed): ditto.
9203
9204         * gui.c (gui_item_hash_internal): new function, does a real hash.
9205         (gui_item_id_hash): use it.
9206         (gui_item_hash): hash the eval'ed gui_item.
9207
9208         * gui-x.c (popup_selection_callback): send an eval event to call
9209         Fupdate_widget_instances.
9210
9211         * gui-msw.c (mswindows_handle_gui_wm_command): send an eval event
9212         to call Fupdate_widget_instances.
9213
9214         * glyphs.h (struct Lisp_Image_Instance): add optimize_output flag.
9215         (IMAGE_INSTANCE_OPTIMIZE_OUTPUT): access it.
9216
9217         * glyphs.c: (update_frame_subwindows): deleted.
9218         (Fupdate_widget_instances): new function for updating the dirty
9219         state of widgets that might have changed.
9220         (syms_of_glyphs): add Qupdate_widget_instances.
9221         (full_list_hash): hash a list completely.
9222         (image_instance_hash): use it for items and properties.
9223
9224         * frame-msw.c (mswindows_size_frame_internal): remove unused
9225         variable.
9226
9227         * faces.h (struct face_cachel): fix comment.
9228
9229         * event-stream.c (Fdispatch_non_command_events): new
9230         function. Process non-command events, forcing an event cycle
9231         beforehand.
9232         (syms_of_event_stream): declare.
9233         (event_stream_force_event_pending): new function. Force an event
9234         on the native event queue so that an event cycle will occur next
9235         time we check.
9236
9237         * event-msw.c:
9238         (struct ntpipe_shove_stream):
9239         (mswindows_enqueue_dispatch_event):
9240         (mswindows_dequeue_dispatch_event):
9241         (mswindows_cancel_dispatch_event):
9242         (mswindows_pump_outstanding_events):
9243         (mswindows_drain_windows_queue):
9244         (mswindows_handle_paint):
9245         (mswindows_wnd_proc):
9246         (mswindows_key_to_emacs_keysym):
9247         (get_process_input_waitable):
9248         (emacs_mswindows_delete_stream_pair): re-indent file.
9249         (mswindows_need_event): do not process further fds if the windows
9250         fd is set, otherwise you get endless XM_BUMPQUEUE cycles. This
9251         fixes the 100% cpu problem.
9252         (reinit_vars_of_event_mswindows): set force_event_pending to 0.
9253
9254 2000-03-15  Olivier Galibert  <galibert@pobox.com>
9255
9256         * alloc.h: New.
9257         * dumper.h: New.
9258         * dumper.c: New.
9259
9260         * emacs.c: Moved dump file searching to dumper.c.
9261         (Frunning_temacs_p): Fixed.
9262
9263         * alloc.c: Moved everything pdump-related to dumper.c.  Removed
9264         last_lrecord_type_index_assigned.
9265
9266 2000-02-20  Olivier Galibert  <galibert@pobox.com>
9267
9268         * symsinit.h: Added reinit parameter to init_console_stream
9269         declaration.
9270
9271         * lisp.h: Added file parameter to pdump_load declaration.
9272
9273         * emacs.c (main_1): Added -nd/--nodump-file and -sd/--show-dump-id
9274         support.  Added dump file searching.
9275
9276         * config.h.in: Added EMACS_PROGNAME.
9277
9278         * console-stream.c (init_console_stream): Fix reinitialisation
9279         when running from temacs.
9280
9281         * alloc.c (pdump): Add id support.
9282         (pdump_load): Add file parameter and signature/id support.
9283
9284         * Makefile.in.in: Add full pdump support.
9285
9286 2000-03-15  SL Baur  <steve@musashimaru.m17n.org>
9287
9288         * postgresql.c: Update documentation to reflect latest code
9289         status.
9290         (print_result): Show tuple counts in printed representation when
9291         appropriate.
9292         (Fpq_put_nbytes): MULE-ize.
9293         (Fpq_get_line_async): Ditto.
9294
9295 2000-03-14  SL Baur  <steve@musashimaru.m17n.org>
9296
9297         * postgresql.c (Fpq_lo_import): Fix return value.
9298         Suggested by: Kenji Itoh <keit@tpj.co.jp>.
9299
9300 2000-03-13  Ben Wing  <ben@xemacs.org>
9301
9302         * alloc.c (pdump_load):
9303         Fix compile warning under mswin.
9304
9305 2000-03-14  SL Baur  <steve@musashimaru.m17n.org>
9306
9307         * postgresql.c: Mule-ization, bug fixes.
9308         Use PG_CODING to encapsulate coding system name changes.
9309         Backport a version of TO_EXTERNAL format for 21.1/InfoDock.
9310         (pg-coding-system): Create.
9311
9312         (Fpq_conn_defaults): Mule-ize.
9313         (Fpq_connectdb): Mule-ize & bug fix.
9314         (Fpq_connect_start): Mule-ize.
9315         (Fpq_set_client_encoding): Mule-ize.
9316         (Fpq_finish): Document `DEAD' connection status.
9317         (Fpq_clear): Ditto.
9318         (Fpq_pgconn): Mule-ize.
9319         (Fpq_exec): Mule-ize & bug fix.
9320         (Fpq_send_query): Ditto.
9321         (Fpq_get_result): Ditto.
9322         (Fpq_res_status): Mule-ize.
9323         (Fpq_result_error_message): Mule-ize.
9324         (Fpq_ntuples): fix comments.
9325         (Fpq_fname): Mule-ize.
9326         (Fpq_fnumber): Mule-ize.
9327         (Fpq_ftype): fix comments.
9328         (Fpq_get_value): Mule-ize.
9329         (Fpq_cmd_status): Ditto.
9330         (Fpq_cmd_tuples): Ditto.
9331         (Fpq_oid_value): Ditto.
9332         (Fpq_notifies): Ditto.
9333         (Fpq_lo_import): Ditto.
9334         (Fpq_lo_export): Ditto.
9335         (Fpq_get_line): Ditto.
9336         (Fpq_put_line): Mule-ize and bug fix.
9337         (syms_of_postgresql): Fix ifdef'ing, add pg-coding-system.
9338
9339 2000-03-10  SL Baur  <steve@musashimaru.m17n.org>
9340
9341         * postgresql.c (vars_of_postgresql): Mule-ize.
9342         (Fpq_conn_defaults): Ditto.
9343
9344 2000-03-12  Ben Wing  <ben@xemacs.org>
9345
9346         * alloc.c (Fmake_byte_code):
9347         * alloc.c (debug_string_purity_print):
9348         * alloc.c (pdump_backtrace):
9349         * alloc.c (pdump_get_indirect_count):
9350         * alloc.c (pdump_register_sub):
9351         * alloc.c (pdump_register_object):
9352         * alloc.c (pdump_register_struct):
9353         * alloc.c (pdump_dump_data):
9354         * alloc.c (pdump_reloc_one):
9355         Minor cleanups.
9356
9357         * console-msw.c:
9358         * console-msw.c (GetConsoleHwnd):
9359         * console-msw.c (msw_hide_console):
9360         * console-msw.c (msw_show_console):
9361         * console-msw.c (msw_ensure_console_buffered):
9362         * console-msw.c (msw_output_console_string):
9363         * console-msw.c (console_type_create_mswindows):
9364
9365         a) Added functions to manipulate the console window for use with
9366         shell support.
9367
9368         b) Added support for writing text to the console, which is now
9369         used under Windows when xemacs is not being run non-interactively,
9370         to write text that would otherwise be destined for stdout because
9371         under these circumstances, text written to stdout tends to
9372         disappear and not be seen.
9373
9374         * console-msw.h:
9375         * event-Xt.c:
9376         * event-Xt.c (x_event_to_emacs_event):
9377         * event-Xt.c (describe_event_window):
9378         * events-mod.h (XEMACS_MOD_CONTROL):
9379         * events.c:
9380         * events.c (Fmake_event):
9381         * events.c (character_to_event):
9382         * events.c (event_to_character):
9383         * events.c (format_event_object):
9384         * events.c (Fevent_modifiers):
9385         * events.h:
9386         * events.h (struct key_data):
9387         * events.h (struct button_data):
9388         * events.h (struct misc_user_data):
9389         * frame-x.c (Fcde_start_drag_internal):
9390         * frame-x.c (Foffix_start_drag_internal):
9391         * gpmevent.c (Freceive_gpm_event):
9392         * keymap.c:
9393         * keymap.c (bucky_sym_to_bucky_bit):
9394         * keymap.c (control_meta_superify):
9395         * keymap.c (make_key_description):
9396         * keymap.c (keymap_lookup_directly):
9397         * keymap.c (create_bucky_submap):
9398         * keymap.c (keymap_store):
9399         * keymap.c (define_key_check_and_coerce_keysym):
9400         * keymap.c (define_key_parser):
9401         * keymap.c (define_key_alternate_name):
9402         * keymap.c (Fdefine_key):
9403         * keymap.c (raw_lookup_key_mapper):
9404         * keymap.c (struct map_keymap_unsorted_closure):
9405         * keymap.c (map_keymap_unsorted_mapper):
9406         * keymap.c (map_keymap_sort_predicate):
9407         * keymap.c (map_keymap_sorted):
9408         * keymap.c (accessible_keymaps_mapper_1):
9409         * keymap.c (where_is_recursive_mapper):
9410         * keymap.c (describe_map_mapper):
9411         * keymap.c (describe_map_sort_predicate):
9412         * keymap.c (describe_map):
9413         * keymap.c (complex_vars_of_keymap):
9414         And a number of other files, the key modifier preprocessor
9415         constants that xemacs uses have names that conflict with constants
9416         defined under MS Windows for other purposes, so they were renamed
9417         to begin with the prefix XEMACS_. The variables that hold such
9418         modifiers were changed to consistently be of type int to fix
9419         various compile warnings.
9420
9421         * console.c (complex_vars_of_console):
9422         * device.c:
9423         * device-msw.c:
9424         * device-msw.c (mswindows_finish_init_device):
9425         * device-msw.c (msw_get_workspace_coords):
9426         * device-msw.c (mswindows_device_system_metrics):
9427         and various other files, added support for a new
9428         device property called offset-workspace which returns the position
9429         of the upper left corner of the workspace area and goes along with
9430         the existing size-workspace property.
9431
9432         * dialog-msw.c:
9433         * dialog-msw.c (push_bufbyte_string_as_unicode):
9434         * dialog-msw.c (mswindows_popup_dialog_box):
9435         Added support for XEmacs-style accelerator specifications in
9436         button text.  Note: I didn't add support for this under X Windows,
9437         and somebody needs to do this.
9438
9439         * dialog.c:
9440         * dialog.c (Fpopup_dialog_box):
9441         Documented the support for accelerators that was just mentioned.
9442
9443         editfns.c (get_home_directory): Changed behavior under Windows
9444         when HOME not defined; former behavior was irretrievably broken.
9445
9446         * emacs.c:
9447         * emacs.c (main_1):
9448         * emacs.c (main):
9449         * minibuf.c (clear_echo_area_internal):
9450         * minibuf.c (echo_area_append):
9451         * print.c:
9452         * print.c (std_handle_out_external):
9453         * print.c (std_handle_out_va):
9454         * print.c (fatal):
9455         * print.c (write_string_to_stdio_stream):
9456         * print.c (output_string):
9457         * print.c (debug_print):
9458         * print.c (debug_backtrace):
9459         * print.c (debug_short_backtrace):
9460         Cleaned up the code that prints text to stdout so that this can be
9461         changed to output into a console window instead under MS Windows,
9462         as described above.
9463
9464         * eval.c:
9465         * eval.c (DEFEND_AGAINST_THROW_RECURSION):
9466         * eval.c (internal_catch):
9467         * eval.c (unwind_to_catch):
9468         * eval.c (throw_or_bomb_out):
9469         * eval.c (condition_case_1):
9470         * eval.c (signal_1):
9471         * eval.c (check_error_state_sanity):
9472         * eval.c (call_with_suspended_errors_1):
9473         * eval.c (call_with_suspended_errors):
9474         * eval.c (reinit_vars_of_eval):
9475         Added code to catch throw loops and check for a pesky bug that may
9476         be gone now.
9477
9478         * event-msw.c:
9479         * event-msw.c (key_needs_default_processing_p):
9480         * event-msw.c (mswindows_wnd_proc):
9481         * event-msw.c (mswindows_modifier_state):
9482         * event-msw.c (emacs_mswindows_quit_p):
9483         * event-msw.c (vars_of_event_mswindows):
9484         a) Added support for using the alt key to select menu items as is
9485         standard under MS Windows.  This is controlled using the variable
9486         menu-accelerator-enabled, just like under X Windows.  There is an
9487         option on the options menu to turn this support on.  I really
9488         think that it should be on by default under Windows, but I'm not
9489         going to make this change yet.
9490
9491         b)  Added support for dynamic display size changes under Windows.
9492
9493         * event-stream.c:
9494         * event-stream.c (maybe_echo_keys):
9495         * event-stream.c (Fnext_event):
9496         * event-stream.c (command_builder_find_leaf):
9497         * event-stream.c (lookup_command_event):
9498         * event-stream.c (execute_command_event):
9499         * event-stream.c (pre_command_hook):
9500         * event-stream.c (post_command_hook):
9501         * event-stream.c (syms_of_event_stream):
9502         * event-stream.c (vars_of_event_stream):
9503         * event-stream.c (complex_vars_of_event_stream):
9504         * events.h (struct command_builder):
9505
9506         a) Tried to clean up a little bit the horribly written x-specific
9507         accelerator code that crept into this file.  I moved this code
9508         into menubar-x.c where it belongs. I also needed to move the
9509         command builder structure into the file events.h because it is
9510         accessed directly by this accelerator code.  What I didn't do, but
9511         which should be done at some point, is to properly abstract this
9512         code using device methods instead of the kludgy way that it
9513         currently hooks into the event code.
9514
9515         b) Added the lisp variables this-command-properties and
9516         last-command- properties, which should be used to synchronize two
9517         adjacent commands in preference to playing games with the variable
9518         this-command, which is typically what happens.
9519
9520         c) Added some slightly nasty code to hook into the lisp support
9521         for shifted- motion-key selection.  This is actually necessary for
9522         somewhat complicated reasons, which are described in
9523         simple.el. (NB: I think the proper thing would be to have the code
9524         that calls the pre and post command hooks also call out to generic
9525         lisp functions in simple.el, where all built-in stuff could be
9526         added.  I will think about this more.)
9527
9528         * event-unixoid.c (poll_fds_for_input):
9529         * lread.c (readchar):
9530         * redisplay-tty.c (tty_clear_frame):
9531         * redisplay-x.c (x_get_gc):
9532         * signal.c (interrupt_signal):
9533         And a whole bunch of other files: fixed up places that printed
9534         directly to stderr to instead call the function stderr_out so that
9535         the changes I made under Windows work correctly.
9536
9537         * filemode.c (mode_string):
9538         Warning fixes.
9539
9540         * frame-msw.c:
9541         * frame-msw.c (mswindows_size_frame_internal):
9542         Fixed the computation of frame size and position to keep the frame
9543         within the workspace area, rather than within the physical
9544         dimensions of the screen, so that the frame doesn't overlap window
9545         manager decorations, such as the start menu and toolbar, typically
9546         at the bottom of the screen.
9547
9548         * frame.c (vars_of_frame):
9549         Changed the default frame title format under MS Windows to consist
9550         of buffername-XEmacs, which is standard under MS Windows.  I think
9551         it might be a good idea to change this everywhere because I think
9552         it is superior to the current frame title format, but this is the
9553         kind of change that is likely to cause some people to get annoyed,
9554         so I'm not making it.
9555
9556         * glyphs-eimage.c (png_instantiate): Fixed some compile warnings.
9557
9558         * gui-msw.c (mswindows_handle_gui_wm_command):
9559         Fixed compile warnings.
9560
9561         * gui-x.c:
9562         * gui-x.c (strdup_and_add_accel):
9563         * gui-x.c (button_item_to_widget_value):
9564         * gui-x.h:
9565         Added code to automatically put an accelerator onto the beginning
9566         of menu items that don't have one as is now the standard, and is
9567         described more later.  Also fixed things so that the menu item
9568         name can be an evaluated expression, again a new standard.
9569
9570         * gui.c:
9571         * gui.c (gui_item_add_keyval_pair):
9572         * gui.c (make_gui_item_from_keywords_internal):
9573         * gui.c (gui_add_item_keywords_to_plist):
9574         * gui.c (gui_item_accelerator):
9575         * gui.c (gui_name_accelerator):
9576         * gui.c (gui_item_included_p):
9577         * gui.c (gui_item_display_flush_left):
9578         * gui.c (gui_item_display_flush_right):
9579         * gui.c (parse_gui_item_tree_item):
9580         * gui.c (parse_gui_item_tree_children):
9581         * gui.c (parse_gui_item_tree_list):
9582         Mule-ized.  Cleanup.  GCPRO addition.
9583
9584         * line-number.c (buffer_line_number):
9585         * lisp.h:
9586         * lisp.h (EMACS_INT_MAX):
9587         Added the manifest constant EMACS_INT_MIN corresponding to the
9588         existing constant EMACS_INT_MAX.  This is partially to fix compile
9589         warnings under Windows, and partly for cleanliness.
9590
9591         * menubar-msw.c:
9592         * menubar-msw.c (REPLACE_ME_WITH_GLOBAL_VARIABLE_WHICH_CONTROLS_RIGHT_FLUSH):
9593         * menubar-msw.c (msw_translate_menu_or_dialog_item):
9594         * menubar-msw.c (displayable_menu_item):
9595         * menubar-msw.c (populate_menu_add_item):
9596         * menubar-msw.c (populate_or_checksum_helper):
9597         * menubar-msw.c (populate_menu):
9598         * menubar-msw.c (update_frame_menubar_maybe):
9599         * menubar-msw.c (prune_menubar):
9600         * menubar-msw.c (msw_char_is_accelerator):
9601         * menubar-msw.c (unsafe_handle_wm_initmenu_1):
9602         * menubar-msw.c (mswindows_handle_wm_command):
9603         * menubar-msw.c (mswindows_handle_wm_initmenupopup):
9604         * menubar-msw.c (mswindows_handle_wm_initmenu):
9605         * menubar-msw.c (mswindows_update_frame_menubars):
9606         * menubar-msw.c (mswindows_free_frame_menubars):
9607         * menubar-msw.c (mswindows_popup_menu):
9608         Fixed a bug in handling accelerators where an extra character
9609         would be displayed in the menu item.  Also generalized the
9610         function displayable_menu_item because it is now used by the
9611         dialog box code as well.  And finally, added code in the functions
9612         that create the menubar to extract a list of accelerators for the
9613         top level menubar, which is used in the event code to determine
9614         whether a particular alt-key combination should be used to invoke
9615         a menu item, or should be passed through to access the standard
9616         XEmacs keymap binding for this key combination.
9617
9618         Much needed GCPROing.
9619
9620         * menubar-x.c:
9621         * menubar-x.c (menu_item_descriptor_to_widget_value_1):
9622         * menubar-x.c (menu_item_descriptor_to_widget_value):
9623         * menubar-x.c (restore_in_menu_callback):
9624         * menubar-x.c (x_popup_menu):
9625         * menubar-x.c (menu_move_up):
9626         * menubar-x.c (menu_move_down):
9627         * menubar-x.c (menu_move_left):
9628         * menubar-x.c (menu_move_right):
9629         * menubar-x.c (menu_select_item):
9630         * menubar-x.c (command_builder_operate_menu_accelerator):
9631         * menubar-x.c (menu_accelerator_junk_on_error):
9632         * menubar-x.c (command_builder_find_menu_accelerator):
9633         * menubar-x.c (Faccelerate_menu):
9634         * menubar.h:
9635         Moved a whole bunch of code here that was previously in
9636         event-stream.c as described above.  There is also code connected
9637         to the new standard of adding an accelerator to the beginning of
9638         menu items that don't have one as described above and below.
9639
9640         * menubar.c:
9641         * menubar.c (menu_parse_submenu_keywords):
9642         * menubar.c (Fmenu_find_real_submenu):
9643         * menubar.c (Fnormalize_menu_item_name):
9644         * menubar.c (syms_of_menubar):
9645         * menubar.c (vars_of_menubar):
9646         * menubar.c (complex_vars_of_menubar):
9647
9648         a) Cleaned up a bunch of documentation and improved it.
9649
9650         b) XEmacs now automatically adds an accelerator onto the beginning
9651         of any menu items that don't have one.  I did this because there
9652         will inevitably be some menu items on the main menubar that don't
9653         have accelerators on them because the package that adds that
9654         particular menu item hasn't yet been fixed up to have accelerators
9655         in them and it looked rather strange to have some items with and
9656         some items without accelerators, especially since even in items
9657         without accelerators, you can, at least under windows, still
9658         access the item through an accelerator corresponding to the first
9659         character in the item's name.  If people don't like this behavior,
9660         I can add a variable to turn it off optionally, but I'm not sure
9661         this is a good idea because we really do need to have accelerators
9662         on all of the menu items, and if a package doesn't like the
9663         accelerators being put on the first character, then it should put
9664         the accelerators where they belong.
9665
9666         c) I made a behavior change, which is that the descriptor that
9667         specifies the text of the menu item, which formerly was just a
9668         string, can now also be an evaluated expression.  This makes this
9669         descriptor parallel with all of the others, which could also be
9670         evaluated expressions.  This also obviates the need for the
9671         keyword :label, which was previously listed in the documentation
9672         as unimplemented, and which was for the same purpose.
9673
9674         d) GCPROing.
9675
9676         * ntproc.c:
9677         * ntproc.c (new_child):
9678         * ntproc.c (sys_spawnve):
9679         * ntproc.c (find_child_console):
9680         * ntproc.c (sys_kill):
9681         Fixed compile warnings.  By the way, this file should really go
9682         away entirely, and this will happen as soon as Kirill makes his
9683         final round of process cleanups, which affect the function
9684         call-process.
9685
9686         * process-nt.c:
9687         * process-nt.c (struct nt_process_data):
9688         * process-nt.c (find_process_from_pid):
9689         * process-nt.c (send_signal_the_nt_way):
9690         * process-nt.c (enable_child_signals):
9691         * process-nt.c (find_child_console):
9692         * process-nt.c (send_signal_the_95_way):
9693         * process-nt.c (nt_finalize_process_data):
9694         * process-nt.c (ensure_console_window_exists):
9695         * process-nt.c (nt_create_process):
9696         * process-nt.c (nt_kill_child_process):
9697         * process-nt.c (nt_kill_process_by_pid):
9698         * process-nt.c (nt_open_network_stream):
9699         * process-nt.c (vars_of_process_nt):
9700         Copied over code from Emacs 20.5 to correctly send signals to sub-
9701         processes under Windows 95.  Also added code to automatically
9702         create and hide console window when a sub-process is created under
9703         Windows 95, which obviates the need for the separate runemacs.exe
9704         executable, and finally implemented some variables that were
9705         implemented in Emacs 20.5, but previously not in XEmacs.  These
9706         include mswindows- start-process-share-console and
9707         mswindows-start-process-inherit-error-mode. (Both of these only
9708         apply to Windows 95.)
9709
9710         * regex.c (regex_compile): Fixed a compile warning.
9711
9712         * select-msw.c:
9713         * select-msw.c (mswindows_own_selection):
9714         * select-msw.c (mswindows_get_foreign_selection):
9715         * select-msw.c (mswindows_disown_selection):
9716         * select-msw.c (console_type_create_select_mswindows):
9717         * select-msw.c (syms_of_select_mswindows):
9718         Cleaned up the file and implemented the device method
9719         selection_exists_p, which had accidentally been left out.  Also
9720         removed four lisp functions that were remnants from before the
9721         time when the selection code was properly device abstracted.
9722         These functions are no longer needed because there are generic
9723         equivalents, and because they were added recently and don't exist
9724         in FSF Emacs, I don't think there's any problem with just deleting
9725         them.
9726
9727         * sysdep.c:
9728         * sysdep.c (sys_subshell):
9729         Fixed a compile warning, although in this case there's probably
9730         something wrong with this code, and it ought to be looked into
9731         more thoroughly by somebody who understands it.
9732
9733         * window.c:
9734         * window.c (Fwindow_text_area_height):
9735         * window.c (Fwindow_width):
9736         * window.c (Fwindow_full_width):
9737         * window.c (Fwindow_pixel_width):
9738         * window.c (debug_print_window):
9739         * window.c (syms_of_window):
9740         Added functions window-text-area-height and window-full-width,
9741         which are functions for returning various width and height
9742         characteristics of a window. (One of these functions is necessary
9743         for making the file dialog box work correctly, and the other one
9744         was added for completeness.)  Also added a table to the
9745         documentation for window-height which describes the entire scheme
9746         for accessing width and height characteristics of a window.
9747
9748 2000-03-12  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
9749
9750         * nt.c (fstat): Added a comment for another problem with
9751         non-encapsulated [f]stat(), reported by Adrian Aichner
9752         <aichner@ecf.teradyne.com>.
9753
9754 2000-03-11  Andy Piper  <andy@xemacs.org>
9755
9756         * window.c (make_dummy_parent): initialize subwindow instance
9757         cache.
9758         (Fset_window_configuration): zero extent_modiff.
9759
9760 2000-03-10  Andy Piper  <andy@xemacs.org>
9761
9762         * redisplay.c (Fredraw_frame): reset the changed_set flags so that
9763         more changes can be triggered.
9764         (Fredisplay_frame): ditto.
9765         (Fredraw_device): ditto.
9766         (Fredisplay_device): ditto.
9767         (redisplay_frame): make non-static.
9768         (redisplay_frame): call update_frame_gutter_geometry outside of
9769         display proper.
9770
9771         * gutter.h: declare update_frame_gutter_geometry.
9772
9773         * redisplay.h: declare redisplay_frame.
9774
9775         * gutter.c (update_frame_gutter_geometry): move geometry changes
9776         in update_frame_gutters here. Geometry changes can only occur
9777         outside of redisplay.
9778         (update_frame_gutters): remove geometry change code.
9779         (Fredisplay_gutter_area): make sure that we are in display when we
9780         update and that we have flushed any size changes.
9781
9782 2000-03-11  Andy Piper  <andy@xemacs.org>
9783
9784         * alloc.c (pdump_dump_data): remove i & count shadows.
9785
9786 2000-02-27  Mike Alexander  <mta@arbortext.com>
9787
9788         * sysdep.h: Declare pdump_read_file
9789
9790         * sysdep.c (pdump_read_file): New function
9791
9792         * alloc.c (pdump_load): Call pdump_read_file to get the portable
9793         dump data
9794
9795 2000-03-10  SL Baur  <steve@musashimaru.m17n.org>
9796
9797         * lrecord.h: add `lrecord_type_pgsetenv'.
9798
9799 2000-03-08  SL Baur  <steve@musashimaru.m17n.org>
9800
9801         * symsinit.h: declare (vars|syms)_of* functions.
9802         * lrecord.h: add `lrecord_type_pgconn' and 'lrecord_type_pgresult'.
9803
9804 2000-03-06  SL Baur  <steve@musashimaru.m17n.org>
9805
9806         * config.h.in: Add symbols HAVE_POSTGRESQL and HAVE_POSTGRESQLV7
9807
9808         * inline.c: Include postgresql.h lrecord stuffs to placate buggy
9809         GCCs.
9810
9811         * emacs.c (main_1): Call postgres initialization code.
9812
9813         * postgresql.h: New file.  PostgreSQL RDBMS support.
9814         * postgresql.c: New file.
9815
9816 2000-03-08  Yoshiki Hayashi  <yoshiki@xemacs.org>
9817
9818         * redisplay-output.c (redisplay_output_display_block): Disable
9819         redundant code.
9820
9821 2000-03-09  Yoshiki Hayashi  <yoshiki@xemacs.org>
9822
9823         * mule-canna.c (Fcanna_henkan_region): Translate doc-string.
9824         (Fcanna_henkan_next): Ditto.
9825         (Fcanna_bunsetu_henkou): Ditto.
9826         (Fcanna_henkan_kakutei): Ditto.
9827         (Fcanna_henkan_end): Ditto.
9828         (Fcanna_henkan_quit): Ditto.
9829         (Fcanna_henkan_next): Set retun value correctly.
9830         (c2mu): Use unsigned char instead of signed char.
9831
9832 2000-03-09  Yoshiki Hayashi  <yoshiki@xemacs.org>
9833
9834         * emacs.c (main_1): Always call syms_of_gui.
9835         * inline.c: include gui.h
9836
9837 2000-03-09  Yoshiki Hayashi  <yoshiki@xemacs.org>
9838
9839         * redisplay.c (Vvisible_bell): Renamed from visible_bell and
9840         converted to Lisp_Object.
9841         (Qtop_bottom): New variable.
9842         (syms_of_redisplay): Initialize it.
9843         * redisplay.h (Vvisible_bell): Ditto.
9844         * sound.c (ding): Ditto and check if Vvisible_bell is nil.
9845         * redisplay-x.c (x_flash): When Vvisible_bell is top-bottom,
9846         only flash top and bottom.
9847
9848 2000-03-08  Andy Piper  <andy@xemacs.org>
9849
9850         * buffer.c (Frename_buffer): record new buffer name the right way.
9851
9852 2000-03-08  Andy Piper  <andy@xemacs.org>
9853
9854         * glyphs.c (update_subwindow): increase hash depth so that widget
9855         items get picked up properly.
9856
9857         * redisplay-output.c (compare_runes): increase hash depth so that
9858         widget items get picked up properly.
9859
9860 2000-03-08  Andy Piper  <andy@xemacs.org>
9861
9862         * gutter.c (output_gutter): add some debug.
9863
9864         * glyphs.h (struct Lisp_Image_Instance): add display_hash.
9865         (IMAGE_INSTANCE_DISPLAY_HASH): new macro.
9866         (XIMAGE_INSTANCE_DISPLAY_HASH): ditto.
9867
9868         * redisplay-output.c (compare_runes): use display_hash to
9869         determine if glyphs really are not the same.
9870
9871         * glyphs.c (update_subwindow): check display_hash to see if
9872         anything really needs to be updated. If not then do
9873         nothing. Record the display_hash after updating.
9874         (image_instance_equal): compare the image_instance face also.
9875
9876 2000-03-07  Yoshiki Hayashi  <yoshiki@xemacs.org>
9877
9878         * redisplay.h: Fix comment style.
9879
9880 2000-03-08  Jonathan Harris  <jhar@tardis.ed.ac.uk>
9881
9882         * consle-msw.h (struct mswindows_frame):
9883         Added new member paint_pending to indicate whether a WM_PAINT
9884         magic event has been queued for this frame.
9885
9886         * event-msw.c (mswindows_drain_windows_queue):
9887         Don't queue a WM_PAINT magic event if one is already queued.
9888         (emacs_mswindows_handle_magic_event): clear paint_pending flag.
9889
9890         * frame-msw.c (mswindows_init_frame_1): initialise paint_pending flag.
9891
9892 2000-03-07  Didier Verna  <didier@xemacs.org>
9893
9894         * dired.c: #include `regex.h' after `sysfile.h'.
9895
9896 2000-03-06  Martin Buchholz  <martin@xemacs.org>
9897
9898         * sound.c (init_nas_sound): Fix compiler warning.
9899
9900         * alloc.c (ALIASING_VOIDPP_DEREFERENCE): New.
9901         (FREE_STRUCT_P):
9902         (MARK_STRUCT_AS_FREE):
9903         (MARK_STRUCT_AS_NOT_FREE):
9904         Make `gcc -fstrict-aliasing' work properly.
9905
9906 2000-03-07  Jonathan Harris  <jhar@tardis.ed.ac.uk>
9907
9908         * device-msw.c (mswindows_finish_init_device): Call CoInitialize().
9909         (mswindows_delete_device): Call CoUnnitialize().
9910
9911         * event-msw.c (mswindows_wnd_proc): WM_DROPFILES: Decode Shortcuts.
9912
9913 2000-02-25    <CraigL@DyCon.com>
9914
9915         * process-nt.c: MinGW now has <shellapi.h>, but still needs
9916         <errno.h>.
9917
9918         * sysdep.c: This extern declaration for environ prevents MinGW
9919         from finding the variable in CRTDLL.DLL.
9920
9921         * s\mingw32.h (PBS_SMOOTH): Removed, now defined in cygwin's
9922         windows headers.
9923         (SHGFI_EXETYPE): ..
9924         (WM_MOUSEWHEEL): ..
9925         (_WIN32_IE): Added, needed to get the TCS_BOTTOM and TCS_VERTICAL
9926         definitions.
9927         (MMRESULT): Removed, now defined in cygwin's windows headers.
9928         (TIMECAPS): ..
9929         (uid_t,gid_t,pid_t,ssize_t): ..
9930         (_timeb): Removed, MinGW defines both _timeb and timeb.
9931         (HAVE_H_ERRNO): Added.
9932         (HAVE_TZNAME): Added, configure is not detecting this.
9933
9934 2000-02-03  IKEYAMA Tomonori <tomonori@suiyokai.org>
9935
9936         * chartab.h (XCHAR_TABLE_VALUE_UNSAFE): New macro.
9937         * syntax.c (syntax_match): Use it.
9938
9939         * cmds.c: Import auto-fill-chars from FSF Emacs.
9940         (Vauto_fill_chars): New variables.
9941         (internal_self_insert): Check Vauto_fill_chars.
9942         (vars_of_cmds):
9943         Declare auto-fill-chars as a Lisp variable and initialize it.
9944
9945 2000-03-05  Jonathan Harris  <jhar@tardis.ed.ac.uk>
9946
9947         * fileio.c (Fmake_symbolic_link):
9948         (Ffile_symlink_p):
9949         Run handlers even if local machine doesn't have symlinks.
9950
9951 2000-03-05  Jonathan Harris  <jhar@tardis.ed.ac.uk>
9952
9953         * event-msw.c (mswindows_drain_windows_queue):
9954         Don't generate paint magic events for non-XEmacs frames.
9955
9956 2000-03-05  Andy Piper  <andy@xemacs.org>
9957
9958         * redisplay.c (redisplay_frame): generate_displayable_area and
9959         friends assumes that we are not in GC, we therefore have to make
9960         sure that this doesn't happen.
9961
9962         * gutter.c (calculate_gutter_size): generate_displayable_area
9963         assumes that we are not in GC, we therefore have to make sure that
9964         this doesn't happen.
9965
9966 2000-03-05  Martin Buchholz  <martin@xemacs.org>
9967
9968         * opaque.c (DEFINE_LRECORD_IMPLEMENTATION): opaque_ptr ==> opaque-ptr
9969
9970 2000-03-03  Jan Vroonhof  <vroonhof@math.ethz.ch>
9971
9972         * redisplay.c (regenerate_window): Make sure we set a sane value
9973         for end_pos even if we jump out of the loop.
9974         (regenerate_window): Answer Ben's question :-).
9975         (start_end_of_last_line): Add may_error argument.
9976         (start_of_last_line):
9977         (end_of_last_line): Pass may_error = 0.
9978         (end_of_last_line_may_error): New function.
9979         (pixel_to_glyph_translation): Use it, so we don't crash in
9980         event_to_glyph.
9981
9982 2000-03-04  Andy Piper  <andy@xemacs.org>
9983
9984         * window.h (struct window): add gutter_extent_modiff.
9985
9986         * window.c (allocate_window): zero out gutter_extent_modiff.
9987
9988         * redisplay.h: declare sync_display_line_structs.
9989
9990         * redisplay.c (add_glyph_rune): add a better comment.
9991
9992         * redisplay-output.c (sync_display_line_structs): made non-static.
9993         (compare_runes): remove unneccesary glyph cachel access.
9994
9995         * gutter.h: declare gutter_extent_signal_changed_region_maybe.
9996
9997         * gutter.c (output_gutter): don't output the gutter if extent
9998         changes only involve extents in buffers. use 4 sets of display
9999         lines.
10000         (gutter_extent_signal_changed_region_maybe): new function. Mark
10001         extents in gutters as changed.
10002         (update_frame_gutters): use 4 sets of display lines.
10003         (reset_gutter_display_lines): ditto.
10004         (free_frame_gutters): ditto.
10005         (redraw_exposed_gutter): force output of gutters.
10006
10007         * frame.h (struct frame): add 4 sets of gutter display lines.
10008
10009         * extents.c: (extent_changed_for_redisplay): signal changes to
10010         extents in strings in the gutter as well as extents in buffers.
10011
10012 2000-03-02  Andy Piper  <andy@xemacs.org>
10013
10014         * gutter.c (specifier_vars_of_gutter): cosmetic changes.
10015
10016         * frame.c (Fmake_frame): make sure the gutters get initialized
10017         after the frame is visible.
10018         (set_frame_selected_window): re-arrange compilation macros a
10019         little.
10020         (change_frame_size_1): mark gutters changed.
10021
10022         * device.c (Fset_device_class): mark gutters changed.
10023
10024 2000-03-01  Andy Piper  <andy@xemacs.org>
10025
10026         * window.c (window_top_frame_gutter_height): deleted.
10027         (window_bottom_frame_gutter_height): ditto.
10028         (window_left_frame_gutter_height): ditto.
10029         (window_right_frame_gutter_height): ditto.
10030         (window_top_gutter_height): don't use them.
10031         (window_bottom_gutter_height): ditto.
10032         (window_left_gutter_width): ditto.
10033         (window_right_gutter_width): ditto.
10034         (Fsplit_window): ditto.
10035         (Fwindow_pixel_edges): don't use border dimensions here.
10036
10037         * scrollbar.c (update_scrollbar_instance): don't take gutters into account.
10038         (update_scrollbar_instance): ditto.
10039
10040         * redisplay.c (generate_modeline): don't take gutters into account.
10041         (generate_modeline): ditto.
10042         (redisplay_frame): small gutter display optimization.
10043
10044         * redisplay-x.c (x_output_vertical_divider): don't take gutters into account.
10045
10046         * redisplay-msw.c (mswindows_output_vertical_divider): don't take
10047         gutters into account.
10048
10049         * gutter.h (WINDOW_REAL_*_GUTTER_BOUNDS): remove bogus checks
10050         for window position and type.
10051
10052         * gutter.c (get_gutter_coords): fix for frame gutters.
10053         (update_frame_gutters): update frame geometry if the gutters have
10054         changed.
10055         (init_frame_gutters): record current gutter geometries.
10056
10057         * glyphs-msw.c (mswindows_subwindow_instantiate): remove unused
10058         var.
10059         (mswindows_widget_instantiate): ditto.
10060
10061         * frame.h (struct frame): add current_gutter_bounds.
10062
10063         * frame.c (change_frame_size_1): position window and minibuffer
10064         appropriately taking into account the frame gutters.
10065
10066         * frame-x.c: (x_initialize_frame_size): take into account the
10067         frame gutters.
10068
10069 2000-02-29  Stephen J. Turnbull  <stephen@xemacs.org>
10070
10071         * emacs.c (data-directory):  Xref `locate-data-file' in docstring.
10072
10073 2000-02-29  Stephen J. Turnbull  <stephen@xemacs.org>
10074
10075         * alloc.c (dumpopaquevec): Increase dimension for --with-canna.
10076
10077 1999-12-30  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
10078
10079         * file-coding.c (reset_decoding_stream): Clear previous
10080         detection state when autodetect.
10081
10082 2000-02-29  Didier Verna  <didier@xemacs.org>
10083
10084         * extents.c (set_extent_glyph_1): don't require extents to be
10085         attached.
10086
10087 2000-02-27  Andy Piper  <andy@xemacs.org>
10088
10089         * gutter.c (Fset_default_gutter_position): don't default left and
10090         right gutter visibility to t.
10091         (Fset_default_gutter_position): run
10092         default-gutter-position-changed-hook.
10093         (syms_of_gutter): add default-gutter-position-changed-hook.
10094
10095 2000-02-26  Andy Piper  <andy@xemacs.org>
10096
10097         * specifier.c (Fmake_specifier): add gutter references.
10098
10099         * gutter.h (RAW_WINDOW_GUTTER): new macro.
10100
10101         * lisp.h: declare Fvalid_plist_p.
10102
10103         * gutter.c (gutter_geometry_changed_in_window): mark the modeline
10104         as changed.
10105         (default_gutter_visible_p_changed_in_window): invalidate gutter as
10106         well as its visibility so that it gets reconstructed.
10107         (construct_window_gutter_spec): new function. Construct a string
10108         to be displayed in the gutter from a plist of strings. Take care
10109         to only use elements that are declared as visible.
10110         (calculate_gutter_size): use RAW_WINDOW_GUTTER instead of
10111         WINDOW_GUTTER.
10112         (gutter_validate): allow plists of strings in the specifier.
10113         (gutter_specs_changed): construct the real_gutter from the gutter
10114         specs using construct_window_gutter_spec.
10115         (gutter_visible_validate): gutter-visible is a new specifier type.
10116         (Fgutter_visible_specifier_p): new function for the new specifier.
10117         (syms_of_gutter): declare gutter-visible and
10118         Fgutter_visible_specifier_p.
10119         (specifier_type_create_gutter): intitalize new gutter-visible
10120         specifier.
10121         (reinit_specifier_type_create_gutter): ditto.
10122         (specifier_vars_of_gutter): use new specifier type for gutter
10123         visibility.
10124         (init_frame_gutters): construct real_gutter correctly.
10125         (Fgutter_specifier_p): beef up documentation.
10126         (Fgutter_size_specifier_p): ditto.
10127
10128         * winslots.h: add real_gutter slots.
10129
10130 2000-02-25  Andy Piper  <andy@xemacs.org>
10131
10132         * device-msw.c: Be kind to older cygwin versions. From Raymond
10133         Toy <toy@rtp.ericsson.se>.
10134
10135         * gui-msw.c (Fmswindows_shell_execute): Remove things unknown to
10136         earlier cygwins. From Raymond Toy <toy@rtp.ericsson.se>.
10137
10138 2000-02-25  Martin Buchholz  <martin@xemacs.org>
10139
10140         * elhash.c (MARK_OBJ): Practice macro hygiene.
10141
10142 2000-02-24  Martin Buchholz  <martin@xemacs.org>
10143
10144         * miscplay.c: s/__inline__/inline/g;
10145         * glyphs-msw.c (set_mono_pixel): INLINE ==> static inline
10146         (get_device_compdc): INLINE ==> static inline
10147         * *.[ch]: Change INLINE to INLINE_HEADER globally.
10148         find -name '*.h' | \
10149         xargs global-replace \
10150         's/(^|(?<=[^A-Za-z0-9_]))INLINE((?=[^A-Za-z0-9_])|$)/INLINE_HEADER/g'
10151
10152 2000-02-25  Andy Piper  <andy@xemacs.org>
10153
10154         * window.c (window_top_frame_gutter_height): new function.
10155         (window_top_window_gutter_height): ditto.
10156         (window_top_gutter_height): use them.
10157         (window_bottom_frame_gutter_height): new function.
10158         (window_bottom_window_gutter_height): ditto.
10159         (window_bottom_gutter_height): use them.
10160         (window_left_window_gutter_width): new function.
10161         (window_left_frame_gutter_width): ditto.
10162         (window_left_gutter_width): use them.
10163         (window_right_window_gutter_width): new function.
10164         (window_right_frame_gutter_width): ditto.
10165         (window_right_gutter_width): use them.
10166         (window_pixel_height): new function. calulate window pixel height
10167         with frame gutter involvement.
10168         (Fsplit_window): calculate new sizes taking frame gutters into
10169         account.
10170         (window_char_height_to_pixel_height): don't include frame gutters.
10171         (window_char_height): use window_pixel_height.
10172         (window_pixheight): rename from window_pixel_height.
10173         (change_window_height): use it.
10174         (window_pixel_height_to_char_height): don't include frame gutters.
10175         (window_char_width_to_pixel_width): ditto.
10176
10177 2000-02-25  Andy Piper  <andy@xemacs.org>
10178
10179         * glyphs.h (IMAGE_INSTANCE_FACE): glyph might be nil, don't crash
10180         if it is.
10181
10182 2000-02-24  Martin Buchholz  <martin@xemacs.org>
10183
10184         * alloc.c (staticpro):
10185         (staticpro_nodump):
10186         (dumpstruct):
10187         (dumpopaque):
10188         (pdump_wire):
10189         (pdump_wire_list):
10190         (compact_string_chars):
10191         (pdump_dump_wired):
10192         Convert:  if (foo) abort();  ==>  assert (! foo);
10193
10194         * eldap.c (Fldap_search_basic):
10195         (Fldap_add):
10196         (Fldap_modify):
10197         (Fldap_delete):
10198         Fix compiler warnings, and possible crashes if (random) return
10199         value were to be used.
10200
10201 2000-02-21  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
10202
10203         * device-msw.c: Workaround ResetDC failure.
10204
10205         * frame-msw.c (msprinter_init_frame_3): Added an assertion before
10206         applying a devmode.
10207
10208         * redisplay-msw.c (get_frame_dc): Added start_page_p.
10209         (mswindows_text_width): Do not start printer page.
10210
10211         * console-msw.h (CHECK_MSGDI_DEVICE): Added this and friends.
10212
10213         * glyphs-msw.c: Added image methods to msprinter console and
10214         msprinter-specific image instantiation.
10215
10216 2000-02-20  Mike Alexander  <mta@arbortext.com>
10217
10218         * select-msw.c (Fmswindows_set_clipboard): GC protect more things
10219         to avoid crashes when selection-sets-clipboard is on
10220         (mswindows_own_selection): ditto
10221
10222 2000-02-19  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
10223
10224         * glyphs-msw.c:
10225         * redisplay-msw.c (get_frame_dc):
10226         (get_frame_compdc):
10227         * console-msw.h:
10228         * device-msw.c (mswindows_init_device):
10229         (mswindows_delete_device):
10230         (msprinter_init_device):
10231         (msprinter_delete_device):
10232         * frame-msw.c (mswindows_init_frame_1):
10233         (mswindows_delete_frame):
10234         (msprinter_init_frame_3):
10235         (msprinter_delete_frame): Move compatible DC to device object from
10236         frame object, for both mswindows and msprinter. Only one at a time
10237         is needed, it is a real waste to have one per frame!
10238
10239 2000-02-23  Andy Piper  <andy@xemacs.org>
10240
10241         * glyphs.c: add dynamic width and height elements.
10242         (image_instance_equal): ditto.
10243
10244         * glyphs-widget.c (widget_query_geometry): calculate width and
10245         height dynamically if required.
10246         (initialize_widget_image_instance): initialize dynamic dimensions.
10247         (widget_instantiate): pick-up dynamic dimensions.
10248
10249         * glyphs.h (struct Lisp_Image_Instance): add width and height for
10250         dynamic determination. Add appropriate macros.
10251
10252         * gutter.h (WINDOW_GUTTER_BORDER_WIDTH): make non-integer
10253         dimensions safe.
10254         (WINDOW_GUTTER_SIZE): ditto.
10255         (WINDOW_GUTTER_SIZE_INTERNAL): ditto.
10256
10257         * redisplay-msw.c (get_frame_compdc): gcc can't cope with this
10258         inline.
10259         (get_frame_dc): ditto.
10260
10261         * redisplay.h (GLOBAL_RESET_CHANGED_FLAGS): don't reset faces
10262         here.
10263
10264 2000-02-23  Martin Buchholz <martin@xemacs.org>
10265
10266         * XEmacs 21.2.31 is released.
10267
10268 2000-02-22  Ben Wing <ben@xemacs.org>
10269
10270         * ntheap.c (allocate_heap): Make sure `ptr' is initialized.
10271
10272 2000-02-22  Andy Piper  <andy@xemacs.org>
10273
10274         * glyphs-x.c (x_widget_instantiate): don't explicitly resize here.
10275
10276 2000-02-21  Mike Sperber <mike@xemacs.org>
10277
10278         * .dbxrc:
10279         * .gdbinit:
10280         * Makefile.in.in: Remove obsolete EMACSBOOTSTRAP... environment
10281         variables.
10282
10283 2000-02-21  Mike Sperber <mike@xemacs.org>
10284
10285         * s/aix4.h: Declare getaddrinfo broken for AIX 4, which it is.
10286
10287 2000-02-21  Martin Buchholz <martin@xemacs.org>
10288
10289         * XEmacs 21.2.30 is released.
10290
10291 2000-02-20  Martin Buchholz  <martin@xemacs.org>
10292
10293         Performance hacking.
10294         * *.c (syms_of_*):
10295         Add INIT_LRECORD_IMPLEMENTATION macros, paired with
10296         DEFINE_LRECORD_IMPLEMENTATION macros in the same file.
10297         * emacs.c (main_1):
10298         * lisp.h (DEFUN):
10299         * console.c (DEFVAR_CONSOLE_LOCAL_1):
10300         * buffer.c (DEFVAR_BUFFER_LOCAL_1):
10301         * symeval.h (DEFVAR_SYMVAL_FWD):
10302         * symbols.c (guts_of_unbound_marker):
10303         Make all c_readonly objects also lisp_readonly and marked for life.
10304         * lrecord.h (struct lrecord_implementation):
10305         Document flags better.
10306         * lrecord.h (DEFINE_LRECORD_SEQUENCE_IMPLEMENTATION_WITH_PROPS):
10307         * lrecord.h (DECLARE_LRECORD):
10308         * lrecord.h (XSETRECORD):
10309         * lrecord.h (RECORDP):
10310         * lrecord.h (RECORD_TYPEP):
10311         * lrecord.h (RECORD_MARKER): New.
10312         * lrecord.h (error_check_*):
10313         * lrecord.h (CONCHECK_NONRECORD):
10314         * lrecord.h (MAKE_LRECORD_IMPLEMENTATION):
10315         * lrecord.h (INIT_LRECORD_IMPLEMENTATION): New.
10316         * lrecord.h (set_lheader_implementation):
10317         * lrecord.h (enum lrecord_type): New.
10318         * symeval.h (SYMBOL_VALUE_MAGIC_P):
10319         * alloc.c (disksave_object_finalization_1):
10320         * alloc.c (mark_object):
10321         * alloc.c (lrecord_type_index):
10322         * alloc.c (tick_lcrecord_stats):
10323         * alloc.c (Fgarbage_collect):
10324         * alloc.c (init_alloc_once_early):
10325         * alloc.c (pdump_load):
10326         * alloc.c (GC_CHECK_LHEADER_INVARIANTS): New.
10327         * alloc.c (lrecord_type_index): Delete.
10328         Make lisp object type indexes be constant.
10329           Makes (byte-compile) 5% faster.
10330         Put all marker functions into their own array.
10331           Makes (garbage-collect) 5% faster.
10332         Optimize SYMBOL_VALUE_MAGIC_P.
10333           Makes (byte-compile) 2-3% faster.
10334         * config.h.in (gc_checking_assert): New.
10335         * alloc.c: Use gc_checking_assert().
10336         * .dbxrc: Make compatible with new object type implementation.
10337         * .gdbinit: Make compatible with new object type implementation.
10338         * alloc.c: Delete all symbols defined only for debugging, such as
10339         Lisp_Type_Vector and lrecord_charset.
10340
10341 2000-02-21  Andy Piper  <andy@xemacs.org>
10342
10343         * gui-msw.c (Fmswindows_shell_execute): fix file location
10344         problems.
10345
10346         * buffer.c (Fkill_buffer): remove buffer from alist buffer
10347         unshowing so that set_window_buffer doesn't undo
10348         kill_buffer_hook's hard work.
10349
10350         * glyphs-widget.c (tab_control_query_geometry): don't count the
10351         first item when calculating geometry.
10352
10353         * glyphs.c (map_subwindow): remove redundant code.
10354         (update_frame_subwindows): be more circumspect about when to
10355         update subwindows.
10356
10357         * glyphs-x.c (x_update_widget): Properly fix sizing bug. Fix bug
10358         when items haven't changed. Update faces if faces have changed as
10359         well as just the widget face.
10360         (x_tab_control_update): Update faces if faces have changed as well
10361         as just the widget face.
10362
10363 2000-02-21  Jonathan Harris  <jhar@tardis.ed.ac.uk>
10364
10365         * device-msw.c: (mswindows_delete_device): Remove redundant DDE
10366         registration.
10367         (build_syscolor_string): Use mswindows_color_to_string to try to
10368         get a named color.
10369         (mswindows_device_system_metrics): Reverse the foreground and
10370         background colors so that they match the documentation.
10371
10372         * objects-msw.c: (mswindows_X_color_map): tweak some values so
10373         they match the default Windows palette.
10374         (mswindows_color_to_string): New function.
10375
10376 2000-02-21  Jonathan Harris  <jhar@tardis.ed.ac.uk>
10377
10378         * s/windowsnt.h: Only use __declspec(noreturn) with MSVC>=6.
10379
10380 2000-02-18  Olivier Galibert  <galibert@pobox.com>
10381
10382         * m/*, s/*: Removed obsolete DATA_SEG_BITS, PURE_SEG_BITS,
10383         WORD_MACHINE, SIGN_EXTEND_CHAR and EXPLICIT_SIGN_EXTEND.
10384
10385         * symbols.c (init_symbols_once_early): Removed obsolete
10386         DATA_SEG_BITS related kludge.
10387         (defvar_magic): Ditto.
10388
10389         * malloc.c: Removed obsolete DATA_SEG_BITS
10390         * ralloc.c: Ditto.
10391         * mem-limits.h: Ditto.
10392
10393         * Makefile.in.in: Removed obsolete HAVE_SHM
10394         * emacs.c: Ditto.
10395
10396 2000-02-13  Jonathan Harris  <jhar@tardis.ed.ac.uk>
10397
10398         *  device-msw.c (mswindows_delete_device): Free DDE string
10399         handles.
10400
10401 2000-02-16  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
10402
10403         * keymap.c (get_keyelt):
10404         * unexnt.c (unexec):
10405         * vm-limit.c (memory_warnings):
10406         * ntheap.c (recreate_heap):
10407         * ntheap.h (UNINIT_PTR):
10408         * select-msw.c (Fmswindows_get_clipboard):
10409         (Fmswindows_set_clipboard):
10410         * objects-msw.h (MSWINDOWS_BAD_HFONT):
10411         * objects-msw.c:
10412         * menubar-msw.c (displayable_menu_item):
10413         * glyphs-msw.c:
10414         * glyphs-msw.h (IMAGE_INSTANCE_MSWINDOWS_MASK):
10415         * sysdep.c (sys_subshell):
10416         * process-nt.c (nt_create_process):
10417         * nt.c (normalize_filename):
10418         (dostounix_filename):
10419         (unixtodos_filename):
10420         * ntproc.c (win32_executable_type):
10421         * ntplay.c (play_sound_data_1):
10422         (play_sound_file):
10423         * editfns.c (get_home_directory):
10424         * event-msw.c (struct winsock_stream):
10425         (mswindows_dde_callback):
10426         * device-msw.c (msprinter_init_device):
10427         (msprinter_get_devmode_copy): Frobbed syntax frivolities.
10428
10429         * toolbar-msw.c (mswindows_free_frame_toolbars): Paramters to
10430         mswindows_clear_toolbar were swapped!
10431
10432         * objects-msw.c:(colormap_t):
10433         (fontmap_t):
10434         * emacs.c (struct standard_args): Fixed const jumble.
10435
10436         * glyphs-widget.c (update_widget): Fixed comparison notation.
10437
10438         * event-msw.c (mswindows_dde_callback): Removed extraneous ';'.
10439
10440         * s\windowsnt.h (DOESNT_RETURN): Defined to support the MSVC
10441         __declspec(noreturn) syntax.
10442
10443 2000-02-19  Martin Buchholz  <martin@xemacs.org>
10444
10445         * eldap.c (Fldap_open):
10446         (Fldap_search_basic):
10447         (Fldap_add):
10448         (Fldap_modify):
10449         Use new coding system conversion macros.
10450
10451 2000-01-06  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
10452
10453         * console-tty.c (tty_init_console): Change MULE to FILE_CODING.
10454
10455 1999-11-27  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
10456
10457         * eldap.h (Fldap_search) Renamed from Fldap_search_internal:
10458         (Fldap_add, Fldap_modify, Fldap_delete): New functions
10459
10460         * eldap.c (Qadd, Qreplace): New constant symbols
10461         (Fldap_open): Use the LDAP_OPT_RESTART option to avoid
10462         interruptions by XEmacs signals
10463         Remove unnecessary calls to slow_down_interrupts and
10464         speed_up_interrupts
10465         (Fldap_search_basic): Renamed from Fldap_search_internal
10466         Added new optional parameter VERBOSE that triggers the
10467         display of progress messages
10468         Remove unnecessary calls to slow_down_interrupts and
10469         speed_up_interrupts
10470         LDAP result code analysis rewritten
10471         (Fldap_add, Fldap_modify, Fldap_delete): New functions
10472         (syms_of_eldap): Define the new symbols and functions
10473
10474
10475 2000-02-17  Martin Buchholz  <martin@xemacs.org>
10476
10477         * realpath.c: Determine PATH_MAX maximally portably.
10478
10479         * insdel.c (bytecount_to_charcount): Optimize.
10480         The function used to be optimized for entirely ASCII sequences.
10481         Now it is optimized for successive characters from the same
10482         charset.  This also wins big for _mostly_ ASCII sequences.
10483
10484         * fileio.c (Ffile_truename): convert return from realpath() using
10485         Qfile_name, not Qbinary.  Fixes obvious bug with non-ASCII symlinks.
10486         - Rewrite GCPROing slightly.
10487
10488         * sysdep.c (sys_open): Do filename conversion, like all other
10489         sys_* functions.  Fixes bug:
10490         (let ((file-name-coding-system 'iso-8859-2))
10491            (write-region x y latin2-name))
10492         ==> writes filename using internal encoding.
10493
10494 2000-02-18  Martin Buchholz  <martin@xemacs.org>
10495
10496         * buffer.c (DEFVAR_BUFFER_LOCAL_1): Turn on c_readonly. Always const.
10497         * console.c (DEFVAR_CONSOLE_LOCAL_1): Turn on c_readonly. Always const.
10498         * symeval.h (DEFVAR_SYMVAL_FWD): Turn on c_readonly. Always const.
10499         * eval.c (lrecord_subr): Remove this_one_is_unmarkable.
10500         * symbols.c (lrecord_symbol_value_forward): Remove this_one_is_unmarkable.
10501         * symbols.c (guts_of_unbound_marker): Turn on c_readonly.
10502         * lrecord.h (UNMARKABLE_LRECORD_HEADER_P): Delete.
10503         (CONST_IF_NOT_DEBUG): Delete.
10504         * alloc.c (this_one_is_unmarkable): Delete.
10505         (mark_object): Don't check for this_one_is_unmarkable. Use the
10506         c_readonly flag instead.
10507         * lisp.h (DEFUN): Define a Lisp_Subr as c_readonly.
10508
10509 2000-02-18  Jonathan Harris  <jhar@tardis.ed.ac.uk>
10510
10511         * event-msw.c (mswindows_drain_windows_queue):
10512         (emacs_mswindows_handle_magic_event): Remove attempt to optimise
10513         away redundant repaint events.
10514
10515 2000-02-17  Andy Piper  <andy@xemacs.org>
10516
10517         * redisplay.h: declare mark_redisplay_structs.
10518
10519         * redisplay.c (redisplay_window):
10520         (redisplay_frame): don't check subwindows_state_changed.
10521         (mark_redisplay): mark gutters here.
10522
10523         * glyphs.c: (instantiate_image_instantiator): always layout if we
10524         haven't done so already.
10525         (allocate_image_instance): don't mark as dirty.
10526         (update_subwindow): bind inhibit_quit.
10527
10528         * gutter.c (mark_gutters): new function.
10529
10530         * glyphs-x.c (x_update_widget): Always resize to get round a
10531         widget bug.
10532
10533         * glyphs-msw.c (mswindows_tab_control_update): remove `;' that was
10534         breaking absolutely everything.
10535
10536         * gutter.h: declare mark_gutters.
10537
10538 2000-02-16  Martin Buchholz <martin@xemacs.org>
10539
10540         * XEmacs 21.2.29 is released.
10541
10542 2000-02-15  Olivier Galibert  <galibert@pobox.com>
10543
10544         * fns.c (size_bit_vector): Fix computation of the size.
10545
10546 2000-02-15  Martin Buchholz  <martin@xemacs.org>
10547
10548         * *.[ch]: Change CONST to const globally.
10549         find -name '*.[ch]' | \
10550         xargs global-replace \
10551         's/(^|(?<=[^A-Za-z0-9_]))CONST((?=[^A-Za-z0-9_])|$)/const/g'
10552         - Remove vestigial references to CONST_IS_LOSING
10553
10554 2000-02-13  Jonathan Harris  <jhar@tardis.ed.ac.uk>
10555
10556         * event-msw.c (mswindows_drain_windows_queue): Remove hack to
10557         bailout early on quit. Enqueue WM_PAINT events as XEmacs magic
10558         events instead of dispatching them directly.
10559         (mswindows_handle_paint): New function to do repainting.
10560         (mswindows_wnd_proc):
10561         (emacs_mswindows_handle_magic_event): Call above function.
10562
10563 2000-02-13  Jonathan Harris  <jhar@tardis.ed.ac.uk>
10564
10565         * objects-msw.c (mswindows_create_font_variant): Return the new
10566         font handle.
10567         (initialize_font_instance): Get font metrics from the underlined
10568         variant of the font to cope with the case where the underlined
10569         font has a bigger descent.
10570
10571 2000-02-08   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
10572
10573         * gui.c (gui_item_accelerator): Return the first underlined
10574         character in item name.
10575
10576 2000-02-11  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
10577
10578         * lisp.h: Added Qprinter.
10579
10580         * general.c (syms_of_general): Initialized it.
10581
10582         * redisplay-msw.c (get_frame_dc): Conditionally start a new page.
10583         (get_frame_dc):
10584         (get_frame_compdc): Made inline.
10585
10586         * console.h (struct console_methods): Added eject_page method.
10587
10588         * frame.h: Added FRAME_DISPLAY_P and friends.
10589         Aligned backslahes in many macros in more readable fashion.
10590         Added page_number to struct frame, and an accessor macro
10591         for it.
10592
10593         * defice.h: Added DEVICE_DISPLAY_P and friends.
10594
10595         * device.c (Fdevice_printer_p): Used these.
10596
10597         * frame.c (allocate_frame_core): Initialize page number.
10598         (Fprint_job_page_number):
10599         (Fprint_job_eject_page): Implemented.
10600
10601         * frame-msw.c (msprinter_eject_page): Added method.
10602         (msprinter_start_page): Added.
10603
10604         * window.c (Fwindow_truncated_p): Fixed docstring.
10605         (Fwindow_last_line_visible_height): Implemented.
10606
10607 2000-02-09  Yoshiki Hayashi  <yoshiki@xemacs.org>
10608
10609         * frame.c (change_frame_size_1): Undo 2000-02-03 change.
10610
10611 1999-12-20  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
10612
10613         * syntax.c (scan_words): Always advance at least one character.
10614
10615 2000-02-13  Andy Piper  <andy@xemacs.org>
10616
10617         * redisplay.c (add_glyph_rune): call get_glyph_cachel_index here
10618         to make sure the glyph is in the cachels.
10619
10620         * glyphs.h (struct Lisp_Image_Instance): make layout_changed a
10621         global image instance flag.
10622         (IMAGE_INSTANCE_NEEDS_LAYOUT): new macro.
10623         (XIMAGE_INSTANCE_NEEDS_LAYOUT): ditto.
10624
10625         * glyphs.c (allocate_image_instance): set dirty bits correctly.
10626         (Fset_image_instance_property): mark layout as changed.
10627         (invalidate_glyph_geometry_maybe): mark layout as changed.
10628         (glyph_width): use new NEEDS_LAYOUT macro.
10629         (glyph_ascent): ditto.
10630         (glyph_descent): ditto.
10631         (glyph_height): ditto.
10632         (image_instance_layout): mark layout as clean after laying out.
10633         (update_subwindow): don't mark layout as clean here.
10634
10635         * glyphs-x.h (IMAGE_INSTANCE_X_WIDGET_ID): undo C++ changes, they
10636         should no longer be needed.
10637
10638         * glyphs-x.c (x_update_widget): sanitize asserts.
10639         (x_finalize_image_instance): sanitize assignment to widgets.
10640
10641         * glyphs-widget.c (widget_instantiate): don't need to clear the
10642         layout flag here.
10643
10644 2000-02-13  Martin Buchholz  <martin@xemacs.org>
10645
10646         * sysdep.c (getcwd): Use standard prototype.
10647         * sysdep.h (getcwd): Use standard prototype.
10648
10649         * fns.c (Fsubseq): Change parameters to more natural ANSI Lisp
10650         (sequence, start, end).
10651         Remove redundant type checking.
10652         (Fmapconcat): Remove useless GCPRO, a wrong-headed attempt (in
10653         view of `caller-protects') to avoid a crash where the real fix was
10654         found elsewhere.
10655
10656 2000-02-12  Martin Buchholz  <martin@xemacs.org>
10657
10658         * glyphs-x.c (x_finalize_image_instance): Compile error fixes.
10659
10660         * s/sol2.h: Remove feature macro initialization.
10661
10662         * alloc.c (alloc_lcrecord): Add more type checking assertions.
10663         (vector_hash): New.  Code from internal_hash.
10664         * lrecord.h:
10665         Fix up allocation subsystem comments.
10666
10667         * config.h.in: Add __EXTENSIONS__ for Solaris.
10668
10669         * systime.h (EMACS_GETTIMEOFDAY): New.
10670         (EMACS_GET_TIME): Use EMACS_GETTIMEOFDAY.
10671         Remove Solaris-specific code.
10672         Use void* for the (ignored) second arg for gettimeofday().
10673
10674         * elhash.c (hash_table_hash): Implement it, finally.
10675         * elhash.c:  Use hashcode_t.
10676
10677         * linuxplay.c (sighandler): Fix prototypes to use SIGTYPE.
10678         * sunplay.c (sighandler): Fix prototype to use SIGTYPE.
10679
10680         * lisp.h (STRETCHY_STRUCT_SIZEOF): Delete.
10681         * fns.c (size_bit_vector):
10682         * alloc.c (size_vector):
10683         (make_vector_internal):
10684         (make_bit_vector_internal):
10685         (sweep_bit_vectors_1):
10686         Replace calls to STRETCHY_STRUCT_SIZEOF with offsetof expression.
10687
10688 2000-02-10  Martin Buchholz  <martin@xemacs.org>
10689
10690         * s/aix4.h: #define MAP_FAILED if sys/mman.h didn't.
10691         Include strings.h to avoid warnings for bzero and strcasecmp.
10692
10693 2000-02-10  Olivier Galibert  <galibert@pobox.com>
10694
10695         * alloc.c: Move STRETCHY_STRUCT_SIZEOF from here...
10696         * lisp.h (STRETCHY_STRUCT_SIZEOF): ...to here
10697
10698         * fns.c (size_bit_vector): New.  Declare bit vectors as a
10699         sequence.
10700
10701 2000-02-10  Olivier Galibert  <galibert@pobox.com>
10702
10703         * symeval.h (struct symbol_value_magic): Remove "next" kludge and
10704         use a value field instead.
10705         (symbol_value_forward_forward): Use value field.
10706         (DEFVAR_SYMVAL_FWD): Use value field.
10707         (DEFVAR_SYMVAL_FWD_INT): Added.  Dumps the int with dumpopaque.
10708         (DEFVAR_INT): Use DEFVAR_SYMVAL_FWD_INT.
10709         (DEFVAR_CONST_INT): Ditto.
10710         (DEFVAR_BOOL): Ditto.
10711         (DEFVAR_CONST_BOOL): Ditto.
10712         (DEFVAR_INT_MAGIC): Ditto.
10713         (DEFVAR_BOOL_MAGIC): Ditto.
10714
10715         * symbols.c (guts_of_unbound_marker): Use value field.
10716         * console.c (DEFVAR_CONSOLE_LOCAL_1): Ditto.
10717         * buffer.c (DEFVAR_BUFFER_LOCAL_1): Ditto.
10718
10719         * lisp.h: Declare dumpopaque and noninteractive1.
10720
10721         * alloc.c (dumpopaque): Added.
10722         (pdump_dump_opaquevec): Added.
10723         (pdump): Call pdump_dump_opaquevec to dump opaque data.
10724         (pdump_load): Reload opaque data.  Sync noninteractive1 with
10725         noninteractive.
10726
10727 2000-02-10  Andy Piper  <andy@xemacs.org>
10728
10729         * glyphs.c (image_instance_layout): if the size changes, mark it
10730         as such.
10731
10732         * redisplay-output.c (redisplay_output_layout): Update the
10733         subwindow here.
10734         (redisplay_output_subwindow): ditto.
10735
10736         * glyphs.c (update_subwindow): make sure we reset flags for
10737         layouts as well as everything else.
10738
10739         * glyphs-widget.c (layout_layout): don't need to set the instances
10740         dimensions here.
10741
10742 2000-02-09  Martin Buchholz  <martin@xemacs.org>
10743
10744         * device-x.c (x_init_device): Wrap calls to dll_*  in HAVE_SHLIB,
10745         not HAVE_DLOPEN, which is a lower-level thing.
10746
10747         * .cvsignore: Ignore gmon.out
10748
10749 2000-02-09  Hamish Macdonald <hamishm@lucent.com>
10750
10751         * .cvsignore: Ignore portable dumper xemacs.dmp file
10752
10753 2000-02-09  Andy Piper  <andy@xemacs.org>
10754
10755         * redisplay-output.c (redisplay_output_layout): be more clever
10756         about when we output based on the changed flags.
10757
10758         * glyphs.h (struct image_instantiator_methods): add update_method.
10759         (struct Lisp_Image_Instance): add changed flags. Declare new
10760         macros for manipulating them.
10761
10762         * glyphs.c (allocate_image_instance): renamed glyph -> parent.
10763         (image_instance_parent_glyph): find an image_instance's parent
10764         glyph or image_instance.
10765         (image_instance_layout): mark the size as changed.
10766         (set_image_instance_dirty_p): new function. mark an image
10767         instance, plus all of its parents, as dirty.
10768         (Fset_image_instance_property): use it.
10769         (Fglyph_animated_timeout_handler): use it.
10770         (update_subwindow): call update_widget and device methods for
10771         update_subwindow. Mark all changed flags as clean.
10772         (Fresize_subwindow): mark size as changed.
10773
10774         * glyphs-x.c (x_finalize_image_instance): try and detect gc
10775         failures.
10776         (x_update_subwindow): only resize subwindows here.
10777         (x_update_widget): new function. Update all changed properties of
10778         a widget.
10779         (x_resize_subwindow): deleted.
10780         (x_widget_set_property): deleted.
10781         (x_progress_gauge_set_property): deleted.
10782         (x_progress_gauge_update): new function. Implement recorded
10783         changes.
10784         (x_tab_control_update): ditto.
10785         (x_tab_control_set_property): deleted.
10786         (console_type_create_glyphs_x): declare new functions.
10787         (image_instantiator_format_create_glyphs_x): ditto.
10788
10789         * glyphs-widget.c (widget_set_property): mark text changed.
10790         (update_widget): new function. Update properties of a widget.
10791         (widget_instantiate): for layouts make sure we set their
10792         children's parent correctly.
10793         (tab_control_set_property): new function. Record changes that will
10794         take place under redisplay's control.
10795         (progress_gauge_set_property): ditto.
10796         (image_instantiator_progress_guage): declare new functions.
10797         (image_instantiator_tab_control): ditto.
10798
10799         * glyphs-msw.c (mswindows_update_subwindow): just do resizing here
10800         now.
10801         (mswindows_update_widget): new function. Update all properties on
10802         a widget that have changed.
10803         (mswindows_button_update): new function. Update a button's set
10804         state.
10805         (mswindows_tab_control_update): new function. Update the items in
10806         a tab.
10807         (mswindows_tab_control_set_property): deleted.
10808         (mswindows_progress_gauge_update): new function. Update the
10809         progress gauge's progress.
10810         (mswindows_widget_set_property): deleted. This is all done
10811         asynchronously now.
10812         (mswindows_progress_gauge_set_property): ditto.
10813         (console_type_create_glyphs_mswindows): declare new methods.
10814         (image_instantiator_format_create_glyphs_mswindows): ditto.
10815
10816         * frame-msw.c (msprinter_init_frame_1): Remove unused variables.
10817         (msprinter_set_frame_properties): ditto.
10818
10819         * console.h (struct console_methods): Add update_widget_method.
10820
10821 2000-02-09  Andy Piper  <andy@xemacs.org>
10822
10823         * gui-msw.c (Fmswindows_shell_execute): Make
10824         mswindows-shell-execute industrial strength.
10825
10826 2000-02-08  Martin Buchholz  <martin@xemacs.org>
10827
10828         * lrecord.h: Make macro argument `props' match member function `plist'.
10829         * fns.c (Fget):
10830         * fns.c (Fput):
10831         * fns.c (Fremprop):
10832         * fns.c (Fobject_plist):
10833         * alloc.c:
10834         * symbols.c:
10835         Object property list frobbing cleanup.
10836         - Allow any lisp object (compared with `eq'), not just symbols, as
10837           keys in object plists.
10838         - Move symbol plist frobbing into symbols.c, where it belongs.
10839         - Move string plist frobbing into alloc.c, where it belongs.
10840         - Everything's an lrecord now, so no need to test for symbolp, etc.
10841         - Fix up doc strings to refer to PROPERTY, not PROPNAME.
10842
10843         * extents.c: Reorder code to remove declarations.
10844
10845         * frame.h (store_in_alist): Remove useless declaration.
10846
10847 2000-02-07  Martin Buchholz  <martin@xemacs.org>
10848
10849         * event-Xt.c (x_has_keysym): Use XConvertCase only if available.
10850         * config.h.in: Add HAVE_XCONVERTCASE.
10851
10852 2000-02-07  Andy Piper  <andy@xemacs.org>
10853
10854         * glyphs.c (image_instance_layout): undo 2000-01-29 change since
10855         it breaks many things.
10856
10857 2000-02-07  Jan Vroonhof  <vroonhof@math.ethz.ch>
10858
10859         * src/syntax.h (SYNTAX_START_P): Check whether the two chars
10860         actually can start a common comment type.
10861         * src/syntax.h (SYNTAX_END_P): ditto for end.
10862
10863 2000-02-07  Martin Buchholz <martin@xemacs.org>
10864
10865         * XEmacs 21.2.28 is released.
10866
10867 2000-02-06  Martin Buchholz  <martin@xemacs.org>
10868
10869         * event-Xt.c (x_keysym_to_character): New.
10870         (maybe_define_x_key_as_self_inserting_character): New.
10871         (x_has_keysym): New.
10872         Auto-define all keys on the keyboard as self-insert-key.
10873
10874 2000-02-02  Martin Buchholz  <martin@xemacs.org>
10875
10876         * menubar.c (vars_of_menubar): A small code simplification.
10877
10878         * minibuf.c (echo_area_append): Workaround egcs-20000131 c++ compiler bug
10879
10880         * ExternalShell.c:
10881         * ExternalClient.c:
10882         * EmacsShell-sub.c:
10883         * EmacsManager.c:
10884         * EmacsFrame.c:
10885         Use consistent style for specifying X resources.
10886
10887         * symbols.c (Fset): Further implement SYMVAL_LISP_MAGIC.
10888         This makes (dontusethis-set-symbol-value-handler) actually usable.
10889
10890         * lrecord.h (lrecord_decription_type):
10891         * alloc.c (pdump_register_sub):
10892         (pdump_dump_data):
10893         (pdump_reloc_one):
10894         Add XD_LISP_OBJECT_ARRAY to describe multiple Lisp_Objects.
10895         Comply with XEmacs coding style.
10896         All lrecord descriptions updated to use XD_LISP_OBJECT with 2
10897         args, and XD_LISP_OBJECT_ARRAY with 3 args.
10898
10899         * keymap.c (Faccessible_keymaps):
10900         Make (accessible-keymaps map "\C-h") do the Right Thing.
10901         Make (accessible-keymaps map []) do the Right Thing.
10902         Make (accessible-keymaps map "") do the Right Thing.
10903         (check_keymap_definition_loop): New function.
10904         (keymap_store_internal): Keep luser from shooting self in foot,
10905           via (define-key ctl-x-4-map "p" global-map).
10906         Remove fullness slot from struct Lisp_Keymap, since hash tables
10907         are now reliable.
10908         (print_keymap): Remove 'Yuck' factor by simply printing "size %d".
10909
10910 2000-01-30  Martin Buchholz  <martin@xemacs.org>
10911
10912         * redisplay.c (init_redisplay): Fix small memory leak.
10913         * elhash.h:
10914         * elhash.c (pdump_reorganize_hash_table):
10915         Rename from reorganize_hash_table. Change prototype.
10916         Reuse the original memory for hentries.  Save 100k.
10917         * alloc.c (PDUMP_READ): new macro.
10918         * alloc.c (pdump_load): Replace LISP_TO_VOID with higher-level macros.
10919         * alloc.c: No need to #ifndef before #undef.
10920
10921         * print.c: Allow debug_print() to print readably by modifying
10922         debug_print_readably.  Use consistent variable names.
10923
10924         * .dbxrc: Try to get things to work even if stopped in a function
10925         without source available by explicitly specifying source files.
10926 2000-02-03  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
10927
10928         * unexnt.c (_start): Removed bogus code which caused loading heap
10929         from differrent executable file.
10930         Removed bogus assignment to _fmode, which caused inconsistencies.
10931
10932 2000-02-03  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
10933
10934         * s\windowsnt.h: Removed lots of #if 0 blocks of Emacs heritage.
10935         Have spawnve encapsulation regard DONT_ENCAPSULATE.
10936         Do not preliminary `#define signal sigset'.
10937
10938         * systime.h: Do not prototype environ on windows nt and cygwin,
10939         this conflicts with system header.
10940
10941         * syssignal.h: Use correct define for WINDOWSNT
10942
10943         * sysdep.h: Do not prototype environ on windows nt, this conflicts
10944         with system header.
10945
10946         * sysdep.c (near start of file): Fixed commentary and rearranged
10947         ifdefs in readable order.
10948         (NEED_STARTS): Do not force NEED_STARTS when PDUMPing.
10949         (start_of_text):
10950         (end_of_text):
10951         (end_of_data): Do not compile in if using PDUMP.
10952
10953         * symsinit.h: Prototyped vars_of_nt().
10954
10955         * ntproc.c (windows9x_p): Added, instead of os_subtype.
10956         (find_child_console): Use it.
10957         (sys_kill): Use it.
10958
10959         * ntheap.h: Do not extern os_subtype.
10960
10961         * ntheap.c (cache_system_info): Do not cache unneeded:
10962         nt_major_version, nt_minor_version and os_subtype.
10963         (recreate_heap): Do not compile in when PDUMPing.
10964
10965         * nt.c (geteuid and friends): Use the new varibale
10966         nt_fake_unix_uid, instead of hashing fake uid out of NT RID.
10967         (init_user_info): Removed the above mentioned hackery.
10968         (fstat, stat): Do not compile in if using MSVC 5.0 and above -
10969         stat has been fixed in the C runtime.
10970         (vars_of_nt): Added, defined the nt_fake_unix_uid variable there.
10971
10972         * file-coding.c (struct file_coding_dump): Do not define
10973         ucs_to_mule_table in the struct if not MULE.
10974         (struct struct lrecord_description fcd_description_1): Do not dump
10975         the above.
10976
10977         * emacs.c (main_1): Call vars_of_nt().
10978         (right before Fdump_emacs_data): Don't need lastfile if using both
10979         portabe dumper and system malloc.
10980
10981         * alloc.c (Fmemory_limit): Conditionalized out.
10982         (pdump): Use OPEN_BINARY for the portable dump file.
10983         (pdump_load): Ditto.
10984
10985 2000-02-02  Mike Alexander  <mta@arbortext.com>
10986
10987         * nt.c (convert_time): Set tm_isdst before calling mktime and
10988         avoid calling it at all if the compiler supports 64 bit integers.
10989         Also initialize utc_base_ft before using it.
10990
10991 2000-02-03   Daiki Ueno  <ueno@ueda.info.waseda.ac.jp>
10992
10993         * frame.c (change_frame_size_1): Take f->internal_border_width
10994         into consideration when calculating the width of the frame.
10995
10996 2000-02-01  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
10997
10998         * window.c (frame_min_height):
10999         (frame_size_valid_p):
11000         (frame_pixsize_valid_p): Added.
11001         (check_frame_size): Generalized.
11002
11003         * window.h: Prototyped the above.
11004
11005         * lisp.h:
11006         * general.c: Added Qbottom_margin, Qduplex, Qlandscape,
11007         Qleft_margin, Qorientation, Qportrait, Qright_margin, Qtop_margin.
11008         Deleted Vwin32_* and Vbinary_process_* unused variables.
11009
11010         * device-msw.c (msprinter_init_device): Do not get printer font
11011         list; Added DEVMODE functions.
11012
11013         * frame-msw.c: Added lots of printer code.
11014
11015         * faces.c: Moved 'left-margin and 'right-margin defsymbols to
11016         general.c.
11017
11018         * console-msw.h: Added more msprinter device private slots.
11019
11020 2000-02-01  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
11021
11022         * event-msw.c (key_needs_default_processing_p): Added.
11023         (mswindows_wnd_proc, WM_KEYUP, KEYDOWN): Call it.
11024
11025 2000-01-29  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
11026
11027         * glyphs.c (image_instance_layout): Mark image instance as clean
11028         after layout.
11029         (glyph_dirty_p): Removed redundant function.
11030         (invalidate_glyph_geometry_maybe): Added.
11031         (update_glyph_cachel_data): Call it.
11032
11033         * glyphs.h: Prototyped it.
11034
11035         * redisplay.c (add_glyph_rune): Call it.
11036         (redisplay_window): Reset glyphs cachels when frame faces have
11037         changed, thus forcing recomputation of built-in border glyphs.
11038
11039 2000-01-30  Martin Buchholz  <martin@xemacs.org>
11040
11041         * Makefile.in.in: Make portable dumper and purify play well together.
11042         Add imperfect, but better than nothing, support for pdump.
11043         Remove xemacs.dmp when temacs is re-generated.
11044         Don't ignore errors when dumping xemacs.
11045
11046         * symbols.c (maybe_call_magic_handler): Remove one magic number.
11047
11048 2000-01-28  Andy Piper  <andy@xemacs.org>
11049
11050         * frame.c (allocate_frame_core): Use new Fset_window_buffer signature.
11051         (setup_normal_frame): ditto.
11052         (setup_frame_without_minibuffer): ditto.
11053         (setup_minibuffer_frame): ditto.
11054         (delete_frame_internal): ditto.
11055         (Fmake_frame_invisible): ditto.
11056         (Ficonify_frame): ditto.
11057
11058         * window.h: change Fset_window_buffer signature.
11059
11060         * window.c (Fsplit_window): Use new Fset_window_buffer signature.
11061         (Fset_window_buffer): allow recording of buffer if the window is
11062         the selected window.
11063         (window_loop): Use new Fset_window signature.
11064
11065 2000-01-23  Daniel Pittman  <daniel@danann.net>
11066
11067         * config.h.in: Added template for `HAVE_ATHENA_3D'
11068
11069 2000-01-29  Andy Piper  <andy@xemacs.org>
11070
11071         * glyphs-x.c (x_resize_subwindow): Try and catch bogus resizes.
11072
11073         * gutter.c (output_gutter): Don't output if the window isn't live.
11074
11075 2000-01-28  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
11076
11077         * glyphs-msw.c (mswindows_unmap_subwindow): Fix of corrupted patch
11078         of 01/12/00: Moved SetFocus back here where it belongs.
11079
11080 2000-01-23  Andy Piper  <andy@xemacs.org>
11081
11082         * s/cygwin32.h: declare printer things.
11083
11084 2000-01-26  Andy Piper  <andy@xemacs.org>
11085
11086         * select.c (Fown_selection_internal): GCPRO bug fix from Mike
11087         Alexander.
11088
11089 2000-01-24  Andy Piper  <andy@xemacs.org>
11090
11091         * glyphs-msw.c (mswindows_locate_pixmap_file): Expand filename.
11092         (mswindows_button_instantiate): Make sure glyph is a pixmap.
11093
11094         * glyphs-widget.c (widget_instantiate): Avoid shadows.
11095
11096         * frame-msw.c (msprinter_init_frame_3): Nuke warning.
11097
11098         * glyphs-msw.c: (mswindows_string_to_color): remove declaration.
11099
11100         * redisplay-msw.c (mswindows_output_cursor): Avoid shadows.
11101         (mswindows_output_display_block): Avoid local shadows.
11102
11103         * event-msw.c (mswindows_enqueue_magic_event): Avoid shadows.
11104         (mswindows_enqueue_mouse_button_event): ditto.
11105         (mswindows_handle_gui_wm_command): remove declaration.
11106
11107         * console-msw.c (mswindows_canonicalize_console_connection): Avoid
11108         warnings.
11109
11110         * console-msw.h: Avoid shadows.
11111         (mswindows_get_toolbar_button_text):
11112         (emacs_mswindows_create_stream_pair):
11113         (emacs_mswindows_delete_stream_pair):
11114         (mswindows_handle_toolbar_wm_command): declare.
11115
11116         * device-msw.c (build_syscolor_string): Avoid shadows.
11117
11118 2000-01-23  Andy Piper  <andy@xemacs.org>
11119
11120         * glyphs-widget.c (widget_instantiate): reverse the items for
11121         layouts so that children are in the expected order.
11122
11123 2000-01-28  Martin Buchholz  <martin@xemacs.org>
11124
11125         * ralloc.c: safe_bcopy ==> memmove
11126         * gmalloc.c: Remove MEMMOVE_MISSING conditional code.
11127         * s/msdos.h: Remove BCOPY macros.
11128         * insdel.c (gap_right): Remove BCOPY conditional code.
11129         * insdel.c (gap_left): Remove BCOPY conditional code.
11130         XEmacs demands a working ANSI C compiler - hence memmove.
11131
11132         * regex.c (regex_compile): Remove accidental use of trigraphs.
11133
11134 2000-01-27  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
11135
11136         * event-msw.c (mswindows_enqueue_misc_user_event): Initialize
11137         event timestamp.
11138
11139 2000-01-26  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
11140
11141         * event-msw.c (mswindows_drain_windows_queue): Added the
11142         parameter.
11143         (mswindows_need_event): Commented the call to
11144         mswindows_drain_windows_queue().
11145         (emacs_mswindows_quit_p): Lookup the windows for keyboard messages
11146         only.
11147
11148         * console-msw.h: Moved a few function prototypes here from
11149         event-msw.c.
11150
11151         * gui-msw.c (mswindows_handle_gui_wm_command): Changed the ID
11152         parameter from unsigned short to unsigned long.
11153         (Fmswindows_shell_execute): Added return value.
11154
11155 2000-01-27  URA Hiroshi <ura@hiru.aoba.yokohama.jp>
11156
11157         * sysdep.c (init_system_name):
11158           process-unix.c (unix_canonicalized_host_name):
11159         Don't call freeaddrinfo() if getaddrinfo() fails.
11160
11161         * process-unix.c (unix_open_unix_network_stream):
11162         Moved the code to get a port # into address loop.
11163
11164 2000-01-27  Martin Buchholz  <martin@xemacs.org>
11165
11166         * buffer.c (reinit_vars_of_buffer):
11167         The right place to initialize conversion_in_dynarr and
11168         conversion_out_dynarr.
11169
11170         * alloc.c (pdump): Use the real open() till sys_open() is functional.
11171
11172         * process-unix.c (unix_canonicalize_host_name): Muleize.
11173         (unix_open_network_stream): Muleize.
11174
11175         * buffer.h: Fix up prototypes for ralloc.c functions.
11176
11177 2000-01-27  URA Hiroshi <ura@hiru.aoba.yokohama.jp>
11178         * config.h.in: added HAVE_GETADDRINFO and HAVE_GETNAMEINFO
11179         * sysdep.c: In init_system_name(), add code to use getaddrinfo()
11180                 instead of gethostbyname()
11181         * process-unix.c: In unix_canonicalize_host_name() and
11182                 unix_open_network_stream(), add code to use getaddrinfo()
11183                 instead of gethostbyname().
11184
11185 2000-01-27  Daniel Pittman <daniel@danann.net>
11186
11187         * device-x.c (x_init_device): Warn at run-time if using Athena 3d
11188         libs when built with flat Athena.
11189
11190 2000-01-27  Martin Buchholz  <martin@xemacs.org>
11191
11192         * ralloc.c: Replace SIZE (conflicts with Windows headers) with size_t.
11193         Use coding standards for function prototypes.
11194
11195 2000-01-25  Martin Buchholz  <martin@xemacs.org>
11196
11197         * dialog-msw.c (push_lisp_string_as_unicode):
11198         * doc.c (unparesseuxify_doc_string):
11199         * dired.c (Fuser_name_completion_1):
11200         * dired.c (Fuser_name_all_completions):
11201         * dired.c (free_user_cache):
11202         * dired.c (user_name_completion):
11203         * console-x.c (get_display_arg_connection):
11204         * minibuf.c (clear_echo_area_internal):
11205         * minibuf.c (echo_area_append):
11206         * eldap.c (Fldap_open):
11207         * eldap.c (Fldap_search_internal):
11208         * frame-x.c (x_set_frame_text_value):
11209         * frame-x.c (x_set_frame_properties):
11210         * frame-x.c (x_create_widgets):
11211         * redisplay-tty.c (term_get_fkeys_1):
11212         * objects-x.c (x_parse_nearest_color):
11213         * objects-x.c (x_valid_color_name_p):
11214         * objects-x.c (x_initialize_font_instance):
11215         * objects-x.c (x_list_fonts):
11216         * objects-x.c (x_find_charset_font):
11217         * tooltalk.c (Fadd_tooltalk_message_arg):
11218         * tooltalk.c (Fadd_tooltalk_pattern_attribute):
11219         * tooltalk.c (Fadd_tooltalk_pattern_arg):
11220         * process-unix.c (unix_create_process):
11221         * ntproc.c (sys_spawnve):
11222         * sound.c (Fplay_sound_file):
11223         * sound.c (Fplay_sound):
11224         * buffer.c (init_initial_directory):
11225         * buffer.c (init_buffer):
11226         * editfns.c (init_editfns):
11227         * editfns.c (Ftemp_directory):
11228         * editfns.c (Fuser_full_name):
11229         * editfns.c (uncache_home_directory):
11230         * editfns.c (get_home_directory):
11231         * editfns.c (Fuser_home_directory):
11232         * editfns.c (Fformat_time_string):
11233         * editfns.c (Fcurrent_time_string):
11234         * gui-x.c (button_item_to_widget_value):
11235         * database.c (Fopen_database):
11236         * event-Xt.c (x_to_emacs_keysym):
11237         * event-Xt.c (x_event_to_emacs_event):
11238         * event-Xt.c (describe_event_window):
11239         * event-msw.c (mswindows_wnd_proc):
11240         * glyphs-eimage.c (jpeg_instantiate):
11241         * glyphs-eimage.c (gif_instantiate):
11242         * glyphs-eimage.c (png_instantiate):
11243         * glyphs-eimage.c (tiff_instantiate):
11244         * glyphs-x.c (xbm_instantiate_1):
11245         * glyphs-x.c (x_xbm_instantiate):
11246         * glyphs-x.c (x_xface_instantiate):
11247         * glyphs-x.c (autodetect_instantiate):
11248         * glyphs-x.c (cursor_font_instantiate):
11249         * glyphs-x.c (x_widget_instantiate):
11250         * glyphs-x.c (x_widget_set_property):
11251         * glyphs-x.c (x_widget_property):
11252         * glyphs-x.c (BUILD_GLYPH_INST):
11253         * print.c (write_string_to_stdio_stream):
11254         * print.c (output_string):
11255         * print.c (Falternate_debugging_output):
11256         * print.c (Fexternal_debugging_output):
11257         * glyphs-msw.c (extract_xpm_color_names):
11258         * glyphs-msw.c (mswindows_xpm_instantiate):
11259         * glyphs-msw.c (bmp_instantiate):
11260         * glyphs-msw.c (resource_name_to_resource):
11261         * glyphs-msw.c (mswindows_resource_instantiate):
11262         * glyphs-msw.c (xbm_instantiate_1):
11263         * glyphs-msw.c (mswindows_xbm_instantiate):
11264         * glyphs-msw.c (mswindows_xface_instantiate):
11265         * glyphs-msw.c (mswindows_widget_instantiate):
11266         * glyphs-msw.c (add_tree_item):
11267         * glyphs-msw.c (add_tab_item):
11268         * glyphs-msw.c (mswindows_combo_box_instantiate):
11269         * glyphs-msw.c (mswindows_widget_property):
11270         * glyphs-msw.c (mswindows_combo_box_property):
11271         * glyphs-msw.c (mswindows_widget_set_property):
11272         * console.c (stuff_buffered_input):
11273         * objects-msw.c (mswindows_initialize_color_instance):
11274         * objects-msw.c (mswindows_valid_color_name_p):
11275         * objects-msw.c (mswindows_list_fonts):
11276         * objects-msw.c (mswindows_font_instance_truename):
11277         * bytecode.c (optimize_compiled_function):
11278         * select-x.c (symbol_to_x_atom):
11279         * select-x.c (x_atom_to_symbol):
11280         * select-x.c (hack_motif_clipboard_selection):
11281         * select-x.c (selection_data_to_lisp_data):
11282         * select-x.c (lisp_data_to_selection_data):
11283         * select-x.c (Fx_get_cutbuffer_internal):
11284         * select-x.c (Fx_store_cutbuffer_internal):
11285         * buffer.h (TO_EXTERNAL_FORMAT): New function.
11286         * buffer.h (TO_INTERNAL_FORMAT): New function.
11287         * emacs.c (make_arg_list_1):
11288         * emacs.c (make_argc_argv):
11289         * emacs.c (main_1):
11290         * emacs.c (Fdump_emacs):
11291         * emacs.c (split_string_by_emchar_1):
11292         * file-coding.h:
11293         * lisp.h:
11294         * lstream.h:
11295         * symsinit.h:
11296         * device-x.c (x_init_device):
11297         * device-x.c (Fx_valid_keysym_name_p):
11298         * device-x.c (Fx_get_font_path):
11299         * device-x.c (Fx_set_font_path):
11300         * glyphs.c (bitmap_to_lisp_data):
11301         * glyphs.c (pixmap_to_lisp_data):
11302         * alloc.c (make_ext_string): Use coding system arguments.  Update
11303         all callers.
11304         * alloc.c (build_string):
11305         * callproc.c (child_setup):
11306         * callproc.c (init_callproc):
11307         * fileio.c (lisp_strerror):
11308         * fileio.c (directory_file_name):
11309         * fileio.c (Fexpand_file_name):
11310         * fileio.c (Ffile_truename):
11311         * fileio.c (Fsysnetunam):
11312         * fileio.c (Fdo_auto_save):
11313         * sysdep.c (sys_readdir):
11314         * tests.c: New file.  Allow adding C tests.
11315         Replace GET_* macros with a more comprehensible and flexible
11316         interface, TO_INTERNAL_FORMAT() and TO_EXTERNAL_FORMAT().
11317         Modify all calls.
11318         Any coding system can be used to do format conversion.
11319         Eliminate enum external_data_format.
11320         Eliminate convert_to_external_format.
11321         Eliminate convert_to_internal_format.
11322         Make sure file-name, keyboard, terminal, and ctext are always
11323         defined as coding systems or aliases.  Make
11324         file-name-coding-system, terminal-coding-system, and
11325         keyboard-coding-system magical variables that are equivalent to
11326         defining the corresponding coding system aliases.
11327
11328         * file-coding.c (Fcoding_system_canonical_name_p): New function.
11329         * file-coding.c (Fcoding_system_alias_p): New function.
11330         * file-coding.c (Fcoding_system_aliasee): New function.
11331         * file-coding.c (append_suffix_to_symbol): New function.
11332         * file-coding.c (dangling_coding_system_alias_p): New function.
11333         * file-coding.c (Ffind_coding_system):
11334         * file-coding.c (Fcopy_coding_system):
11335         * file-coding.c (encode_coding_no_conversion):
11336         * file-coding.c (syms_of_file_coding):
11337         * file-coding.c (vars_of_file_coding):
11338         Rewrite coding system alias code.
11339         Allow nested aliases, like symbolic links.
11340         Allow redefinition of coding system aliases.
11341         Prevent existence of dangling coding system aliases.
11342
11343         * dired.c (Fuser_name_completion_1):
11344         * dired.c (Fuser_name_all_completions):
11345         A crash would happen if user did QUIT in the middle of building
11346         user_name_cache.  Remove redundant code in mainline and unwind_protect.
11347
11348         * lisp.h:
11349         * dynarr.c (Dynarr_min_size): Make static.  Increase value to 8.
11350
11351         * lstream.c (make_fixed_buffer_input_stream): Take a void *, not
11352         an unsigned char *.  Update all callers.
11353
11354 2000-01-26  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
11355
11356         * callproc.c (Fcall_process_internal): Ignore Vbinary-process_output.
11357
11358 2000-01-25  Martin Buchholz  <martin@xemacs.org>
11359
11360         * elhash.c (hentry_description): Use more portable definition.
11361         (resize_hash_table): Initialize new hentries using
11362         xnew_array_and_zero, thereby simplifying the code.
11363
11364         * mule-charset.c (make_charset): Make sure entire object is
11365         initialized, to avoid Purify warnings.
11366
11367         * alloc.c (resize_string): Fix unlikely crash with big strings.
11368
11369 2000-01-24  Martin Buchholz  <martin@xemacs.org>
11370
11371         * realpath.c (xrealpath):
11372         Don't call getwd().
11373
11374 2000-01-25  Martin Buchholz  <martin@xemacs.org>
11375
11376         * lread.c (read_bit_vector): Fix memory leak reading literal bit vectors.
11377
11378 1999-12-28  Max Matveev  <max@melbourne.sgi.com>
11379
11380         * unexelfsgi.c (unexec): Change the way we decide which segment
11381         should be extended.
11382
11383         Assumption that .bss section should be outside the PT_LOADable
11384         segment. On IRIX with version 6.2 and above, .bss (or .sbss, if
11385         it's present) is inside the 'data' segment. This would fail the
11386         test which was used to find a segment to grow and cover new
11387         heap. Instead of this assumption, I created another one - on IRIX
11388         the segment to grow should start below .bss and it's address
11389         should extent above the end of .bss. Once this segment is
11390         identified, it's grown to accommodate the new heap and new
11391         zero-length .bss section is added at the end of .data2.
11392
11393 2000-01-25  Martin Buchholz  <martin@xemacs.org>
11394
11395         * eval.c (Feval): Wrong number of arguments should use original
11396         function, not the indirect_function version of it.
11397
11398 2000-01-24  Yoshiki Hayashi  <yoshiki@xemacs.org>
11399
11400         * glyphs-x.c (x_button_instantiate): Don't add image if
11401         it is not a pixmap.
11402         (x_locate_pixmap_file): Call Fexpand_file_name when file name
11403         is relative.
11404
11405 2000-01-21  Yoshiki Hayashi  <yoshiki@xemacs.org>
11406
11407         * symeval.h (DEFVAR_LISP_MAGIC): Remove semicolon after macro
11408         declaration.
11409         (DEFVAR_INT_MAGIC): Ditto.
11410         (DEFVAR_BOOL_MAGIC): Ditto.
11411         * glyphs.h: Reindent backslash.
11412
11413 2000-01-24  Martin Buchholz  <martin@xemacs.org>
11414
11415         * glyphs-widget.c (layout_query_geometry):
11416         (layout_layout): Use correct types for gheight, gwidth.
11417
11418 2000-01-24  Martin Buchholz  <martin@xemacs.org>
11419
11420         * EmacsManager.c (QueryGeometry): Purified.
11421
11422 2000-01-23  Martin Buchholz  <martin@xemacs.org>
11423
11424         * alloc.c (make_float): Make sure entire object is initialized, to
11425         avoid Purify warnings.
11426         (pdump_register_sub): Remove useless assignment.
11427         (pdump): Use xmalloc, not malloc.
11428         (pdump_load): Use xmalloc, not malloc.
11429
11430 2000-01-23  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
11431
11432         * callproc.c:
11433         * dired-msw.c:
11434         * fileio.c:
11435         * process-nt.c:
11436         * redisplay-msw.c:
11437         * sysdep.c: Removed redundant #include <windows.h>
11438
11439 2000-01-22  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
11440
11441         * frame.c (delete_frame_internal): Do not delete device when its
11442         implementation so declares.
11443         (delete_frame_internal): Set device selected frame to nil when
11444         last frame goes away.
11445
11446         * device-msw.c (msprinter_device_system_metrics): Implemented.
11447         (mswindows_device_system_metrics): Added 'device-dpi property.
11448
11449         * device.c: (Fdevice_printer_p): Added.
11450         Added 'offset-workspace device metric.
11451
11452         * console.h (device_metrics): Declared DM_offset_workspace.
11453
11454 2000-01-23  Martin Buchholz  <martin@xemacs.org>
11455
11456         * fileio.c (Ffile_truename): Remove pointless and confusing
11457         initialization of elen.
11458
11459         * glyphs-widget.c: Compiler warning fixes.
11460
11461 2000-01-23  Gunnar Evermann  <ge204@eng.cam.ac.uk>
11462
11463         * process.h (PROCESS_LIVE_P): Modify to take a Lisp_Process
11464         instead of a Lisp_Object as argument to make it consistent with
11465         the other LIVE_P macros.
11466         (CHECK_LIVE_PROCESS): New macro.
11467
11468         * process.c: Declare Qprocess_live_p.
11469         (Fprocess_live_p): New function.
11470         (create_process): Use PROCESS_LIVE_P.
11471         (read_process_output): Ditto.
11472         (set_process_filter): Ditto.
11473         (Fdelete_process): Ditto.
11474         (kill_buffer_processes): Ditto
11475         (process_send_signal): Use CHECK_LIVE_PROCESS.
11476         (Fprocess_input_coding_system): Check whether process is still
11477         alive (fix PR#1061).
11478         (Fprocess_output_coding_system): Ditto.
11479         (Fprocess_coding_system): Ditto.
11480         (Fset_process_input_coding_system): Ditto.
11481         (Fset_process_output_coding_system): Ditto.
11482
11483 2000-01-23  Andy Piper  <andy@xemacs.org>
11484
11485         * glyphs.h (struct Lisp_Image_Instance): change format by unifying
11486         layout and widget.
11487
11488         * glyphs.c (mark_image_instance): take into account changed
11489         image_instance format.
11490         (image_instance_equal): ditto.
11491         (image_instance_hash): ditto.
11492
11493         * glyphs-widget.c (widget_instantiate): Incorporate layout
11494         instantiation here. Delay layout of the layout until later.
11495         (layout_instantiate): deleted.
11496         (layout_query_geometry): new function. get the geometry of a
11497         layout.
11498         (layout_layout): layout a layout dynamically.
11499         (image_instantiator_widget): New function - splitting up
11500         image_instantiator_format_create_glyphs_widget for netwinder
11501         compilation.
11502         (image_instantiator_buttons):
11503         (image_instantiator_edit_fields):
11504         (image_instantiator_combo_box):
11505         (image_instantiator_scrollbar):
11506         (image_instantiator_progress_guage):
11507         (image_instantiator_tree_view):
11508         (image_instantiator_tab_control):
11509         (image_instantiator_labels):
11510         (image_instantiator_layout): ditto.
11511         (image_instantiator_format_create_glyphs_widget): Call preceding
11512         functions.
11513
11514 2000-01-22  Martin Buchholz  <martin@xemacs.org>
11515
11516         * process.c (Fset_process_coding_system):
11517         * device-x.c (Fx_keysym_hash_table):
11518         Docstring fixes.
11519
11520         * lstream.c (Lstream_write): Return documented value, not 0.
11521
11522         * fileio.c (directory_file_name):
11523         (Fsubstitute_in_file_name):
11524         (Fsubstitute_insert_file_contents_internal):
11525         (Fwrite_region_internal):
11526         * emacs.c:
11527         * sysdep.c:
11528         * getloadavg.c:
11529         * systty.h:
11530         Remove vestigial APOLLO-conditional code.
11531
11532 2000-01-21  Martin Buchholz  <martin@xemacs.org>
11533
11534         * getpagesize.h: Add guard macros.
11535         * libsst.h: Add guard macros.
11536         * libst.h: Add guard macros.
11537         * line-number.h: Add guard macros.
11538         * ndir.h: Add guard macros.
11539         * sysfloat.h: Add guard macros.
11540         * sysfile.h: Add guard macros.
11541         * sysproc.h: Add guard macros.
11542         * syswait.h: Add guard macros.
11543         * xintrinsic.h: Add guard macros.
11544         * xintrinsicp.h: Add guard macros.
11545         * xmmanager.h: Add guard macros.
11546         * xmmanagerp.h: Add guard macros.
11547         * xmprimitive.h: Add guard macros.
11548         * xmu.h: Add guard macros.
11549         * gpmevent.h: Add copyright statement. Add guard macros.
11550         * miscplay.h: Add guard macros.
11551         * *.h: Use consistent C-standards-approved guard macro names.
11552
11553         * opaque.c (make_opaque): Switch parameter order.
11554         * opaque.h (make_opaque): Switch parameter order.
11555         Update all callers.
11556         * buffer.h (MAKE_MIRROR_TRT_TABLE): Use symbolic constant OPAQUE_CLEAR.
11557
11558         * config.h.in (type_checking_assert): Added.
11559         (bufpos_checking_assert): Added.
11560
11561 2000-01-21  Martin Buchholz  <martin@xemacs.org>
11562
11563         * alloc.c: Harmless pdump changes.
11564         - Use countof().
11565         - spell alignment correctly.
11566         * sysdep.c: Use countof()
11567
11568 2000-01-20  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
11569
11570         * console.c (create_console): Use CONMETH_OR_GIVEN when calling
11571         initially_selected_for_input() console method, default to 0.
11572         (semi_canonicalize_console_connection): Try to delegate to
11573         canonicalize_console_connection if no such console method.
11574         (canonicalize_console_connection): Vice versa.
11575         (print_console): Do not print nil connection.
11576
11577         * console.h (XDEVIMPF_IS_A_PRINTER): Added.
11578         (XDEVIMPF_NO_AUTO_REDISPLAY): Added.
11579         (XDEVIMPF_FRAMELESS_OK): Added.
11580         (CONSOLE_INHERITS_METHOD): Added.
11581
11582         * console-msw.c (mswindows_canonicalize_console_connection):
11583         Added.
11584         (mswindows_canonicalize_device_connection): Added.
11585
11586         * console-msw.h (struct msprinter_device): Added this struct and
11587         accessor macros.
11588         (mswindows_device): Made fontlist a lisp object.
11589
11590         * device.c (semi_canonicalize_device_connection):  Try to delegate
11591         to canonicalize_device_connection if no such console method.
11592         (canonicalize_device_connection): Vice versa.
11593         (print_device): Do not print nil connection.
11594
11595         * device-msw.c (mswindows_init_device): Call InitCommonControls
11596         when have widgets.
11597         (mswindows_delete_device): Removed fontlist deallocation.
11598         (mswindows_mark_device): Added.
11599
11600         * events.c (event_equal): Added abort() at unreached code.
11601         (event_hash): Ditto.
11602
11603         * faces.c (complex_vars_of_faces): Added Qmsprinter to the list of
11604         fallback tags of Windows devices.
11605
11606         * general.c (syms_of_general): Initialized Qmsprinter.
11607
11608         * gutter.c (complex_vars_of_gutters): Added Qmsprinter to the list
11609         of fallback tags of Windows devices.
11610
11611         * lisp.h: Declared Qmsprinter.
11612
11613         * objects-msw.c (font_enum_callback_2): Rewrote to build lisp list
11614         of strings.
11615         (mswindows_list_fonts): Ditto.
11616         (mswindows_enumerate_fonts): Removed dependency on XDEVICE, so
11617         that it can be used by both mswindows and msprinter devices.
11618         (initialize_font_instance): Added.
11619         (mswindows_initialize_font_instance): Use it.
11620         (msprinter_initialize_font_instance): Added.
11621
11622         * redisplay.c (redisplay_device): Added the parameter AUTOMATIC
11623         and implementation flags check.
11624         (redisplay_without_hooks): Changed the call to the above.
11625         (Fredraw_device): Ditto.
11626         (Fredisplay_device): Ditto.
11627
11628         * redisplay-msw.c (get_frame_dc): Implemented.
11629         (get_frame_compdc): Implemented.
11630         (many functions): Use the two functions above to get device
11631         contexts, ether for a window or a printer.
11632
11633 2000-01-21  Olivier Galibert  <galibert@pobox.com>
11634
11635         * symbols.c (reinit_symbols_once_early): Put Qzero/Qnull_pointer
11636         initialization here.
11637         (init_symbols_once_early): Call it.
11638         * emacs.c (main_1): Call it.
11639         * symsinit.h: Declare it.
11640
11641 2000-01-19  Olivier Galibert  <galibert@pobox.com>
11642
11643         * alloc.c: Use a lrecord_header * in the backtrace instead of a
11644         Lisp_Object.
11645         (pdump_backtrace): Ditto.
11646         (pdump_register_object): Ditto.  Cleanup use of the pointers.
11647         (pdump_get_entry): Abort if trying to register a null pointer.
11648         (pdump_dump_data): Cleanup types when relocating.
11649         (pdump_dump_staticvec): Cleanup types w.r.t the reloc table.
11650         (pdump_dump_rtables): Remove bad casts.
11651         (pdump_load): Cleanup relocation w.r.t union type.  Use a
11652         Lisp_Object instead of a EMACS_INT for the hashtable
11653         reorganization.
11654
11655 2000-01-20  Martin Buchholz  <martin@xemacs.org>
11656
11657         * emacs.c (main_1): Rearrange morass of #ifdef's for correctness.
11658
11659         * callproc.c (call_process_cleanup): Isolate WINDOWSNT code for clarity.
11660
11661         * EmacsManager.c (GeometryManager): Avoid use of CPP for clarity.
11662
11663         * *.[ch]: global-replace 's/_of_xselect/_of_select_x/g' *.[ch]
11664
11665 2000-01-17  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
11666
11667         * faces.h (FACE_STRIKETHRU_P): Added.
11668
11669         * glyphs-msw.c (mswindows_widget_hfont): Implemented, to take care
11670         of font variants.
11671
11672         * redisplay-msw.c (mswindows_apply_face_effects): Deleted.
11673         (mswindows_set_dc_font): New function, aware of font variants,
11674         separated from mswindows_update_dc.
11675
11676         * objects-msw.h (struct mswindows_font_instance_data): Added
11677         definition.
11678
11679         * objects-msw.c (mswindows_finalize_font_instance): Delete all
11680         cached fonts and the data structure.
11681         (mswindows_initialize_font_instance): Added creation of font data
11682         structure.
11683         (mswindows_print_font_instance): Print at least something.
11684         (mswindows_create_font_variant): Implemented.
11685         (mswindows_get_hfont): Implemented.
11686
11687 2000-01-13  Fabrice Popineau  <Fabrice.Popineau@supelec.fr>
11688
11689         * dired-msw.c: permute "sysdir.h" with "sysfile.h" because of
11690         prototyping problem with msvc.
11691
11692         * emacs.c (main_1): added syms_of_gui_mswindows() call
11693
11694         * gui-msw.c: added "mswindows-shell-execute" lisp subr and
11695         syms_of_gui_mswindows() function
11696
11697         * symsinit.h: added the prototype for syms_of_gui_mswindows()
11698
11699 2000-01-18  Martin Buchholz <martin@xemacs.org>
11700
11701         * XEmacs 21.2.27 is released.
11702
11703 2000-01-18  Martin Buchholz  <martin@xemacs.org>
11704
11705         * glyphs-eimage.c (struct tiff_error_struct):
11706         (tiff_error_func):
11707         (tiff_warning_func):
11708         #if HAVE_VSNPRINTF ==> #ifdef HAVE_VSNPRINTF
11709
11710         * unexmips.c:
11711         * unexhp9k3.c:
11712         * unexfreebsd.c:
11713         * unexec.c: Remove vestigial Lucid C code.
11714         * unexalpha.c:
11715         * unexaix.c:
11716         * termcap.c:
11717         * libsst.c: Ansify.
11718         Remove declarations of errno and strerror().
11719
11720         * eval.c (Fbacktrace): Small Purify-cation.  Fix docstring.
11721
11722         * .dbxrc (run-temacs): Use the horrible ${1+"$@"} instead of "$@".
11723
11724 2000-01-16  Martin Buchholz  <martin@xemacs.org>
11725
11726         * mule-charset.c (Fchar_octet): Resurrect from earlier in 1999.
11727         Optimize.
11728
11729 2000-01-14  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
11730
11731         * md5.c:
11732         * file-coding.c:
11733         * file-coding.h:
11734         Change enum eol_type to eol_type_t.
11735
11736 2000-01-17  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
11737
11738         * gui.c (get_gui_callback): Check cons before accessing car.
11739
11740 2000-01-17  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
11741
11742         * specifier.h (XSPECIFIER_TYPE): Add error checking version.
11743         (XSETSPECIFIER_TYPE): Ditto.
11744
11745 2000-01-17  Didier Verna  <didier@xemacs.org>
11746
11747         * redisplay.c (generate_fstring_runes): compute string size in
11748         characters, not bytes.
11749
11750 2000-01-09  Hrvoje Niksic  <hniksic@iskon.hr>
11751
11752         * window.c (Fwindow_minibuffer_p): Make WINDOW optional.
11753
11754 2000-01-14  Hrvoje Niksic  <hniksic@iskon.hr>
11755
11756         * print.c (print_error_message): Call print_prepare().
11757
11758 2000-01-14  Martin Buchholz  <martin@xemacs.org>
11759
11760         * .dbxrc: Renamed from dbxrc.
11761
11762         * events.c (event_to_character):
11763         Use `assert (foo)' instead of `if (!foo) abort()'
11764
11765         * .gdbinit (xtype): Add documentation.
11766         * .gdbinit (check-temacs): New function.
11767         * .gdbinit (check-xemacs): New function.
11768         * dbxrc (check-xemacs): New function.
11769         * dbxrc (check-xemacs): New function.
11770
11771 2000-01-14  Andy Piper  <andy@xemacs.org>
11772
11773         * glyphs-widget.c (widget_query_geometry): Make sure that we
11774         calculate default dimensions correctly.
11775
11776 2000-01-13  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
11777
11778         * symsinit.h: Added prototype for reinit_vars_of_frame_mswindows.
11779
11780         * event-msw.c (vars_of_event_mswindows): Fixed a mistyped
11781         pdump_wire'd variable.
11782
11783         * emacs.c: (main_1): Conditionalized calls to
11784         reinit_vars_of_scrollbar_x and reinit_vars_of_module.
11785
11786 2000-01-13  Martin Buchholz  <martin@xemacs.org>
11787
11788         * window.c (Fset_window_configuration):
11789         * sysdep.c (_start):
11790         * input-method-motif.c (res):
11791         * event-Xt.c (Xt_process_to_emacs_event):
11792         Simple compiler warning fixes.
11793
11794         * bytecode.c (funcall_compiled_function): Use the original
11795         function symbol on the backtrace list in preference to the
11796         compiled_function object in error messages.
11797
11798 2000-01-13  Andy Piper  <andy@xemacs.org>
11799
11800         * glyphs-x.c (update_widget_face): Make sure we update the widget
11801         background as well as foreground.
11802
11803 2000-01-13  Andy Piper  <andy@xemacs.org>
11804
11805         * glyphs.h (struct Lisp_Image_Instance): Move justify and orient
11806         fields to subwindow.
11807         (IMAGE_INSTANCE_SUBWINDOW_JUSTIFY): new macro.
11808         (XIMAGE_INSTANCE_SUBWINDOW_JUSTIFY): ditto.
11809         (IMAGE_INSTANCE_SUBWINDOW_ORIENT): ditto.
11810         (XIMAGE_INSTANCE_SUBWINDOW_ORIENT): ditto.
11811
11812         * glyphs-widget.c (check_valid_tab_orientation): new function.
11813         (initialize_widget_image_instance): zero orientation and
11814         justification.
11815         (widget_instantiate): pick up orientation.
11816         (tab_control_query_geometry): return appropriate values for
11817         vertical tabs.
11818
11819         * glyphs-msw.c: (mswindows_tab_control_instantiate): assign
11820         appropriate creation flags for left, right and bottom tabs.
11821
11822         * s/cygwin32.h: add tab definitions.
11823
11824 2000-01-12  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
11825
11826         * glyphs-msw.c (mswindows_unmap_subwindow): Set focus back to the
11827         frame upon hiding a subwindow.
11828         (mswindows_button_instantiate): Changed the push button style to
11829         BS_PUSHBUTTON.
11830         (mswindows_button_instantiate): Removed button BS_NOTIFY
11831         style.
11832         (mswindows_button_instantiate): Removed redundant check for
11833         a disabled gui item.
11834         (mswindows_button_instantiate): Made use of WS_TABSTOP
11835         consistent: "operable" controls (edit, button, tree, scroll) have
11836         this style, "display-only" ones (static, progress gauge) do
11837         not. This style is currently ignored by XEmacs though. Also,
11838         removed the WS_EX_CONTROLPARENT style - it is not for children,
11839         it is for their parents!
11840         (mswindows_edit_field_instantiate): Ditto.
11841         (mswindows_progress_gauge_instantiate): Ditto.
11842         (mswindows_tree_view_instantiate): Ditto.
11843         (mswindows_tab_control_instantiate): Ditto.
11844         (mswindows_scrollbar_instantiate): Ditto.
11845         (mswindows_combo_box_instantiate): Ditto.
11846         (mswindows_widget_instantiate): Added the WS_EX_CONTROLPARENT
11847         style to the "clip" window.
11848         (mswindows_button_instantiate): Removed compilation warning by
11849         equally typing terms of the ?: operator.
11850
11851 2000-01-12  Didier Verna  <didier@xemacs.org>
11852
11853         * redisplay.c (generate_fstring_runes): new parameter holding the
11854         last modeline-format extent.
11855         (add_glyph_to_fstring_db_runes): new parameter holding the glyph
11856         extent, fill the glyph block with it.
11857         (generate_fstring_runes): handle these parameters.
11858         (generate_formatted_string_db): ditto.
11859
11860         * keymap.c (get_relevant_keymaps): retreive the keymaps from the
11861         glyphs'extents in the modeline.
11862
11863 1999-01-11  Mike Woolley  <mike@bulsara.com>
11864
11865         * ntheap.c: Reduced the reserved heap space from 1Gb down to
11866         256Mb, as a workaround for the non-starting problem many people
11867         have experienced.
11868
11869 2000-01-06  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
11870
11871         * console-tty.c (Fset_console_tty_output_coding_system):
11872         Force redrawing tty frame.
11873
11874 2000-01-10  Didier Verna  <didier@xemacs.org>
11875
11876         * redisplay.c (generate_fstring_runes): fix size computation bug.
11877
11878 2000-01-09  William M. Perry <wmperry@aventail.com>
11879
11880         * gpmevent.c: (gpm_next_event_cb): Don't return value from void function.
11881
11882 2000-01-09  Andy Piper  <andy@xemacs.org>
11883
11884         * glyphs-msw.c: index -> i to avoid shadows.
11885         (xbm_create_bitmap_from_data): make static.
11886         (check_valid_string_or_int): deleted.
11887         (mswindows_control_wnd_proc): message -> msg to avoid shadows.
11888
11889         * glyphs-x.c (x_update_subwindow): remove unused args.
11890
11891         * glyphs.c (glyph_image_instance): return the thing. Don't set the
11892         back pointer - this is done in allocate_image_instance.
11893         (query_string_font): return Qnil to make the compiler happy.
11894         (unmap_subwindow): set to ~0 to make the compiler happy.
11895         (glyph_query_geometry): comment out until used.
11896         (glyph_layout): ditto.
11897
11898 2000-01-09  Hrvoje Niksic  <hniksic@iskon.hr>
11899
11900         * insdel.c (signal_after_change): Remove extraneous unbind_to().