Delete XCF's superseded by SXEmacs.xcf
[sxemacs] / src / ChangeLog.XEmacs
1 2004-12-05  Vin Shelton <acs@xemacs.org>
2
3         * XEmacs 21.4.16 is released
4
5 2004-12-04  Vin Shelton  <acs@xemacs.org>
6
7         * depend: Regenerated.
8
9 2004-10-07  Stephen J. Turnbull  <stephen@xemacs.org>
10
11         * regex.c (re_match_2_internal): Map internal to external
12         registers.  Fixes bug identified by Steve Youngs 2004-09-30
13         <microsoft-free.87ekkjhj7t.fsf@youngs.au.com>.
14
15 2004-09-02  Yoshiki Hayashi  <yoshiki@xemacs.org>
16
17         * buffer.c (Frecord_buffer): Make sure the argument is buffer
18         to fix a crash.  Also, check the buffer is live and it
19         really exists in buffer_list.  If the buffer is not in the list,
20         prepend it.
21
22 2004-09-08  Stephen J. Turnbull  <stephen@xemacs.org>
23
24         Fix shy groups by implementing recording of all groups for
25         repetition and backtracking.  Backport from 21.5.
26         
27         * regex.h (struct re_pattern_buffer): Add members re_ngroups,
28         external_to_internal_register, external_to_internal_register_size,
29         and update comments for re_nsub.
30
31         * regex.c (re_opcode_t): Update comments.
32         (print_compiled_pattern): Ouput external_to_internal_register,
33         external_to_internal_register_size, and re_ngroups for debugging.
34         (INIT_REG_TRANSLATE_SIZE): New manifest constant.
35         (regex_compile): Update header comment.
36         Ensure that all groups are recorded so that repeat matches and
37         backtracking work correctly.  Comment related warning for groups >
38         255.
39         (re_search_2): Construct map of API indexes (which count only
40         nonshy groups) to internal register numbers, and keep it updated.
41
42 2004-07-27  Malcolm Purvis  <malcolmp@xemacs.org>
43
44         * frame-gtk.c (gtk_make_frame_visible):
45         * frame-gtk.c (gtk_make_frame_invisible): Use map/unmap instead of
46         show/hide.  This is what X uses and is prevents previously hidden
47         widgets from suddenly reappearing.
48         * gtk-xemacs.c (gtk_xemacs_paint):
49         * gtk-xemacs.c (gtk_xemacs_draw):
50         * gtk-xemacs.c (gtk_xemacs_expose): Only operate if the widget is
51         drawable.
52         * scrollbar-gtk.c (gtk_update_scrollbar_instance_status): Force
53         size and location changes so that they can be seen before the next
54         idle event.  Without this rapid changes to scrollbar properties
55         are not seen.
56
57 2004-07-02  Malcolm Purvis  <malcolmp@xemacs.org>
58
59         * console-gtk.h:
60         * console-gtk.h (struct gtk_frame):
61         * console-gtk.h (FRAME_GTK_WIDGET_INSTANCE_HASH_TABLE):
62           Add hash tables track tab_control callback data.
63           Added #defines for GTK object data names.
64           Declaration of gtk_widget_to_frame().
65         * event-gtk.c (enqueue_gtk_dispatch_event) No longer static:
66         * frame-gtk.c (gtk_widget_to_frame): New.
67         * frame-gtk.c (gtk_create_widgets):
68         * frame-gtk.c (allocate_gtk_frame_struct):
69         * frame-gtk.c (gtk_mark_frame):
70         Manage frame callbakc hash tables.
71         * glyphs-gtk.c (gtk_map_subwindow): Fix size and moving bugs.
72         * glyphs-gtk.c (gtk_redisplay_widget): Use correct size for widgets.
73         * glyphs-gtk.c (gtk_widget_instantiate_1): Force reconsideration
74         of widget size.
75         * glyphs-gtk.c (gtk_widget_query_geometry): New
76         * glyphs-gtk.c (gtk_register_gui_item): New
77         * glyphs-gtk.c (gtk_add_tab_item): New
78         * glyphs-gtk.c (gtk_tab_control_callback): New
79         * glyphs-gtk.c (gtk_tab_control_instantiate): New
80         * glyphs-gtk.c (gtk_tab_control_redisplay): Set notebook page.
81         Use correct list when loading item.
82         * glyphs-gtk.c (image_instantiator_format_create_glyphs_gtk):
83         Register new methods.
84         * gtk-xemacs.c (gtk_xemacs_size_allocate): Use XEmacs size, not
85         default size, for widgets.
86         * gui-x.c:  Improved comment.
87         * menubar-gtk.c (__generic_button_callback): Use
88         gtk_widget_to_frame instead of __get_channel.
89         * scrollbar-gtk.c:
90         * ui-gtk.c: Use symbolic names for GTK object data.
91
92 2004-06-23  Ilya N. Golubev <gin@mo.msk.ru>
93
94         * s/usg5-4.h (NSIG): Define only inside emacs binary.
95
96 2002-03-04  Stephen J. Turnbull  <stephen@xemacs.org>
97
98         * fileio.c (Fwrite_region_internal): Document use of start == Qnil.
99
100 2004-06-16  Malcolm Purvis  <malcolmp@xemacs.org>
101
102         * malloc.c (morecore): siz is a long because in some architectures
103         (eg ia-64) an int cannot hold the address range.  Additional patch
104         from the SuSe distribution.
105
106 2004-06-13  Malcolm Purvis  <malcolmp@xemacs.org>
107
108         * emacs.c:
109         * malloc.c: lim_data is a long because in some architectures
110         (eg ia-64) an int cannot hold the address range.
111         * mem-limits.h: lim-data is a long.  Linux uses getrlimit()
112         instead of ulimit() because ulimit() always returns -1.
113
114 2004-06-09  Stephen J. Turnbull  <stephen@xemacs.org>
115
116         * search.c: Reenable an ansync semaphore.  Remove bogus comments.
117
118 2004-06-11  David Kastrup  <dak@gnu.org>
119
120         * search.c (match_limit): Don't flag an error if match-data
121         exceeding the allocated search_regs.num_regs gets requested, just
122         return Qnil.
123
124 2003-07-21  Malcolm Purvis  <malcolmpurvis@optushome.com.au>
125
126         * glyphs-gtk.c (gtk_xpm_instantiate): Rewrite the XPM data to
127         replace symbolic color entries with the real colors specified in
128         xpm-color-symbols, before passing the XPM to gtk.
129         * glyphs-gtk.h: Use the generic pixmap_image_instance.mask for masks,
130         instead of a GTK specific field, so that it is used in by generic
131         code.
132
133 2004-05-05  Chuck Hines <chuck.hines@baesystems.com>
134
135        * dgif_lib.c (DGifSlurp): Changed do-while to while to stop
136         coredump from deref of NULL ptr (ExtData)
137
138 2004-04-19  Jerry James  <james@xemacs.org>
139
140         * data.c (sign_extend_lisp_int): Use INT_VALBITS instead of
141         VALBITS to compute the location of the sign bit.
142         * event-stream.c (Fcurrent_event_timestamp): Replace incorrect use
143         of VALBITS with EMACS_INT_MAX.
144         * events.c (Fevent_timestamp): Ditto.
145         * events.c (TIMESTAMP_HALFSPACE): Change VALBITS to INT_VALBITS to
146         compute the halfway point to timestamp wraparound.
147         * floatfns.c (float_to_int): Compare against EMACS_INT_MAX and
148         EMACS_INT_MIN instead of using VALBITS.
149         * floatfns.c (Flogb): Use EMACS_INT_MIN instead of building an
150         incorrect number with VALBITS.
151         * fns.c (Frandom): Correct number of integer bits in docstring.
152         Use INT_VALBITS instead of VALBITS to compute the denominator.
153         * sysdep.c (get_random): Use INT_VALBITS instead of VALBITS to
154         build random numbers.
155
156 2004-03-23  Malcolm Purvis  <malcolmpurvis@optushome.com.au>
157         * event-gtk.c:
158         * event-gtk.c (gtk_event_to_emacs_event):
159         * menubar-gtk.c:
160         * menubar-gtk.c (gtk_xemacs_menubar_class_init):
161         * menubar-gtk.c (gtk_xemacs_menubar_size_request):
162         * menubar-gtk.c (gtk_xemacs_accel_label_get_type):
163         * menubar-gtk.c (gtk_xemacs_set_accel_keys):
164         * menubar-gtk.c (__activate_menu):
165         * menubar-gtk.c (convert_underscores):
166         * menubar-gtk.c (remove_underscores):
167         * menubar-gtk.c (menu_convert):
168         * menubar-gtk.c (menu_descriptor_to_widget_1):
169         * menubar-gtk.c (menu_descriptor_to_widget):
170         * menubar-gtk.c (menu_can_reuse_widget):
171         * menubar-gtk.c (menu_create_menubar):
172         * menubar-gtk.c (gtk_popup_menu):
173         * menubar-gtk.c (Fgtk_build_xemacs_menu):
174         Added support for Gtk menu bar and menu item mnemonics.
175
176 2004-03-23  Malcolm Purvis  <malcolmpurvis@optushome.com.au>
177
178         * sysdll.c: (dll_function): Added support for finding symbols in
179         Darwin shared libraries as well in Darwin bundles.
180         * sysdll.c (image_for_address): New
181         * sysdll.c (my_find_image): New
182         * sysdll.c (search_linked_libs): New
183
184 2004-03-23  Malcolm Purvis  <malcolmpurvis@optushome.com.au>
185
186         * ui-gtk.c (__internal_callback_marshal): Marshalling data to
187         return to GTK requires a different API to marshalling data to use
188         as GTK parameters.
189         * ui-gtk.c (lisp_to_gtk_ret_type): New.
190
191 2004-03-08  Lutz Euler  <lutz.euler@freenet.de>
192
193         * lstream.c (Lstream_pseudo_close): Fix test for LSTREAM_FL_IS_OPEN.
194
195 2004-02-19  Stephen J. Turnbull  <stephen@xemacs.org>
196
197         * glyphs.c (process_image_string_instantiator):
198         (Fset_console_type_image_conversion_list):
199         Stop GCC from warning about shadowing of `exp'.
200
201         * redisplay-x.c (x_output_string): Fix unsigned lossage.
202
203 2004-02-19  Stephen J. Turnbull  <stephen@xemacs.org>
204
205         * regex.c (re_match_2_internal): Shut up GCC about syn1, syn2.
206
207 2004-02-03  Vin Shelton  <acs@xemacs.org>
208
209         * glyphs.c (image_instance_layout): Remove pointless assertion.
210         * regex.c (regex_grow_registers): Return type is void.
211
212 2004-02-02  Vin Shelton <acs@xemacs.org>
213
214         * XEmacs 21.4.15 is released
215
216 2004-01-30  Glynn Clements  <glynn.clements@virgin.net>
217
218         * device-x.c (x_error_handler): Don't call stderr_out
219
220 2003-11-07  Katsumi Yamaoka <yamaoka@jpl.org>
221
222         * buffer.c (other-buffer): Clarify documentation of order of
223         arguments for FSF Emacs.
224
225 2003-10-11  Olivier Galibert  <galibert@pobox.com>
226
227         * window.c (Fdelete_window): Dirty the mirror structure _before_
228         marking the window deleted.
229
230 2003-09-15  Jerry James  <james@xemacs.org>
231
232         * event-msw.c (debug_mswin_messages): Conditionally compile
233         messages missing from the Cygwin headers.
234
235 2003-06-16  Stephen J. Turnbull  <stephen@xemacs.org>
236
237         * data.c (eq_with_ebola_notice): Fix typo in comment.
238         (Ftrue_list_p): Improve docstring.
239
240 2003-10-13  Stephen J. Turnbull  <stephen@xemacs.org>
241
242         * frame-x.c (x_update_frame_external_traits): Fix XtSetArg idiom.
243
244 2003-09-27  Stephen J. Turnbull  <stephen@xemacs.org>
245
246         * search.c (trivial_regexp_p): Regexps containing "\{" are
247         nontrivial.  Thanks to Manfred Bartz for reporting the bug and
248         Stefan Monnier for suggesting a diagnosis.
249
250 2003-09-25  Stephen J. Turnbull  <stephen@xemacs.org>
251
252         * elhash.c (make-hash-table): Clarify use of :test #'equal.
253
254 2003-09-12  Stephen J. Turnbull  <stephen@xemacs.org>
255
256         * search.c (Fsearch_forward):
257         (Fsearch_backward):
258         Document negative count.
259
260 2003-09-13  Stephen J. Turnbull  <stephen@xemacs.org>
261
262         * regex.c (re_max_failures): Bump to 20000 for REGEX_MALLOC, too.
263
264 2003-09-13  Martin Buchholz  <martin@xemacs.org>
265
266         * s/sol2.h: Use OS_RELEASE=os_release_major*100+os_release_minor
267
268 2003-09-15  Vin Shelton  <acs@xemacs.org>
269
270         * .gdbinit (pobj): Remove Ilya's fix that was only intended for
271         21.5.
272
273 2003-09-12  Yoshiki Hayashi  <yoshiki@xemacs.org>
274
275         * regex.c (TRANSLATE_EXTENDED_UNSAFE): Remove.
276         (re_search_2): Match the first byte of Bufbyte, not Emchar.
277         (re_match_2_internal): Use TRANSLATE instead of
278         TRANSLATE_EXTENDED_UNSAFE.  The latter was a hack to bypass
279         non-ASCII char case conversion.
280
281 2003-09-08  Mike Sperber  <mike@xemacs.org>
282
283         * symbols.c (Fvariable_binding_locus): Add, as per suggestion from
284         RMS at: http://article.gmane.org/gmane.emacs.pretest.bugs/1010
285
286 2003-06-14  Ilya N. Golubev  <gin@mo.msk.ru>
287
288        * .gdbinit (pobj): fix printing of symbol name.
289
290 2003-08-01  Ilya N. Golubev  <gin@mo.msk.ru>
291
292         * frame-x.c (x_layout_widgets): When resizing is about to cause
293         frame size slip, mark it for redisplay.
294
295 2003-08-18  Jerry James  <james@xemacs.org>
296
297         * opaque.h: Remove unused (X)OPAQUE_MARKFUN definitions.
298
299 2003-09-03  Vin Shelton <acs@xemacs.org>
300
301         * XEmacs 21.4.14 is released
302
303 2003-08-15  Stephen J. Turnbull  <stephen@xemacs.org>
304
305         * config.h.in (REGEX_MALLOC): Make it configure'able.
306
307 2003-08-14  Andrew Begel  <abegel@CS.Berkeley.EDU>
308
309         * config.h.in: Add HAVE_DYLD to indicate Darwin/MacOSX dynamic
310         linking.
311         * sysdll.c (dll_init):
312         * sysdll.c (dll_open):
313         * sysdll.c (dll_close):
314         * sysdll.c (dll_function):
315         * sysdll.c (dll_variable):
316         * sysdll.c (dll_error):
317         Add support for loading bundles using Darwin/MacOSX
318         native API.
319
320 2003-08-12  Stephen J. Turnbull  <stephen@xemacs.org>
321
322         * process.c (start-process-internal): Document coding systems.
323
324 2003-07-30  Jerry James  <james@xemacs.org>
325
326         * sysdll.c: configure sets HAVE_DLD_INIT, not HAVE_INIT_DLD.
327
328 2003-07-31  René Kyllingstad  <listmailxemacs@kyllingstad.com>
329
330         * event-msw.c (mswindows_enqueue_mouse_button_event):
331         * event-msw.c (mswindows_wnd_proc):
332           enqueue button event when scrollwheel event isn't handled by 
333           mswindows_handle_mousewheel_event, such as when the scrollbars
334           are not showing.
335
336 2003-07-29  Stephen J. Turnbull  <stephen@xemacs.org>
337
338         * EmacsFrame.c (emacsFrameClassRec): Motif groks not XtCompress*.
339
340 2003-03-24  Stephen J. Turnbull  <stephen@xemacs.org>
341
342         * database.c (Fopen_database): Don't use DB_AUTO_COMMIT.
343
344 2003-03-21  Stephen J. Turnbull  <stephen@xemacs.org>
345
346         * regex.c (re_match_2_internal): Fix matching degenerate word
347         boundaries.
348
349 2003-05-25  XEmacs Build Bot <builds@cvs.xemacs.org>
350
351         * XEmacs 21.4.13 is released
352
353 2003-03-20  Stephen J. Turnbull  <stephen@xemacs.org>
354
355         * config.h.in (INTPTR_T_IN_CYGWIN_TYPES_H): 
356         * lisp.h (<inttypes.h>):
357         Cygwin defines these types in <cygwin/types.h>.  Don't duplicate
358         the definition.
359
360 2003-03-15  Martin Buchholz  <martin@xemacs.org>
361
362         * dumper.c (pdump_load): Pdump'ed XEmacs can't find its .dmp file.
363         Scenario: Prepend ~/bin to PATH; then `mkdir ~/bin/xemacs'
364         Result: "temacs can only be run in -batch mode."
365         Fix: Check xemacs executable candidate for directory-ness.
366
367 2003-03-03  Robert Pluim  <rpluim@bigfoot.com>
368
369         * database.c: Don't use the u_int8_t etc typedefs on FreeBSD,
370           they conflict with <sys/types.h>.
371
372 2003-02-14  Martin Buchholz  <martin@xemacs.org>
373
374         * database.c: Berkeley DB wants __STDC__ to be defined.
375
376 2003-02-13  Martin Buchholz  <martin@xemacs.org>
377
378         * EmacsFrame.c: Use symbolic name `NotUseful' in lieu of `0'.
379
380 2003-02-01  Martin Buchholz  <martin@xemacs.org>
381
382         * process-unix.c (unix_send_process): Fix C++ compile error.
383
384 2003-02-25  Andrew Begel  <abegel@cs.berkeley.edu>
385
386         * Added .dylib as an acceptable shared library file extension
387         * to support MacOSX.
388
389 2003-02-01  Martin Buchholz  <martin@xemacs.org>
390
391         * EmacsFrameP.h (EmacsFramePart):
392         Kludge to allow compiling with Motif1, but linking with Motif2.
393
394 2003-01-28  Martin Buchholz  <martin@xemacs.org>
395
396         * config.h.in (_ALL_SOURCE): Guard against multiple definition.
397
398
399 2003-02-23  Stephen J. Turnbull  <stephen@xemacs.org>
400
401         * config.h.in (DLSYM_NEEDS_UNDERSCORE): Define on darwin.
402
403 2003-02-06  Andrew Begel  <abegel@CS.Berkeley.EDU>
404
405         * sysdll.c: Included lisp.h to define needed alloca_array.
406
407 2003-02-13  Martin Buchholz  <martin@xemacs.org>
408
409         Make XEmacs redisplay 10 times faster.
410         If, that is, you're using a slow X connection and MoveOpaque.
411         Use compress_exposure = XtExposeCompressMaximal | XtExposeNoRegion.
412         Use compress_motion = TRUE.
413         * EmacsFrame.c (emacsFrameClassRec): 
414         * EmacsShell-sub.c (EMACS_SHELL_CLASS_REC):
415         * EmacsManager.c (emacsManagerClassRec):
416         * xintrinsicp.h: Make sure XtExposeNoRegion is defined.
417
418 2003-01-30  Vin Shelton  <acs@xemacs.org>
419
420         * s/linux.h (ORDINARY_LINK): define ORDINARY_LINK for linux.
421
422 2003-01-17  Stephen J. Turnbull  <stephen@xemacs.org>
423
424         * glyphs-eimage.c (tiff_memory_seek): Lobotomize unsigned typedef.
425         Patch by Martin Buchholz.
426
427 2003-01-16  Stephen J. Turnbull  <stephen@xemacs.org>
428
429         * glyphs-eimage.c (tiff_instantiate): Fix unsigned comparison.
430         Thanks to icc for warning and Martin Buchholz for reporting.
431
432 2003-01-29  Vin Shelton <acs@xemacs.org>
433
434         Patch courtesy of Andrew Begel <abegel@cs.berkeley.edu>
435
436         * dynarr.c (Dynarr_realloc): memcpy copies number of bytes, so
437         remember to multiply by the element size.
438
439 2003-01-15  Stephen J. Turnbull  <stephen@xemacs.org>
440
441         * XEmacs 21.4.12 "Portable Code" is released.
442
443 2003-01-14  Sergey Okhapkin <sos@prospect.com.ru>
444
445         * Makefile.in.in (ldflags): re-order sections for gcc 3.2.
446         * s/cygwin.sc: new linker file.
447
448 2003-01-14  Stephen J. Turnbull  <stephen@xemacs.org>
449
450         Build fixes courtesy Martin Buchholz <martin@xemacs.org>:
451
452         * redisplay-x.c (x_output_string): Use X11-specified types.
453         * syntax.c, syntax.h (SYNTAX_CODE): Use enum syntaxcode, not int.
454         * emacs.c (__free_hook): Use typeof with Intel compiler.
455         * config.h.in (alloca.h): Quick safe hack to please Intel compiler.
456
457 2003-01-08  Andy Piper  <andy@xemacs.org>
458
459         * unexcw.c (copy_executable_and_dump_data_section): Set the stack
460         reserve size during unexec().
461
462 2003-01-07  Daiki Ueno  <daiki@xemacs.org>
463
464         * process-unix.c (unix_create_process): Don't let outchannel block.
465
466 2003-01-05  Rick Rankin  <rick_rankin@yahoo.com>
467
468         * emacs.c: Include "syswindows.h" when compiling under Cygwin.
469         Needed for IsBadReadPtr().
470
471 2003-01-03  Stephen J. Turnbull  <stephen@xemacs.org>
472
473         * XEmacs 21.4.11 "Native Windows TTY Support" is released.
474
475 2002-12-14  Ben Wing  <ben@xemacs.org>
476
477         * callint.c: Declaration error.
478         * dumper.c (pdump):
479         * dumper.c (pdump_load): Warning fix.
480         * process.c: GCPRO error.
481         * glyphs.c (unmap_subwindow):
482         * glyphs.c (map_subwindow): Parenthesizing errors with ! and &&.
483         * event-stream.c (maybe_kbd_translate): Wrong argument to
484         character_to_event().
485
486         * alloc.c (garbage_collect_1):
487         * emacs.c:
488         * emacs.c (debug_can_access_memory):
489         * emacs.c (fatal_error_signal):
490         * emacs.c (mswindows_handle_hardware_exceptions):
491         * emacs.c (main_1):
492         * emacs.c (main):
493         * emacs.c (assert_failed):
494         * emacs.c (syms_of_emacs):
495         * lisp.h:
496         * print.c:
497         * print.c (std_handle_out_va):
498         * print.c (write_string_to_stdio_stream):
499         * print.c (write_fmt_string):
500         * print.c (printing_badness):
501         * print.c (printing_major_badness):
502         * print.c (print_internal):
503         * print.c (debug_print_no_newline):
504         * print.c (debug_backtrace):
505         Be more defensive in handling bad values when printing.  Add code
506         from trunk involving inhibit_non_essential_printing_operations.
507         When going down or in debug_print(), don't do external conversion
508         and such and try really, really hard when printing to avoid core
509         dumping.  Add force-debugging-signal, debug_break().
510
511 2002-12-12  Stephen J. Turnbull  <stephen@xemacs.org>
512
513         * dumper.c (pdump_load): Include sysdep.h; retry with truename.
514         Analysis and original patch by Vin Shelton <acs@xemacs.org>.
515
516 2002-12-02  Greg Allen  <greg_allen@westlb-systems.co.uk>
517
518         * database.c: Fix open_database. Berkeley DB API has changed in
519         4.1. see: http://www.sleepycat.com/docs/ref/upgrade.4.1/fop.html
520
521 2002-11-26  Stephen J. Turnbull  <stephen@xemacs.org>
522
523         * specifier.c (Fvalid_specifier_type_p): Typo in comment.
524
525 2002-11-13  Stephen J. Turnbull  <stephen@xemacs.org>
526
527         * event-Xt.c (Xt_timeout):
528         (Xt_timeout_callback):
529         (emacs_Xt_add_timeout):
530         (emacs_Xt_remove_timeout):
531         (Xt_timeout_to_emacs_event):
532         Turn completed_timeouts from a stack into a queue.  Fixes
533         deadlocks <15829.21626.171573.994716@sinisa.nasamreza.org>.
534
535 2002-11-07  Wolfram Gloger  <wg@malloc.de>
536
537         * alloc.c (reinit_alloc_once_early): Disable mmap in Doug Lea malloc.
538         * emacs.c (main): Assert that mmap'd allocation is disabled.
539
540 2002-10-14  Andy Piper  <andy@xemacs.org>
541
542         * glyphs-widget.c (layout_query_geometry): add in fiddle
543         factor. Include border text in width layout calculation.
544         (layout_layout): use BORDER_FIDDLE_FACTOR instead of 10.
545
546 2002-11-02  Stephen J. Turnbull  <stephen@xemacs.org>
547
548         * XEmacs 21.4.10 "Military Intelligence" is released.
549
550 2002-10-17  Raymond Toy  <toy@rtp.ericsson.se>
551
552         * nas.c: Update for NAS 1.6 and later, from Jon Trulson.  Was
553         using the NAS private array SoundFileInfo that no longer exists in
554         NAS 1.6 and later.  Preserve backward compatibility with NAS 1.5a
555         and earlier.  This is broken for some versions between 1.5a and
556         1.5f.
557
558 2002-10-10  Stephen J. Turnbull  <stephen@xemacs.org>
559
560         * realpath.c (win32_readlink): Try to fix truename of wildcard bug.
561
562         * emacs.c (shut_down_emacs): Improve crash message.
563
564 2002-10-09  Stephen J. Turnbull  <stephen@xemacs.org>
565
566         * file-coding.c (determine_real_coding_system): Check for coding
567         cookie in first LINES_TO_CHECK lines (currently 2).  Cater to
568         shebangs and Python PEP 263.
569
570 2002-10-08  Andy Piper  <andy@xemacs.org>
571
572         * glyphs-widget.c (layout_query_geometry): only resize dynamically
573         if static sizes haven't been set.
574
575 2002-08-30  Mike Alexander  <mta@arbortext.com>
576
577         * event-msw.c (winsock_closer): Use closesocket, not CloseHandle
578         to close a socket.
579
580 2002-10-03  Stephen J. Turnbull  <stephen@xemacs.org>
581
582         * callproc.c (child_setup): 21.4 doesn't have retry_close.
583
584 2002-09-20  Mike Sperber <mike@xemacs.org>
585
586         (This partially gets back my patch from 2002-07-20 without the
587         bug.)
588         * callproc.c (child_setup): Remove Ben's comment noting confusion
589         over the file descriptors >= 3: close_process_descs() doesn't
590         close those.  Fix fd range to go up to MAXDESC-1 instead of 64.
591         * process-unix.c (unix_create_process): Call
592         begin_dont_check_for_quit to inhibit unwanted interaction (and
593         thus breaking of X event synchronicity) in the child.
594
595 2002-09-26  Golubev I. N.  <gin@mo.msk.ru>
596
597         * frame-x.c (x_delete_frame): do not call XtDisplay on a destroyed
598         widget.
599
600 2002-08-20  Ben Sigelman  <bhsigelm@cs.brown.edu>
601
602         * event-Xt.c (drain_X_queue): loop over while(XEventsQueued())
603         instead of while(XtAppPending()&XtIMXEvent).  Upon a gdm logout,
604         the xemacs process did not exit, but looped infinitely here.  This
605         fixes that problem.
606
607 2002-09-28  Stephen J. Turnbull  <stephen@xemacs.org>
608
609         * font-lock.c (SYNTAX_START_STYLE, SYNTAX_END_STYLE): Quiet GCC.
610         (find_context): Improve comments.
611
612         * regex.c (re_compile_fastmap):  Gratuitous #ifdef comment fixes.
613         (re_match_2): An XCHAR_TABLE operation was missing.
614
615         Many of the following changes were inspired by Andy Piper's (now
616         obsolete) patch to make syntax-table text property lookup optional.
617
618         [Documentation]
619
620         * syntax.h (top level): Document semantics of syntax flags.
621         * syntax.c (comstr_start, Fforward_comment): Improve comments.
622         * syntax.c, syntax.h (top level): Document syntax cache better in
623         comments.
624
625         [Instrument syntax caching (temporary change)]
626
627         * syntax.h (enum syntax_cache_statistics_functions, struct
628         syntax_cache_statistics, SCS_STATISTICS_SET_FUNCTION,
629         SYNTAX_CACHE_STATISTICS_COUNT_INIT): New types and macros.
630         * syntax.c (scan_words, Fforward_comment, scan_lists,
631         Fbackward_prefix_characters):
632         * font-lock.c (find_context):
633         Use them to instrument syntax caching. 
634         * syntax.c (struct syntax_cache_statistics, scs_statistics,
635         syntax_cache_statistics_function_names): New type and variables.
636         * syntax.c (update_syntax_cache): Update and report statistics.
637
638         [Major syntax cache optimizations]
639
640         syntax.c (lookup_syntax_properties): Default off.
641
642         * syntax.h (UPDATE_SYNTAX_INTERNAL): New, implements UPDATE_SYNTAX*.
643         * syntax.c (update_syntax_cache):
644         Move init test from update_syntax_cache to UPDATE_SYNTAX_INTERNAL.
645
646         [Minor syntax cache optimizations and code clarifications]
647
648         * syntax.h (SYNTAX_COMMENT_BITS, SYNTAX_START_P, SYNTAX_END_P,
649         SYNTAX_STYLES_MATCH_START_P, SYNTAX_STYLES_MATCH_1CHAR_P,
650         SYNTAX_STYLES_MATCH_END_P, STYLE_FOUND_1CHAR_P, STYLE_FOUND_P,
651         SYNTAX_COMMENT_MASK_END, SYNTAX_COMMENT_MASK_START,
652         SYNTAX_COMMENT_1CHAR_MASK): Remove redundant argument `table'.
653         (Code clarification.)
654
655         * syntax.c (scan_words, find_end_of_comment, scan_sexps_forward,
656         scan_lists): Compute code from syncode, use Boolean macros instead
657         of redundant masking operations.  (Code clarification; any decent
658         compiler can do this optimization.)
659
660         * syntax.c (scan_lists): Rearrange switches (case Sstring_fence)
661         for clarity.
662
663         * syntax.h, syntax.c (NEXT_SINGLE_PROPERTY_CHANGE,
664         PREVIOUS_SINGLE_PROPERTY_CHANGE, update_syntax_cache): Conditionally
665         use F*_single_property_change instead of F*_extent_change.
666         Currently F*_single_property_change is _much_ less efficient.
667
668         * dired.c (Fdirectory_files): Qt not valid in syntax_cache.object.
669         * syntax.h (SETUP_SYNTAX_CACHE_FOR_OBJECT):  Initialize
670         syntax_cache.object properly, don't leave Qt or Qnil.
671         (SYNTAX_CACHE_BYTE_TO_CHAR): Use SETUP_SYNTAX_CACHE_FOR_OBJECT.
672         * syntax.c (update_syntax_cache): Use BUFFERP and STRINGP, not
673         tests for Qt or Qnil.
674
675 2002-09-21  Stephen J. Turnbull  <stephen@xemacs.org>
676
677         * redisplay.c (point_in_line_start_cache): 
678         * extents.c (print_extent_1):
679         Fix warnings.
680
681         * extents.c (Fset_extent_property): Document `syntax-table' property.
682
683         * extents.h (Fnext_single_property_change): EXFUN it.
684
685 2002-09-09  Stephen J. Turnbull  <stephen@xemacs.org>
686
687         * search.c (clear_unused_search_regs): New static function.
688         (search_buffer): 
689         (simple_search): 
690         (boyer_moore):
691         Use it.  Fixes "stale match data" bug reported by Martin Stjernholm.
692         Minor clarifications in comments.
693
694         * regex.c (re_match_2_internal): Ensure no stale submatches.
695
696 2002-09-09  Stephen J. Turnbull  <stephen@xemacs.org>
697
698         * event-Xt.c (enqueue_focus_event): Add missing prototype.
699
700 2002-08-29  Jerry James  <james@xemacs.org>
701
702         * lisp.h: structrures -> structures.
703
704 2002-06-03  Andy Piper  <andy@xemacs.org>
705
706         * frame.c (frame_conversion_internal): add conversion appropriate
707         for setting frame dimensions in pixels.
708
709         * console.h (struct console_methods): add device-specific widget
710         layout functions.
711
712         * emacs.c (main_1): initialize glyph vars.
713
714         * event-Xt.c (handle_focus_event_1): call handle_focus_event_2
715         (handle_focus_event_2): new function. Allow focus to
716         be set to a particular window and widget.
717         (enqueue_focus_event): new function. Create a
718         synthetic focus event.
719         (emacs_Xt_handle_magic_event): call
720         handle_focus_event_2.
721
722         * frame.c (Fset_frame_pixel_height): new function. Allow
723         pixel-based sizing. Does the right thing on character-oriented
724         displays.
725         (Fset_frame_pixel_width): ditto.
726         (Fset_frame_pixel_size): ditto.
727         (syms_of_frame): declare.
728
729         * general-slots.h: add :vertically-justify and
730         :horizontally-justify.
731
732         * glyphs-msw.c (xbm_create_bitmap_from_data): warning fix.
733         (mswindows_widget_border_width): new function.
734         (mswindows_combo_box_instantiate): set border widths.
735         (console_type_create_glyphs_mswindows): declare.
736
737         * glyphs-widget.c:
738         (check_valid_justification): allow vertical and horizontal
739         justification.
740         (widget_border_width): new function. Call device methods.
741         (widget_instance_border_width): ditto.
742         (logical_unit_height): new function. Determine the height of a
743         logical-unit. Logical units are intended to provide grid-like
744         layout for subcontrols in a layout. If the layout is
745         :vertically-justify top then subcontrols will be positioned on
746         logical-unit boundaries, thus allowing adjacent subcontrols to
747         line up.
748         (widget_logical_unit_height): ditto for widgets.
749         (redisplay_widget): misc cleanup.
750         (widget_spacing): new function. Call device specific
751         methods. Intended to be the default gap between adjacent widgets.
752         (widget_query_geometry): use new spacing functions to determine
753         appropriate geometry.
754         (initialize_widget_image_instance): initialize horizontal and
755         vertical justification.
756         (widget_instantiate): use logica-units where appropriate for
757         sizing large widgets.
758         (button_query_geometry): use widget_instance_border_width.
759         (tree_view_query_geometry): ditto.
760         (tab_control_query_geometry): ditto.
761         (edit_field_query_geometry): new function.
762         (layout_update): pick up :justify, :horizontally-justify and
763         :vertically-justify none of which worked previously. :justify is
764         used as a fallback for both horizontal and vertical justification.
765         (layout_query_geometry): use logical units to size appropriately.
766         (layout_layout): ditto.
767         (Fwidget_logical_to_character_width): new function. Allow users to
768         convert from logical units to characters so that frame sizes can
769         be set appropriately.
770         (Fwidget_logical_to_character_height): ditto.
771         (syms_of_glyphs_widget): declare.
772         (image_instantiator_edit_fields): add edit_field_query_geometry.
773         (VALID_LAYOUT_KEYWORDS): declare :vertically-justify and
774         :horizontally-justify.
775         (specifier_vars_of_glyphs_widget): new function. Declare
776         Vwidget_border_width which is not yet used.
777
778         * glyphs-x.c (x_map_subwindow): enqueue appropriate focus events.
779         (x_widget_border_width): new function.
780         (x_widget_instantiate): create a sensible name for widgets.
781         (console_type_create_glyphs_x): declare x_widget_border_width.
782
783         * glyphs.h (DEFAULT_WIDGET_BORDER_WIDTH): new macro.
784         (struct Lisp_Image_Instance): add :vertically-justify and
785         :horizontally-justify.
786         (LAYOUT_JUSTIFY_TOP): new.
787         (IMAGE_INSTANCE_SUBWINDOW_H_JUSTIFY): new.
788         (ROUND_UP): new macro. Round argument up to next integral
789         interval.
790
791         * redisplay-output.c (redisplay_output_layout): misc formatting.
792
793         * symsinit.h: declare specifier_vars_of_glyphs_widget.
794
795 2002-08-23  Stephen J. Turnbull  <stephen@xemacs.org>
796
797         * XEmacs 21.4.9 "Informed Management" is released.
798
799 2002-08-19  Andy Piper  <andy@xemacs.org>
800
801         * fileio.c (Ffile_truename): on cygwin using win32 normalize to
802         win32 format.
803
804         * realpath.c (xrealpath): normalize drive spec also so that dir
805         sep chars are not mixed on cygwin.
806
807 2002-08-06  Jerry James  <james@xemacs.org>
808
809         * window.c (Fsplit_window): Count only half of the divider width
810         against the left window when splitting horizontally. 
811
812 2002-06-24  Andy Piper  <andy@xemacs.org>
813
814         * toolbar-gtk.c (GTK_OUTPUT_BUTTONS_LOOP): output button if whole
815         toolbar was cleared.
816
817         * toolbar-msw.c (mswindows_clear_frame_toolbars): new
818         function. Split out from mswindows_output_frame_toolbars.
819         (mswindows_output_frame_toolbars): move clear pieces to
820         mswindows_output_frame_toolbars.
821
822         * toolbar-gtk.c (gtk_clear_frame_toolbars): new function. Split
823         out from gtk_output_frame_toolbars.
824         (gtk_output_frame_toolbars): move clear pieces to
825         gtk_clear_frame_toolbars.
826
827         * toolbar-x.c (X_OUTPUT_BUTTONS_LOOP): always output buttons when
828         the frame is cleared. How this ever worked before is a mystery.
829         (x_output_frame_toolbars): Only output toolbars.
830         (x_clear_frame_toolbars): new. Clear previous toolbar locations.
831
832         * gutter.c (update_gutter_geometry):
833         Mark frame layout changed.
834         (update_frame_gutter_geometry, update_frame_gutters):
835         Respect frame_layout_changed.
836
837         * console.h (struct console_methods): add
838         clear_frame_toolbars_method.
839
840         * redisplay.c (redisplay_frame): call
841         update_frame_toolbars_geometry and re-order update_frame_toolbars.
842
843         * toolbar.h: declare update_frame_toolbars_geometry.
844
845         * toolbar.c (update_frame_toolbars_geometry): new function. Split
846         out from update_frame_toolbars.  Call clear_frame_toolbars.
847         (update_frame_toolbars): only output, do not change geometry.
848
849         * redisplay.c: add frame_layout_changed.
850
851         * redisplay.h: add frame_layout_changed.
852         (CLASS_RESET_CHANGED_FLAGS): set it.
853         (GLOBAL_RESET_CHANGED_FLAGS): ditto.
854         (CLASS_REDISPLAY_FLAGS_CHANGEDP): test it.
855         (GLOBAL_REDISPLAY_FLAGS_CHANGEDP): ditto.
856
857         * device.h (struct device): add frame_layout_changed.
858         (MARK_DEVICE_FRAME_LAYOUT_CHANGED): new.
859
860         * frame.h (struct frame): add frame_layout_changed.
861         (MARK_FRAME_LAYOUT_CHANGED): new.
862
863 2002-06-30  Mike Alexander  <mta@arbortext.com>
864
865         * event-msw.c (mswindows_need_event): Don't wait for a new message
866         if the queue is not empty.  Suggested by Paul Moore.
867
868 2002-06-12  Andy Piper  <andy@xemacs.org>
869
870         * frame-msw.c (msprinter_init_frame_3): calculate the frame size
871         for printing on accurately.
872
873 2002-06-09  Rick Rankin <rick_rankin@yahoo.com>
874
875         * event-msw.c (mswindows_wnd_proc): Add a handler for the
876         WM_ACTIVATE message. Make sure that the frame is visible if the
877         window is visible. This seemss to fix the problem where XEmacs
878         appears to freeze after switching desktops with certain virtual
879         window managers.
880         (debug_output_mswin_message): Added code to output message
881         parameters for WM_WINDOWPOSCHANGED, 
882         WM_WINDOWPOSCHANGING, WM_MOVE, and WM_SIZE messages.
883
884 2002-05-25  Andy Piper  <andy@xemacs.org>
885
886         * select-x.c (vars_of_select_x): Fix docstring of
887         x-selection-strict-motif-ownership
888
889 2002-08-14  Stephen J. Turnbull  <stephen@xemacs.org>
890
891         * keymap.c (get_keymap):
892         Add comment about do_autoload GCPROs own args.
893
894 2002-08-14  Stephen J. Turnbull  <stephen@xemacs.org>
895
896         * bytecode.c (execute_optimized_program): check_opcode ifdef
897         ERROR_CHECK_BYTE_CODE.
898
899 2002-08-14  Stephen J. Turnbull  <stephen@xemacs.org>
900
901         Thanks to Ben Wing and Michael Sperber.
902
903         * eval.c (Fcommand_execute):
904         (Feval):
905         (Ffuncall):
906         (Fmacroexpand_internal):
907         (function_argcount):
908         callint.c (Fcall_interactively):
909         Add comment about do_autoload GCPROs own args.
910
911         * (do_autoload): GCPRO both args as well as local Lisp_Object.
912
913         * eval.c (Ffuncall): Extra braces to placate GCC.
914
915 2002-08-10  Stephen J. Turnbull  <stephen@xemacs.org>
916
917         * backtrace.h (grow_specpdl):
918         (SPECPDL_RESERVE):
919         * EmacsFrame.c (EmacsFrameSetValues):
920         * eval.c (grow_specpdl):
921         * ExternalShell.c (hack_event_masks_1):
922         * glyphs-x.c (convert_EImage_to_XImage): 
923         (x_finalize_image_instance):
924         * ralloc.c (page_size):
925         (r_alloc_sbrk):
926         * xgccache.c (gc_cache_hash):
927         Fix unsigned comparison warnings.
928
929 2002-07-29  Jerry James  <james@xemacs.org>
930
931         * lread.c (locate_file): Any nonnegative return value indicates
932         success if MODE is nonnegative.
933
934 2002-08-03  Brian A Palmer  <bpalmer@rescomp.Stanford.EDU>
935
936         * emacs.c (Fsplit_string_by_char): Make 2nd arg SEPCHAR a required
937         argument. 
938
939 2002-07-17  Stephen J. Turnbull  <stephen@xemacs.org>
940
941         * process-unix.c (unix_send_process): #ifdef the coding_stream member.
942
943         * dumper.c (pdump_get_indirect_count):
944         (pdump_scan_by_alignment):
945         (pdump_dump_root_struct_ptrs):
946         (pdump_dump_rtables):
947         (pdump_dump_root_objects):
948         (pdump):
949         * nas.c (WaveOpenDataForReading):
950         * fns.c (print_bit_vector):
951         * font-lock.c (SINGLE_SYNTAX_STYLE):
952         * glyphs.c (check_for_ignored_expose):
953         (find_matching_subwindow):
954         * glyphs-eimage.c:
955         * imgproc.c (get_histogram):
956         * redisplay.c (point_in_line_start_cache):
957         * redisplay-output.c (redisplay_unmap_subwindows):
958         * symbols.c (defsymbol_massage_name_1):
959         (defkeyword_massage_name):
960         (deferror_massage_name_and_message):
961         * redisplay-x.c (x_output_string): 
962         * emacs.c (run_temacs_argv_size, run_temacs_args_size):
963         * frame.h (struct frame):
964         * filelock.c (current_lock_owner):
965         * doprnt.c (emacs_doprnt_1):
966         * lisp.h (struct Lisp_Bit_Vector):
967         (DO_REALLOC):
968         Fix warnings.
969
970 2002-02-13  Ben Wing  <ben@xemacs.org>
971
972         * event-stream.c (reset_key_echo):
973         * event-stream.c (reset_this_command_keys):
974         * event-stream.c (execute_command_event):
975         If console is dead as a result of C-x 5 0, then post-command stuff
976         needs to be careful and do only non-console-specific stuff.
977
978 2002-07-01  Mike Sperber <mike@xemacs.org>
979
980         * process-unix.c (unix_send_process): Mark coding_outstream as
981         non-open upon SIGPIPE.
982
983         * event-stream.c (Fnext_event): Reorder switch cases to something
984         that makes sense.
985
986 2001-08-13  Dmitry Astapov  <adept@umc.com.ua>
987
988         * event-Xt.c (maybe_define_x_key_as_self_inserting_character):
989         Don't bogusly reinitialize ascii_character property.
990
991 2002-07-08  Mike Sperber <mike@xemacs.org>
992
993         * process.c (Fstart_process_internal): Do error checking before we
994         fork off the child, so the child can't muck with the state of the
995         parent.
996
997 2002-07-08  Mike Sperber <mike@xemacs.org>
998
999         * ralloc.c (init_ralloc): Allocate properly for pdump.
1000
1001 2002-06-12  Andy Piper  <andy@xemacs.org>
1002
1003         * glyphs.c (query_string_geometry): check the string.
1004
1005         * glyphs-widget.c (widget_logical_unit_height): cope with nil
1006         widget names.
1007
1008 2002-06-17  Jerry James  <james@xemacs.org>
1009
1010         * sysdll.c: Remove RTLD_GLOBAL initialization.
1011         * sysdll.c (dll_open): Do not use RTLD_GLOBAL.
1012
1013 2002-06-25  Stephen J. Turnbull  <stephen@xemacs.org>
1014
1015         * search.c (skip_chars): Port Ben's crash fix and efficiency patch.
1016
1017 2002-05-16  Mathias Grimmberger  <mgri@zaphod.sax.de>
1018
1019         * sysdep.c (sys_rename): Make sys_rename work for the case where
1020         Windows rename sets errno to EACCES if target file exists.
1021
1022 2002-05-21  Jonathan Harris  <jonathan@xemacs.org>
1023
1024         * device-msw.c (mswindows_handle_page_setup_dialog_box):
1025         Fix detection of metric units to work on Win95
1026
1027 2002-05-21  Stephen J. Turnbull  <stephen@xemacs.org>
1028
1029         * syswindows.h: #define LOCALE_RETURN_NUMBER.  Why, I don't know.
1030
1031 2002-04-25  Andy Piper  <andy@xemacs.org>
1032
1033         * redisplay.c (create_text_block): Remove extra comment trailer.
1034
1035 2002-04-24  Andy Piper  <andy@xemacs.org>
1036
1037         * redisplay.c (create_text_block): Don't actually add propagation
1038         data if the line ends after we have added a glyph.
1039
1040 2002-04-22  Andy Piper  <andy@xemacs.org>
1041
1042         * extents.c (extent_fragment_update): check for glyphs we have
1043         previously displayed.
1044         * extents.c (print_extent_1): warning removal.
1045         * extents.h: change prototype.
1046         * redisplay-output.c (redisplay_normalize_glyph_area): calculate
1047         widths correctly for wide glyphs.
1048         * redisplay.c (position_redisplay_data_type): add end_glyph_width.
1049         * redisplay.c (prop_type): add PROP_GLYPH.
1050         * redisplay.c (struct prop_block): add glyph type
1051         * redisplay.c (add_glyph_rune): when adding part of a glyph add it
1052         to the propagation data.
1053         * redisplay.c (create_text_block): if there is a glyph in the
1054         propagation data use it to salt extent_fragment_update.
1055         * redisplay.c (create_string_text_block): ditto.
1056
1057 2002-04-13  Nix  <nix@esperi.demon.co.uk>
1058
1059         * redisplay.h (struct rune): Add ascent, descent, and yoffset fields.
1060         * redisplay-output.c (compare_runes): Compare them.
1061         * redisplay.c: Update copyright date.
1062         * redisplay.c (pos_data): Add need_baseline_computation field.
1063         * redisplay.c (add_glyph_rune): Update ascent, descent, and
1064         need_baseline_computation; zero yoffset. Set max_pixmap_height
1065         for all pixmaps, not just automatically positioned ones.
1066         * redisplay.c (calculate_yoffset): New, compute yoffset values.
1067         * redisplay.c (calculate_baseline): New, compute textual baseline.
1068         * redisplay.c (add_glyph_rune): Call them.
1069         * redisplay.c (create_text_block): Likewise.
1070         * redisplay.c (create_overlay_glyph_block): Likewise.
1071         * redisplay.c (add_margin_runes): Likewise.
1072         * redisplay.c (create_string_text_block): Likewise. Fix tabdamage.
1073
1074         * redisplay.h: (redisplay_calculate_display_boxes): Change prototype.
1075         * redisplay-output.c (redisplay_calculate_display_boxes): Use yoffset.
1076         * redisplay-msw.c (mswindows_output_blank): Pass 0 as yoffset.
1077         * redisplay-msw.c (mswindows_output_string): Likewise.
1078         * redisplay-msw.c (mswindows_output_display_block): Pass yoffset.
1079         * redisplay-gtk.c (gtk_output_display_block): Likewise.
1080         * redisplay-x.c (x_output_display_block): Likewise.
1081
1082 2002-03-28  Ben Wing  <ben@xemacs.org>
1083
1084         * redisplay.c: Fixed bug in redisplay
1085         w.r.t. hscroll/truncation/continuation glyphs causing jumping up
1086         and down of the lines, since they're bigger than the line
1087         size. (It was seen most obviously when there's a horizontal scroll
1088         bar, e.g. do C-h a glyph or something like that.) The problem was
1089         that the glyph-contrib-p setting on glyphs was ignored even if it
1090         was set properly, which it wasn't until now.
1091
1092 2002-04-24  Andy Piper  <andy@xemacs.org>
1093
1094         * lisp.h (Dynarr_end): Fix definition.
1095
1096 2002-02-06  Adrian Aichner  <adrian@xemacs.org>
1097
1098         * redisplay.c (mark_redisplay): Remove call to
1099         update_frame_window_mirror.
1100
1101 2001-11-15  Andy Piper  <andy@xemacs.org>
1102
1103         * win32.c (Fmswindows_shell_execute): fix handling of URL's under
1104         cygwin (again).
1105
1106 2002-02-13  Andy Piper  <andy@xemacs.org>
1107
1108         * event-msw.c (mswindows_wnd_proc): only mark the frame visible if
1109         we did in fact enqueue the XM_MAPFRAME event.
1110
1111 2002-01-15  Adrian Aichner  <adrian@xemacs.org>
1112
1113         * event-msw.c (mswindows_wnd_proc): Add handling of WM_SHOWWINDOW
1114         to fix problem switching between virtual desktops under virtuawin
1115         virtual window manager.
1116
1117 2001-07-30  Adrian Aichner  <adrian@xemacs.org>
1118
1119         * event-msw.c: Typo fix.
1120         * event-msw.c (mswindows_wnd_proc): Set FRAME_VISIBLE_P after
1121         magic XM_MAPFRAME event has been sent.
1122
1123 2001-11-23  Andy Piper  <andy@xemacs.org>
1124
1125         * event-msw.c (mswindows_wnd_proc): Don't pump mousewheel events.
1126
1127 2001-11-21  Andy Piper  <andy@xemacs.org>
1128
1129         * scrollbar-msw.c (mswindows_handle_mousewheel_event): cope with
1130         mouse events outside the frame.
1131
1132 2002-03-20  Andy Piper  <andy@xemacs.org>
1133
1134         * menubar-msw.c (mswindows_popup_menu): warning removal.
1135         * dialog-msw.c (dialog_popped_down): ditto.
1136
1137 2001-12-11  Andy Piper  <andy@xemacs.org>
1138
1139         * dialog-msw.c (dialog_popped_down): new function. unset popup_up_p.
1140         * dialog-msw.c (mswindows_make_dialog_box_internal): set
1141         popup_up_p.
1142         * menubar-msw.c (unsafe_handle_wm_initmenupopup_1): ditto.
1143         * menubar-msw.c (mswindows_handle_wm_command): ditto.
1144         * menubar-msw.c (mswindows_popup_menu): ditto.
1145
1146 2001-10-29  Andy Piper  <andy@xemacs.org>
1147
1148         * dialog-msw.c (handle_directory_dialog_box): quit if the user
1149         cancels.
1150
1151 2002-01-03  Andy Piper  <andy@xemacs.org>
1152
1153         * realpath.c (ABS_LENGTH): dtrt for cygwin systems using drive
1154         letters.
1155         (xrealpath): ditto.
1156
1157 2002-03-29  Jonathan Harris  <jonathan@xemacs.org>
1158
1159         * device-msw.c (plist_get_margin): Add arg specifying mm or inches
1160         * device-msw.c (plist_set_margin): Fix multiplicand used for mm
1161         * device-msw.c (mswindows_handle_page_setup_dialog_box):
1162         Detect and handle case where machine is set up for metric units
1163
1164 2002-04-02  Andy Piper  <andy@xemacs.org>
1165
1166         * dired-msw.c (mswindows_get_files): 
1167         * nt.c (mswindows_stat): SetErrorMode() so that file errors are
1168         completely handled by XEmacs. Suggested by Thomas Vogler
1169         <mail@thomas-vogler.de>.
1170
1171 2001-11-14  Andy Piper  <andy@xemacs.org>
1172
1173         * nt.c (REG_ROOT): change registry key to XEmacs.
1174
1175 2002-04-27  Andy Piper  <andy@xemacs.org>
1176
1177         * glyphs-msw.c (mswindows_widget_instantiate): remove dead-code.
1178
1179 2002-04-26  Andy Piper  <andy@xemacs.org>
1180
1181         * glyphs-msw.c (mswindows_map_subwindow): observe :initial-focus
1182         behavior.
1183
1184 2002-03-14  Mike Alexander  <mta@arbortext.com>
1185
1186         * event-msw.c (mswindows_unwait_process): New, remove process from
1187         wait list
1188         * process-nt.c (nt_finalize_process_data): Call
1189         mswindows_unwait_process
1190         * console-msw.h: Declare mswindows_unwait_process
1191
1192 2002-05-14  Stephen J. Turnbull  <stephen@xemacs.org>
1193
1194         * editfns.c (Fdecode_time):
1195         (Fformat_time_string):
1196         Check for invalid time.  Thanks to Nick Pakoulin <npak@ispras.ru>.
1197         (make_time): Warning elimination (change arg name).
1198
1199 2001-11-24  Andy Piper  <andy@xemacs.org>
1200
1201         * window.c (Fsplit_window): Doc return type.
1202
1203 2002-04-01  Andy Piper  <andy@xemacs.org>
1204
1205         * emacs.c (Fkill_emacs): Only output message box in interactive
1206         mode.
1207
1208 2002-04-26  Andy Piper  <andy@xemacs.org>
1209  
1210         * config.h.in: pull in 21.5.x change to stop alloca warnings under
1211         cygwin.
1212
1213 2002-03-18  Gregory Steuck  <greg-xemacs-patch@nest.cx>
1214
1215         * unexelf.c:  Use ELFSIZE or define from _LP64 to indicate a 64
1216         bit platform.
1217
1218 2002-05-09  Stephen J. Turnbull  <stephen@xemacs.org>
1219
1220         * XEmacs 21.4.8 "Honest Recruiter" is released.
1221
1222 2002-05-07  Nix  <nix@esperi.demon.co.uk>
1223
1224         Supersedes 2002-04-17 patch.
1225
1226         * process.h (PROCESS_LIVE_P): Use the process status as
1227         evidence of health, not the state of the input stream.
1228         (PROCESS_READABLE_P): Say if the process is readable
1229         from. (It may be dead nonetheless.)
1230         (CHECK_READABLE_PROCESS): Test for that condition.
1231
1232         * process.c (create_process): Use PROCESS_READABLE_P.
1233         (read_process_output, set_process_filter): Likewise.
1234
1235         * process.c (Fprocess_input_coding_system): Use CHECK_READABLE_PROCESS.
1236         (Fset_process_input_coding_system, Fprocess_coding_system): Likewise.
1237
1238         This code is #if 0'd, this is not the time to add new functions:
1239
1240         * process.c (Fprocess_readable_p): Report readability status.
1241         * process.c (Qprocess_readable_p): New, associated symbol...
1242         * process.c (syms_of_process): ... initialize it.
1243
1244 2002-05-04  Stephen J. Turnbull  <stephen@xemacs.org>
1245
1246         * XEmacs 21.4.7 "Economic Science" is released.
1247
1248 2002-04-17  Nix  <nix@esperi.demon.co.uk>
1249
1250         * process.h (PROCESS_LIVE_P): Use the process status as
1251         evidence of health, not the state of the input stream.
1252
1253 2002-04-30  Charles G. Waldman <cgw@xemacs.org>
1254
1255         * sysdep.c (sys_siglist): change "signum" to "signal"
1256
1257 2001-04-21  Martin Buchholz  <martin@xemacs.org>
1258
1259         * s/darwin.h: New file.
1260         Thanks to Greg Parker <gparker@cs.stanford.edu>.
1261         
1262 2002-04-23  Andreas Jaeger  <aj@suse.de>
1263
1264         * s/linux.h (LIB_STANDARD): Define correctly for x86-64 and s390x
1265         which use lib64 for 64-bit libs.
1266         (START_FILES): Likewise.
1267
1268 2002-02-11  Mike Sperber  <mike@xemacs.org>
1269
1270         * device-x.c: 
1271         (x_IO_error_handler):
1272         (x_init_device): Temporarily keep device in static variable
1273         `device_being_initialized' so we can recover gracefully from
1274         internal XOpenDevice failure.  (XOpenDevice is documented to
1275         return NULL on failure, but sometimes calls the IO error handler
1276         instead.)
1277
1278 2002-01-31  John H. Palmieri  <palmieri@math.washington.edu>
1279
1280         * dired.c (Ffile_name_all_completions): Change documentation --
1281         remove reference to completion-ignored-extensions.
1282         * dired.c (vars_of_dired): Change documentation for
1283         completion-ignored-extensions -- remove reference to
1284         file-name-all-completions.
1285
1286 2002-03-06  Jerry James  <james@xemacs.org>
1287
1288         * emodules.c (emodules_load): Fix multiple loading of same module.
1289
1290 2002-01-25  Andrew Begel <abegel@cs.berkeley.edu>
1291         * sysdll.c (dll_open): Changed to use RTLD_NOW instead of
1292         RTLD_LAZY to avoid incorrect symbol binding when using nested
1293         shared libraries on Solaris.
1294
1295 2002-02-12  Stephen J. Turnbull  <stephen@xemacs.org>
1296
1297         * fileio.c (Ffind_file_name_handler): Improve docstring.
1298
1299 2002-01-20  Stephen J. Turnbull  <stephen@xemacs.org>
1300
1301         * fns.c (Fmapconcat): Improve docstring.
1302
1303 2002-01-03  Eric Gillespie, Jr.  <epg@pretzelnet.org>
1304
1305         * device-gtk.c: Add prototype for
1306         emacs_gtk_selection_clear_event_handle.
1307         (gtk_init_device): Call gtk_selection_add_target for CLIPBOARD
1308         selection.  Setup signal handler for "selection_clear_event"
1309         (emacs_gtk_selection_clear_event_handle).
1310
1311         * select-gtk.c (emacs_gtk_selection_clear_event_handle): Handle
1312         other applications owning the clipboard (based on
1313         x_handle_selection_clear).
1314
1315 2001-12-23  William M. Perry  <wmperry@gnu.org>
1316
1317         * menubar-gtk.c (gtk_popup_menu)  Add sanity checks, fix crash.
1318         
1319 2002-01-04  Martin Buchholz  <martin@xemacs.org>
1320
1321         * keymap.c (define_key_alternate_name): Parenthesize EQ.
1322
1323 2001-12-17  Stephen J. Turnbull  <stephen@xemacs.org>
1324
1325         * XEmacs 21.4.6 "Common Lisp" is released.
1326
1327 2001-12-16  Torsten Duwe  <duwe@caldera.de>
1328
1329         * search.c (Freplace_match): Add missing sub-expression functionality.
1330
1331         * buffer.c (decode_buffer): Add a check for pointer type to
1332         decode_buffer, before gcc's CSE optimization reorders a
1333         dereference in front of the allow_string test.
1334
1335 2001-11-16  Darryl Okahata  <darrylo@xemacs.org>
1336
1337         * window.c (window_loop): Fix bug that sometimes prevented
1338         window_loop() from iterating across multiple devices.  Also, at
1339         Ben's request, changed infloop-detecting code to abort() instead
1340         of silently terminating window_loop().
1341
1342 2001-11-21  Stephen J. Turnbull  <stephen@xemacs.org>
1343
1344         Based on analysis and patch by Simon Josefson <jas@extundo.com>.
1345         * editfns.c (make_time): New function.
1346         (Fencode_time): Use it instead of wasteful_word_to_lisp.
1347         * lisp.h (make_time): Prototype and comment it.
1348         * dired.c (wasteful_word_to_lisp): Deprecate.
1349         (Ffile_attributes): Use make_time() instead of wasteful_word_to_lisp().
1350
1351 2001-10-31  Kyle Jones  <kyle_jones@wonderworks.com>
1352
1353         * fileio.c (auto_save_1): Use current coding system, not
1354         escape-quoted.
1355
1356 2001-11-13  Ben Wing  <ben@xemacs.org>
1357
1358         * window.c:
1359         * window.c (window_truncation_on):
1360         * window.c (syms_of_window):
1361         truncate-partial-width-windows should respect the buffer being
1362         displayed, like other redisplay vars.
1363
1364 2001-11-13  Hirokazu FUKUI  <hfukui@sannet.ne.jp>
1365
1366         * event-stream.c (Fread_key_sequence): save current buffer.
1367
1368 2001-10-29  Andrew Begel  <abegel@eecs.berkeley.edu>
1369
1370         * ntheap.c (_heap_init): Don't redefine in VS.NET (MSC >= 1300).
1371
1372 2001-10-29  Andrew Begel  <abegel@eecs.berkeley.edu>
1373
1374         * alloc.c (lcrecord_stats): Add space for types defined in modules.
1375
1376 2001-10-26  Mike Alexander  <mta@arbortext.com>
1377
1378         * event-msw.c (slurper_free_shared_data_maybe): Free the pipe handle.
1379
1380 2001-10-25  Andy Piper  <andy@xemacs.org>
1381
1382         * ChangeLog:
1383         * dialog-msw.c (handle_directory_proc): new function.
1384          (handle_directory_dialog_box): new fucntion.
1385          (handle_file_dialog_box): use new directory dialog support.
1386          (mswindows_make_dialog_box_internal): ditto.
1387         * event-msw.c (mswindows_wnd_proc): minor fix to scrollbar event
1388         handling.
1389         (mswindows_find_frame): make global.
1390         * fileio.c (Fexpand_file_name): build fix.
1391         * general-slots.h: add Qdirectory.
1392         * scrollbar-msw.c (mswindows_handle_scrollbar_event): fix focus
1393         handling.
1394         * syswindows.h (LOCAL_TO_WIN32_FILE_FORMAT): fix problem with
1395         cygwin not leaving win32 paths unchanged.
1396         * win32.c (Fmswindows_cygwin_to_win32_path): new function. Use the
1397         cygwin runtime to do path conversion.
1398         (Fmswindows_shell_execute): fix cygwin handling of URLs.
1399         (syms_of_win32): add new function.
1400         * window.c (window_loop): build fix.
1401
1402 2001-10-15  Andy Piper  <andy@xemacs.org>
1403
1404         (Fmswindows_shell_execute): fix handling of URL's under cygwin.
1405
1406 2001-10-23  Stephen J. Turnbull  <stephen@xemacs.org>
1407
1408         * XEmacs 21.4.5 "Civil Service" is released.
1409
1410 2001-04-08  Danny Colascione  <qtmstr@optonline.net>
1411
1412         * glyphs-x.c: Force buffer-tab highlight update when moving the
1413         buffer, avoiding an ugly black border, used for keyboard focus
1414         indication, on a widget that can never have keyboard focus, the
1415         buffer tab.
1416
1417 2001-08-30  Daiki Ueno  <ueno@unixuser.org>
1418
1419         * process-unix.c (unix_open_multicast_group): Remove too much
1420         conversion between host and network byte order.
1421
1422 2001-09-10  Nix  <nix@esperi.demon.co.uk>
1423
1424         * src/buffer.c (kill_buffer): Undedicate windows showing BUF
1425         before replacing them.
1426
1427         * src/window.c (window_loop): Implement new UNDEDICATE_BUFFER
1428         operation.
1429
1430         * src/window.c (undedicate_windows): Use it.
1431         * src/window.h: Add prototype.
1432
1433 2001-09-17  Ben Wing  <ben@xemacs.org>
1434
1435         * fileio.c (normalize_filename):
1436         * fileio.c (Fexpand_file_name):
1437         Fix various C++ compile errors in Andy's recent code.
1438         
1439         * callint.c (Fcall_interactively):
1440         * editfns.c (Ftemp_directory):
1441         * editfns.c (Fuser_full_name):
1442         * emacs.c (argmatch):
1443         * lread.c (locate_file_map_suffixes):
1444         * redisplay-x.c (x_ring_bell):
1445         Fix sign-compare warnings.
1446         
1447 2001-09-08  Andy Piper  <andy@xemacs.org>
1448
1449         * fileio.c (normalize_filename): copied from nt.c
1450         * (Ffile_name_directory): enable win32 paths under cygwin.
1451         * (Ffile_name_nondirectory): ditto.
1452         * (directory_file_name): ditto.
1453         * (Fexpand_file_name): ditto.
1454         * (Ffile_truename): ditto.
1455         * (Fsubstitute_in_file_name): ditto.
1456         * (Ffile_name_absolute_p): ditto.
1457         * (Ffile_readable_p): ditto.
1458
1459 2001-09-08  Andy Piper  <andy@xemacs.org>
1460
1461         * device-msw.c (mswindows_finish_init_device): remove dde
1462         initialization.
1463         * device-msw.c (mswindows_init_dde): factor out from
1464         mswindows_finish_init_device()
1465         * device-msw.c (init_mswindows_very_early): new function
1466         initialize but don't enable dde.
1467         * emacs.c (main_1): call init_mswindows_very_early.
1468         * event-msw.c:
1469         * event-msw.c (mswindows_dde_callback): only execute when we are
1470         ready.
1471         * symsinit.h: declare init_mswindows_very_early.
1472
1473 2001-05-02  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
1474
1475         [sjt: This has been in 21.5 for months with no complaints.]
1476
1477         * console.h (struct console_methods): Added flags member.
1478         (CONSOLE_IMPLEMENTATION_FLAGS): Defined.
1479         (CONMETH_IMPL_FLAG):
1480         (CONSOLE_IMPL_FLAG): Macro to check implememntation flags.
1481         Defined XDEVIMPF_DONT_PREEMPT_REDISPLAY.
1482
1483         * device.c (window_system_pixelated_geometry): Use the above macros.
1484
1485         * device.h (DEVICE_IMPL_FLAG): Macro to check a device
1486         implememntation flag.
1487         * device.h (DEVICE_DISPLAY_P): Use it.
1488
1489         * frame.c (delete_frame_internal): Use the above macro.
1490
1491         * redisplay.c (redisplay_device): Use it.
1492         (redisplay_device): Obey XDEVIMPF_DONT_PREEMPT_REDISPLAY.
1493         (redisplay_frame): Ditto.
1494
1495         * device-msw.c (mswindows_device_implementation_flags): Removed.
1496         (msprinter_device_implementation_flags): Removed.
1497         (console_type_create_device_mswindows): Removed references to
1498         implementation_flags methods, set implementation flags here.
1499         (console_type_create_device_mswindows): Added XDEVIMPF_DONT_PREEMPT.
1500
1501         * device-gtk.c (gtk_device_implementation_flags): Removed method.
1502         (console_type_create_device_gtk): Removed method declaration.
1503         Added commented out statement which semantically matches the
1504         commented out statement in the above removed method.
1505
1506 2001-04-14  Gordon Sadler  <gbsadler1@lcisp.com>
1507
1508         The attached patch fixes a few warnings. 
1509
1510         * src/emacs.c: prototype console_type_create_select_gtk for GTK only
1511         * src/frame-gtk.c: guard against GNOME calls in GTK only
1512         * src/redisplay-gtk.c: include <sys/poll.h> #ifdef HAVE_POLL
1513         * src/select-gtk.c: prototype lisp_to_time
1514
1515 2001-06-08  Ben Wing  <ben@xemacs.org>
1516
1517         ------ gc-in-window-procedure fixes ------
1518         
1519         * alloc.c:
1520         * alloc.c (struct post_gc_action):
1521         * alloc.c (register_post_gc_action):
1522         * alloc.c (run_post_gc_actions):
1523         * alloc.c (garbage_collect_1):
1524         Create "post-gc actions", to avoid those dreaded "GC during window
1525         procedure" problems.
1526
1527         * event-msw.c:
1528         Abort, clean and simple, when GC in window procedure.  We want
1529         to flush these puppies out.
1530
1531         * glyphs-msw.c:
1532         * glyphs-msw.c (finalize_destroy_window):
1533         * glyphs-msw.c (mswindows_finalize_image_instance):
1534         Use a post-gc action when destroying subwindows.
1535
1536         * lisp.h:
1537         Declare register_post_gc_action().
1538
1539         * scrollbar-msw.c:
1540         * scrollbar-msw.c (unshow_that_mofo):
1541         Use a post-gc action when unshowing scrollbar windows, if in gc.
1542
1543         * redisplay.c (mark_redisplay):
1544         Add comment about the utter evilness of what's going down here.
1545
1546         ------ cygwin setitimer fixes ------
1547         
1548         * Makefile.in.in (sheap_objs):
1549         * Makefile.in.in (profile_objs):
1550         * Makefile.in.in (objs):
1551         Compile profile.c only when HAVE_SETITIMER.
1552         
1553         * nt.c (mswindows_sigset):
1554         * nt.c (mswindows_sighold):
1555         * nt.c (mswindows_sigrelse):
1556         * nt.c (mswindows_sigpause):
1557         * nt.c (mswindows_raise):
1558         * nt.c (close_file_data):
1559         Style fixes.
1560         
1561         * nt.c:
1562         Move setitimer() emulation to win32.c, because Cygwin needs it too.
1563         
1564         * profile.c:
1565         * profile.c (Fstart_profiling):
1566         * profile.c (Fstop_profiling):
1567         Make sure we don't compile if no setitimer().  Use qxe_setitimer()
1568         instead of just plain setitimer().
1569         
1570         * signal.c:
1571         * signal.c (set_one_shot_timer):
1572         * signal.c (alarm):
1573         Define qxe_setitimer() as an encapsulation around setitimer() --
1574         call setitimer() directly unless Cygwin or MS Win, in which case
1575         we use our simulated version in win32.c.
1576         
1577         * systime.h:
1578         * systime.h (struct itimerval):
1579         * systime.h (ITIMER_REAL):
1580         Prototype mswindows_setitimer() and qxe_setitimer().  Long
1581         comment about "qxe" and the policy regarding encapsulation.
1582
1583         * win32.c:
1584         * win32.c (setitimer_helper_proc):
1585         * win32.c (setitimer_helper_period):
1586         * win32.c (setitimer_helper):
1587         * win32.c (mswindows_setitimer):
1588         Move setitimer() emulation here, so Cygwin can use it.
1589         Rename a couple of functions and variables to be longer and more
1590         descriptive.  In setitimer_helper_proc(), send the signal
1591         using either mswindows_raise() or (on Cygwin) kill().  If for
1592         some reason we are still getting lockups, we'll change the kill()
1593         to directly invoke the signal handlers.
1594
1595         ------ windows shell fixes ------
1596         
1597         * callproc.c:
1598         * ntproc.c:
1599         Comments about how these two files must die.
1600
1601         * callproc.c (init_callproc):
1602         On MS Windows, init shell-file-name from SHELL, then COMSPEC,
1603         not just COMSPEC. (more correct and closer to FSF.) Don't
1604         force a value for SHELL into the environment. (Comments added
1605         to explain why not.)
1606         
1607         * nt.c (init_user_info):
1608         Don't shove a fabricated SHELL into the environment.  See above.
1609
1610 2001-06-01  Ben Wing  <ben@xemacs.org>
1611
1612         * Makefile.in.in (ldflags):
1613         eliminate that pesky "defaulting to 00401000" warning.
1614         * nt.h:
1615         eliminate warnings.
1616
1617 2001-06-15  Golubev I. N.  <gin@mo.msk.ru>
1618
1619         * s/sco5.h (FORCE_ALLOCATE_PTY_THE_OLD_FASHIONED_WAY): #define.
1620         * process-unix.c (allocate_pty): #ifndef "modern" pty allocation.
1621
1622 2001-04-24  Jerry James <james@xemacs.org>
1623
1624         * faces.h: pass parameters to Fadd_spec_to_specifier in the
1625         correct order.
1626
1627 2001-06-01  Ben Wing  <ben@xemacs.org>
1628
1629         * event-msw.c (debug_mswin_messages):
1630         conditionalize the messages that were causing compile errors.
1631         (if only macros could generate #ifdef statements ...)
1632
1633 2001-07-28  Stephen J. Turnbull  <stephen@xemacs.org>
1634
1635         * XEmacs 21.4.4 "Artificial Intelligence" is released.
1636
1637 2001-07-22  Stephen J. Turnbull  <stephen@xemacs.org>
1638
1639         * event-msw.c (mswindows_wnd_proc): Add GC debugging assert.
1640
1641 2001-07-22  Stephen J. Turnbull  <stephen@xemacs.org>
1642
1643         * config.h.in (IPV6_CANONICALIZE): New #define for --with-ipv6-lookup.
1644         * process-unix.c (unix_canonicalize_host_name):
1645         sysdep.c (init_system_name):
1646         Use it to conditionally support IPv6 canonicalization.
1647
1648 2001-05-31  Paul Stodghill  <stodghil@cs.cornell.edu>
1649
1650         * event-msw.c:
1651         Cygwin does not define WM_IME_xxx. Modify the #if's accordingly.
1652
1653 2001-05-19  Paul Krause  <paulkrause1@mediaone.net>
1654
1655         * scrollbar-msw.c: Fixes a crash that occurs on Windows when an
1656         attempt is made to scroll when no scroll bar is available.
1657
1658 2001-04-19  Glynn Clements  <glynn.clements@virgin.net>
1659
1660         * input-method-motif.c (XIM_delete_frame): New callback.
1661         (XIM_init_frame): Register it.  (Reapplied by SJT, it somehow
1662         got deleted from 21.4.3.)
1663
1664 2001-06-01  Ben Wing  <ben@xemacs.org>
1665
1666         * nt.c (mswindows_utime):
1667         * nt.c (close_file_data):
1668         fix off-by-one-indirection error.
1669
1670 2001-05-29  Adrian Aichner  <adrian@xemacs.org>
1671
1672         * fileio.c: Include nt.h.  Remove lisp_string_set_file_times()
1673         because set_file_times() now takes Lisp_Object path, instead of
1674         char*.
1675         * nt.c: Include buffer.h.
1676         * nt.c (convert_from_time_t): New.
1677         * nt.c (mswindows_utime): New.  Use utime, since SetFileTime does
1678         not set mtime correctly.
1679         * nt.h: Declare mswindows_utime().
1680         * sysdep.c (set_file_times): set_file_times() now takes Lisp_Object
1681         path, instead of char*.
1682         * systime.h: Include <sys/utime.h> on WIN32_NATIVE.
1683
1684 2001-05-30  Ben Wing  <ben@xemacs.org>
1685
1686         For 21.4:
1687
1688         (Stephen, just take all event-msw.c patches.  This includes
1689         the "iconify" fix below.)
1690
1691         * event-msw.c:
1692         * event-msw.c (mswindows_dequeue_dispatch_event):
1693         * event-msw.c (assert):
1694         * event-msw.c (emacs_mswindows_quit_p):
1695         * event-msw.c (debug_mswin_messages):
1696         * event-msw.c (debug_output_mswin_message):
1697         * event-msw.c (vars_of_event_mswindows):
1698         Fix yet more problems with C-g handling.
1699         Implement debug-mswindows-events.
1700         
1701 2001-05-24  Kirill 'Big K' Katsnelson  <kkm@dtmx.com>
1702
1703         * event-msw.c (WM_DROPFILES): Use correct type for OLE characters.
1704         
1705 2001-05-23  Ben Wing  <ben@xemacs.org>
1706
1707         * event-msw.c (winsock_writer):
1708         * event-msw.c (winsock_closer):
1709         prior kludgy code was clobbering the buffer, thinking it was
1710         "unused" space to store an unneeded return value; instead, use
1711         the variable we've already got staring us in the face.
1712
1713 2001-05-17  Andy Piper  <andy@xemacs.org>
1714
1715         * sysfile.h: don't assume that file attributes are boolean
1716
1717 2001-05-23  Ben Wing  <ben@xemacs.org>
1718
1719         * device-msw.c (msprinter_init_device):
1720         signal an error rather than crash with an unavailable network
1721         printer (from Mike Alexander).
1722         
1723         * event-msw.c:
1724         * event-msw.c (struct winsock_stream):
1725         * event-msw.c (winsock_writer):
1726         * event-msw.c (winsock_closer):
1727         * event-msw.c (make_winsock_stream_1):
1728         cleanup headers.  fix (hopefully) an error with data corruption
1729         when sending to a network connection.
1730
1731         * fileio.c (Fexpand_file_name): Fix evil code that attempts
1732         to handle the ~user prefix by (a) always assuming we're referencing
1733         ourselves and not even verifying the user -- hence any file with
1734         a tilde as its first char is invalid! (b) if there wasn't a slash
1735         following the filename, the pointer was set *past* the end of
1736         file and we started reading from uninitialized memory.  Now we
1737         simply treat these as files, always.
1738
1739         * buffer.c (common_init_complex_vars_of_buffer): comment change.
1740         
1741 2001-05-19  Ben Wing  <ben@xemacs.org>
1742
1743         * eval.c: doc comment about gcpro'ing in record_unwind_protect.
1744
1745         * process-nt.c:
1746         * process-nt.c (vars_of_process_nt):
1747         remove unused mswindows-quote-process-args.  rec for 21.4.
1748         
1749 2001-05-12  Ben Wing  <ben@xemacs.org>
1750
1751         * event-msw.c (mswindows_dde_callback):
1752         * event-msw.c (mswindows_wnd_proc):
1753         eliminate cygwin warnings.
1754
1755 2001-05-06  Ben Wing  <ben@xemacs.org>
1756
1757         * console-msw.h:
1758         * device-msw.c:
1759         * device-msw.c (print_dialog_worker):
1760         * device-msw.c (mswindows_handle_print_dialog_box):
1761         * device-msw.c (syms_of_device_mswindows):
1762         * dialog-msw.c (mswindows_make_dialog_box_internal):
1763         * general-slots.h:
1764         implement printing the selection when it's selected.
1765
1766 2001-05-20  Drazen Kacar  <dave@arsdigita.com>
1767
1768         * glyphs-gtk.c (gtk_resource_instantiate): C++ comment -> #if 0
1769
1770 2001-05-11  Yoshiki Hayashi  <yoshiki@xemacs.org>
1771
1772         * lisp.h (EMACS_INT_MAX): This should be one bit less since
1773         EMACS_INT is signed.
1774
1775 2001-04-15  Michael Lausch  <mla@1012surf.net>
1776
1777         * scrollbar-gtk.c (gtk_create_scrollbar_instance): Call
1778         gtk_widget_request_size() to give scrollbar >0 width for
1779         GTK >1.2.8.
1780
1781 2001-05-30  William M. Perry  <wmperry@gnu.org>
1782
1783         * event-gtk.c: Check for buttons as modifier keys.
1784
1785 2001-05-25  Craig Lanning  <CraigL@Knology.net>
1786
1787         * s\mingw32.h:
1788         Properly find MinGW's <process.h> inside Cygwin's restructured
1789         include directories.  Don't try to include <cygwin/version.h>
1790         since we are dropping support for MinGW in versions of Cygwin
1791         earlier than b21.
1792         * nt.c:
1793         Drop support for MinGW in versions of Cygwin before b21.
1794         * sysdep.c:
1795         Properly find MinGW's <process.h> inside Cygwin's restructured
1796         include directories.
1797         * syswindows.h:
1798         Drop support for MinGW in versions of Cygwin before b21.
1799         * unexcw.c:
1800         Even though a.out.h is no longer detected by configure, allow
1801         MinGW to use it until we figure out how to do the job with Win32.
1802
1803 2001-07-11  Matt Tucker  <tuck@whistlingfish.net>
1804
1805         * syntax.c (find_start_of_comment):
1806         Fix `unbalanced parentheses' bug when dealing with mixed comment
1807         styles in c++/java/etc. mode
1808
1809 2001-05-29  Mike Alexander  <mta@arbortext.com>
1810
1811         * console-msw.h (FRAME_MSPRINTER_CHARHEIGHT): Unswap
1812         FRAME_MSPRINTER_CHARWIDTH and FRAME_MSPRINTER_CHARHEIGHT
1813
1814 2001-05-17  Andrew Begel  <abegel@eecs.berkeley.edu>
1815
1816         * lrecord.h (INIT_EXTERNAL_LRECORD_IMPLEMENTATION): Add needed cast.
1817
1818 2001-03-31  Mike Sperber <mike@xemacs.org>
1819
1820         * search.c (Freplace_match): Support FSF-style specification of
1821         match subexpression when applied to a buffer.
1822
1823 2001-05-27  Karl M. Hegbloom  <karlheg@hegbloom.net>
1824
1825         * event-stream.c (is_scrollbar_event): add missing semicolon
1826
1827 2001-05-22  Isaac Hollander  <ysh@mindspring.com>
1828
1829         * Makefile.in.in: Use TAR macro instead of hardcoding
1830           tar.  Allows use of GNU tar instead of system tar
1831
1832 2001-05-27  Karl M. Hegbloom  <karlheg@hegbloom.net>
1833
1834         * event-stream.c (is_scrollbar_event): add missing semicolon
1835
1836 2001-05-17  Stephen J. Turnbull  <stephen@xemacs.org>
1837
1838         * XEmacs 21.4.3 "Academic Rigor" is released.
1839
1840 2001-05-17  Stephen J. Turnbull  <stephen@xemacs.org>
1841
1842         * regex.c: Define DECLARE_NOTHING when "lisp.h" is not included.
1843
1844 2001-05-08  Yoshiki Hayashi  <yoshiki@xemacs.org>
1845
1846         * buffer.c (Vcase_fold_search): Remove obsolete
1847           comment about non ASCII case-fold-search.  This
1848           bug has been fixed by case-table changes.
1849
1850 2001-05-11  Stephen J. Turnbull  <stephen@xemacs.org>
1851
1852         * event-msw.c: Restore include of events-mod.h.
1853
1854 2001-04-22   zhaoway  <zw@debian.org>
1855
1856         * event-stream.c (is_scrollbar_event): Noop returning 0 if
1857         !HAVE_SCROLLBARS.
1858
1859 2001-05-10  Stephen J. Turnbull  <stephen@xemacs.org>
1860
1861         * XEmacs 21.4.2 "Developer-Friendly Unix APIs" is released.
1862
1863 2001-05-08  Yoshiaki Kasahara  <kasahara@nc.kyushu-u.ac.jp>
1864
1865         * mule-charset.c (Fmake_charset): Add missing else.
1866
1867 2001-04-23  Ben Wing  <ben@xemacs.org>
1868
1869         * event-msw.c (FAKE_MOD_QUIT):
1870         * event-msw.c (mswindows_dequeue_dispatch_event):
1871         * event-msw.c (mswindows_wnd_proc):
1872         * event-msw.c (emacs_mswindows_quit_p):
1873         Get critical quit working.
1874
1875 2001-05-05  Ben Wing  <ben@xemacs.org>
1876
1877         * console-msw.h:
1878         * device-msw.c:
1879         * device-msw.c (mswindows_get_default_margin):
1880         * frame-msw.c (mswindows_size_frame_internal):
1881         * frame-msw.c (msprinter_init_frame_1):
1882         * frame-msw.c (vars_of_frame_mswindows):
1883         Change top/bottom margin defaults to 0.5 inches.
1884
1885 2001-05-01  Martin Buchholz  <martin@xemacs.org>
1886
1887         Fix link error with gcc 3.0 on Linux.
1888         * terminfo.c (UP): Remove.
1889         * terminfo.c (BC): Remove.
1890         * terminfo.c (PC): Remove.
1891         They weren't used, and in any case, these symbols should be
1892         defined in the *library*.
1893
1894 2001-05-03  Martin Buchholz  <martin@xemacs.org>
1895
1896         * s/aix4.h: Fix crash with xlc -O3.
1897         Improve comment explaining how -O3 works.
1898
1899 2001-04-15  Ben Wing  <ben@xemacs.org>
1900
1901         * event-stream.c:
1902         * event-stream.c (Fnext_event):
1903         * event-stream.c (is_scrollbar_event):
1904         * event-stream.c (execute_command_event):
1905         Better fix for Yoshiki's `C-x @ h <scrollbar-drag> x causes a
1906         crash' problem.  His fix introduces other problems.  We filter
1907         out scrollbar events specifically, making them somewhat invisible
1908         to command-building, and not appearing in `this-command-keys'.
1909         More work is still needed (see comments in event-stream.c), but
1910         this fixes all the major problems.
1911
1912 2001-04-20  Ben Wing  <ben@xemacs.org>
1913
1914         * .cvsignore: Added stuff for Windows.
1915
1916 2001-04-28  Ben Wing  <ben@xemacs.org>
1917
1918         * buffer.c (Ferase_buffer):
1919         * editfns.c (buffer_insert1):
1920         * editfns.c (Finsert_before_markers):
1921         * editfns.c (Finsert_string):
1922         * editfns.c (Finsert_char):
1923         * editfns.c (Fdelete_region):
1924         * editfns.c (Fwiden):
1925         * editfns.c (Fnarrow_to_region):
1926         remove bogus lines setting zmacs_region_stays to 0.
1927         
1928 2001-04-15  Gunnar Evermann  <ge204@eng.cam.ac.uk>
1929
1930         * process-unix.c (unix_open_network_stream): If connect() fails
1931         invalidate file descriptor after closing it.
1932
1933 2001-03-08  Mike Alexander  <mta@arbortext.com>
1934
1935         * event-msw.c (mswindows_need_event_in_modal_loop):
1936         Don't dispatch a message if we didn't get one.
1937         (mswindows_need_event):
1938         Terminate the correct process when one exits instead of the first
1939         one on Vprocess_list and look for process termination when in
1940         mswindows_protect_modal_loop.
1941
1942 2001-04-19  Stephen J. Turnbull  <stephen@xemacs.org>
1943
1944         * XEmacs 21.4.1 "Copyleft" is released.
1945
1946 2001-04-19  Glynn Clements  <glynn.clements@virgin.net>
1947
1948         * input-method-motif.c (XIM_delete_frame): New callback.
1949         (XIM_init_frame): Register it.
1950
1951 2001-04-16  Stephen J. Turnbull  <stephen@xemacs.org>
1952
1953         * XEmacs 21.4.0 "Solid Vapor" is released.
1954
1955 2001-04-15  Ben Wing  <ben@xemacs.org>
1956
1957         * cmdloop.c (call_command_loop):
1958         Fix braino in bit-rotting code.
1959         
1960 2001-04-07  Hrvoje Niksic  <hniksic@arsdigita.com>
1961
1962         * extents.c (Fset_extent_endpoints): Force creation of extent info
1963         in buffer_or_string.
1964
1965         * extents.c (process_extents_for_insertion_mapper): Correctly
1966         check for open-open zero-length extents.
1967
1968 2001-04-16  Stephen J. Turnbull  <stephen@xemacs.org>
1969
1970         * lisp.h: New typedefs Memory_count, Element_count.
1971         * regex.c:
1972         * regex.h:
1973         Sign-compare warning elimination: several unsigned -> signed.
1974         Based on work by Ben Wing <ben@xemacs.org>.
1975
1976 2001-04-14  Stephen J. Turnbull  <stephen@xemacs.org>
1977
1978         * XEmacs 21.2.47 "Zephir" is released.
1979
1980 2001-04-02  Jan Vroonhof  <jan@xemacs.org>
1981
1982         * redisplay.c (add_bufbyte_string_runes): Update data->bytepos
1983
1984 2001-04-03  Mike Sperber <mike@xemacs.org>
1985
1986         * search.c: Revert previous patch due because of release.
1987
1988 2001-03-30  Ben Wing  <ben@xemacs.org>
1989
1990         * s\cygwin32.h:
1991         Add missing killpg prototype.
1992
1993         * elhash.c:
1994         Add a comment about fixing problems when a new entry is added
1995         while mapping.
1996
1997         * frame-msw.c (mswindows_init_frame_1):
1998         Fix compile warnings.
1999
2000         * menubar.c (vars_of_menubar):
2001         Provide `menu-accelerator-support' to indicate that we properly
2002         support %_ in menu specifications, so that package code can
2003         conditionalize on this (and remove %_ from menu specifications
2004         on older versions).
2005
2006         * event-msw.c:
2007         * scrollbar-msw.c:
2008         * scrollbar-msw.c (can_scroll):
2009         * scrollbar-msw.h:
2010         Fix handling of mouse wheel under Windows to follow standards --
2011         now scrolls window under pointer, not selected window.
2012
2013 2001-03-31  Mike Sperber <mike@xemacs.org>
2014
2015         * search.c (Freplace_match): Support FSF-style specification of
2016         match subexpression when applied to a buffer.
2017
2018 2001-03-15  Martin Buchholz  <martin@xemacs.org>
2019
2020         * keymap.c (Fmap_keymap): map-keymap explicitly allows a mapping
2021         function to modify KEYMAP, so map over a copy of the hash table.
2022
2023 2001-03-21  Martin Buchholz <martin@xemacs.org>
2024
2025         * XEmacs 21.2.46 "Urania" is released.
2026
2027 2001-03-20  Dan Holmsand  <dan@eyebee.com>
2028
2029         * realpath.c (xrealpath): Make file-truename work with symlinks to
2030         /cygdrive paths on cygwin. Always lowercase drive-letters on
2031         native windows.
2032         (cygwin_readlink): Don't try to find canonical filename unless
2033         file exists.
2034
2035 2001-03-15  Stephen J. Turnbull  <stephen@xemacs.org>
2036
2037         * ChangeLog: Log GTK merge.
2038
2039         * dumper.c:
2040         * select-x.c:
2041         * specifier.c:
2042         * symeval.h:
2043         Revert gratuitous whitespace changes from GTK merge.
2044
2045         * emacs.c: Document end of complex #ifdef @ l. 1495.
2046
2047
2048 2001-03-12  Andy Piper  <andy@xemacs.org>
2049
2050         * mingw32.h: unfortunately cygnus changed mingw32 -> mingw so we
2051         have to do likewise.
2052
2053 2001-03-12  Andy Piper  <andy@xemacs.org>
2054
2055         * sysdep.c: we only support mingw now.
2056
2057 2001-03-09  Andy Piper  <andy@xemacs.org>
2058
2059         * unexcw.c (copy_executable_and_dump_data_section): making approx
2060         overrun a warning only.
2061
2062 2001-03-10  William M. Perry  <wmperry@aventail.com>
2063
2064         * faces.c (complex_vars_of_faces): Rewrote the font mucking to
2065         satisfy Stephen's identical-after-cpp plea.
2066
2067 2001-03-02  Ben Wing  <ben@xemacs.org>
2068
2069         * cmds.c:
2070         * cmds.c (Fforward_char):
2071         * syntax.c:
2072         * window.c:
2073
2074         Augment documentation of the most common motion commands to make
2075         note of the shifted-motion support.
2076         
2077 2001-03-02  Ben Wing  <ben@xemacs.org>
2078
2079         * nt.c (mswindows_fstat):
2080         * nt.c (mswindows_stat):
2081         * search.c (boyer_moore):
2082         Fix compile warnings under Windows.
2083         
2084         * sysdep.c (sys_readdir):
2085         Fix buggy filename-conversion code under Mule.
2086
2087 2001-03-09  William M. Perry  <wmperry@aventail.com>
2088
2089         * Makefile.in.in:
2090         * config.h.in:
2091         * console.c:
2092         * console.h:
2093         * device.c:
2094         * device.h:
2095         * dragdrop.c:
2096         * emacs.c:
2097         * event-stream.c:
2098         * events.c:
2099         * events.h:
2100         * faces.c:
2101         * frame.h:
2102         * general-slots.h:
2103         * glyphs.c:
2104         * gutter.c:
2105         * inline.c:
2106         * lisp.h:
2107         * lrecord.h:
2108         * make-src-depend:
2109         * redisplay-output.c:
2110         * redisplay.c:
2111         * symsinit.h:
2112         * sysfile.h:
2113         * toolbar.c:
2114         * window.c:
2115         The Great GTK Merge.
2116
2117         * ChangeLog.GTK:
2118         * console-gtk.c:
2119         * console-gtk.h:
2120         * device-gtk.c:
2121         * emacs-marshals.c:
2122         * emacs-widget-accessors.c:
2123         * event-gtk.c:
2124         * frame-gtk.c:
2125         * gccache-gtk.c:
2126         * gccache-gtk.h:
2127         * glade.c:
2128         * glyphs-gtk.c:
2129         * glyphs-gtk.h:
2130         * gtk-glue.c:
2131         * gtk-xemacs.c:
2132         * gtk-xemacs.h:
2133         * gui-gtk.c:
2134         * gui-gtk.h:
2135         * menubar-gtk.c:
2136         * native-gtk-toolbar.c:
2137         * objects-gtk.c:
2138         * objects-gtk.h:
2139         * redisplay-gtk.c:
2140         * scrollbar-gtk.c:
2141         * scrollbar-gtk.h:
2142         * select-gtk.c:
2143         * toolbar-gtk.c:
2144         * ui-byhand.c:
2145         * ui-gtk.c:
2146         * ui-gtk.h:
2147         The Great GTK Merge: new files.
2148
2149 2001-02-26  Ben Wing  <ben@xemacs.org>
2150
2151         Reapplied Lstream change.
2152
2153 2001-02-26  Ben Wing  <ben@xemacs.org>
2154
2155         Undid the last change, since it is more controversial than I
2156         thought.  It should be back in at some point soon.
2157         
2158 2001-02-25  Ben Wing  <ben@xemacs.org>
2159
2160         * buffer.c:
2161         * callproc.c (Fold_call_process_internal):
2162         * event-msw.c (ntpipe_slurp_reader):
2163         * event-msw.c (ntpipe_shove_writer):
2164         * event-msw.c (winsock_reader):
2165         * event-msw.c (winsock_writer):
2166         * file-coding.c:
2167         * file-coding.c (detect_eol_type):
2168         * file-coding.c (detect_coding_type):
2169         * file-coding.c (determine_real_coding_system):
2170         * file-coding.c (Fdetect_coding_region):
2171         * file-coding.c (decoding_reader):
2172         * file-coding.c (decoding_writer):
2173         * file-coding.c (mule_decode):
2174         * file-coding.c (Fdecode_coding_region):
2175         * file-coding.c (encoding_reader):
2176         * file-coding.c (encoding_writer):
2177         * file-coding.c (mule_encode):
2178         * file-coding.c (Fencode_coding_region):
2179         * file-coding.c (detect_coding_sjis):
2180         * file-coding.c (decode_coding_sjis):
2181         * file-coding.c (encode_coding_sjis):
2182         * file-coding.c (detect_coding_big5):
2183         * file-coding.c (decode_coding_big5):
2184         * file-coding.c (encode_coding_big5):
2185         * file-coding.c (detect_coding_ucs4):
2186         * file-coding.c (decode_coding_ucs4):
2187         * file-coding.c (encode_coding_ucs4):
2188         * file-coding.c (detect_coding_utf8):
2189         * file-coding.c (decode_coding_utf8):
2190         * file-coding.c (encode_coding_utf8):
2191         * file-coding.c (detect_coding_iso2022):
2192         * file-coding.c (decode_coding_iso2022):
2193         * file-coding.c (encode_coding_iso2022):
2194         * file-coding.c (decode_coding_no_conversion):
2195         * file-coding.c (encode_coding_no_conversion):
2196         * glyphs-x.c (write_lisp_string_to_temp_file):
2197         * gpmevent.c (tty_get_foreign_selection):
2198         * lisp.h:
2199         * lstream.c:
2200         * lstream.c (Lstream_flush_out):
2201         * lstream.c (Lstream_adding):
2202         * lstream.c (Lstream_write_1):
2203         * lstream.c (Lstream_write):
2204         * lstream.c (Lstream_raw_read):
2205         * lstream.c (Lstream_read_more):
2206         * lstream.c (Lstream_read):
2207         * lstream.c (Lstream_unread):
2208         * lstream.c (Lstream_fputc):
2209         * lstream.c (stdio_reader):
2210         * lstream.c (stdio_writer):
2211         * lstream.c (filedesc_reader):
2212         * lstream.c (filedesc_writer):
2213         * lstream.c (lisp_string_reader):
2214         * lstream.c (struct fixed_buffer_stream):
2215         * lstream.c (make_fixed_buffer_input_stream):
2216         * lstream.c (make_fixed_buffer_output_stream):
2217         * lstream.c (fixed_buffer_reader):
2218         * lstream.c (fixed_buffer_writer):
2219         * lstream.c (struct resizing_buffer_stream):
2220         * lstream.c (resizing_buffer_writer):
2221         * lstream.c (dynarr_writer):
2222         * lstream.c (lisp_buffer_reader):
2223         * lstream.c (lisp_buffer_writer):
2224         * lstream.h:
2225         * lstream.h (lstream_implementation):
2226         * lstream.h (struct lstream):
2227         * md5.c (Fmd5):
2228         * process-nt.c (nt_send_process):
2229         * process-unix.c (unix_send_process):
2230         
2231         Correct Lstream lossage due to mixing of signed and unsigned
2232         quantities.  All Lstream uses of size_t and ssize_t are now a
2233         single signed data type Lstream_data_count.  This fixes problems
2234         under Windows with sending large quantities of data to a process,
2235         and may well fix other subtle bugs.
2236
2237 2001-02-23  Martin Buchholz <martin@xemacs.org>
2238
2239         * XEmacs 21.2.45 "Thelxepeia" is released.
2240
2241 2001-02-21  Martin Buchholz  <martin@xemacs.org>
2242
2243         * lisp-union.h (XSETINT): 
2244         (XSETCHAR):
2245         (XSETOBJ): 
2246         Reverse previous change of 2001-02-06.
2247
2248 2001-02-20  Matt Tucker  <tuck@whistlingfish.net>
2249
2250         Fix `VALID_BYTIND_P' crashes in regex.c when using narrowed
2251         buffers.
2252         * syntax.h (SYNTAX_CACHE_BYTE_TO_CHAR):
2253         * syntax.h (SYNTAX_CACHE_OBJECT_BYTE_TO_CHAR):
2254         Add `BI_BUF_BEGV' to bytepos before calculating bufpos.
2255         * regex.c (POS_AS_IN_BUFFER): removed
2256         * regex.c (re_search_2):
2257         * regex.c (re_match_2):
2258         Don't use an offset of 1 when calculating buffer positions, since
2259         `BI_BUF_BEGV' does it already.
2260
2261 2001-02-18  Wim Dumon  <wim@easics.be>
2262
2263         * insdel.c (prepare_to_modify_buffer): Also check for
2264         supersession when clash-detection is enabled. 
2265
2266 2001-02-17  Matt Tucker  <tuck@whistlingfish.net>
2267
2268         * regex.c (re_match_2_internal):
2269         Convert temp characters from 'const unsigned char' to 're_char'.
2270         Fix crashing bug with extended characters under mule.
2271         * syntax.c (Qsyntax_table): Moved from vars_of_syntax to
2272         syms_of_syntax. Use defsymbol to define. Fixes hanging bug with
2273         font-lock, pdump, and new syntax-table code.
2274         * syntax.c (find_start_of_comment):
2275         (find_end_of_comment):
2276         (forward-comment):
2277         Fix crashing bugs involving moving beyond end of buffer.
2278         * syntax.c (find_start_of_comment):
2279         Fixed logic to allow proper detection of cases where the same
2280         character is used to end both a two-char comment start and a
2281         two-char comment end sequence. Fixes `(forward-comment -1)'.
2282         * syntax.c (find_start_of_comment):
2283         Return position just past last comment-end character for all cases
2284         (previously was only done for two-char comment-end sequences).
2285         * syntax.c (forward-comment):
2286         Take value returned from `find_end_of_comment', rather than
2287         incrementing it.
2288         * syntax.h (SYNTAX_CACHE_BYTE_TO_CHAR):
2289         Properly deal with BUFFERP (syntax_cache.object)
2290
2291 2001-02-17  Martin Buchholz  <martin@xemacs.org>
2292
2293         * alloc.c (Fgarbage_collect): 
2294         * alloc.c (make_bit_vector_from_byte_vector):
2295         -Wsign-compare-correctness.
2296
2297 2001-02-16  Martin Buchholz  <martin@xemacs.org>
2298
2299         * lisp-union.h (XSETINT): Eliminate unnecessary temp var.
2300         (XSETCHAR): Likewise.
2301         (XSETOBJ): Likewise.
2302
2303 2001-02-15  Martin Buchholz  <martin@xemacs.org>
2304
2305         * mule-canna.c (canna-func-delete_previous): 
2306         Rename to canna-func-delete-previous.
2307
2308 2001-02-14  Martin Buchholz  <martin@xemacs.org>
2309
2310         * mule-ccl.c (ccl_driver): Warning suppression.  Use countof.
2311
2312 2001-02-13  Matt Tucker  <tuck@whistlingfish.net>
2313
2314         * font-lock.c (find_context): Fix C++ compile errors introduced by
2315         recent patch
2316
2317 2001-02-13  Martin Buchholz  <martin@xemacs.org>
2318
2319         * s/aix4.h: Later versions of IBM C compiler need a bug workaround
2320         pragma, but earlier ones barf on the same pragma.
2321
2322 2001-02-06  Mike Sperber <mike@xemacs.org>
2323
2324         * emacs.c (complex_vars_of_emacs): Add `mule-lisp-directory' and
2325         `configure-mule-lisp-directory'.
2326
2327 2001-02-12  Martin Buchholz  <martin@xemacs.org>
2328
2329         Make sure dump-id.c is compiled in the same way as other .c's.
2330         Fixes pdump compilation failure with HP's cc, which defaults to K&R.
2331         * dump-id.h: Remove.
2332         * emacs.c: Move dump-id.h into dumper.h.
2333         * dumper.h: Move dump-id.h into dumper.h.
2334         * Makefile.in.in:
2335         Use standard .c.o rule for building dump-id.o.
2336         Remove preprocessor flags from link command.
2337         Add dump-id.o to ${otherobjs} if PDUMP.
2338
2339 2001-02-07  Matt Tucker  <tuck@whistlingfish.net>
2340
2341         Port FSF 20.7 syntax table improvements.
2342         * syntax.c.
2343         * syntax.h.
2344
2345         Fixups for new syntax table stuff.
2346         * dired.c: Include syntax.c.
2347         (Fdirectory_files): Initialize regex_match_object and
2348         regex_emacs_buffer.
2349         * extents.h: EXFUN Fnext_extent_change, Fprevious_extent_change,
2350         and Fget_char_property.
2351
2352         Use ported FSF 20.7 syntax table improvements.
2353         * font-lock.c.
2354         * regex.c.
2355         * search.c.
2356         
2357 2001-02-09  Martin Buchholz  <martin@xemacs.org>
2358
2359         * regex.c (Boolean): Renamed to `re_bool', to avoid conflict with
2360         Unixware's enum boolean from sys/types.h.
2361
2362 2001-02-10  Martin Buchholz  <martin@xemacs.org>
2363
2364         Fix support for building with latest Purify.
2365         * Makefile.in.in (PURIFY_LIBS): Remove thread flags.
2366         (PURIFY_FLAGS): Likewise.
2367
2368 2001-02-09  Martin Buchholz  <martin@xemacs.org>
2369
2370         * fileio.c (lisp_string_set_file_times): New.
2371         * fileio.c (Fcopy_file): Use it.
2372         Fixes bug:
2373         (copy-file filename non-ascii-filename t t)
2374         ==> No such file or directory, non-ascii-filename
2375
2376 2001-02-10  Martin Buchholz  <martin@xemacs.org>
2377
2378         * glyphs-x.c (generate_cursor_fg_bg): Avoid a warning.
2379         USHRT_MAX seems clearer than ~0 anyways.
2380
2381 2001-02-09  Martin Buchholz  <martin@xemacs.org>
2382
2383         dumper improvements.  Inspired by Olivier.
2384         * dumper.c (pdump_max_align): New.
2385         * dumper.c (pdump_add_entry): Use pdump_max_align.
2386         * dumper.c (pdump_get_entry_list): Likewise.
2387         * dumper.c (pdump_scan_by_alignment): Likewise.
2388         Don't iterate through unnecessary alignments.
2389         * dumper.c (pdump_file_get): No need to align result of malloc().
2390         * dumper.c (pdump_mallocadr): Remove.  
2391         The result of malloc() is guaranteed to be maximally aligned.
2392         * dumper.c: s/elmt/elt/g;
2393         * dumper.c (pdump_object_table): Allocate dynamically, not statically.
2394         * dumper.c (pdump_alert_undump_object): Likewise.
2395         * dumper.c (pdump_align_table): 
2396         Don't support alignments > 64.
2397         Store ALIGNOF's, not shift counts, in table.
2398
2399 2001-02-09  Martin Buchholz  <martin@xemacs.org>
2400
2401         * s/mingw32.h (HAVE_STRUCT_UTIMBUF): Remove.
2402         * s/windowsnt.h (HAVE_STRUCT_UTIMBUF): Remove.
2403         * systime.h: Use HAVE_UTIME.
2404         * sysdep.c (struct utimbuf): Remove.
2405         * sysdep.c (set_file_times): Prefer utime() to utimes().
2406         * config.h.in (HAVE_UTIME): New.
2407         * config.h.in (HAVE_UTIME_H): Remove.
2408         * config.h.in (HAVE_STRUCT_UTIMBUF): Remove.
2409
2410 2001-02-09  Martin Buchholz  <martin@xemacs.org>
2411
2412         * s/aix4.h: Hide #pragmas inside #ifndef NOT_C_CODE.
2413
2414 2001-02-08  Martin Buchholz  <martin@xemacs.org>
2415
2416         * s/irix6-0.h: Use the standard system memmove, not bcopy.
2417
2418 2001-02-08  Martin Buchholz <martin@xemacs.org>
2419
2420         * XEmacs 21.2.44 "Thalia" is released.
2421
2422 2001-02-06  Martin Buchholz  <martin@xemacs.org>
2423
2424         Fixes crashes in kill-emacs on some systems.
2425         * process-unix.c (unix_kill_child_process):
2426         It's OK for kill() to fail with ESRCH.
2427
2428 2001-02-07  Martin Buchholz  <martin@xemacs.org>
2429
2430         Contortions to make .gdbinit tricks work on most systems.
2431         * alloc.c (dbg_inhibit_dbg_symbol_deletion): Keep debugger info.
2432         * alloc.c (dbg_valmask): Make non-const.
2433         * alloc.c (dbg_typemask): Make non-const.
2434         * alloc.c (dbg_USE_UNION_TYPE): Make non-const.
2435         * alloc.c (dbg_valbits): Make non-const.
2436         * alloc.c (dbg_gctypebits): Make non-const.
2437         * .gdbinit (decode_object): Make it work with AIX cc.
2438
2439 2001-02-06  Martin Buchholz  <martin@xemacs.org>
2440
2441         * elhash.c (make_general_lisp_hash_table):
2442         Use simpler and more efficient calloc to clear entries.
2443
2444 2001-02-07  Martin Buchholz  <martin@xemacs.org>
2445
2446         * window.c (window_scroll): Work around an AIX C compiler bug.
2447         Fixes 'scroll-up' does nothing problem with xlC.
2448
2449 2001-02-05  Martin Buchholz  <martin@xemacs.org>
2450
2451         * .gdbinit: Remove obsolete comment.
2452
2453 2001-01-31  Mike Alexander  <mta@arbortext.com>
2454
2455         * select.c (Fown_selection_internal): Set owned_p for device
2456         method correctly.
2457
2458 2001-02-01  Martin Buchholz  <martin@xemacs.org>
2459
2460         Port to g++ 2.97.
2461         "not" cannot be used as a macro name as it is an operator in C++
2462         * config.h.in: Stop #defining `not'.
2463         * chartab.c (check_category_char): not ==> not_p
2464         * chartab.h: Likewise.
2465         * regex.c (re_match_2_internal): Likewise.
2466
2467 2001-02-02  Martin Buchholz  <martin@xemacs.org>
2468
2469         * lisp-disunion.h: Fix up comments.
2470
2471 2001-01-31  Martin Buchholz  <martin@xemacs.org>
2472
2473         * keymap.c (define_key_check_and_coerce_keysym):
2474         (syms_of_keymap):
2475         Support mouse-6 and mouse-7 bindings in the obvious way.
2476
2477 2001-02-01  Martin Buchholz  <martin@xemacs.org>
2478
2479         * m/hp9000s300.h (UNEXEC): Check for HPUX, not !BSD.
2480
2481 2001-01-30  Martin Buchholz  <martin@xemacs.org>
2482
2483         Previous patch changing DEFVAR_INT to use EMACS_INT was incomplete.
2484         Previous patch missed DEFVAR_INT_MAGIC.
2485         Make sure future DEFVAR_foo use correct types.
2486         * symeval.h (DEFVAR_SYMVAL_FWD_FIXNUM): New.
2487         * (DEFVAR_SYMVAL_FWD_INT): Add type checking.
2488         * (DEFVAR_SYMVAL_FWD_OBJECT): Add type checking.
2489         * (DEFVAR_INT_MAGIC): Use DEFVAR_SYMVAL_FWD_FIXNUM.
2490         * (DEFVAR_INT): Likewise.
2491         * redisplay.c (vertical_clip): Should be of type Fixnum.
2492         * redisplay.c (horizontal_clip): Likewise.
2493         * lisp.h (dump_add_opaque_int): New.
2494         (dump_add_opaque_fixnum): New.
2495
2496 2001-01-29  Andy Piper  <andy@xemacs.org>
2497
2498         * glyphs-widget.c (check_valid_int_or_function): allow symbols
2499         since they can be eval'ed
2500
2501 2001-01-29  Martin Buchholz  <martin@xemacs.org>
2502
2503         * lisp.h (ALIGNOF): Make it work on non-gcc C++ compilers.
2504         Oops, XEmacs redefines `class'.  Use `typename' instead.
2505
2506 2001-01-28  Martin Buchholz  <martin@xemacs.org>
2507
2508         * dumper.c: Fix C++ compile errors.
2509
2510 2001-01-29  Martin Buchholz  <martin@xemacs.org>
2511
2512         * tparam.c: Use correct prototypes.
2513
2514 2001-01-28  Martin Buchholz  <martin@xemacs.org>
2515
2516         * sysproc.h: #include util.h for NetBSD's openpty.
2517
2518 2001-01-27  Martin Buchholz  <martin@xemacs.org>
2519
2520         More 64-bit correctness.
2521         The C value of a DEFVAR_INT should be of type EMACS_INT, not int.
2522         Use a typedef `fixnum' for the type used for DEFVAR_INT.
2523         Fix up comments.
2524         This finally finishes the 64-bit SGI port.
2525         Fixes things like (let ((gc-cons-threshold most-positive-fixnum)) ...).
2526         * symbols.c: Fix up comments and type casts.
2527         * symbols.c (do_symval_forwarding): s/int/Fixnum/g
2528         * symbols.c (store_symval_forwarding): s/int/Fixnum/g
2529         * symeval.h (Fixnum): New type.
2530         * symeval.h (symbol_value_type): Fix up comment.
2531
2532         * commands.h:
2533         * nt.c:
2534         * emacs.c:
2535         * data.c:
2536         * redisplay.c:
2537         * abbrev.c:
2538         * dired-msw.c:
2539         * event-Xt.c:
2540         * eldap.c:
2541         * window.c:
2542         * sound.c:
2543         * event-stream.c:
2544         * eval.c:
2545         * buffer.c:
2546         * mule-canna.c: A million DEFVAR_INTs here...
2547         * mule-canna.c (count_char): s/int */Fixnum */g in arglist.
2548         * extents.c:
2549         * cmdloop.c:
2550         * lisp.h:
2551         * select-x.c:
2552         * console-x.h:
2553         * event-msw.c:
2554         * mule-wnnfns.c:
2555         * hpplay.c:
2556         * ralloc.c:
2557         * alloc.c:
2558         * keymap.c:
2559         * profile.c:
2560         s/int/Fixnum/g in DEFVAR_INT declarations.
2561
2562 2001-01-26  Martin Buchholz  <martin@xemacs.org>
2563
2564         Port pdump to SGI alignment-sensitive environment.
2565         Lisp Object sizeof methods now return aligned sizes.  Rely on that.
2566         Eliminate is_lrecord since Lisp_Objects sizeof methods are now all
2567         properly aligned.
2568         Define and use aligned reading and writing macros.
2569         Use buffered stdio instead of posix i/o for faster dumping.
2570         Eliminate kludgy 256 byte space for header.
2571         Read and write from dump file using structs for alignment safety.
2572         * dumper.c (pdump_align_stream): New.
2573         * dumper.c (PDUMP_ALIGN_OUTPUT): New.
2574         * dumper.c (PDUMP_READ_ALIGNED): New.
2575         * dumper.c (PDUMP_WRITE_ALIGNED): New.
2576         * dumper.c (pdump_static_Lisp_Object): New struct.
2577         * dumper.c (pdump_static_pointer): New struct.
2578         * dumper.c (pdump_entry_list_element): Remove is_lrecord member.
2579         * dumper.c (pdump_add_entry): Remove is_lrecord parameter.
2580         * dumper.c (pdump_dump_data): Rely on sizeof method alignment.
2581         * dumper.c (pdump_allocate_offset): Rely on sizeof method alignment.
2582
2583         * dumper.c (pdump_backtrace):
2584         * dumper.c (pdump_get_indirect_count):
2585         * dumper.c (pdump_register_object):
2586         * dumper.c (pdump_register_struct):
2587         * dumper.c (pdump_reloc_one):
2588         * dumper.c (pdump_scan_by_alignment):
2589         * dumper.c (pdump_dump_from_root_struct_ptrs):
2590         * dumper.c (pdump_dump_opaques):
2591         * dumper.c (pdump_dump_rtables):
2592         * dumper.c (pdump_dump_from_root_objects):
2593         * dumper.c (pdump):
2594         * dumper.c (pdump_load_finish):
2595         Use aligned reading and writing.
2596
2597         * dumper.c (pdump_free): Make static.
2598         * dumper.c (pdump_hFile): Likewise.
2599         * dumper.c (pdump_hMap): Likewise.
2600
2601 2001-01-26  Martin Buchholz <martin@xemacs.org>
2602
2603         * XEmacs 21.2.43 "Terspichore" is released.
2604
2605 2001-01-25  Martin Buchholz  <martin@xemacs.org>
2606
2607         Type fiddling for window_config.saved_windows_count
2608         * window.c (struct window_config): 
2609         Make saved_windows_count member unsigned.
2610         * window.c (sizeof_window_config_for_n_windows): 
2611         Make parameter unsigned.
2612         * window.c (mark_window_config):
2613         * window.c (window_config_equal):
2614         * window.c (free_window_configuration):
2615         * window.c (Fset_window_configuration):
2616         * window.c (count_windows):
2617         * window.c (Fcurrent_window_configuration):
2618         * window.c (reinit_vars_of_window):
2619         Update all callers and users.
2620
2621 2001-01-25  Martin Buchholz  <martin@xemacs.org>
2622
2623         Alignment correctness for flexible arrays.
2624         * lisp.h (FLEXIBLE_ARRAY_STRUCT_SIZEOF):
2625         Make alignment-correct. Add interesting comments.
2626         * alloc.c (size_vector):
2627         * alloc.c (make_vector_internal):
2628         * alloc.c (make_bit_vector_internal):
2629         * alloc.c (sweep_bit_vectors_1):
2630         * fns.c (size_bit_vector):
2631         Update all callers of FLEXIBLE_ARRAY_STRUCT_SIZEOF to add new arg.
2632         * window.c (sizeof_window_config_for_n_windows): 
2633         Use FLEXIBLE_ARRAY_STRUCT_SIZEOF.
2634
2635 2001-01-24  Martin Buchholz  <martin@xemacs.org>
2636
2637         * lread.c (read1): Rename `fexp', which is #defined in SGI's math.h
2638
2639 2001-01-23  Andy Piper  <andy@xemacs.org>
2640
2641         * select.c (Fown_selection_internal): pass owned_p
2642
2643         * select-msw.c (mswindows_own_selection): New Signature.
2644
2645         * console.h (struct console_methods): add owned_p to
2646         _own_selection.
2647
2648         * select-x.c (x_own_selection): pass owned_p
2649         (hack_motif_clipboard_selection): use owned_p
2650         (vars_of_select_x): new variable -
2651         x_selection_strict_motif_ownership.
2652
2653 2001-01-23  Martin Buchholz  <martin@xemacs.org>
2654
2655         * specifier.h (specifier_data_offset): Remove pointless parens.
2656         * glyphs.h (IMAGE_SPECIFIER_DATA): Likewise.
2657
2658 2001-01-24  Martin Buchholz  <martin@xemacs.org>
2659
2660         Make Lisp_Object sizeof methods be alignment-correct.
2661         pdump must restore objects to the same alignment as the C compiler
2662         assumes.  It really matters on SGIs.
2663         * lstream.c (aligned_sizeof_lstream): New.
2664         (sizeof_lstream): Use aligned_sizeof_lstream.
2665         (Lstream_new): Likewise.
2666         * opaque.c (aligned_sizeof_opaque): New.
2667         (sizeof_opaque): Use aligned_sizeof_opaque.
2668         (make_opaque): Likewise.
2669         * specifier.c (aligned_sizeof_specifier): New.
2670         (sizeof_specifier): Use aligned_sizeof_specifier.
2671         (make_specifier_internal): Likewise.
2672
2673 2001-01-23  Martin Buchholz  <martin@xemacs.org>
2674
2675         * lstream.h (struct lstream): Use max_align_t for trailing data.
2676         * specifier.h (struct Lisp_Specifier): Likewise.
2677
2678 2001-01-22  Martin Buchholz  <martin@xemacs.org>
2679
2680         * mule-ccl.c (CCL_Extension): Renamed from CCL_Extention.
2681         (CCL_SUCCESS): Kludge to prevent Sun cc compiler warnings.
2682         (CCL_SUSPEND): Likewise.
2683         (CCL_INVALID_CMD): Likewise.
2684         (CCL_CALL_FOR_MAP_INSTRUCTION): Likewise.
2685         (ccl_driver): Likewise.
2686         (CCL_WRITE_CHAR): Macro hygiene.
2687         (CCL_WRITE_STRING): Macro hygiene.
2688
2689 2001-01-22  Martin Buchholz  <martin@xemacs.org>
2690
2691         Port "portable" dumper to SunOS 4 and HP-UX.
2692         * s/aix4.h (AIX4): Move MAP_FAILED definition elsewhere.
2693         * emacs.c (main): PDUMP implies no RUN_TIME_REMAP.
2694         * dumper.c (pdump_file_get): Define MAP_FAILED if not already defined.
2695
2696 2001-01-22  Martin Buchholz  <martin@xemacs.org>
2697
2698         * lisp.h (ALIGNOF): A better definition for C++.
2699
2700 2001-01-20  Martin Buchholz  <martin@xemacs.org>
2701
2702         Macro hygiene.
2703         Fix printf warnings: int format, long int arg.
2704         * regex.c (DECLARE_DESTINATION): Use DECLARE_NOTHING.
2705         (PUSH_FAILURE_POINT): Use correct printf formats.
2706         (POP_FAILURE_POINT): Use correct printf formats.  
2707         Use do {...} while (0)
2708
2709 2001-01-20  Martin Buchholz <martin@xemacs.org>
2710
2711         * XEmacs 21.2.42 "Poseidon" is released.
2712
2713 2001-01-20  Martin Buchholz  <martin@xemacs.org>
2714
2715         * console-x.h: typo fix du jour.  Remove #if 0'ed code.
2716
2717 2001-01-19  Martin Buchholz  <martin@xemacs.org>
2718
2719         De-kludgify FIXED_TYPE free list frobbing.
2720         Fix crashes on 64-bit platforms introduced by my patch of 2001-01-13.
2721         * alloc.c (DECLARE_FIXED_TYPE_ALLOC): Use Lisp_Free.
2722         * alloc.c (ALLOCATE_FIXED_TYPE_1): Use new definitions.
2723         * alloc.c (Lisp_Free): New pseudo lisp object definition.
2724         * alloc.c (LRECORD_FREE_P): New.
2725         * alloc.c (MARK_LRECORD_AS_FREE): New.
2726         * alloc.c (MARK_LRECORD_AS_NOT_FREE): New.
2727         * alloc.c (STRUCT_FREE_P): Deleted.
2728         * alloc.c (MARK_STRUCT_AS_FREE): Deleted.
2729         * alloc.c (MARK_STRUCT_AS_NOT_FREE): Deleted.
2730         * alloc.c (STRING_CHARS_FREE_P): New.
2731         * alloc.c (MARK_STRING_CHARS_AS_FREE): New.
2732         * alloc.c (PUT_FIXED_TYPE_ON_FREE_LIST): Use new definitions.
2733         * alloc.c (FREE_FIXED_TYPE): Use new definitions.
2734         * alloc.c (STRING_CHARS_FREE_P): Use new definitions.
2735         * alloc.c (resize_string): Use new definitions.
2736         * alloc.c (SWEEP_FIXED_TYPE_BLOCK): Use new definitions.
2737         * alloc.c (verify_string_chars_integrity): Use new definitions.
2738         * alloc.c (compact_string_chars): Use new definitions.
2739         * alloc.c: Update monster comments.
2740         * lrecord.h (lrecord_type): Add some new lrecord types for
2741         alloc.c's use.
2742
2743 2001-01-18  Martin Buchholz  <martin@xemacs.org>
2744
2745         Improve alignment hackery.
2746         * lisp.h (ALIGNOF): Better definition for the non-gcc case.
2747         (max_align_t): Moved from opaque.h - general purpose.
2748         (ALIGN_PTR): Use size_t, not long.
2749         * opaque.h (max_align_t): Move to lisp.h.
2750
2751 2001-01-18  Norbert Koch  <nk@LF.net>
2752
2753         * gui.h: Fix and add prototypes to fix build problems.
2754
2755 2001-01-18  Martin Buchholz  <martin@xemacs.org>
2756
2757         temacs is going away, so `dump-temacs' is now a bad name.
2758         * .dbxrc (dump-temacs): Rename to `dmp'.
2759         * .gdbinit (dump-temacs): Rename to `dmp'.
2760
2761 2001-01-17  Andy Piper  <andy@xemacs.org>
2762
2763         * glyphs.c (print_image_instance): comment to make martin happy.
2764
2765         * glyphs-x.c (x_redisplay_widget): update faces after a frame
2766         change.
2767
2768         * glyphs-msw.c (mswindows_redisplay_widget): add code to cope with
2769         activation.
2770         (mswindows_tab_control_redisplay): warning suppression.
2771
2772         * glyphs-widget.c (widget_update): re-write to cope with updated
2773         items.
2774         (widget_instantiate): use new gui_item functions.
2775         (tab_control_update): deleted.
2776         (progress_gauge_update): deleted.
2777         (image_instantiator_progress_guage): take out update reference.
2778         (image_instantiator_tree_view): ditto.
2779         (image_instantiator_tab_control): ditto.
2780
2781         * gui.c (widget_gui_parse_item_keywords): new function. Do things
2782         Right the new way.
2783         (gui_item_add_keyval_pair): re-write to cope with descriptors and
2784         return whether anything was changed.
2785         (update_gui_item_keywords): as it sounds.
2786
2787         * gui.h: declare widget_gui_parse_item_keywords.
2788
2789         * fns.c (safe_copy_tree): new function taken from Fcopy_tree.
2790         (Fcopy_tree): use it. Stops infloop death in bogus instantiators.
2791
2792 2001-01-17  Martin Buchholz <martin@xemacs.org>
2793
2794         * XEmacs 21.2.41 "Polyhymnia" is released.
2795
2796 2001-01-16  Didier Verna  <didier@xemacs.org>
2797
2798         * glyphs.c (image_instantiate): don't use fallbacks when
2799         instantiating a face's background pixmap by inheritance.
2800
2801 2001-01-14  Mike Sperber <mike@xemacs.org>
2802
2803         * sysdep.c (start_of_data): PDUMP implies ORDINARY_LINK.
2804         Conditionalize accordingly.
2805
2806 2001-01-16  Martin Buchholz  <martin@xemacs.org>
2807
2808         * dumper.c (pdump_file_get): Fix a compiler warning.
2809
2810 2001-01-15  Martin Buchholz  <martin@xemacs.org>
2811
2812         Make Purify happy when pdumping.
2813         * symbols.c (Fmake_variable_buffer_local): Make Purify happy, by
2814         iniitalizing all bits of new lisp object memory.
2815         * symbols.c (Fmake_local_variable): Likewise.
2816         * symbols.c (Fdontusethis_set_symbol_value_handler): Likewise.
2817         * symbols.c (Fdefvaralias): Likewise.
2818         * mule-charset.c (vars_of_mule_charset): Likewise.
2819
2820 2001-01-15  Martin Buchholz  <martin@xemacs.org>
2821         Add the `-nd' flag when running pre-dump operations under the debugger.
2822         * .dbxrc (run-temacs): Add `-nd'.
2823         * .dbxrc (update-elc): Likewise.
2824         * .dbxrc (dump-temacs): Likewise.
2825         * .gdbinit (run-temacs): Likewise.
2826         * .gdbinit (check-temacs): Likewise.
2827         * .gdbinit (update-elc): Likewise.
2828         * .gdbinit (dump-temacs): Likewise.
2829
2830 2001-01-14  Martin Buchholz  <martin@xemacs.org>
2831
2832         Allow building 64-bit executables on AIX with GNU malloc, e.g.
2833         export OBJECT_MODE=64
2834         configure --pdump --use-union-type=no
2835         * m/ibmrs6000.h (DATA_START): Define for 64-bit world.
2836         * gmalloc.c (__default_morecore): Remove pre-ANSI cruft.
2837
2838         * miscplay.c (sndcnv8U_2mono):
2839         Avoid two uses of `++' in the same expression.
2840         Suppresses a GCC warning.
2841
2842 2001-01-13  Martin Buchholz  <martin@xemacs.org>
2843
2844         Make sure future compilers don't miscompile alloc.c.
2845         * alloc.c:
2846         (MARK_STRUCT_AS_FREE): Make aliasing-optimization-resistant.
2847         (MARK_STRUCT_AS_NOT_FREE): Make aliasing-optimization-resistant.
2848
2849 2001-01-12  Martin Buchholz  <martin@xemacs.org>
2850
2851         * dumper.c: A little post-pdump-rename comment fixup.
2852
2853 2001-01-09  Jerry James  <james@eecs.ku.edu>
2854
2855         * lisp-disunion.h: Change LISP_TO_CVOID arg to match its use.
2856
2857 2001-01-13  Martin Buchholz  <martin@xemacs.org>
2858
2859         * *.[ch]: Globally rename symbols using the following `pdump-rename'
2860         script:
2861         #!/bin/sh
2862         replace_symbol () {
2863           (findn texi$; findn [ch]$) | xargs g -lw "$1" | xargs global-replace 's/(?<!_)\b'$1'\b(?!_)/'$2'/g'
2864         }
2865
2866         replace_symbol pdump_wire_lists pdump_weak_object_chains
2867         replace_symbol pdump_wire_list dump_add_weak_object_chain
2868
2869         replace_symbol pdump_wires pdump_root_objects
2870         replace_symbol pdump_wire dump_add_root_object
2871
2872         replace_symbol pdump_dump_wired pdump_dump_from_root_objects
2873         replace_symbol pdump_dump_structs pdump_dump_from_root_struct_ptrs
2874
2875         replace_symbol dumpstructinfos pdump_root_struct_ptrs
2876         replace_symbol dumpstructinfo_dynarr pdump_root_struct_ptr_dynarr
2877         replace_symbol dumpstructinfo pdump_root_struct_ptr
2878         replace_symbol dumpstruct dump_add_root_struct_ptr
2879
2880         replace_symbol dumpopaque dump_add_opaque
2881         replace_symbol dumpopaqueinfo_dynarr pdump_opaque_dynarr
2882         replace_symbol dumpopaqueinfos pdump_opaques
2883         replace_symbol dumpopaqueinfo pdump_opaque
2884
2885         replace_symbol nb_structdump nb_root_struct_ptrs
2886         replace_symbol nb_opaquedump nb_opaques
2887
2888         replace_symbol align_table pdump_align_table
2889         replace_symbol dump_header pdump_header
2890
2891         replace_symbol DUMP_SIGNATURE_LEN PDUMP_SIGNATURE_LEN
2892         replace_symbol DUMP_SIGNATURE PDUMP_SIGNATURE
2893
2894
2895 2001-01-12  Martin Buchholz  <martin@xemacs.org>
2896
2897         * s/aix4.h: Keep the C for AIX compiler from overaggressively
2898         optimizing bytecount_to_charcount().
2899
2900 2001-01-06  Golubev I. N.  <gin@mo.msk.ru>
2901
2902         * config.h.in:
2903         (HAVE_DLFCN_H): Removed.
2904         * sysdll.c: Remove HAVE__DLOPEN, HAVE_DLFCN_H.
2905
2906 2001-01-06  Martin Buchholz  <martin@xemacs.org>
2907
2908         Portable dumper maintainability improvements.
2909         * alloc.c (staticpro):
2910         * alloc.c (staticpro_nodump):
2911         * alloc.c (garbage_collect_1):
2912         * alloc.c (reinit_alloc_once_early):
2913         * alloc.c (init_alloc_once_early):
2914         * alloc.c: Move dumper functions to alloc.c.
2915         * dumper.c (pdump_backtrace):
2916         * dumper.c (pdump_dump_structs):
2917         * dumper.c (pdump_dump_opaques):
2918         * dumper.c (pdump_dump_rtables):
2919         * dumper.c (pdump_dump_wired):
2920         * dumper.c (pdump):
2921         * dumper.c (pdump_load_check):
2922         * dumper.c (pdump_load_finish):
2923         * dumper.c (pdump_file_unmap):
2924         * dumper.c (pdump_file_get):
2925         * dumper.c (pdump_resource_free):
2926         * dumper.c (pdump_resource_get):
2927         * dumper.c (pdump_file_free):
2928         * dumper.c (pdump_file_try):
2929         * dumper.c (pdump_load):
2930         Remove fixed size limits on staticpro(), staticpro_nodump(),
2931         dumpopaque(), dumpstruct() by using Dynarrs instead of static C arrays.
2932         Remove custom code for dumping lrecord_implementations_table - use
2933         dumpopaque instead.
2934         Remove (most of the) custom code for dumping staticpros - dump it
2935         like any other dynarr.
2936
2937         * alloc.h: Removed.  No longer useful, since dumper now more self-contained.
2938         * dumper.c: Moved functions from alloc.c.
2939         * alloc.c (dumpstruct): Moved to dumper.c.
2940         * alloc.c (dumpopaque): Likewise.
2941         * alloc.c (pdump_wire): Likewise.
2942         * alloc.c (pdump_wire_list): Likewise.
2943
2944         * lisp.h (Dynarr_sizeof): New.
2945         * lisp.h (Dynarr_begin): New.  Very slightly C++oid.
2946         * lisp.h (Dynarr_end): New.  Very slightly C++oid.
2947         * lisp.h (Lisp_Object_ptr_dynarr): New.  For staticpros.
2948
2949         * lisp.h (dumpstruct): Define to nothing if not PDUMPing.
2950         * lisp.h (dumpopaque): ditto.
2951         * lisp.h (pdump_wire): ditto.
2952         * lisp.h (pdump_wire_list): ditto.
2953
2954 2001-01-09  Martin Buchholz  <martin@xemacs.org>
2955
2956         * make-src-depend (PrintPatternDeps):
2957         Use `sort' to make output independent of perl version.
2958
2959 2001-01-08  Martin Buchholz  <martin@xemacs.org>
2960
2961         Port to Netbsd 1.5.
2962         * unexelf.c: Remove (never used) bogus Netbsd-specific cruft.
2963         * s/netbsd.c: Use unexelf.o if __ELF__ is defined.
2964
2965 2001-01-03  Didier Verna  <didier@xemacs.org>
2966
2967         * event-stream.c (emacs_handle_focus_change_preliminary): ensure
2968         that `focus_frame' is alive before thinking of calling
2969         `redisplay_redraw_cursor' on it.
2970
2971 2001-01-08  Martin Buchholz <martin@xemacs.org>
2972
2973         * XEmacs 21.2.40 is released.
2974
2975 2001-01-06  Golubev I. N.  <gin@mo.msk.ru>
2976
2977         * regex.c: Replace PREFETCH with REGEX_PREFETCH.
2978
2979 2001-01-06  Martin Buchholz  <martin@xemacs.org>
2980
2981         * alloc.c (dbg_valmask): Make const.
2982         * alloc.c (dbg_typemask): Make const.
2983         * alloc.c (dbg_USE_UNION_TYPE): Make const.
2984         * alloc.c (dbg_valbits): Make const.
2985         * alloc.c (dbg_gctypebits): Make const.
2986
2987 2001-01-06  Stephen J. Turnbull  <stephen@xemacs.org>
2988
2989         * redisplay-x.c (x_bevel_area):
2990         redisplay.h (struct rune):
2991         Typo fixes in comments.
2992
2993 2001-01-05  Andy Piper  <andy@xemacs.org>
2994
2995         * glyphs-x.c (x_redisplay_widget): use size changed for offset
2996         adjustment.
2997
2998         * menubar.c (menubar_visible_p_changed): don't mark frame changed.
2999
3000 2001-01-05  Martin Buchholz  <martin@xemacs.org>
3001
3002         * alloc.c (pure-bytes-used): Remove unused mendacious variable.
3003
3004         * mule-ccl.c (stack_idx_of_map_multiple):
3005         Non const global data must not be initialized!
3006         Found by MIYASHITA Hisashi.
3007
3008 2001-01-02  Andy Piper  <andy@xemacs.org>
3009
3010         * frame.c (change_frame_size): make sure frame size is always
3011         marked as changed.
3012
3013         * glyphs.c (image_instance_layout): minor code reuse.
3014
3015         * window.c (Fcurrent_window_configuration): revert previous
3016         change.
3017
3018 2001-01-02  Martin Buchholz  <martin@xemacs.org>
3019
3020         * glyphs.h:
3021         * glyphs.c (make_image_instance_cache_hash_table): Use ANSI prototypes.
3022
3023 2000-12-31  Andy Piper  <andy@xemacs.org>
3024
3025         * glyphs-x.c (x_unmap_subwindow): return focus to enclosing frame
3026         when widget gets unmapped.
3027
3028         * event-Xt.c (emacs_Xt_handle_widget_losing_focus): new
3029         function. Make sure widgets losing focus don't just drop it.
3030         (handle_focus_event_1): record the widget with focus.
3031
3032 2000-12-31  Andy Piper  <andy@xemacs.org>
3033
3034         * window.c (allocate_window): use
3035         make_image_instance_cache_hash_table.
3036         (make_dummy_parent): ditto.
3037         (Fset_window_configuration): ditto.
3038
3039         * glyphs.h (INSTANTIATOR_TYPE): new macro.  declare new functions.
3040
3041         * glyphs.c (process_image_string_instantiator): use
3042         INSTANTIATOR_TYPE.
3043         (get_image_instantiator_governing_domain): ditto.
3044         (normalize_image_instantiator): ditto.
3045         (instantiate_image_instantiator): ditto.
3046         (make_image_instance_1): ditto.
3047         (image_instantiate): ditto. Key on glyph *and* instantiator type.
3048         (instantiator_eq_equal): new function for use with instance hash
3049         tables.
3050         (instantiator_eq_hash): ditto.
3051         (make_image_instance_cache_hash_table): create a suitable hash
3052         table for storing image instances.
3053
3054         * elhash.h (hash_table_weakness): new internal weakness type
3055         HASH_TABLE_KEY_CAR_VALUE_WEAK.
3056         declare new functions.
3057
3058         * elhash.c (finish_marking_weak_hash_tables): introduce yet
3059         another weakness type for glyphs.
3060         (make_standard_lisp_hash_table): new function split out from
3061         make_general_lisp_hash_table.
3062         (make_lisp_hash_table): call make_standard_lisp_hash_table.
3063         (hash_table_instantiate): ditto.
3064         (Fmake_hash_table): ditto.
3065
3066 2000-12-31  Martin Buchholz <martin@xemacs.org>
3067
3068         * XEmacs 21.2.39 is released.
3069
3070 2000-12-29  Andy Piper  <andy@xemacs.org>
3071
3072         * menubar.c (menubar_visible_p_changed): signal the frame changed.
3073
3074         * glyphs-x.c (x_redisplay_widget): Re-calculate widget offsets if
3075         the frame has changed so that we pick up geometry changes such as
3076         menubar visibility.
3077
3078 2000-12-28  Andy Piper  <andy@xemacs.org>
3079
3080         * lastfile.c (my_ebss): make a char array so we can pad the
3081         bss. Fixes cygwin unexec.
3082
3083         * unexcw.c: invert BROKEN_GDB to NO_DEBUG.
3084
3085 2000-12-26  Andy Piper  <andy@xemacs.org>
3086
3087         * event-Xt.c (emacs_Xt_force_event_pending): add some verbose
3088         comments and try and be more precise about a non-/SIGIO world.
3089         (emacs_Xt_event_pending_p): use XtAppPending under cygwin and non
3090         SIGIO.
3091
3092         * redisplay-output.c (redisplay_normalize_glyph_area): make sure
3093         we don't normalize to zero width or height.
3094
3095 2000-12-24  Andy Piper  <andy@xemacs.org>
3096
3097         * Makefile.in.in (ldflags): add -mwindows when appropriate.
3098
3099 2000-08-18  Golubev I. N.  <gin@mo.msk.ru>
3100
3101         * s/sco5.h: SCO 5 has pty support.
3102
3103 2000-07-20  Kazuyuki IENAGA <ienaga@xemacs.org>
3104
3105         * input-method-xlib.c: supports both XIM_XLIB and USE_XFONTSET.
3106         input-method-xlib.c contains whole contents of input-method-xfs.c,
3107         so we can use input-method-xlib.c's code for USE_XFONTSET
3108         using #ifdefs.
3109         * input-method-xfs.c: removed.
3110
3111 2000-12-20  Stephen Turnbull  <stephen@xemacs.org>
3112
3113         * file-coding.h (enum coding_category_type): reorder enumerators to
3114         make autodetection safer.  Make CODING_CATEGORY_LAST an enumerator
3115         (now one greater than largest real coding_category_type enumerator).
3116         * file-coding.c (coding_category_symbol, coding_category_by_priority,
3117         coding_category_system, fcd_descriptihon_1, decode_coding_category,
3118         Fcoding_category_list, Fset_coding_priority_list,
3119         Fcoding_priority_list, coding_system_from_mask, Fdetect_coding_region,
3120         vars_of_file_coding): adjust for change in CODING_CATEGORY_LAST.
3121
3122 2000-12-18  Yoshiki Hayashi  <yoshiki@xemacs.org>
3123
3124         * redisplay-output.c (redisplay_clear_top_of_window): Remove static.
3125         * redisplay-output.c (redisplay_output_window): Clear top of window
3126         when face is changed.
3127         * redisplay-x.c (x_redraw_exposed_window): Call
3128         redisplay_clear_top_of_window.
3129         * redisplay.h: Publish redisplay_clear_top_of_window.
3130
3131 2000-12-18  Yoshiki Hayashi  <yoshiki@xemacs.org>
3132
3133         * buffer.c (Fkill_buffer): Map over all devices.
3134         * window.c (window_loop): Remove UNSHOW_BUFFER code.
3135         (list_windows): New function.
3136         (list_all_windows): Ditto.
3137         (Freplace_buffer_in_windows): Use them.
3138
3139 2000-02-02   Daiki Ueno <ueno@ueda.info.waseda.ac.jp>
3140
3141         * database.c (berkdb_subtype): Recognize new subtype `queue'.
3142         (Fopen_database): Use `db_create' instead of `db_open'.
3143         (syms_of_database): Initialize Qqueue.
3144
3145 2000-12-13  Yoshiki Hayashi  <yoshiki@xemacs.org>
3146
3147         * buffer.c (common_init_complex_vars_of_buffer): Initialize
3148         buffer_local_face_property.
3149         * buffer.h (struct buffer): New member buffer_local_face_property.
3150         * window.c (Fset_window_buffer):  Mark window's face as changed
3151         when buffer has buffer local face.
3152         * window.h (MARK_WINDOW_FACES_CHANGED): New macro.
3153         * objects.c (color_after_change): Set buffer_local_face_property
3154         when locale of face specifier is buffer.
3155         * objects.c (font_after_change): Ditto.
3156         * objects.c (face_boolean_after_change): Ditto.
3157         * glyphs.c (image_after_change): Ditto.
3158
3159 2000-12-09  Dan Holmsand  <dan@eyebee.com>
3160
3161         * nt.c (mswindows_fstat): Report file permissions, volume serial
3162         number, etc. Code adapted from FSF Emacs 20.7.
3163
3164 2000-12-09  Dan Holmsand  <dan@eyebee.com>
3165
3166         * sysfile.h (lstat): Make lstat an alias for xemacs_stat instead
3167         of stat when we don't have symbolic links, to make sure
3168         mswindows_stat is called on mswindows.
3169
3170 2000-12-12  Yoshiki Hayashi  <yoshiki@xemacs.org>
3171
3172         * alloca.c: Define malloc to xmalloc only when built with XEmacs.
3173
3174 2000-12-12  Martin Buchholz  <martin@xemacs.org>
3175
3176         * doprnt.c (emacs_doprnt_1): More printing fixes.
3177         Make printing of numbers compatible with libc and FSF Emacs.
3178         BUG was: (format "%6.3f" 1.2) ==>"1.200000"
3179         Use the system printf to do most of the hard work of formatting,
3180         instead of doprnt_1().
3181         Calculate memory to allocate for format string.
3182         Remove arbitrary limit on precision, e.g. (format "%.1000f" 3.14)
3183         (doprnt_1): Cleaner code and documentation.
3184
3185 2000-12-01  Jerry James  <james@eecs.ukans.edu>
3186
3187         * Makefile.in.in: Use the loop variable to install headers.
3188
3189 2000-12-04  Yoshiki Hayashi  <yoshiki@xemacs.org>
3190
3191         * window.c (Fsplit_window): Don't invalidate face cache.
3192
3193 2000-12-04  Yoshiki Hayashi  <yoshiki@xemacs.org>
3194
3195         * minibuf.c (Fall_completions): Undo the previous change
3196         which removed checking elements start with space.
3197
3198 2000-12-06  Stephen Turnbull  <stephen@xemacs.org>
3199
3200         * mule-canna.c: Didier suppression.
3201
3202 2000-12-06  Stephen Turnbull  <stephen@xemacs.org>
3203
3204         * mule-canna.c: rename static unsigned char buf[] to key_buffer
3205         (warning suppression).  Add English comment translations.
3206
3207 2000-12-05  Martin Buchholz  <martin@xemacs.org>
3208
3209         * unexelfsgi.c (unexec): Better test for mmap failure.
3210
3211 2000-12-05  Martin Buchholz <martin@xemacs.org>
3212
3213         * XEmacs 21.2.38 is released.
3214
3215 2000-12-05  Martin Buchholz  <martin@xemacs.org>
3216
3217         * redisplay.c (bar-cursor): Make a user variable.
3218
3219         * symsinit.h: Add init_postgresql_from_environment.
3220
3221 2000-12-04  Yoshiki Hayashi  <yoshiki@xemacs.org>
3222
3223         * regex.c: Convert to clean C.
3224
3225 2000-12-05  Dan Holmsand  <dan@eyebee.com>
3226
3227         * realpath.c:
3228         Don't #include sysfile.h. Revert to duplicating PATH_MAX
3229         initialization.
3230         (sys_readlink): renamed to system_readlink to avoid conflict with
3231         the other sys_readlink.
3232
3233 2000-12-04  Hiroaki Abe  <h-abe@pc.highway.ne.jp>
3234
3235         * dumper.c (pdump_file_get): Correct uses of pdump_fd.
3236
3237 2000-12-04  Stephen J. Turnbull  <stephen@xemacs.org>
3238
3239         * postgresql.c (init_postgresql_from_environment): new function.
3240         (vars_of_postgresql): Move code initializing Lisp variables out and
3241         into init_postgresql_from_environment.
3242         emacs.c (main_1): Call init_postgresql_from_environment if and only
3243         if running a dumped XEmacs.
3244
3245 2000-08-31  Dan Holmsand  <dan@eyebee.com>
3246
3247         * buffer.c: Make find-file-compare-truenames default to true on
3248         windows.
3249
3250         * realpath.c (win32_abs_start):
3251         (cygwin_readlink):
3252         (win32_readlink): New functions.
3253         (xrealpath): Return really real filenames on windows.
3254
3255         * fileio.c (Ffile_truename): Make file-truename work on windows.
3256
3257 2000-11-29  Didier Verna  <didier@xemacs.org>
3258
3259         * faces.c (MAYBE_UNFROB_BACKGROUND_PIXMAP): new macro.
3260         * faces.c (update_face_cachel_data): use it.
3261         * faces.c (add_face_cachel): use it. Complete background pixmap
3262         frobbing in face cache if `update_face_cachel_data' has not done so.
3263
3264 2000-11-29  Yoshiki Hayashi  <yoshiki@xemacs.org>
3265
3266         * search.c (string_match_1): Don't set last_thing_searched
3267         when search failed.
3268
3269 2000-11-27  Yoshiki Hayashi  <yoshiki@xemacs.org>
3270
3271         * buffer.c: Include casetab.h
3272         (common_init_complex_vars_of_buffer): Use new case-table object.
3273         * buffer.h: Include casetab.h
3274         * buffer.h (MAKE_TRT_TABLE): Use generic char-table.
3275         (DOWNCASE_TABLE_OF): Ditto.
3276         * bufslots.h: Remove char-tables and add case-table.
3277         * casetab.c: Include casetab.h
3278         (CASE_TABLE_P): Removed.
3279         (mark_case_table): New function.
3280         (allocate_case_table): New function.
3281         (Fcase_table_p): Use new case-table.
3282         (case_table_char): New function.
3283         (Fget_case_table): Ditto.
3284         (Fput_case_table): Ditto.
3285         (Fput_case_table_pair): Ditto.
3286         (Fcopy_case_table): Ditto.
3287         (Fcurrent_case_table): Return case-table.
3288         (Fstandard_case_table): Return case-table.
3289         (Fset_case_table): Fix doc-string.
3290         (set_case_table): Use case-table
3291         (syms_of_casetab): DEFSUBR new functions.
3292         (complex_vars_of_casetab): Set up standard case-table.
3293         * casetab.h: New file.
3294         * editfns.c: Include casetab.h
3295         (Fcompare_buffer_substrings): Use case-table.
3296         * inline.c: Include casetab.h
3297         * lisp.h: Remove bogus extern.
3298         * lrecord.h (lrecord_type): Add lrecord_type_case_table.
3299         * search.c: Include casetab.h
3300         (TRANSLATE_ASCII): Removed.
3301         (TRANSLATE): Unconditionally translate character.
3302         (looking_at_1): Use case-table.
3303         (string_match_1): Ditto.
3304         (fast_string_match): Ditto.
3305         (search_command): Ditto.
3306         (search_buffer): Separate boyer_moore.  Check whether
3307         boyer_moore is possible.
3308         (simple_search): New function.
3309         (boyer_moore): Separated from search_buffer. Translate char.
3310
3311 2000-11-24  Yoshiki Hayashi  <yoshiki@xemacs.org>
3312
3313         * regex.c (RE_TR_ASCII): Removed.
3314         (RE_TRANSLATE): Unconditionally use TRT_TABLE.
3315         (PATFETCH): Call PATFETCH_RAW.
3316         (PATFETCH_RAW): Fetch Emchar.
3317         (PATUNFETCH): Decrement charptr.
3318         (GET_BUFFER_SPACE): Rename b to buf_end.
3319         (BUF_PUSH): Ditto.
3320         (BUF_PUSH_2): Ditto.
3321         (BUF_PUSH_3): Ditto.
3322         (EXTEND_BUFFER): Ditto.
3323         (SET_LIST_BIT): Ditto.
3324         (regex_compile): Ditto.  Translate non ASCII char.
3325         (compile_range): Ditto.
3326         (re_search_2): Ditto.
3327         (re_match_2_internal): Compare Emchar.
3328         (bcmp_translate): Ditto.
3329
3330 2000-11-29  Stephen J. Turnbull  <turnbull@xemacs.org>
3331
3332         * lisp.h (basic char/int typedefs):  comment improvement.
3333
3334 2000-11-24  Stephen J. Turnbull  <turnbull@xemacs.org>
3335
3336         * emacs.c (main_1):  unconditional pdump unstomping; don't save and
3337         unstomp inhibit_site_lisp.  Improve comments.
3338
3339 2000-11-22  Stephen J. Turnbull  <turnbull@xemacs.org>
3340
3341         * mule-charset.c (Fcharset_property):  improve type checking, comments.
3342
3343 2000-11-28  Andy Piper  <andy@xemacs.org>
3344
3345         * redisplay-output.c (redisplay_output_subwindow): make sure we do
3346         clipped display for windows in the gutter also.
3347         (redisplay_display_boxes_in_window_p): change semantics of return
3348         codes to be more intuitive.
3349
3350         * gutter.h: declare display_boxes_in_gutter_p.
3351
3352         * gutter.c (display_boxes_in_gutter_p): new function for
3353         redisplay.
3354
3355 2000-11-22  Andy Piper  <andy@xemacs.org>
3356
3357         * glyphs-x.c (image_instantiator_format_create_glyphs_x): change
3358         autodetect domain.
3359
3360 2000-11-21  Yoshiki Hayashi  <yoshiki@xemacs.org>
3361
3362         * callproc.c (Fold_call_process_internal):
3363         * gpm.c (Freceive_gpm_event):
3364         (tty_get_foreign_selection): Might be just warning supression.
3365         * fileio.c (Fwrite_region_internal):
3366         (Fset_visited_file_modtime):
3367         * keymap.c (event_matches_key_specifier_p):
3368         Initialize GCPROed variable.
3369
3370         * menubar-x.c (command_builder_find_menu_accelerator):
3371         Initialize before use.
3372
3373 2000-11-23  Andy Piper  <andy@xemacs.org>
3374
3375         * unexcw.c (unexec): make the resulting executable executable.
3376
3377 2000-11-21  Martin Buchholz  <martin@xemacs.org>
3378
3379         * doc.c (get_doc_string):
3380         Use size_t, not int, for result of XSTRING_LENGTH.
3381
3382         * cmds.c (Fdelete_char):
3383         * cmds.c (Fpoint_at_eol):
3384         * cmds.c (Fself_insert_command):
3385         Use EMACS_INT, not int, for result of XINT.
3386         Someday, someone will want to insert more than 2**31 identical characters.
3387
3388         * cmds.c (Fdelete_char):
3389         * cmds.c (Fdelete_backward_char):
3390         * syntax.c (Fforward_word):
3391         * syntax.c (Fforward_comment):
3392         Make COUNT argument optional, for consistency with forward-char et al.
3393
3394 2000-11-22  Martin Buchholz  <martin@xemacs.org>
3395
3396         * lisp.h:
3397         * print.c (long_to_string):
3398         Return a useful value: the pointer at end of data written.
3399
3400         * doprnt.c:
3401         Use `static const char * const' for constant strings.
3402         (union printf_arg): Delete `i', `ui' members.
3403         (get_doprnt_args):
3404         (emacs_doprnt_1):
3405         Fix LP64 platform bug: (format "%d" most-positive-fixnum) ==> "-1"
3406         Do all printf-ing via the `l' specifier.
3407         Use EMACS_INT instead of int.
3408         Optimize.
3409
3410 2000-11-20  Didier Verna  <didier@xemacs.org>
3411
3412         * faces.c (update_face_cachel_data): don't frob the background
3413         pixmap when the window is being created. The face is needed but
3414         does not exist yet.
3415
3416 2000-11-20  Andy Piper  <andy@xemacs.org>
3417
3418         * unexcw.c (copy_executable_and_dump_data_section): Only do bss
3419         messing with a debug environment.
3420
3421 2000-11-20  Martin Buchholz  <martin@xemacs.org>
3422
3423         * emacs.c (__sti__iflPNGFile_c___): Pedantically correct prototype.
3424
3425 2000-11-20  Martin Buchholz  <martin@xemacs.org>
3426
3427         * casetab.c (Fcase_table_p): Fix compile error and crash.
3428
3429 2000-11-18  Philip Aston  <philipa@mail.com>
3430
3431         * s/cygwin32.h: Cygwin has SVR4-like pty support.
3432
3433 2000-11-18  Martin Buchholz  <martin@xemacs.org>
3434
3435         * fileio.c (Fexpand_file_name): GCPRO bug!  Protect `handler'.
3436         * filelock.c (lock_file): GCPRO bug! Initialize all GCPROed vars!
3437
3438 2000-11-17  Martin Buchholz  <martin@xemacs.org>
3439
3440         * config.h.in: Define HAVE_ELF_H if elf.h exists.
3441         * unexelf.c: Use HAVE_ELF_H.
3442         * unexelfsgi.c: Fix bug with dumped xemacs stdout/stderr not working.
3443         I copied FSF Emacs 20.7 unexelf.c to unexelfsgi.c and ANSIfied it.
3444         Max Matveev <makc@sgi.com> removed non-SGI-relevant parts and tested.
3445         Greg Harrington <greg_harrington@hotmail.com> provided a machine
3446         for testing.
3447         So this is an unexelfsgi.c from a different line of development.
3448
3449 2000-11-16  Yoshiki Hayashi  <yoshiki@xemacs.org>
3450
3451         * regex.c (RE_TR_ASCII): New function.
3452         (RE_TRANSLATE): Call it.
3453
3454 2000-11-16  Yoshiki Hayashi  <yoshiki@xemacs.org>
3455
3456         * buffer.h (TRT_TABLE_OF): Remove assert.
3457         (IN_TRT_TABLE_DOMAIN): Removed.
3458
3459 2000-11-16  Gunnar Evermann  <ge204@eng.cam.ac.uk>
3460
3461         * free-hook.c (log_gcpro):
3462         (show_gcprohist): Add support for GCPRO5.
3463
3464 2000-11-08  Stephen J. Turnbull  <stephen@xemacs.org>
3465
3466         * emacs.c (main_1): Improve -sd error message when --pdump=no.
3467
3468 2000-11-16  Olivier Galibert  <galibert@xemacs.org>
3469
3470         * symeval.h: Declare flush_all_buffer_local_cache.
3471
3472         * symbols.c: Change XD_LO_RESET_NIL into XD_LISP_OBJECTs.
3473         (flush_buffer_local_cache): Added.
3474         (flush_all_buffer_local_cache): Added.
3475
3476         * lrecord.h: Remove unused XD_LO_RESET_NIL.
3477
3478         * dumper.c (pdump_register_sub): Remove unused XD_LO_RESET_NIL.
3479         (pdump_dump_data): Ditto.
3480         (pdump_reloc_one): Ditto.
3481         (pdump): Remove unused pdump_qnil.  Flush buffer local caches
3482         before dumping.
3483
3484
3485 2000-11-14  Yoshiki Hayashi  <yoshiki@xemacs.org>
3486
3487         * buffer.c: Remove if 0'ed entry.
3488         * buffer.h: Rewrite TRT to use char-table.
3489         * bufslots.h: Remove mirror tables.
3490         * casetab.c: Remove mirror tables.
3491         (CASE_TABLE_P): New macro.
3492         (Fcase_table_p): Element of a case table is string or char-table.
3493         (make_mirror_trt_table): Removed.
3494         (set_case_table): Setup char-table from strings for backward
3495         compatibility.
3496         * dired.c (Fdirectory_files):
3497         * dired-msw.c: (mswindows_get_files):
3498         * lisp.h: Change prototype of re_pattern_buffer.
3499         * regex.c: (RE_TRANSLATE): New macro.
3500         (TRANSLATE_P): Ditto.
3501         Change translate to type RE_TRANSLATE_TYPE.
3502         * regex.h: Define RE_TRANSLATE_TYPE
3503         * search.c (TRANSLATE): New macro.
3504         (TRANSLATE_ASCII): New macro.
3505         Translate table is changed to Lisp_Object.
3506         (signal_failure): Inhibit return.
3507
3508 2000-11-14  Yoshiki Hayashi  <yoshiki@xemacs.org>
3509
3510         * device-msw.c:
3511         * eldap.c:
3512         * event-Xt.c:
3513         * event-stream.c:
3514         * print.c:
3515         Do UNGCPRO before return.
3516
3517 2000-11-14  Martin Buchholz <martin@xemacs.org>
3518
3519         * XEmacs 21.2.37 is released.
3520
3521 2000-11-13  Yoshiki Hayashi  <yoshiki@xemacs.org>
3522
3523         * fileio.c (Finsert_file_contents_internal): UNGCPRO before return.
3524         Add comments about discarded return value.
3525
3526 2000-11-09  Yoshiki Hayashi  <yoshiki@xemacs.org>
3527
3528         * callint.c:
3529         * event-stream.c: Fix comments.  Remove some #if 0'ed part.
3530
3531 2000-10-27  Andy Piper  <andy@xemacs.org>
3532
3533         * gutter.c (Fset_default_gutter_position): default left and right
3534         gutters to visible.
3535         (calculate_gutter_size): calculate resonable heuristic for left
3536         and right gutter sizes.
3537         (specifier_vars_of_gutter): change left and right gutter sizes to
3538         autodetect.
3539         (calculate_gutter_size_from_display_lines): new function.
3540         (output_gutter): check for resizing on left and right gutters.
3541         (clear_gutter): don't special case top and left gutters.
3542         (specifier_vars_of_gutter): use new signature for
3543         set_specifier_caching.
3544
3545         * glyphs-x.c (x_redisplay_widget): spelling fix.
3546         * glyphs.c (specifier_vars_of_glyphs):
3547         * menubar.c (specifier_vars_of_menubar):
3548         * redisplay.c (specifier_vars_of_redisplay):
3549         * toolbar.c (specifier_vars_of_toolbar):
3550         * window.c (specifier_vars_of_window):
3551         * scrollbar.c (specifier_vars_of_scrollbar):
3552         (complex_vars_of_scrollbar): use new signature for
3553         set_specifier_caching.
3554
3555         * specifier.c (set_specifier_caching): include recompute flag.
3556         (recompute_one_cached_specifier_in_window): always recompute if
3557         flag set.
3558         (recompute_one_cached_specifier_in_frame): ditto.
3559
3560         * specifier.h (struct specifier_caching): add recompute flag.
3561
3562 2000-10-24  Andy Piper  <andy@xemacs.org>
3563
3564         * unexcw.c (copy_executable_and_dump_data_section): add new
3565         BSS_PAD_SIZE so that we can re-instate a mini-bss. This keeps gdb
3566         5.0 happy.
3567
3568 2000-11-06  Yoshiki Hayashi  <yoshiki@xemacs.org>
3569
3570         * console-x.h (x_device): New member modifier_release_time.
3571         * event-Xt.c (x_handle_sticky_modifiers):
3572         Bound interval modifier keys are sticky.
3573         * event-stream.c (Vmodifier_keys_sticky_time): New variable.
3574         * events.h: extern it.
3575
3576 2000-11-06  Yoshiki Hayashi  <yoshiki@xemacs.org>
3577
3578         * cmdloop.c (Fcommand_loop_1): Just add C-g to event queue.
3579
3580 2000-11-06  Yoshiki Hayashi  <yoshiki@xemacs.org>
3581
3582         * event-stream.c (execute_command_event): Preserve current_events
3583         and the like when event is misc-user-event.
3584         Inhibit quit during the call to maybe_echo_keys.
3585
3586 2000-10-31  Yoshiki Hayashi  <yoshiki@xemacs.org>
3587
3588         * filelock.c (lock_buffer): Cope with kill-buffer. Don't create a
3589         symlink when buffer is killed.
3590         (inhibit_clash_detection): New variable.
3591
3592 2000-10-30  Yoshiki Hayashi  <yoshiki@xemacs.org>
3593
3594         * console.c (Fset_input_method): Trigger redisplay on tty.
3595
3596 2000-11-07  Martin Buchholz  <martin@xemacs.org>
3597
3598         * process.c (Fprocess_status): Revert to previous behavior:
3599         (process-status "nosuchprocess") ==> nil
3600
3601 2000-11-06  Martin Buchholz  <martin@xemacs.org>
3602
3603         * mule-charset.h (CHARSET_BY_LEADING_BYTE):
3604         Work around another GCC 2.95.2 optimizer bug.
3605
3606 2000-11-02  Martin Buchholz  <martin@xemacs.org>
3607
3608         * process.c (Fget_process): Use LIST_LOOP_2.
3609         (kill_buffer_processes): Use LIST_LOOP_2.
3610
3611         * minibuf.c (Fall_completions):
3612         Delete old non-functional code for FSF fourth argument.
3613
3614         * frame.c (frame_matches_frame_spec):
3615         Renamed from `frame_matches_frametype'.  Update all callers.
3616         (device_matches_device_spec):
3617         Renamed from 'device_matches_console_spec'.  Update all callers.
3618
3619         * doc.c (Fsubstitute_command_keys):
3620         Remove buffer overflow crash.  Small code cleanups.
3621
3622         * casetab.c (check_case_table): Simpler code.
3623
3624         * window.c (Freplace_buffer_in_windows):
3625         Give this the same WHICH-FRAMES and WHICH-DEVICES parameters
3626         (and similar implementation) as Fdelete_windows_on.
3627         Update all callers.
3628
3629         * alloc.c (Fmake_list):
3630         * alloc.c (make_vector):
3631         * alloc.c (Fmake_vector):
3632         * alloc.c (make_bit_vector):
3633         * alloc.c (Fmake_bit_vector):
3634         * alloc.c (Fbit_vector):
3635         * alloc.c (Fmake_string):
3636         * alloc.c (Fpurecopy):
3637         * alloc.c (Fmemory_limit):
3638         * buffer.c:
3639         * buffer.c (Fget_buffer):
3640         * buffer.c (Fkill_buffer):
3641         * buffer.c (complex_vars_of_buffer):
3642         * bytecode.c (Fcompiled_function_stack_depth):
3643         * callint.c (Fprefix_numeric_value):
3644         * event-stream.c:
3645         * event-stream.c (Fread_key_sequence):
3646         * casetab.c:
3647         * casetab.c (Fcase_table_p):
3648         * casetab.c (check_case_table):
3649         * casetab.c (Fset_case_table):
3650         * casetab.c (Fset_standard_case_table):
3651         * chartab.c:
3652         * chartab.c (Fchar_table_type):
3653         * chartab.c (Freset_char_table):
3654         * chartab.c (Fget_char_table):
3655         * chartab.c (Fget_range_char_table):
3656         * chartab.c (Fput_char_table):
3657         * chartab.c (Fmap_char_table):
3658         * chartab.c (Fcategory_table_p):
3659         * chartab.c (Fcheck_category_at):
3660         * chartab.c (Fchar_in_category_p):
3661         * chartab.c (Fcategory_table):
3662         * chartab.c (Fcopy_category_table):
3663         * chartab.c (Fset_category_table):
3664         * chartab.c (Fcategory_designator_p):
3665         * chartab.c (Fcategory_table_value_p):
3666         * cmds.c (Fdelete_char):
3667         * cmds.c (Fdelete_backward_char):
3668         * cmds.c (Fself_insert_command):
3669         * cmds.c (Fself_insert_internal):
3670         * console.c (Fvalid_console_type_p):
3671         * console.c (Fcdfw_console):
3672         * console.c (Fconsole_type):
3673         * console.c (Fconsole_name):
3674         * console.c (Fconsole_device_list):
3675         * console.c (Fconsole_on_window_system_p):
3676         * data.c:
3677         * data.c (Feq):
3678         * data.c (Fold_eq):
3679         * data.c (Fsubr_interactive):
3680         * data.c (Fchar_to_int):
3681         * data.c (Fint_to_char):
3682         * data.c (Fsetcar):
3683         * data.c (Fsetcdr):
3684         * data.c (Fnumber_to_string):
3685         * data.c (Fstring_to_number):
3686         * data.c (Frem):
3687         * database.c (mark_database):
3688         * database.c (finalize_database):
3689         * database.c (Fdatabase_live_p):
3690         * database.c (Fdatabasep):
3691         * device-x.c (Fx_get_resource):
3692         * device.c (Fdfw_device):
3693         * dired.c:
3694         * dired.c (Ffile_name_completion):
3695         * dired.c (Ffile_name_all_completions):
3696         * dired.c (Fuser_name_completion):
3697         * dired.c (Fuser_name_completion_1):
3698         * dired.c (Fuser_name_all_completions):
3699         * doc.c (Fdocumentation):
3700         * doc.c (Fdocumentation_property):
3701         * doc.c (Fsubstitute_command_keys):
3702         * editfns.c:
3703         * editfns.c (Fchar_to_string):
3704         * editfns.c (Fstring_to_char):
3705         * editfns.c (Ftemp_directory):
3706         * editfns.c (Finsert_char):
3707         * editfns.c (Fbuffer_substring_no_properties):
3708         * editfns.c (Fnarrow_to_region):
3709         * editfns.c (Fchar_equal):
3710         * editfns.c (Fchar_Equal):
3711         * editfns.c (Ftranspose_regions):
3712         * emacs.c (Fdump_emacs):
3713         * eval.c (Fthrow):
3714         * eval.c (Fcommand_execute):
3715         * eval.c (Fautoload):
3716         * eval.c (Fbacktrace):
3717         * eval.c (Fbacktrace_frame):
3718         * events.c:
3719         * events.c (Fcopy_event):
3720         * events.c (Fcharacter_to_event):
3721         * events.c (Fevent_button):
3722         * events.c (Fevent_process):
3723         * extents.c:
3724         * extents.c (Fnext_extent_change):
3725         * extents.c (Fextent_property):
3726         * faces.c (Ffacep):
3727         * faces.c (Fmake_face):
3728         * file-coding.c:
3729         * file-coding.c (Fencode_shift_jis_char):
3730         * file-coding.c (Fencode_big5_char):
3731         * fileio.c (Ffile_name_directory):
3732         * fileio.c (Ffile_name_nondirectory):
3733         * fileio.c (Ffile_name_as_directory):
3734         * fileio.c (Fdirectory_file_name):
3735         * fileio.c (Ffile_truename):
3736         * fileio.c (Fsubstitute_in_file_name):
3737         * fileio.c (Ffile_modes):
3738         * fileio.c (Fset_file_modes):
3739         * fileio.c (Fset_default_file_modes):
3740         * fileio.c (Fverify_visited_file_modtime):
3741         * floatfns.c (Facos):
3742         * floatfns.c (Fasin):
3743         * floatfns.c (Fatan):
3744         * floatfns.c (Fcos):
3745         * floatfns.c (Fsin):
3746         * floatfns.c (Ftan):
3747         * floatfns.c (Fbessel_j0):
3748         * floatfns.c (Fbessel_j1):
3749         * floatfns.c (Fbessel_jn):
3750         * floatfns.c (Fbessel_y0):
3751         * floatfns.c (Fbessel_y1):
3752         * floatfns.c (Fbessel_yn):
3753         * floatfns.c (Ferf):
3754         * floatfns.c (Ferfc):
3755         * floatfns.c (Flog_gamma):
3756         * floatfns.c (Fexp):
3757         * floatfns.c (Fexpt):
3758         * floatfns.c (Flog):
3759         * floatfns.c (Flog10):
3760         * floatfns.c (Fsqrt):
3761         * floatfns.c (Fcube_root):
3762         * floatfns.c (Facosh):
3763         * floatfns.c (Fasinh):
3764         * floatfns.c (Fatanh):
3765         * floatfns.c (Fcosh):
3766         * floatfns.c (Fsinh):
3767         * floatfns.c (Ftanh):
3768         * floatfns.c (Fabs):
3769         * floatfns.c (Ffloat):
3770         * floatfns.c (Flogb):
3771         * floatfns.c (Fceiling):
3772         * floatfns.c (Ffloor):
3773         * floatfns.c (Fround):
3774         * floatfns.c (Ftruncate):
3775         * floatfns.c (Ffceiling):
3776         * floatfns.c (Fffloor):
3777         * floatfns.c (Ffround):
3778         * floatfns.c (Fftruncate):
3779         * fns.c (Fstring_equal):
3780         * fns.c (Fstring_lessp):
3781         * fns.c (concat2):
3782         * fns.c (concat3):
3783         * fns.c (vconcat2):
3784         * fns.c (vconcat3):
3785         * fns.c (Fsubstring):
3786         * fns.c (Fassoc):
3787         * fns.c (Fold_assoc):
3788         * fns.c (assoc_no_quit):
3789         * fns.c (Fassq):
3790         * fns.c (Fold_assq):
3791         * fns.c (assq_no_quit):
3792         * fns.c (Frassoc):
3793         * fns.c (Fold_rassoc):
3794         * fns.c (Frassq):
3795         * fns.c (Fold_rassq):
3796         * fns.c (rassq_no_quit):
3797         * fns.c (Fremassoc):
3798         * fns.c (remassoc_no_quit):
3799         * fns.c (Fremassq):
3800         * fns.c (remassq_no_quit):
3801         * fns.c (Fremrassoc):
3802         * fns.c (Fremrassq):
3803         * fns.c (remrassq_no_quit):
3804         * fns.c (Fsort):
3805         * fns.c (Fplist_get):
3806         * fns.c (Fplist_put):
3807         * fns.c (Fplist_remprop):
3808         * fns.c (Fplist_member):
3809         * fns.c (Flax_plist_get):
3810         * fns.c (Flax_plist_put):
3811         * fns.c (Flax_plist_remprop):
3812         * fns.c (Flax_plist_member):
3813         * fns.c (Fequal):
3814         * fns.c (Fold_equal):
3815         * fns.c (Frequire):
3816         * fns.c (Fbase64_encode_region):
3817         * fns.c (Fbase64_encode_string):
3818         * fns.c (Fbase64_decode_region):
3819         * frame.c:
3820         * frame.c (frame_matches_frame_spec):
3821         * frame.c (device_matches_device_spec):
3822         * frame.c (next_frame):
3823         * frame.c (previous_frame):
3824         * frame.c (Fnext_frame):
3825         * frame.c (Fprevious_frame):
3826         * frame.c (Fframe_property):
3827         * frame.c (Fset_frame_height):
3828         * frame.c (Fset_frame_size):
3829         * frame.h:
3830         * glyphs.c:
3831         * glyphs.c (if):
3832         * glyphs.c (decode_error_behavior_flag):
3833         * glyphs.c (Fmake_image_instance):
3834         * indent.c (Findent_to):
3835         * intl.c (Fignore_defer_gettext):
3836         * keymap.c (Fkeymapp):
3837         * keymap.c (Flookup_key):
3838         * lread.c:
3839         * lread.c (Fload_internal):
3840         * lread.c (Feval_buffer):
3841         * lread.c (Feval_region):
3842         * macros.c (Fexecute_kbd_macro):
3843         * marker.c (set_marker_internal):
3844         * marker.c (Fset_marker):
3845         * marker.c (set_marker_restricted):
3846         * marker.c (Fcopy_marker):
3847         * marker.c (noseeum_copy_marker):
3848         * menubar.c:
3849         * menubar.c (Fpopup_menu):
3850         * minibuf.c:
3851         * mule-charset.c (Fcharset_name):
3852         * mule-charset.c (Fchar_charset):
3853         * mule-charset.c (Fchar_octet):
3854         * mule-charset.c (Fsplit_char):
3855         * mule-wnnfns.c (Fwnn_open):
3856         * mule-wnnfns.c (Fwnn_dict_comment):
3857         * mule-wnnfns.c (Fwnn_quit_henkan):
3858         * mule-wnnfns.c (Fwnn_word_toroku):
3859         * mule-wnnfns.c (Fwnn_word_sakujo):
3860         * mule-wnnfns.c (Fwnn_word_use):
3861         * mule-wnnfns.c (Fwnn_hindo_set):
3862         * objects.c:
3863         * objects.c (Fmake_color_instance):
3864         * objects.c (Fmake_font_instance):
3865         * print.c (Fwrite_char):
3866         * process.c:
3867         * process.c (mark_process):
3868         * process.c (print_process):
3869         * process.c (get_process_from_usid):
3870         * process.c (Fprocessp):
3871         * process.c (Fprocess_live_p):
3872         * process.c (Fget_process):
3873         * process.c (Fget_buffer_process):
3874         * process.c (get_process):
3875         * process.c (Fprocess_id):
3876         * process.c (Fprocess_name):
3877         * process.c (Fprocess_command):
3878         * process.c (init_process_io_handles):
3879         * process.c (start_process_unwind):
3880         * process.c (Fstart_process_internal):
3881         * process.c (Fopen_multicast_group_internal):
3882         * process.c (Fset_process_window_size):
3883         * process.c (read_process_output):
3884         * process.c (send_process):
3885         * process.c (Fprocess_tty_name):
3886         * process.c (Fset_process_buffer):
3887         * process.c (Fprocess_buffer):
3888         * process.c (Fprocess_mark):
3889         * process.c (set_process_filter):
3890         * process.c (Fset_process_filter):
3891         * process.c (Fprocess_filter):
3892         * process.c (Fprocess_send_region):
3893         * process.c (Fprocess_send_string):
3894         * process.c (exec_sentinel):
3895         * process.c (Fset_process_sentinel):
3896         * process.c (Fprocess_sentinel):
3897         * process.c (status_notify):
3898         * process.c (Fprocess_status):
3899         * process.c (Fprocess_exit_status):
3900         * process.c (process_send_signal):
3901         * process.c (Fprocess_send_eof):
3902         * process.c (deactivate_process):
3903         * process.c (remove_process):
3904         * process.c (Fdelete_process):
3905         * process.c (kill_buffer_processes):
3906         * process.c (Fprocess_kill_without_query):
3907         * process.c (Fprocess_kill_without_query_p):
3908         * rangetab.c:
3909         * rangetab.c (Fget_range_table):
3910         * rangetab.c (Fput_range_table):
3911         * rangetab.c (Fremove_range_table):
3912         * rangetab.c (Fclear_range_table):
3913         * search.c:
3914         * search.c (Fskip_chars_forward):
3915         * search.c (Fskip_chars_backward):
3916         * search.c (Fskip_syntax_forward):
3917         * search.c (Fskip_syntax_backward):
3918         * search.c (search_command):
3919         * search.c (Freplace_match):
3920         * search.c (Fregexp_quote):
3921         * select.c (Fown_selection_internal):
3922         * select.c (Fselection_owner_p):
3923         * select.c (Fselection_exists_p):
3924         * select.c (Fget_selection_internal):
3925         * specifier.c:
3926         * symbols.c:
3927         * symbols.c (Fintern):
3928         * symbols.c (Fintern_soft):
3929         * symbols.c (Funintern):
3930         * symbols.c (Fapropos_internal):
3931         * symbols.c (Fset_default):
3932         * syntax.c:
3933         * syntax.c (Fsyntax_table_p):
3934         * syntax.c (Fcopy_syntax_table):
3935         * syntax.c (Fset_syntax_table):
3936         * syntax.c (Fchar_syntax):
3937         * syntax.c (syntax_match):
3938         * syntax.c (Fmatching_paren):
3939         * syntax.c (Fforward_word):
3940         * syntax.c (scan_lists):
3941         * syntax.c (Fscan_lists):
3942         * syntax.c (Fscan_sexps):
3943         * syntax.c (Fparse_partial_sexp):
3944         * toolbar.c (Fcheck_toolbar_button_syntax):
3945         * tooltalk.doc:
3946         * window.c:
3947         * window.c (Fwindowp):
3948         * window.c (Fwindow_live_p):
3949         * window.c (Fwindow_point):
3950         * window.c (Fdelete_window):
3951         * window.c (Fnext_window):
3952         * window.c (Fprevious_window):
3953         * window.c (Fother_window):
3954         * window.c (window_loop):
3955         * window.c (Fget_lru_window):
3956         * window.c (Fsplit_window):
3957         * window.c (Fenlarge_window):
3958         * window.c (Fenlarge_window_pixels):
3959         * window.c (Fshrink_window):
3960         * window.c (Fshrink_window_pixels):
3961         * window.c (change_window_height):
3962         * window.c (Fwindow_configuration_p):
3963         * window.c (Fcurrent_window_configuration):
3964         * window.h:
3965         * casefiddle.c (casify_object):
3966         * casefiddle.c (Fupcase):
3967         * casefiddle.c (Fdowncase):
3968         * casefiddle.c (Fcapitalize):
3969         * casefiddle.c (Fupcase_initials):
3970         * casefiddle.c (casify_region_internal):
3971         * casefiddle.c (casify_region):
3972         * casefiddle.c (Fupcase_region):
3973         * casefiddle.c (Fdowncase_region):
3974         * casefiddle.c (Fcapitalize_region):
3975         * casefiddle.c (Fupcase_initials_region):
3976         * casefiddle.c (Fupcase_word):
3977         * casefiddle.c (Fdowncase_word):
3978         * casefiddle.c (Fcapitalize_word):
3979         Docstring arglist/Texinfo fixes.  See man/ChangeLog for details.
3980         Replace 0 with '\0' when working with bytes.
3981         Replace initial "(" with "\(" in docstrings.
3982
3983 2000-11-01  Martin Buchholz  <martin@xemacs.org>
3984
3985         * config.h.in: Handle alloca with Compaq C on Alpha Linux.
3986
3987         * m/alpha.h: Let configure handle SYSTEM_MALLOC on Linux.
3988
3989 2000-10-31  Martin Buchholz  <martin@xemacs.org>
3990
3991         * eldap.c (print_ldap): 64-bit cleaner.  Fixes warning.
3992
3993 2000-10-30  Yoshiki Hayashi  <yoshiki@xemacs.org>
3994
3995         * doprnt.c (emacs_do_prnt_1): Format (format "%01.2d" 10)
3996         correctly.
3997
3998 2000-10-30  Yoshiki Hayashi  <yoshiki@xemacs.org>
3999
4000         * fileio.c (Vauto_save_list_file_prefix): Moved from startup.el.
4001         (inhibit_auto_save_session): New variable.
4002         (vars_of_fileio): Declare and initialize them.
4003         * fileio.c (Fdo_auto_save): Don't create session file if
4004         Vinhibit_auto_save_session or Vauto_save_list_file_prefix is non-nil.
4005
4006 2000-10-31  Martin Buchholz  <martin@xemacs.org>
4007
4008         * sgiplay.c (play_internal): C++ compilability.
4009         * alloc.c (SWEEP_FIXED_TYPE_BLOCK): Remove unused var `SFTB_prev'.
4010         * callproc.c (Fold_call_process_internal):
4011         Remove unused vars `env', `first'.
4012         * scrollbar.c (update_scrollbar_instance):
4013         #### unused var `current_window'.
4014         * redisplay-tty.c: Put currently unused vars insert_mode_on,
4015         etc. within #ifdef NOT_YET.
4016         * emacs.c: #### unused vars `initial_argc', `initial_argv'.
4017         * dialog-x.c (dbox_descriptor_to_widget_value): ### unused var `title'.
4018         * specifier.c (specifier_instance):
4019         #### unused var `tag'.
4020         Use WINDOW_BUFFER, FRAME_DEVICE instead of their expansion.
4021
4022 2000-10-27  Martin Buchholz  <martin@xemacs.org>
4023
4024         * fns.c (Fbutlast):
4025         * fns.c (list_sort):
4026         * fns.c (Ffillarray):
4027         * fns.c (bytecode_nconc2):
4028         * fns.c (Fnconc):
4029         * fns.c (mapcar1):
4030         * fns.c (Fmapconcat):
4031         Be pedantically 64-bit correct.  For the time when someone will
4032         want to have a list with length > 2**32.
4033
4034         * lisp.h (PRIVATE_EXTERNAL_LIST_LOOP_6):
4035         Work around MIPSpro compiler bug.
4036
4037         * process-unix.c (unix_kill_child_process): Add snarky comment.
4038         * process-unix.c (try_to_initialize_subtty):  Oops, `=' ==> `=='
4039
4040         * config.h.in: Oops, _getpt ==> _getpty
4041
4042 2000-10-26  Martin Buchholz  <martin@xemacs.org>
4043
4044         * config.h.in:
4045         * regex.c:
4046         Use void*, not char*, as return type of alloca().
4047
4048         * alloc.c (free_marker): Side effect inside assert expression!
4049
4050 2000-10-16  MIYASHITA Hisashi  <himi@m17n.org>
4051
4052         * mule-charset.c (Fset_charset_ccl_program): To check
4053         if the given ccl program is valid, use setup_ccl_program()
4054         instead of CHECK_VECTOR().
4055         (Fmake_charset): Likewise.
4056
4057 2000-10-20  Golubev I. N.  <gin@mo.msk.ru>
4058
4059         * faces.c (get_extent_fragment_face_cache_index):
4060         Fix cachel.merged_faces memory leak.
4061
4062 2000-10-14  MIYASHITA Hisashi  <himi@m17n.org>
4063
4064         * mule-ccl.c (ccl_driver)<CCL_DECODE_SJIS>:
4065         Reset MSB of octets obtained by DECODE_SJIS
4066         because of the incompatibility with Emacs.
4067         (ccl_driver)<CCL_ENCODE_SJIS>:
4068         Set MSB of octets before passing them to
4069         ENCODE_SJIS because of the incompatibility
4070         with Emacs.
4071
4072 2000-10-18   Daiki Ueno  <ueno@unixuser.org>
4073
4074         * lrecord.h (DECLARE_TYPECHECK_LRECORD): Abolish.
4075         (DECLARE_LRECORD): Undo the last change.
4076         (DECLARE_EXTERNAL_LRECORD): Expand typechecking stuff.
4077
4078 2000-10-17   Daiki Ueno  <ueno@unixuser.org>
4079
4080         * lrecord.h (INIT_EXTERNAL_LRECORD_IMPLEMENTATION): Connect
4081         the implementation to lrecord_implementations_table.
4082
4083 2000-10-14   Daiki Ueno  <ueno@unixuser.org>
4084
4085         * lrecord.h (MAKE_EXTERNAL_LRECORD_IMPLEMENTATION): Don't set the
4086         initial value of `lrecord_type_##c_name' and
4087         `lrecord_##c_name.lrecord_type_index'; discard "const" qualifier.
4088         (INIT_EXTERNAL_LRECORD_IMPLEMENTATION): New macro.
4089         [ERROR_CHECK_TYPECHECK] (DECLARE_TYPECHECK_LRECORD): New macro.
4090         [ERROR_CHECK_TYPECHECK] (DECLARE_LRECORD): Use it.
4091         [ERROR_CHECK_TYPECHECK] (DECLARE_EXTERNAL_LRECORD): Use it.
4092
4093 2000-10-17  Martin Buchholz  <martin@xemacs.org>
4094
4095         * miscplay.c (sndcnv8S_2mono):
4096         (sndcnv2monounsigned):
4097         (sndcnvULaw_2linear):
4098         (sndcnv16swap):
4099         Remove implementation-defined behavior.
4100
4101 2000-10-12  Martin Buchholz  <martin@xemacs.org>
4102
4103         * input-method-xlib.c: Warning suppression.
4104
4105 2000-10-05  MIYASHITA Hisashi  <himi@m17n.org>
4106
4107         * mule-ccl.c: Sync up with Emacs 21.0.90.
4108         (ccl_driver)<CCL_TranslateCharacter>: Disabled.
4109         Do nothing.
4110         (ccl_driver)<CCL_TranslateCharacterConstTbl>:
4111         Likewise.
4112         (ccl_driver[WriteMultibyteChar2]): Bug fix.
4113         Use MAX_LEADING_BYTE_OFFICIAL_2 instead of
4114         MIN_LEADING_BYTE_OFFICIAL_2 to check whether the
4115         leading char belongs to official 2-dimensional charset.
4116         (CCL_WRITE_CHAR): When CCL_MODE_ENCODING,
4117         write the given character as is.  Otherwise,
4118         if it is a multibyte char, convert it by
4119         non_ascii_set_charptr_emchar, then write it.
4120         (CCL_WRITE_STRING): Likewise.
4121         (ccl_get_compiled_code): New function.
4122         (setup_ccl_program): When ccl_prog is invalid,
4123         return -1.
4124         (Fregister_code_conversion_map): New function.
4125         (syms_of_mule_ccl): defsubr Fregister_code_conversion_map.
4126
4127         * mule-ccl.h: Sync up with Emacs 21.0.90.
4128         (Fregister_ccl_program): export it.
4129
4130         * redisplay-msw.c (separate_textual_runs):
4131         If ccl program is not valid, don't do ccl conversion.
4132
4133         * redisplay-x.c (separate_textual_runs): Ditto.
4134
4135         * file-coding.c (Fmake_coding_system):
4136         When type is ccl and value is vector, register it
4137         with a proper symbol.  And checks whether the
4138         given ccl program is valid.
4139         (mule_decode): When calling ccl_driver, if src indicates
4140         NULL pointer, set an empty string instead.
4141         (mule_encode): Likewise.
4142
4143 2000-10-11  Martin Buchholz  <martin@xemacs.org>
4144
4145         The following large batch of changes gets us back to a state of
4146         C++ compilability.  Extbyte is now a char, which means that
4147         Extbyte * and Bufbyte * cannot be freely interchanged - a win!
4148
4149         * tooltalk.c (Fset_tooltalk_message_attribute): Type correctness.
4150
4151         * sound.c (Fplay_sound): Type correctness.
4152
4153         * select-x.c (hack_motif_clipboard_selection): Type correctness.
4154         (x_get_window_property): Type correctness.
4155         (receive_incremental_selection): unsigned char ==> Extbyte
4156         (selection_data_to_lisp_data): unsigned char ==> Extbyte
4157         (Fx_get_cutbuffer_internal): unsigned char ==> Extbyte
4158         (Fx_store_cutbuffer_internal): Type correctness.
4159
4160         * process-unix.c (try_to_initialize_subtty): Type correctness.
4161
4162         * objects-x.c (x_print_color_instance): Type correctness.
4163         (x_print_font_instance): Type correctness.
4164         (x_list_fonts): SExtbyte ==> Extbyte.
4165         (valid_x_font_name_p): SExtbyte ==> Extbyte.
4166         (x_find_charset_font): SExtbyte ==> Extbyte.
4167         Use TO_INTERNAL_FORMAT.  build_string ==> make_string.
4168         (truename_via_XListFonts): SExtbyte ==> Extbyte.
4169         (x_font_instance_properties): Use TO_INTERNAL_FORMAT.
4170         Use bufbyte_strcmp.
4171
4172         * mule-charset.h (LEADING_BYTE_PREFIX_P): unsigned char ==> Bufbyte
4173         (PRIVATE_LEADING_BYTE_PREFIX): Add paranoia cast.
4174         (BYTE_ASCII_P): Use bit ops for char-signedness safety.
4175         (BYTE_C0_P): Use bit ops for char-signedness safety.
4176         (BYTE_C1_P): Use bit ops for char-signedness safety.
4177         (CHARSET_BY_LEADING_BYTE):
4178         (CHARSET_BY_ATTRIBUTES):
4179         Always use inline function.
4180         Use type_checking_assert.
4181         Hide chlook.
4182
4183         * mule-charset.c (non_ascii_charptr_copy_char):
4184         Modify to work with both ASCII and non-ASCII characters.
4185         Improve docs and variable names.
4186         Replace over-clever fall-through switch with a simple loop.
4187         (Lstream_get_emchar_1):
4188         Replace over-clever fall-through switch with a simple loop.
4189
4190         * menubar-x.c (menu_item_descriptor_to_widget_value_1):
4191         Warning suppression.
4192
4193         * lstream.h (Lstream_get_emchar): BYTE_ASCII_P cannot be used on
4194         the return value of Lstream_getc, which could be EOF as well.
4195
4196         * lstream.c (Lstream_raw_read): Now returns ssize_t, not int.
4197
4198         * lisp.h: Make Extbyte a char, not unsigned char, so that external
4199         APIs can be used on Extbytes without casts.  Risky!
4200         (SExtbyte): Remove.
4201         (UExtbyte): Remove.
4202
4203         * input-method-xlib.c (XIM_init_device):
4204         Use Xlib.h instead of IntrinsicP.h.
4205         Use HAVE_XREGISTERIMINSTANTIATECALLBACK instead of THIS_IS_X11R6,
4206         which will break in X11R7.
4207         Use XREGISTERIMINSTANTIATECALLBACK_NONSTANDARD_PROTOTYPE,
4208         to call XRegisterIMInstantiateCallback with correct types.
4209
4210         * gui-x.c (button_item_to_widget_value): Type correctness.
4211
4212         * glyphs.c (bitmap_to_lisp_data):  Type correctness.
4213
4214         * glyphs-x.c (pixmap_from_xbm_inline): Type correctness.
4215         (xbm_instantiate_1): Type correctness.
4216         (BUILD_GLYPH_INST):  Type correctness.
4217
4218         * fileio.c (Fsubstitute_in_file_name): Type correctness.
4219
4220         * file-coding.c:
4221         (decode_coding_sjis):
4222         (decode_coding_big5):
4223         (decode_coding_ucs4):
4224         (decode_coding_utf8):
4225         (decode_coding_iso2022):
4226         (decode_coding_no_conversion):
4227         Make all decoding functions take an Extbyte * arg.
4228         (encode_coding_sjis):
4229         (encode_coding_big5):
4230         (encode_coding_ucs4):
4231         (encode_coding_utf8):
4232         (encode_coding_iso2022):
4233         (encode_coding_no_conversion):
4234         Make all encoding functions take a Bufbyte * arg.
4235         Use size_t instead of unsigned int for memory sizes.
4236         Only cast to unsigned char whenever dereferencing Extbyte *.
4237
4238         * doc.c (unparesseuxify_doc_string): Type correctness.
4239
4240         * console-x.c (split_up_display_spec):
4241         Rewrite without using details of internal string representation.
4242         (x_semi_canonicalize_device_connection): Type correctness.
4243
4244         * config.h.in:
4245         (HAVE_XREGISTERIMINSTANTIATECALLBACK): New.
4246         (XREGISTERIMINSTANTIATECALLBACK_NONSTANDARD_PROTOTYPE): New.
4247         (HAVE_XFREE386): Removed.
4248
4249         * buffer.h (DEC_CHARPTR): `const' correctness.
4250         (bufbyte_strcmp): New.
4251         (bufbyte_memcmp): New.
4252
4253         * buffer.c (dfc_convert_to_internal_format): Extbyte ==> Bufbyte
4254
4255         * buffer.h (XCHAR_OR_CHAR_INT):
4256         Always use inline function.
4257         Remove redundant type checking assert() - XINT will abort quite nicely.
4258
4259 2000-10-03  Yoshiki Hayashi  <yoshiki@xemacs.org>
4260
4261         * search.c (Freplace_match): Set newtext to an empty string.
4262
4263 2000-10-10  Martin Buchholz  <martin@xemacs.org>
4264
4265         * s/decosf1-3.h: Remove #include of stropts.h
4266         * s/ptx.h: Remove #include of stropts.h
4267         * s/usg5-4.h: Remove #include of stropts.h
4268         * sysproc.h:
4269         * config.h.in:
4270         Use stropts.h, not sys/stropts.h.
4271         Use strtio.h, not sys/strtio.h.
4272
4273 2000-10-04  Martin Buchholz <martin@xemacs.org>
4274
4275         * XEmacs 21.2.36 is released.
4276
4277 2000-09-21  Andy Piper  <andy@xemacs.org>
4278
4279         * glyphs-x.c (x_redisplay_widget): make sure non-structural
4280         changes still involve copying the widget tree.
4281         (update_widget_face): make sure a change is register in the widget
4282         tree. Call update_tab_widget_face appropriately.
4283         (update_tab_widget_face): ditto.
4284         (x_tab_control_redisplay): make sure non-structural changes still
4285         involve copying the widget tree.
4286
4287 2000-08-31   Daiki Ueno  <ueno@unixuser.org>
4288
4289         * lread.c (locate_file): Check the path element is non-nil.
4290
4291 2000-10-02  Martin Buchholz  <martin@xemacs.org>
4292
4293         * lisp.h: Warning suppression for SCO compilers.
4294
4295         * redisplay-tty.c (reset_tty_modes): Fix crash.
4296         E.g. from xemacs running on X: (delete-device (make-device 'tty nil))
4297
4298 2000-09-27  Martin Buchholz  <martin@xemacs.org>
4299
4300         Big signal/process handling overhaul.  Bugs fixed:
4301         M-x shell, type `sleep 10000', M-x comint-interrupt-subjob and
4302         M-x comint-kill-subjob should work for both values nil and t of
4303         process-connection-type. It was broken on most platforms.
4304         Testing on Irix and Cygwin still needed.  Other plaforms tested.
4305         * sysdep.c: Move #include of stropts.h into sysproc.h.  Use pid_t.
4306         * process-unix.c: Signal/Process handling overhaul.
4307         (pty_name): make 64 bytes, as `expect' does, for paranoia.
4308         (allocate_pty): Use all available modern methods of allocating
4309         ptys, falling back to old style BSD allocation as a last resort.
4310         Use allegedly more secure Unix98 pty allocation by default.
4311         (allocate_pty_the_old_fashioned_way): New. the last resort.
4312         (unix_create_process): Push ptem, ldterm, ttcompat where
4313         available.  Autoconfiscate.
4314         (try_to_initialize_subtty): New.
4315         (unix_kill_child_process): Proper signal handling for ptys on most
4316         platforms, using special knowledge of AIX, BSD, etc...
4317         (unix_create_process): Always disconnect_controlling_terminal() for
4318         subprocesses, whether using ptys or not.
4319         * process.h: Remove old getpt-dependent PTY code.
4320         * process.c (Fprocess_send_signal): New, obvious generic function.
4321         (decode_signal): New.
4322         (Finterrupt_process):
4323         (Fkill_process):
4324         (Fquit_process):
4325         (Fstop_process):
4326         (Fcontinue_process):
4327         (Fsignal_process): Use decode_signal.
4328         (process_send_signal):
4329         Many docstring corrections.
4330         Allow any signal to be sent to a process object.
4331         * config.h.in: Add symbols for big signal/process overhaul.
4332         * syssignal.h (EMACS_KILLPG): Use HAVE_KILLPG. Use `pid', not `gid'.
4333         * sysproc.h: Include process-related headers, where available:
4334         sys/stropts.h sys/strtio.h pty.h libutil.h
4335         * s/irix4-0.h:
4336         * s/irix5-0.h:
4337         * s/cygwin32.h:
4338         * s/gnu.h:
4339         * s/linux.h:
4340         * s/hpux.h:
4341         * s/aix3-1.h:
4342         Remove old S&M pty stuff.
4343         * console-tty.c (tty_init_console): Use pid_t, not int, for pids.
4344         * systty.h: Simplify cpp hackery, improve comments.
4345         Favor BSD ioctl(TIOCGPGRP) over Posix tcgetpgrp().
4346
4347         * editfns.c (Fformat_time_string):
4348         Be a little more paranoid with the return value of ctime.
4349
4350         * fileio.c (check_executable):
4351         (check_writable):
4352         Use symbolic constants X_OK, W_OK.
4353
4354         * console-x.c (split_up_display_spec): Fix a warning.
4355
4356 2000-10-02  Martin Buchholz  <martin@xemacs.org>
4357
4358         * gui-x.c (add_accel_and_to_external): strlen ==> XSTRING_LENGTH
4359         * ntproc.c (sys_spawnve): make_string ==> build_string
4360         Small clarity improvements.
4361
4362 2000-09-30  Martin Buchholz  <martin@xemacs.org>
4363
4364         * events.c (WRONG_EVENT_TYPE_FOR_PROPERTY): Warning removal.
4365
4366         * s/windowsnt.h (HAVE_STRCASECMP): Remove.
4367
4368         * config.h.in (HAVE_STRCASECMP): Remove.
4369
4370 2000-09-29  Martin Buchholz  <martin@xemacs.org>
4371
4372         * redisplay-output.c (redisplay_output_pixmap):
4373         Cleaner and possibly more 64-bit correct code.
4374
4375 2000-09-28  Stephen J. Turnbull  <stephen@xemacs.org>
4376
4377         * dumper.c (pdump_load_finish): move restoration of
4378         `noninteractive1' to emacs.c (main_1).
4379         * emacs.c (main_1): protect LISP-visible command-line flags
4380         from pdump_load().
4381
4382 2000-09-26  Stephen J. Turnbull  <stephen@xemacs.org>
4383
4384         * Makefile.in.in (versionclean):  Use EXE_TARGET and
4385         DUMP_TARGET instead of literal program names.
4386
4387 2000-09-20  Martin Buchholz  <martin@xemacs.org>
4388
4389         * Makefile.in.in: Recent purify's require absolute paths for cache-dir.
4390
4391 2000-09-19  Martin Buchholz  <martin@xemacs.org>
4392
4393         * *: Spelling mega-patch
4394
4395 2000-09-19  Martin Buchholz  <martin@xemacs.org>
4396
4397         * fns.c (bad_bad_turtle):
4398         Delete "Eek!" comment, since we fixed the bug to which it refers.
4399
4400 2000-09-16  Martin Buchholz  <martin@xemacs.org>
4401
4402         * alloca.c: Replace REGISTER with register.
4403
4404 2000-09-16   Daiki Ueno  <ueno@unixuser.org>
4405
4406         * file-coding.c (ucs_to_char): Use countof.
4407
4408 2000-09-16  Martin Buchholz  <martin@xemacs.org>
4409
4410         * file-coding.c: (ucs_to_char):
4411         (complex_vars_of_file_coding):
4412         Use countof instead of sizeof.
4413         Use CHECK_NATNUM instead of CHECK_INT.
4414
4415         * sysdep.c (strcasecmp): Remove.
4416         * device-x.c (ascii_strcasecmp): New.
4417         * device-x.c (Fx_get_resource): Use ascii_strcasecmp.
4418         Avoid using non-standard non-portable strcasecmp.
4419
4420 2000-09-16  Martin Buchholz  <martin@xemacs.org>
4421
4422         * Makefile.in.in (mostlyclean): remove reference to prefix-args.
4423         * font-lock.c: remove reference to emacsfns.h.
4424         * search.c: small doc improvement.
4425         * event-Xt.c: correct file names in comments.
4426         * console-x.h Correct file names in comments.
4427         * frame.c: Correct file names in comments.
4428         * event-stream.c: remove Energize from comments.
4429
4430 2000-09-15  Martin Buchholz  <martin@xemacs.org>
4431
4432         * symeval.h (DEFERROR_STANDARD):
4433         (DEFERROR):
4434         (DEFSYMBOL):
4435         (DEFSYMBOL_NO_DUMP):
4436         (DEFSYMBOL_MULTIWORD_PREDICATE):
4437         (DEFSYMBOL_MULTIWORD_PREDICATE_NO_DUMP):
4438         (DEFKEYWORD):
4439         The construct &##name is not sensible C.
4440         Fixes compilation errors with Unixware native compiler.
4441
4442 2000-09-14  Martin Buchholz  <martin@xemacs.org>
4443
4444         * frame.c (device_matches_console_spec): no longer takes a `frame' arg
4445         (next_frame_internal): Removed.  We now just have next_frame.
4446         (next_frame):
4447         Write a simpler and cleaner one-pass algorithm.
4448         Remove called_from_delete_device arg and #ifdefed-out code.
4449         (previous_frame):
4450         Renamed from prev_frame.  Update callers.
4451         Cleaned up to have an analogous implementation to next_frame.
4452         (other_visible_frames_internal): Remove the
4453         called_from_delete_device bogus arg, and hence, remove this
4454         function.  Just use other_visible_frames().
4455
4456         * window.c (Fnext_window):
4457         Prettify docstring.
4458         Since next_frame() is guaranteed to return a frame, remove check
4459         for nil inserted in previous patch.
4460         (Fprevious_window):
4461         Prettify docstring.
4462         Make code look more like Fnext_window.
4463         (window_loop):
4464         Respect the `console' arg when iterating through windows.
4465         Fixes bug: (get-buffer-window buffer t device) not respecting
4466         the `device' arg.
4467         This function needs more work, as others have pointed out.
4468
4469         * frame.h: Rename prev_frame to previous_frame.
4470         device_matches_console_spec no longer takes a `frame' arg.
4471
4472         * s/gnu.h:
4473         * s/linux.h:
4474         * s/hpux.h:
4475         Use EMACS_BLOCK_SIGNAL instead of sigblock.
4476         From "Golubev I. N." <gin@mo.msk.ru>.
4477
4478         * make-src-depend: Fix typo.
4479
4480 2000-09-13  Martin Buchholz  <martin@xemacs.org>
4481
4482         * window.c (Fnext_window):
4483         next_frame() might return nil, not a frame.
4484         Fixes this crash:
4485         (gdb) run -eval '(progn  (make-device (quote x) "polgar:0") (next-window (minibuffer-window) t (quote visible) (second (device-list))))'
4486
4487         * frame.c (next_frame_internal):
4488         We've passed a frame if we've passed its device.
4489         Fixes this crash:
4490         (gdb) run -eval '(progn (make-frame nil (make-device (quote x) "polgar:0")) (next-window (minibuffer-window) t (quote visible) (second (device-list))))'
4491 Fatal error: assertion failed, file /project/xemacs/ws/dev/src/frame.h, line 245, RECORD_TYPEP (obj, lrecord_type_frame)
4492
4493 2000-09-11  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4494
4495         * menubar-msw.c (mswindows_translate_menu_or_dialog_item):
4496         Allow option to suppress accelerators in menu/dialog items.
4497         (populate_or_checksum_helper): Pass dialog title through above.
4498
4499 2000-09-10  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4500
4501         * event-msw.c (mswindows_key_to_emacs_keysym):
4502         Add "pause" key, fix "menu" key.
4503
4504 2000-09-09  Martin Buchholz  <martin@xemacs.org>
4505
4506         * eval.c (reinit_vars_of_eval):
4507         Increase max_lisp_eval_depth to 1000,
4508         required for thai-xtis.el to byte-compile under some circumstances.
4509
4510 2000-09-04  Martin Buchholz  <martin@xemacs.org>
4511
4512         * event-Xt.c (x_to_emacs_keysym): Increase size of `buffer' to 513.
4513         From Kenichi Handa.
4514
4515 2000-09-01  Martin Buchholz  <martin@xemacs.org>
4516
4517         * make-src-depend: Make the generated Makefiles smaller.
4518
4519         * s/hpux.h (SETUP_SLAVE_PTY):
4520         Provide a %d in the format string for the errno argument.
4521
4522         * editfns.c (Ftemp_directory):
4523         Warning fix.
4524         Avoid buffer overrun on very long file name.
4525
4526         * input-method-xlib.c (XIM_init_device):
4527         6th parameter of XRegisterIMInstantiateCallback has different
4528         pointer types on different OSes, so simply cast to (void *).
4529
4530         * unexhp9k800.c: Warning fixes.  Fiddly changes.
4531
4532         * sysdll.c (dll_open):
4533         shl_load will hang hard if passed a NULL filename.
4534         Simply return NULL for compatibility with dlopen.
4535