XEmacs 21.2.26 "Millenium".
[chise/xemacs-chise.git.1] / src / ChangeLog
1 1999-12-31  Martin Buchholz <martin@xemacs.org>
2
3         * XEmacs 21.2.26 is released.
4
5 1999-12-31  Andy Piper  <andy@xemacs.org>
6
7         * glyphs-x.c (x_widget_instantiate): Avoid X errors calling
8         XMapWindow() on a NULL pointer X window.
9
10 1999-12-31  Martin Buchholz  <martin@xemacs.org>
11
12         * data.c (indirect_function): Use signal_void_function_error().
13
14         * lisp.h: Modify prototypes for signal_*().  Add SUBR_FUNCTION macro.
15
16         * eval.c (PRIMITIVE_FUNCALL): Optimize.
17         (signal_void_function_error): return result of Fsignal().
18         (signal_invalid_function_error): return result of Fsignal().
19         (signal_wrong_number_of_arguments_error): return result of Fsignal().
20         (signal_malformed_list_error): Add DOESNT_RETURN.
21         (signal_malformed_property_list_error): Add DOESNT_RETURN.
22         (signal_circular_list_error): Add DOESNT_RETURN.
23         (signal_circular_property_list_error): Add DOESNT_RETURN.
24         (Feval): Use returned results of signal_*().  Avoids a crash!
25         (Ffuncall): Use returned results of signal_*(). Avoids the crash:
26           (setq debug-on-error t) (funcall 'foo) kbd{r42} kbd{RET}
27         - Only check for fun_nargs < subr_min_args if fun_nargs != max_args.
28         (function_argcount): Use signal_invalid_function_error().
29         (funcall_lambda): Use signal_wrong_number_of_arguments_error().
30         Use signal_invalid_function_error().
31
32 1999-12-28  Andy Piper  <andy@xemacs.org>
33
34         * debug.c: rename debug_loop elements to X_ to avoid name clashes.
35
36         * menubar-x.c (menu_item_descriptor_to_widget_value_1): strdup
37         string_chars.
38         (menu_item_descriptor_to_widget_value_1): strdup name.
39         (pre_activate_callback): strdup name.
40
41         * scrollbar-x.c (scrollbar_instance_to_widget_value): strdup name.
42         (x_update_scrollbar_instance_status): use free_widget_value_tree.
43
44         * dialog-x.c (maybe_run_dbox_text_callback): strdup name.  use
45         free_widget_value_tree.
46         (dbox_descriptor_to_widget_value): ditto.
47
48         * gui-x.c (widget_value_unwind): use free_widget_value_tree.
49         (gui_items_to_widget_values_1): ditto.
50         (gui_items_to_widget_values): ditto.
51         (free_popup_widget_value_tree): free name.
52
53 1999-12-27  Andy Piper  <andy@xemacs.org>
54
55         * nt.c (fstat): use get_osfhandle rather than the handle
56         directly. From Fabrice Popineau.
57
58         * process-nt.c (nt_open_network_stream): take types into account
59         when warning. From Fabrice Popineau.
60
61 1999-12-24  Martin Buchholz <martin@xemacs.org>
62
63         * XEmacs 21.2.25 is released.
64
65 1999-12-22  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
66
67         * syntax.c (vars_of_syntax): Initialize parse-sexp_ignore_comments.
68
69 1999-12-21  Martin Buchholz  <martin@xemacs.org>
70
71         * editfns.c (Fpoint_min): 
72         (Fpoint_min_marker): 
73         (Fpoint_max): 
74         (Fpoint_max_marker): 
75         (Fchar_after): 
76         (Fchar_before): 
77         Docstring fixes.  What's a `buffer pointer' anyways?
78
79         * editfns.c (char=): Remove unused and undocumented optional
80         third BUFFER argument.
81
82         * toolbar.h (DEVICE_SUPPORTS_TOOLBARS_P): 
83         * fns.c (plists_differ): 
84         * elhash.c (HASH_CODE): 
85         * elhash.c (KEYS_EQUAL_P): 
86         * redisplay-output.c (redisplay_move_cursor): 
87         * redisplay.c (create_text_block): 
88         * floatfns.c (Flogb): 
89         * glyphs-msw.c (mswindows_initialize_image_instance_mask): 
90         * glyphs-msw.c (xpm_to_eimage): 
91         * buffer.h (POINT_MARKER_P): 
92         * syntax.c (scan_lists): 
93         * cmdloop.c (Fcommand_loop_1): 
94         * widget.c (Fwidget_apply): 
95         * regex.c (STREQ): 
96         Remove extra parens, esp. of the form ((expr))
97
98         * floatfns.c (Flogb): Make 64-bit clean.
99
100 1999-12-12  Daniel Pittman  <daniel@danann.net>
101
102         * configure.in:
103         * configure.usage:
104         Clean up Athena widget support:
105         - Add `with-athena' to select a variant.
106         - Remove all `athena3d' options.
107         - Robust detection of Athena libraries and headers.
108         - Refuse to build with mismatched library and headers.
109         - Only build a 3d Athena if the user asks for it.
110
111 1999-12-21  Andy Piper  <andy@xemacs.org>
112
113         * redisplay.c (redisplay_frame): check for faces changed when
114         reseting subwindow caches.
115
116         * glyphs.h (struct ii_keyword_entry): add copy_p.
117         (struct image_instantiator_methods): add query_geometry_method and
118         layout_children_method.
119         (IIFORMAT_VALID_GENERIC_KEYWORD): new macro to take into account
120         copying characteristics of keywords.
121         (IIFORMAT_VALID_NONCOPY_KEYWORD): new macro for defining keywords
122         whose arguments should not be copied by the specifier code.
123         (image_instance_geometry): new enum for layouts.
124         (struct Lisp_Image_Instance): re-jig for layouts and update
125         macros.
126
127         * glyphs.c (string_instantiate): rename variables.
128         (image_instantiate): add strings to those widgets that are
129         instantiated per-window.
130         (image_copy_vector_instantiator): new function for copying glyph
131         specifier instantiators.
132         (image_copy_instantiator): ditto.
133
134         * glyphs-x.c (x_update_subwindow): use new face update functions.
135         (update_widget_face): update to use new lwlib arg functions.
136         (update_tab_widget_face): new function for updating tab control
137         label faces.
138         (x_widget_instantiate): use new face update functions and new
139         lwlib arg functions.
140         (x_tab_control_instantiate): ditto.
141         (x_tab_control_set_property): ditto.
142
143         * glyphs-widget.c (VALID_GUI_KEYWORDS): use NONCOPY keyword for
144         callbacks and other things that could recurse.
145         (VALID_GUI_KEYWORDS): 
146
147         * event-msw.c: fix cpp stuff for cygwin < b20.
148
149         * config.h.in: move uid_t and friends to before the s&m files so
150         that they can be used there.
151
152         * Makefile.in.in (debug-temacs): new target that adds emacs
153         environment before invoking gdb.
154
155         * lwlib.h (_widget_args): new structure for holding widget
156         args. It is reference counted so that we don't have to copy Xt
157         args.
158         (_widget_value): remove widget args. Add reference to widget_args.
159
160         * lwlib.c (free_widget_value_contents): free widget args using
161         free_widget_value_args.
162
163         * lwlib-Xaw.c (xaw_update_one_widget): use new arg packet.
164         (xaw_update_one_widget): use XtIsSubclass for determining labels.
165
166         * lwlib.c (lw_add_value_args_to_args): modify to use our reference
167         counted arg packet.
168         (lw_add_widget_value_arg): new function. Add an arg to the arg
169         packet.
170         (free_widget_value_args): new function. Remove a reference counted
171         arg packet.
172         (lw_copy_widget_value_args): new function. Copy reference counted
173         arg packet.
174         (merge_widget_value_args): new function. Do a merge of widget
175         args.
176         (merge_widget_value): use it.
177         (copy_widget_value_tree): copy widget args using reference
178         counting, since we can't easily copy the args we have been given.
179
180         * specifier.h (struct specifier_methods): add copy_instantiator_method.
181
182         * specifier.c (build_up_processed_list): use
183         copy_instantiator_method if defined.
184
185 1999-12-19  Martin Buchholz  <martin@xemacs.org>
186
187         * fns.c (Ffillarray): Use O(N), not O(N^2) algorithm for strings.
188
189 1999-12-19  Hrvoje Niksic  <hniksic@iskon.hr>
190
191         * profile.c (sigprof_handler): FUN retrieved from the backtrace
192         can also be a cons representing anonymous interpreted function.
193
194 1999-12-18  Martin Buchholz  <martin@xemacs.org>
195
196         * fns.c (mapcar1): 
197         (Fmapconcat): 
198         (Fmapcar): 
199         (Fmapvector): 
200         Docstring fixes.  Make them consistent with the lispref and ANSI Lisp.
201
202 1999-12-17  Martin Buchholz  <martin@xemacs.org>
203
204         * print.c (print_internal): print ?+ instead of ?\+, etc...
205         Make printing a little more efficient.
206         Prevent buffer overflow if sizeof EMACS_INT > 8.
207         My first 128-bit fix!
208
209 1999-12-14  Karl M. Hegbloom  <karlheg@inetarena.com>
210
211         * filelock.c (unlock_all_files): GC_CONSP should be CONSP
212
213 1999-12-17  Martin Buchholz  <martin@xemacs.org>
214
215         * database.c:
216         * window.c:
217         * event-stream.c:
218         Remove last vestigial uses of GC_*
219         
220         * fns.c (mapcar1): Fix ***THREE*** obscure crashes in one function!
221         - Two of those involve evil mapping functions that destructively
222           modify a list being mapped over.
223         - Any garbage collection when mapping over a string could cause a
224           crash (typically in mapconcat).
225
226 1999-12-08  Adrian Aichner  <adrian@xemacs.org>
227
228         * s\windowsnt.h (DIRECTORY_SEP): Initialize from
229         `Vdirectory_sep_char'.
230
231         * lisp.h: Add declaration for `Vdirectory_sep_char' to allow
232         customization of `DIRECTORY_SEP' under native Windows NT.
233
234 1999-12-14  Katsumi Yamaoka   <yamaoka@jpl.org>
235
236         * buffer.c (Fbury_buffer): Add directions to the docstring.
237
238 1999-12-14  Martin Buchholz <martin@xemacs.org>
239
240         * XEmacs 21.2.24 is released.
241
242 1999-12-13  Martin Buchholz  <martin@xemacs.org>
243
244         * sound.c (vars_of_sound): Provide esd-sound if HAVE_ESD_SOUND
245
246         * nas.c: Fix compiler warnings.  Ansify.  C++ compilation support.
247
248 1999-12-13  Kazuyuki IENAGA <ienaga@jsys.co.jp>
249
250         * input-method-xlib.c: Make sure src/ does not use Athena, except
251         indirectly through lwlib.
252
253 1999-12-13  Gunnar Evermann  <ge204@eng.cam.ac.uk>
254
255         * dbxrc (pobj): Add opaque_ptr, remove opaque_list.
256
257 1999-12-10  Shenghuo ZHU <zsh@cs.rochester.edu>
258
259         * file-coding.c (add_coding_system_to_list_mapper): 
260         - (coding-system-list) should list aliases correctly.
261
262 1999-12-07  Andy Piper  <andy@xemacs.org>
263
264         * fileio.c (vars_of_fileio): directory separator fix from Mike Alexander.
265         * windowsnt.h (ditto):
266
267 1999-11-27  Adrian Aichner  <adrian@xemacs.org>
268
269         * sysfile.h: Encapsulate `fstat' for Windows NT just like stat to
270         get consistent file modification times.
271
272         * sysdep.h: Declare `wait_for_termination' to use process handle,
273         not PID, on Windows NT native.
274
275         * sysdep.c (wait_for_termination): Use process handle, not PID, on
276         Windows NT native.  Set exit code correctly on Windows NT.
277         (sys_subshell): Use process handle, not PID,
278         on Windows NT native.
279         (sys_fstat): Add ENCAPSULATE_FSTAT for Windows NT.
280
281         * process-nt.c (nt_create_process): Remove negative pid hack for
282         Windows 95.
283         (nt_send_process): Declare vol_proc volatile.
284         (get_internet_address): warn_when_safe if IP address cannot be
285         found.
286         (nt_open_network_stream): warn_when_safe if network stream fails
287         to open.
288         
289         * ntproc.c (create_child): Remove negative pid hack for Windows
290         95.  Remove incorrect and unnecessary USE_UNION_TYPE handling.
291
292         * nt.c (fstat): Encapsulate for Windows NT just like stat to get
293         consistent file modification times.
294
295         * callproc.c (call_process_cleanup): Use process handle, not PID,
296         on Windows NT native.
297         (Fcall_process_internal): Ditto.  Close fd_error in parent.  Don't
298         check for negative pid on Windows NT/9[58].
299
300 1999-12-07  Martin Buchholz <martin@xemacs.org>
301
302         * XEmacs 21.2.23 is released.
303
304 1999-12-06  Martin Buchholz  <martin@xemacs.org>
305
306         * events.c (Fcopy_event): Don't copy the lrecord_header.
307
308         * lisp.h (DO_REALLOC): 
309         Optimize.
310         Remove redundant parens.
311         Remove generic hygienic macro comment.
312
313         * lrecord.h (set_lheader_implementation): Remove redundant parens.
314
315 1999-12-05  Martin Buchholz  <martin@xemacs.org>
316
317         * lstream.c (Lstream_adding): 
318         - Never compare a size_t and a possibly negative number.
319         - Optimize.
320
321 1999-12-05  Kyle Jones  <kyle_jones@wonderworks.com>
322
323         * lisp/itimer.el: (require 'lisp-float-type).  Use
324           floats directly in itimer-time-difference.
325
326 1999-12-05  Andy Piper  <andy@xemacs.org>
327
328         * redisplay-output.c (redisplay_output_layout): avoid name hiding.
329
330         * gui.h: declare gui_add_item_keywords_to_plist.
331
332         * window.c (Fdelete_window): mark subwindows as changed so that
333         they can be GC'd if necessary.
334
335 1999-12-02  Jan Vroonhof  <vroonhof@math.ethz.ch>
336
337         * src/callproc.c (Fcall_process_internal): Be careful in writing
338         terminating null when copying args. nargs can be < 4.
339         Idea from Klaus Frank <klausf@i3.informatik.rwth-aachen.de>
340
341 1999-11-29  Kyle Jones  <kyle_jones@wonderworks.com>
342
343         * src/sound.c (Fding): Remove zero initialization of
344           static variables to avoid crashes on systems that dump
345           the initialized data segment read-only.
346
347 1999-12-05  Jan Vroonhof  <vroonhof@math.ethz.ch>
348
349         * glyphs-x.c (convert_EImage_to_XImage): Guard against other
350         visual classes. From Rasmus Borup Hansen <rbh@math.ku.dk>
351
352 1999-12-04  Martin Buchholz  <martin@xemacs.org>
353
354         * lstream.c: (filedesc_reader): 
355         (filedesc_writer): Try number 2: Support broken systems where
356         return type of read() and write() is different from ssize_t.
357
358         * systty.h: 
359         * sysdep.h:
360         * sysdep.c:
361         - Replace macro calls to EMACS_GET_TTY and EMACS_SET_TTY with
362           function equivalents emacs_get_tty() and emacs_set_tty().
363         - Moved prototypes to systty.h, where struct event_tty is defined.
364         - Renamed bogus `waitp' parameter to `flushp'.
365
366         * lstream.c (filedesc_reader): Support broken systems where return
367         type of read() is different from ssize_t.
368
369         * events.c (Fcopy_event): Avoid redundant EQ test if event2 is nil.
370
371         * event-stream.c (menu_move_up): Remove redundant if block.
372         (menu_move_down): Gratuitous rewriting.
373         (menu_move_left): Work around Cygnus codefusion-990706 compiler bug.
374         (menu_move_right): Ditto.
375
376         * lrecord.h (copy_lcrecord):
377         (zero_lcrecord): 
378         Always add parentheses around uses of macro arguments.
379
380         * sysdll.c: #include <stdlib.h> for exit().
381         * unexhp9k800.x: #include <stdlib.h> for malloc().
382         Use proper prototype for Save_Shared_Data(void).
383
384 1999-12-04  Jan Vroonhof  <vroonhof@math.ethz.ch>
385
386         * src/redisplay.c (point_would_be_visible): Correct for topclip.
387
388 1999-12-02  Hrvoje Niksic  <hniksic@iskon.hr>
389
390         * lisp.h: Declare Qself_insert_defer_undo.
391
392         * event-stream.c (Fdispatch_event): Get the magic undo thing from
393         a symbol property, so commands other than self-insert-command can
394         install it.
395         (syms_of_event_stream): Define Qself_insert_defer_undo.
396
397 1999-11-30  Martin Buchholz  <martin@xemacs.org>
398
399         * floatfns.c (emacs_rint): Rename rint to emacs_rint, so that
400         `#undef HAVE_RINT' works.
401
402         * sysdep.h: Fix up prototypes for sys_read_1(), sys_write_1()
403
404 1999-11-25  Andy Piper  <andy@xemacs.org>
405
406         * select-msw.c (Fmswindows_set_clipboard): selection fixes from
407         Mike Alexander.
408         (Fmswindows_delete_selection): ditto.
409
410         * redisplay.h (CLASS_REDISPLAY_FLAGS_CHANGEDP): add size_changed.
411         (GLOBAL_REDISPLAY_FLAGS_CHANGEDP): ditto.
412
413         * redisplay.c (redisplay_device): move size changed to macros in
414         redisplay.h
415         (redisplay_without_hooks): ditto.
416
417         * redisplay-output.c (redisplay_output_layout): rename to avoid
418         name hiding.
419
420         * process-nt.c (struct nt_process_data): mks toolkit fixes from
421         Mike Alexander.
422         (nt_create_process): ditto.
423         (nt_send_process): ditto.
424
425         * nt.c (init_environment): make sure mingw32 gets the cached
426         system info.
427
428         * gui.h: declare gui_add_item_keywords_to_plist.
429
430         * event-msw.c (mswindows_wnd_proc): Clipboard fixes from Mike
431         Alexander.
432
433         * console-msw.h: fix cygwin define/header 1.0 problems.
434         * glyphs-msw.c: ditto.
435         * ntplay.c: ditto.
436         * unexcw.c: ditto.
437         * s/cygwin32/h: ditto.
438
439 1999-11-29  XEmacs Build Bot <builds@cvs.xemacs.org>
440
441         * XEmacs 21.2.22 is released
442
443 1999-11-28  Martin Buchholz <martin@xemacs.org>
444
445         * XEmacs 21.2.21 is released.
446
447 1999-11-26  Martin Buchholz  <martin@xemacs.org>
448
449         * callproc.c (Fcall_process_internal):
450         * config.h.in:
451         * esd.c:
452         * event-msw.c (ntpipe_slurp_reader):
453         * event-msw.c (ntpipe_shove_writer):
454         * event-msw.c (winsock_reader):
455         * event-msw.c (winsock_writer):
456         * event-stream.c (dribble_out_event):
457         * fileio.c:
458         * fileio.c (Fexpand_file_name):
459         * glyphs-x.c (write_lisp_string_to_temp_file):
460         * gpmevent.c (tty_get_foreign_selection):
461         * lisp.h: Update prototypes.
462         * lstream.c (Lstream_flush_out):
463         * lstream.c (Lstream_write_1):
464         * lstream.c (Lstream_was_blocked_p):
465         * lstream.c (Lstream_read_more):
466         * lstream.c (Lstream_read):
467         * lstream.c (Lstream_fputc):
468         * lstream.c (make_stdio_output_stream):
469         * lstream.c (stdio_flusher):
470         * lstream.c (stdio_closer):
471         * lstream.c (make_filedesc_output_stream):
472         * lstream.c (errno_would_block_p):
473         * lstream.c (filedesc_writer):
474         * lstream.c (make_lisp_string_input_stream):
475         * lstream.c (make_fixed_buffer_output_stream):
476         * lstream.c (fixed_buffer_reader):
477         * lstream.c (make_resizing_buffer_output_stream):
478         * lstream.c (make_dynarr_output_stream):
479         * lstream.c (make_lisp_buffer_output_stream):
480         * lstream.c (lisp_buffer_reader):
481         * lstream.h (lstream_implementation):
482         * md5.c (Fmd5):
483         * miscplay.h (reset_parsestate):
484         * process-nt.c (nt_send_process):
485         * process-unix.c (unix_send_process):
486         * sound.c:
487         * sysdep.c (sys_close):
488         * sysdep.c (sys_read_1):
489         * sysdep.c (sys_write_1):
490         * sysfile.h:
491         * file-coding.c (determine_real_coding_system):
492         * file-coding.c (Fdetect_coding_region):
493         * file-coding.c (struct decoding_stream):
494         * file-coding.c (decoding_reader):
495         * file-coding.c (Fdecode_coding_region):
496         * file-coding.c (struct encoding_stream):
497         * file-coding.c (encoding_reader):
498         * file-coding.c (Fencode_coding_region):
499         * file-coding.c (convert_to_external_format):
500         * file-coding.c (convert_from_external_format):
501         - Lstream functions mirror Unix98 read(),write().  Therefore use
502           Unix98 types size_t and ssize_t.  
503         - Try to make Lstream* functions 64-bit clean.  Someday someone
504           may actually want to read from a Lstream with more than 2**32 bytes.
505         - Add configure support for ssize_t.
506         - Update all callers of Lstream_read and Lstream_write to
507           use the new types.
508         - Fix esd* initiated C++ compile errors.
509         - Remove comments referring to `fpurge' - we don't want to call it
510           even if it's there.
511
512         * lisp.h
513         - Remove some lingering Lucid compiler support.
514
515         * lisp.h
516         - Add prototype for Fdelete_process.
517
518         * gpmevent.c (Freceive_gpm_event): Remove unused variables.
519
520 1999-11-27  Martin Buchholz  <martin@xemacs.org>
521
522         * Makefile.in.in (depend): Only update `depend' if there were changes.
523
524 1999-11-26  Martin Buchholz  <martin@xemacs.org>
525
526         * editfns.c (get_system_name): Remove.
527
528 1999-11-26  Martin Buchholz  <martin@xemacs.org>
529
530         * device-x.c (x_init_device): 
531         - Replace magic number `17' with equivalent expn using sizeof.
532         - Replace strcmp with marginally more efficient memcmp.
533         - Avoid using C++ reserved word `class'.
534
535         * file-coding.c (determine_real_coding_system): 
536         - Look for both initial and final -*- cookies.
537         - Replace EQ (foo, Qnil) with NILP (foo)
538         - Make searching for cookies more efficient.
539         - Recognize only rfc 1521 characters in charset names.
540
541 1999-11-22  Kazuyuki IENAGA <kazz@imasy.or.jp>
542
543         * input-method-xlib.c (IMDestroyCallback): #ifdef'd by
544         "THIS_IS_X11R6", because it shouldn't be evaluated unless X11R6.
545         * input-method-xlib.c (IMInstantiateCallback): Ditto.
546         * input-method-xlib.c (XIM_init_device): Revive XOpenIM function
547         call for X11R5 systems.
548         * input-method-xlib.c (XIM_delete_frame): Enabled XDestroyIC()
549         again because XIM doesn't concern with frame deletion itself.
550         The XIC will be cleared by XIM when XIM is closing (at XIM destroy
551         callback).
552
553 1999-10-25  Kazuyuki IENAGA <kazz@imasy.or.jp>
554
555         * input-method-xlib.c: Added new lisp object Qxim_xlib.
556         New macro xim_warn(str), xim_warn1(fmt,str) and xim_info(str).
557         All the valid stderr_out were changed to those macros.
558         (IMDestroyCallback): Don't test the XIC if the frame is not X
559         frame.
560         (IMInstantiateCallback): Treat the client_data as "device" not
561         "frame" because the caller changed from frame to device.
562         Here initializes XIM and activates XICs for each frame which
563         doesn't have XIC.
564         (XIM_init_device): Register the XIM instantiation callback which
565         had been performed by XIM_init_frame() before.
566         (XIM_delete_frame): Added a test for the XIM before clearing XIC.
567         (XIM_init_frame): Placed an actual code for XIC activation which
568         was moved from IMInstantiateCallback.
569         (syms_of_input_method_xlib): New function which includes a symbol
570         Qxim_xlib that uses in emacs.c.
571
572         * emacs.c: Added a function entry "syms_of_input_method_xlib" for
573         input_method_xlib.
574
575         * symsinit.h: Added a declaration of "syms_of_input_method_xlib".
576
577 1999-11-05  Robert Pluim  <rpluim@bigfoot.com>
578
579         * emacs.c (shut_down_emacs): Point users to PROBLEMS file
580
581 1999-11-16  Jan Vroonhof  <vroonhof@math.ethz.ch>
582
583         * redisplay-output.c (compare_runes): Add comments about
584         results from profiling.
585
586         * redisplay.h (struct rune): Do not use bitfields for members.
587         (struct rune): Add various comments about further optimizations.
588         
589 1999-11-19  Eric Darve  <darve@crocco.stanford.edu>
590
591         * abbrev.c (abbrev_oblookup): Check whether wordend <= wordstart
592         if Vabbrev_start_location is used too.
593
594 1999-10-27  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
595
596         * file-coding.c (detect_eol_type): Return CR when two
597         sequential CR are found.
598         (determine_real_coding_system): Check EOL type when coding:
599         cookie is found and EOL type is not specified.
600         Don't assume 8bit char as part of coding: cookie.
601
602 1999-10-26  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
603
604         * file-coding.c (determine_real_coding_system): Check if
605         '-*-' exists. End searching for coding: cookie at the end
606         of line. Check whether character before coding: is space,
607         tab or ';'.
608
609 1999-11-07  William M. Perry  <wmperry@aventail.com>
610
611         * gpmevent.c: Completely rewrote GPM mouse support for linux
612           console.  The TTY console and event stream are modified at run
613           time, so this code can now be used as a module.
614           (tty_get_foreign_selection): New function to allow pasting from
615           other virtual consoles.
616           (Fgpm_enable): New lisp-visible function to turn GPM on or off
617           at run time.
618
619         * device-tty.c (tty_asynch_device_change): No longer need to
620           notify GPM code of window/console height/width changes.
621
622         * console-tty.c (tty_init_console): Removed outdated GPM support
623           that was part of the console/event code.
624
625         * event-Xt.c (emacs_Xt_select_console): Ditto
626
627         * event-Xt.c (emacs_Xt_unselect_console): Ditto
628
629         * event-unixoid.c (read_event_from_tty_or_stream_desc): Ditto
630
631         * frame-tty.c (console_type_create_frame_tty): Ditto
632
633 1999-11-17  Martin Buchholz  <martin@xemacs.org>
634
635         * nt.c:
636         * sysdep.c:
637         * s/mingw32.h:
638         * s/windowsnt.h:
639         - Use Unix 98 types uid_t, gid_t, pid_t.
640         - Define them.
641
642 1999-11-01  Olivier Galibert  <galibert@pobox.com>
643
644         * alloc.c (reinit_alloc_once_early): Move purify_flag init...
645         * emacs.c (main_1): ...here, to get the correct value even with
646         the portable dumper.
647
648 1999-11-17  Martin Buchholz  <martin@xemacs.org>
649
650         * lisp.h (BIT_VECTOR_LONG_STORAGE): Add extra parens.  It's a macro!
651
652         * tooltalk.c (tt_build_string): Remove extra parens.
653         * process.c (print_process): Remove extra parens.
654         * buffer.h (BI_BUF_PTR_BYTE_POS): 
655         (BUF_PTR_BYTE_POS): 
656         (BI_BUF_BYTE_ADDRESS): 
657         (BI_BUF_BYTE_ADDRESS_BEFORE): 
658         (valid_memind_p): 
659         (bytind_to_memind): 
660         (memind_to_bytind):
661         Remove extra parens.  Inline functions are not macros.
662
663         * editfns.c (Fuser_login_name): 
664         (user_login_name):
665         Use proper type uid_t.
666
667 1999-11-15  Martin Buchholz  <martin@xemacs.org>
668
669         * syntax.c (complex_vars_of_syntax): Make more readable.
670         (define_standard_syntax): New function.
671
672         * syntax.c (forward-comment): Gradually make XEmacs 64-bit-clean.
673
674 1999-11-14  Martin Buchholz  <martin@xemacs.org>
675
676         * mule-ccl.c (CCL_WRITE_STRING): Fix compiler warnings.
677
678 1999-11-12  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
679
680         * mule-charset.h (LEADING_BYTE_OFFICIAL_1, LEADING_BYTE_OFFICIAL_2):
681         New enum type to make sure no gap in the leading byte definition.
682
683 1999-11-11  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
684
685         * mule-charset.h (LEADING_BYTE_CYRILLIC_ISO_8859_5,
686         LEADING_BYTE_LATIN_ISO8859_9): Moved to 0x8B and 0x8C
687         to remove a hole in leading byte definition.
688
689 1999-11-10  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
690
691         * mule-charset.c (non_ascii_valid_charptr_p): Check if
692         private charset is defined.
693
694 1999-11-09  Yoshiki Hayashi  <t90553@mail.ecc.u-tokyo.ac.jp>
695
696         * mule-ccl.c (ccl_driver): Make sure generated sequences
697         are valid when doing `CCL_WRITE_STRING'.
698         (ccl-execute-on-string): Pass CCL_MODE_DECODING to ccl_driver.
699
700 1999-11-10  XEmacs Build Bot <builds@cvs.xemacs.org>
701
702         * XEmacs 21.2.20 is released
703
704 1999-11-04  Martin Buchholz  <martin@xemacs.org>
705
706         * mule-ccl.c (ccl_driver): Warning suppression
707
708 1999-11-01  SL Baur  <steve@miho.m17n.org>
709
710         * emacs.c (main_1): Guard call to reinit_vars_of_debug when not
711         building a debugged XEmacs.
712
713 1999-10-28  Andreas Jaeger  <aj@suse.de>
714
715         * src/emacs.c (main_1): Don't set the malloc hooks if using
716         DOUG_LEA_MALLOC.
717
718 1999-10-30  Olivier Galibert  <galibert@pobox.com>
719
720         * alloc.c (pdump_dump_rtables): Don't forget to dump the last
721         registered type.
722         (pdump): Ditto.
723
724 1999-10-25  Olivier Galibert  <galibert@pobox.com>
725
726         * emacs.c (main_1): Call reinit_vars_of_scrollbar_x.
727
728         * symsinit.h: Declare reinit_vars_of_scrollbar_x.
729
730 1999-10-25  Martin Buchholz  <martin@xemacs.org>
731
732         * redisplay.h (CLASS_RESET_CHANGED_FLAGS): 
733         (GLOBAL_RESET_CHANGED_FLAGS): 
734         (CLASS_REDISPLAY_FLAGS_CHANGEDP): 
735         (RESET_CHANGED_SET_FLAGS): 
736         Fix C++ compile errors/warnings.
737         These macros were just a tad too clever.
738
739         * process-unix.c (unix_open_network_stream):
740         * objects-x.c (allocate_nearest_color):
741         * mule-charset.c (vars_of_mule_charset): 
742         * fileio.c (Ffile_truename): 
743         * file-coding.c (vars_of_file_coding): 
744         Fix compile errors/warnings.
745
746         * alloc.c (xstrdup): Use fact that memcpy returns its first arg.
747         (allocate_lisp_storage): Simplify.
748
749 1999-10-24  Olivier Galibert  <galibert@pobox.com>
750
751         * conslots.h: Add defines with first and last slot names.
752         * bufslots.h: Add defines with first and last slot names.
753
754         * buffer.c (common_init_complex_vars_of_buffer): Renamed from
755         reinit_complex_vars_of_buffer
756         (reinit_complex_vars_of_buffer): Reset the slots to the dumped
757         value.
758         (complex_vars_of_buffer): Dump the slots values.
759
760         * console.c (common_init_complex_vars_of_console): Renamed from
761         reinit_complex_vars_of_console
762         (reinit_complex_vars_of_console): Reset the slots to the dumped
763         value.
764         (complex_vars_of_console): Dump the slots values.
765
766         * alloc.c: Rename reloc_table to pdump_reloc_table, rt_list to
767         pdump_rt_list and move them at the beginning of the file.
768         (gc_sweep): Unmark pdumped objects after the sweep phase.
769         (pdump_dump_rtables): Change a bare 256 to
770         last_lrecord_type_index_assigned.  Add a separator between the
771         adresses or lrecords and the ones of C structs in the dump file.
772         (pdump_load): Cope with the new separator and the renamings.  Stop
773         looking for the hash tables list after it has been found (duh!).
774
775 1999-10-24  Robert Bihlmeyer <robbe@orcus.priv.at>
776
777         * sound.c: support HAVE_ESD_SOUND
778
779         * miscplay.c: 
780         * miscplay.h: 
781         * linuxplay.c: Move large part of linuxplay to generalized file
782         miscplay. Make it platform independent.
783
784         * esd.c: New file
785
786 1999-10-24  Adrian Aichner <adrian@xemacs.org>
787
788         * lisp.h (Dynarr_declare): Fix boo-boo.
789
790 1999-10-24  Olivier Galibert  <galibert@pobox.com>
791
792         * process-unix.c (allocate_pty): Fix HAVE_GETPT.
793         * process.h: Ditto.
794
795 1999-10-24  Jan Vroonhof  <vroonhof@math.ethz.ch>
796
797         * redisplay.c (start_with_line_at_pixpos): Remove assert(cur_elt
798         >=0). Handle the cur_elt == 0 case.
799
800 1999-10-24  Jan Vroonhof  <vroonhof@math.ethz.ch>
801
802         * unexelf.c: Merge Martin's c++ fixes back in 
803
804 1999-10-20  Jan Vroonhof  <vroonhof@math.ethz.ch>
805
806         * unexelf.c (unexec): Only copy the global offset
807         table from memory on sgi machines.
808
809 1999-08-13     Alexandre Oliva <oliva@dcc.unicamp.br>, Vin Shelton <acs@xemacs.org>
810
811         * unexelf.c: Enable GNU/Linux/alpha to build with gcc 2.95 by
812         adding support for an sbss section.  Get IRIX 5.2 to build using
813         unexelf.c.
814
815         * m/iris4d.h: Use unexelf.o for unexec.
816
817         * m/iris5d.h: Use unexelf.o for unexec.
818
819 1999-10-24  Jan Vroonhof  <vroonhof@math.ethz.ch>
820
821         * unexelf.c: Revert to 21.1 version
822
823 1999-08-28  Jan Vroonhof  <vroonhof@math.ethz.ch>
824
825         * window.c (Fwindow_truncated_p): New function.
826
827 1999-08-25  Jonathan Marten <jonathan.marten@uk.sun.com>
828
829         * window.c (window_truncation_on): Always return 0 for minibuffer
830         windows, to enable auto scrolling.
831
832 1999-10-24 Neal Becker <nbecker@fred.net>
833         * process.h: Unix98 PTY support
834
835 1999-10-17  Jan Vroonhof  <vroonhof@math.ethz.ch>
836
837         * fileio.c (Ffile_truename): Do proper mule decoding on
838         the argument to xrealpath()
839
840 1999-08-19  Stephen Tse  <stephent@sfu.ca>
841
842         * process-unix.c (unix_open_network_stream): Add udp network
843         support; rename variable Qtcpip to Qtcp, parameter family to
844         protocol for consistency with Qudp.
845
846         * process-nt.c (nt_open_network_stream): Rename variable Qtcpip to
847         Qtcp, parameter family to protocol for consistency with Qudp.
848
849         * process.c (global_variables): Add a new variable Qudp for udp
850         network support; rename variable Qtcpip to Qtcp for consistency
851         with Qudp.
852         (Fopen_network_stream_internal): Rename parameter FAMILY to
853         PROTOCOL for consistency; fix a minor typo and add an explanation
854         in docstring for udp programming.
855         (Fopen_multicast_group_internal): Fix a minor typo in docstring.
856         (syms_of_process): Add a new variable Qudp for udp network
857         support; rename variable Qtcpip to Qtcp for consistency with Qudp.
858
859         * process.h (extern_variables): Add a new variable Qudp for udp
860         network support; rename variable Qtcpip to Qtcp for consistency
861         with Qudp.
862
863         * procimpl.h: Add a new variable Qudp for udp network support;
864         rename variable Qtcpip to Qtcp for consistency with Qudp.
865         (struct process_methods): Rename parameter family to protocol.
866
867
868 1999-10-24  Olivier Galibert  <galibert@pobox.com>
869
870         * alloc.c (pdump_make_hash): Divide pointers by 8 for a better hash.
871
872 1999-10-23  Olivier Galibert  <galibert@pobox.com>
873
874         * lrecord.h (struct lrecord_header): Removed dumped flags.
875
876         * dynarr.c: Use DUMPEDP instead of dumped flag.
877
878         * lisp.h (DUMPEDP): Added.  Removed dumped flag from dynarr.
879
880         * alloc.c: Removed hash_next linked list pointer.
881         
882         * *.c *.h: Removed markobj and mark_object parameters, removed GC_
883         and XGC macros.
884
885 1999-10-14  Andy Piper  <andy@xemacs.org>
886
887         * redisplay-x.c (x_output_shadows): fix dodgy maths for border
888         calculations.
889
890         * gutter.c (output_gutter): be more accurate about the area to be
891         cleared since X seems to manage to do the clear after drawing the
892         border.
893
894         * redisplay.h (RESET_CHANGED_FLAGS): new macro for setting
895         redisplay flags as a group.
896         (RESET_CHANGED_SET_FLAGS): ditto.
897         (CLASS_RESET_CHANGED_FLAGS): ditto.
898         (GLOBAL_RESET_CHANGED_FLAGS): ditto.
899         (REDISPLAY_FLAGS_CHANGEDP): new macro for testing redisplay flags
900         as a group.
901         (CLASS_REDISPLAY_FLAGS_CHANGEDP): ditto.
902         (GLOBAL_REDISPLAY_FLAGS_CHANGEDP): ditto.
903
904         * redisplay.c (redisplay_frame): use CLASS_RESET_CHANGED_FLAGS
905         instead of setting flags individually.
906         (redisplay_device): ditto CLASS_REDISPLAY_FLAGS_CHANGEDP.
907         (redisplay_device): ditto.
908         (redisplay_device): ditto CLASS_RESET_CHANGED_FLAGS.
909         (redisplay_without_hooks): ditto GLOBAL_REDISPLAY_FLAGS_CHANGEDP.
910         (redisplay_without_hooks): ditto CLASS_REDISPLAY_FLAGS_CHANGEDP.
911         (redisplay_without_hooks): ditto.
912         (redisplay_without_hooks): ditto GLOBAL_RESET_CHANGED_FLAGS.
913
914         * redisplay-x.c (x_output_string): unmap subwindows in the area.
915         (x_output_blank): ditto.
916
917         * redisplay-output.c (redisplay_output_display_block): don't unmap
918         subwindows in case layout optimization can avoid it.
919         (redisplay_output_subwindow): unmap subwindows in the area.
920         (redisplay_output_layout): optimize the output of layouts - only
921         output glyphs that have changed if nothing else of redisplay
922         significance has occurred.
923         (redisplay_output_pixmap): change args to
924         redisplay_clear_clipped_region.
925         (redisplay_clear_clipped_region): allow the clipped region to be
926         cleared of all subwindows except the one passed in.
927
928         * redisplay-msw.c (mswindows_output_blank): unmap subwindows in
929         the area.
930         (mswindows_output_cursor): ditto.
931         (mswindows_output_string): ditto.
932
933         * gutter.c (calculate_gutter_size): if the window buffer is nil
934         then don't continue.
935         (update_frame_gutters): be more lenient about when we actually
936         update the gutter. Layout optimization makes this
937         non-costly. Cache redisplay flags that we want to temporarily
938         ignore.
939
940         * glyphs.c (Fglyph_animated_timeout_handler): handle image
941         specific timeouts rather than iterating over the instance cache.
942         (glyph_animated_timeout_mapper): deleted.
943         (add_glyph_animated_timeout): use a weak list to hold onto the
944         image so that it can be GC'ed.
945         (disable_glyph_animated_timeout): disable a specific timeout.
946         (vars_of_glyphs): disable-animated-pixmaps is a new boolean for
947         controlling whether pixmaps are animated or not.
948
949         * glyphs-msw.c (mswindows_finalize_image_instance): make sure the
950         image timeout gets disabled when the image gets freed.
951
952         * glyphs-eimage.c (gif_instantiate): remove meaningless
953         comment. Cope with timeouts specified in the gif extension block.
954
955         * event-msw.c (vars_of_event_mswindows): new variable
956         mswindows-meta-activates-menu.
957         (mswindows_wnd_proc): only goto defproc with VK_MENU if the user
958         wants it.
959
960         * glyphs-x.c (x_finalize_image_instance): delete mask first so
961         that we can compare with image.
962
963 1999-10-14  Jonathan Harris  <jhar@tardis.ed.ac.uk>
964
965         * event-msw.c (mswindows_key_to_emacs_keysym):
966         Recognise keypad keys as different from normal keys.
967
968 1999-10-14  Didier Verna  <didier@xemacs.org>
969
970         * glyphs-x.c (x_finalize_image_instance): avoid freeing null pixmaps.
971
972 1999-10-10  Olivier Galibert  <galibert@pobox.com>
973
974         * symbols.c (init_symbols_once_early): dump Vquit_flag.
975
976         * symsinit.h: Updated.
977
978         * ntproc.c (vars_of_ntproc): Use defsymbol.
979
980         * emacs.c (main_1): Updated reinit calls.
981
982         * lisp.h: Removed Fpurecopy and pure_put declarations.
983         * fns.c: Removed pure_put.
984
985         * eval.c (Fdefvar): pure_put -> Fput
986         (Fdefconst): Ditto.
987         * frame-x.c (init_x_prop_symbols): Ditto.
988         * symbols.c (deferror): Ditto.
989
990         * alloc.c (Fmake_byte_code): Remove Fpurecopy call.
991         * buffer.c (vars_of_buffer): Ditto.
992         * bytecode.c (Ffetch_bytecode): Ditto.
993         (optimize_compiled_function): Ditto.
994         * emacs.c (vars_of_emacs): Ditto.
995         * emodules.c (vars_of_module): Ditto.
996         * eval.c (define_function): Ditto.
997         (Fautoload): Ditto.
998         * frame.c (vars_of_frame): Ditto.
999         * intl.c (Fset_domain): Ditto.
1000         * lread.c (load_force_doc_string_unwind): Ditto.
1001         * menubar.c (vars_of_menubar): Ditto.
1002         * minibuf.c (reinit_complex_vars_of_minibuf): Ditto.
1003
1004         * debug.c (reinit_vars_of_debug): Extracted.
1005         * device-x.c (reinit_vars_of_device_x): Ditto.
1006         * emodules.c (reinit_vars_of_module): Ditto.
1007         * font-lock.c (reinit_vars_of_font_lock): Ditto.
1008         * glyphs-widget.c (reinit_vars_of_glyphs_widget): Ditto.
1009         * glyphs.c (reinit_vars_of_glyphs): Ditto.
1010         * gui-x.c (reinit_vars_of_gui_x): Ditto.
1011         * insdel.c (reinit_vars_of_insdel): Ditto.
1012         * menubar-x.c (reinit_vars_of_menubar_x): Ditto.
1013         * minibuf.c (reinit_complex_vars_of_minibuf): Ditto.
1014         * mule-wnnfns.c (reinit_vars_of_mule_wnn): Ditto.
1015         * print.c (reinit_vars_of_print): Ditto.
1016         * redisplay.c (reinit_vars_of_redisplay): Ditto.
1017         * select-x.c (reinit_vars_of_xselect): Ditto.
1018         * undo.c (reinit_vars_of_undo): Ditto.
1019
1020 1999-10-10  Olivier Galibert  <galibert@pobox.com>
1021
1022         * symsinit.h: Updated declarations, see other ChangeLog entries.
1023
1024         * redisplay.c (init_redisplay): Ensure proper reinitialisation.
1025
1026         * lrecord.h (XD_DYNARR_DESC): Introduce XD_INT_RESET and use it.
1027
1028         * glyphs.c: Add the ii_keyword_entry and related descriptions.
1029         Fix the image_instantiator_methods one.
1030
1031         * file-coding.c: Plonk all data that needs to be dumped in a
1032         dynamically allocated structure.
1033
1034         * extents.c (reinit_vars_of_extents): Extracted from
1035         vars_of_extents.
1036
1037         * event-stream.c (vars_of_event_stream): Don't staticpro when
1038         pdump_wire is enough.
1039
1040         * event-msw.c (reinit_vars_of_event_mswindows): Extracted from
1041         vars_of_event_mswindows.
1042
1043         * event-Xt.c (reinit_vars_of_event_Xt): Extracted from
1044         vars_of_event_Xt.
1045
1046         * eval.c (vars_of_eval): Don't staticpro when pdump_wire is enough.
1047
1048         * emacs.c (main_1): Added some reinit calls.
1049
1050         * device-x.c (reinit_console_type_create_device_x): Extracted from
1051         console_type_create_device_x.
1052
1053         * console.h: Declare the console_type_entry_dynarr description.
1054
1055         * console.c: Unstatic the console_type_entry_dynarr description.
1056
1057         * alloc.c: Removed some dubious comments.  Handle XD_INT_RESET.
1058
1059 1999-10-07  Olivier Galibert  <galibert@pobox.com>
1060
1061         * symsinit.h: Updated declarations, see other ChangeLog entries.
1062
1063         * minibuf.c (reinit_complex_vars_of_minibuf): Extracted from
1064         complex_vars_of_minibuf.
1065
1066         * lrecord.h: Removed XD_PARENT_INDIRECT (unused and
1067         unimplemented), added XD_LO_LINK.
1068
1069         * lisp.h (pdump_wire_list): Add declaration.
1070
1071         * glyphs.h (INITIALIZE_DEVICE_IIFORMAT): Fix bug found by Andy.
1072         (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT): Fix stupid bug.
1073         (REINITIALIZE_IMAGE_INSTANTIATOR_FORMAT): Remove, useless once the
1074         stupid bug fixed.
1075
1076         * glyphs.c (reinit_image_instantiator_format_create): Remove.
1077
1078         * glyphs-x.c (reinit_image_instantiator_format_create_glyphs_x):
1079         Remove.
1080
1081         * glyphs-widget.c
1082         (reinit_image_instantiator_format_create_glyphs_widget): Remove.
1083
1084         * glyphs-msw.c
1085         (reinit_image_instantiator_format_create_glyphs_mswindows):
1086         Remove.
1087
1088         * glyphs-eimage.c
1089         (reinit_image_instantiator_format_create_glyphs_eimage): Remove.
1090
1091         * frame.c (Fmake_frame): Don't reset the face cache when using the
1092         stream device.
1093
1094         * file-coding.c: Dumped the_codesys_prop_dynarr and added all
1095         relevant descriptions.
1096
1097         * events.c (reinit_vars_of_events): Extracted from vars_of_events.
1098
1099         * eval.c: The subr is _not_ a lcrecord.
1100
1101         * emacs.c (main_1): Call vars_of_specifier early before any
1102         specifier creation (e.g in vars_of_glyphs, at least).  Remove the
1103         useless reinit_image_instantiator_format*.  Add
1104         reinit_vars_of_events and reinit_complex_vars_of_minibuf.  Add
1105         calls to lstream_type_create* and process_type_create*.
1106
1107         * elhash.c: Dump Vall_weak_hash_tables correctly.
1108
1109         * data.c: Dump Vall_weak_lists correctly.
1110
1111         * console.c: Fix description.
1112
1113         * console-stream.c (init_console_stream): Do initializations
1114         correctly in the pdump case.
1115
1116         * chartab.c: Fix description.  Dump Vall_syntax_tables correctly.
1117         (Fcopy_char_table): Link into Vall_syntax_tables.
1118
1119         * alloc.c (pdump_wire_list): Added.
1120         (Fgarbage_collect): Fix loop in stats couting missing the last
1121         lrecord type.
1122         (pdump_register_sub): Added XD_LO_LINK.
1123         (pdump_dump_data): Ditto.  Fixed XD_LO_RESET_NIL forgttting the
1124         counter.
1125         (pdump_reloc_one): Ditto.
1126         (pdump_scan_by_alignement): Use last_lrecord_type_index_assigned
1127         instead of 256.
1128         (pdump_dump_wired): Added lists.
1129         (pdump): Use last_lrecord_type_index_assigned instead of 256.
1130         Dump last_lrecord_type_index_assigned value.  Fix minor bugs.
1131
1132 1999-10-07  Andy Piper  <andy@xemacs.org>
1133
1134         * glyphs-msw.c (mswindows_finalize_image_instance): zero out
1135         bitmap slices.
1136
1137         * glyphs-x.c (x_finalize_image_instance): fix FMW problem.
1138
1139 1999-10-06  Andy Piper  <andy@xemacs.org>
1140
1141         * elhash.c (resize_hash_table): Correct reference to lrecord_header.
1142
1143 1999-10-06  Damon Lipparelli  <lipp@primus.com>
1144
1145         * elhash.h: forward declare Lisp_Hash_Table.
1146
1147 1999-10-06  Andy Piper  <andy@xemacs.org>
1148
1149         * glyphs.c (Fset_image_instance_property): mark glyphs as dirty
1150         after setting an image instance property.
1151
1152 1999-10-05  Andy Piper  <andy@xemacs.org>
1153
1154         * gutter.c (update_frame_gutters): output gutters if
1155         windows_changed is set. This is the only way of catching changes
1156         in selected window which obviously can affect the specifiers.
1157
1158         * redisplay.c: new state flags, subwindows_state_changed and
1159         subwindows_state_changed set.
1160         (redisplay_window): use them.
1161         (redisplay_device): ditto.
1162         (redisplay_without_hooks): ditto.
1163         (redisplay_frame): ditto. Reset subwindow cachels if
1164         subwindows_changed is set.
1165         (redisplay_window): call mark_glyph_cachels_as_clean after
1166         redisplaying.
1167
1168         * redisplay-x.c (x_output_x_pixmap): select correct
1169         pixmap image for display depending on the currently selected
1170         slice.
1171
1172         * redisplay-output.c (compare_runes): check dirtiness when
1173         checking RUNE_DGLYPH runes.
1174         (compare_display_blocks): relax invalidation of display blocks
1175         since we can now detect whether individual glyphs have changed or
1176         not.
1177
1178         * redisplay-msw.c (mswindows_output_dibitmap): select correct
1179         bitmap image for display depending on the currently selected
1180         slice.
1181
1182         * glyphs.h (struct Lisp_Image_Instance): add a dirty flag.
1183         (IMAGE_INSTANCE_DIRTYP): new macro.
1184         (XIMAGE_INSTANCE_DIRTYP): ditto.
1185         (MARK_IMAGE_INSTANCE_CHANGED): ditto.
1186         (GLYPH_DIRTYP): ditto.
1187         (XGLYPH_DIRTYP): ditto.
1188         (MARK_GLYPH_CHANGED): ditto.
1189         (GLYPH_CACHEL_DIRTYP): ditto.
1190         (struct glyph_cachel): add a dirty flag.
1191
1192         * glyphs.c (update_frame_subwindows): Don't update on
1193         glyphs_changed.
1194         (glyph_animated_timeout_mapper): new function. Map over the
1195         instance cache lookinng for animated images to update.
1196         (Fglyph_animated_timeout_handler): new function. Lisp callback for
1197         handling animated image timeout events.
1198         (disable_glyph_animated_timeout): new function. Add the animated
1199         image timeout.
1200         (disable_glyph_animated_timeout): new function. Remove the
1201         animated image timeout.
1202         (syms_of_glyphs): initialize Qglyph_animated_timeout_handler and
1203         friends.
1204         (vars_of_glyphs): initialize Vglyph_animated_ticker.
1205         (image_instance_equal): add the currently displayed slice.
1206         (image_instance_hash): ditto.
1207         (allocate_glyph): initialize dirty flag.
1208         (glyph_width): rename glyph -> glyph_or_image.
1209         (glyph_height_internal): ditto.
1210         (glyph_dirty_p): new function. Determine whether the image
1211         instance in the domain and/or glyph is dirty.
1212         (set_glyph_dirty_p): set the dirtiness.
1213         (update_glyph_cachel_data): take dirtiness into account. Pass the
1214         image instance we are interested in to glyph_width and friends.
1215         (get_glyph_cachel_index): make non-static. Always call
1216         update_glyph_cachel_data.
1217         (mark_glyph_cachels_as_not_updated): meaningless formatting
1218         change.
1219         (mark_glyph_cachels_as_clean): new function. Clean dirtiness from
1220         glyph cachels.
1221
1222         * glyphs-x.h (struct x_image_instance_data): change
1223         pixmap to a list of pixmaps.
1224         (IMAGE_INSTANCE_X_PIXMAP_SLICE): new macro.
1225         (IMAGE_INSTANCE_X_PIXMAP_SLICES): ditto.
1226         (XIMAGE_INSTANCE_X_PIXMAP_SLICE): ditto.
1227         (XIMAGE_INSTANCE_X_PIXMAP_SLICES): ditto.
1228
1229         * glyphs-x.c (x_finalize_image_instance): make sure multi pixmap
1230         images get deleted properly.
1231         (init_image_instance_from_x_image): add slices paramater and use
1232         it to initialize x_image_instance_data correctly.
1233         (image_instance_add_x_image): new function. Add new pixmaps to our
1234         set of instantiated pixmaps for an image. Used by animated images.
1235         (x_init_image_instance_from_eimage): add a slices
1236         parameter. Instantiate all images from the eimage.
1237         (x_xpm_instantiate): update use of
1238         init_image_instance_from_x_image.
1239         (init_image_instance_from_xbm_inline): ditto.
1240         (x_initialize_pixmap_image_instance): add slices paramater and use
1241         it to allocate x_image_instance_data correctly.
1242
1243         * glyphs-msw.h (struct mswindows_image_instance_data): change
1244         bitmap to a list of bitmaps.
1245         (IMAGE_INSTANCE_MSWINDOWS_BITMAP_SLICE): new macro.
1246         (IMAGE_INSTANCE_MSWINDOWS_BITMAP_SLICES): ditto.
1247         (XIMAGE_INSTANCE_MSWINDOWS_BITMAP_SLICE): ditto.
1248         (XIMAGE_INSTANCE_MSWINDOWS_BITMAP_SLICES): ditto.
1249
1250         * glyphs-msw.c (init_image_instance_from_dibitmap): add slices
1251         paramater and use it to initialize mswindows_image_instance_data
1252         correctly.
1253         (image_instance_add_dibitmap): new function. Add new bitmaps to
1254         our set of instantiated bitmaps for an image. Used by animated
1255         images.
1256         (mswindows_init_image_instance_from_eimage): add a slices
1257         parameter. Instantiate all images from the eimage.
1258         (mswindows_xpm_instantiate): update use of
1259         init_image_instance_from_dibitmap.
1260         (bmp_instantiate): ditto.
1261         (init_image_instance_from_xbm_inline): ditto.
1262         (mswindows_finalize_image_instance): make sure all the bitmap
1263         slices get deleted.
1264         (mswindows_initialize_dibitmap_image_instance): add slices
1265         paramater and use it to allocate mswindows_image_instance_data
1266         correctly.
1267
1268         * glyphs-eimage.c (jpeg_instantiate): give extra paramter to
1269         init_image_instance_from_eimage.
1270         (png_instantiate): ditto.
1271         (tiff_instantiate): ditto.
1272         (gif_instantiate): allocate bitmaps for all gif slices not just
1273         the first one.
1274
1275         * device.h (struct device): add subwindows_state_changed flag.
1276         (MARK_DEVICE_SUBWINDOWS_STATE_CHANGED): new macro.
1277         (MARK_DEVICE_FRAMES_GLYPHS_CHANGED): ditto.
1278
1279         * console.h (struct console_methods): add a slice parameter to
1280         init_image_instance_from_eimage_method.
1281
1282         * redisplay.c (create_string_text_block): Allow buffer to be nil
1283         without crashing.
1284
1285 1999-09-24  Andy Piper  <andy@xemacs.org>
1286
1287         * glyphs-x.c: only include gui-x.h if we are building with
1288         widgets.
1289
1290         * gui-x.c (vars_of_gui_x): only set popup_up_p if we have popups.
1291
1292 1999-09-28  Lee Kindness <lkindness@csl.co.uk>
1293
1294         * objects-x.c (allocate_nearest_color): will return 0 (failure)
1295         when the colormap is full and the color it has computed to be the
1296         'nearest' has been allocated read/write.
1297
1298 1999-10-02  Olivier Galibert  <galibert@pobox.com>
1299
1300         * search.c (reinit_vars_of_search):   Reinit   the  search   cache
1301         correctly.
1302
1303         * elhash.h:     Make    the    description    visible.     Declare
1304         resize_hash_table.
1305
1306         * elhash.c  (resize_hash_table): Extracted from enlarge_hash_table
1307         to generalize the hash table reorganization.
1308         (reorganize_hash_table): Added.
1309         (enlarge_hash_table): Uses resize_has_table.
1310
1311         * casetab.c (complex_vars_of_casetab):  staticpro  the mule mirror
1312         tables.
1313
1314         * alloc.c:   Add  correct  management  of   blocks of  structures.
1315         Reorganize hash tables at reload since  the hash values can change
1316         with the pointers.
1317
1318 1999-10-01  Olivier Galibert  <galibert@pobox.com>
1319
1320         * lisp.h: Add pdump_wire declaration
1321
1322         * elhash.c (vars_of_elhash): Wire Vall_weak_hash_tables.
1323         * symbols.c (init_symbols_once_early): Wire Qnil and Qunbound.
1324
1325         * alloc.c (pdump_wire): Added..
1326         (pdump_load): Support it.
1327         (pdump): Support it
1328
1329         * glyphs-msw.c
1330         (reinit_image_instantiator_format_create_glyphs_mswindows): Fix
1331         macro calls.
1332
1333 1999-09-28  Olivier Galibert  <galibert@pobox.com>
1334
1335         * symsinit.h: Added lots of prototypes.
1336
1337         * symeval.h: Added defsymbol_nodump declaration.
1338
1339         * symbols.c (find_symbol_value): Lame attempt at making the
1340         startup go further.
1341         (defsymbol_nodump): Added.
1342
1343         * mule-charset.c: Collapsed global lisp objects arrays in one
1344         dumpable structure.
1345
1346         * lrecord.h: Added some flags.
1347
1348         * lisp.h: Added dumped flag to dynarrs.  Added dumpstruct
1349         declaration.
1350
1351         * glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM): Don't
1352         staticpro dynamic variables.
1353
1354         * glyphs.c (reinit_specifier_type_create_image): Added.
1355         (image_instantiator_format_create): Dump image instantiator format
1356         dynarr.
1357         (reinit_image_instantiator_format_create): Added.
1358
1359         * emacs.c (main_1): Added reinits calls.
1360
1361         * dynarr.c: Protect dumped dynarrays from going berzek in free or
1362         realloc.
1363
1364         * specifier.h (INITIALIZE_SPECIFIER_TYPE): Don't staticpro dynamic
1365         variables.
1366         * specifier.c (specifier_type_create): Dump the specifier type
1367         dynarr.
1368         (reinit_specifier_type_create): Added.
1369         * console.h (INITIALIZE_CONSOLE_TYPE): Don't staticpro dynamic
1370         variables.
1371         * console.c (console_type_create): Dump the console type dynarr.
1372         (reinit_vars_of_console): Extracted from vars_of_console.
1373         (reinit_complex_vars_of_console): Extracted from
1374         complex_vars_of_console
1375         * window.c (reinit_vars_of_window): Extracted from vars_of_window.
1376         * toolbar.c (reinit_specifier_type_create_toolbar): Added.
1377         * search.c (reinit_vars_of_search): Extracted from vars_of_search.
1378         * objects.c (reinit_specifier_type_create_objects): Added.
1379         (reinit_vars_of_objects): Extracted from vars_of_objects.
1380         * lstream.c (reinit_vars_of_lstream): Extracted from
1381         vars_of_lstream.
1382         * lread.c (reinit_vars_of_lread): Extracted from vars_of_lread.
1383         * gutter.c (reinit_specifier_type_create_gutter): Added.
1384         * glyphs-x.c (reinit_image_instantiator_format_create_glyphs_x):
1385         Added.
1386         * glyphs-widget.c
1387         (reinit_image_instantiator_format_create_glyphs_widget): Added
1388         * glyphs-msw.c
1389         (reinit_image_instantiator_format_create_glyphs_mswindows): Added.
1390         * glyphs-eimage.c
1391         (reinit_image_instantiator_format_create_glyphs_eimage): Added.
1392         * event-stream.c (reinit_vars_of_event_stream): Extracted from
1393         vars_of_event_stream
1394         * eval.c (reinit_vars_of_eval): Extracted from vars_of_eval.
1395         * device.c (reinit_vars_of_device): Extracted from vars_of_device.
1396         * console-x.c (reinit_console_type_create_x): Added.
1397         * console-tty.c (reinit_console_type_create_tty): Added
1398         * console-stream.c (reinit_console_type_create_stream): Added.
1399         (init_console_stream): If PDUMP, always reinitialise basic
1400         devices.
1401         * console-msw.c (reinit_console_type_create_mswindows): Added.
1402         * buffer.c (reinit_vars_of_buffer): Extracted from
1403         init_vars_of_buffer.
1404         (reinit_complex_vars_of_buffer): Extracted from
1405         complex_vars_of_buffer
1406
1407         * alloc.c: Further with the portable dumping, the revenge.
1408         (dumpstruct): Added.
1409         (reinit_alloc_once_early): Extracted from init_alloc_once_early.
1410
1411         * specifier.c (sizeof_specifier): Correct size computation.
1412         (make_specifier_internal): Ditto.
1413
1414 1999-09-27  Olivier Galibert  <galibert@pobox.com>
1415
1416         * alloc.c: Further with the portable dumping.
1417
1418 1999-09-27  Martin Buchholz  <martin@xemacs.org>
1419
1420         * glyphs-x.c (update_widget_face): Remove bogus cast
1421
1422         * data.c (sign_extent_lisp):
1423         * data.c (check_int_range):
1424         * data.c (Faref):
1425         * data.c (Faset):
1426         * data.c (number_char_or_marker_to_int):
1427         * data.c (number_char_or_marker_to_double):
1428         * data.c (Frem):
1429         * data.c (Fmod):
1430         * extents.c (print_extent_1):
1431         * fns.c (print_bit_vector):
1432         * fns.c (Flength):
1433         * fns.c (Fsafe_length):
1434         * fns.c (copy_list):
1435         * fns.c (Fsubseq):
1436         * fns.c (Felt):
1437         * fns.c (Flast):
1438         * fns.c (Fnbutlast):
1439         * insdel.h:
1440         * marker.c (print_marker):
1441         * syntax.h:
1442         * bytecode.c (bytecode_arithcompare):
1443         * bytecode.c (bytecode_arithop):
1444         * lisp.h:
1445         * lisp.h (EXTERNAL_LIST_LOOP_DELETE_IF):
1446         * lisp.h (TRUE_LIST_P):
1447         * lisp.h (CHECK_TRUE_LIST):
1448         * lisp.h (bit_vector_length):
1449         * lisp.h (GCPRO4): Make consistent.
1450         * lisp.h (NGCPRO4): Make consistent.
1451         * lisp.h (NNGCPRO4): Make consistent.
1452         * alloc.c (Fmake_list):
1453         * alloc.c (Fmake_string):
1454         Use proper 64-bit types, e.g. EMACS_INT or size_t instead of int.
1455         This should make all arithmetic 64-bit clean.
1456
1457         Use %ld with (long) casts in print statements of types with sizes
1458         possibly larger than int.
1459
1460         Following functions had mismatched prototypes!!:
1461         do_marker_adjustment(), fixup_internal_substring(), scan_lists(),
1462         char_quoted(), make_string_from_buffer(),
1463         make_string_from_buffer_no_extents()
1464
1465         The types of Bufpos, Bytind, Memind, Bytecount, Charcount,
1466         Extcount are all now EMACS_INT.  I hope to see the day when I can
1467         create a buffer with more than INT_MAX characters, without having
1468         XEmacs slow down to a crawl.  I also hope to be able to create a
1469         list with more than INT_MAX cons cells.
1470
1471         * redisplay.c (decode_mode_spec): 
1472         The %p and %P specs in the mode line were not correct for buffers
1473         larger than MAX_INT/100!  The %p spec was off by .5% even for
1474         small buffers!
1475
1476 1999-09-27  Martin Buchholz  <martin@xemacs.org>
1477
1478         * cmdloop.c (num_input_keys):
1479         * print.c (debug_temp):
1480         * emacs.c (Vinfo_directory):
1481         Delete unused variables 
1482
1483         * console-x.h (x_interline_space):  Mark as unimplemented.
1484         * redisplay-x.c (x_interline_space):  Mark as unimplemented.
1485
1486         * event-Xt.c (pending_timeouts):
1487         * linuxplay.c (linuxplay_sndbuf):
1488         * profile.c (QS*):
1489         * search.c (searchbufs):
1490         * specifier.c (specifier_type_entry_dynarr):
1491         * undo.c (pending_boundary):
1492         * event-stream.c (the_low_level_timeout_blocktype):
1493         * extents.c (gap_array_marker_freelist):
1494         * extents.c (extent_list_marker_freelist):
1495         * print.c (being_printed):
1496         * print.c (alternate_do_pointer):
1497         * alloc.c (first_string_chars_block):
1498         * alloc.c (current_string_chars_block):
1499         * emacs.c (initial_argv):
1500         * emacs.c (initial_argc):
1501         * eval.c (lisp_eval_depth):
1502         * free-hook.c (pointer_table):
1503         * free-hook.c (free_queue):
1504         * free-hook.c (current_free):
1505         * free-hook.c (strict_free_check):
1506         * redisplay.c (formatted_string_emchar_dynarr):
1507         * redisplay.c (formatted_string_display_line):
1508         * redisplay.c (formatted_string_extent_dynarr):
1509         * redisplay.c (formatted_string_extent_start_dynarr):
1510         * redisplay.c (formatted_string_extent_end_dynarr):
1511         * redisplay.c (updating_line_start_cache):
1512         * redisplay.c (last_display_warning_tick):
1513         * redisplay.c (display_warning_tick):
1514         * redisplay.c (internal_cache):
1515         * window.c (Vwindow_configuration_free_list):
1516         Make static.
1517
1518         * redisplay.c (Vinitial_window_system):  Make CONST.
1519
1520 1999-09-24  Martin Buchholz  <martin@xemacs.org>
1521
1522         * redisplay-tty.c (term_get_fkeys_1): Minor aesthetic improvements.
1523
1524         * doprnt.c (get_doprnt_args): Use int, not short, with va_arg.
1525
1526 1999-09-24  Andy Piper  <andy@xemacs.org>
1527
1528         * redisplay-output.c (output_display_line): only clear the borders
1529         if we are not displaying the gutter.
1530
1531 1999-09-24  Jan Vroonhof <vroonhof@math.ethz.ch>
1532
1533         * frame-x.c (x_any_window_to_frame): Let Xt find the widget and
1534         then use x_any_widget_or_parent_to_frame().
1535         (x_find_frame_for_window): remove special cases.
1536
1537 1999-09-24  Andy Piper  <andy@xemacs.org>
1538
1539         * scrollbar-x.c (x_window_is_scrollbar): deleted.
1540         * scrollbar-x.h: ditto.
1541         
1542 1999-09-23  Martin Buchholz  <martin@xemacs.org>
1543
1544         * alloc.c (this_marks_a_marked_record): Remove.
1545
1546         * buffer.c (mark_buffer):
1547         * buffer.c (nuke_all_buffer_slots):
1548         * console.c (mark_console):
1549         * console.c (nuke_all_console_slots):
1550         * frame.c (mark_frame):
1551         * frame.c (nuke_all_frame_slots):
1552         Treat MARKED_SLOT() macros consistently.
1553
1554         * device.h (error_check_device_type):
1555         * faces.c (face_getprop):
1556         * fileio.c (DRIVE_LETTER):
1557         * filelock.c (lock_file_1):
1558         * frame-x.c (x_create_widgets):
1559         * frame.h (error_check_frame_type):
1560         * keymap.c (print_keymap):
1561         * keymap.c (Fkey_description):
1562         * keymap.c (where_is_recursive_mapper):
1563         * mule-charset.h (CHARSET_LEADING_BYTE):
1564         * objects-msw.c (mswindows_color_instance_hash):
1565         * objects.c (color_instance_equal):
1566         * objects.h (struct color_specifier):
1567         * objects.h (struct font_specifier):
1568         * objects.h (struct face_boolean_specifier):
1569         * opaque.h (get_opaque_ptr):
1570         * opaque.h (set_opaque_ptr):
1571         * process-unix.c (set_socket_nonblocking_maybe):
1572         * specifier.h (SPECIFIER_TYPE_P):
1573         * symbols.c (store_symval_forwarding):
1574         * syssignal.h (EMACS_KILLPG):
1575         * terminfo.c (emacs_tparam):
1576         * glyphs.c (glyph_putprop):
1577         * glyphs.c (glyph_remprop):
1578         * glyphs.c (Fimage_instance_subwindow_id):
1579         * window.c (mark_window):
1580         * window.c (mark_window_config):
1581         * window.c (Fset_window_configuration):
1582         * window.c (save_window_save):
1583         * eval.c (Fuser_variable_p):
1584         * eval.c (Fcommand_execute):
1585         * eval.c (Feval):
1586         * eval.c (Ffuncall):
1587         * lisp.h (XPNTR):
1588         * lisp.h (INT_OR_FLOATP):
1589         * lisp.h (GC_INT_OR_FLOATP):
1590         * lisp.h (XFLOATINT):
1591         * lisp.h (IS_ANY_SEP):
1592         * mule-ccl.c (Fccl_execute):
1593         * mule-ccl.c (Fccl_execute_on_string):
1594         * redisplay-x.c (x_output_string):
1595         Remove redundant extra parentheses.
1596
1597 1999-09-22  Martin Buchholz  <martin@xemacs.org>
1598
1599         * chartab.c (word_boundary_p): Add prototype for warning avoidance.
1600         * eval.c (PRIMITIVE_FUNCALL): ANSIfy
1601         * free-hook.c (fun_ptr): ANSIfy
1602         * getloadavg.c: Remove declaration for errno.
1603         * gui.c (allocate_gui_item): ANSIfy
1604         * gui.h (allocate_gui_item): ANSIfy
1605         * mule-ccl.c (resolve_symbol_ccl_program): Make static
1606         * realpath.c: Remove K&R support.
1607         * redisplay-x.c (x_output_display_block): Don't shadow previous local
1608         * glyphs-widget.c (layout_instantiate):  Don't shadow previous local
1609         * gutter.c (get_gutter_coords): Make static.
1610         * lread.c (locate_file_map_suffixes): Make static.
1611         * ralloc.c (relinquish): ANSIfy
1612         * redisplay.c:
1613         * lisp.h:
1614         Move prototypes from redisplay.c to lisp.h
1615
1616 1999-09-22  Martin Buchholz  <martin@xemacs.org>
1617
1618         * glyphs-x.c (x_widget_set_property):
1619         - Remove unnecessary initialization.
1620         - Use char*, not Bufbyte *, with GET_C_STRING_OS_DATA_ALLOCA
1621         * glyphs-x.c (x_widget_instantiate):
1622         - Use char*, not Bufbyte *, with GET_C_STRING_OS_DATA_ALLOCA
1623         * unexelf.c (unexec):
1624         Add cast for C++ compilability.
1625         * redisplay.h:
1626         Fix a typo.
1627         * ralloc.c (r_alloc_reinit):
1628         SET_FUN_PTR was broken wrt ANSI aliasing!
1629         To compensate, use __typeof__ when using gcc, else live with
1630         possible (but rare) warnings.
1631         * ralloc.c (init_ralloc):
1632         Ditto
1633         * ralloc.c: Use the real dlmalloc prototype for __morecore.
1634         * lread.c (locate_file_map_suffixes):
1635         * input-method-xlib.c (XIM_init_frame):
1636         - Xlib functions should use XPointer, not XtPointer.
1637         * input-method-xlib.c (XIM_delete_frame):
1638         - Xlib functions should use XPointer, not XtPointer.
1639         * input-method-xlib.c (IMDestroyCallback):
1640         - Simplify.
1641         - XFRAME (obj) can never be NULL, so don't test for it.
1642         * gutter.h:
1643         Add GUTTER_POS_LOOP for iterating over all gutter_pos'es
1644         * gutter.c (SET_GUTTER_WAS_VISIBLE_FLAG):
1645         Run c-backslash-region on macro body.
1646         * gutter.c (gutter_was_visible):
1647         Remove redundant parens - this is not a macro.
1648         * gutter.c (redraw_exposed_gutters):
1649         Use GUTTER_POS_LOOP.
1650         * gutter.c (gutter_specs_changed):
1651         Use GUTTER_POS_LOOP.
1652         * gutter.c (gutter_geometry_changed_in_window):
1653         Use GUTTER_POS_LOOP.
1654         * gutter.c (update_frame_gutters):
1655         Use GUTTER_POS_LOOP.
1656         * gutter.c (init_frame_gutters):
1657         Use GUTTER_POS_LOOP.
1658         * file-coding.c (determine_real_coding_system):
1659         Fix C++ compile error.
1660         * emodules.c (find_make_module):
1661         Cast return value from xrealloc
1662         * emacs.c (Fkill_emacs):
1663         Use __typeof__, when available.
1664         * emacs.c (voodoo_free_hook):
1665         Use __typeof__, when available.
1666         (Unfortunately, the type of __free_hook is glibc-version-dependent)
1667         * dired.c (user_cache): Use Bufbyte *, not char *
1668         * dired.c (Fuser_name_all_completions): Ditto.
1669
1670 1999-09-22  Andy Piper  <andy@xemacs.org>
1671
1672         * redisplay.c (redisplay_frame): reset the gutter display lines
1673         when we reset the subwindows.
1674
1675         * gutter.c (reset_gutter_display_lines): new function.
1676
1677         * window.c (Flast_nonminibuf_window): new function equivalent to
1678         FRAME_LAST_NONMINIBUF_WINDOW ().
1679         (syms_of_window): declare it.
1680
1681         * redisplay.c (create_string_text_block): don't add bogus eol
1682         markers to gutter display lines.
1683
1684         * glyphs.c (reset_subwindow_cachels): make sure we unmap
1685         subwindows using unmap_subwindow so that expose events get
1686         registered correctly.
1687
1688         * window.c (window_scroll): use Vwindow_pixel_scroll_increment to
1689         determine how much to scroll the window.
1690         (vars_of_window): Vwindow_pixel_scroll_increment is a new
1691         variable.
1692
1693 1999-09-20  Robert Pluim  <rpluim@nortelnetworks.com>
1694
1695         * glyphs-x.c (update_widget_face): Guard fontList declaration for
1696         non-motif uses.
1697
1698 1999-09-20  Andy Piper  <andy@xemacs.org>
1699
1700         * glyphs-msw.c (mswindows_update_subwindow): update faces.
1701
1702 1999-09-19  Andy Piper  <andy@xemacs.org>
1703
1704         * glyphs.c (update_frame_subwindows): update if faces have
1705         changed.
1706
1707         * glyphs-x.c (x_widget_instantiate): create the clip widget using
1708         lwlib rather than directly.
1709         (x_finalize_image_instance): delete the clip widget using lwlib.
1710         (x_update_subwindow): update widget faces.
1711         (update_widget_face): new function for updating the face
1712         properties of a widget.
1713         (x_widget_set_property): update widget faces.
1714
1715         * lwlib-Xlw.c (xlw_create_clip_window): new function. We need to
1716         manage the clip widgets using lwlib so that we can delete them in
1717         a safe manner.
1718
1719 1999-09-16  Martin Buchholz  <martin@xemacs.org>
1720
1721         * lisp-union.h:
1722         * lisp-disunion.h:
1723         Define new, potentially faster INT arithmetic macros
1724         INT_PLUS, INT_MINUS, INT_PLUS1, INT_MINUS1
1725         * bytecode.c (execute_optimized_function):
1726         Use new macros.
1727         Fix metering code
1728         * bytecode.c (bytecode_negate):
1729         Optimize for integer case.
1730
1731 1999-08-29  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
1732
1733         * m/mips.h: Support for mips-linux: Add !linux around places
1734         that are not valid for linux, define TEXT_START, DATA_START,
1735         DATA_SEG_BITS.
1736
1737 1999-09-16  Andy Piper  <andy@xemacs.org>
1738
1739         * redisplay-output.c (redisplay_output_subwindow): clip subwindows
1740         that don't completely fit on-screen rather than just unmapping
1741         them.
1742
1743         * glyphs.h: change signature of map_subwindow.
1744
1745         * glyphs.c (map_subwindow): add display_glyph_area to the
1746         signature. make sure the mapped area saved in the subwindow_cachel
1747         reflects this.
1748         (Fforce_subwindow_map): make a no-op. I don't think this does
1749         anything useful.
1750
1751         * glyphs-x.h (struct x_subwindow_data): save the Display rather
1752         than the Screen. Add a clipwindow and clipwidget handle.
1753         (IMAGE_INSTANCE_X_CLIPWINDOW): new accessor.
1754         (IMAGE_INSTANCE_X_CLIPWIDGET): ditto.
1755         (XIMAGE_INSTANCE_X_CLIPWIDGET): ditto.
1756         (XIMAGE_INSTANCE_X_CLIPWINDOW): ditto.
1757
1758         * glyphs-x.c (x_finalize_image_instance): destroy the clipwidget
1759         as well as the widget itself.
1760         (x_unmap_subwindow): unmap the clipwindow and clipwidget rather
1761         than the widgets and subwindows themselves. move the widget inside
1762         the clipwidget.
1763         (x_subwindow_instantiate): hold onto the Display rather than the
1764         Screen. allocate a clipwindow to put the subwindow inside.
1765         (x_resize_subwindow): use saved Display directly.
1766         (x_widget_instantiate): allocate a clipwidget of type EmacsManager
1767         to put widgets inside.
1768
1769         * glyphs-widget.c: remove group stuff.
1770
1771         * glyphs-msw.h (struct mswindows_subwindow_data): new structure to
1772         hold the clipwindow.
1773         (IMAGE_INSTANCE_MSWINDOWS_CLIPWINDOW): new accessor.
1774         (XIMAGE_INSTANCE_MSWINDOWS_CLIPWINDOW): ditto.
1775
1776         * glyphs-msw.c: remove group stuff.
1777         (mswindows_finalize_image_instance): destroy clipwindow as well as
1778         the widget itself.
1779         (mswindows_unmap_subwindow): unmap the clipwindow rather than the
1780         widget.
1781         (mswindows_map_subwindow): ditto. move the widget within the
1782         clipwindow.
1783         (mswindows_subwindow_instantiate): allocate and initialize
1784         mswindows_subwindow_data. allocate a clipwindow with the subwindow
1785         as a child.
1786         (mswindows_widget_instantiate): ditto.
1787         (mswindows_control_wnd_proc): new function that allows us to
1788         propagate events from the widget to the main windows control loop.
1789
1790         * device-msw.c (mswindows_init_device): register new widget clip window
1791         class.
1792
1793         * console.h (struct console_methods): add display_glyph_area to
1794         map_window.
1795
1796         * console-msw.h: declare new window class and wnd proc for
1797         widgets.
1798
1799 1999-09-14  Martin Buchholz  <martin@xemacs.org>
1800
1801         * general.c:
1802         * eldap.c:
1803         Move symbols used only by eldap.c into eldap.c as statics.
1804
1805 1999-09-09  Martin Buchholz  <martin@xemacs.org>
1806
1807         * window.c (syms_of_window):
1808         * symbols.c (syms_of_symbols):
1809         * redisplay.c (syms_of_redisplay):
1810         * print.c (syms_of_print):
1811         * lisp.h:
1812         * intl.c (syms_of_intl):
1813         * general.c (syms_of_general):
1814         * frame.c (syms_of_frame):
1815         * fileio.c (syms_of_fileio):
1816         * file-coding.h:
1817         * file-coding.c (syms_of_file_coding):
1818         * extents.c (syms_of_extents):
1819         * event-stream.c (syms_of_event_stream):
1820         * event-stream.c (Fnext_event):
1821         * device.c (syms_of_device):
1822         * data.c (syms_of_data):
1823         * casetab.c (syms_of_casetab):
1824         * casetab.c (check_case_table):
1825         * callint.c (syms_of_callint):
1826         * buffer.c (syms_of_buffer):
1827         Delete unused C symbols:
1828         Qbuffer_file_name, Qbuffer_undo_list, Quser_variable_p,
1829         Qcurrent_prefix_arg, Qtranslate_table, Qkeywordp,
1830         Qnumber_or_marker_p, Qcons, Qkeyword, Qignore, Qdelete_device,
1831         Qcommand_execute, Qglyph_invisible,
1832         Qbuffer_file_coding_system, Qfile_name_handler_alist,
1833         Qframe_x_p, Qframe_tty_p, Qblack, Qkeyboard, Qmenubar, Qpath,
1834         Qvector, Qwhite, Qcase, Qdomain, Qalternate_debugging_output,
1835         Qprint_escape_newlines, Qprint_readably, Qfloat_output_format,
1836         Qwindow_scroll_functions, Qfboundp, Qscroll_up, Qscroll_down
1837
1838         Rename symbols as required by the CHECK_RECORD macro:
1839         - Qcase_table_p to Qcase_tablep
1840         - Qcoding_system_p to Qcoding_systemp
1841
1842         * debug.h:
1843         * debug.c (syms_of_debug):
1844         Make debug.c's internal Lisp_Objects static.
1845
1846         * events.c (vars_of_events):
1847         * events.c (syms_of_events):
1848         Use regular old defsymbol instead of KEYSYM + staticpro().
1849
1850         * select-x.c (CHECK_CUTBUFFER):
1851         Rewrite in accordance with coding standards.
1852
1853         * keymap.c (syms_of_keymap):
1854         Use SPC in the same way as RET, TAB, etc.
1855
1856 1999-08-27  Jan Vroonhof  <vroonhof@math.ethz.ch>
1857
1858         * xemacs-20/src/menubar-x.c (make_dummy_xbutton_event): Don't add
1859         offset twice if HAVE_WMCOMMAND is defined.
1860
1861 1999-09-13 Mike McEwan <mike@lotusland.demon.co.uk>
1862
1863         * redisplay-x.c (x_output_vertical_divider): make sure
1864         shadow_thickness is positive.
1865
1866 1999-09-10 Julian Back <jback@rudd.compulink.co.uk>
1867
1868         * process-nt.c (nt_create_process): fixup to cope with
1869         Vprocess_environment.
1870
1871 1999-09-02  Andy Piper  <andy@xemacs.org>
1872
1873         * redisplay-output.c (redisplay_output_layout): call output
1874         routines with clear_clip false. output layout borders with text
1875         correctly.
1876
1877         * redisplay-msw.c (mswindows_output_blank): call output routines
1878         with clear_clip true.
1879         (mswindows_output_string): ditto.
1880         (mswindows_output_display_block): ditto.
1881
1882         * redisplay-x.c (x_output_display_block): call output routines
1883         with clear_clip true.
1884
1885         * redisplay.h: fix output routines for clear_clip parameter.
1886
1887         * redisplay-output.c (redisplay_output_layout): cope with glyphs
1888         in the border.
1889
1890         * glyphs-widget.c (layout_instantiate): deal with border glyphs.
1891         (check_valid_glyph_or_instantiator): renamed from
1892         check_valid_glyph_or_image.
1893         (check_valid_border): allow glyphs or their instantiators.
1894         (check_valid_glyph_or_instantiator_list): renamed from
1895         check_valid_glyph_or_image_list,
1896         (glyph_instantiator_to_glyph): new function. make sure a glyph is
1897         a glyph and not an instantiator.
1898         (substitute_keyword_value): new function. replace a keyword value
1899         with a new one.
1900
1901 1999-09-01  Andy Piper  <andy@xemacs.org>
1902
1903         * glyphs.c (string_set_property): new function to set the data of
1904         a string.
1905         (image_instantiator_format_create): use it.
1906
1907 1999-09-07  Hrvoje Niksic  <hniksic@srce.hr>
1908
1909         * fns.c (Fmapc): Rename back to Fmapc_internal.
1910
1911 1999-07-30  Gleb Arshinov  <gleb@cs.stanford.edu>
1912
1913         * ntheap.h: CONST (semantically constant) name field of file_data
1914         struct
1915
1916         * unexnt.c (open_output_file): match function definition with
1917         function declaration
1918
1919         * editfns.c: #include "sysfile.h" for getcwd() prototype
1920
1921         * gif_io.c:  #include "sysfile.h" for close() prototype
1922
1923 1999-09-02  Martin Buchholz  <martin@xemacs.org>
1924
1925         * elhash.c:
1926         * elhash.h:
1927         Change the :type keyword to :weakness, for compatibility with the
1928         GNU Emacs 20.5 hash table implementation.
1929         Keep (but don't document) the :type keyword for compatibility.
1930         Obsolete function hash-table-type
1931         General cleanup.
1932         Define function sxhash for compatibility with Common Lisp and GNU Emacs.
1933
1934 1999-09-01  Martin Buchholz  <martin@xemacs.org>
1935
1936         * floatfns.c (arith_error):
1937         * floatfns.c (range_error):
1938         * floatfns.c (range_error2):
1939         * floatfns.c (domain_error):
1940         * floatfns.c (domain_error2):
1941         * lrecord.h (LRECORDP):
1942         * console-x.h (X_ERROR_OCCURRED):
1943         * console-x.h (HANDLING_X_ERROR):
1944         * chartab.c (CATEGORYP):
1945         * buffer.h (XCHAR_OR_CHAR_INT):
1946         Remove redundant and confusing parentheses.
1947
1948         * redisplay-output.c (redisplay_clear_to_window_end):
1949         Remove redundant initialization.
1950
1951         * redisplay.h:
1952         * redisplay-msw.c:
1953         * redisplay-x.c:
1954         Move declarations of bevel_modeline() into redisplay.h.
1955
1956 1999-08-30  Olivier Galibert  <galibert@pobox.com>
1957
1958         * lisp.h: Add staticpro_nodump for undumped staticpro-ing.
1959         * alloc.c: Add staticpro_nodump for undumped staticpro-ing.  Add
1960                   alignment information for dumped data.  Enhance
1961                   descriptions.  Phase out Vterminal_* variables while
1962                   dumping.
1963         * lrecord.h: Add chained descriptions and automagically-reset
1964                   lisp_objects to the description system.
1965
1966         * console-stream.h: Declare the Vterminal_* variables.
1967
1968         * buffer.c: Don't dump Vbuffer_alist, Vbuffer_defaults and
1969                   Vbuffer_local_symbols.
1970         * console.c: Don't dump Vconsole_list, Vconsole_defaults and
1971                   Vconsole_local_symbols.
1972         * eval.c: Don't dump Qunbound_suspended_errors_tag.
1973         * lread.c: Don't dump Vread_buffer_stream.
1974         * lstream.c: Don't dump Vlstream_free_list[].
1975         * search.c: Don't dump last_thing_searched.
1976         * window.c: Don't dump minibuf_window and
1977                   Vwindow_configuration_free_list[].
1978
1979         * faces.c: Add face description.
1980         * fns.c: Add bit_vector description.
1981         * glyphs.c: Add image specifier description.
1982         * objects.c: Add color, face and face boolean specifiers descriptions.
1983         * opaque.c: Add opaque description.  Don't dump Vopaque_ptr_free_list.
1984         * rangetab.c: Add range table description.
1985         * specifier.c: Add specifier and specifier methods description.
1986         * specifier.h: Add specifier extra description support.
1987
1988         * symbols.c: Fix symbol_value_buffer_local_description.
1989
1990         * gdbinit (Lisp): Add opaque_ptr, remove opaque_list.
1991
1992 1999-09-02  Hrvoje Niksic  <hniksic@srce.hr>
1993
1994         * extents.c (extent_remprop): Get extent's plist address
1995         correctly.
1996
1997 1999-08-31  Andy Piper  <andy@xemacs.org>
1998
1999         * xmu.h: define Xmu/Converters.h things.
2000
2001 1999-08-31  Andy Piper  <andy@xemacs.org>
2002
2003         * opaque.c (equal_opaque_ptr): define.
2004         (hash_opaque_ptr): define.
2005
2006         * xmu.h: define Xmu/Misc.h things.
2007
2008 1999-08-17  MORIOKA Tomohiko  <tomo@etl.go.jp>
2009
2010         * file-coding.c (determine_real_coding_system): Treat `coding:'
2011         cookie.
2012
2013 1999-08-16  MORIOKA Tomohiko  <tomo@etl.go.jp>
2014
2015         * file-coding.c (struct decoding_stream): New member `counter'.
2016         (reset_decoding_stream): Initialize `counter'.
2017         (decode_coding_ucs4): Use `counter'.
2018         (decode_coding_utf8): Likewise.
2019
2020 1999-08-31  Andy Piper  <andy@xemacs.org>
2021
2022         * redisplay-output.c (redisplay_normalize_glyph_area): make sure
2023         the clip offset doesn't exceed the height we have available to
2024         show.
2025
2026         * window.h (struct window): add top_yoffset and left_xoffset for
2027         pixel scrolling.
2028         (WINDOW_TEXT_TOP_CLIP): new macro.
2029
2030         * window.c (window_scroll): add behaviour for pixel-scrolling of
2031         tall lines.
2032
2033         * redisplay.h (struct display_line): add top_clip.
2034         (DISPLAY_LINE_HEIGHT): adjust for top_clip.
2035         (DISPLAY_LINE_YPOS): ditto.
2036
2037         * redisplay.c (position_redisplay_data_type): add
2038         start_col_xoffset to prepare for pixel-based h-scrolling.
2039         (WINDOW_SCROLLED): new macro.
2040         (next_tab_position): use it.
2041         (add_glyph_rune): use new hscoll vars.
2042         (create_text_block): ditto.
2043         (generate_displayable_area): adjust off-by-one error.
2044         (regenerate_window): take top_clip into account.
2045         (regenerate_window_extents_only_changed): ditto.
2046         (regenerate_window_incrementally): ditto.
2047
2048         * redisplay-x.c (x_output_display_block): use DISPLAY_LINE_YPOS,
2049         DISPLAY_LINE_HEIGHT and DISPLAY_LINE_YEND macros.
2050         (x_output_string): ditto.
2051         (x_output_blank): ditto.
2052         (x_output_hline): ditto.
2053         (x_output_eol_cursor): ditto.
2054
2055         * redisplay-output.c (output_display_line): allow for
2056         top_clip. use DISPLAY_LINE_YPOS, DISPLAY_LINE_HEIGHT and
2057         DISPLAY_LINE_YEND macros.
2058         (redisplay_output_layout): output strings in layouts correctly.
2059         (redisplay_clear_clipped_region): allow for top_clip.
2060         (redisplay_calculate_display_boxes): ditto.
2061
2062         * redisplay-msw.c (mswindows_output_blank): use DISPLAY_LINE_YPOS,
2063         DISPLAY_LINE_HEIGHT and DISPLAY_LINE_YEND macros.
2064         (mswindows_output_cursor): ditto.
2065         (mswindows_output_string): ditto.
2066         (mswindows_redraw_exposed_window): ditto.
2067         (mswindows_output_display_block): ditto.
2068
2069         * gutter.c: new specifier type gutter-size.
2070         (gutter_size_validate): validate gutter-size specifier.
2071         (Fgutter_size_specifier_p): predicate for gutter-size.
2072         (Fredisplay_gutter_area): allow the gutter area to be redisplayed
2073         under user contol, like Fredisplay_echo_area.
2074         (syms_of_gutter): add new functions.
2075         (specifier_type_create_gutter): add new specifier.
2076         (specifier_vars_of_gutter): change specifier types of *-height to
2077         gutter-size.
2078
2079         * glyphs.c (glyph_width): make work with image instances.
2080
2081         * console.h (struct console_methods): change api of output_string.
2082
2083         * glyphs-x.c (x_map_subwindow): move before mapping as reported by
2084         Stephen J. Turnbull <turnbull@sk.tsukuba.ac.jp>
2085
2086 1999-08-30  Andy Piper  <andy@xemacs.org>
2087
2088         * glyphs-x.c (x_finalize_image_instance): X_MASK -> PIXMAP_MASK
2089         for assignment.
2090         (init_image_instance_from_x_image): ditto.
2091         (x_xpm_instantiate): ditto.
2092         (x_colorize_image_instance): ditto. Reported by Richard Cognot
2093         <cognot@ensg.u-nancy.fr>
2094
2095 1999-08-29  Andy Piper  <andy@xemacs.org>
2096
2097         * glyphs-x.c (x_widget_instantiate): move font initialisation so
2098         that it doesn't get saved in the user defined args.
2099         (x_tab_control_instantiate): Set the fg color of the tab's
2100         children.
2101         (x_tab_control_set_property): ditto.
2102
2103 1999-08-27  Damon Lipparelli  <lipp@primus.com>
2104
2105         * events.h (XTIMEOUT): must preface Lisp_Timeout with ``struct''
2106         (XSETTIMEOUT): fixup typo
2107
2108 1999-08-11  Jan Vroonhof  <vroonhof@math.ethz.ch>
2109
2110         * syntax.c (scan_words): Unified Mule and Non-mule scanning.
2111         Word boundary search looks back instead of forward so that it
2112         doesn't peek over the limit.
2113
2114 1999-08-20  Olivier Galibert  <galibert@pobox.com>
2115
2116         * config.h.in: Add PDUMP define.
2117         * emacs.c (Fdump_emacs): Hackish, call pdump() if configured in.
2118
2119         * lrecord.h: Enhance description system.
2120         * alloc.c: Fix vector and string description.  Add portable
2121         dumper enumeration fonctions.
2122
2123         * symbols.c:  Fix symbols description.   Add  symbol_value_forward
2124         description.
2125         * eval.c: Add subr description.
2126         * elhash.c (CLEAR_HENTRY):   Clean  value pointer  too.   Fix hash
2127         table description.
2128         (remhash_1): CLEAR_HENTRY evaluates the parameter two times now.
2129
2130 1999-08-20  Olivier Galibert  <galibert@pobox.com>
2131
2132         * opaque.c: Kill opaque lists, make  Lisp_Opaque_Ptr a lrecord of
2133         its own.
2134         * opaque.h: Ditto.
2135
2136         * eval.c (eval_in_buffer_trapping_errors):
2137         (run_hook_trapping_errors):
2138         (safe_run_hook_trapping_errors):
2139         (call0_trapping_errors):
2140         (call1_trapping_errors):
2141         (call2_trapping_errors): OPAQUEP  -> OPAQUE_PTRP.  make_opaque_ptr
2142         now takes a non-const void *.
2143
2144 1999-08-20  Olivier Galibert  <galibert@pobox.com>
2145
2146         * opaque.c: Remove make_opaque_long.
2147
2148         * opaque.h: Remove everything opaque_long related.
2149
2150         * eval.c (vars_of_eval): Make Qunbound_suspended_errors_tag an
2151         opaque_ptr.
2152
2153         * emacs.c (main_1): Remove make_opaque_long from comment.
2154
2155 1999-08-20  Olivier Galibert  <galibert@pobox.com>
2156
2157         * event-stream.c (mark_timeout):
2158         (print_timeout):
2159         (event_stream_generate_wakeup):
2160         (event_stream_resignal_wakeup):
2161         (event_stream_disable_wakeup):
2162         (event_stream_wakeup_pending_p):
2163         (vars_of_event_stream): Lisp_Timeout is now a lrecord.
2164
2165         * events.h (struct Lisp_Timeout): Added.
2166
2167 1999-08-24  Andy Piper  <andy@xemacs.org>
2168
2169         * console-x.h: declare new pixmap signatures.
2170
2171 1999-08-23  Andy Piper  <andy@xemacs.org>
2172
2173         * glyphs-x.c (x_update_subwindow): make sure the widget size is
2174         maintained after an update.
2175
2176         * event-Xt.c (emacs_Xt_handle_magic_event): use
2177         find_matching_subwindow to check whether the exposure is totally
2178         inside a subwindow, if it is then ignore it.
2179
2180         * glyphs.c (find_matching_subwindow): new function.
2181
2182         * toolbar-x.c (x_draw_blank_toolbar_button): use new
2183         x_output_shadows signature.
2184         (x_output_toolbar_button): use new x_output_x_pixmap signature.
2185
2186         * redisplay.h (struct display_box): new structure.
2187         (struct display_glyph_area): ditto.
2188         declare new display_box functions.
2189
2190         * redisplay-x.c (x_output_pixmap): update for new display
2191         box stuff.
2192         (x_bevel_area): update to allow multiple edge styles and border
2193         segments.
2194         (x_output_display_block): update for new display_box stuff and
2195         signatures.
2196         (x_clear_region): ditto.
2197         (x_output_x_pixmap): ditto. adjust offsets rather than clip.
2198         (console_type_create_redisplay_x): declare new console methods.
2199         (x_output_vertical_divider): update for new bevel_area signature.
2200         (x_output_shadows): update to allow selective drawing of edges.
2201
2202         * redisplay-tty.c (tty_output_display_block): do nothing for
2203         layouts.
2204
2205         * redisplay-output.c (redisplay_output_subwindow): convert to use
2206         display_box structure, this allows us to put subwindows anywhere
2207         with any offset, useful for layout glyphs.
2208         (redisplay_output_layout): new function. output a layout and its
2209         sub-glyphs.
2210         (redisplay_output_pixmap): new modular function combining generic
2211         parts of the X and mswindows versions. convert to use display_box
2212         structures.
2213         (redisplay_clear_clipped_region): new function. clear the area a
2214         glyph is going into.
2215         (redisplay_normalize_glyph_area): new function. calculate the
2216         bounds of a display_glyph_area given a display_box.
2217         (redisplay_normalize_display_box): new function. shrink a
2218         display_box to enclose a display_glyph_area.
2219         (redisplay_display_boxes_in_window_p): check whether the input
2220         display_box and display_glyph_area are actually in a window.
2221         (redisplay_calculate_display_boxes): calculate display boxes based
2222         on conventional display_line metrics.
2223         (bevel_modeline): update for new bevel_area signature.
2224
2225         * redisplay-msw.c (mswindows_output_blank): update for new
2226         display_box stuff.
2227         (mswindows_output_string): ditto.
2228         (mswindows_output_dibitmap): ditto.
2229         (mswindows_output_dibitmap_region): ditto.
2230         (mswindows_output_pixmap): ditto.
2231         (mswindows_bevel_area): update to allow multiple edge styles and
2232         border segments.
2233         (mswindows_output_display_block): update for new display_box stuff
2234         and signatures.
2235         (mswindows_clear_region): ditto.
2236         (console_type_create_redisplay_mswindows): declare new console methods.
2237
2238         * lisp.h (edge_style): new enum.
2239         declare display_box and display_glyph_area.
2240
2241         * gutter.c (output_gutter): update for new bevel_area signature.
2242
2243         * glyphs.h (image_instance_type): add layout.
2244         (IMAGE_LAYOUT_MASK): ditto.
2245         (LAYOUT_IMAGE_INSTANCEP): new macro.
2246         (CHECK_LAYOUT_IMAGE_INSTANCE): ditto.
2247         (struct Lisp_Image_Instance): add offsets for layout and the
2248         layout type itself. move mask here also.
2249         (IMAGE_INSTANCE_LAYOUT_CHILDREN): new macro.
2250         (IMAGE_INSTANCE_LAYOUT_BORDER): ditto.
2251         (XIMAGE_INSTANCE_LAYOUT_CHILDREN): ditto.
2252         (XIMAGE_INSTANCE_LAYOUT_BORDER): ditto.
2253
2254         * glyphs.c (mark_image_instance): update for layouts.
2255         (print_image_instance): ditto.
2256         (image_instance_equal): ditto.
2257         (image_instance_hash): ditto.
2258         (allocate_image_instance): initialise offsets for layout.
2259         (decode_image_instance_type): update for layouts.
2260         (encode_image_instance_type): ditto.
2261         (Fimage_instance_height): ditto.
2262         (Fimage_instance_width): ditto.
2263         (allocate_glyph): ditto.
2264         (glyph_width): allow image instances as an argument. update for layouts.
2265         (glyph_height_internal): ditto.
2266         (syms_of_glyphs): add layout symbols.
2267
2268         * glyphs-x.h (struct x_image_instance_data): remove mask entry.
2269         (IMAGE_INSTANCE_X_MASK): update.
2270
2271         * glyphs-x.c (x_label_instantiate): new function. instantiate a
2272         label.
2273         (image_instantiator_format_create_glyphs_x): initialise new layout
2274         glyph type.
2275
2276         * glyphs-widget.c: new layout type.
2277         (check_valid_orientation): new keyword checker for layouts.
2278         (check_valid_justification): ditto.
2279         (check_valid_border): ditto.
2280         (check_valid_glyph_or_image_list): ditto.
2281         (layout_possible_dest_types): new function for layout glyph type.
2282         (layout_normalize): ditto.
2283         (layout_instantiate): ditto.
2284         (syms_of_glyphs_widget): new keywords for layout.
2285         (image_instantiator_format_create_glyphs_widget): initialise the
2286         layout glyph type.
2287
2288         * glyphs-msw.h (struct mswindows_image_instance_data): remove mask
2289         argument.
2290         (IMAGE_INSTANCE_MSWINDOWS_MASK): update.
2291
2292         * glyphs-msw.c: declare layout format.
2293         (image_instantiator_format_create_glyphs_mswindows): initialise it.
2294
2295         * general.c: new symbols for layouts.
2296
2297         * console.h (struct console_methods): new console methods for
2298         outputting pixmaps and strings.
2299
2300 1999-08-23  Didier Verna  <verna@inf.enst.fr>
2301
2302         * sound.c: revert the renaming of `bell_volume' to `Vbell_volume'
2303         and `bell_inhibit_time' to `Vbell_inhibit_time'.
2304
2305 1999-08-18  Andy Piper  <andy@xemacs.org>
2306
2307         * redisplay-output.c (redisplay_output_subwindow): disable
2308         clipping attempt.
2309
2310 1999-08-17  Andy Piper  <andy@xemacs.org>
2311
2312         * gutter.c (redraw_exposed_gutter): handle degenerate case of no
2313         area to expose or no gutter to display.
2314
2315 1999-08-16  Charles G Waldman  <cgw@fnal.gov>
2316
2317         * sound.c: rename `bell_volume' to `Vbell_volume' and
2318         `bell_inhibit_time' to `Vbell_inhibit_time'.
2319
2320 1999-08-13  Charles G Waldman  <cgw@fnal.gov>
2321
2322         * sound.c: (bell-inhibit-time): New variable.
2323         (ding): Use it.
2324         (sound-alist): Fix docstring.
2325
2326 1999-08-17  Andy Piper  <andy@xemacs.org>
2327
2328         * gui-x.c (button_item_to_widget_value): xstrdup name so that
2329         deleting it is ok.
2330
2331 1999-08-16 Jeff Miller <jmiller@smart.net>
2332
2333         * syntax.c (scan_words): make compile.
2334
2335 1999-08-16  Andy Piper  <andy@xemacs.org>
2336
2337         * redisplay-output.c (redisplay_output_subwindow): try and be more
2338         relaxed about clipping possibilities.
2339
2340         * glyphs-x.c (x_tab_control_set_property): free_widget_value_tree
2341         rather than just the widget_value.
2342         (x_update_subwindow): ditto.
2343         (x_widget_instantiate): ditto.
2344
2345         * gutter.c (output_gutter): shrink current display lines if
2346         required.
2347
2348 1999-08-15  Andy Piper  <andy@xemacs.org>
2349
2350         * redisplay.h: declare free_display_lines.
2351
2352         * redisplay.c (free_display_lines): make non-static.
2353
2354         * gutter.c (free_frame_gutters): use free_display_lines instead of
2355         Dynarr_free.
2356         (calculate_gutter_size): ditto.
2357
2358 1999-08-12  Jan Vroonhof  <vroonhof@math.ethz.ch>
2359
2360         * eval.c (run_hook_with_args_in_buffer): GCPRO globals.
2361
2362 1999-08-14  Andy Piper  <andy@xemacs.org>
2363
2364         * glyphs.c (update_subwindow_cachel): make it less brittle.
2365
2366 1999-08-04  Mike Woolley  <mike@bulsara.com>
2367
2368         * scrollbar-msw.c (mswindows_handle_mousewheel_event): Fixed
2369         problem in wheelmouse code occurring when the horizontal scrollbar
2370         is enabled but not visible.
2371
2372 1999-08-08  Andy Piper  <andyp@beasys.com>
2373
2374         * toolbar-msw.c (mswindows_redraw_frame_toolbars): new function.
2375         (console_type_create_toolbar_mswindows): use it.
2376
2377         * glyphs.c (Fset_image_instance_property): fiddly reorganisation.
2378
2379         * redisplay-output.c (redisplay_output_display_block): unmap
2380         subwindows in the block area before outputting the block.
2381
2382         * event-msw.c (mswindows_wnd_proc): check the update rect before
2383         painting and disable expose registration while painting.
2384
2385         * glyphs.c (register_ignored_expose): check
2386         hold_ignored_expose_registration before registering expose events.
2387
2388         * redisplay.c (redisplay_frame): reset the subwindow cache before
2389         displaying the gutter.
2390
2391         * glyphs-msw.c (mswindows_map_subwindow): move the window before
2392         mapping.
2393
2394         * gutter.c (update_frame_gutters): check for glyphs_changed as if
2395         it is the subwindow cache will have been reset.
2396
2397 1999-08-06  Andy Piper  <andyp@beasys.com>
2398
2399         * gui-x.c (button_item_to_widget_value): cope with strings.
2400
2401         * glyphs.h: declare global widget functions.
2402         (IIFORMAT_HAS_SHARED_DEVMETHOD): new macro.
2403
2404         * glyphs-x.c (x_combo_box_instantiate): do generic initialization
2405         here. remove dead code.
2406         (image_instantiator_format_create_glyphs_x): enable combo boxes
2407         for Motif 2.0.
2408
2409         * glyphs-widget.c (widget_instantiate_1): make non-static.
2410         (tree_view_instantiate): renamed from combo_box_instantiate.
2411         (image_instantiator_format_create_glyphs_widget): use new/changed methods.
2412
2413         * glyphs-msw.c (mswindows_combo_box_instantiate): do generic
2414         initialization here.
2415
2416         * lwlib-Xm.c (xm_update_combo_box): new function.
2417         (xm_update_one_widget): call it.
2418         (xm_update_one_value): deal with combo boxes as well as lists.
2419         (xm_create_combo_box): create a drop-down combo box.
2420
2421         * toolbar-msw.c (mswindows_output_toolbar): call
2422         mswindows_move_toolbar.
2423
2424 1999-08-05  Andy Piper  <andyp@beasys.com>
2425
2426         * window.c (Fcurrent_pixel_column): new function. use display
2427         lines to calculate pixel position of point.
2428         * window.c (syms_of_window): declare it.
2429
2430 1999-08-05  Andy Piper  <andy@xemacs.org>
2431
2432         * glyphs.c (check_for_ignored_expose): ignore exposures wholly
2433         contained in our ignore list.
2434
2435         * buffer.c (Frecord_buffer): add call to record-buffer-hook.
2436         (syms_of_buffer): declare record-buffer-hook.
2437
2438         * s/mingw32.h: define mousewheel things.
2439
2440 1999-08-04  Mike Woolley <mike@bulsara.com>
2441
2442         * windowsnt.h (_WIN32_WINNT): enable for win95
2443
2444         * s/cygwin32.h: define mousewheel things.
2445
2446         * scrollbar-msw.h: declare mousewheel handler.
2447
2448         * scrollbar-msw.c (mswindows_handle_mousewheel_event): new function.
2449
2450 1999-08-04  Andy Piper  <andy@xemacs.org>
2451
2452         * gui-x.c (gui_items_to_widget_values): remove unused variable.
2453         (gui_items_to_widget_values_1): ditto.
2454
2455         * gui-x.h: unconditionally define since it is used everywhere.
2456
2457 1999-08-04  Andy Piper  <andy@xemacs.org>
2458
2459         * glyphs-x.c (x_finalize_image_instance): only free pixels if we
2460         have that type of image.
2461
2462 1999-07-30  Andy Piper  <andy@xemacs.org>
2463
2464         * redisplay-output.c (redisplay_unmap_subwindows): add comparison
2465         subwindow to not unmap if required.
2466         (redisplay_unmap_subwindows_maybe): comparison is Qnil.
2467         (redisplay_unmap_subwindows_except_us): new function.
2468         (redisplay_output_subwindow): use it to unmap windows in the area
2469         we are displaying into.
2470
2471         * glyphs.c (update_subwindow_cachel_data): always update as we
2472         only ever get called when an update is required.
2473         (update_subwindow_cachel): new function. sync a subwindow with its
2474         cachel.
2475         (Fresize_subwindow): use it.
2476         (register_ignored_expose): make sure we set the tail correctly.
2477
2478 1999-07-28  Andy Piper  <andy@xemacs.org>
2479
2480         * redisplay-output.c (redisplay_clear_bottom_of_window): remove
2481         unneeded device.
2482
2483         * gutter.c (redraw_exposed_gutter): unmap subwindows from the
2484         whole gutter.
2485
2486         * gui.h: declare parse_gui_item_tree_list and
2487         parse_gui_item_tree_children.
2488
2489         * gui.c (parse_gui_item_tree_item): new function for parsing item
2490         lists into gui-item trees.
2491         (parse_gui_item_tree_children): ditto.
2492         (parse_gui_item_tree_list): ditto.
2493
2494         * gui-x.h: declare gui_items_to_widget_values.
2495
2496         * gui-x.c (gui_items_to_widget_values_1): new function for
2497         recursively parsing gui-items into widget_values.
2498         (gui_item_children_to_widget_values): ditto.
2499         (gui_items_to_widget_values): ditto.
2500         (sanity_check_lwlib): add widgets macrolets.
2501
2502         * glyphs.h (IMAGE_INSTANCE_WIDGET_ITEMS): rename from *ITEM.
2503         (XIMAGE_INSTANCE_WIDGET_ITEMS): ditto.
2504         (IMAGE_INSTANCE_WIDGET_ITEM): rename from *SINGLE_ITEM.
2505         (XIMAGE_INSTANCE_WIDGET_ITEM): ditto.
2506         (struct expose_ignore): new structure for storing ignorable expose
2507         events.
2508
2509         * glyphs.c (valid_image_instantiator_format_p): fix so that using
2510         a console-type as a locale works.
2511         (mark_image_instance): ITEM->ITEMS.
2512         (image_instance_equal): ditto.
2513         (image_instance_hash): ditto.
2514         (struct expose_ignore_blocktype): new blocktype.
2515         (check_for_ignored_expose): new function. checks frame exposure
2516         list for events to ignore.
2517         (register_ignored_expose): new function. registers an expose event
2518         as ignorable.
2519         (unmap_subwindow): register the expose event as ignorable.
2520         (vars_of_glyphs): initialise the exposure blocktype.
2521
2522         * glyphs-x.c (x_finalize_image_instance): use lw_destroy_widget.
2523         (x_update_subwindow): modify all widgets using widget_value tree
2524         rather than just a single widget value.
2525         (x_widget_instantiate): LWLIB_USES_MOTIF -> LWLIB_WIDGETS_MOTIF.
2526         make sure widgets don't resize themselves.
2527         (x_tab_control_instantiate): new function. use lwlib tab functions.
2528         (x_tab_control_set_property): new function.
2529         (image_instantiator_format_create_glyphs_x): add tab_control.
2530
2531         * glyphs-widget.c (widget_text_to_pixel_conversion): calculate
2532         slightly more sensibly.
2533         (initialize_widget_image_instance): ITEM->ITEMS.
2534         (widget_instantiate_1): parse gui items generically into the ITEMS
2535         entry.
2536
2537         * glyphs-msw.c (mswindows_update_subwindow): replace
2538         SINGLE_ITEM->ITEM.
2539         (mswindows_register_widget_instance): ditto.
2540         (add_tree_item): modify to use new pre-initialised gui-item
2541         structure.
2542         (add_tab_item): ditto.
2543         (mswindows_tab_control_instantiate): ditto.
2544         (mswindows_tab_control_set_property): ditto.
2545         (image_instantiator_format_create_glyphs_mswindows): predicate
2546         existance of widgets on HAVE_WIDGETS.
2547
2548         * frame.h (struct frame): add subwindow_exposures variables.
2549
2550         * frame.c (allocate_frame_core): reset subwindow_exposures links.
2551
2552         * event-msw.c (mswindows_wnd_proc): check for ignored
2553         expose events before redrawing.
2554
2555         * event-Xt.c (emacs_Xt_handle_magic_event): check for ignored
2556         expose events before redrawing.
2557
2558 1999-07-30  SL Baur  <steve@xemacs.org>
2559
2560         * scrollbar-x.c: should include EmacsFrame.h.
2561         From Jeff Miller <jmiller@smart.net>
2562
2563 1999-07-30  XEmacs Build Bot <builds@cvs.xemacs.org>
2564
2565         * XEmacs 21.2.19 is released
2566
2567 1999-07-27  Jeff Miller  <jmiller@smart.net>
2568
2569         * add a "#ifdef HAVE_MENUBARS"  wrapper to gui.c around
2570           menubar_show_keybindings.
2571
2572 1999-07-23  SL Baur  <steve@miho>
2573
2574         * mule-charset.c (syms_of_mule_charset): Delete duplicated
2575         definition of Qccl_program.
2576
2577         * mule-ccl.h: Make a global declaration of it here.
2578
2579 1999-07-20  Bob Weiner  <weiner@beopen.com>
2580
2581         * s/sco7.h: Added from rr@sco.com.
2582
2583 1999-06-25  MORIOKA Tomohiko  <tomo@etl.go.jp>
2584
2585         * mule-ccl.c (ccl_driver): Fix `CCL_WriteMultibyteChar2'.
2586
2587 1999-06-24  MORIOKA Tomohiko  <tomo@etl.go.jp>
2588
2589         * file-coding.c (mule_decode): Setup `str->ccl.last_block'.
2590         (mule_encode): Likewise.
2591
2592         * mule-ccl.c (Qccl_program): New variable.
2593         (CCL_SUSPEND): New macro.
2594         (CCL_INVALID_CMD): New macro.
2595         (CCL_READ_CHAR): Don't regard as invalid command while processing
2596         the last block even if input is empty; use
2597         `CCL_STAT_SUSPEND_BY_SRC' instead of `CCL_STAT_SUSPEND'.
2598         (vars_of_mule_ccl): Setup `Qccl_program' and `Qccl_program_idx'.
2599
2600         * mule-ccl.h (CCL_STAT_SUCCESS): Moved from mule-ccl.c.
2601         (CCL_STAT_SUSPEND_BY_SRC): Imported from Emacs 20.3.10.
2602         (CCL_STAT_SUSPEND_BY_DST): Likewise.
2603         (CCL_STAT_INVALID_CMD): Moved from mule-ccl.c; change value from 2.
2604         (CCL_STAT_QUIT): Moved from mule-ccl.c; change value from 3.
2605
2606 1999-05-04  Ken'ichi Handa  <handa@gnu.org>
2607
2608         * mule-ccl.h (struct ccl_program): New member stack_idx.
2609
2610         * mule-ccl.c (ccl_prog_stack_struct): Declare it as static.
2611         (ccl_driver): Setup stack_idx and ccl_prog correctly.  Update them
2612         before returing.
2613         (setup_ccl_program): Initialize ccl->stack_idx to 0.
2614
2615 1998-10-12  Kenichi Handa  <handa@etl.go.jp>
2616
2617         * mule-ccl.c (CCL_DECODE_SJIS, CCL_ENCODE_SJIS): Swap the
2618         definitions.
2619
2620 1998-08-18  Kenichi Handa  <handa@etl.go.jp>
2621
2622         * mule-ccl.c (CCL_READ_CHAR): If eof is encounterd while
2623         processing the last block, don't just finish but processes eol
2624         block of the current CCL program.
2625         (ccl_driver): Add a new jump label ccl_repeat for the above
2626         change.
2627
2628 1998-04-15  Kenichi Handa  <handa@etl.go.jp>
2629
2630         * mule-ccl.c: Typo in comments fixed.
2631         (Qccl_program_idx): New variables.
2632         (CCL_ReadMultibyteChar2): Macro name changed from
2633         CCL_ReadMultibyteCharacter.
2634         (CCL_WriteMultibyteChar2): Macro name changed from
2635         CCL_WriteMultibyteChar2.
2636         (ccl_driver): Adjusted for the above changes.
2637         (resolve_symbol_ccl_program): New function.
2638         (Fccl_execute): The arg CCL-PROGRAM can be a symbol of CCL
2639         program.  If CCL-PRGRAM is a vector, convert symbols in it to ID
2640         numbers by resolve_symbol_ccl_program.
2641         (Fccl_execute_on_string): Likewise.
2642         (Fregister_ccl_program): If the arg CCL-PRGRAM is a vector,
2643         convert symbols in it to ID numbers by resolve_symbol_ccl_program.
2644
2645 1998-01-21  Kenichi Handa  <handa@etl.go.jp>
2646
2647         * mule-ccl.h: (struct ccl_program): New member private_state.
2648
2649         * mule-ccl.c
2650         (CCL_Call): Fix the comment.
2651         (CCL_ReadMultibyteCharacter, CCL_WriteMultibyteCharacter): New
2652         macros for CCL Commands.
2653         (EXCMD): New macro.
2654         (ccl_driver): New case lable `CCL_Extention'.
2655         (setup_ccl_program): Initialize the member `private_state' of CCL.
2656
2657 1999-07-08  Katsumi Yamaoka <yamaoka@jpl.org>
2658
2659         * keymap.c (copy_keymap_internal): Inherit the default binding.
2660
2661 1999-07-14  Kazuyuki IENAGA <kazz@imasy.or.jp>
2662
2663         * event-Xt.c (handle_focus_event_1): Re-enable Motif/XIM to get
2664         focus the event (XIM_focus_event).
2665         (emacs_Xt_handle_magic_event): No side effect on Motif/XIM because
2666         XIM_SetGeometry does nothing in input_method_motif.c, but re-unify
2667         the interface for future use (XIM_SetGeometry).
2668         * redisplay-x.c (x_output_string): Re-enable Motif/XIM to set spot
2669         location (XIM_SetSpotLocation).
2670         (x_output_eol_cursor): Ditto.
2671
2672 1999-07-17  Gunnar Evermann  <ge204@eng.cam.ac.uk>
2673
2674         * gdbinit (pobj): change lrecord_foo to &lrecord_foo to match
2675         Olivier's change to lrecord.h of 1999-04-22
2676
2677 1999-07-20  Robert Pluim  <rpluim@bigfoot.com>
2678
2679         * gutter.c (redraw_exposed_gutter): Change type of pos from
2680         enum toolbar_pos -> enum gutter_pos, since former is only defined
2681         if toolbar support is.
2682
2683 1999-07-19  Andy Piper  <andy@xemacs.org>
2684
2685         * glyphs-x.c (x_resize_subwindow): cope with widgets as well as
2686         subwindows.
2687
2688         * gutter.c (gutter_validate): new function for the gutter specifier.
2689         (specifier_type_create_gutter): declare specifier validator.
2690
2691         * buffer.h (INC_CHARBYTIND): add for no error checking version.
2692
2693 1999-07-18  Andy Piper  <andy@xemacs.org>
2694
2695         * redisplay.c (add_emchar_rune): use XSTRING_DATA not string_data.
2696
2697         * glyphs-msw.c (console_type_create_glyphs_mswindows): add
2698         resize_subwindow.
2699         (mswindows_resize_subwindow): new function.
2700
2701         * gutter.c (redraw_exposed_gutter): only reset the
2702         current_display_lines if non-zero.
2703         (Fgutter_pixel_height): new function.
2704         (Fgutter_pixel_width): new function.
2705
2706         * event-msw.c (mswindows_wnd_proc): set the mask of the parameter
2707         we want to retrive from the tab control.
2708
2709 1999-07-17  Andy Piper  <andy@xemacs.org>
2710
2711         * window.c (change_window_height): mark gutters changed when we're
2712         done.
2713
2714         * gutter.c (specifier_vars_of_gutter): make defaults more
2715         sensible.
2716
2717         * gutter.h (WINDOW_REAL_GUTTER_BORDER_WIDTH): adjust to be 0 for 0
2718         height gutter.
2719         (DEFAULT_GUTTER_WIDTH): change.
2720         (DEFAULT_GUTTER_BORDER_WIDTH): change.
2721
2722 1999-07-18  Andy Piper  <andy@xemacs.org>
2723
2724         * redisplay.c (add_emchar_rune): use XSTRING_DATA not string_data.
2725
2726 1999-07-16  Andy Piper  <andy@xemacs.org>
2727
2728         * frame.c (Fmake_frame): call init_frame_gutters().
2729
2730         * redisplay.c (add_emchar_rune): use string functions if we are
2731         working with a string.
2732         (position_redisplay_data_type): add string element.
2733
2734 1999-07-15  Andy Piper  <andy@xemacs.org>
2735
2736         * winslots.h: add real_gutter_size slots to hold the actual gutter
2737         size. This is important for autodetected sizes.
2738
2739         * gutter.c (calculate_gutter_size): calculate size for gutters
2740         that have 'autodetect size.
2741
2742         * redisplay-msw.c (mswindows_output_vertical_divider): adjust
2743         extent of divider for gutters.
2744
2745         * redisplay-x.c (x_output_vertical_divider): adjust extent of
2746         divider for gutters.
2747
2748         * scrollbar.c (update_scrollbar_instance): adjust scrollbar
2749         position to take into account the gutters.
2750
2751         * redisplay.c (generate_modeline): adjust modeline position to
2752         take into account the gutters.
2753
2754 1999-07-14  Andy Piper  <andy@xemacs.org>
2755
2756         * gutter.c (frame_topmost_window): new function.
2757         (frame_bottommost_window): ditto.
2758         (frame_leftmost_window): ditto.
2759         (frame_rightmost_window): ditto.
2760
2761 1999-07-13  Andy Piper  <andy@xemacs.org>
2762
2763         * redisplay.c (calculate_display_line_boundaries): use text
2764         boundaries so that gutters get handled properly.
2765
2766 1999-07-12  Andy Piper  <andy@xemacs.org>
2767
2768         * glyphs-x.c (x_widget_instantiate): set the font Motif-style if
2769         we're using Motif.
2770
2771         * redisplay-output.c (redisplay_clear_to_window_end): generalised
2772         from redisplay-x.c
2773
2774         * redisplay-x.c (redisplay_clear_to_window_end): moved to
2775         redisplay.c
2776
2777         * redisplay-msw.c (redisplay_clear_to_window_end): deleted.
2778
2779         * gutter.c: new file - implements gutters. All new functions are
2780         semantically equivalent to the toolbar functions.
2781         (gutter_was_visible): new function.
2782         (get_gutter_coords): ditto.
2783         (output_gutter): ditto.
2784         (clear_gutter): ditto.
2785         (update_frame_gutters): ditto.
2786         (redraw_exposed_gutter): ditto.
2787         (redraw_exposed_gutters): ditto.
2788         (free_frame_gutters): ditto.
2789         (init_frame_gutters): ditto.
2790         (decode_gutter_position): ditto.
2791         (Fset_default_gutter_position): ditto.
2792         (Fset_default_gutter_position): ditto.
2793         (Fdefault_gutter_position): ditto.
2794         (gutter_after_change): ditto.
2795         (Fgutter_specifier_p): ditto.
2796         (recompute_overlaying_specifier): ditto.
2797         (gutter_specs_changed): ditto.
2798         (default_gutter_specs_changed): ditto.
2799         (gutter_geometry_changed_in_window): ditto.
2800         (default_gutter_size_changed_in_window): ditto.
2801         (default_gutter_border_width_changed_in_window): ditto.
2802         (default_gutter_visible_p_changed_in_window): ditto.
2803         (syms_of_gutter): ditto.
2804         (vars_of_gutter): ditto.
2805         (specifier_type_create_gutter): ditto.
2806         (specifier_vars_of_gutter): ditto.
2807
2808         * gutter.h: new file. Contains gutter constants and sizing macros
2809         similar to those for the toolbar.
2810
2811         * winslots.h: add gutter variables.
2812
2813         * window.h: declare window_is_* functions.
2814
2815         * window.c (window_is_lowest): make non-static.
2816         (window_is_highest): ditto.
2817         (window_top_toolbar_height): deleted.
2818         (window_bottom_toolbar_height): deleted.
2819         (window_left_toolbar_width): deleted.
2820         (window_right_toolbar_width): deleted.
2821         (window_top_gutter_height): add gutter sizing.
2822         (window_bottom_gutter_height): ditto.
2823         (window_left_gutter_width): ditto.
2824         (window_right_gutter_width): ditto.
2825
2826         * symsinit.h: declarations for gutters vars etc.
2827
2828         * search.c (bi_find_next_emchar_in_string): new function.
2829
2830         * scrollbar.c (update_scrollbar_instance): remove reference to
2831         window_bottom_toolbar_height which did nothing.
2832
2833         * redisplay.h (struct display_line): add face indices for
2834         overriding defaults in output_display_line.
2835         Add gutter_changed flags and declarations.
2836
2837         * redisplay.c (create_string_text_block): new function, similar to
2838         create_text_block but for strings. Display tables etc are used
2839         from the currently selected window.
2840         (generate_string_display_line): ditto. Similar to
2841         generate_display_line.
2842         (generate_displayable_area): generate display lines for a given
2843         area on a frame. Input is the string, with associated extents, to
2844         display.
2845         (redisplay_frame): add gutter_changed check.
2846         (redisplay_device): ditto.
2847         (redisplay_without_hooks): ditto.
2848
2849         * redisplay-x.c (bevel_modeline): moved to redisplay.c.
2850         (x_redraw_exposed_area): redraw exposed gutters.
2851         (x_bevel_area): new redisplay device method.
2852         (x_type_create_redisplay_mswindows): add bevel_area device method.
2853         (x_output_display_block): fiddly Martin-style cleanup.
2854         (x_output_vertical_divider): use bevel_area.
2855
2856         * redisplay-output.c (output_display_line): check display_lines
2857         for face information before using defaults.
2858         (bevel_modeline): new function, calls bevel_area with appropriate
2859         values.
2860
2861         * redisplay-msw.c (bevel_modeline): moved to redisplay.c.
2862         (mswindows_redraw_exposed_area): redraw exposed gutters.
2863         (mswindows_bevel_area): new redisplay device method.
2864         (console_type_create_redisplay_mswindows): add bevel_area device
2865         method.
2866
2867         * indent.c (string_column_at_point): add column_at_point but for
2868         strings.
2869
2870         * glyphs-x.c (image_instantiator_format_create_glyphs_x): only
2871         instantiate widgets that we have a toolkit for.
2872
2873         * general.c: add Qgutter.
2874
2875         * frame.h (struct frame): add display lines for gutters and
2876         visibility flags.
2877
2878         * frame.c (set_frame_selected_window): mark gutters changed.
2879
2880         * emacs.c (main_1): add gutter initialisation.
2881
2882         * device.h (struct device): add gutter_changed flag and macros to
2883         manipulate it.
2884
2885         * console.h (struct console_methods): new bevel area redisplay
2886         method.
2887
2888         * buffer.h (REAL_INC_CHARBYTIND): new macro for strings as
2889         REAL_INC_BYTIND is for buffers.
2890         (INC_CHARPTR): ditto.
2891
2892         * Makefile.in.in (objs): add gutter.o
2893
2894 1999-07-13  XEmacs Build Bot <builds@cvs.xemacs.org>
2895
2896         * XEmacs 21.2.18 is released
2897
2898 1999-07-08  SL Baur  <steve@mule.m17n.org>
2899
2900         * event-Xt.c (handle_focus_event_1): Guard FRAME_X_XIC with
2901         XIM_XLIB.
2902         (emacs_Xt_handle_magic_event): Ditto.
2903         * redisplay-x.c (x_output_string): Ditto.
2904         (x_output_eol_cursor): Ditto.
2905
2906 1999-06-30  Kazuyuki IENAGA <kazz@imasy.or.jp>
2907
2908         *  event-Xt.c, input-method-xlib.c, redisplay-x.c: Avoid the
2909         problem that when XIM is destroyed or missed with some reason,
2910         xemacs will die.  Now xim=xlib waits the XIM will be ready and
2911         endures the case of XIM end up.
2912
2913 1999-07-03  Gunnar Evermann  <ge204@eng.cam.ac.uk>
2914
2915         * tooltalk.c (init_tooltalk): save signal actions for SIGQUIT,
2916         SIGINT and SIGCHLD before calling tt_open and restore the
2917         afterwards. This fixes e.g. the zombie subprocesses on Solaris
2918
2919 1999-07-06  SL Baur  <steve@xemacs.org>
2920
2921         * s/linux.h: gcc-2.8 changes for powerpc
2922         From Justin Vallon <vallon@mindspring.com>
2923
2924 1999-07-05  Didier Verna  <verna@inf.enst.fr>
2925
2926         * indent.c: new symbol Qcoerce.
2927         (Fmove_to_column): use it + doc string update.
2928
2929 1999-07-04  Andy Piper  <andy@xemacs.org>
2930
2931         * console.c: undo earlier Fprovide changes.
2932         * fns.c: ditto.
2933         * console.h: ditto.
2934
2935         * console-tty.c (image_instantiator_format_create_glyphs_tty): new
2936         function. validate appropriate image formats for tty.
2937
2938         * glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM):
2939         initialize consoles parameter.
2940         (struct image_instantiator_methods): add consoles parameter.
2941         (IIFORMAT_VALID_CONSOLE): new function. validate the format on the
2942         console.
2943         (INITIALIZE_DEVICE_IIFORMAT): validate the format on the given
2944         console.
2945
2946         * glyphs-msw.c: declare instantiators for later use.
2947         (image_instantiator_format_create_glyphs_mswindows): validate xpm
2948         and friends on the mswindows console.
2949         * glyphs-x.c: ditto.
2950
2951         * glyphs.c (valid_image_instantiator_format_p): disallow glyphs
2952         that have not been registered on the supplied device.
2953         (Fvalid_image_instantiator_format_p): add locale argument.
2954         (instantiate_image_instantiator): valid image instantiator on the
2955         device.
2956
2957         * symsinit.h: add image_instantiator_format_create_glyphs_tty()
2958         declaration.
2959
2960         * emacs.c (main_1): add call to
2961         image_instantiator_format_create_glyphs_tty().
2962
2963 1999-06-29  Olivier Galibert  <galibert@pobox.com>
2964
2965         * lisp.h: Add #include <stddef.h>.
2966
2967         * sysdep.c: Remove #include <stddef.h>.
2968         * symbols.c: Remove #include <stddef.h>.
2969         * sheap.c: Remove #include <stddef.h>.
2970         * opaque.c: Remove #include <stddef.h>.
2971         * nt.c: Remove #include <stddef.h>.
2972         * mule-charset.c: Remove #include <stddef.h>.
2973         * marker.c: Remove #include <stddef.h>.
2974         * file-coding.c: Remove #include <stddef.h>.
2975         * extents.c: Remove #include <stddef.h>.
2976         * elhash.c: Remove #include <stddef.h>.
2977         * data.c: Remove #include <stddef.h>.
2978         * chartab.c: Remove #include <stddef.h>.
2979         * bytecode.c: Remove #include <stddef.h>.
2980         * alloc.c: Remove #include <stddef.h>.  Fix vector description
2981
2982 1999-06-30  SL Baur  <steve@miho.m17n.org>
2983
2984         * editfns.c: Document "%s" format spec.
2985         Suggested by Bob Weiner <weiner@altrasoft.com>
2986
2987 1999-06-29  Andy Piper  <andy@xemacs.org>
2988
2989         * event-msw.c: fix definition booboo.
2990
2991 1999-06-28  Andy Piper  <andy@xemacs.org>
2992
2993         * glyphs-x.c: change tree -> tree-view, progress ->
2994         progress_gauge, edit -> edit-field, tab -> tab-control, combo ->
2995         combo-box.
2996         (complex_vars_of_glyphs_x): provide-on-console the implemented
2997         widget types.
2998
2999         * glyphs-msw.c: ditto.
3000         (complex_vars_of_glyphs_mswindows): ditto.
3001
3002         * lisp.h: add Fprovide_on_console.
3003
3004         * fns.c (Ffeaturep): add extra optional console argument.
3005         (Fprovide_on_console): like Fprovide but provides only on the
3006         specified console-type.
3007         (Frequire): check console-features as well as global features.
3008
3009         * console.c (Fconsole_features): new function. return features for
3010         this console.
3011         (syms_of_console): add Fconsole_features.
3012
3013         * console.h (CONMETH_FEATURES): new function for accessing features.
3014         (CONSOLE_FEATURES): ditto.
3015         (struct console_methods): add features slot.
3016         (INITIALIZE_CONSOLE_TYPE): initialize features slot.
3017
3018 1999-06-28  Andy Piper  <andy@xemacs.org>
3019
3020         * event-Xt.c (handle_focus_event_1): conditionally compile for
3021         X11R5.
3022
3023         * s/cygwin32.h: fix me website address.
3024
3025         * event-msw.c: add NMHDR for pre b20 cygwin builds.
3026
3027         * gui-x.c (button_item_to_widget_value): only add callback if it
3028         is non-nil.
3029
3030         * glyphs-x.c: add progress, edit and combo instantiators.
3031         (x_widget_set_property): new function. uses lwlib to set widget
3032         values.
3033         (x_widget_property): new function. uses lwlib to get widget
3034         values.
3035         (x_button_instantiate): support images in buttons.
3036         (x_button_property): new function. use lwlib to get the selected
3037         state.
3038         (x_progress_instantiate): new function for instantiating progress
3039         gauges.
3040         (x_progress_set_property): new function. sets the progress gauge
3041         position.
3042         (x_edit_instantiate): new function. for instantiating edit fields.
3043         (x_combo_instantiate): new function. for instantiating combo
3044         boxes.
3045         (image_instantiator_format_create_glyphs_x): add new device ii
3046         formats.
3047
3048         * glyphs-msw.c (mswindows_tab_instantiate): remove redundant var.
3049
3050         * console.h (CONSOLE_FEATURES): new features accesor.
3051
3052         * conslots.h (MARKED_SLOT): add features entry.
3053
3054 1999-06-25  Andy Piper  <andy@xemacs.org>
3055
3056         * menubar-x.c (menu_item_descriptor_to_widget_value_1): use new
3057         gui functions.
3058
3059         * menubar-msw.c: move MAX_MENUITEM_LENGTH to gui.h
3060
3061         * gui.h (struct Lisp_Gui_Item): add accelerator.
3062
3063         * gui.c (gui_item_add_keyval_pair): deal with accelerators.
3064         (gui_item_init): ditto.
3065         (gui_add_item_keywords_to_plist): ditto.
3066         (mark_gui_item): ditto.
3067         (gui_item_hash): ditto.
3068         (gui_item_accelerator): new function.
3069         (gui_name_accelerator): new function stolen from gui-x.c
3070
3071         * gui-x.c (popup_selection_callback): always define. mark
3072         subwindows changed after calling a callback.
3073         (menu_name_to_accelerator): deleted.
3074         (button_item_to_widget_value): forward gui_item things to gui_item
3075         functions.
3076
3077         * glyphs-x.h (struct x_subwindow_data): add data for widgets. add
3078         appropriate accesors.
3079
3080         * glyphs-x.c: declare new glyph formats.
3081         (x_finalize_image_instance): unmanage and destroy widgets if they
3082         exist.
3083         (x_unmap_subwindow): handle widgets specially.
3084         (x_map_subwindow): ditto. offset display of widgets by offset of
3085         text widget within container.
3086         (x_update_subwindow): new function. call lw_modify_all_widgets
3087         when we are a widget.
3088         (x_widget_instantiate): new function for generically creating
3089         widgets-glyphs. toolkit specifics forwarded to lwlib.
3090         (x_button_instantiate): new function for instantiating
3091         widgets-glyph buttons.
3092         (console_type_create_glyphs_x): register update_subwindow.
3093         (image_instantiator_format_create_glyphs_x): register widget and
3094         button types.
3095
3096         * event-msw.c (mswindows_wnd_proc): remove redundant variable.
3097
3098         * event-Xt.c (x_event_to_emacs_event): call handle_focus_event_1
3099         when we get a button press in case we do not have the focus.
3100         (handle_focus_event_1): set the keyboard focus to the text widget
3101         if we do not have it.
3102
3103         * dialog-x.c (dbox_descriptor_to_widget_value): use new gui_item
3104         functions.
3105
3106 1999-06-24  SL Baur  <steve@miho.m17n.org>
3107
3108         * syntax.c (scan_words): Restore non-Mule code.
3109         (word_constituent_p): Restore.
3110
3111 1999-06-23  Olivier Galibert  <galibert@pobox.com>
3112
3113         * config.h.in: Add missing #undef *_USER_DEFINED.
3114
3115 1999-06-23  SL Baur  <steve@miho.m17n.org>
3116
3117         * lisp.h (set_bit_vector_bit): Force promotion to unsigned long
3118         int (fixes a 64-bit problem).
3119
3120         * chartab.c (word_boundary_p): Use EQ not == for lisp_object
3121         comparison.
3122
3123 1999-03-23  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
3124
3125         * paths.h.in (PATH_DOC): Made doc-directory configurable.
3126
3127 1999-06-22  Olivier Galibert  <galibert@pobox.com>
3128
3129         * lrecord.h: Added basic external description system.
3130
3131         * symbols.c: Added symbol, symbol-value-buffer-local,
3132         symbol-value-lisp-magic and symbol-value-varalias description.
3133         * mule-charset.c: Added charset description.
3134         * marker.c: Added marker description.
3135         * keymap.c: Added keymap description.
3136         * glyphs.c: Added glyph description.
3137         * floatfns.c: Added float description.
3138         * file-coding.c: Added coding-system description.
3139         * extents.c: Added extent description.
3140         * elhash.c: Added hash-table description.
3141         * data.c: Added weak-list desciption.
3142         * chartab.c: Added char-table-entry and char-table description.
3143         * bytecode.c: Added compiled-function description.
3144         * alloc.c: Added cons, vector and string description.
3145
3146 1999-06-22  Olivier Galibert  <galibert@pobox.com>
3147
3148         * lrecord.h (struct lrecord_header): Reduced size to 4 bytes.
3149         Updated everything to the removal of the "flags" substructure.
3150
3151         * lisp.h (subr_lheader_initializer): Updated.
3152         * symeval.h (symbol_value_forward_lheader_initializer): Updated.
3153
3154 1999-06-20  MORIOKA Tomohiko  <tomo@etl.go.jp>
3155
3156         * syntax.c (word_constituent_p): Deleted.
3157         (scan_words): Use `WORD_BOUNDARY_P'.
3158
3159         * chartab.c (Vword_combining_categories): New variable.
3160         (Vword_separating_categories): Likewise.
3161         (CATEGORYP): New macro.
3162         (CATEGORY_SET): Likewise.
3163         (CATEGORY_MEMBER): Likewise.
3164         (word_boundary_p): New function.
3165         (complex_vars_of_chartab): Set up new variable
3166         `word-combining-categories' and `word-separating-categories'.
3167
3168 1999-06-18  Olivier Galibert  <galibert@pobox.com>
3169
3170         * lrecord.h: Added description as a placehold in the lrecord
3171         implementation structures.  Added the parameter to all constructor
3172         defines.
3173
3174         * alloc.c: Added placeholders.
3175         * buffer.c: Ditto.
3176         * bytecode.c: Ditto.
3177         * chartab.c: Ditto.
3178         * console.c: Ditto.
3179         * data.c: Ditto.
3180         * database.c: Ditto.
3181         * device.c: Ditto.
3182         * eldap.c: Ditto.
3183         * elhash.c: Ditto.
3184         * eval.c: Ditto.
3185         * event-stream.c: Ditto.
3186         * events.c: Ditto.
3187         * extents.c: Ditto.
3188         * faces.c: Ditto.
3189         * file-coding.c: Ditto.
3190         * floatfns.c: Ditto.
3191         * fns.c: Ditto.
3192         * frame.c: Ditto.
3193         * glyphs.c: Ditto.
3194         * gui-x.c: Ditto.
3195         * keymap.c: Ditto.
3196         * lstream.c: Ditto.
3197         * marker.c: Ditto.
3198         * mule-charset.c: Ditto.
3199         * objects.c: Ditto.
3200         * opaque.c: Ditto.
3201         * process.c: Ditto.
3202         * rangetab.c: Ditto.
3203         * specifier.c: Ditto.
3204         * symbols.c: Ditto.
3205         * toolbar.c: Ditto.
3206         * tooltalk.c: Ditto.
3207         * window.c: Ditto.
3208
3209 1999-06-22  XEmacs Build Bot <builds@cvs.xemacs.org>
3210
3211         * XEmacs 21.2.17 is released
3212
3213 1999-06-13  Oscar Figueiredo  <oscar@xemacs.org>
3214
3215         * config.h.in (HAVE_LDAP_SET_OPTION): New define
3216         (HAVE_LDAP_GET_LDERRNO): Ditto
3217         (HAVE_LDAP_RESULT2ERROR): Ditto
3218         (HAVE_LDAP_PARSE_RESULT): Ditto
3219         (HAVE_UMICH_LDAP): Removed
3220         (HAVE_NS_LDAP): Removed
3221
3222         * eldap.h (struct Lisp_LDAP): Removed the `livep' member as
3223         suggested by Olivier Galibert
3224         (CHECK_LIVE_LDAP): Test on `ld' instead of `livep'
3225
3226         * eldap.c: Take the removal of `livep' into account in all the
3227         necessary functions
3228         (signal_ldap_error): Take two additional parameters
3229         Added new finer compilation conditions in order to use
3230         ldap_parse_result or ldap_result2error if available
3231         (Fldap_open): Conform to this new API
3232         (Fldap_search_internal): Ditto
3233
3234 1999-06-17  SL Baur  <steve@miho.m17n.org>
3235
3236         * data.c (struct int_or_double): Should use EMACS_INT not int.
3237
3238 1999-06-16  Norbert Koch  <n.koch@eai-delta.de>
3239
3240         * redisplay-msw.c: Run 'ccl_driver' with 'CCL_MODE_ENCODING' as in
3241         redisplay-x.c
3242
3243 1999-06-12  MORIOKA Tomohiko  <tomo@etl.go.jp>
3244
3245         * redisplay-x.c (separate_textual_runs): Run `ccl_driver' with
3246         `CCL_MODE_ENCODING'.
3247
3248         * file-coding.c (mule_decode): Run `ccl_driver' with
3249         `CCL_MODE_DECODING'.
3250         (mule_encode): Run `ccl_driver' with `CCL_MODE_ENCODING'.
3251
3252         * mule-ccl.c (CCL_WRITE_CHAR): Refer `conversion_mode'.
3253         (ccl_driver): Add new argument `conversion_mode'.
3254         (Fccl_execute): Run `ccl_driver' with `CCL_MODE_ENCODING'.
3255         (Fccl_execute_on_string): Likewise [perhaps it is better to add
3256         new optional argument].
3257
3258         * mule-ccl.h (CCL_MODE_ENCODING): New macro.
3259         (CCL_MODE_DECODING): New macro.
3260         (ccl_driver): Add new argument `conversion_mode'.
3261
3262 1999-06-15  SL Baur  <steve@miho.m17n.org>
3263
3264         * mule-charset.c (Fsplit_char): New subr.
3265         (Fchar_octet): delete.
3266         (syms_of_mule_charset): DEFSUBR it.
3267
3268 1999-06-13  Andy Piper  <andy@xemacs.org>
3269
3270         * menubar.h: update declarations involving gui_items.
3271
3272         * lisp.h: declare Lisp_Gui_Item.
3273
3274         * glyphs.h (struct Lisp_Image_Instance): update type of gui_item.
3275
3276         * glyphs.c (mark_image_instance): modify for new lisp-based gui_items.
3277         (print_image_instance): ditto.
3278         (image_instance_equal): ditto.
3279         (image_instance_hash): ditto.
3280
3281         * event-msw.c (mswindows_need_event): assert badly_p status.
3282         (mswindows_wnd_proc): modify WM_NOTIFY handling to cope with
3283         callbacks in tree-view and tab-control widgets.
3284         (emacs_mswindows_next_event): modify use of
3285         mswindows_dequeue_dispatch_event.
3286
3287         * dialog-msw.c (mswindows_popup_dialog_box): modify for new
3288         lisp-based gui_items.
3289
3290         * glyphs-msw.c (mswindows_update_subwindow): update use of
3291         gui_items.
3292         (mswindows_register_gui_item): new function.
3293         (mswindows_register_gui_item): fix to use lisp gui_items.
3294         (mswindows_widget_instantiate): ditto.
3295         (mswindows_button_instantiate): ditto.
3296         (add_tree_item): new function to recursively add tree view
3297         elements.
3298         (add_tree_item_list): ditto.
3299         (mswindows_tree_instantiate): new function. instantiate tree view
3300         controls.
3301         (add_tab_item): new function to add tabs to a tab control.
3302         (mswindows_tab_instantiate): new function. instantiate tab
3303         controls.
3304         (image_instantiator_format_create_glyphs_mswindows): add tree view
3305         and tab controls.
3306         (vars_of_glyphs_mswindows): ditto.
3307
3308         * glyphs-widget.c (check_valid_item_list_1): allow nested lists in
3309         item lists.
3310         (check_valid_item_list): ditto.
3311         (initialize_widget_image_instance): fix to use new lisp gui_item.
3312         (widget_instantiate_1): allow the setting of default textwidth in
3313         characters.
3314         (widget_instantiate): change to use new widget_instantiate_1
3315         signature.
3316         (combo_instantiate): ditto.
3317         (static_instantiate): ditto.
3318         (tab_instantiate): new function for tab widgets.
3319         (image_instantiator_format_create_glyphs_widget): add tab and tree
3320         view widgets.
3321
3322         * menubar-msw.c (displayable_menu_item): convert to use lisp
3323         gui_items.
3324         (populate_menu_add_item): ditto.
3325         (populate_or_checksum_helper): ditto.
3326
3327         * menubar.c (menu_parse_submenu_keywords): convert to use lisp
3328         gui_items.
3329         (Fmenu_find_real_submenu): ditto.
3330
3331         * gui.h (struct Lisp_Gui_Item): make gui_item a lisp oebjct.
3332
3333         * gui.c (gui_item_add_keyval_pair): gui_items are now lisp
3334         objects, convert functions that use them accordingly.
3335         (gui_item_init): ditto.
3336         (gui_item_active_p): ditto.
3337         (gui_item_selected_p): ditto.
3338         (gui_item_included_p): ditto.
3339         (gui_item_display_flush_left): ditto.
3340         (gui_item_display_flush_right): ditto.
3341         (mark_gui_item): ditto.
3342         (allocate_gui_item): new function to create a gui_item.
3343         (make_gui_item_from_keywords_internal): ditto. create and return a
3344         gui_item as well as setting keywords.
3345         (gui_parse_item_keywords): ditto.
3346         (gui_parse_item_keywords_no_errors): ditto.
3347         (gui_add_item_keywords_to_plist): new function, not yet used.
3348         (gui_item_hash): new function.
3349         (gui_item_id_hash): use gui_item_hash.
3350         (gui_item_equal): new function.
3351         (print_gui_item): new function.
3352
3353 1999-06-11  XEmacs Build Bot <builds@cvs.xemacs.org>
3354
3355         * XEmacs 21.2.16 is released
3356
3357 1999-06-10  Andy Piper  <andy@xemacs.org>
3358
3359         * select-msw.c (mswindows_own_selection): only set the clipboard
3360         if asked.
3361         (mswindows_get_foreign_selection): only get the clipboard if
3362         asked.
3363         (mswindows_disown_selection): only disown the clipboard if asked.
3364
3365 1999-06-03  MORIOKA Tomohiko  <tomo@etl.go.jp>
3366
3367         * file-coding.c (coding_system_from_mask): Use `raw-text' instead
3368         of `no-conversion'.
3369         (complex_vars_of_mule_coding): Use `raw-text' as the coding-system
3370         of coding-category `no-conversion'.
3371
3372 1999-06-03  MORIOKA Tomohiko  <tomo@etl.go.jp>
3373
3374         * file-coding.c (Qraw_text): New variable.
3375         (syms_of_mule_coding): Add new symbol `raw-text'.
3376         (complex_vars_of_mule_coding): Add new coding-system `raw-text';
3377         define coding-system `binary' independently; define coding-system
3378         `no-conversion' as an alias for `raw-text'.
3379
3380         * file-coding.h (Qraw_text): New variable.
3381
3382 1999-06-08  SL Baur  <steve@xemacs.org>
3383
3384         * s/decosf4-0.h: Explicitly #undef SYSTEM_MALLOC.
3385
3386 1999-06-06  Hrvoje Niksic  <hniksic@srce.hr>
3387
3388         * fns.c (MIME_LINE_LENGTH): Default to 72, as in mimencode and
3389         base64.el.
3390         (base64_decode_1): Signal errors instead of returning -1.
3391
3392 1999-06-07  Hrvoje Niksic  <hniksic@srce.hr>
3393
3394         * mule-charset.c (Fmake_char): Update docstring.
3395
3396 1999-06-07  Hrvoje Niksic  <hniksic@srce.hr>
3397
3398         * fns.c (Fstring_lessp): Actually increment the Bufbyte pointers.
3399
3400 1999-06-05  Hrvoje Niksic  <hniksic@srce.hr>
3401
3402         * fns.c (base64_decode_1): Allow and ignore any non-base64
3403         characters in input.
3404
3405 1999-05-27  Olivier Galibert  <galibert@pobox.com>
3406
3407         * emacs.c (Fdump_emacs): Add clear_message() lost with the removal
3408         of report_pure_usage().
3409
3410 1999-06-04  Hrvoje Niksic  <hniksic@srce.hr>
3411
3412         * fns.c (Fstring_lessp): Remove O(n^2) under Mule.
3413
3414 1999-06-04  XEmacs Build Bot <builds@cvs.xemacs.org>
3415
3416         * XEmacs 21.2.15 is released
3417
3418 1999-06-01  Hirokazu FUKUI  <fukui@atesoft.advantest.co.jp>
3419
3420         * frame.c (Fset_mouse_position):
3421         (Fset_mouse_pixel_position):
3422         * window.c (Fsplit_window):
3423         (Fmove_to_window_line):
3424         Fix crash when invoking functions with an already-deleted window
3425         argument.
3426
3427         * indent.c (vertical_motion_1):
3428         (vmotion_pixels):
3429         (Fvertical_motion_pixels):
3430         * window.c (Fwindow_displayed_text_pixel_height):
3431         Fix error message when invoking functions with an already-deleted
3432         window argument.
3433
3434 1999-06-01  Jan Vroonhof  <vroonhof@math.ethz.ch>
3435
3436         * sysdep.c (request_sigio_on_device): Guard against glibc
3437         2.1's stub streams implementation.
3438
3439 1999-06-03  SL Baur  <steve@xemacs.org>
3440
3441         * config.h.in:
3442         * emacs.c:  Implement x.y.z version numbers
3443         From Jan Vroonhof <vroonhof@math.ethz.ch>
3444
3445 1999-05-20  MORIOKA Tomohiko  <tomo@etl.go.jp>
3446
3447         * mule-charset.c (complex_vars_of_mule_charset): Registry of
3448         japanese-jisx0208-1978 should not match with "jisx0208.1983" nor
3449         "jisc6226.1983".
3450
3451 1999-06-03  SL Baur  <steve@xemacs.org>
3452
3453         * frame-x.c:
3454         * device-x.c: rename session option to wmcommand.
3455         From Oliver Graf <ograf@rhein-zeitung.de>
3456
3457 1999-05-27  Hrvoje Niksic  <hniksic@srce.hr>
3458
3459         * fns.c (Fsubstring): Don't traverse the same region twice with
3460         charcount_to_bytecount().
3461
3462 1999-06-03  SL Baur  <steve@steve1.m17n.org>
3463
3464         * m/alpha.h (SYSTEM_MALLOC): Fix indented preprocessor directive
3465         garbage.
3466
3467         * s/decosf4-0.h: Defining ORDINARY_LINK here is redundant (and it
3468         doesn't really work as is implied by the commentary).
3469         Don't define SYSTEM_MALLOC so the old GNU malloc can be used.
3470
3471 1999-06-02  SL Baur  <steve@steve1.m17n.org>
3472
3473         * symsinit.h: Declare vars_of_ntproc.
3474         * emacs.c (main_1): Call it.
3475
3476         * ntproc.c (syms_of_ntproc): Move variable initializations from
3477         here ...
3478         (vars_of_ntproc): ... to here [new function].
3479
3480         * file-coding.c (syms_of_file_coding): Rename.
3481         (vars_of_file_coding): Ditto.
3482         (complex_vars_of_file_coding): Ditto.
3483
3484         * symsinit.h: Rename *_mule_coding to *_file_coding.
3485
3486         * emacs.c (main_1): Call them by the proper name.
3487
3488         * device-msw.c (syms_of_device_mswindows): Move variable
3489         initializations from here ...
3490         (vars_of_device_mswindows): ... to here.
3491
3492         * chartab.c (vars_of_chartab): New function.
3493
3494         * symsinit.h: New function, vars_of_chartab.
3495
3496         * emacs.c (main_1): Call it.
3497
3498         * mule-canna.c (syms_of_mule_canna): Move CANNA initialization ...
3499         (vars_of_mule_canna): ... to here.
3500
3501         * mule-ccl.c (vars_of_mule_ccl): New function.  Move variable
3502         initializations out of syms_of_mule_ccl.
3503
3504         * symsinit.h: Declare new function vars_of_mule_ccl.
3505
3506         * emacs.c (main_1): Call it.
3507
3508 1999-05-27  Hrvoje Niksic  <hniksic@srce.hr>
3509
3510         * fns.c (base64_decode_1): Ignore whitespace.
3511
3512 1999-05-27  Hrvoje Niksic  <hniksic@srce.hr>
3513
3514         * mule-charset.c (Fmake_char): Strip the eighth bit off ARG1 and
3515         ARG2.
3516
3517 1999-05-21  Andy Piper  <andy@xemacs.org>
3518
3519         * xselect.c: deleted.
3520
3521         * symsinit.h: declare select initialisation.
3522
3523         * select.h: new file. declare commonly used select functions and
3524         variables.
3525
3526         * select.c: new file. generalised from xselect.c.
3527         (clean_local_selection_data): moved from xselect.c.
3528         (get_local_selection): ditto. device specific pieces called via a
3529         devmeth.
3530         (handle_selection_clear): ditto.
3531         (Fown_selection_internal): renamed and generalised from
3532         Fx_own_selection_internal. moved from xselect.c.
3533         (Fdisown_selection_internal): ditto.
3534         (Fselection_owner_p): ditto.
3535         (Fselection_exists_p): ditto.
3536         (Fget_selection_internal): ditto.
3537         (syms_of_select): new function. QXXXX values moved from xselect.c
3538         (vars_of_select): new function. selection_converter_alist,
3539         lost_selection_hooks moved and renamed from xselect.c
3540
3541         * select-x.c: renamed from xselect.c.
3542         (x_own_selection): converted to device specific. non-X-specific
3543         bits moved to select.c.
3544         (x_get_foreign_selection): ditto.
3545         (x_disown_selection): ditto.
3546         (x_selection_exists_p): ditto.
3547         (console_type_create_select_x): new function.
3548
3549         * select-msw.c (mswindows_own_selection): new device method to set
3550         the clipboard when we 'own' the selection.
3551         (mswindows_get_foreign_selection): new device method to get the
3552         clipboard.
3553         (mswindows_disown_selection): new device method to delete the
3554         selection when we 'disown' it.
3555         (console_type_create_select_mswindows): new function.
3556
3557         * emacs.c (main_1): add select to things to initialise.
3558
3559         * console.h (struct console_methods): new console methods for
3560         selection.
3561
3562         * Makefile.in.in (x_objs): xselect.c renamed to select-x.c
3563
3564 1999-05-20  Hrvoje Niksic  <hniksic@srce.hr>
3565
3566         * print.c (long_to_string): Install a faster version.
3567
3568 1999-05-16  Andy Piper  <andy@xemacs.org>
3569
3570         * ntproc.c (syms_of_ntproc): default
3571         win32-start-process-share-console to t.
3572
3573 1999-05-14  Hrvoje Niksic  <hniksic@srce.hr>
3574
3575         * config.h.in: Do it here.
3576
3577         * bytecode.c: Don't define ERROR_CHECK_TYPECHECK here.
3578
3579 1999-05-14  Andy Piper  <andy@xemacs.org>
3580
3581         * toolbar-msw.c (mswindows_output_toolbar): hash on something
3582         hashable.
3583
3584 1999-05-14  XEmacs Build Bot <builds@cvs.xemacs.org>
3585
3586         * XEmacs 21.2.14 is released
3587
3588 1999-05-12  Andy Piper  <andy@xemacs.org>
3589
3590         * ntproc.c (sys_spawnve): kludge argv[0] in a MS compatible way.
3591
3592 1999-05-11  Gunnar Evermann  <ge204@eng.cam.ac.uk>
3593
3594         * emacs.c (Frun_emacs_from_temacs): (re)alloc natgs+2 entries for
3595         run_temacs_argv array -- fixes random memory corruption crash
3596
3597 1999-05-12  Jan Vroonhof  <vroonhof@math.ethz.ch>
3598
3599         * window.c (Fcurrent_window_configuration):
3600         Save minibuffer height;
3601
3602         * window.c (set_window_configuration): use it.
3603
3604 1999-05-10  Robert Pluim  <rpluim@bigfoot.com>
3605
3606         * lisp.h (NNUNGCPRO): fix typo in name of DEBUG_GCPRO version
3607
3608 1999-04-21  Jan Vroonhof  <vroonhof@math.ethz.ch>
3609
3610         * redisplay.c (redisplay_window): Do not put data
3611         in the line start cache if it is not guaranteed to be correct
3612
3613 1999-04-02  Jan Vroonhof  <vroonhof@math.ethz.ch>
3614
3615         * window.c (struct window_config): Removed frame
3616         size members.
3617         (window_config_equal): No longer compare frame sizes.
3618         (Fset_window_configuration): Resize old top window to fit in the
3619         current frame directly, no longer use a fake frame resize.
3620         (Fcurrent_window_configuration): No longer save frame size
3621
3622 1999-05-11  Andy Piper  <andy@xemacs.org>
3623
3624         * ntproc.c (sys_spawnve): actually assign argv[0] instead of the
3625         first character.
3626
3627 1999-05-10  Hrvoje Niksic  <hniksic@srce.hr>
3628
3629         * sysdep.c (init_system_name): If gethostname gives a proper
3630         domain name, don't look further for one.
3631
3632 1999-05-09  Hrvoje Niksic  <hniksic@srce.hr>
3633
3634         * symbols.c (Fintern): Avoid frequent XSYMBOL (foo).
3635         (Fintern_soft): Accept a symbol argument.
3636
3637 1999-05-06  Hrvoje Niksic  <hniksic@srce.hr>
3638
3639         * symbols.c (Fintern): ...do it here.
3640
3641         * lread.c (read_atom): Don't handle keywords here.
3642
3643 1999-05-06  Hrvoje Niksic  <hniksic@srce.hr>
3644
3645         * symbols.c (reject_constant_symbols): Just use SYMBOL_IS_KEYWORD.
3646
3647 1999-05-03  Olivier Galibert  <galibert@pobox.com>
3648
3649         * lisp.h (SYMBOL_IS_KEYWORD): A symbol can be a keyword only if it
3650         is interned in the main obarray.
3651
3652 1999-04-23  Gunnar Evermann  <ge204@eng.cam.ac.uk>
3653
3654         * menubar-x.c (pre_activate_callback): set accelerator field in
3655         "No menu" entries to nil. Avoid crash in
3656         command_builder_operate_menu_accelerator
3657
3658 1999-05-03  Olivier Galibert  <galibert@pobox.com>
3659
3660         * symeval.h (symbol_value_forward_lheader_initializer): Ditto.
3661
3662         * lisp.h (DEFUN): Fix lrecord header initialisation.
3663
3664 1999-05-02  Andy Piper  <andy@xemacs.org>
3665
3666         * objects-msw.c (mswindows_font_instance_truename): add a ';'.
3667
3668         * ntproc.c (sys_kill): cast using MS mandated defines.
3669
3670 1999-04-29  Andy Piper  <andy@xemacs.org>
3671
3672         * m/intel386.h: remove redundant definitions.
3673
3674         * s/mingw32.h: new header for mingw32.
3675
3676         * unexnt.c: (open_input_file): function moved to nt.c.
3677         (close_file_data): ditto.
3678         (rva_to_section): function moved to ntproc.
3679
3680         * symsinit.h: declare syms_of_ntproc();
3681
3682         * objects-msw.c (mswindows_font_instance_truename): new function.
3683
3684         * ntproc.c: remove many warnings.
3685         (_sys_read_ahead): moved from nt.c and made static.
3686         (rva_to_section): moved from unexnt.c but not defined under
3687         mingw32.
3688         (win32_executable_type): implement what we can for mingw32
3689         headers.
3690         (sys_spawnve): fix bad MULE/GCPRO bug in filename handling.
3691
3692         * ntheap.h: remove declarations of functions that are now static.
3693
3694         * ntheap.c: support static heap.
3695
3696         * nt.h: conditionalise X_OK definition.
3697
3698         * nt.c: eliminate many warnings and support mingw32.
3699         (open_input_file): function moved from unexnt.c and made static
3700         (close_file_data): ditto.
3701         (_sys_read_ahead): moved to ntproc.c
3702
3703         * emacs.c: make sure syms_of_ntptroc gets called under windows.
3704
3705         * console-msw.h: support mingw32.
3706         * getloadavg.c: ditto.
3707         * ntplay.c: ditto.
3708         * sysdep.c: ditto.
3709         * sysdir.h: ditto.
3710         * systime.h: ditto.
3711         * systty.h: ditto.
3712
3713         * config.h.in: dont turn on DEBUG_ENCAPSULATION by default because
3714         some systems don't have all of the encapsulated system calls.
3715
3716         * callproc.c: warning elimination.
3717         * dired-msw.c: ditto.
3718         * process-nt.c: ditto.
3719         * realpath.c: ditto.
3720
3721         * Makefile.in.in: tweak : and ; for building under mswindows.
3722
3723 1999-04-26  Michael Harnois  <mharnois@willinet.net>
3724
3725         * eldap.c (allocate_ldap): Adapt to the new semantics of
3726         alloc_lcrecord_type().
3727
3728 1999-03-16  MORIOKA Tomohiko  <tomo@etl.go.jp>
3729
3730         * file-coding.c (DECODE_HANDLE_END_OF_CONVERSION): fixed.
3731
3732 1998-09-04  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
3733
3734         * Delete mule-coding.c and mule-coding.h because they are not
3735         used.
3736
3737 1999-04-22  Gunnar Evermann  <ge204@eng.cam.ac.uk>
3738
3739         * objects.c (print_font_instance): Check for NILP(f->device),
3740         i.e. Vthe_null_font_instance.
3741         (font_instance_truename_internal): ditto.
3742         (Ffont_instance_properties): ditto.
3743
3744 1999-04-22  Olivier Galibert  <galibert@pobox.com>
3745
3746         * lrecord.h (DECLARE_LRECORD): lrecord_implementation isn't an
3747         array anymore.
3748
3749 1999-04-22  Hrvoje Niksic  <hniksic@srce.hr>
3750
3751         * Makefile.in.in (tests): Don't mention tests explicitly -- makes
3752         it easier to add new ones.
3753
3754 1999-04-22  Hrvoje Niksic  <hniksic@srce.hr>
3755
3756         * symbols.c (reject_constant_symbols): Ditto.
3757         (init_symbols_once_early): Ditto.
3758
3759         * print.c (print_symbol): Don't use ->obarray.
3760
3761         * symbols.c (Funintern): Ditto.
3762
3763         * alloc.c (Fmake_symbol): Don't set ->obarray.
3764
3765         * lisp.h (struct Lisp_Symbol): Removed .obarray field.
3766
3767         * symbols.c (init_symbols_once_early): Removed
3768         Vpure_uninterned_symbol_table.
3769         (Fintern): Don't store to ->obarray field.
3770
3771 1999-04-22  Hrvoje Niksic  <hniksic@srce.hr>
3772
3773         * data.c (vars_of_data): Default debug_issue_ebola_notices to 0.
3774         (eq_with_ebola_notice): Remove abracadabra support.
3775
3776 1999-04-11  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
3777
3778         * eldap.c (Fldap_search_internal): Add a new parameter `withdn' to
3779         retrieve the distinguished names of entries
3780
3781 1999-03-08  Martin Buchholz  <martin@xemacs.org>
3782
3783         * lread.c (read_escape): Make hex escapes read only two hex digits.
3784
3785 1999-04-05  Olivier Galibert  <galibert@pobox.com>
3786
3787         * Makefile.in.in: Remove puresize-adjust.h and recursive makes.
3788         * make-src-depend: Remove puresize-adjust.h.
3789         * src-headers: Remove puresize-adjust.h.
3790         * config.h.in: Kill everything purespace/gung-ho related.
3791
3792         * dbxrc: Make gung-ho mandatory.
3793         * gdbinit: Ditto.
3794
3795         * lrecord.h: Make gung-ho mandatory.  Remove pure flag and add
3796         c_readonly and lisp_readonly.  Remove implementation arrays.
3797         (C_READONLY_RECORD_HEADER_P): Added.
3798         (LISP_READONLY_RECORD_HEADER_P): Added.
3799         (SET_C_READONLY_RECORD_HEADER): Added.
3800         (SET_LISP_READONLY_RECORD_HEADER): Added.
3801
3802         * lisp.h: Kill everything purespace/non gung-ho related.
3803         (CHECK_C_WRITEABLE): Added.
3804         (CHECK_LISP_WRITEABLE): Added.
3805         (C_READONLY): Added.
3806         (LISP_READONLY): Added.
3807
3808         * lisp-union.h: Make gung-ho mandatory.
3809         * lisp-disunion.h: Ditto.
3810
3811         * alloc.c: Kill everything purespace/non  gung-ho related. Fix all
3812         set_lheader_implementation calls.
3813         (c_readonly): Added.
3814         (lisp_readonly): Added.
3815         (make_string_nocopy): Added.
3816         (Fpurecopy):  Changed to do  nothing.   Kept the old documentation
3817         for reference purposes for the next patches.
3818         (sweep_lcrecords_1): Don't free C readonly lcrecords.
3819         (sweep_bit_vectors_1): Don't free C readonly bitvectors.
3820         (SWEEP_FIXED_TYPE_BLOCK): Don't free C readonly lrecords.
3821
3822         * fns.c: Make gung-ho mandatory.
3823         (Fput): CHECK_IMPURE -> CHECK_LISP_WRITEABLE.
3824         (Fremprop): Ditto.
3825         (Ffillarray): Ditto.
3826
3827         * data.c: Make gung-ho mandatory.
3828         (pure_write_error): Removed.
3829         (c_write_error): Added.
3830         (lisp_write_error): Added.
3831         (Fsetcar): CHECK_IMPURE -> CHECK_LISP_WRITEABLE.
3832         (Fsetcdr): Ditto.
3833         (Faset): Ditto.
3834
3835         * symbols.c: Make gung-ho mandatory.  make_pure_pname ->
3836                   make_string or make_string_nocopy.  Fix various
3837                   alloc_lcrecord_type.
3838
3839         * lread.c: Remove everything purespace related.
3840         (Flocate_file_clear_hashing): purified -> c_readonly.
3841         (locate_file): Ditto.
3842         (read_atom): make_pure_pname -> make_string.
3843
3844         * emacs.c (Frun_emacs_from_temacs): Remove purespace stats
3845                   reporting.
3846         (Fdump_emacs): Ditto.
3847
3848         * print.c (print_internal): Make gung-ho mandatory.
3849         * ntheap.c (sbrk): Ditto.
3850         * mem-limits.h (EXCEEDS_LISP_PTR): Ditto
3851         * symeval.h (symbol_value_forward_lheader_initializer): Ditto.
3852
3853         * sheap.c (more_static_core): Remove puresize-adjust.h from
3854                   message.
3855
3856         * syntax.c (complex_vars_of_syntax): make_pure_string ->
3857                   make_string_nocopy.
3858         * keymap.c (make_keymap): Fix alloc_lcrecord_type.
3859         (vars_of_keymap): make_pure_string -> make_string_nocopy.
3860         * events.c (deinitialize_event): Fix set_lheader_implementation.
3861         (zero_event): Ditto.
3862         * specifier.c (make_specifier_internal): Fix alloc_lcrecord.
3863         * menubar-x.c (set_frame_menubar): Fix alloc_lcrecord_type.
3864         * mule-charset.c (make_charset): Ditto.
3865         * console.c (allocate_console): Ditto.
3866         (complex_vars_of_console): Ditto.
3867         * file-coding.c (allocate_coding_system): Ditto.
3868         * device.c (allocate_device): Ditto
3869         * gui-x.c (gcpro_popup_callbacks): Ditto.
3870         * extents.c (allocate_extent_auxiliary): Ditto.
3871         (allocate_extent_info): Ditto.
3872         (copy_extent): Ditto.
3873         * glyphs.c (allocate_image_instance): Ditto.
3874         (allocate_glyph): Ditto.
3875         * frame.c (allocate_frame_core): Ditto.
3876         * database.c (allocate_database): Ditto.
3877         * tooltalk.c (make_tooltalk_message): Ditto.
3878         (make_tooltalk_pattern): Ditto.
3879         * rangetab.c (Fmake_range_table): Ditto.
3880         (Fcopy_range_table): Ditto.
3881         * process.c (make_process_internal): Ditto.
3882         * chartab.c (Fmake_char_table): Ditto.
3883         (make_char_table_entry): Ditto.
3884         (copy_char_table_entry): Ditto.
3885         (Fcopy_char_table): Ditto.
3886         * elhash.c (make_general_lisp_hash_table): Ditto.
3887         (Fcopy_hash_table): Ditto.
3888         * buffer.c (allocate_buffer): Ditto.
3889         (complex_vars_of_buffer): Ditto.
3890         * event-stream.c (allocate_command_builder): Ditto.
3891         * objects.c (Fmake_color_instance): Ditto.
3892         (Fmake_font_instance): Ditto.
3893         (vars_of_objects): Ditto.
3894         * toolbar.c (update_toolbar_button): Ditto.
3895         * window.c (allocate_window): Ditto.
3896         (make_dummy_parent): Ditto.
3897         (Fcurrent_window_configuration): Fix alloc_lcrecord.
3898         (vars_of_window): Fix make_lcrecord_list.
3899         * faces.c (allocate_face): Fix alloc_lcrecord_type. pure_list ->
3900                   Flist.
3901         * lstream.c (Lstream_new): Fix make_lcrecord_list.
3902         * opaque.c (make_opaque): Fix alloc_lrecord.
3903         (make_opaque_list): Fix alloc_lrecord_type.
3904
3905 1999-04-19  Hrvoje Niksic  <hniksic@srce.hr>
3906
3907         * process.c (Fstart_process_internal): Ditto.
3908
3909         * ntproc.c (sys_spawnve): Use Vlisp_EXEC_SUFFIXES when calling
3910         locate_file().
3911
3912         * glyphs-x.c (x_locate_pixmap_file): Ditto.
3913
3914         * glyphs-msw.c (mswindows_locate_pixmap_file): Fix call to
3915         locate_file().
3916
3917         * emodules.c (vars_of_module): New variable Vmodule_extensions.
3918         (emodules_load): Use it when calling locate_file().
3919
3920         * emacs.c (main_1): Use Vlisp_EXEC_SUFFIXES when calling
3921         locate_file().
3922
3923         * callproc.c: Vlisp_EXEC_SUFFIXES: New variable.
3924         (vars_of_callproc): Initialize it.
3925         (Fcall_process_internal): Use it when calling locate_file().
3926
3927         * alloc.c (disksave_object_finalization): Use
3928         Flocate_file_clear_hashing().
3929
3930         * lread.c (Flocate_file_clear_hashing): Clear all hasing when
3931         given `t' as argument.
3932
3933 1999-04-18  Hrvoje Niksic  <hniksic@srce.hr>
3934
3935         * lread.c (locate_file): Expand `pathel' when appropriate.
3936         (Flocate_file_clear_hashing): Expand path elements.
3937         (Flocate_file_clear_hashing): Use Vlocate_file_hash_table.
3938
3939         * dired.c (make_directory_hash_table): Create the hash-table only
3940         if the directory open is successful.
3941
3942         * lread.c (decode_mode_1): New function.
3943         (decode_mode): Ditto.
3944         (Flocate_file): Use them.
3945         (Flocate_file): Expand FILENAME.
3946         (locate_file_map_suffixes): New function.
3947         (locate_file_in_directory_mapper): New function.
3948         (locate_file_in_directory): Use locate_file_in_directory_mapper()
3949         and locate_file_map_suffixes().
3950         (locate_file_construct_suffixed_files): Use
3951         locate_file_map_suffixes().
3952         (locate_file_without_hash): Don't GCPRO path.
3953         (Flocate_file_clear_hashing): Use EXTERNAL_LIST_LOOP.
3954         (syms_of_lread): Remove Qlocate_file_hash_table.
3955         (locate_file_find_directory_hash_table): Use
3956         Vlocate_file_hash_table.
3957         (locate_file_refresh_hashing): Ditto.
3958
3959         * lread.c: Renamed read_objects to Vread_objects.
3960
3961 1999-04-16  Olivier Galibert  <galibert@pobox.com>
3962
3963         * mule-charset.c: Generally resync with fsf 20.3 charset
3964         interface.
3965         (make_charset): Add long and short name.  Use id instead of
3966         leading byte.
3967         (Fmake_charset): Ditto.
3968         (Fmake_reverse_direction_charset): Ditto.
3969         (Fcharset_property): Ditto.
3970         (Fcharset_short_name): Added.
3971         (Fcharset_long_name): Added.
3972         (Fcharset_description): Renamed from charset-doc-string.
3973         (syms_of_mule_charset): Synced symbols.
3974         (complex_vars_of_mule_charset): Synced charsets.
3975
3976         * mule-charset.h: Removed leading byte (uses id instead), added
3977         short and long name.
3978
3979 1999-04-15  Hrvoje Niksic  <hniksic@srce.hr>
3980
3981         * file-coding.c (Fdefine_coding_system_alias): New function.
3982
3983 1999-04-08  Olivier Galibert  <galibert@pobox.com>
3984
3985         * mule-charset.c (complex_vars_of_mule_charset): Allow all iso8859
3986         and -ascii fonts for displaying ascii instead of iso8859-1 only.
3987
3988 1998-12-14  Hrvoje Niksic  <hniksic@srce.hr>
3989
3990         * extents.c (set_extent_glyph_1): Make sure that the glyph we
3991         attach to the extent is valid.
3992
3993 1998-12-12  Hrvoje Niksic  <hniksic@srce.hr>
3994
3995         * dired.c (user_name_completion): Mule-ize.
3996         (user_name_completion): Use xmalloc/xrealloc/xfree.
3997         (user_name_completion): Use DO_REALLOC.
3998         (user_name_completion): Cut down the number of static variables;
3999         use a structure.
4000         (user_name_completion): Username completion is always
4001         case-sensitive.
4002
4003 1998-12-06  Hrvoje Niksic  <hniksic@srce.hr>
4004
4005         * fns.c (base64_decode_1): Remove COUNTER.
4006         (base64_decode_1): Accept CRLF in addition to CR.
4007         (base64_decode_1): Disallow a stray character after final EOF; the
4008         check was probably a remnant of buggy recode code.
4009
4010 1998-12-05  Hrvoje Niksic  <hniksic@srce.hr>
4011
4012         * fns.c (init_provide_once): Provide `base64'.
4013
4014 1998-12-04  Hrvoje Niksic  <hniksic@srce.hr>
4015
4016         * fns.c (XMALLOC_UNBIND): Include SPECCOUNT argument, for clarity.
4017         (Fbase64_encode_region): If buffer is read-only, bail out early.
4018         (Fbase64_decode_region): Ditto.
4019         (Fbase64_encode_region): Initialize SPECCOUNT to pacify the
4020         compiler.
4021         (Fbase64_encode_string): Ditto.
4022         (Fbase64_decode_region): Ditto.
4023         (Fbase64_decode_string): Ditto.
4024
4025 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
4026
4027         * dired.c (Fdirectory_files): Remove redundant code.
4028
4029 1999-03-05  Philip Aston  <philipa@parallax.co.uk>
4030
4031         * frame-msw.c Make raise-frame restore minimised windows.
4032
4033 1999-03-05  Philip Aston  <philipa@parallax.co.uk>
4034
4035         * device-msw.c: Fix DEFVAR format - Death to phantom quote, and
4036         add magic newline.
4037
4038 1999-03-05  Philip Aston  <philipa@parallax.co.uk>
4039
4040         * toolbar-msw.c Consider captions when deciding whether to rebuild
4041         toolbar. This fixes the initial toolbar display for those of us
4042         who don't like captions. These patches applied by Andy Piper.
4043
4044 1999-03-12  XEmacs Build Bot <builds@cvs.xemacs.org>
4045
4046         * XEmacs 21.2.13 is released
4047
4048 1999-03-12  SL Baur  <steve@xemacs.org>
4049
4050         * file-coding.c: Guard ucs table initialization with ifdef MULE.
4051
4052 1999-03-10  Stephen J. Turnbull  <turnbull@sk.tsukuba.ac.jp>
4053
4054         * file-coding.c:  docstring and comment improvements.
4055         (decode_ucs4)  flag possible data loss with comment.
4056
4057 1999-03-10  Martin Buchholz  <martin@xemacs.org>
4058
4059         * file-coding.c (Fset_ucs_char): add CHECK_INT, CHECK_CHAR
4060         (ucs_to_char):
4061         (Fucs_char):
4062         (Fset_char_ucs):
4063         (decode_coding_ucs4):
4064         (encode_coding_ucs4):
4065         (detect_coding_utf8):
4066         (decode_coding_utf8):
4067         (encode_utf8):
4068         (encode_coding_utf8):
4069         Add CHECK_* macros where needed to avoid crashes.
4070         #ifdef out all composite character support using
4071         #ifdef ENABLE_COMPOSITE_CHARS
4072         Use normal XEmacs coding standards.
4073         Fix docstrings.
4074         Remove CODING_STREAM_COMPOSE, CODING_STREAM_DECOMPOSE.
4075
4076 1998-09-08  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
4077
4078         * file-coding.c (make-coding-system): Add description about
4079         `ucs-4' and `utf-8'.
4080         (detection_state): Modify to implement ucs-4 and utf-8.
4081         (detect_coding_type): Likewise.
4082         (detect_coding_ucs4): New implementation.
4083         (detect_coding_utf8): New implementation.
4084         (encode_utf8): fixed.
4085         (syms_of_mule_coding): Rename `ucs4' and `utf8' to `ucs-4' and
4086         `utf-8'.
4087
4088 1998-09-08  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
4089
4090         * file-coding.c (mule_char_to_ucs4): Encode 94x94 chars in ISO
4091         2022 registry to private area.
4092
4093 1998-09-07  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
4094
4095         * file-coding.c (encode_utf8): New function.
4096         (encode_coding_utf8): New implementation.
4097
4098 1998-09-07  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
4099
4100         * file-coding.c (ucs_to_mule_table): New variable; abolish
4101         `Vucs_to_mule_table'
4102         (mule_to_ucs_table): renamed from `Vmule_to_ucs_table'.
4103         (set-ucs-char): New function.
4104         (ucs_to_char): New function.
4105         (ucs-char): New function.
4106         (set-char-ucs): New function.
4107         (char-ucs): New function.
4108         (decode_ucs4): Use `ucs_to_char'.
4109         (complex_vars_of_mule_coding): Abolish `ucs-to-mule-table' and
4110         `mule-to-ucs-table'.
4111
4112 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
4113
4114         * chartab.h: EXFUN `Fget_char_table'.
4115
4116         * file-coding.c (encode_ucs4): New function.
4117         (encode_coding_ucs4): Use `encode_ucs4'.
4118
4119 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
4120
4121         * file-coding.c (decode_coding_ucs4): New implementation.
4122
4123 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
4124
4125         * file-coding.c (decode_coding_ucs4): fixed.
4126
4127         * file-coding.c (Vmule_to_ucs_table): New variable.
4128         (mule_char_to_ucs4): New function.
4129         (encode_coding_ucs4): New implementation.
4130         (complex_vars_of_mule_coding): Define variable
4131         `mule-to-ucs-table'.
4132
4133 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
4134
4135         * file-coding.c (decode_coding_utf8): New implementation.
4136
4137 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
4138
4139         * file-coding.c (decode_coding_utf8): fixed.
4140
4141 1998-09-06  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
4142
4143         * file-coding.c (Vucs_to_mule_table): New variable.
4144         (decode_ucs4): Refer `Vucs_to_mule_table'.
4145         (complex_vars_of_mule_coding): Define variable
4146         `ucs-to-mule-table'.
4147
4148 1998-09-04  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
4149
4150         * file-coding.c (detect_coding_ucs4): New function (not
4151         implemented yet).
4152         (decode_coding_ucs4): New function.
4153         (encode_coding_ucs4): New function (not implemented yet).
4154         (detect_coding_utf8): New function (not implemented yet).
4155         (decode_coding_utf8): New function.
4156         (encode_coding_utf8): New function (not implemented yet).
4157         (make-coding-system): New type `ucs4' and `utf8'.
4158         (coding-system-type): Likewise.
4159         (detection_state): Add `ucs4' and `utf8'.
4160         (detect_coding_type): Likewise.
4161         (mule_decode): Use `decode_coding_ucs4' and `decode_coding_utf8'.
4162         (mule_encode): Use `encode_coding_ucs4' and `encode_coding_utf8'.
4163         (decode_ucs4): New function (very incomplete).
4164         (syms_of_mule_coding): Add `ucs4' and `utf8'.
4165
4166         * file-coding.h: Add definitions for UCS-4 and UTF-8.
4167
4168 1999-03-08  Martin Buchholz  <martin@xemacs.org>
4169
4170         * mule-charset.c:
4171         (non_ascii_valid_char_p):
4172         (lookup_composite_char):
4173         (composite_char_string):
4174         (make-composite-char):
4175         (composite-char-string):
4176         (syms_of_mule_charset):
4177         (complex_vars_of_mule_charset):
4178         * mule-charset.h (LEADING_BYTE_COMPOSITE):
4179         (CHAR_LEADING_BYTE):
4180         (MAKE_CHAR):
4181         * file-coding.h (CODING_STATE_COMPOSITE):
4182         (CODING_STATE_ISO2022_LOCK):
4183         (iso_esc_flag):
4184         (LEADING_BYTE_COMPOSITE):
4185         * file-coding.c (struct iso2022_decoder):
4186         (decoding_closer):
4187         (reset_iso2022):
4188         (parse_iso2022_esc):
4189         (encode_coding_iso2022):
4190         #ifdef out all composite character support using
4191         #ifdef ENABLE_COMPOSITE_CHARS
4192
4193         * alloc.c: Define lrecord_coding_system only if ! FILE_CODING
4194
4195 1999-03-04  Takeshi YAMADA <yamada@cslab.kecl.ntt.co.jp>
4196
4197         * fns.c (Fbase64_encode_string): Calculate `allength' in the same
4198         way of `Fbase64_encode_region'.
4199
4200 1999-02-18  Katsumi Yamaoka   <yamaoka@jpl.org>
4201
4202         * fns.c (base64_encode_1): Don't add a newline at the tail.
4203
4204 1999-03-08  Andy Piper  <andy@xemacs.org>
4205
4206         * menubar-msw.c (displayable_menu_item): correct off-by-one &
4207         handling.
4208
4209 1999-03-07  Martin Buchholz  <martin@xemacs.org>
4210
4211         * console-stream.h (struct stream_console):
4212         * event-unixoid.c (event_stream_unixoid_select_console):
4213         (event_stream_unixoid_unselect_console):
4214         * print.c (Fexternal_debugging_output):
4215         * sysdep.c (reset_one_device):
4216         * console-stream.c (stream_init_console):
4217         (stream_delete_console):
4218         (allocate_stream_console_struct): move into stream_init_console.
4219         (free_stream_console_struct): move into stream_delete_console.
4220         Use `fd' only for file descriptors.
4221         Therefore, rename members of struct stream_console.
4222
4223         * systime.h: Unix98 says sys/time.h should define select(), but
4224         some systems define that in unistd.h.  So include that file always.
4225
4226         * glyphs.h (MAYBE_IIFORMAT_METH): Don't use leading `_'.  Avoid
4227         multiple evaluation of first arg.  Do proper do {} while (0) wrapping.
4228         (HAS_IIFORMAT_METH_P): Prevent macro from being used in
4229         non-boolean context
4230         (MAYBE_IIFORMAT_DEVMETH): Use standard internal macro naming convention.
4231
4232         * EmacsShell.c:
4233         * balloon_help.c:
4234         Add #include <stdio.h>.
4235         Some versions of assert.h use printf() without #include'ing stdio.h
4236
4237         * free-hook.c (blocktype): Add gcpro5_type to blocktype.
4238         (log_gcpro): Remove unused variable FRAME.
4239         (show_gcprohist): Ansify.
4240         Comment the #endif's
4241
4242         * frame-x.c (x_delete_frame): Don't use FRAME_X_SHELL_WIDGET(f)
4243         after it's just been XtDestroy'ed!
4244
4245 1999-02-18  Martin Buchholz  <martin@xemacs.org>
4246
4247         * opaque.c (print_opaque):
4248         (sizeof_opaque):
4249         (equal_opaque):
4250         (hash_opaque):
4251         Egcs 1.1.1 seems to have a bug where
4252         INTP (p->size_or_chain)
4253         will crash XEmacs.  Fix by introducing intermediate variable.
4254
4255         * sound.c (Fdevice_sound_enabled_p): Fix compiler warning.
4256
4257         * dired.c (Fdirectory_files):
4258         (Ffile_name_completion):
4259         (Ffile_name_all_completions):
4260         (file_name_completion):
4261         - Use `directory' instead of `dirname' to sync with FSF Emacs and
4262         avoid compiler warnings.
4263         - Fix up docstrings so that C variables match documentation.
4264
4265 1999-03-05  Martin Buchholz  <martin@xemacs.org>
4266
4267         * alloc.c: (garbage_collect_1): Reorg code to make scope of local
4268         variables as small as possible to help out the compiler and the maintainer.
4269
4270         * alloc.c: (disksave_object_finalization):
4271         Set all the *-load-path variables to
4272         nil, not just load-path itself.  This gets the locate-file hash
4273         tables garbage collected BEFORE dump, and has the side effect of
4274         preventing crashes on OSF4.0+egcs.
4275
4276         * alloc.c:
4277         * gdbinit:
4278         * dbxrc:
4279         - Clean up gdb/dbx debugging support.
4280         - Storing an EMACS_INT in an enum is not 64-bit clean!
4281         - So change the enum to a set of separate variables.
4282         - Add test cases to help debug the debugging support!
4283         - Add `lisp-shadows' and `run-temacs' targets for dbx.
4284         - Both dbx and gdb have been tested now.
4285
4286 1999-03-05  XEmacs Build Bot <builds@cvs.xemacs.org>
4287
4288         * XEmacs 21.2.12 is released
4289
4290 1999-02-16  Kazuyuki IENAGA  <ienaga@jsys.co.jp>
4291
4292         * device-x.c: Support to find best visual without flashing.
4293
4294 1999-03-02  Paul Keusemann  <pkeusem@visi.com>
4295
4296         * database.c (berkdb_map): Add flags argument to cursor call (must
4297           be 0 according to docs) required for Berkeley DB 2.6.4 and later.
4298
4299 1999-03-03  Martin Buchholz  <martin@xemacs.org>
4300
4301         * hash.c:
4302         * hash.h:
4303         General cleanup.  Get free-hook.c working again.
4304         Remove unused functions:
4305         make_strings_hash_table, copy_hash, expand_hash_table.
4306
4307         * malloc.c:
4308         * mem-limits.h:
4309         Always use new ANSI-style function prototypes.
4310
4311         * unexalpha.c (unexec): Never use implicit int.
4312
4313         * sgiplay.c (close_sound_file):
4314         (play_sound_file):
4315         (restore_audio_port):
4316         (play_sound_data):
4317         (audio_initialize):
4318         (play_internal):
4319         (drain_audio_port):
4320         (write_mulaw_8_chunk):
4321         (write_linear_chunk):
4322         (write_linear_32_chunk):
4323         (initialize_audio_port):
4324         (open_audio_port):
4325         (set_channels):
4326         (set_output_format):
4327         (adjust_audio_volume):
4328         (get_current_volumes):
4329         (parse_snd_header):
4330         Always use new ANSI-style function prototypes.
4331         Use unistd.h for missing prototypes.
4332
4333         * unexelfsgi.c (round_up):
4334         (find_section):
4335         (unexec): Always use new ANSI-style function prototypes
4336
4337         * elhash.c (struct Lisp_Hash_Table): rename golden to golden_ratio
4338
4339         * console.h (struct console_methods): Always use full ANSI prototypes
4340
4341         * emacs.c (__sti__iflPNGFile_c___): Always use full ANSI prototypes
4342
4343 1999-03-02  Andy Piper  <andy@xemacs.org>
4344
4345         * event-stream.c (init_event_stream): make sure native mswindows
4346         gets an appropriate event loop.
4347
4348 1999-02-22  Andy Piper  <andy@xemacs.org>
4349
4350         * frame-msw.c (mswindows_make_frame_visible): use SW_SHOW rather
4351         than SW_SHOWNORMAL to prevent resizing of maximised frames.
4352         (mswindows_raise_frame): remove comment.
4353
4354 1999-03-01  XEmacs Build Bot <builds@cvs.xemacs.org>
4355
4356         * XEmacs 21.2.11 is released
4357
4358 1999-02-25  SL Baur  <steve@xemacs.org>
4359
4360         * mule-charset.c (Qleading_byte): New variable to implement
4361         charset-leading-byte function.
4362         (Fcharset_property): Use it.
4363         (syms_of_mule_charset): Initialize it.
4364         From Kazuyuki IENAGA <ienaga@jsys.co.jp>
4365
4366 1999-02-17  Kazuo Oishi <oishi@ae.agr.yamaguchi-u.ac.jp>
4367
4368         * glyphs-x.c (cononvert_EImage_to_XImage): correct
4369         bytes per pixel counting.
4370
4371 1999-02-15  Andy Piper  <andy@xemacs.org>
4372
4373         * s/cygwin32.h (BROKEN_SIGIO): don't define this as it causes
4374         major lockups.
4375
4376 1999-02-16  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
4377
4378         * fns.c (Fbase64_encode_string): New optional argument
4379         `NO_LINE_BREAK'.
4380
4381 1999-02-16  Martin Buchholz  <martin@xemacs.org>
4382
4383         * gdbinit:  Fix up commands to run temacs.  Add lisp-shadows command.
4384         * alloc.c (xcalloc):  undef xcalloc, just like xmalloc
4385
4386 1999-02-10  Martin Buchholz  <martin@xemacs.org>
4387
4388         * s/bsdos4.h: New file.  Port to BSDI BSD/OS 4.0.
4389         * xintrinsic.h:  Redo CONST support for X11 R4 compatibility.
4390
4391 1999-02-05  XEmacs Build Bot <builds@cvs.xemacs.org>
4392
4393         * XEmacs 21.2.10 is released
4394
4395 1999-02-02  Gleb Arshinov  <gleb@cs.stanford.edu>
4396
4397         * process-nt.c (nt_send_process):
4398         Fix for process-send-region/process-send-string breaking when size
4399         of the input > 128 chars: change maximum chunk size for process
4400         stream from 512 to 128, thus guaranteeing that ntpipe_shove_writer
4401         succeeds.
4402
4403 1999-02-02  XEmacs Build Bot <builds@cvs.xemacs.org>
4404
4405         * XEmacs 21.2.9 is released
4406
4407 1999-01-30  Martin Buchholz  <martin@xemacs.org>
4408
4409         * bytecode.c (funcall_compiled_function): Call
4410         UNBIND_TO_GCPRO instead of UNBIND_TO_GCPRO_VARIABLES_ONLY.
4411
4412         * backtrace.h (UNBIND_TO_GCPRO_VARIABLES_ONLY):
4413         #ifdef 0 out unused macro.
4414
4415 1999-01-27  Martin Buchholz  <martin@xemacs.org>
4416
4417         * gui.c (gui_parse_item_keywords_internal): Make static.
4418
4419 1999-01-21  Andy Piper  <andy@xemacs.org>
4420
4421         * glyphs-msw.c: add xface support.
4422         (mswindows_xface_instantiate): new function copied from glyphs-x.c
4423         (image_instantiator_format_create_glyphs_mswindows): do device
4424         specific initialisation for xfaces.
4425         (xbm_create_bitmap_from_data): line data must be padded to a word
4426         boundary.
4427
4428         * glyphs-x.c (xface_validate): moved to glyphs.c
4429         (xface_normalize): ditto.
4430         (xface_possible_dest_types): ditto.
4431         (image_instantiator_format_create_glyphs_x): do device specific
4432         initialisation for xfaces.
4433
4434         * glyphs.h: declare xface symbol.
4435
4436         * glyphs.c: move generic xface support here.
4437         (xface_validate): moved from glyphs-x.c
4438         (xface_normalize): ditto.
4439         (xface_possible_dest_types): ditto.
4440         (image_instantiator_format_create): xface declarations moved from
4441         glyphs-x.c.
4442
4443 1999-01-14  Adrian Aichner  <adrian@xemacs.org>
4444
4445         * event-stream.c (vars_of_event_stream): Fixing documentation.
4446
4447 1999-01-17  Gunnar Evermann  <ge204@eng.cam.ac.uk>
4448
4449         * glyphs-eimage.c (gif_instantiate): Correct handling of
4450         interlaced gifs to avoid writing past the end of the eimage
4451         buffer.
4452
4453 1999-01-13  Hrvoje Niksic  <hniksic@srce.hr>
4454
4455         * search.c (Freplace_match): Handle single backslash at end of
4456         NEWTEXT correctly.
4457
4458 1999-01-12  William M. Perry  <wmperry@aventail.com>
4459
4460         * eldap.c (Fldap_open): slow down interrupts around ldap_open to
4461           avoid connection errors.
4462
4463 1999-01-12  Andy Piper  <andy@xemacs.org>
4464
4465         * redisplay-output.c (redisplay_update_line): backout change that
4466         shouldn't have gone ine.
4467
4468 1999-01-09  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
4469
4470         * eldap.c (vars_of_ldap): Do no provide `ldap' here since it may
4471         collide with ldap.el
4472
4473 1999-01-11  Andy Piper  <andy@xemacs.org>
4474
4475         * redisplay.h (DISPLAY_LINE_HEIGHT): new macro.
4476         (DISPLAY_LINE_YPOS): new macro.
4477
4478         * redisplay-msw.c (mswindows_output_string): use it.
4479         (mswindows_output_pixmap): ditto.
4480         (mswindows_output_display_block): ditto.
4481
4482         * redisplay-output.c (redisplay_output_display_block): new
4483         function. just call the devmeth, maybe insert some generic code
4484         here later.
4485         (compare_display_blocks): use it.
4486         (output_display_line): ditto.
4487         (redisplay_unmap_subwindows_maybe): new function. potentially
4488         unmap subwindows in the given area.
4489
4490         * glyphs.c (reset_subwindow_cachels): unmap subwindows that we are
4491         resetting.
4492
4493 1999-01-10  J. Kean Johnston  <jkj@sco.com>
4494
4495         * Makefile.in.in: Set value of moduledir
4496         - Changed DUMPENV to include $(MODULEPATH)
4497         - Added install rule to install header files for use by ellcc.
4498
4499         * config.h.in: Added INHIBIT_SITE_MODULES
4500         - Added HAVE__DLERROR
4501         - Added HAVE_DLFCN_H
4502         - Added DLSYM_NEEDS_UNDERSCORE
4503
4504         * dll.c: Removed.
4505
4506         * emodules.c: New file containing dynamic loading code.
4507
4508         * emodules.h: New file.
4509
4510         * emacs.c: Added variables Vmodule_directory,
4511         Vsite_module_directory, Vconfigure_module_directory and
4512         Vconfigure_site_module_directory.
4513         - (main_1): Added new variable inhibit_site_modules and command
4514         line options `-no-site-modules' and `--no-site-modules'.
4515         - (main_1): Call syms_of_module() instead of syms_of_dll().
4516         - (main_1): Call vars_of_module().
4517         - (vars_of_emacs): Introduce inhibit-site-modules,
4518         module-directory, configure-module-directory,
4519         site-module-directory, and configure-site-module-directory to the
4520         Lisp reader.
4521
4522         * lisp.h: Declare load_module and list_modules, as well as
4523         Vmodule_directory, Vsite_module_directory,
4524         Vconfigure_module_directory and Vconfigure_site_module_directory.
4525
4526         * paths.h.in: Added PATH_MODULESEARCH and PATH_SITE_MODULES.
4527         - Added correct support for site-lisp directory.
4528
4529         * symbols.c (defsubr): Modified to allow modules to add new subrs
4530         after dump time.
4531         - (defsubr_macro): Same.
4532         - (defvar_magick): Only use purespace when not initialized, so
4533         that loaded modules can still add symbols.
4534
4535         * symsinit.h: Add definitions for syms_of_module(),
4536         vars_of_module().  Removed syms_of_dll().
4537
4538         * sysdll.c: Include dlfcn.h if HAVE_DLFCN_H is defined.
4539         - (dll_variable): Take DLSYM_NEEDS_UNDERSCORE into account.
4540         - (dll_error): use _dlerror() if HAVE__DLERROR is defined.
4541
4542         * s/sco5-shr.h (C_SWITCH_SYSTEM): Correct for modern gcc and
4543         explicitly pass -belf for native cc.
4544
4545         * s/sco5.h (LIB_GCC): Use -print-libgcc-file-name instead of
4546         hard-coding the library name.
4547
4548 1999-01-01    <martin@xemacs.org>
4549
4550         * device-x.c (Fx_set_font_path):
4551         Add proper cast to permit compilation under C++.
4552
4553         * buffer.c (directory_is_current_directory):
4554         Add proper casts to permit compilation under C++.
4555
4556 1998-12-30  Damon Lipparelli  <lipp@primus.com>
4557
4558         * event-msw.c (mswindows_wnd_proc):
4559           Fixed failure when building with MSVC 5.
4560
4561 1998-12-29  Martin Buchholz  <martin@xemacs.org>
4562
4563         * file-coding.c (decode_coding_iso2022):
4564         - Prevent crash when decoding ISO7/Lock detected files
4565         - the usual martin fiddling
4566
4567 1998-12-29  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4568
4569         * event-msw.c:
4570           glyphs-msw.c:
4571           Fixed failures when building with MSVC.
4572         * unexnt.c (dump_bss_and_heap):
4573           Removed compiler warning by removing bss_data variable.
4574
4575 1998-12-18  Jim Radford  <radford@robby.caltech.edu>
4576
4577         * device-x.c (Fx_set_font_path, Fx_get_font_path): New functions
4578         so that packages that distribute their own fonts can access them.
4579
4580 1998-12-28  Andy Piper  <andy@xemacs.org>
4581
4582         * glyphs-msw.c (mswindows_button_instantiate): cope with buttons
4583         that have an image provided.
4584
4585         * glyphs.h: add Q_image decl.
4586
4587         * glyphs-widget.c new functionality allowing images in
4588         widgets.
4589         (check_valid_glyph_or_image): new function to validate
4590         glyphs passed in through :image.
4591         (widget_normalize): new function. convert :image parameters into
4592         real glyphs if not already so.
4593         (widget_instantiate_1): mess with size parameters to be similar to
4594         :image if provided.
4595         (syms_of_glyphs_widget): new keyword :image.
4596         (image_instantiator_format_create_glyphs_widget): normalize
4597         buttons and allow :image.
4598
4599 1998-12-27  Andy Piper  <andy@xemacs.org>
4600
4601         * frame-msw.c (mswindows_init_frame_1): warning elimination.
4602
4603         * glyphs-widget.c (check_valid_anything): no-op function.
4604         (check_valid_callback): check callbacks in gui_items.
4605         (check_valid_symbol): as it sounds.
4606         (check_valid_string_or_vector): ditto.
4607         (widget_validate): modified for descriptors that are vectors or
4608         sequences of keyword/val pairs.
4609         (widget_instantiate_1): ditto.
4610         (image_instantiator_format_create_glyphs_widget): allow gui_item
4611         keywords in the instantiator.
4612
4613         * gui.c (gui_parse_item_keywords_internal): renamed from
4614         gui_parse_item_keywords but taking error behaviour.
4615         (gui_parse_item_keywords): use it.
4616         (gui_parse_item_keywords_no_errors): ditto.
4617         (gui_item_add_keyval_pair): add Error_behavior flag and only
4618         signal invalid keywords if required.
4619
4620         * gui.h: new gui signatures.
4621
4622         * menubar.c (menu_parse_submenu_keywords): use new
4623         gui_item_add_keyval_pair signature.
4624
4625         * s/cygwin32.h: modify PTY_ITERATION to eliminate warnings.
4626
4627 1998-12-28  Martin Buchholz <martin@xemacs.org>
4628
4629         * XEmacs 21.2.8 is released.
4630
4631 1998-12-28  Martin Buchholz  <martin@xemacs.org>
4632
4633         * editfns.c (get_home_directory):
4634         (user-home-directory): Simplify.
4635
4636
4637         * callproc.c (child_setup):
4638         - Environment variables were being passed to inferior processes
4639           using internal encoding.
4640         - Convert to external encoding.
4641         - Rename local var `tem' to better name `tail'.
4642         - Use Flength instead of `manual' calculation.
4643
4644         * buffer.c (kill-buffer):
4645         (record-buffer):
4646         (set-buffer-major-mode):
4647         (current-buffer):
4648         - Fix up parameter names to correspond to docstrings.
4649         - Don't use `bufname' when a buffer will do as well.
4650         - Remove one unneeded GCPRO.
4651
4652         * buffer.h (initial_directory):
4653         * buffer.c (init_initial_directory):
4654         - use correct conversions between internal and external format.
4655         (directory_is_current_directory): new function
4656         (init_buffer): convert initial_directory to internal format.
4657         - solve crashes when current working directory is non-ASCII.
4658
4659         * alloc.c (xmalloc):
4660         (xcalloc):
4661         (xrealloc):
4662         - remove stupid casts, since XEmacs requires an ANSI C system.
4663         (lrecord_type_index): replace abort() with more readable assert().
4664
4665         (reset_lcrecord_stats): remove.
4666         (sweep_lcrecords_1):
4667         - replace call to reset_lcrecord_stats() with call to xzero().
4668
4669 1998-12-27  Martin Buchholz  <martin@xemacs.org>
4670
4671         * process-unix.c (unix_create_process):
4672         - Fix crash invoking program with non-ASCII name.
4673           Try invoking xemacs with SHELL=/bin/sh, then M-x shell.
4674         - Remove unused variable `env'.
4675         - Rename `temp' to better name `save_errno'.
4676         - Reorganize code for clarity.  But still too chicken to nuke the
4677           BSD 4.2 support.
4678
4679 1998-12-24  Martin Buchholz <martin@xemacs.org>
4680
4681         * XEmacs 21.2.7 is released.
4682
4683 1998-12-23  Martin Buchholz  <martin@xemacs.org>
4684
4685         * glyphs.c (decode_device_ii_format):
4686         - Fix indentation.
4687         - Use GET_C_STRING_FILENAME_DATA_ALLOCA with char *, not Extbyte *.
4688
4689         * glyphs-x.c (x_subwindow_instantiate):
4690         - A image instance mask was being assigned to a image instance type!
4691         - X_SUBWINDOW_INSTANCE_DATA (ii) is not an lvalue in C++.
4692
4693         * glyphs-msw.c (mswindows_initialize_dibitmap_image_instance):
4694         Fix indentation.
4695         * glyphs-x.h: Make indentation consistent.
4696
4697         * emacs.c (Fdump_emacs): Remove Steve Martin merge artifacts.
4698
4699         * glyphs-widget.c (check_valid_glyph): Warning suppression.
4700         - Make it static
4701         - #ifdef it out, since it's not actually used yet (FIX THIS!)
4702
4703         * glyphs-widget.c:
4704         * glyphs.h:
4705         Move declarations of decode_device_ii_format and
4706         decode_image_instantiator_format into glyphs.h where they belong.
4707
4708 1998-12-22  Martin Buchholz  <martin@xemacs.org>
4709
4710         * frame-x.c (x_delete_frame): Revert part of my changes at the
4711         suggestion of Gunnar Evermann - unfortunately no one really
4712         understands this code.
4713
4714         * callproc.c (init_callproc): code cleanup.
4715
4716         * free-hook.c (malloc):
4717         (check_malloc):
4718         (__free_hook):
4719         (__malloc_hook):
4720         (__realloc_hook):
4721         (block_input_malloc):
4722         (block_input_realloc):
4723         * device-x.c (x_delete_device):
4724         * emacs.c (voodoo_free_hook):
4725         * events.c (print_event):
4726         (CHECK_EVENT_TYPE):
4727         (CHECK_EVENT_TYPE2):
4728         (CHECK_EVENT_TYPE3):
4729         Use proper prototypes.
4730         Make C_E_T macros a little faster.
4731         Pedantic fiddly little changes.  You really don't care.
4732
4733 1998-12-22  Andy Piper  <andy@xemacs.org>
4734
4735         * redisplay-output.c (redisplay_clear_region): make sure that
4736         fg/bg colors get set even when we are in the border area.
4737
4738 1998-12-13  Martin Buchholz  <martin@xemacs.org>
4739
4740         * console-msw.c: Function definitions follow coding standards
4741         - This prevents e.g. find-tag on Lisp_Event finding DEVENT
4742
4743 1998-12-11  Martin Buchholz  <martin@xemacs.org>
4744
4745         * events.h (struct timeout_data):
4746         * event-tty.c (tty_timeout_to_emacs_event):
4747         * event-msw.c (mswindows_wm_timer_callback):
4748         * event-Xt.c (Xt_timeout_to_emacs_event):
4749         * event-msw.c (mswindows_cancel_dispatch_event):
4750         Make sure Lisp_Objects inside events are initialized to Qnil, not
4751         Qnull_pointer, which is now illegal.
4752
4753 1998-12-10  Martin Buchholz  <martin@xemacs.org>
4754
4755         * lisp.h: Fix up prototypes to match alloc.c
4756
4757 1998-12-08  Martin Buchholz  <martin@xemacs.org>
4758
4759         * windowsnt.h: Remove `support' for using index and rindex
4760
4761         * filelock.c (current_lock_owner):
4762         - Change uses of index -> strchr, rindex -> strrchr
4763
4764 1998-12-07  Martin Buchholz  <martin@xemacs.org>
4765
4766         * sysdep.c (set_descriptor_non_blocking):
4767         Since O_NONBLOCK is now always #defined, make use of fcntl
4768         conditional on F_SETFL being defined.
4769
4770         * console-msw.c (DHEADgER):
4771         (DOPAQUE_DATA):
4772         (DEVENT):
4773         (DCONS):
4774         (DCONSCDR):
4775         (DSTRING):
4776         (DVECTOR):
4777         (DSYMBOL):
4778         (DSYMNAME):
4779         - max_align_t should not be visible to the user of the
4780           XOPAQUE_DATA macro.
4781         - use Bufbyte instead of char
4782         - parens around (FOOP (obj)) are always redundant.
4783           If they were necessary, we should fix the macro instead.
4784         - Always use string_data(foo) instead of foo->data.
4785
4786
4787 1998-12-06  Martin Buchholz  <martin@xemacs.org>
4788
4789         * frame-msw.c (mswindows_init_frame_1):
4790         - use make_lisp_hash_table, not Fmake_hash_table
4791         - include elhash.h
4792
4793         * lisp.h:
4794         * alloc.c (make_vector): remove travesty
4795         (Fmake_vector):
4796         (make_pure_vector):
4797         (pure_cons):
4798         (make_bit_vector_internal):
4799         (make_bit_vector):
4800         (make_bit_vector_from_byte_vector):
4801         (Fmake_bit_vector):
4802         - make vector_equal a little faster.
4803         - Don't use variable name `new'.
4804         - Use size_t instead of EMACS_INT.
4805         - usual Martin-style pointless bit-twiddling.
4806
4807         * fns.c (mapcar1):
4808         (Fmapconcat):
4809         (Fmapcar):
4810         (Fmapvector):
4811         Make mapcar faster.  In particular, make
4812           (mapc #'identity long-string)
4813         MUCH faster under Mule.
4814         * tests/automated/lisp-tests.el: Test 'em!
4815
4816         * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
4817         bytecode.
4818
4819 1998-12-01  Martin Buchholz  <martin@xemacs.org>
4820
4821         * menubar-x.c (menu_item_descriptor_to_widget_value_1): Always use
4822         Qnil, not NULL, to initialize `null' Lisp_Objects.
4823
4824 1998-11-29  Hrvoje Niksic  <hniksic@srce.hr>
4825
4826         * specifier.c (display_table_validate): Update.
4827
4828         * redisplay.c (create_text_block): Use them.
4829
4830         * glyphs.c (display_table_entry): New function.
4831         (get_display_tables): Ditto.
4832
4833 1998-12-15  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
4834
4835         * eldap.c (toplevel): Mention that eldap.c compiles with
4836         OpenLDAP libs
4837         (Fldap_open): Use `GET_C_STRING_OS_DATA_ALLOCA'
4838         (Fldap_search_internal): Ditto
4839
4840 1998-12-11  Martin Buchholz  <martin@xemacs.org>
4841
4842         * event-msw.c (mswindows_cancel_dispatch_event):
4843         Gratuitous code prettification
4844
4845
4846 1998-12-07  Hrvoje Niksic  <hniksic@srce.hr>
4847
4848         * fns.c (Fnconc): Fix use of wrong_type_argument().
4849
4850         * floatfns.c (Ffloat): Fix docstring.
4851         (Ffloat): Fix use of wrong_type_argument().
4852         (Fabs): Ditto.
4853         (extract_float): Ditto.
4854         (Fceiling): Ditto.
4855         (Fround): Ditto.
4856         (Ftruncate): Ditto.
4857
4858 1998-12-06  Martin Buchholz  <martin@xemacs.org>
4859
4860         * frame-msw.c (mswindows_init_frame_1):
4861         - use make_lisp_hash_table, not Fmake_hash_table
4862         - include elhash.h
4863
4864         * lisp.h:
4865         * alloc.c (make_vector): remove travesty
4866         (Fmake_vector):
4867         (make_pure_vector):
4868         (pure_cons):
4869         (make_bit_vector_internal):
4870         (make_bit_vector):
4871         (make_bit_vector_from_byte_vector):
4872         (Fmake_bit_vector):
4873         - make vector_equal a little faster.
4874         - Don't use variable name `new'.
4875         - Use size_t instead of EMACS_INT.
4876         - usual Martin-style pointless bit-twiddling.
4877
4878         * fns.c (mapcar1):
4879         (Fmapconcat):
4880         (Fmapcar):
4881         (Fmapvector):
4882         Make mapcar faster.  In particular, make
4883           (mapc #'identity long-string)
4884         MUCH faster under Mule.
4885         * tests/automated/lisp-tests.el: Test 'em!
4886
4887         * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
4888         bytecode.
4889
4890 1998-12-02  Didier Verna  <verna@inf.enst.fr>
4891
4892         * menubar-x.c (menu_item_descriptor_to_widget_value_1): set the
4893         accelerator field to nil for labels.
4894
4895 1998-12-16  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4896
4897         * menubar-msw.c (displayable_menu_item):
4898           Escape occurrences of '&' and support occurrences of the
4899          '%_' accelerator indicator in menus.
4900
4901 1998-11-26  Didier Verna  <verna@inf.enst.fr>
4902
4903         * dired.c (Fdirectory_files): use make_string instead of
4904         make_ext_string on the filename. The conversion external->internal
4905         format is already done in sys_readdir.
4906
4907 1998-12-15  Gunnar Evermann  <ge204@eng.cam.ac.uk>
4908
4909         * glyphs.c (normalize_image_instantiator): GCPRO instantiator
4910
4911 1998-12-16  Jonathan Harris  <jhar@tardis.ed.ac.uk>
4912
4913         * event-msw.c
4914           (Belatedly) added Kirill to list of file's authors.
4915           emacs_mswindows_quit_p: Don't process WM_PAINT messages in
4916           quit checking. WM_PAINT messages cause redisplay, but
4917           windows' states are not necessarily stable when this function
4918           gets called.
4919
4920 1998-12-17  Andy Piper  <andy@xemacs.org>
4921
4922         * strftime.c (zone_name): CONSTify.
4923
4924 1998-12-15  Andy Piper  <andy@xemacs.org>
4925
4926         * glyphs-msw.c (mswindows_combo_instantiate): ditto.
4927         (mswindows_widget_property): return Qunbound when no property available.
4928         (mswindows_button_property): ditto.
4929         (mswindows_combo_property): ditto.
4930         (mswindows_widget_set_property): ditto.
4931
4932         * glyphs-widget.c (check_valid_item_list): use properties.
4933
4934         * glyphs.h (struct Lisp_Image_Instance): we have properties now.
4935
4936         * glyphs.c (Fset_image_instance_property): allow setting of arbitrary properties.
4937         (Fimage_instance_property): ditto.
4938         * glyphs-widget.c (widget_property): ditto.
4939         (widget_set_property): ditto.
4940
4941         * frame-msw.c (mswindows_set_frame_pointer): SetCursor() as well
4942         as setting the class cursor so that GC actually changes the
4943         cursor.
4944
4945         * config.h: don't undef MAIL_USE_POP.
4946
4947 1998-12-13  Andy Piper  <andy@xemacs.org>
4948
4949         * glyphs-msw.c
4950         (image_instantiator_format_create_glyphs_mswindows): line ->
4951         label.
4952         (mswindows_label_instantiate): ditto. Play with window flags.
4953         (image_instantiator_format_create_glyphs_mswindows): ditto.
4954         (vars_of_glyphs_mswindows): provide Qlabel as we support it now.
4955
4956         * glyphs-widget.c (widget_instantiate_1): re-jig autosizing to
4957         cope with lines and labels.
4958         (static_instantiate): use widget_instantiate_1.
4959         line -> label.
4960         (image_instantiator_format_create_glyphs_widget): ditto.
4961
4962 1998-12-10  Andy Piper  <andy@xemacs.org>
4963
4964         * Makefile.in.in (objs): add gui.o
4965
4966 1998-12-10  Andy Piper  <andy@xemacs.org>
4967
4968         * gui.c: adjust defines of HAVE_POPUPS so that we can build with
4969         no window system.
4970
4971 1998-12-09  Andy Piper  <andy@xemacs.org>
4972
4973         * glyphs.c (finalize_image_instance): mark glyphs changed when an
4974         image instance is removed so that the subwindow cache gets reset
4975         and thus destroyed images get GC'd.
4976
4977 1998-12-08  Andy Piper  <andy@xemacs.org>
4978
4979         * gui-msw.c (mswindows_handle_gui_wm_command): call
4980         MARK_SUBWINDOWS_CHANGED.
4981
4982         * glyphs-msw.c (mswindows_finalize_image_instance): make sure
4983         subwindows really get deleted.
4984
4985         * redisplay.c: new variable subwindows_changed[_set].
4986         (redisplay_window): use it.
4987         (redisplay_frame): ditto.
4988         (redisplay_device): ditto.
4989         (redisplay_without_hooks): ditto.
4990
4991         * device.h (MARK_DEVICE_SUBWINDOWS_CHANGED): new macro for
4992         subwindows redisplay as per glyphs equivalent.
4993         * redisplay.h: ditto.
4994         (MARK_SUBWINDOWS_CHANGED): ditto.
4995         (RESET_CHANGED_SET_FLAGS): ditto.
4996         * frame.h (MARK_FRAME_SUBWINDOWS_CHANGED): ditto.
4997
4998 1998-12-07  Andy Piper  <andy@xemacs.org>
4999
5000         * frame.c (Fmake_frame): reset subwindow cachels on non-stream
5001         frames.
5002
5003         * redisplay.c (redisplay_frame): invalidate subwindow cachels.
5004
5005         * event-msw.c (mswindows_wnd_proc): catch the various WM_CTLCOLOR*
5006         messages and paint widget glyphs as appropriate with their face fg
5007         & bg.
5008
5009 1998-12-06  Andy Piper  <andy@xemacs.org>
5010
5011         * glyphs-msw.c (vars_of_glyphs_mswindows): provide widget types
5012         here rather than in glyphs-widget - do this because we only want
5013         to provide what is really available.
5014
5015         * glyphs.c (Fimage_instance_property): new function to get the
5016         properties of image instances. wires through to console specific
5017         methods and then to widget specific methods.
5018         (Fset_image_instance_property): ditto but for setting widget properties.
5019         (check_valid_face): make extern so that it can be used elsewhere.
5020
5021         * glyphs-widget.c (widget_property): new function. gets the
5022         properties of widgets in general and wires the function through to
5023         widget specific ones.
5024         (widget_set_property): ditto but for setting widget properties.
5025
5026         * glyphs-msw.c (mswindows_combo_instantiate): Add functionality to
5027         add items to the list. Play with window styles a bit to get the
5028         desired effect.
5029         (mswindows_widget_property): break out specific widget properties.
5030         (mswindows_button_property): new function. gets the checked state
5031         of a button.
5032         (mswindows_combo_property): new function. gets the current
5033         selection in the combo box.
5034         (mswindows_widget_set_property): new function. sets specific
5035         properties of specific widgets.
5036
5037         * glyphs-widget.c (check_valid_item_list): new function. check
5038         that items for a combo-box are just a list of strings.
5039         (combo_validate): new function. check there is an item list.
5040         (widget_instantiate_1): new function. renamed from
5041         widget_instantiate so that we can do slightly different things for
5042         other widgets.
5043         (widget_instantiate): call widget_instantiate_1.
5044         (combo_instantiate): new function to instantiate combo boxes,
5045         defaults height to the pixel height of the number of items in the
5046         box.
5047         (syms_of_glyphs_widget): move widget keywords here.
5048         (image_instantiator_format_create_glyphs_widget): use new combo
5049         functions.
5050
5051 1998-12-04  Andy Piper  <andy@xemacs.org>
5052
5053         * event-msw.c (mswindows_wnd_proc): mule-ize.
5054
5055         * glyphs.c (pixmap_to_lisp_data): mule-ize.
5056
5057         * glyphs-msw.c (extract_xpm_color_names): mule-ize.
5058         (resource_name_to_resource): ditto.
5059         (mswindows_resource_instantiate): ditto.
5060         (mswindows_widget_instantiate): ditto.
5061         (mswindows_widget_set_property): ditto.
5062
5063         * redisplay-output.c (redisplay_output_subwindow): don't show
5064         subwindows if they are obscured at the edge of the frame, emacs
5065         gets into some sort of redisplay loop otherwise.
5066
5067         * gui.h: prototype gui_item_selected_p.
5068
5069         * gui.c (gui_item_selected_p): new function to determine the
5070         selected state of a gui_item.
5071
5072         * frame.h (struct frame): add subwindows_changed flag.
5073
5074         * redisplay.c (redisplay_frame): call update_frame_subwindows ().
5075
5076         * glyphs.c (update_subwindow): new function to update a
5077         subwindow's state.
5078         (update_frame_subwindows): new function to update all the
5079         subwindows on a frame.
5080
5081         * console.h (struct console_methods): add update_subwindow.
5082
5083         * glyphs-msw.c (mswindows_widget_property): return selected state
5084         for selected property.
5085         (mswindows_update_subwindow): new function. updates widget glyphs
5086         in redisplay as per menubars or toolbars e.g. selected state.
5087         (console_type_create_glyphs_mswindows): add update_subwindow.
5088
5089 1998-12-03  Andy Piper  <andy@xemacs.org>
5090
5091         * console-tty.c (syms_of_console_tty): MULE -> FILE_CODING since
5092         tty coding system things are such.
5093
5094         * glyphs-widget.c (widget_face_font_info): new function for
5095         pulling out height and width metrics for a widget's face.
5096         (widget_text_to_pixel_conversion): calculate pixel sizes of text
5097         for widgets.
5098
5099         * event-msw.c (mswindows_drain_windows_queue): translate messages
5100         that are destined for subwindows. This makes edit fields interact
5101         with the keyboard correctly.
5102         nuke warnings by #ifndef'ing out stuff not required by msg select().
5103
5104         * glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM): new
5105         macro defining the iiforma without the symbol required by widget.
5106         (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT): use it.
5107
5108         * general.c (syms_of_general): add Qwidget, Qselected.
5109
5110         * faces.c (complex_vars_of_faces): add widget face inheriting from
5111         gui-element face.
5112
5113 1998-11-09  Andy Piper  <andy@xemacs.org>
5114
5115         * window.h (struct window): add a cache of subwindows on a
5116         per-window basis.
5117
5118         * window.c (mark_window): mark the subwindow_instance_cache.
5119         (allocate_window): initialise the subwindow instance_cache.
5120
5121         * toolbar-x.c (x_output_toolbar): call redisplay_clear_region
5122         instead of the devmeth.
5123         (x_clear_toolbar): ditto.
5124
5125         * redisplay-x.c (x_output_display_block): call
5126         redisplay_output_subwindow for subwindows and widgets.
5127
5128         * redisplay-tty.c (tty_output_display_block): add IMAGE_WIDGET to
5129         types to do nothing for.
5130
5131         * lisp.h: declare new widget/subwindow symbols.
5132
5133         * glyphs.c (image_instantiate): cache subwindows on a per-window
5134         basis.
5135         (subwindow_possible_dest_types): new function for subwindow dest
5136         types.
5137         (subwindow_instantiate): generic instantiation of a
5138         subwindow. specialised by device multi-methods.
5139         (Fsubwindowp): moved from glyphs-x.c. adapted for glyph-based
5140         subwindows.
5141         (Fimage_instance_subwindow_id): ditto.
5142         (Fresize_subwindow): ditto.
5143         (Fforce_subwindow_map): ditto.
5144
5145         * glyphs-x.c (x_print_image_instance): remove subwindow
5146         stuff. Handled genrically in glyphs.c.
5147         (x_image_instance_equal): ditto.
5148         (x_image_instance_hash): ditto.
5149         (x_finalize_image_instance): delete subwindows when required.
5150         (mark_subwindow) (print_subwindow) (finalize_subwindow)
5151         (subwindow_hash) (Fmake_subwindow): deleted because of new,
5152         glyph-based, subwindow implementation.
5153         (Fsubwindow_height) (Fsubwindow_width) (Fsubwindow_xid): aliased
5154         in glyphs.el
5155         (Fsubwindowp) (Fresize_subwindow) (Fforce_subwindow_map): moved to
5156         glyphs.c.
5157         (x_unmap_subwindow): new function to unmap X subwindows.
5158         (x_map_subwindow): new function to map X subwindows.
5159         (x_subwindow_instantiate): new function to instantiate X
5160         subwindows.
5161         (x_resize_subwindow): new function to resize X subwindows.
5162         (console_type_create_glyphs_x): add subwindow functions.
5163         (image_instantiator_format_create_glyphs_x): add device
5164         multi-methods for xpm, xbm and subwindow.
5165
5166         * glyphs.el (subwindow-xid): old alias for new subwindow functions.
5167         (subwindow-width): ditto.
5168         (subwindow-height): ditto.
5169
5170         * glyphs-msw.c (mswindows_widget_instantiate): new function for
5171         generally instantiating ms subwindows. Used by
5172         mswindows_*_instantiate.
5173         (mswindows_edit_instantiate): instantiate an edit field on a
5174         mswindows frame.
5175
5176 1998-11-04  Andy Piper  <andy@xemacs.org>
5177
5178         * symsinit.h: declare new functions.
5179
5180         * redisplay.h: declare new functions.
5181
5182         * redisplay-x.c (x_output_display_block): call
5183         redisplay_clear_region rather than x_clear_region.
5184         (x_output_string): ditto.
5185         (x_output_pixmap): ditto.
5186         (x_clear_to_window_end): ditto.
5187         (x_output_eol_cursor): ditto.
5188         (x_clear_region): only do X specific things. other duties handled
5189         in redisplay_clear_region.
5190
5191         * redisplay-tty.c (tty_clear_region): do tty specific things - some
5192         duties moved to redisplay_clear_region.
5193
5194         * redisplay-output.c (clear_left_border): use
5195         redisplay_clear_region instead of device method.
5196         (clear_right_border): ditto.
5197         (output_display_line): ditto.
5198         (redisplay_output_subwindow): ditto.
5199         (redisplay_clear_top_of_window): ditto.
5200         (redisplay_clear_region): perform duties previously handled by
5201         device methods. call the appropriate device method at the
5202         end. unmap subwindows if necessary.
5203
5204         * redisplay-msw.c (mswindows_output_string): use
5205         redisplay_clear_region instead of mswindows_clear_region.
5206         (mswindows_clear_to_window_end): ditto.
5207         (mswindows_output_display_block): output subwindows when required.
5208         (mswindows_clear_region): only do mswindows specific things,
5209         everything else is now handled in redisplay_clear_region.
5210
5211         * gui.h: add item id hash defines and declare function prototypes.
5212
5213         * gui.c (mark_gui_item): new function for marking gui_items.
5214         (gui_item_hash): generic hash function for generating command ids
5215         for gui_items.
5216
5217         * gui-msw.c: new file.
5218         (mswindows_handle_gui_wm_command): new function to handle widget
5219         callbacks.
5220
5221         * glyphs.h (MAYBE_IIFORMAT_DEVMETH): new function for device
5222         multi-methods.
5223         (IIFORMAT_HAS_SHARED_METHOD): ditto.
5224         (DEFINE_DEVICE_IIFORMAT): ditto.
5225         (INITIALIZE_DEVICE_IIFORMAT): ditto.
5226         (struct Lisp_Image_Instance): add widget and subwindow data plus
5227         appropriate access functions.
5228
5229         * glyphs.c (decode_device_ii_format): new function for decoding
5230         image instantiator functions based on a device type as well as an
5231         image format.
5232         (decode_image_instantiator_format): just call
5233         decode_device_ii_format with nil device.
5234         (add_entry_to_device_ii_format_list): new function for per device
5235         method instances.
5236         (add_entry_to_image_instantiator_format_list): just call
5237         add_entry_to_device_ii_format_list with nil device.
5238         (check_valid_vector): new function.
5239         (instantiate_image_instantiator): instantiate using per-format
5240         method and then per-format-per-device method (device
5241         multi-methods). signal an error if neither is possible.
5242         (mark_image_instance): cope with subwindows and widgets.
5243         (print_image_instance): ditto.
5244         (image_instance_equal): ditto.
5245         (image_instance_hash): ditto.
5246         (allocate_glyph): ditto.
5247         (glyph_width): ditto.
5248         (glyph_height_internal): ditto.
5249         (xpm_instantiate): removed because of device multi-methods.
5250         (mark_subwindow_cachels): new cachel functions for caching
5251         instantiated subwindows on a per-frame basis. mostly copied from
5252         glyph cachel functions.
5253         (update_subwindow_cachel_data): ditto.
5254         (add_subwindow_cachel): ditto.
5255         (get_subwindow_cachel_index): ditto.
5256         (reset_subwindow_cachels): ditto.
5257         (mark_subwindow_cachels_as_not_updated): ditto.
5258         (unmap_subwindow): generic unmapping of subwindows based on cachel
5259         data.
5260         (map_subwindow): ditto.
5261         (initialize_subwindow_image_instance): generic initialisation of
5262         subwindow data.
5263         (syms_of_glyphs): add widget keywords.
5264
5265         * glyphs-x.h (struct x_subwindow_data): convert Lisp_Subwindow to
5266         x_subwindow_data.
5267
5268 1998-11-04  Andy Piper  <andy@xemacs.org>
5269
5270         * glyphs-widget.c: new file for instantiating widget type glyphs.
5271         (widget_possible_dest_types): new general dest type function for
5272         widgets.
5273         (widget_validate): ditto.
5274         (initialize_widget_image_instance): ditto
5275         (widget_instantiate): ditto. Sets up fg/bg, gui_item parsing
5276         before handing on control to device multi-methods.
5277         (syms_of_glyphs_widget): new function.
5278         (image_instantiator_format_create_glyphs_widget): new function,
5279         added placeholders for button, edit, combo, scrollbar
5280         (vars_of_glyphs_widget): new function.
5281
5282         * glyphs-msw.h (WIDGET_INSTANCE_MSWINDOWS_HANDLE): new define for
5283         storing window ids of widgets.
5284
5285         * glyphs-msw.c (mswindows_finalize_image_instance): cope with
5286         deletion of widget and subwindow glyphs.
5287         (mswindows_unmap_subwindow): new device function for unmapping
5288         subwindows on a msw frame.
5289         (mswindows_map_subwindow): ditto.
5290         (mswindows_register_image_instance): register instantiated widgets
5291         with the widget hastable.
5292         (mswindows_button_instantiate): instantiate a button type widget
5293         on an msw frame.
5294         (mswindows_subwindow_instantiate): instanttiate a subwindow on a
5295         mswindows frame.
5296         (image_instantiator_format_create_glyphs_mswindows): add device
5297         multi-methods for xbm, xpm, subwindow, edit and button.
5298
5299         * frame.h (struct frame): add subwindow_cachels dynarr for caching
5300         information about subwindows visible on the current frame. used by
5301         redisplay_clear_region to unmap subwindows as required.
5302
5303         * frame.c (mark_frame): mark subwindow_cachels.
5304         (allocate_frame_core): instantiate subwindow_cachels.
5305
5306         * frame-msw.c (mswindows_init_frame_1): instntiate and mark the
5307         widget hashtable.
5308
5309         * event-msw.c (mswindows_wnd_proc): add call to
5310         mswindows_handle_gui_wm_command to handle widget callbacks.
5311
5312         * emacs.c (main_1): add calls to glyphs-widget initialisation
5313         routines.
5314
5315         * console.h (struct console_methods): add
5316         unmap/map_subwindow_method for use be redisplay_clear_region to
5317         map and unmap subwindows. Remove xpm and xbm stuff - now dealt
5318         with by image instantiator multi-methods. Add
5319         resize_subwindow_method.
5320
5321         * console-stream.c (stream_clear_region): change signature to
5322         match new generic clear region function.
5323
5324         * Makefile.in.in: add glyphs-widget.o to list of objects.
5325
5326         * console-msw.h (struct mswindows_frame): add widget hashtable for
5327         wiring command ids to callbacks.
5328
5329 1998-12-16  Andy Piper  <andy@xemacs.org>
5330
5331         * XEmacs 21.2.6 is released
5332
5333 1998-12-08  Hrvoje Niksic  <hniksic@srce.hr>
5334
5335         * md5.c (Fmd5): Correctly initiate string input stream.
5336
5337         * Makefile.in.in (tests): Add md5-tests.el.
5338
5339 1998-12-06  Martin Buchholz  <martin@xemacs.org>
5340
5341         * lisp.h:
5342         * alloc.c (make_vector): remove travesty
5343         (Fmake_vector):
5344         (make_pure_vector):
5345         (pure_cons):
5346         (make_bit_vector_internal):
5347         (make_bit_vector):
5348         (make_bit_vector_from_byte_vector):
5349         (Fmake_bit_vector):
5350         - make vector_equal a little faster.
5351         - Don't use variable name `new'.
5352         - Use size_t instead of EMACS_INT.
5353         - usual Martin-style pointless bit-twiddling.
5354
5355         * fns.c (mapcar1):
5356         (Fmapconcat):
5357         (Fmapcar):
5358         (Fmapvector):
5359         Make mapcar faster.  In particular, make
5360           (mapc #'identity long-string)
5361         MUCH faster under Mule.
5362         * tests/automated/lisp-tests.el: Test 'em!
5363
5364 1998-12-06  Martin Buchholz  <martin@xemacs.org>
5365
5366         * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
5367         bytecode.
5368
5369 1998-12-13  Martin Buchholz  <martin@xemacs.org>
5370
5371         * console-msw.c: Function definitions follow coding standards
5372         - This prevents e.g. find-tag on Lisp_Event finding DEVENT
5373
5374 1998-12-11  Martin Buchholz  <martin@xemacs.org>
5375
5376         * events.h (struct timeout_data):
5377         * event-tty.c (tty_timeout_to_emacs_event):
5378         * event-msw.c (mswindows_wm_timer_callback):
5379         * event-Xt.c (Xt_timeout_to_emacs_event):
5380         * event-msw.c (mswindows_cancel_dispatch_event):
5381         Make sure Lisp_Objects inside events are initialized to Qnil, not
5382         Qnull_pointer, which is now illegal.
5383
5384 1998-12-10  Martin Buchholz  <martin@xemacs.org>
5385
5386         * lisp.h: Fix up prototypes to match alloc.c
5387
5388 1998-12-09  Andy Piper  <andy@xemacs.org>
5389
5390         * glyphs-msw.c (init_image_instance_from_xbm_inline): don't use
5391         XSETINT for assigning lisp objects.
5392
5393 1998-12-07  Martin Buchholz  <martin@xemacs.org>
5394
5395         * opaque.h:
5396         * console-msw.c (DHEADER):
5397         (DOPAQUE_DATA):
5398         (DEVENT):
5399         (DCONS):
5400         (DCONSCDR):
5401         (DSTRING):
5402         (DVECTOR):
5403         (DSYMBOL):
5404         (DSYMNAME):
5405         - max_align_t should not be visible to the user of the
5406           XOPAQUE_DATA macro.
5407         - use Bufbyte instead of char
5408         - parens around (FOOP (obj)) are always redundant.
5409           If they were necessary, we should fix the macro instead.
5410         - Always use string_data(foo) instead of foo->data.
5411
5412 1998-12-07  Martin Buchholz  <martin@xemacs.org>
5413
5414         * sysdep.c (set_descriptor_non_blocking):
5415         Since O_NONBLOCK is now always #defined, make use of fcntl
5416         conditional on F_SETFL being defined.
5417
5418 1998-12-09  Andy Piper  <andy@xemacs.org>
5419
5420         * menubar-msw.c (mswindows_handle_wm_command): add back in checks
5421         that got removed in the merge
5422
5423 1998-11-30  Greg Klanderman  <greg@alphatech.com>
5424
5425         * dired.c (vars_of_dired): bugfix for previous conditionalization
5426         of user-name-completion on non- Windows NT.
5427
5428 1998-12-08  Martin Buchholz  <martin@xemacs.org>
5429
5430         * windowsnt.h: Remove `support' for using index and rindex
5431
5432         * filelock.c (current_lock_owner):
5433         - Change uses of index -> strchr, rindex -> strrchr
5434
5435 1998-12-06  Martin Buchholz  <martin@xemacs.org>
5436
5437         * frame-msw.c (mswindows_init_frame_1):
5438         - use make_lisp_hash_table, not Fmake_hash_table
5439         - include elhash.h
5440
5441 1998-12-05  XEmacs Build Bot <builds@cvs.xemacs.org>
5442
5443         * XEmacs 21.2.5 is released
5444
5445 1998-11-30  Martin Buchholz  <martin@xemacs.org>
5446
5447         * xselect.c (receive_incremental_selection):
5448         * xselect.c (x_get_window_property):
5449         * xmu.c (XmuReadBitmapDataFromFile):
5450         * xmu.c (XmuCursorNameToIndex):
5451         * xgccache.c (describe_gc_cache):
5452         * xgccache.c (gc_cache_lookup):
5453         * xgccache.c (free_gc_cache):
5454         * xgccache.c (make_gc_cache):
5455         * window.h:
5456         * window.c (map_windows_1):
5457         * window.c (Fother_window_for_scrolling):
5458         * window.c (window_scroll):
5459         * window.c (change_window_height):
5460         * window.c (Fsplit_window):
5461         * window.c (window_left_gutter_width):
5462         * window.c (window_modeline_height):
5463         * window.c (invalidate_vertical_divider_cache_in_window):
5464         * window.c (window_needs_vertical_divider_1):
5465         * window.c (update_mirror_internal):
5466         * window.c (SET_LAST_FACECHANGE):
5467         * widget.c (Fwidget_plist_member):
5468         * unexec.c (copy_text_and_data):
5469         * unexcw.c (copy_executable_and_dump_data_section):
5470         * tooltalk.doc:
5471         * tooltalk.c (struct Lisp_Tooltalk_Pattern):
5472         * tooltalk.c (struct Lisp_Tooltalk_Message):
5473         * toolbar.h (struct toolbar_button):
5474         * toolbar.c (default_toolbar_visible_p_changed_in_window):
5475         * toolbar.c (recompute_overlaying_specifier):
5476         * toolbar.c (toolbar_validate):
5477         * toolbar.c (toolbar_button_at_pixpos):
5478         * toolbar.c (get_toolbar_coords):
5479         * toolbar.c (update_frame_toolbars):
5480         * toolbar-x.c:
5481         * toolbar-msw.c (mswindows_handle_toolbar_wm_command):
5482         * toolbar-msw.c (mswindows_find_toolbar_pos):
5483         * toolbar-msw.c (mswindows_output_toolbar):
5484         * toolbar-msw.c (mswindows_clear_toolbar):
5485         * toolbar-msw.c:
5486         * systty.h:
5487         * syssignal.h:
5488         * sysproc.h:
5489         * sysfile.h:
5490         * sysdll.c:
5491         * sysdep.h:
5492         * sysdep.c (rmdir):
5493         * sysdep.c (sys_fopen):
5494         * sysdep.c (sys_open):
5495         * sysdep.c (tty_init_sys_modes_on_device):
5496         * sysdep.c (get_eof_char):
5497         * sysdep.c (child_setup_tty):
5498         * sysdep.c (set_descriptor_non_blocking):
5499         * syntax.h:
5500         * syntax.c (scan_words):
5501         * syntax.c:
5502         * symsinit.h:
5503         * symeval.h (struct symbol_value_varalias):
5504         * symeval.h (struct symbol_value_forward):
5505         * symbols.c (syms_of_symbols):
5506         * symbols.c (init_symbols_once_early):
5507         * symbols.c (Fbuilt_in_variable_type):
5508         * symbols.c (Fsymbol_value_in_buffer):
5509         * symbols.c (default_value):
5510         * symbols.c (Fset):
5511         * symbols.c (find_symbol_value_quickly):
5512         * symbols.c (store_symval_forwarding):
5513         * symbols.c (set_default_console_slot_variable):
5514         * symbols.c (set_default_buffer_slot_variable):
5515         * symbols.c (verify_ok_for_buffer_local):
5516         * symbols.c (symbol_is_constant):
5517         * symbols.c (oblookup):
5518         * symbols.c (Funintern):
5519         * symbols.c (Fintern):
5520         * symbols.c (check_obarray):
5521         * sunplay.c:
5522         * specifier.h (struct specifier_methods):
5523         * specifier.h:
5524         * specifier.c (specifier_instance):
5525         * specifier.c (specifier_instance_from_inst_list):
5526         * specifier.c (decode_locale_type):
5527         * specifier.c (specifier_equal):
5528         * specifier.c (finalize_specifier):
5529         * specifier.c (prune_specifiers):
5530         * specifier.c (kill_specifier_buffer_locals):
5531         * sound.c (init_native_sound):
5532         * sound.c:
5533         * signal.c (alarm):
5534         * search.c (Fmatch_data):
5535         * search.c (match_limit):
5536         * search.c (Freplace_match):
5537         * search.c (skip_chars):
5538         * search.c (scan_buffer):
5539         * search.c:
5540         * scrollbar.c (specifier_vars_of_scrollbar):
5541         * scrollbar.c (Fscrollbar_set_hscroll):
5542         * scrollbar.c (vertical_scrollbar_changed_in_window):
5543         * scrollbar.c (release_window_mirror_scrollbars):
5544         * scrollbar.c (free_scrollbar_instance):
5545         * scrollbar-x.c:
5546         * scrollbar-msw.c:
5547         * s/msdos.h (O_BINARY):
5548         * s/linux.h:
5549         * s/freebsd.h (LIBS_TERMCAP):
5550         * regex.c (re_match_2_internal):
5551         * regex.c (compile_extended_range):
5552         * regex.c (POP_FAILURE_POINT):
5553         * regex.c (PUSH_FAILURE_POINT):
5554         * redisplay.h (RESET_CHANGED_SET_FLAGS):
5555         * redisplay.h:
5556         * redisplay.h (struct display_line):
5557         * redisplay.h (struct rune):
5558         * redisplay.c (vars_of_redisplay):
5559         * redisplay.c (redisplay_variable_changed):
5560         * redisplay.c (UPDATE_CACHE_RETURN):
5561         * redisplay.c (validate_line_start_cache):
5562         * redisplay.c (mark_redisplay_structs):
5563         * redisplay.c (mark_glyph_block_dynarr):
5564         * redisplay.c (window_line_number):
5565         * redisplay.c (redisplay_frame):
5566         * redisplay.c (redisplay_window):
5567         * redisplay.c (generate_modeline):
5568         * redisplay.c (create_right_glyph_block):
5569         * redisplay.c (create_left_glyph_block):
5570         * redisplay.c (create_text_block):
5571         * redisplay.c:
5572         * redisplay-x.c (x_output_hline):
5573         * redisplay-x.c (x_output_vertical_divider):
5574         * redisplay-tty.c (tty_output_display_block):
5575         * redisplay-output.c (output_display_line):
5576         * redisplay-output.c:
5577         * redisplay-msw.c (mswindows_output_vertical_divider):
5578         * redisplay-msw.c (mswindows_ring_bell):
5579         * redisplay-msw.c (mswindows_output_cursor):
5580         * redisplay-msw.c:
5581         * rangetab.c:
5582         * ralloc.c:
5583         * puresize.h (RAW_PURESIZE):
5584         * profile.c (syms_of_profile):
5585         * profile.c (Fstart_profiling):
5586         * profile.c (sigprof_handler):
5587         * profile.c:
5588         * procimpl.h:
5589         * process.c (vars_of_process):
5590         * process.c (read_process_output):
5591         * process.c (get_process):
5592         * process.c:
5593         * process-unix.c (unix_open_multicast_group):
5594         * process-unix.c (unix_get_tty_name):
5595         * process-unix.c (unix_send_process):
5596         * process-unix.c (unix_reap_exited_processes):
5597         * process-unix.c (unix_create_process):
5598         * process-unix.c (unix_init_process_io_handles):
5599         * process-unix.c (allocate_pty):
5600         * process-unix.c:
5601         * process-nt.c (nt_open_network_stream):
5602         * process-nt.c (nt_update_status_if_terminated):
5603         * process-nt.c (nt_finalize_process_data):
5604         * process-nt.c:
5605         * print.c (debug_short_backtrace):
5606         * print.c (debug_backtrace):
5607         * print.c (print_symbol):
5608         * print.c (print_internal):
5609         * print.c (print_cons):
5610         * print.c (Fwrite_char):
5611         * print.c (print_prepare):
5612         * print.c (canonicalize_printcharfun):
5613         * print.c (output_string):
5614         * print.c:
5615         * opaque.h:
5616         * opaque.c (allocate_managed_opaque):
5617         * opaque.c:
5618         * offix.c (DndSetData):
5619         * objects.c (face_boolean_create):
5620         * objects.c (font_instantiate):
5621         * objects.c (font_create):
5622         * objects.c (color_create):
5623         * objects.c (finalize_font_instance):
5624         * objects.c (finalize_color_instance):
5625         * objects.c:
5626         * objects-x.c (x_font_instance_truename):
5627         * objects-x.c:
5628         * objects-x.c (x_initialize_font_instance):
5629         * objects-x.c (allocate_nearest_color):
5630         * objects-tty.c (tty_initialize_font_instance):
5631         * objects-tty.c (tty_initialize_color_instance):
5632         * objects-msw.c (mswindows_initialize_color_instance):
5633         * ntproc.c (syms_of_ntproc):
5634         * ntproc.c (Fwin32_set_process_priority):
5635         * ntproc.c (sys_spawnve):
5636         * ntproc.c:
5637         * ntheap.c (get_data_end):
5638         * nt.c (period):
5639         * nt.c:
5640         * nt.c (stat):
5641         * nt.c (generate_inode_val):
5642         * nt.c (sys_rename):
5643         * nas.c:
5644         * mule-wnnfns.c (Fwnn_hinsi_number):
5645         * mule-wnnfns.c (Fwnn_yuragi):
5646         * mule-wnnfns.c (Fwnn_common_learn):
5647         * mule-wnnfns.c (Fwnn_suffix_learn):
5648         * mule-wnnfns.c (Fwnn_prefix_learn):
5649         * mule-wnnfns.c (Fwnn_okuri_learn):
5650         * mule-wnnfns.c (Fwnn_complex_conv):
5651         * mule-wnnfns.c (Fwnn_last_is_first):
5652         * mule-wnnfns.c (Fwnn_bmodify_dict_add):
5653         * mule-wnnfns.c (Fwnn_notrans_dict_add):
5654         * mule-wnnfns.c (Fwnn_fiusr_dict_add):
5655         * mule-wnnfns.c (Fwnn_fisys_dict_add):
5656         * mule-wnnfns.c (Fwnn_hinsi_list):
5657         * mule-wnnfns.c (Fwnn_fuzokugo_set):
5658         * mule-wnnfns.c (Fwnn_dict_search):
5659         * mule-wnnfns.c (Fwnn_word_toroku):
5660         * mule-wnnfns.c (Fwnn_hindo_update):
5661         * mule-wnnfns.c (Fwnn_bunsetu_henkou):
5662         * mule-wnnfns.c (Fwnn_kakutei):
5663         * mule-wnnfns.c (Fwnn_begin_henkan):
5664         * mule-wnnfns.c (Fwnn_dict_comment):
5665         * mule-wnnfns.c (Fwnn_dict_add):
5666         * mule-wnnfns.c (Fwnn_open):
5667         * mule-mcpath.c (mc_getcwd):
5668         * mule-coding.c (vars_of_mule_coding):
5669         * mule-coding.c (convert_to_external_format):
5670         * mule-coding.c (encoding_marker):
5671         * mule-coding.c (decoding_marker):
5672         * mule-coding.c (Fcopy_coding_system):
5673         * mule-coding.c (Fmake_coding_system):
5674         * mule-coding.c (Fcoding_system_list):
5675         * mule-coding.c (Ffind_coding_system):
5676         * mule-coding.c (symbol_to_eol_type):
5677         * mule-coding.c:
5678         * mule-charset.c (complex_vars_of_mule_charset):
5679         * mule-charset.c (vars_of_mule_charset):
5680         * mule-charset.c (Fset_charset_ccl_program):
5681         * mule-charset.c (struct charset_list_closure):
5682         * mule-charset.c (Ffind_charset):
5683         * mule-charset.c (make_charset):
5684         * mule-charset.c (non_ascii_valid_char_p):
5685         * mule-charset.c:
5686         * mule-ccl.c (ccl_driver):
5687         * mule-canna.c (c2mu):
5688         * mule-canna.c (Fcanna_henkan_begin):
5689         * mule-canna.c (Fcanna_parse):
5690         * mule-canna.c (Fcanna_store_yomi):
5691         * mule-canna.c (Fcanna_touroku_string):
5692         * mule-canna.c (Fcanna_initialize):
5693         * minibuf.c:
5694         * menubar.c (menu_parse_submenu_keywords):
5695         * menubar-x.c (make_dummy_xbutton_event):
5696         * menubar-x.c (set_frame_menubar):
5697         * menubar-x.c (menu_item_descriptor_to_widget_value_1):
5698         * menubar-x.c:
5699         * menubar-msw.h:
5700         * menubar-msw.c (mswindows_popup_menu):
5701         * menubar-msw.c (mswindows_update_frame_menubars):
5702         * menubar-msw.c (mswindows_handle_wm_command):
5703         * menubar-msw.c (unsafe_handle_wm_initmenu_1):
5704         * menubar-msw.c (unsafe_handle_wm_initmenupopup_1):
5705         * menubar-msw.c (update_frame_menubar_maybe):
5706         * menubar-msw.c (populate_or_checksum_helper):
5707         * menubar-msw.c (empty_menu):
5708         * menubar-msw.c:
5709         * md5.c:
5710         * marker.c (set_marker_internal):
5711         * marker.c (print_marker):
5712         * malloc.c:
5713         * make-src-depend:
5714         * lstream.c (lisp_buffer_rewinder):
5715         * lstream.c (mark_lstream):
5716         * lrecord.h:
5717         * lrecord.h (struct lrecord_header):
5718         * lread.c (readevalloop):
5719         * lread.c (locate_file):
5720         * lread.c (locate_file_in_directory):
5721         * lread.c (Flocate_file):
5722         * lread.c (load_force_doc_string_unwind):
5723         * lread.c (ebolify_bytecode_constants):
5724         * lread.c:
5725         * lisp.h:
5726         * lisp-union.h:
5727         * lisp-disunion.h:
5728         * linuxplay.c (linux_play_data_or_file):
5729         * linuxplay.c (audio_init):
5730         * line-number.c:
5731         * keymap.h:
5732         * keymap.c (describe_map):
5733         * keymap.c (describe_map_mapper):
5734         * keymap.c (Fdescribe_bindings_internal):
5735         * keymap.c (Fsingle_key_description):
5736         * keymap.c (map_keymap_sorted):
5737         * keymap.c (get_relevant_keymaps):
5738         * keymap.c (Flookup_key):
5739         * keymap.c (raw_lookup_key_mapper):
5740         * keymap.c (Fdefine_key):
5741         * keymap.c (Fevent_matches_key_specifier_p):
5742         * keymap.c (key_desc_list_to_event):
5743         * keymap.c (define_key_parser):
5744         * keymap.c (define_key_check_and_coerce_keysym):
5745         * keymap.c (keymap_submaps):
5746         * keymap.c (keymap_store_internal):
5747         * keymap.c (keymap_delete_inverse_internal):
5748         * keymap.c (keymap_store_inverse_internal):
5749         * keymap.c (print_keymap):
5750         * keymap.c (Lisp_Keymap):
5751         * keymap.c:
5752         * intl.c:
5753         * insdel.c (convert_bufbyte_string_into_emchar_dynarr):
5754         * insdel.c (make_gap):
5755         * input-method-xlib.c (get_XIM_input):
5756         * input-method-xlib.c (XIM_init_frame):
5757         * imgproc.c:
5758         * hash.h:
5759         * hash.c:
5760         * gui.c:
5761         * gui-x.c (button_item_to_widget_value):
5762         * gui-x.c (popup_selection_callback):
5763         * glyphs.h (struct image_instantiator_methods):
5764         * glyphs.c (mark_glyph_cachels):
5765         * glyphs.c (Fglyph_type):
5766         * glyphs.c (image_instantiate):
5767         * glyphs.c (image_create):
5768         * glyphs.c (make_image_instance_1):
5769         * glyphs.c (finalize_image_instance):
5770         * glyphs.c:
5771         * glyphs-x.c (finalize_subwindow):
5772         * glyphs-x.c (xface_validate):
5773         * glyphs-x.c (x_locate_pixmap_file):
5774         * glyphs-x.c (convert_EImage_to_XImage):
5775         * glyphs-msw.c:
5776         * glyphs-msw.c (mswindows_resource_instantiate):
5777         * glyphs-msw.c (xpm_to_eimage):
5778         * glyphs-msw.c (convert_EImage_to_DIBitmap):
5779         * glyphs-eimage.c (tiff_instantiate):
5780         * glyphs-eimage.c (png_instantiate):
5781         * glyphs-eimage.c (struct png_error_struct):
5782         * glyphs-eimage.c (gif_memory_storage):
5783         * glyphs-eimage.c:
5784         * gifrlib.h:
5785         * getloadavg.c (getloadavg):
5786         * getloadavg.c:
5787         * gdbinit:
5788         * free-hook.c (log_gcpro):
5789         * free-hook.c (check_malloc):
5790         * free-hook.c (check_free):
5791         * free-hook.c (ROUND_UP_TO_PAGE):
5792         * free-hook.c:
5793         * frame.h (struct frame):
5794         * frame.h:
5795         * frame.c (change_frame_size_1):
5796         * frame.c (allocate_frame_core):
5797         * frame.c:
5798         * frame-x.c (x_focus_on_frame):
5799         * frame-x.c (x_init_frame_2):
5800         * frame-x.c (x_popup_frame):
5801         * frame-x.c (xemacs_XtPopup):
5802         * frame-x.c:
5803         * frame-x.c (Foffix_start_drag_internal):
5804         * frame-x.c (x_cde_destroy_callback):
5805         * frame-x.c (x_wm_hack_wm_protocols):
5806         * frame-tty.c (tty_frame_visible_p):
5807         * frame-msw.c (mswindows_make_frame_invisible):
5808         * frame-msw.c (mswindows_after_init_frame):
5809         * frame-msw.c (mswindows_init_frame_1):
5810         * fns.c (syms_of_fns):
5811         * fns.c (Fbase64_decode_string):
5812         * fns.c (Fnconc):
5813         * fns.c (Ffillarray):
5814         * fns.c (Fobject_plist):
5815         * fns.c (Fget):
5816         * fns.c (Fcanonicalize_lax_plist):
5817         * fns.c (Fcanonicalize_plist):
5818         * fns.c (Fplist_remprop):
5819         * fns.c (Fplist_get):
5820         * fns.c (advance_plist_pointers):
5821         * fns.c (internal_plist_put):
5822         * fns.c (Fnreverse):
5823         * fns.c (Fremassq):
5824         * fns.c (Felt):
5825         * fns.c (Fsubstring):
5826         * fns.c (Fbvconcat):
5827         * fns.c (Flength):
5828         * fns.c (length_with_bytecode_hack):
5829         * fns.c (print_bit_vector):
5830         * fns.c:
5831         * floatfns.c (Ffloor):
5832         * floatfns.c:
5833         * floatfns.c (in_float_error):
5834         * fileio.c (Ffile_modes):
5835         * fileio.c (Fexpand_file_name):
5836         * fileio.c (Fmake_temp_name):
5837         * fileio.c (Ffile_name_nondirectory):
5838         * fileio.c (Ffile_name_directory):
5839         * file-coding.h:
5840         * file-coding.c (vars_of_mule_coding):
5841         * file-coding.c (convert_to_external_format):
5842         * file-coding.c (encoding_marker):
5843         * file-coding.c (decoding_marker):
5844         * file-coding.c (Fcopy_coding_system):
5845         * file-coding.c (Fmake_coding_system):
5846         * file-coding.c (struct coding_system_list_closure):
5847         * file-coding.c (Ffind_coding_system):
5848         * file-coding.c (symbol_to_eol_type):
5849         * file-coding.c:
5850         * faces.h (struct face_cachel):
5851         * faces.c (vars_of_faces):
5852         * faces.c (face_property_was_changed):
5853         * faces.c (mark_face_cachels):
5854         * faces.c (temporary_faces_list):
5855         * faces.c (struct face_list_closure):
5856         * faces.c:
5857         * extents.h (struct extent):
5858         * extents.c (vars_of_extents):
5859         * extents.c (struct copy_string_extents_1_arg):
5860         * extents.c (add_string_extents_mapper):
5861         * extents.c (Fextent_property):
5862         * extents.c (Fset_extent_property):
5863         * extents.c (symbol_to_glyph_layout):
5864         * extents.c (properties_equal):
5865         * extents.c (print_extent):
5866         * extents.c (print_extent_1):
5867         * extents.c (extent_in_region_p):
5868         * extents.c (gap_array_make_gap):
5869         * extents.c:
5870         * events.h (struct Lisp_Event):
5871         * events.h:
5872         * events.c (Fevent_properties):
5873         * events.c (format_event_object):
5874         * events.c (Fmake_event):
5875         * events.c (event_equal):
5876         * events.c (print_event):
5877         * events.c (mark_event):
5878         * event-stream.c ((read-char)
5879         * event-stream.c (vars_of_event_stream):
5880         * event-stream.c (syms_of_event_stream):
5881         * event-stream.c (Fset_recent_keys_ring_size):
5882         * event-stream.c (Fsit_for):
5883         * event-stream.c (Fnext_event):
5884         * event-stream.c (execute_help_form):
5885         * event-stream.c (maybe_kbd_translate):
5886         * event-stream.c:
5887         * event-msw.c (vars_of_event_mswindows):
5888         * event-msw.c (mswindows_wnd_proc):
5889         * event-msw.c (mswindows_need_event):
5890         * event-msw.c (mswindows_drain_windows_queue):
5891         * event-msw.c (mswindows_pump_outstanding_events):
5892         * event-msw.c:
5893         * event-msw.c (slurp_thread):
5894         * event-msw.c (struct ntpipe_slurp_stream):
5895         * event-msw.c (HANDLE_TO_USID):
5896         * event-Xt.c (emacs_Xt_handle_magic_event):
5897         * event-Xt.c (x_event_to_emacs_event):
5898         * event-Xt.c (x_reset_modifier_mapping):
5899         * event-Xt.c (x_reset_key_mapping):
5900         * event-Xt.c:
5901         * eval.c (syms_of_eval):
5902         * eval.c (warn_when_safe):
5903         * eval.c (warn_when_safe_lispobj):
5904         * eval.c (Fbacktrace_frame):
5905         * eval.c (Fbacktrace):
5906         * eval.c (top_level_set):
5907         * eval.c (unbind_to_hairy):
5908         * eval.c (specbind_magic):
5909         * eval.c (specbind_unwind_wasnt_local):
5910         * eval.c (call2_trapping_errors):
5911         * eval.c (call1_trapping_errors):
5912         * eval.c (catch_them_squirmers_call2):
5913         * eval.c (call0_trapping_errors):
5914         * eval.c (run_hook_trapping_errors):
5915         * eval.c (catch_them_squirmers_eval_in_buffer):
5916         * eval.c (call4_in_buffer):
5917         * eval.c (call3_in_buffer):
5918         * eval.c (call2_in_buffer):
5919         * eval.c (call1_in_buffer):
5920         * eval.c (call0_in_buffer):
5921         * eval.c (run_hook):
5922         * eval.c (run_hook_with_args_in_buffer):
5923         * eval.c (Fapply):
5924         * eval.c (Feval):
5925         * eval.c (do_autoload):
5926         * eval.c (un_autoload):
5927         * eval.c (Fautoload):
5928         * eval.c (Finteractive_p):
5929         * eval.c (Fcommand_execute):
5930         * eval.c (signal_quit):
5931         * eval.c (call_with_suspended_errors):
5932         * eval.c (signal_error):
5933         * eval.c (return_from_signal):
5934         * eval.c (Fcall_with_condition_handler):
5935         * eval.c (run_condition_case_handlers):
5936         * eval.c (condition_case_1):
5937         * eval.c (Funwind_protect):
5938         * eval.c (unwind_to_catch):
5939         * eval.c (internal_catch):
5940         * eval.c (Fmacroexpand_internal):
5941         * eval.c (Fuser_variable_p):
5942         * eval.c (Fdefconst):
5943         * eval.c (Fdefvar):
5944         * eval.c (Ffunction):
5945         * eval.c (signal_call_debugger):
5946         * eval.c (call_debugger):
5947         * eval.c:
5948         * emacs.c (main):
5949         * emacs.c (sort_args):
5950         * emacs.c (main_1):
5951         * elhash.h:
5952         * elhash.c:
5953         * editfns.c (Fencode_time):
5954         * editfns.c (Fdecode_time):
5955         * editfns.c (Fuser_full_name):
5956         * editfns.c:
5957         * editfns.c (save_excursion_restore):
5958         * ecrt0.c:
5959         * dynarr.c:
5960         * doprnt.c (emacs_doprnt_1):
5961         * doc.c (verify_doc_mapper):
5962         * doc.c (Fsnarf_documentation):
5963         * doc.c (Fdocumentation):
5964         * dll.c:
5965         * dired.c (user_name_completion):
5966         * dired.c (Fdirectory_files):
5967         * dialog-x.c:
5968         * dialog-msw.c:
5969         * dgif_lib.c (FreeSavedImages):
5970         * dgif_lib.c (DGifGetImageDesc):
5971         * device.h:
5972         * device.h (struct device):
5973         * device.c (Fselect_device):
5974         * device.c (allocate_device):
5975         * device.c:
5976         * device-x.c (Fx_keysym_on_keyboard_p):
5977         * device-x.c (Fx_valid_keysym_name_p):
5978         * device-x.c (x_IO_error_handler):
5979         * device-x.c (x_delete_device):
5980         * device-x.c (x_finish_init_device):
5981         * device-x.c (x_init_device):
5982         * device-x.c:
5983         * device-msw.c (mswindows_init_device):
5984         * dbxrc:
5985         * database.c (vars_of_database):
5986         * database.c (Fput_database):
5987         * database.c (Fopen_database):
5988         * database.c (berkdb_remove):
5989         * database.c (berkdb_put):
5990         * database.c (Fdatabasep):
5991         * database.c (print_database):
5992         * database.c:
5993         * data.c (vars_of_data):
5994         * data.c (syms_of_data):
5995         * data.c (init_errors_once_early):
5996         * data.c (prune_weak_lists):
5997         * data.c (finish_marking_weak_lists):
5998         * data.c (print_weak_list):
5999         * data.c (Fmod):
6000         * data.c (Fstring_to_number):
6001         * data.c (Fnumber_to_string):
6002         * data.c (Findirect_function):
6003         * data.c (Fsetcdr):
6004         * data.c (Ffloatp):
6005         * data.c (Fsubr_interactive):
6006         * data.c (Farrayp):
6007         * data.c (Fkeywordp):
6008         * data.c (Fnull):
6009         * data.c:
6010         * console.h (CONSOLE_NAME):
6011         * console.h:
6012         * console.c (vars_of_console):
6013         * console.c (Fselect_console):
6014         * console.c:
6015         * console-x.h (DEVICE_X_COLORMAP):
6016         * console-x.h (struct x_device):
6017         * console-x.c (x_device_to_console_connection):
6018         * console-tty.h (CONSOLE_TTY_FINAL_CURSOR_Y):
6019         * console-tty.c (tty_init_console):
6020         * console-tty.c:
6021         * console-msw.h (struct mswindows_frame):
6022         * conslots.h:
6023         * config.h.in:
6024         * cmds.c (internal_self_insert):
6025         * cmds.c (Fforward_line):
6026         * cmds.c (Fforward_char):
6027         * cmds.c:
6028         * cmdloop.c:
6029         * chartab.c (mark_char_table_entry):
6030         * chartab.c:
6031         * casefiddle.c (casify_word):
6032         * callproc.c (child_setup):
6033         * callproc.c (Fcall_process_internal):
6034         * callproc.c:
6035         * callint.c (Fcall_interactively):
6036         * bytecode.h:
6037         * bytecode.c (execute_rare_opcode):
6038         * bytecode.c (execute_optimized_program):
6039         * bytecode.c:
6040         * bufslots.h:
6041         * buffer.h (BUFFER_REALLOC):
6042         * buffer.h (GET_CHARPTR_INT_DATA_ALLOCA):
6043         * buffer.h (GET_CHARPTR_EXT_DATA_ALLOCA):
6044         * buffer.h:
6045         * buffer.h (MAP_INDIRECT_BUFFERS):
6046         * buffer.h (CHECK_LIVE_BUFFER):
6047         * buffer.c (init_initial_directory):
6048         * buffer.c (complex_vars_of_buffer):
6049         * buffer.c (vars_of_buffer):
6050         * buffer.c (finish_init_buffer):
6051         * buffer.c (Fget_file_buffer):
6052         * buffer.c (Fbuffer_list):
6053         * buffer.c (mark_buffer):
6054         * balloon_help.c (balloon_help_move_to_pointer):
6055         * balloon_help.c (show_help):
6056         * balloon_help.c:
6057         * backtrace.h:
6058         * alloc.c (garbage_collect_1):
6059         * alloc.c (sweep_strings):
6060         * alloc.c (sweep_compiled_functions):
6061         * alloc.c (sweep_bit_vectors_1):
6062         * alloc.c (sweep_vectors_1):
6063         * alloc.c (sweep_lcrecords_1):
6064         * alloc.c (tick_lcrecord_stats):
6065         * alloc.c (pure_string_sizeof):
6066         * alloc.c (mark_conses_in_list):
6067         * alloc.c (mark_object):
6068         * alloc.c (report_pure_usage):
6069         * alloc.c (make_pure_float):
6070         * alloc.c (make_pure_string):
6071         * alloc.c (free_managed_lcrecord):
6072         * alloc.c (mark_string):
6073         * alloc.c (noseeum_make_marker):
6074         * alloc.c (allocate_event):
6075         * alloc.c (Fbit_vector):
6076         * alloc.c (Fvector):
6077         * alloc.c (make_float):
6078         * alloc.c (Fmake_list):
6079         * alloc.c (Flist):
6080         * alloc.c (FREE_FIXED_TYPE_WHEN_NOT_IN_GC):
6081         * alloc.c (PUT_FIXED_TYPE_ON_FREE_LIST):
6082         * alloc.c (DECLARE_FIXED_TYPE_ALLOC):
6083         * alloc.c (dbg_constants):
6084         * alloc.c (gc_record_type_p):
6085         * alloc.c (free_lcrecord):
6086         * alloc.c (xmalloc):
6087         * alloc.c (NOSEEUM_INCREMENT_CONS_COUNTER):
6088         * abbrev.c:
6089         * Makefile.in.in (mostlyclean):
6090         * Makefile.in.in (external_client_xlib_objs_nonshared):
6091         * Makefile.in.in (temacs_link_args):
6092         * Makefile.in.in (release):
6093         * Makefile.in.in (dnd_objs):
6094         * Makefile.in.in (objs):
6095         * Makefile.in.in (PROGNAME):
6096         * EmacsShell.c: cast strings to (XtPointer)
6097         * EmacsFrame.c: cast strings to (XtPointer)
6098         - mega patch
6099         - rewrite basic lisp functions for speed
6100         - rewrite bytecode interpreter for speed
6101         - rewrite list looping constructs for speed and safety using
6102           tortoise/hare.
6103         - use size_t where appropriate.
6104         - new hashtable implementation
6105         - cleanup implementation of opaques
6106         - opaques can now be purecopy'ed
6107         - move some cl functionality into C for speed.
6108         - remove last remaining VMS support
6109         - spelling fixes
6110         - improve gdb/dbx debugger support
6111         - move pure.c back into alloc.c for performance
6112         - enable report_pure_usage() if --memory-usage-stats
6113         - remove remnants of Energize support (EMACS_BTL, cadillac...)
6114         - don't use symbols with leading `_' or embedded `__'
6115         - globally cleanup duplicated semicolons `;;'
6116         - I give in on %p vs %lx - we use printf("%lx",(long) p)
6117           globally.
6118         - globally replace O_NDELAY with O_NONBLOCK.
6119         - globally replace CDISABLE with _POSIX_VDISABLE.
6120         - use O_RDONLY and O_RDWR instead of magic `0' and `2'.
6121         - define (and maybe use!) STDERR_FILENO and friends.
6122         - add support for macros defined in C
6123         - `when', `unless', `not' and `defalias' now defined in C,
6124           so that they are universally available.
6125         - rename defvar_mumble to defvar_magic
6126         - rename RETURN__ to RETURN_SANS_WARNINGS
6127         - use consistent style of initial caps in error messages
6128         - implement last, butlast, nbutlast, copy-list in C.
6129         - provide typedefs for all struct Lisp_foo types
6130         - Lisp_Objects must be initialized to Qnil rather than 0.
6131         - make sure XEmacs runs (slowly) with always_gc == 1;
6132         - fast and safe LOOP_* macros
6133         - change calls to XSETOBJ to XSETFOO
6134         - replace calls to XSETINT by make_int()
6135         - plug up memory leaks
6136         - use style markobj (foo), not silly ((markobj) (foo))
6137         - use XFLOAT_DATA (obj) instead of float_data (XFLOAT (obj))
6138
6139 1998-12-02  P. E. Jareth Hein  <jareth@camelot.co.jp>
6140
6141         * unexec.c: Changed a #ifndef statement to fix XEmacs on BSDI 3.0
6142
6143 1998-11-28  SL Baur  <steve@altair.xemacs.org>
6144
6145         * XEmacs 21.2-beta4 is released.
6146
6147 1998-11-27  SL Baur  <steve@altair.xemacs.org>
6148
6149         * mule-charset.c (complex_vars_of_mule_charset): Fix graphic
6150         property in control-1 charset.
6151         From Julian Bradfield <jcb@daimi.au.dk>
6152
6153 1998-11-26  Jan Vroonhof  <vroonhof@math.ethz.ch>
6154
6155         * gui-x.c (button_item_to_widget_value): Ignore :key-sequence
6156         keyword.
6157         Add stub for :label.
6158
6159         * gui.c (gui_item_add_keyval_pair): ditto.
6160
6161         * menubar-x.c (menu_item_descriptor_to_widget_value_1): Ignore
6162         :key-sequence keyword.
6163         Add stub for:label.
6164         Support :active for submenus like the Windows code and FSF Emacs.
6165
6166 1998-11-27  Hrvoje Niksic  <hniksic@srce.hr>
6167
6168         * dired.c (make_directory_hash_table): make_string() is OK because
6169         readdir() Mule-encapsulates.
6170
6171 1998-11-26  Hrvoje Niksic  <hniksic@srce.hr>
6172
6173         * fns.c (Fbase64_encode_string): Fix docstring.
6174         (Fbase64_decode_string): Ditto.
6175
6176 1998-11-26  Hrvoje Niksic  <hniksic@srce.hr>
6177
6178         * editfns.c (Ftranslate_region): Use
6179         convert_bufbyte_string_into_emchar_string().
6180
6181 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
6182
6183         * editfns.c (Ftranslate_region): Accept vectors and char-tables as
6184         well as strings.
6185         (Ftranslate_region): Turn table into an array of Emchars for
6186         larger regions.
6187
6188 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
6189
6190         * chartab.c (Freset_char_table): Fix wrong placement of #endif.
6191
6192 1998-11-24  Hrvoje Niksic  <hniksic@srce.hr>
6193
6194         * chartab.c (Freset_char_table): Don't blindly fill chartables of
6195         type `char' with nils.
6196
6197         * chartab.c (canonicalize_char_table_value): Coerce ints to chars
6198         for tables of type `char'.
6199
6200 1998-11-26  Didier Verna  <verna@inf.enst.fr>
6201
6202         * input-method-xlib.c (Initialize_Locale): don't call
6203         XtSetLanguageProc. We've done the whole work here.
6204         * input-method-xfs.c (Initialize_Locale): ditto.
6205         * input-method-motif.c (Initialize_Locale): ditto.
6206
6207 1998-11-26  Didier Verna  <verna@inf.enst.fr>
6208
6209         * process-unix.c (unix_create_process): handle properly
6210         Vfile_name_coding_system for converting the program and directory
6211         names.
6212
6213 1998-11-27  SL Baur  <steve@altair.xemacs.org>
6214
6215         * m/arm.h: New file.
6216         From James LewisMoss <dres@ioa.com>
6217
6218 1998-11-27  Takeshi Hagiwara  <hagiwara@ie.niigata-u.ac.jp>
6219
6220         * m/mips-nec.h:
6221         Fix the realpath() problem of UnixWare2.1.3.
6222         Patches for NEC's sysv4.2 machine.
6223
6224 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
6225
6226         * dired.c (Fdirectory_files): Remove redundant code.
6227
6228 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
6229
6230         * fns.c (free_malloced_ptr): New function.
6231         (XMALLOC_OR_ALLOCA): New macro.
6232         (XMALLOC_UNBIND): Ditto.
6233         (Fbase64_encode_region): Use malloc() for large blocks; arrange it
6234         to be freed in case of non-local exit.
6235         (Fbase64_encode_string): Ditto.
6236         (Fbase64_decode_region): Ditto.
6237         (Fbase64_decode_string): Ditto.
6238         (STORE_BYTE): New macro.
6239         (base64_decode_1): Use it.
6240
6241 1998-11-25  Hrvoje Niksic  <hniksic@srce.hr>
6242
6243         * fns.c (base64_value_to_char): Base64 stuff.
6244
6245 1998-11-24  Hrvoje Niksic  <hniksic@srce.hr>
6246
6247         * editfns.c (Fbuffer_substring): New function.
6248
6249         * lisp.h: Declare make_string_from_buffer_no_extents().
6250
6251         * insdel.c (make_string_from_buffer_1): New function.
6252         (make_string_from_buffer_no_extents): Ditto.
6253
6254 1998-11-15  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
6255
6256         * linuxplay.c: Including <fcntl.h> instead of <sys/fcntl.h> makes
6257         sound work on AIX with OSS installed.  Linux should still work.
6258
6259 1998-11-03  Andy Piper  <andyp@parallax.co.uk>
6260
6261         * config.h.in: name change for cygwin/version.h
6262
6263         * configure.in: check for cygwin/version.h now.
6264
6265         * cygwin32.h: track CYGWIN_DLL_VERSION_MAJOR ->
6266         CYGWIN_VERSION_DLL_MAJOR name change in cygwin b20.
6267         move cygwin32/version.h to cygwin/version.h
6268
6269 1998-11-03  Olivier Galibert  <galibert@pobox.com>
6270
6271         * lisp.h  (struct  Lisp_Bit_Vector): Fix declaration of  bits from
6272         int to long.
6273
6274 1998-10-22  Andy Piper  <andyp@parallax.co.uk>
6275
6276         * cygwin32.h: track CYGWIN_DLL_VERSION_MAJOR ->
6277         CYGWIN_VERSION_DLL_MAJOR name change in cygwin b20.
6278         enable BROKEN_SIGIO under b20 to make QUIT work.
6279
6280 1998-10-22  Andy Piper  <andyp@parallax.co.uk>
6281
6282         * frame-msw.c (mswindows_size_frame_internal): force frame sizing
6283         to fit within the constraints of the screen size. I.e. make the
6284         frame small enough to fit and move it if some of it will be
6285         off-screen.
6286
6287 1998-10-19  Greg Klanderman  <greg@alphatech.com>
6288
6289         * dired.c: conditionalize inclusion of user-name-completion
6290         primitives on non-Windows NT.  The needed functions don't exist on NT.
6291
6292 1998-11-24  SL Baur  <steve@altair.xemacs.org>
6293
6294         * gifrlib.h: Clean up types for 64 bit compile.
6295         * dgif_lib.c (DGifInitRead): Ditto.
6296         (MakeSavedImage): Ditto.
6297         * emacs.c (decode_path): Ditto.
6298         From Steve Carney <carney@pa.dec.com>
6299
6300 1998-10-16  William M. Perry  <wmperry@aventail.com>
6301
6302         * glyphs-msw.c (bitmap_table): Fixed typo in builtin bitmaps
6303           (cehckboxes instead of checkboxes).
6304
6305 1998-10-15  SL Baur  <steve@altair.xemacs.org>
6306
6307         * XEmacs 21.2-beta3 is released.
6308
6309 1998-10-13  Raymond Toy  <toy@rtp.ericsson.se>
6310
6311         * runemacs.c (WinMain): If the basename is "rungnuclient.exe", run
6312         gnuclient.  Otherwise, we run xemacs as we always did.  This gets
6313         rid of the annoying DOS window when running gnuclient.
6314
6315 1998-10-13  Andy Piper  <andyp@parallax.co.uk>
6316
6317         * dragdrop.c (vars_of_dragdrop): rename HAVE_MSWINDOWS ->
6318         HAVE_MS_WINDOWS typo.
6319
6320 1998-10-13  SL Baur  <steve@altair.xemacs.org>
6321
6322         * process-unix.c (unix_send_process): Set closed flag on writable
6323         pipe after SIGPIPE is received and before we call deactivate_process.
6324
6325 1998-10-03  Gunnar Evermann  <ge204@eng.cam.ac.uk>
6326
6327         * window.c (Fset_window_start): respect narrowing when
6328         checking wheter start is at the beginning of a line.
6329         (Fset_window_buffer): Ditto
6330         Fixes repeatable crash in VM.
6331
6332 1998-10-09  SL Baur  <steve@altair.xemacs.org>
6333
6334         * window.c (specifier_vars_of_window): Set default vertical
6335         divider width to 1 on ttys.
6336
6337 1998-10-08  Martin Buchholz  <martin@xemacs.org>
6338
6339         * alloc.c:
6340         * unexec.c:
6341         * malloc.c:
6342         Add <stddef.h> to get ptrdiff_t declaration
6343
6344 1998-10-07  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6345
6346         * scrollbar-msw.c: Use the same vertical scrollbar drag hack as
6347           is used for Motif or Lucid scrollbars under X.
6348
6349 1998-10-08  Pierre Wendling  <pw@ebc.vbe.dec.com>
6350
6351         * m/alpha.h (UNEXEC): quoted to avoid bad expansion when running
6352         `configure'
6353
6354 1998-10-06  Takeshi Hagiwara  <hagiwara@ie.niigata-u.ac.jp>
6355
6356         * frame-x.c (x_delete_frame): Fix an argument of XtDestroyWidget.
6357
6358 1998-10-05  Andy Piper  <andyp@parallax.co.uk>
6359
6360         * s/cygwin32.h: more cygwin b20 reorganisation.
6361
6362 1998-10-01  Raymond Toy  <toy@rtp.ericsson.se>
6363
6364         * nas.c: Added necessary support functions to be able to handle
6365         WAVE files in memory, just like the support for SND files in
6366         memory.
6367
6368 1998-09-30  SL Baur  <steve@altair.xemacs.org>
6369
6370         * callproc.c (child_setup): Fix spelling typo.
6371
6372 1998-09-29  SL Baur  <steve@altair.xemacs.org>
6373
6374         * XEmacs 21.2-beta2 is released.
6375
6376 1998-09-27  P. E. Jareth Hein  <jareth@camelot.co.jp>
6377
6378         * regex.c (re_match_2_internal): Add in code to reset lowest_active_reg
6379         to prevent memory corruption in the case of jumping out of a series of
6380         nested match patterns. This is a rather brute force approach, though.
6381
6382 1998-09-02  Andy Piper  <andyp@parallax.co.uk>
6383
6384         * config.h.in: ditto.
6385
6386         * s/cygwin32.h: rearrange declarations to cope with cygwin
6387         b20. Include cygwin32/version.h if it exists.
6388
6389 1998-09-20  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6390
6391         * device-msw.c (mswindows_init_device): Call new
6392           mswindows_enumerate_fonts() function in objects-msw.c instead
6393           of font_enum_callback_1() to enumerate fonts.
6394
6395           font_enum_callback_1() and _2() moved to objects-msw.c.
6396
6397         * faces.c (complex_vars_of_faces): Make the mswindows default
6398           face font fully specified and provide some fallbacks.
6399
6400         * objects-msw.c: font_enum_callback_1() and _2() moved here
6401           from objects-msw.c. Obtain the enumerated font's character
6402           sets by table lookup instead of using the locale-specific
6403           string provided by Windows.
6404
6405           New public non-method mswindows_enumerate_fonts() that fills
6406           in the supplied mswindows device's font list.
6407
6408           mswindows_initialize_font_instance: Use the supplied name
6409           variable instead of f->name when signalling errors. Match font
6410           weights and character sets using lookup tables which handle
6411           spaces instead of by frobbing.
6412
6413 1998-09-20  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6414
6415         * process-nt.c: Define an arbitrary limit, FRAGMENT_CODE_SIZE,
6416           on the size of code fragments passed to run_in_other_process.
6417
6418           run_in_other_process(): Use FRAGMENT_CODE_SIZE to determine
6419           the amount of memory to allocate in the other process.
6420
6421           Removed sigkill_code_end(), sigint_code_end() and
6422           sig_enable_code_end() since they are now redundant.
6423
6424           send_signal() and enable_child_signals(): Don't try to work
6425           out the end of the code fragments passed to
6426           run_in_other_process()
6427
6428 1998-09-10  Kazuyuki IENAGA  <ienaga@jsys.co.jp>
6429
6430         * src/s/freebsd.h: Added __ELF__ and compiler/liker flags for
6431         FreeBSD-current.
6432
6433         * src/unexelf.c: Partially synched with FSF's 20.3.
6434
6435 1998-09-10  Hrvoje Niksic  <hniksic@srce.hr>
6436
6437         * insdel.c (signal_after_change): Map across indirect buffers
6438         here, and not in the upper-level functions.
6439         (signal_first_change): Don't check for Armageddon.
6440         (signal_before_change): Map across indirect buffers here.
6441         (prepare_to_modify_buffer): ...and here.
6442
6443 1998-09-09  Hrvoje Niksic  <hniksic@srce.hr>
6444
6445         * insdel.c (signal_after_change): Add return value.
6446         (buffer_insert_string_1): Use it.
6447         (buffer_delete_range): Ditto.
6448         (buffer_replace_char): Ditto.
6449         (cancel_multiple_change): Map the indirect buffers.
6450
6451 1998-09-06  Hrvoje Niksic  <hniksic@srce.hr>
6452
6453         * insdel.c (init_buffer_text): Remove INDIRECT_P parameter.
6454         (uninit_buffer_text): Ditto.
6455
6456         * buffer.c (Fmake_indirect_buffer): Implement stricter
6457         error-checking.
6458
6459 1998-09-04  Hrvoje Niksic  <hniksic@srce.hr>
6460
6461         * insdel.c (change_function_restore): Reverse order of
6462         function-call and assignment.
6463         (first_change_hook_restore): Ditto.
6464
6465         * extents.c (mark_extent_auxiliary): Mark them.
6466         (Fset_extent_property): Set them.
6467         (Fextent_property): Get them.
6468         (Fextent_properties): Ditto.
6469         (vars_of_extents): Set their default.
6470
6471         * extents.h (struct extent_auxiliary): Add before_change_functions
6472         and after_change_functions.
6473
6474         * insdel.c (signal_before_change): Use it.
6475         (signal_after_change): Ditto.
6476
6477         * extents.c (report_extent_modification): New function.
6478
6479         * insdel.c (signal_before_change): Don't check for Armageddon.
6480         (signal_after_change): Ditto.
6481
6482 1998-09-11  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
6483
6484         * redisplay.c (redisplay_window): make sure a new starting point
6485         is chosen if it somehow got moved from the beginning of the line
6486         -- this can happen because Fwiden was called recently.
6487
6488         * window.c (Fset_window_start): set start_at_line_beg correctly
6489         (Fset_window_buffer): Ditto
6490
6491 1998-09-06  Hrvoje Niksic  <hniksic@srce.hr>
6492
6493         * insdel.c (init_buffer_text): Remove INDIRECT_P parameter.
6494         (uninit_buffer_text): Ditto.
6495
6496         * buffer.c (Fmake_indirect_buffer): Implement stricter
6497         error-checking.
6498
6499 1998-05-14  Jan Vroonhof  <vroonhof@math.ethz.ch>
6500
6501         * emacs.c (main_1): Removed references to *vars_of_filelock.
6502
6503         * lisp.h: Added Fsystem_name.
6504
6505         * filelock.c: Replaced by version from FSF 20.2. Now implements
6506         locking by using symlinks which is NFS safe. However keep the
6507         GCPRO's in lock_file and the calls to callx_in_buffer like our old
6508         version (and of course use ansi C, acessor macros, etc).
6509
6510 1998-09-06  Jan Vroonhof  <vroonhof@math.ethz.ch>
6511
6512         * process-unix.c (unix_create_process): Reset SIGHUP handler to
6513         SIG_DFL. We now try to conserve any inherted SIG_IGN settings
6514         in init_signals_very_early. However these should not be passed
6515         on to children attached to the new pty.
6516
6517 1998-08-28  Andy Piper  <andyp@parallax.co.uk>
6518
6519         * glyphs-eimage.c (png_instantiate_unwind): clean up eimage after use.
6520
6521 1998-09-07  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6522
6523         * fileio.c (file-name-directory, file_name_as_directory):
6524           Don't call CORRECT_DIR_SEPS, even when #defined WINDOWSNT.
6525
6526 1998-09-02  Andy Piper  <andyp@parallax.co.uk>
6527
6528         * emacs.c (main_1): init_ralloc() if initialised and we have REL_ALLOC
6529
6530         * ralloc.c: uncomment __morecore.
6531
6532 1998-09-92  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6533
6534         * event-msw.c(winsock_writer): Supply a dummy 4th argument to
6535           WriteFile() to fix a winsock 1.x bug on Win95.
6536
6537 1998-08-28  Hrvoje Niksic  <hniksic@srce.hr>
6538
6539         * event-Xt.c (emacs_Xt_mapping_action): Check for device being
6540         deleted.
6541         (x_event_to_emacs_event): Ditto.
6542         (emacs_Xt_handle_focus_event): Ditto.
6543         (emacs_Xt_handle_magic_event): Ditto.
6544
6545         * console-x.h (struct x_device): New flag being_deleted.
6546         (DEVICE_X_BEING_DELETED): New macro.
6547
6548         * device-x.c (x_IO_error_handler): Throw to top-level instead of
6549         returning.  Before doing that, set the being_deleted flag on the
6550         device.
6551
6552 1998-08-27  Hrvoje Niksic  <hniksic@srce.hr>
6553
6554         * device-x.c (x-seppuku-on-epipe): Removed.
6555
6556 1998-08-26  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
6557
6558         * frame-x.c (x_delete_frame): Flush the X output buffer after
6559         calling XtDestroyWidget to ensure that the windows are really
6560         killed right now.
6561
6562 1998-08-26  Hrvoje Niksic  <hniksic@srce.hr>
6563
6564         * menubar-x.c (my_run_hook): New unused function.
6565         (pre_activate_callback): Use run_hook for Qactivate_menubar_hook,
6566         since we ignore the results of the contained functions anyway.
6567
6568 1998-08-26  P. E. Jareth Hein  <jareth@camelot.co.jp>
6569
6570         * glyphs-eimage.c (gif_instantiate): Fix a crash in handling
6571         interlaced GIF files that are smaller than 4 lines high...
6572
6573 1998-08-31  Hrvoje Niksic  <hniksic@srce.hr>
6574
6575         * buffer.c (map_over_sharing_buffers): Deleted.
6576
6577         * insdel.c (MAP_INDIRECT_BUFFERS): Move to buffer.h.
6578
6579         * buffer.c (Fkill_buffer): Keep indirect_children updated while
6580         killing them.
6581
6582 1998-08-31  Hrvoje Niksic  <hniksic@srce.hr>
6583
6584         * insdel.c (buffer_insert_string_1): Advance the point bytind in
6585         all the buffers.
6586         (buffer_delete_range): Ditto.
6587
6588         * marker.c (init_buffer_markers): Set point-marker to the value of
6589         point in an indirect buffer.
6590
6591 1998-08-30  Hrvoje Niksic  <hniksic@srce.hr>
6592
6593         * undo.c (undo_prelude): Test last-undo-buffer against base
6594         buffer.
6595
6596         * insdel.c (MAP_INDIRECT_BUFFERS): Use it.
6597
6598         * buffer.h (BUFFER_BASE_BUFFER): New macro.
6599
6600 1998-08-30  Hrvoje Niksic  <hniksic@srce.hr>
6601
6602         * insdel.c (init_buffer_text): Initialize it here.
6603
6604         * line-number.c: Address line_number_cache through buffer->text.
6605
6606         * buffer.c (mark_buffer): Mark line number cache.
6607
6608         * bufslots.h (line_number_cache): Move to struct buffer_text.
6609
6610         * insdel.c (buffer_insert_string_1): Propagate signals and changes
6611         across the children buffers.
6612         (buffer_delete_range): Ditto.
6613         (buffer_replace_char): Ditto.
6614         (gap_left): Ditto.
6615         (gap_right): Ditto.
6616
6617         * insdel.c (MAP_INDIRECT_BUFFERS): New macro.
6618
6619         * buffer.c (Fmake_indirect_buffer): Uncomment.
6620
6621 1998-08-31  Hrvoje Niksic  <hniksic@srce.hr>
6622
6623         * macros.c (Fend_kbd_macro): Remove trailing period from error
6624         message.
6625         (Fexecute_kbd_macro): Ditto.
6626
6627 1998-08-21  Greg Klanderman  <greg@alphatech.com>
6628
6629         * dired.c (Fuser_name_completion): remove optional 2nd argument.
6630         (Fuser_name_completion_1): new function to return uniqueness
6631         indication in addition to the user name completion.
6632         (user_name_completion): change type of `uniq' argument.
6633
6634 1998-08-19  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
6635
6636         * lread.c (vars_of_lread): Removed `source-directory' variable.
6637
6638 1998-08-22  Hrvoje Niksic  <hniksic@srce.hr>
6639
6640         * fileio.c (Ffile_readable_p): Apply the DOS/Windows logic to
6641         Cygwin.
6642
6643 1998-08-19  SL Baur  <steve@altair.xemacs.org>
6644
6645         * dired.c (vars_of_dired): Fix misapplied patch.
6646
6647 1998-08-16  Martin Buchholz  <martin@xemacs.org>
6648
6649         * fns.c (Fremrassq, remrassq_no_quit):
6650         A XCAR that should have been an XCDR turned Fremrassq into Fremassq
6651
6652 1998-07-17  Didier Verna  <verna@inf.enst.fr>
6653
6654         * redisplay-x.c (x_get_gc): returns a GC with a FillStipple fill
6655         style as foreground GC for faces that have the `dim' property.
6656         (x_output_string): when the `dim' face property is set,
6657         ensure the gray pixmap has been created, and get a proper
6658         foreground GC to draw the text.
6659
6660 1998-08-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6661
6662         * event-msw.c (mswindows_wnd_proc): Workaround for a Win95 bug:
6663           Manually track the state of the left and right Ctrl and Alt
6664           modifiers.
6665
6666 1998-08-07 Matt Stupple <matts@tibco.com>
6667
6668         * ntproc.c: don't wait on char_consumed at thread entry.
6669         Additionally, to get the 'process' marked as finished, ensure
6670         that the CHILD_ACTIVE macro returns false, so before exiting
6671         close char_avail and set it to NULL, and close other handles
6672         to reduce handle leak problems.
6673
6674 1998-08-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6675
6676         * menubar-msw.c (displayable_menu_item): take account of menu
6677           depth when deciding whether to try to display accelerators.
6678
6679 1998-08-04  Andy Piper  <andyp@parallax.co.uk>
6680
6681         * event-msw.c: use MsgWaitForMultipleObjects if there are no
6682         subprocesses.
6683
6684         * glyphs-msw.c: fix a couple of potential handle leaks.
6685
6686 1998-08-04  P. E. Jareth Hein  <jareth@camelot.co.jp>
6687
6688         * dgif_lib.c gif_io.c gifrlib.h: New files to put GIF
6689           *decoding ONLY* back into the core.
6690         * glyphs-eimage.c: Change referenced header file for GIF
6691           reading to point to the incore version.
6692
6693 1998-07-20  Martin Buchholz  <martin@xemacs.org>
6694
6695         * casefiddle.c (casify_object):
6696         Change algorithm from O(N**2) to O(N).
6697         Code cleanup.
6698         Doc string cleanup.
6699
6700 1998-07-22  Greg Klanderman  <greg@alphatech.com>
6701
6702         * dired.c (file_name_completion_unwind): don't leak the cons.
6703
6704 1998-07-20  Greg Klanderman  <greg@alphatech.com>
6705
6706         * dired.c (Fuser_name_completion): new function.
6707         (Fuser_name_all_completions): new function.
6708         (user_name_completion): new function.
6709         (syms_of_dired): 2 new DEFSUBRs.
6710         (vars_of_dired): initialize user name cache vars.
6711
6712 1998-07-29  P. E. Jareth Hein  <jareth@camelot.co.jp>
6713
6714         * glyphs-eimage.c (png_instantiate): Add proper handling for background
6715         colors taken from the default face.  Also correct a thinko in
6716         transparency (not alpha) handling.
6717
6718 1998-07-23  Martin Buchholz  <martin@xemacs.org>
6719
6720         * s/decosf4-0.h:  Use a perfectly ordinary link.  Nuke BSD crap.
6721         * unexalpha.c: ANSI C-ize.  Clean compiler warnings.
6722         * lread.c (Fload_internal):  Be very careful with printfs of
6723         size_t's
6724         * gui-x.c (menu_name_to_accelerator): tolower wants an `int'
6725         argument.
6726
6727 1998-07-27  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
6728
6729         * callint.c (Fcall_interactively): GCPRO prompt string before
6730         passing it to Fread_key_sequence
6731
6732 1998-07-27  SL Baur  <steve@altair.xemacs.org>
6733
6734         * keymap.c (vars_of_keymap): Initialize Vkey_translation_map and
6735         Vvertical_divider_map.
6736
6737         * mule-canna.c (vars_of_mule_canna): Initialize every symbol to
6738         Qnil or 0, none were initialized prior to this change.
6739
6740         Rename misnamed `V' prefixed integer variables:
6741         Vcanna_empty_info, Vcanna_through_info, Vcanna_underline,
6742         Vcanna_inhibit_hankakukana, Vcanna_henkan_length, Vcanna_henkan_revPos,
6743         Vcanna_henkan_revLen, Vcanna_ichiran_length, Vcanna_ichiran_revPos,
6744         Vcanna_ichiran_revLen.
6745
6746         Rename misnamed `V' prefixed integer variables and initialize
6747         properly in the vars_of routine.
6748         Vcanna_mode_AlphaMode, Vcanna_mode_EmptyMode, Vcanna_mode_KigoMode,
6749         Vcanna_mode_YomiMode, Vcanna_mode_JishuMode, Vcanna_mode_TankouhoMode,
6750         Vcanna_mode_IchiranMode, Vcanna_mode_YesNoMode, Vcanna_mode_OnOffMode,
6751         Vcanna_mode_AdjustBunsetsuMode, Vcanna_mode_ChikujiYomiMode,
6752         Vcanna_mode_ChikujiTanMode, Vcanna_mode_HenkanMode,
6753         Vcanna_mode_HenkanNyuryokuMode, Vcanna_mode_ZenHiraHenkanMode,
6754         Vcanna_mode_HanHiraHenkanMode, Vcanna_mode_ZenKataHenkanMode,
6755         Vcanna_mode_HanKataHenkanMode, Vcanna_mode_HanKataHenkanMode,
6756         Vcanna_mode_ZenAlphaHenkanMode, Vcanna_mode_HanAlphaHenkanMode,
6757         Vcanna_mode_ZenHiraKakuteiMode, Vcanna_mode_HanHiraKakuteiMode,
6758         Vcanna_mode_ZenKataKakuteiMode, Vcanna_mode_HanKataKakuteiMode,
6759         Vcanna_mode_ZenAlphaKakuteiMode, Vcanna_mode_HanAlphaKakuteiMode,
6760         Vcanna_mode_HexMode, Vcanna_mode_BushuMode, Vcanna_mode_ExtendMode,
6761         Vcanna_mode_RussianMode, Vcanna_mode_GreekMode, Vcanna_mode_LineMode,
6762         Vcanna_mode_ChangingServerMode, Vcanna_mode_HenkanMethodMode,
6763         Vcanna_mode_DeleteDicMode, Vcanna_mode_TourokuMode,
6764         Vcanna_mode_TourokuEmptyMode, Vcanna_mode_TourokuHinshiMode,
6765         Vcanna_mode_TourokuDicMode, Vcanna_mode_QuotedInsertMode,
6766         Vcanna_mode_BubunMuhenkanMode, Vcanna_mode_MountDicMode,
6767         Vcanna_fn_SelfInsert, Vcanna_fn_FunctionalInsert,
6768         Vcanna_fn_QuotedInsert, Vcanna_fn_JapaneseMode, Vcanna_fn_AlphaMode,
6769         Vcanna_fn_HenkanNyuryokuMode, Vcanna_fn_Forward, Vcanna_fn_Backward,
6770         Vcanna_fn_Next, Vcanna_fn_Prev, Vcanna_fn_BeginningOfLine,
6771         Vcanna_fn_EndOfLine, Vcanna_fn_DeleteNext, Vcanna_fn_DeletePrevious,
6772         Vcanna_fn_KillToEndOfLine, Vcanna_fn_Henkan, Vcanna_fn_Kakutei,
6773         Vcanna_fn_Extend, Vcanna_fn_Shrink, Vcanna_fn_AdjustBunsetsu,
6774         Vcanna_fn_Quit, Vcanna_fn_ConvertAsHex, Vcanna_fn_ConvertAsBushu,
6775         Vcanna_fn_KouhoIchiran, Vcanna_fn_BubunMuhenkan, Vcanna_fn_Zenkaku,
6776         Vcanna_fn_Hankaku, Vcanna_fn_ExtendMode, Vcanna_fn_ToUpper,
6777         Vcanna_fn_Capitalize, Vcanna_fn_ToLower, Vcanna_fn_Hiragana,
6778         Vcanna_fn_Katakana, Vcanna_fn_Romaji, Vcanna_fn_BaseHiragana,
6779         Vcanna_fn_BaseKatakana, Vcanna_fn_BaseEisu, Vcanna_fn_BaseZenkaku,
6780         Vcanna_fn_BaseHankaku, Vcanna_fn_BaseKana, Vcanna_fn_BaseKakutei,
6781         Vcanna_fn_BaseHenkan, Vcanna_fn_BaseHiraKataToggle,
6782         Vcanna_fn_BaseZenHanToggle, Vcanna_fn_BaseKanaEisuToggle,
6783         Vcanna_fn_BaseKakuteiHenkanToggle, Vcanna_fn_BaseRotateForward,
6784         Vcanna_fn_BaseRotateBackward, Vcanna_fn_Touroku, Vcanna_fn_HexMode,
6785         Vcanna_fn_BushuMode, Vcanna_fn_KigouMode, Vcanna_fn_Mark,
6786         Vcanna_fn_TemporalMode, Vcanna_key_Nfer, Vcanna_key_Xfer,
6787         Vcanna_key_Up, Vcanna_key_Left, Vcanna_key_Right, Vcanna_key_Down,
6788         Vcanna_key_Insert, Vcanna_key_Rollup, Vcanna_key_Rolldown,
6789         Vcanna_key_Home, Vcanna_key_Help, Vcanna_key_KP_Key,
6790         Vcanna_key_Shift_Nfer, Vcanna_key_Shift_Xfer, Vcanna_key_Shift_Up,
6791         Vcanna_key_Shift_Left, Vcanna_key_Shift_Right, Vcanna_key_Shift_Down,
6792         Vcanna_key_Cntrl_Nfer, Vcanna_key_Cntrl_Xfer, Vcanna_key_Cntrl_Up,
6793         Vcanna_key_Cntrl_Left, Vcanna_key_Cntrl_Right, Vcanna_key_Cntrl_Down
6794
6795 1998-07-16  Jan Vroonhof  <vroonhof@math.ethz.ch>
6796
6797         * event-Xt.c (x_to_emacs_keysym): Return nil for modifier keysyms.
6798         (x_event_to_emacs_event): Let x_to_emacs_keysym check for modifier
6799         keys thus no longer considering all keysyms on a key.
6800
6801 1998-07-19  SL Baur  <steve@altair.xemacs.org>
6802
6803         * XEmacs 21.2-beta1 is released.
6804
6805 1998-07-12  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
6806
6807         * eldap.c (Fldap_search_internal): When converting the list of
6808         attributes to search Copy the final 0 from Lisp strings to C
6809         strings.
6810         Check base, not Vldap_default_base as a a string
6811
6812 1998-07-13  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6813
6814         * nt.c: Remove Vstdio_str; already defined in console-stream.c.
6815
6816         * unexnt.c: Unconditionally define bss_start and bss_size, and
6817           ensure that they don't go in the .bss section.
6818
6819 1998-07-17  Olivier Galibert  <galibert@pobox.com>
6820
6821         * glyphs-x.c (convert_EImage_to_XImage):  Fix previous patch (conv
6822         byte order is dependant  of  the local  byte order).
6823         From Takeshi Hagiwara <hagiwara@ie.niigata-u.ac.jp>
6824
6825 1998-07-18  SL Baur  <steve@altair.xemacs.org>
6826
6827         * glyphs-msw.c (mswindows_resource_normalize): Qresource ->
6828         Qmswindows_resource.
6829         From Jonathan Harris <jhar@tardis.ed.ac.uk>
6830
6831 1998-07-12  SL Baur  <steve@altair.xemacs.org>
6832
6833         * general.c (syms_of_general): Add defsymbol for Qresource.
6834
6835         * glyphs-msw.c (vars_of_glyphs_mswindows): Rename Qresource to
6836         Qmswindows_resource.
6837         (TopLevel): Rename 'resource image format to 'mswindows_resource.
6838         (mswindows_resource_validate): Rename.
6839         (mswindows_resource_normalize): Rename.
6840         (mswindows_resource_possible_dest_types): Rename.
6841         (mswindows_resource_instantiate): Rename.
6842         (image_instantiator_format_create_glyphs_mswindows): Replace
6843         `resource' with `mswindows.resource'.
6844
6845         * XEmacs 21.0-pre5 is released.
6846
6847 1998-07-10  SL Baur  <steve@altair.xemacs.org>
6848
6849         * mule-wnnfns.c (Fwnn_open): Correctly trap on misdefined Wnn
6850         server type in environment.
6851         Use alloca-ed strings instead of tiny fixed size ones.
6852
6853 1998-07-09  SL Baur  <steve@altair.xemacs.org>
6854
6855         * XEmacs 21.0-pre4 is released.
6856
6857 1998-07-01  James N. Potts  <jnpotts@plutonium.net>
6858
6859         * fileio.c: (expand_file_name): under win32: Don't treat names
6860         as UNC names if a drive letter has been specified.  If a drive
6861         has been specified, strip out extra directory-seperators that
6862         reportedly cause problems under Win95.
6863
6864 1998-07-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6865
6866         * windowsnt.h: Define DUMP_SEPARATE_SECTION when building with
6867           MSVC >= 5.0. Put emacs init and zero-init data in a special
6868           section of the executable when this is defined.
6869
6870         * unexnt.c, ntheap.h:
6871           Removed unused find_section() and get_section_size().
6872
6873         * unexnt.c:
6874           Fix up the executable's checksum after dumping otherwise the
6875           profiler complains.
6876           When DUMP_SEPARATE_SECTION is defined, don't need to dump
6877           zero-init data separately from init data. Dump emacs data
6878           into a special section of the executable.
6879           When DUMP_SEPARATE_SECTION not defined, dump .bss up to
6880           my_ebss instead of up to the end of bss.
6881
6882 1998-07-09  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6883
6884         * filelock.c: Removed Vconfigure_lock_directory - already
6885           defined in emacs.c.
6886
6887         * frame-msw.c: Removed Qinitially_unmapped and Qpopup - already
6888           defined in frame.c and general.c respectively.
6889
6890         * glyphs-msw.c: Removed Qresource - already defined in
6891           general.c.
6892
6893 1998-07-05  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
6894
6895         * eldap.c (Fldap_search_internal): Docstring fixes
6896
6897 1998-07-04  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6898
6899         * nt.c (init_environment): Removed unused PRELOAD_WINSOCK,
6900           EMACSDOC and TERM variables. Added EMACSDEBUGPATHS,
6901           EMACSPACKAGEPATH and INFOPATH variables.
6902           Removed unused get_emacs_configuration function.
6903
6904         * s/windowsnt.h: Don't define EMACS_CONFIGURATION here because
6905           it is now defined at build-time by the makefile.
6906
6907 1998-07-01  James N. Potts  <jnpotts@plutonium.net>
6908
6909         * fileio.c: (expand_file_name): under win32: Don't treat names as
6910         UNC names if a drive letter has been specified.  If a drive has
6911         been specified, strip out extra directory-seperators that
6912         reportedly cause problems under Win95.
6913
6914 1998-07-05  Andy Piper  <andyp@parallax.co.uk>
6915
6916         * faces.c (complex_vars_of_faces): for the gui-element face don't
6917         fallback to the default face, instead provide reasonable default
6918         fallbacks that were previously hardcoded elsewhere.
6919
6920 1998-07-06  Olivier Galibert  <galibert@pobox.com>
6921
6922         * glyphs-x.c (convert_EImage_to_XImage): Fix pixel writing problem
6923         when the X server endianness is different than the client's one.
6924
6925 1998-06-29  Kyle Jones  <kyle_jones@wonderworks.com>
6926
6927         * eval.c (run_hook_with_args_in_buffer): Check
6928           default (non-buffer-local) value of hook for
6929           nil before treating it as a function.  Don't initialize
6930           the `globals' variable twice.
6931
6932 1998-06-24  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6933
6934         * fileio.c: Don't do directory seperator canonicalisation in
6935           substitute-in-file-name because we don't know that the
6936           filename refers to a local file.
6937
6938 1998-06-24  Adrian Aichner  <adrian@xemacs.org>
6939
6940         * process-nt.c (nt_create_process): Try appending the standard
6941           executable file extensions to the filename if none supplied.
6942
6943 1998-06-29  SL Baur  <steve@altair.xemacs.org>
6944
6945         * fileio.c (Fsubstitute_in_file_name): Enable double slash notation
6946         for cygwin32.
6947         From Keisuke Mori <ksk@ntts.com>
6948
6949 1998-06-24  Andy Piper  <andyp@parallax.co.uk>
6950
6951         * toolbar-msw.c (mswindows_output_toolbar): only enable masked
6952         images if we have masks. This handles the xbm case (have masks)
6953         and avoids overuse of resources in the xpm case (generally no masks).
6954         Don't output small toolbars.
6955
6956 1998-06-29  Kyle Jones  <kyle_jones@wonderworks.com>
6957
6958         * eval.c (run_hook_with_args_in_buffer): Don't treat
6959           the default value of a buffer local hook as a list of
6960           hooks unless it is both a cons and the car of that cons
6961           is not Qlambda.
6962
6963 1998-06-29  SL Baur  <steve@altair.xemacs.org>
6964
6965         * extents.c: Email address for Ben Wing is ben@xemacs.org.
6966         * process-unix.c: Ditto.
6967         * mule-coding.h: Ditto.
6968         * mule-coding.c: Ditto.
6969         * mule-charset.c: Ditto.
6970         * mule-charset.h: Ditto.
6971         * file-coding.c: Ditto.
6972         * file-coding.h: Ditto.
6973
6974 1998-06-22  Jonathan Harris  <jhar@tardis.ed.ac.uk>
6975
6976         * event-msw.c: Guard against recursion when freeing
6977           FRAME_MSWINDOWS_TARGET_RECT struture in WM_SIZE processing.
6978
6979         * frame-msw.c: Don't set WS_VISIBLE attribute on first frame.
6980           Call ShowWindow twice in init_frame_3 to get round runemacs
6981           weirdness.
6982
6983 1998-06-27  Hrvoje Niksic  <hniksic@srce.hr>
6984
6985         * scrollbar.c (vertical_scrollbar_changed_in_window): Ditto.
6986
6987         * winslots.h: Rename.
6988
6989         * window.c (specifier_vars_of_window): Renamed
6990         vertical-divider-draggable-p to vertical-divider-always-visible-p,
6991         as suggested by Ben Wing.
6992         (specifier_vars_of_window): Fix docstrings.
6993
6994 1998-06-22  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
6995
6996         * unexaix.c: Line number information works correctly again.
6997
6998 1998-06-22  Olivier Galibert  <galibert@pobox.com>
6999
7000         * emacs.c (__sti__iflPNGFile_c___): Added. See comment. Cry.
7001
7002 1998-06-21  Martin Buchholz  <martin@xemacs.org>
7003
7004         * editfns.c (get_home_directory): ANSIfy.
7005         XEmacs is compilable under C *and* C++.
7006         It's XEmacs, not Xemacs!
7007
7008 1998-06-19  Jonathan Harris  <jhar@tardis.ed.ac.uk>
7009
7010         * console-msw.h: added a list of fonts to device data.
7011
7012         * device-msw.c: enumerate list of available fonts in
7013           mswindows_init_device. Free list in mswindows_delete_device.
7014
7015         * objects-msw.c: Added helper function match_font used by
7016           mswindows_initialize_font_instance and mswindows_list_fonts.
7017           Allow a charset to be specified in a font string, even if
7018           previous fields havn't been specified.
7019
7020 1998-06-23  Greg Klanderman  <greg@alphatech.com>
7021
7022         * indent.c (column_at_point): column cache bugfix.
7023         Set last_known_column_point to the buffer position for
7024         which the column was requested, not buffer's point.
7025
7026         * redisplay.c (decode_mode_spec): for current-column, show
7027         window's point's column, not buffer's point's column.
7028
7029 1998-06-23  Andy Piper  <andyp@parallax.co.uk>
7030
7031         * menubar-msw.c (mswindows_handle_wm_command): use
7032         enqueue_misc_user event rather than
7033         mswindows_enqueue_msic_user_event to fix customize problems. Add some
7034         checks that X does.
7035
7036         * console-msw.h: declare mswindows_enqueue_magic_event.
7037
7038         * event-msw.c (mswindows_enqueue_magic_event): make global.
7039
7040 1998-06-24  Hrvoje Niksic  <hniksic@srce.hr>
7041
7042         * line-number.c (LINE_NUMBER_FAR): Reverted to 16384.
7043         (buffer_line_number): Use EMACS_INT_MAX instead of random LOTS.
7044         (add_position_to_cache): Use EMACS_INT instead of int.
7045
7046 1998-06-21  Olivier Galibert  <galibert@pobox.com>
7047
7048         * lisp-disunion.h (XMARKBIT): Have XMARKBIT return something
7049         suitable for an int used as a boolean (btw, C sucks.).
7050
7051 1998-06-18  Andy Piper  <andyp@parallax.co.uk>
7052
7053         * object-msw.c: remove warnings.
7054
7055         * device-msw.c: #define wrongly named cygwin structure elements.
7056
7057         * s/cygwin32.h: define DEMI_BOLD
7058
7059 1998-06-19  Jonathan Harris  <jhar@tardis.ed.ac.uk>
7060
7061         * redisplay-msw.c: new function mswindows_apply_face_effects.
7062           This is called by output_string and output_cursor to display
7063           underline and strikeout on faces.
7064
7065 1998-06-19  Jonathan Harris  <jhar@tardis.ed.ac.uk>
7066
7067         * console-msw.h: added a list of fonts to device data.
7068
7069         * device-msw.c: enumerate list of available fonts in
7070           mswindows_init_device. Free list in mswindows_delete_device.
7071
7072         * objects-msw.c: Added helper function match_font used by
7073           mswindows_initialize_font_instance and mswindows_list_fonts.
7074           Allow a charset to be specified in a font string, even if
7075           previous fields havn't been specified.
7076
7077 1998-06-15  Jonathan Harris  <jhar@tardis.ed.ac.uk>
7078
7079         * objects-msw.c:
7080           Removed compilation warnings from mswindows_string_to_color.
7081           mswindows_list_fonts returns a more general bogus font.
7082           New lisp-visible function mswindows-color-list.
7083
7084 1998-06-19  David Bush <david.bush@adn.alcatel.com>
7085
7086         * editfns.c (Fuser_login_name): Modify to user new function
7087         user_login_name.
7088         (user_login_name): C only function to avoid Lisp object overhead
7089         Returns "unknown" instead of nil in Cygwin environment
7090
7091         * fileio.c (Fexpand_file_name): Treat "~" and "~user" as
7092         equivalent for current user in Cygwin environment. Use new
7093         function user_login_name to get username.
7094
7095         * lisp.h: Declare user_login_name
7096
7097 1998-06-18  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
7098
7099         * unexaix.c (make_hdr): Fixed bias computations so debugging info
7100         works again.
7101         Some other insignificant nitpicks.
7102
7103 1998-06-18  Andy Piper  <andyp@parallax.co.uk>
7104
7105         * toolbar-msw.c (mswindows_output_toolbar): specify ILC_MASK when
7106         creating the image list and make sure he bk color is transparent.
7107
7108 1998-06-18  Jan Vroonhof  <vroonhof@math.ethz.ch>
7109
7110         * event-Xt.c (emacs_Xt_remove_timeout): Also remove timeout from
7111         completed_timeouts. The timer could have expired.
7112
7113 1998-06-17  Andy Piper  <andyp@parallax.co.uk>
7114
7115         * console-msw.h: move XEMACS_RECT_WH inside frame
7116         parameters. define macors to access it.
7117
7118         * frame-msw.c (mswindows_init_frame_1): use new target_rect
7119         parameter to intialise desired sizing. (mswindows_init_frame_2):
7120         enable and size the frame to something sensible when we get
7121         here. (mswindows_set_frame_properites): use new
7122         mswindows_size_frame_internal function and size frame if frame
7123         parameters not just if init is finished - WM_SIZE happens too
7124         early for some specs. (mswindows_size_frame_internal): new
7125         function abstracted from mswindows_set_frame_properties.
7126         (Vmswindows_use_system_frame_size_defaults):
7127         new variable controls whether to allow the system to pick frame
7128         size defaults, defaults to nil.
7129
7130         * event-msw.c: in WM_SIZE use mswindows_size_frame_internal rather
7131         than duplicated code.
7132
7133 1998-06-15  Colin Rafferty <colin@xemacs.org>
7134
7135         * Makefile.in.in: Made EXTW_LINK expand properly.
7136
7137 1998-06-12  Martin Buchholz  <martin@xemacs.org>
7138
7139         * redisplay.c (vars_of_redisplay): default value of
7140         column-number-start-at-one should be NIL!
7141
7142 1998-06-11  Martin Buchholz  <martin@xemacs.org>
7143
7144         * casefiddle.c:
7145         (upcase-initials "fooBar") ==> "FooBar" instead of "Foobar"
7146
7147 1998-06-05  Hrvoje Niksic  <hniksic@srce.hr>
7148
7149         * eldap.c (Fldap_search_internal): Use build_ext_string instead of
7150         build_string to avoid crashes under Mule.
7151
7152 1998-06-13  Andy Piper  <andyp@parallax.co.uk>
7153
7154         * ntplay.c (play_sound_data_1): don't delete the sound data until
7155         the next sound is played and the previous one finished.
7156
7157 1998-06-10  Samuel Mikes  <smikes@alumni.hmc.edu>
7158
7159         * fileio.c (directory-sep-char): Escape backslashes.
7160
7161 1998-06-10  Hrvoje Niksic  <hniksic@srce.hr>
7162
7163         * event-stream.c: Fix docstring reference.
7164
7165 1998-06-12  Hrvoje Niksic  <hniksic@srce.hr>
7166
7167         * alloc.c (make_float): Remove useless initialization of `next'
7168         field.
7169         (make_pure_float): Ditto.
7170
7171         * lisp.h (struct Lisp_Float): Rename `next' to `__unused__next'.
7172
7173 1998-06-08  Kirill M. Katsnelson  <kkm@kis.ru>
7174
7175         * fileio.c (Fmake_directory_internal): Remove conditionals
7176         on WINDOWSNT when calling mkdir.
7177
7178         * ntproc.c: Deleted the following unused functions:
7179         register_child, reap_subprocess, sys_wait.
7180
7181         * nt.c (sys_rename): Ifzeroed this implementation.
7182         Deleted the following unused functions:
7183         sys_access, sys_chdir, sys_chmod, sys_creat, sys_link, sys_mkdir,
7184         sys_mktemp, sys_rmdir, sys_unlink, sys_close, sys_dup, sys_dup2,
7185         sys_read, sys_write.
7186         Merger sys_fopen and sys_open with sysdep.c implementation.
7187
7188         * sysdep.c: Removed MS-DOS code.
7189         (sys_rename): Deal with Microsoft rename weirdness.
7190         (sys_open): Implemented for Windows.
7191         (sys_fopen): Ditto.
7192         (sys_mkdir): Ditto.
7193
7194 1998-06-08  Kirill M. Katsnelson  <kkm@kis.ru>
7195
7196         * buffer.c (complex_vars_of_buffer): Removed %t description from
7197         the docstring.
7198
7199 1998-06-04  Rick Rankin  <Rick_Rankin-P15254@email.mot.com>
7200
7201         * scrollbar-msw.c: initialize the cbSize element of the
7202         SCROLLINFO struct before calling SetScrollInfo. WinNT seems
7203         to ignore the value of cbSize, but Win95 (and I presume Win98)
7204         appear to want it set to sizeof(SCROLLINFO).
7205
7206 1998-06-04  Kirill M. Katsnelson  <kkm@kis.ru>
7207
7208         * event-stream.c: Defined Qcancel_mode_internal.
7209         (syms_of_event_stream): defsymbol'ed it.
7210
7211         * events.h: Externed it.
7212
7213         * event-msw.c (mswindows_wnd_proc, WM_CANCELMODE): Added this handler.
7214
7215 1998-06-04  Oliver Graf <ograf@fga.de>
7216
7217         * frame-x.c (x_cde_destroy_callback): free the data
7218         (cde-start-drag-internal) corrected root position, 21.1 needs this
7219         hardcoded in Button events
7220         (offix-start-drag-internal) corrected root position
7221
7222 1998-06-03  Kirill M. Katsnelson  <kkm@kis.ru>
7223
7224         * process-nt.c (signal_cannot_launch): Use signal_simple_error()
7225         instead of error().
7226
7227 1998-06-03  Kirill M. Katsnelson  <kkm@kis.ru>
7228
7229         * dialog-msw.c (button_width): Removed `inline' from the function
7230         declaration.
7231
7232 1998-06-03  Rick Rankin  <Rick_Rankin-P15254@email.mot.com>
7233
7234         * frame-msw.c: add WS_VISIBLE flag to the first frame created.
7235         Note that adding this flag to subsequent frames causes problems.
7236
7237 1998-06-03  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
7238
7239         * glyphs-eimage.c (png_instantiate) move 'struct
7240         png_memory_storage tbr' out of nested block to avoid dangling
7241         reference
7242
7243 1998-06-02  Andy Piper  <andyp@parallax.co.uk>
7244
7245         * faces.h:
7246         * faces.c: rename 3d-object -> gui-element. add toolbar face which
7247         inherits from gui-element.
7248
7249         * glyphs-msw.c: use DIBitmaps for xbm bitmaps to be consistent
7250         with existing code, generate masks correctly.
7251
7252 1998-06-03  P. E. Jareth Hein  <jareth@camelot-soft.com>
7253
7254         * glyphs-eimage.c: Changed included header for gifs to use
7255         Gifreader instead of giflib.
7256
7257         * glyphs-x.c: removed the image-related functions that were
7258         moved into glyphs-eimage.
7259
7260 1998-06-02  David Bush  <david.bush@adnb.alcatel.com>
7261
7262         * glyphs.c (bitmap_to_lisp_data) Define XFree to be free
7263         if built without X Windows support.
7264
7265 1998-06-02  Hrvoje Niksic  <hniksic@srce.hr>
7266
7267         * fns.c (Fconcat): Synch docstring with new reality.
7268
7269 1998-06-03  SL Baur  <steve@altair.xemacs.org>
7270
7271         * frame.c: Remove reference to msdos.h (which is going away).
7272         Suggested by Hrvoje Niksic and Kirill Katsnelson.
7273
7274 1998-06-02  P. E. Jareth Hein  <jareth@camelot-soft.com>
7275
7276         * glyphs-eimage.c (jpeg_instantiate): Fix handling of
7277         grayscale images/
7278
7279
7280 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
7281
7282         * events.h: Fixed commentary about misc-user scrollbar events.
7283
7284         * scrollbar-x.c (x_update_vertical_scrollbar_callback): Use frame
7285         object as an event channel, instead of window object.
7286         (x_update_horizontal_scrollbar_callback): Ditto.
7287
7288 1998-05-29  Andy Piper  <andyp@parallax.co.uk>
7289
7290         * ntplay.c (play_sound_data_1) new function. convert alloca data
7291         to malloc if necessary.
7292         (play_sound_file): if the file is not in our path then convert to
7293         data and play.
7294
7295 1998-06-01  SL Baur  <steve@altair.xemacs.org>
7296
7297         * mule-mcpath.c (mc_chdir): Reverse parameters in call to memcpy.
7298         * msdos.c (Frecent_doskeys): Ditto.
7299
7300         * unexalpha.c (unexec): Reverse parameters in call to memcpy.
7301         Suggested by Reggie Perry <perry@zso.dec.com>
7302
7303         * buffer.h: Eliminate size in declaration.
7304
7305 1998-06-01  Olivier Galibert  <galibert@pobox.com>
7306
7307         * unexelfsgi.c (unexec): Cleanup n/nn and remove useless kludge.
7308
7309 1998-06-01  Kirill M. Katsnelson  <kkm@kis.ru>
7310
7311         * gui.c (gui_item_init): Changed the default value for config member
7312         from Qunbound to Qnil.
7313
7314 1998-06-01  Greg Klanderman  <greg@alphatech.com>
7315
7316         * indent.c (vmotion_pixels): Don't #define abs().
7317
7318 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
7319
7320         * s/windowsnt.h: Defined popen and pclose to be _popen and _pclose
7321         respectively.
7322
7323 1998-05-30  Andy Piper  <andyp@parallax.co.uk>
7324
7325         * glyphs.h: add xbm declarations.
7326
7327         * console.h: add xbm_instantiate_method device method.
7328
7329         * glyphs.c (check_valid_xbm_inline) (xbm_validate)
7330         (bitmap_to_lisp_data) (xbm_mask_file_munging) (xbm_normalize)
7331         (xbm_possible_dest_types): moved here from glyphs-x.c. use
7332         locate_pixmap_file device method and read_bitmap_data_from_file
7333         instead of XmuReadBitmapDataFromFile.
7334         (xbm_instatntiate): make a device method.
7335
7336         * glyphs-x.c: see glyphs.c changes. (read_bitmap_data_from_file)
7337         new function that just calls XmuReadBitmapDataFromFile.
7338         (x_xbm_instatntiate): device method from xbm_instantiate.
7339
7340         * glyphs-msw.c (read_bitmap_data) (NextInt)
7341         (read_bitmap_data_from_file): new functions copied from Xmu
7342         sources.
7343         (xbm_create_bitmap_from_data) from Ben <ben@666.com> convert
7344         inline data to an mswindows bitmap.
7345         (init_image_instance_from_xbm_inline) (xbm_instantiate_1)
7346         (mswindows_xbm_instantiate): mswindows-ized versions of the X
7347         functions.
7348
7349 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
7350
7351         * window.c (specifier_vars_of_window): Renamed `has_modeline-p' to
7352         `modeline-visible-p'.
7353         Declared specifier lisp variables at the beginning oh the file
7354         as static.
7355
7356         * procimpl.h (struct process_methods): Changed semantics of
7357         create_process method so it accepts lisp strings instead of
7358         char pointers.
7359
7360         * process.c (Fstart_process_internal): Moved building of
7361         unix style argv from here to process-unix.c, ...
7362
7363         * process-unix.c (unix_create_process): ... right here.
7364
7365         * process-nt.c (nt_create_process): Changed this function to
7366         support new semantics, so avoided a GC problem.
7367
7368         * events.c (Fmake_event): Document misc-user events properties.
7369         (Fmake_event): Do not allow arbitrary objects for channel property
7370         of misc-user events.
7371         (Fmake_event): Change misc-user event validation: it is function
7372         which is required, not button.
7373
7374         * event-msw.c (mswindows_user_event_p): Recognize misc user events as
7375         user events.
7376         (mswindows_enqueue_misc_user_event): Added function.
7377         (mswindows_bump_queue): Removed function.
7378         (mswindows_enqueue_magic_event): Support NULL HWND parameter.
7379         (mswindows_wnd_proc, WM_CLOSE): Use mswindows_enqueue_misc_user_event().
7380         (mswindows_wnd_proc, WM_EXITSIZEMOVE): Ditto.
7381         (emacs_mswindows_handle_magic_event): Handle XM_BUMPQUEUE, by doing
7382         really nothing, which is my personal favorite thing.
7383
7384         * console-msw.h: Removed prototype for mswindows_bump_queue().
7385         Added prototype for mswindows_enqueue_misc_user_event().
7386
7387         * menubar-msw.c (mswindows_handle_wm_command): Use
7388         mswindows_enqueue_misc_user_event().
7389
7390         * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
7391
7392         * dialog-msw.c (dialog_proc): Ditto.
7393
7394         * scrollbar-msw.c (mswindows_handle_scrollbar_event): Ditto.
7395          (mswindows_handle_scrollbar_event): Use frame, not window, for misc
7396         user events channel.
7397
7398 1998-05-29  Greg Klanderman  <greg@alphatech.com>
7399
7400         * window.c (Fwindow_displayed_text_pixel_height): was relying on
7401         incorrect semantics of vmotion_pixels which has been fixed.  don't
7402         use it anymore as it can't easily be used.
7403
7404         * indent.c (vmotion_pixels): fix off by one bug moving up.  also
7405         the motion was reported incorrectly if you tried to go past end of
7406         buffer.
7407
7408 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
7409
7410         * toolbar.h: Removed misleading commentary, as Martin suggested.
7411
7412 1998-05-30  Kirill M. Katsnelson  <kkm@kis.ru>
7413
7414         * lisp.h: Extern Qactivate_menubar_hook.
7415
7416         * menubar-msw.c (unsafe_handle_wm_initmenu_1): Pass correct value to
7417         run_hook ().
7418
7419 1998-05-29  Andy Piper  <andyp@parallax.co.uk>
7420
7421         * glyphs-msw.c: use BPLINE macro.
7422
7423         * select-msw.c (mswindows-selection-exists-p)
7424         (mswindows-delete-selection): doc string fixes.
7425
7426         * toolbar-msw.c (mswindows_output_toolbar): make disabled buttons
7427         unpressable. warning elimination.
7428
7429 1998-05-28  Martin Buchholz  <martin@xemacs.org>
7430
7431         * alloc.c (dbg_constants):
7432         * dbxrc:
7433         * gdbinit:
7434         Remove toolbar_data debugging code, since that lrecord has
7435         also been removed.
7436
7437 Wed May 27, 1998  Darryl Okahata  <darrylo@sr.hp.com>
7438
7439         * alloc.c: zap cached value of (user-home-directory), so that
7440           it's not undumped.
7441
7442         * buffer.c: From init_buffer(), separated out code that
7443           determined the initial directory for the *scratch* buffer, and
7444           put them into a function called "init_initial_directory()".
7445           The initial directory is now available as a global "char *"
7446           called initial_directory.
7447
7448         * buffer.h: Added extern entries for initial_directory[] and
7449           init_initial_directory().
7450
7451         * editfns.c: added new elisp function "user-home-directory",
7452         which basically returns getenv("HOME"), but attempts to use
7453         other values if $HOME isn't set.This may have to be tweaked in
7454         the future as, under Unix, "/" is used if $HOME isn't set (this
7455         probably should be set to the current directory).  To support
7456         this, a new C function, "get_home_directory()", now exists,
7457         which returns the "home directory", as a "char *" string.
7458
7459         * emacs.c: Rearrange NT initialization order so that
7460         environment/registry variables will be properly entered into
7461         Vprocess_enviroment.
7462
7463         * fileio.c: replaced egetenv("HOME") with calls to the new
7464           get_home_directory().
7465
7466         * lisp.h: Added function prototypes for uncache_home_directory()
7467           and get_home_directory(), along with lisp prototypes for
7468           Fuser_home_directory() and friends.
7469
7470         * nt.c: replaced getenv("HOME") with calls to the new
7471           get_home_directory().
7472
7473         * sysfile.h: for WINDOWSNT, #include <direct.h>, to suppress
7474           warnings about getcwd(), etc. not having prototypes.
7475
7476 1998-05-28  Kirill M. Katsnelson  <kkm@kis.ru>
7477
7478         * process-nt.c (send_signal): Emulate SIGHUP.
7479         (validate_signal_number): Ditto.
7480
7481         * event-msw.c (mswindows_wnd_proc, WM_KEYDOWN): Unconditionally
7482         remove MOD_SHIFT from ASCII characters.
7483         (mswindows_wnd_proc, WM_KEYDOWN): Do not activate the menubar when
7484         F10 is pressed.
7485
7486 1998-05-24  Oliver Graf <ograf@fga.de>
7487
7488         * frame-x.c (cde-start-drag-internal): added filename and multi-
7489         data transfers
7490         (x_cde_convert_callback) dito
7491
7492 1998-05-26  Oliver Graf <ograf@fga.de>
7493
7494         * frame-x.c: include event-mod.h also with CDE
7495         (x_cde_convert_callback) made the thing working
7496         (cde-start-drag-internal) also debugging
7497
7498 1998-05-25  Hans Guenter Weigand  <hgweigand@wiesbaden.netsurf.de>
7499
7500         * m/sparc.h:
7501         * getloadavg.c:
7502         * malloc.c:
7503         * unexec.c:
7504         * mem-limits.h:
7505           - add __OpenBSD__ where __NetBSD__ was found.
7506           - TODO: replace platform-specific conditional compilation by
7507             feature tests in configure.in.
7508
7509 1998-05-15  Greg Klanderman  <greg@alphatech.com>
7510
7511         * window.c (Fwindow_displayed_text_pixel_height): New function.
7512         (syms_of_window): DEFSUBR it.
7513
7514         * indent.c (Fvertical_motion_pixels): New function - request
7515         movement in pixels.
7516         (vmotion_pixels): helper.
7517         (syms_of_indent): DEFSUBR.
7518         * lisp.h: declaration for vmotion_pixels().
7519
7520         * indent.c (Fvertical_motion): Add optional third argument PIXELS,
7521         to request returning motion in pixels.
7522         (Fvertical_motion_pixels): Remove, functionality merged into
7523         Fvertical_motion.
7524         * window.c (window_scroll): call Fvertical_motion with 3 arguments.
7525         (Fmove_to_window_line): ditto.
7526         * lisp.h: Change declaration for Fvertical_motion.
7527
7528         * window.c: rename window-text-pixel-{height,width,edges} to
7529         window-text-area-pixel-*.
7530
7531 1998-05-26  Gunnar Evermann  <Gunnar.Evermann@nats.informatik.uni-hamburg.de>
7532
7533         * tooltalk.c (vars_of_tooltalk) added staticpro for
7534         Tooltalk_Message_plist_str and Tooltalk_Pattern_plist_str
7535
7536 1998-05-27  Andy Piper  <andyp@parallax.co.uk>
7537
7538         * faces.c: create a new 3d_object_face, make modeline and
7539         vertical_divider faces fallback to this rather than the default.
7540
7541 1998-05-21  Andy Piper  <andyp@parallax.co.uk>
7542
7543         * s/cygwin32.h: define charsets for cygwin.
7544
7545 1998-05-25  Andy Piper  <andyp@parallax.co.uk>
7546
7547         * toolbar-msw.c (mswindows_output_toolbar): fix up button sizes
7548         and coordinates. resize bitmaps if we have already settled on a
7549         different size.
7550
7551         * glyphs-msw.c (xpm_to_eimage): add ';' for mswindows compiler.
7552
7553 1998-05-25  Hrvoje Niksic  <hniksic@srce.hr>
7554
7555         * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
7556
7557         * menubar-msw.c (mswindows_handle_wm_command): Ditto.
7558
7559         * gui.h: Ditto.
7560
7561         * gui-x.c (popup_selection_callback): Ditto.
7562
7563         * dialog-msw.c (dialog_proc): get_callback -> get_gui_callback.
7564
7565         * gui.c (get_callback): Renamed to get_gui_callback.
7566
7567 1998-05-17  Martin Buchholz  <martin@xemacs.org>
7568
7569         * glyphs.h: order rearrangement.
7570
7571         * device-tty.c (tty_asynch_device_change): Warning suppression.
7572         * device-x.c (x_device_system_metrics): Warning suppression.
7573         Make Doc strings consistent with coding standards.
7574
7575 1998-05-24  Martin Buchholz  <martin@xemacs.org>
7576
7577         * general.c: multiple definition of `Qicon'.  general.c seems
7578           like a good home for Qicon.
7579
7580 1998-05-20  Kirill M. Katsnelson  <kkm@kis.ru>
7581
7582         * This patch is to fix compilation warnings under Windows.
7583
7584         * s/windowsnt.h: Encapsulate getpid with sys_getpid.
7585         Added prototypes for FSF inherited functions, with which XEmacs is
7586         sprinkled thoroughly.
7587         Removed some #if 0 code. Bracketed some more definitions, probably
7588         related to Visual C versions prior to 4 (we do not support them).
7589
7590         * sysfloat.h (logb): Finally, get logb() prototyped.
7591
7592         * sysfile.h: Added Windows specific includes.
7593         Removed old Windows specific code bracketed with #if 0.
7594
7595         * sysdep.h: Added prototype for xrealpath().
7596
7597         * sysdep.c (sys_getpid): Added function, to support '95 negative pids.
7598
7599         * symsinit.h: Added prototypes for syms_of_dired_mswindows,
7600         vars_of_dired_mswindows and init_ntproc (Grrr).
7601
7602         * realpath.c: Added Windows specific include files.
7603         (xrealpath): Conditionalized declaration of some auto variables on
7604         S_IFLNK, to avoid warnings.
7605
7606         * ntproc.c: Disabled some compiler warnings. This file is going to
7607         die, so I have not cleaned it up much.
7608         (set_process_dir): Const parameter.
7609         (Fwin32_short_file_name): Down CHECK_* macros to one argument.
7610         (Fwin32_long_file_name): Ditto.
7611         (Fwin32_set_process_priority): Ditto. Why didn't I remove these
7612         three functions?
7613
7614         * nt.h: Added prototypes for set_process_dir and convert_time.
7615
7616         * nt.c: More include files.
7617         (getpwnam): Consted char* argument.
7618         (get_emacs_configuration): Const return value.
7619         (opendir): Const argument.
7620         (stat): Casted converstion long->short.
7621         (stat): Removed ad hoc and questionable support for non-MSC compile.
7622         (sys_pipe): Removed unused auto variable.
7623         (_sys_read_ahead): Removed calls to DebPrint.
7624         (sys_read): Ditto, in 2 places.
7625         (term_ntproc): Added unused int parameter to signal handler, to
7626         avoid a warning when compiling a call to signal().
7627         (msw_sigset): Properly return old signandler or NULL instead of void.
7628
7629         * floatfns.c (Flogb): Casted arguments to unary minus to signed.
7630
7631         * gmalloc.c (morecore): Ditto.
7632         (_free_internal): Ditto.
7633
7634         * lread.c (parse_integer): Ditto.
7635
7636         * dired-msw.c: Added several include files.
7637
7638         * cmdloop.c (Fcommand_loop_1): Added Microsoft C to the Big List
7639         of Compilers to Shut Up.
7640
7641         * callproc.c: Added #includes to suppress warnings under Windows.
7642         (init_callproc): Removed #if0'ed code and unused variables.
7643
7644 1998-05-25  Andy Piper  <andyp@parallax.co.uk>
7645
7646         * device-msw.c (mswindows_device_system_metrics): do planes in a
7647         way consistent with X.
7648
7649         * glyphs-msw.c (mswindows_initialize_image_instance_mask): don't
7650         use SetPixel, use DIBits functions.
7651         (xpm_to_eimage): frob colors more closely like xpm deos.
7652
7653         * toolbar-msw.c: only resize bitmaps when shrinking. Adjust look
7654         to be closer to X version.
7655
7656         * event-msw.c: use tooltip string directly.
7657
7658         * redisplay-msw.c: reinstate Kirill's bg pixmap change.
7659
7660         * objects-msw.c: frob rgb colors that only Kyle uses.
7661
7662         * dialog-msw.c (button_width): INLINE -> inline.
7663
7664 1998-05-23  SL Baur  <steve@altair.xemacs.org>
7665
7666         * getloadavg.c (getloadavg): Fix typo.
7667
7668 1998-05-23  Kirill M. Katsnelson  <kkm@kis.ru>
7669
7670         * objects-msw.c (mswindows_initialize_font_instance): Added support
7671         for font character sets.
7672         Replaced 'XXX' with '####' in comments throughout the file.
7673
7674 1998-05-23  Kirill M. Katsnelson  <kkm@kis.ru>
7675
7676         * emacs.c (main_1): Added calls to vars_of_dialog_mswindows() and
7677         console_type_create_dialog_mswindows(), to initialize Windows dialog
7678         support.
7679
7680         * symsinit.h: Prototyped the above functions.
7681
7682         * dialog-x.c (x_popup_dialog_box): Moved dialog descriptor consistency
7683         checks to dialog.c...
7684
7685         * dialog.c (Fpopup_dialog_box): ...right here. Added more checks: a
7686         device must support dialog boxes, and the descriptor must supply at
7687         least one button.
7688
7689         * dialog-msw.c: New file, dialogs for Windows.
7690
7691 1998-05-21  Oscar Figueiredo  <Oscar.Figueiredo@di.epfl.ch>
7692
7693         * eldap.c (ldap_search_unwind): Return Qnil instead of nothing
7694         (Fldap_search_internal): Removed unused variable `err'
7695
7696         * eldap.h: Moved Lisp_LDAP declaration here instead of using a
7697         forward declaration
7698
7699 1998-05-17  Martin Buchholz  <martin@xemacs.org>
7700
7701         * eldap.h: eldap.[ch] should never be used unless HAVE_LDAP is
7702         defined.  Therefore there is no need to handle the case when
7703         HAVE_LDAP is undefined.  Similarily, there is no reason to have
7704         any code wrapped within `#ifdef emacs', since this code is only
7705         useful within an emacs.  This simplifies the code significantly.
7706
7707         * inline.c: Include eldap.h only if HAVE_LDAP.
7708         * inline.c: Don't bother including TT_C_H_PATH, since tooltalk.h
7709         already does that.
7710
7711 1998-05-21  Kirill M. Katsnelson  <kkm@kis.ru>
7712
7713         * unexnt.c (copy_executable_and_dump_data_section): Suppress
7714         printing dump stats when building without DEBUG_XEMACS.
7715         (dump_bss_and_heap): Ditto.
7716
7717 1998-05-21  Andy Piper  <andyp@parallax.co.uk>
7718
7719         * gnuclient.c: don't suppress window system if there is no display
7720         and we are running under mswindows. send 'mswindows device type if
7721         we are in this situation.
7722
7723 1998-05-20  Andy Piper  <andyp@parallax.co.uk>
7724
7725         * general.c:
7726         * lisp.h: Qbitmap, Qcursor, Qicon moved here from glyphs-msw.c.
7727
7728         * glyphs-msw.c: change cursor imgae type name to resource. Fix
7729         some nits.
7730
7731 1998-05-20  Kirill M. Katsnelson  <kkm@kis.ru>
7732
7733         * EmacsFrame.c (Xt_StringToScrollBarPlacement):  Added support for
7734         {top,bottom}-{left,right} values in addition to
7735         {top,bottom}_{left,right}.
7736
7737 1998-05-18  Hrvoje Niksic  <hniksic@srce.hr>
7738
7739         * fileio.c (Fmake_temp_name): Remove unreached code.
7740
7741         * process-nt.c (validate_signal_number): Use
7742         signal_simple_error().
7743
7744 1998-05-19  Martin Buchholz  <martin@xemacs.org>
7745
7746         * unexhp9k800.c:
7747         * sound.c (vars_of_sound):
7748         * sysdep.c (reset_sigio_on_device):
7749         * window.c (window_bottom_gutter_height):
7750         unexhp9k800.c:258: warning: implicit declaration of function
7751         `calculate_checksum'
7752         sound.c:604: warning: implicit declaration of function `vars_of_hpplay'
7753         sysdep.c:1012: warning: unused variable `owner'
7754         window.c:993: warning: `window_right_toolbar_width' defined but not used
7755
7756 1998-05-19  Andy Piper  <andyp@parallax.co.uk>
7757
7758         * glyphs-msw.c (mswindows_create_resized_mask)
7759         (mswindows_create_resized_bitmap): new funnctions split out from
7760         mswindows_resize_dibitmap_instance.
7761
7762         * glyphs-msw.h: declare new resize functions.
7763
7764         * toolbar-msw.c (mswindows_output_toolbar): use new bitmap resize
7765         functions so that the original bitmaps are preserved.
7766
7767         * sheap.c: fixup static heap exhausted error to avoid FAQs.
7768
7769         * redisplay-msw.c (mswindows_output_blank): fixup brush from bg
7770         color if we are trying to output 0 depth bg pixmap.
7771
7772         * scrollbar-msw.c: warning elimination.
7773
7774 1998-05-18  Martin Buchholz  <martin@xemacs.org>
7775
7776         * frame-x.c (x_update_frame_external_traits): Start preprocessor
7777         directives in column 1.
7778
7779         * search.c (skip_chars): Avoid using xzero with arrays, since some
7780         compilers get confused by the construct &array.
7781
7782 1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
7783
7784         * objects-msw.h:
7785         * objects-msw.c: Changed the charset value for a new font from
7786         "don't care" to "ansi".
7787
7788         * glyphs-msw.c (convert_EImage_to_DIBitmap): Warnings fix.
7789
7790 1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
7791
7792         * event-msw.c (mswindows_wnd_proc, WM_KEYDOWN): Do not clear shift
7793         modifier on control chars.
7794         Use IsCharAlpha() instead of isaplha().
7795
7796 1998-05-19  Kazuyuki IENAGA <ienaga@jsys.co.jp>
7797
7798         * s/freebsd.h: FreeBSD 2.2.6 now supports setlocale(LC_ALL, "").
7799
7800 1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
7801
7802         * objects-msw.c (mswindows_initialize_font_instance): Use ANSI
7803         charset when creating font.
7804         (mswindows_initialize_color_instance): Do not create brush along
7805         with a color.
7806         (mswindows_finalize_color_instance): Do not delete it then.
7807
7808         * objects-msw.h (struct mswindows_color_instance_data): Removed
7809         brush slot, and corresponding accessor macro.
7810
7811 1998-05-18  Kirill M. Katsnelson  <kkm@kis.ru>
7812
7813         * toolbar.c: Removed toolbar_data lrecord implementation.
7814         (mark_frame_toolbar_buttons_dirty): Replase usage of toolbar_data
7815         with toolbar_buttons (via FRAME_TOOLBAR_BUTTONS).
7816         (compute_frame_toolbar_buttons): Ditto.
7817         (CHECK_TOOLBAR): Ditto.
7818         (set_frame_toolbar): Removed allocation of toolbar_data lrecord.
7819         (update_frame_toolbars): Do not check for changed buffer
7820         here. Toolbar information is provided by cached specs in
7821         windows. The check for buffer is eliminated becuase toolbars are
7822         marked changed in set_frame_selected_window() in frame.c
7823         Added check for changed toolbars geometry.
7824         (compute_frame_toolbars_data): Removed unused second parameter;
7825         Adjusted callers of this static function throughout the file.
7826         (init_frame_toolbars): Initialize current_toolbar_size.
7827         (update_frame_toolbars): Use DEVICE_SUPPORTS_TOOLBARS_P instead of
7828         what is its current expansion, for clarity.
7829         (init_frame_toolbars): Ditto.
7830         (init_device_toolbars): Ditto.
7831         (init_global_toolbars): Ditto.
7832
7833         * toolbar.h: Removed definition of toolbar_data lrecord.
7834         Added accessor macros FRAME_TOOLBAR_BUTTONS and
7835         FRAME_CURRENT_TOOLBAR_SIZE.
7836         Added macro DEVICE_SUPPORTS_TOOLBARS_P.
7837
7838         * toolbar-x.c (x_output_toolbar): The same change as in
7839         toolbar-msw.c
7840         (x_output_toolbar): Ditto.
7841         (x_redraw_exposed_toolbar): Ditto.
7842
7843         * toolbar-msw.c (mswindows_output_toolbar): Retrieve current
7844         buttons from toolbar_buttons using FRAME_TOOLBAR_BUTTONS macro.
7845         (mswindows_output_toolbar): Ditto.
7846         (mswindows_output_toolbar): Ditto.
7847
7848         * frame.c (mark_frame): Removed marking of arrays, according to
7849         frameslots.h change.
7850         (nuke_all_frame_slots): Ditto.
7851         (set_frame_selected_window): Mark toolbars changed when
7852         last_nonminibuf_window changes.
7853
7854         * frame.h (struct frame): Moved some slots to frameslots.h.
7855         Added current_toolbar_size array.
7856         Changed references from toolbar_data to toolbar_buttons in macros
7857         FRAME_RAW_THEORETICAL_TOOLBAR_VISIBLE,
7858         FRAME_RAW_THEORETICAL_TOOLBAR_SIZE and
7859         FRAME_RAW_THEORETICAL_TOOLBAR_BORDER_WIDTH.
7860
7861         * frameslots.h: Added macro MARKED_SLOT_ARRAY a la winslots.h
7862         Moved arrays of lisp objects here from frame.h: toolbar_size,
7863         toolbar_visible_p, toolbar_border_width.
7864         Removed toolbar_data slot and added toolbar_buttons.
7865
7866 1998-05-17  Kirill M. Katsnelson  <kkm@kis.ru>
7867
7868         * symsinit.h: Externed syms_of_process_nt()
7869
7870         * emacs.c (main_1): Call syms_of_process_nt()
7871
7872         * process-nt.c: Quote process arguments by a call to Lisp function
7873         `nt-quote-process-args'.
7874         (syms_of_process_nt): New function.
7875         (nt_send_process): Flush data stream after each write, to avoid
7876         leaving buffered data.
7877         (nt_send_process): When blocked on process output, wait for
7878         process to slurp more for progressively increasing time intervals.
7879
7880 1998-05-17  Martin Buchholz  <martin@xemacs.org>
7881
7882         * window.c (have_undivided_common_edge): Make file-local function
7883         static.
7884         (map_windows): Return 0 if all map functions successful.
7885         Fix typos.
7886
7887         * winslots.h: Use unlikely names for local variables in macros to
7888         avoid shadowing warnings.
7889
7890 1998-05-17  Andy Piper  <andyp@parallax.co.uk>
7891
7892         * toolbar-msw.c (mswindows_output_toolbar): hash on toolbar width
7893         so that we re-output if the toolbar size has changed.
7894
7895 1998-05-17  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
7896
7897         * s/aix4-2.h (ALIGN_DATA_RELOC): Undefined to support new unexaix.c.
7898
7899         * s/aix3-1.h (ALIGN_DATA_RELOC): Defined to support new unexaix.c.
7900
7901         * unexaix.c: Massive cleanup and support of AIX 4.2 (and hopefully
7902         greater).
7903
7904 1998-05-16  Kirill M. Katsnelson  <kkm@kis.ru>
7905
7906         * glyphs-msw.c: Defined OEMRESOURCE before including windows.h to
7907         get bitmap manifest constants defined.
7908
7909         * console-msw.h: Include system files in angle brackets, not in
7910         quotes.
7911
7912         * window.c (specifier_vars_of_window): Fixed a typo in
7913         `vertical-divider-line-width' docstirng.
7914
7915 1998-05-16  Olivier Galibert  <galibert@pobox.com>
7916
7917         * line-number.c (delete_invalidate_line_number_cache): Use an
7918         EMACS_INT.
7919         (buffer_line_number): Remove dangerous, plain wrong when using
7920         64bits emacs ints, cast.
7921
7922         * insdel.c (buffer_delete_range): Use an EMACS_INT.
7923
7924         * cmds.c (Fforward_line): Use EMACS_INTs.
7925
7926         * search.c (bi_scan_buffer): Change to use EMACS_INTs.
7927         (scan_buffer): Ditto.
7928         (bi_find_next_newline_no_quit): Remove useless cast.
7929         (find_next_newline_no_quit): Ditto.
7930         (find_next_newline): Ditto.
7931         (find_before_next_newline): Use an EMACS_INT.
7932
7933         * lisp.h: Change scan_buffer to pass EMACS_INTs.
7934
7935 1998-05-16  Hrvoje Niksic  <hniksic@srce.hr>
7936
7937         * menubar-msw.c (mswindows_handle_wm_command): Ditto.
7938
7939         * toolbar-msw.c (mswindows_handle_toolbar_wm_command): Ditto.
7940
7941         * gui-x.c (popup_selection_callback): Use it.
7942
7943         * gui.h (get_callback): Declare it.
7944
7945         * gui.c (get_callback): New function.
7946
7947 1998-05-15  SL Baur  <steve@altair.xemacs.org>
7948
7949         * window.c (have_undivided_common_edge): Guard scrollbar specific
7950         stuff.
7951         (window_needs_vertical_divider_1): Ditto.
7952
7953 1998-05-16  Hrvoje Niksic  <hniksic@srce.hr>
7954
7955         * emacs.c (decode_path): Eliminate compiler warning.
7956         (Fdecode_path): Renamed to Fsplit_path.
7957         (Fsplit_string_by_char): New function.
7958
7959 1998-05-14  Damon Lipparelli  <lipp@primus.com>
7960
7961         * winslots.h: close comment
7962
7963 1998-05-16  Kirill M. Katsnelson  <kkm@kis.ru>
7964
7965         * callproc.c: Removed declared and unused variable Qbuffer_file_type.
7966
7967         * bufslots.h: Removed buffer_file_type slot.
7968
7969         * buffer.c (complex_vars_of_buffer): Removed buffer_file_type from
7970         buffer local flags.
7971         (complex_vars_of_buffer): Removed buffer-file-type variable and
7972         its default reference.
7973
7974 1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
7975
7976         * faces.c (complex_vars_of_faces): Defined
7977         Vvertical_divider_face.
7978         (vars_of_faces): Staticpro it.
7979
7980         * faces.h: Externed Vvertical_divider_face.
7981
7982         * redisplay-x.c (x_output_vertical_divider): Use
7983         Vvertical_divider_face to draw the divider instead of modeline
7984         face.
7985
7986         * redisplay-msw.c (mswindows_output_vertical_divider): Draw
7987         divider face using Vvertical_divider_face background.
7988         Fix drawing spacing gaps around the divider.
7989
7990 1998-05-14  Didier Verna  <verna@inf.enst.fr>
7991
7992         * redisplay-x.c (x_output_vertical_divider): removed hard-wired
7993         values for the vertical divider line width and spacing. Use the
7994         cached values from the window structure instead.
7995         (x_divider_width): ditto.
7996
7997         * window.c (specifier_vars_of_window): new specifiers:
7998         vertical-divier -line-width and -spacing.
7999         (vertical_divider_global_width_changed): formerly known as
8000         vertical_divider_shadow_thickness_changed.
8001
8002         * winslots.h: new slots: vertical_specifier _line_width and
8003         _spacing. Plus corrected a comment typo.
8004
8005 1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
8006
8007         * window.h: Declared window_divider_width().
8008
8009         * console-stream.c (stream_divider_width): Removed method.
8010         (console_type_create_stream): And declaration for it.
8011
8012         * redisplay.c (pixel_to_glyph_translation): Use
8013         window_divider_width() instead of divider_width redisplay method.
8014         (pixel_to_glyph_translation): Fix top divider edge calculation
8015         when scrollbar is on top.
8016
8017         * window.c (window_divider_width): New function, an outphaser for
8018         divider_width redisplay method.
8019         (window_right_gutter_width): Use it.
8020         (specifier_vars_of_window): For vertical-divider-{spacing,line-width}
8021         specifiers, set fallback values differently on TTYs, and document
8022         the behavior of these on TTYs in the docstrings.
8023
8024         * scrollbar.c (update_scrollbar_instance): Use
8025         window_divider_width() instead of divider_width redisplay method.
8026
8027         * console.h (struct console_methods): Removed divider_width_method.
8028
8029         * redisplay-tty.c (tty_divider_width): Removed device method.
8030         (console_type_create_redisplay_tty): Removed definition for it.
8031         (tty_output_vertical_divider): Respect the value returned by
8032         window_divider_width thus divider line width specification.
8033
8034         * redisplay-msw.c (mswindows_divider_width): Removed device method.
8035         (console_type_create_redisplay_mswindows): Removed definition for it.
8036         (mswinodws_output_vertical_divider): Respect the value returned by
8037         window_divider_width thus divider line width specification.
8038
8039 1998-05-15  Andy Piper  <andyp@parallax.co.uk>
8040
8041         * toolbar-msw.c: guess toolbar frame size a bit more accurately.
8042
8043 1998-05-15  Andy Piper  <andyp@parallax.co.uk>
8044
8045         * glyphs-msw.c: resource loading implementation.
8046         (cursor_normalize): new function.
8047         (cursor_validate): ditto.
8048         (cursor_instantiate): ditto.
8049         (cursor_name_to_resource): ditto.
8050         (cursor_possible_dest_types): ditto.
8051         (check_valid_symbol): ditto.
8052         (check_valid_string_or_int): ditto.
8053
8054 1998-05-14  Martin Buchholz  <martin@xemacs.org>
8055
8056         * sysdep.c (tty_init_sys_modes_on_device): Treat VSUSP just like
8057         VINTR and VQUIT.
8058
8059         * process-unix.c (process_signal_char): Use VSUSP instead of
8060         non-standard VSWTCH.  Always prefer VSUSP to VSWTCH.
8061
8062 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
8063
8064         * specifier.c (specifier_instance): Change locale precedence of
8065         instantiation so window locale has higher priority than buffer
8066         locale.
8067         (Fspecifier_instance): Reflect this in docstring.
8068         (Fadd_spec_list_to_specifier): Ditto.
8069         (Fadd_spec_to_specifier): Ditto.
8070         (Fremove_specifier): Ditto.
8071
8072 1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
8073
8074         ** Dialog separation into a device method from Andy Piper
8075
8076         * emacs.c (main_1): Call console_type_create_dialog_x().
8077
8078         * dialog-x.c (x_popup_dialog_box): Old Fpopup_dialog_box converted
8079         into this device method.
8080         (console_type_create_dialog_x): New function.
8081
8082         * dialog.c (Fpopup_dialog_box): New function.
8083         (syms_of_dialog): Defsubr it.
8084
8085         * console.h (struct console_methods): Declared
8086         popup_dialog_box_method().
8087
8088         * symsinit.h: Defined console_type_create_dialog_{x,mswindows}
8089
8090 1998-05-14  Oliver Graf <ograf@fga.de>
8091
8092         * dragdrop.c (vars_of_dragdrop): dragdrop-protocols created
8093         * frame-x.c (x_cde_transfer_callback): checked for merge errors
8094
8095 1998-05-13  Oliver Graf <ograf@fga.de>
8096
8097         * dragdrop.c (vars_of_dragdrop): provide dragdrop-api
8098
8099 1998-05-15  Kirill M. Katsnelson  <kkm@kis.ru>
8100
8101         * console.h (device_metrics): Removed dbcs, input-method-editor
8102         and right-to-left metrics.
8103
8104         * device.c (Fdevice_system_metric): Ditto.
8105         (Fdevice_system_metrics): Ditto.
8106         (syms_of_device): Ditto.
8107         (Fdevice_system_metric): Swapped DEVICE and METRIC parameters back
8108         again.
8109
8110 1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
8111
8112         * line-number.h (mark_line_number_cache): Remove unused
8113         declaration.
8114
8115         * line-number.c (LINE_NUMBER_FAR): Increase to 32768.
8116         (get_nearest_line_number): Simplify.
8117         (add_position_to_cache): Make the old marker point nowhere.
8118
8119 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
8120
8121         ** Renamed window-divider-map => vertical-divider-map
8122         and event-over-divider-p => event-over-vertical-divider-p,
8123         in the following files/functions:
8124         * events.h:
8125         * events.c (Fevent_over_divider_p):
8126         * keymap.c (get_relevant_keymaps):
8127         (vars_of_keymap):
8128
8129         * redisplay.h (OVER_V_DIVIDER): Renamed so from OVER_DIVIDER.
8130
8131         * redisplay.c (pixel_to_glyph_translation): Use OVER_V_DIVIDER.
8132
8133 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
8134
8135         * window.c (vertical_divider_changed_in_window): Renamed so.
8136         (specifier_vars_of_window): Defined Vvertical_divider_draggable_p.
8137         (window_needs_vertical_divider_1): Decide whether we need it based
8138         on the value of the above specifier. If separators are unwanted,
8139         put them only if there's no scrollbar between this window and its
8140         right neighbor.
8141         (have_undivided_common_edge): New function, helper for the above.
8142         (window_needs_vertical_divider): Return either a cached value,
8143         or clauclate and cache one.
8144         (invalidate_vertical_divider_cache_in_window): Implemented.
8145         (map_windows): Changed return type to int, return the value from
8146         MAPFUN.
8147
8148         * window.h: Prototype invalidate_vertical_divider_cache_in_window.
8149         (struct window): Added need_vertical_divider_p and
8150         need_vertical_divider_valid_p.
8151
8152         * winslots.h: Added vertical_divider_draggable_p slot.
8153
8154         * scrollbar.c (vertical_scrollbar_changed_in_window): Implemented.
8155         (specifier_vars_of_scrollbar): Used it in all vertical specifiers.
8156
8157         * frame.c (invalidate_vertical_divider_cache_in_frame): New function.
8158
8159         * frame.h (MARK_FRAME_WINDOWS_STRUCTURE_CHANGED): Call
8160         invalidate_vertical_divider_cache_in_frame().
8161         Prototype it.
8162
8163 1998-05-14  Andy Piper  <andyp@parallax.co.uk>
8164
8165         * toolbar-msw.c: provide correct parameters to TB_SETROWS.
8166
8167         * glyphs-msw.c (mswindows_initialize_image_instance_mask): size
8168         masks correctly and don't select 0.
8169
8170 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
8171
8172         * winslots.h: New file, declaration of some struct window and
8173         struct saved_window members.
8174
8175         * window.h (struct window): Include it, with required preprocessor
8176         magic.
8177
8178         * window.c (mark_window): Ditto.
8179         (allocate_window): Ditto.
8180         (struct saved_window): Ditto.
8181         (mark_window_config): Ditto.
8182         (saved_window_equal): Ditto.
8183         (Fset_window_configuration): Ditto.
8184
8185 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
8186
8187         * redisplay-msw.c (mswindows_output_vertical_divider): Syntax fix.
8188
8189 1998-05-12  Didier Verna  <verna@inf.enst.fr>
8190
8191         * redisplay-x.c (x_output_vertical_divider): draw shadows around
8192         the divider line. The shadow thickness is currently
8193         hard-wired. This will probably be turned into a specifier soon.
8194
8195 1998-05-12  Didier Verna  <verna@inf.enst.fr>
8196
8197         * console.h (struct console_methods): the divider_width console
8198         method now requires a struct window * argument.
8199
8200         * redisplay-x.c (x_divider_width): ditto. Plus remove
8201         X_DIVIDER_WIDTH, X_DIVIDER_SHADOW_THICKNESS.
8202         (x_output_vertical_divider): give a depressed look when the shadow
8203         thickness is negative.
8204
8205         * console-stream.c (stream_divider_width): pass a struct window *
8206         argument.
8207
8208         * redisplay-tty.c (tty_divider_width): ditto.
8209
8210         * window.c (window_right_gutter_width): totdi.
8211
8212         * redisplay.c (generate_modeline): ittod.
8213
8214         * scrollbar.c (update_scrollbar_instance): ttido.
8215
8216         * redisplay-msw.c (mswindows_divider_width): ottid.
8217         WARNING: this enables to compile, but the feature is not functional.
8218
8219         * window.h (struct window): new field
8220         vertical_divider_shadow_thickness.
8221
8222         * window.c (specifier_vars_of_window): new specifier
8223         vertical-divider-shadow-thickness.
8224         (vertical_divider_shadow_thickness_changed): new function to
8225         inform redisplay that the window has changed.
8226         (mark_window): handle new field vertical_divider_shadow_thickness
8227         from struct window.
8228         (allocate_window): ditto.
8229         (saved_window_equal): toddi.
8230         (Fset_window_configuration): totid.
8231         (save_window_save): ttdio.
8232         (struct saved_window): new field vertical_divider_shadow_thickness.
8233
8234 1998-05-14  Kirill M. Katsnelson  <kkm@kis.ru>
8235
8236         * device-msw.c (mswindows_device_system_metrics): Support a deluge
8237         of metrics.
8238
8239 1998-05-12  Oliver Graf <ograf@fga.de>
8240
8241         * frame-x.c (x_cde_transfer_callback): fixed for the new protocol
8242         * event-Xt.c (x_event_to_emacs_event): C++ compability
8243
8244 1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
8245
8246         * emacs.c (Fdecode_path): Default SEPCHAR to value of
8247         path-separator.
8248
8249 1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
8250
8251         * emacs.c (vars_of_emacs): Do it here; change the meaning of
8252         Vpath_separator.
8253
8254         * fileio.c (vars_of_fileio): Don't define Vpath_separator here.
8255
8256 1998-05-14  Hrvoje Niksic  <hniksic@srce.hr>
8257
8258         * emacs.c (decode_path_1): New function.
8259         (decode_path): Use it.
8260         (Fdecode_path): Renamed from Fdecode_path_internal; use
8261         decode_path_1.
8262
8263 1998-05-12  Hrvoje Niksic  <hniksic@srce.hr>
8264
8265         * macros.c (Fzap_last_kbd_macro_event): New function.
8266         (Fend_kbd_macro): Remove REMOVE_LAST kludge.
8267
8268 1998-05-10  Andy Piper  <andyp@parallax.co.uk>
8269
8270         * redisplay-msw.c (mswindows_output_dibitmap_region): make sure
8271         multiple bitmaps are output vertically as well as horizontally.
8272         * (mswindows_output_dibitmap): don't cope with bitmap boundaries
8273         crossing lines this is handled by
8274         mswindows_output_dibitmap_region.
8275
8276 1998-05-12  Martin Buchholz  <martin@xemacs.org>
8277
8278         * inline.c: Include eldap.h
8279
8280         * menubar-x.c (x_update_frame_menubar_internal):
8281         Remove: unused variable `container'
8282
8283 1998-05-11  Martin Buchholz  <martin@xemacs.org>
8284
8285         * s/aix4.h: Allow AIX 4.3 XEmacs to compile cleanly.
8286         Unfortunately, the resulting temacs still cannot dump.
8287
8288         * symbols.c (symbol_is_constant):
8289         (verify_ok_for_buffer_local):
8290         -Wswitch Warning suppression - add default case to switches.
8291
8292         * redisplay.c (decode_mode_spec): Remove unused variables,
8293         Replace Fcoding_system_property (codesys, Qmnemonic) with
8294         XCODING_SYSTEM_MNEMONIC (codesys);
8295         Fcoding_system_property is for users.
8296
8297         * buffer.c:
8298         * fileio.c:
8299         * lread.c:
8300         * xselect.c:
8301         Change empty docstrings into no doc strings at all.
8302         Fix bogus FSF-format docstrings.
8303
8304         * extents.c:
8305         Standardize docstrings.
8306
8307         * floatfns.c:
8308         Explain problems with matherr.
8309
8310         * glyphs.c:  make DEFUNs etags-readable, i.e. single-line
8311
8312         * syssignal.h:
8313         if BROKEN_SIGIO, then SIGIO wants to be undefined.
8314         if SIGIO and not SIGPOLL, SIGPOLL wants to be SIGIO.\
8315         Fix the weird resultant interaction (causes windows problems)
8316
8317         * gdbinit:
8318         * dbxrc:
8319         Take new EMACSBOOTSTRAPLOADPATH into account.
8320         Update documentation strings
8321
8322         * Makefile.in.in:
8323         - Adjust for luser's CDPATH being set to something weird.
8324         - Take into account bash 2.02's tendency to print the cwd when
8325           using CDPATH.  Always use `cd ./foo' instead of `cd foo'.
8326         - fix the run-temacs target to use $(DUMPENV)
8327         - fix the run-puremacs target to use $(DUMPENV)
8328         - fix the `depend' target to properly $(RM) the right files
8329         - Generate a better TAGS file for XEmacs' lisp code using
8330           hand-crafted regexps.
8331         - Use standard coding conventions for modules/Makefile.in
8332
8333 1998-05-12  Didier Verna  <verna@inf.enst.fr>
8334
8335         * redisplay.c: removed the scrolling modeline code that didn't
8336         make it for 21.0. To be continued ...
8337
8338 1998-05-13  Michael Sperber [Mr. Preprocessor]  <sperber@informatik.uni-tuebingen.de>
8339
8340         * emacs.c (Fdecode_path_internal): Removed bogus handling of nil
8341         and empty string inputs.
8342
8343 1998-05-12  Hrvoje Niksic  <hniksic@srce.hr>
8344
8345         * redisplay-x.c (x_output_vertical_divider): Fixed typo.
8346
8347 1998-05-10  Oliver Graf <ograf@fga.de>
8348
8349         * event-stream.c (enqueue_misc_user_event_pos): created
8350         * lisp.h (enqueue_misc_user_event_pos): prototype added
8351         * frame-x.c (x_cde_transfer_callback): debug code plus API changes
8352         * emacs.c: call vars_of_dragdrop
8353         * dragdrop.c (vars_of_dragdrop): provide dragdrop
8354
8355 1998-05-11  Oliver Graf <ograf@fga.de>
8356
8357         * frame-x.c (x_cde_transfer_callback): return at correct pos
8358         * event-Xt.c (x_event_to_emacs_event): changed format of drop
8359         object for MIME (see comment in dragdrop.c)
8360         * dragdrop.c: API change documented in comment
8361         removed provide of dragdrop [is provided by dragdrop.el]
8362
8363 1998-05-12  Kirill M. Katsnelson  <kkm@kis.ru>
8364
8365         * window.c (window_needs_vertical_divider): Enable vertical
8366         dividers for every non-rightmost window.
8367         (window_left_gutter_width): Left gutter consists of mythical
8368         toolbar and a virtual scrollbar.
8369         (window_right_gutter_width): The right one may have a divider
8370         also.
8371
8372         * scrollbar.c (update_scrollbar_instance): Position vertical
8373         scrollbar left to divider if the latter present.
8374
8375         * redisplay.h: Declared OVER_DIVIER constant.
8376
8377         * redisplay.c (pixel_to_glyph_translation): Handle OVER_DIVIDER
8378         case.
8379
8380         * redisplay-x.c (x_output_vertical_divider): Output divider along
8381         the right side of the window, down to window bottom. Swapped
8382         foreground and background colors so it is visible by default.
8383
8384         * redisplay-tty.c (tty_output_vertical_divider): Uncondiionally
8385         stick the divider to the right window side.
8386
8387         * redisplay-msw.c (mswindows_redisplay_deadbox_maybe): Fixed
8388         deadbox painting.
8389         (mswindows_divider_width): Ask system for user preferred value.
8390         (mswindows_output_vertical_divider): Always output the divider on
8391         the right side of a window, down to bottom.
8392
8393         * keymap.c (get_relevant_keymaps): Route mouse button events which
8394         happened over a window divider through window-divider-map.
8395         (Fkey_binding): Documented that in the docstring.
8396         Defined the variable Vwindow_divider_map.
8397
8398         * events.c (Fevent_over_divider_p): Added this function.
8399
8400         * events.h: EXFUNed it.
8401
8402 1998-05-12  Kirill M. Katsnelson  <kkm@kis.ru>
8403
8404         * toolbar.c (update_frame_toolbars): Re-layout frame windows if
8405         toolbar geometry is suspected to change.
8406
8407 1998-05-11  Jonathan Harris  <jhar@tardis.ed.ac.uk>
8408
8409         * src/device-msw.c
8410         * src/event-msw.c
8411         Condition dnd and dde code on HAVE_DRAGNDROP.
8412
8413 1998-05-11  Hrvoje Niksic  <hniksic@srce.hr>
8414
8415         * events.c (format_event_object): Print space as SPC etc.
8416
8417 1998-05-11  Hrvoje Niksic  <hniksic@srce.hr>
8418
8419         * print.c (print_internal): In the default case, abort() if
8420         ERROR_CHECK_TYPECHECK.
8421
8422         * fileio.c (Fmake_temp_name): Doc fix.
8423
8424 1998-05-10  Hrvoje Niksic  <hniksic@srce.hr>
8425
8426         * xgccache.c (describe_gc_cache): Define only if DEBUG_XEMACS.
8427
8428         * undo.c (Fprimitive_undo): Fixed typo.
8429
8430 1998-05-11  Hrvoje Niksic  <hniksic@srce.hr>
8431
8432         * fns.c (concat): Signal error on integer argument.
8433
8434 1998-05-10  Kirill M. Katsnelson  <kkm@kis.ru>
8435
8436         * console.h (device_metrics): Prefixed each constatnt with DM_
8437
8438         * device.c: (Fdevice_system_metric): Renamed so from plural form
8439         (metrics); Changed parameters order and added DEFAULT parameter;
8440         Unabbreviated some metric constants; Fixed and untabified doc string.
8441         (Fdevice_system_metrics): Added. Returns a plist of all provided
8442         metrics.
8443
8444         * device-msw.c (mswindows_device_system_metrics): Renamed
8445         device_metrics enum constants.
8446         Return Qunbound instead of Qnil.
8447
8448         * device-tty.c (tty_device_system_metrics): Ditto.
8449
8450         * device-x.c (x_device_system_metrics): Ditto.
8451
8452 1998-05-10  Andy Piper  <andyp@parallax.co.uk>
8453
8454         * redisplay-msw.c: implement background pixmaps (really!). Make
8455         sure bg color is transparent if we have bg pmaps.
8456         * (mswindows_output_string) (mswindows_clear_region): output bg
8457         pmap if required.
8458         * (mswindows_output_dibitmap_region): new function.
8459         * (mswindows_output_dibitmap): output offset pixmaps, blt masks in
8460         the bg color rather than transparently.
8461
8462         * toolbar-msw.c: use masks if they exist.
8463
8464         * glyphs-msw.c: set up masks correctly.
8465
8466         * event-msw.c: typedef SOCKET if cygwin and not msg select().
8467
8468 1998-05-10  Hrvoje Niksic  <hniksic@srce.hr>
8469
8470         * regex.c (re_match_2_internal): Check for quit.
8471
8472 1998-05-10  Hrvoje Niksic  <hniksic@srce.hr>
8473
8474         * frame.c (Ffocus_frame): New function.