1 2000-01-09 Norbert Koch <norbert@s.netic.de>
3 * sysfile.h: Remove definition of HAVE_FSYNC. It's tested for
6 2000-01-09 Martin Buchholz <martin@xemacs.org>
8 * lisp.h (xfree_1): Make non-public.
9 * (xzero): Use '\0' in memset call for clarity.
10 * (ALIGNOF): Use __alignof__ instead of undocumented __alignof.
11 * alloc.c (allocate_string_chars_struct):
14 (verify_string_chars_integrity):
15 (compact_string_chars): Now only called for small strings.
17 String allocation rewrite.
18 Properly handle resizing big strings.
19 Fixes crash when evaluating:
20 (aset (make-string 9003 ??) 1 (make-char 'latin-iso8859-1 57))
21 Use consistent coding convention.
22 Never use xfree_1() directly.
24 (CHARS_TO_STRING_CHAR): Remove. No longer needed.
25 Big strings had unused space at beginning.
27 * scrollbar.c (specifier_vars_of_scrollbar):
28 * scrollbar.c (complex_vars_of_scrollbar):
29 * gutter.c (specifier_vars_of_gutter):
30 * menubar.c (specifier_vars_of_menubar):
31 * toolbar.c (specifier_vars_of_toolbar):
32 * glyphs.c (specifier_vars_of_glyphs):
33 * redisplay.c (specifier_vars_of_redisplay):
34 * window.c (specifier_vars_of_window):
35 * lisp.h (slot_offset): Remove slot_offset.
36 Replace all calls to `slot_offset' with the standard name, `offsetof'.
38 * menubar-x.c (compute_menubar_data):
39 Remove Fset_buffer(), always called by unwind_protect.
40 * menubar-x.c (menu_item_descriptor_to_widget_value_1): Fiddling.
41 * menubar-x.c (set_frame_menubar): comment fix.
43 * keymap.c (lookup_keys): Remove extra parens.
44 * keymap.c (lookup_events): Remove extra parens.
46 * dbxrc (run-temacs): Allow function to take arguments.
48 * Makefile.in.in (PURIFY_FLAGS): No longer need pointer-mask.
50 2000-01-08 Andy Piper <andy@xemacs.org>
52 * event-msw.c (mswindows_wnd_proc): don't need to check for widget
55 * frame.c (change_frame_size_1): use new glyph_* signatures.
56 (frame_conversion_internal): ditto.
58 * toolbar-x.c (x_get_button_size): Use modified glyph_*
61 * redisplay.c (add_glyph_rune): Use modified glyph_* signatures.
62 (add_glyph_rune): dittto.
63 (add_margin_runes): ditto.
64 (create_left_glyph_block): ditto.
65 (create_right_glyph_block): ditto.
66 (redisplay_window): ditto.
68 * redisplay-output.c (redisplay_output_layout): Use modified
71 * glyphs.h: (struct image_instantiator_methods): change signature
72 of query_geometry and layout.
73 (struct Lisp_Image_Instance): Clean up fields for dynamic geometry
75 (struct expose_ignore): change field types.
76 (struct subwindow_cachel): ditto. declare new functions and
79 * glyphs.c: (instantiate_image_instantiator): assign glyph when
80 creating the image instance.
81 (image_instance_hash): fixup for new and deleted fields.
82 (image_instance_equal): ditto.
83 (mark_image_instance): ditto.
84 (print_image_instance): ditto.
85 (allocate_image_instance): zero width and height. assign attached
86 glyph. mark as dirty for future layout.
87 (make_image_instance_1): pass Qnil as the glyph its attached to.
88 (Fimage_instance_height): simply return the height.
89 (Fimage_instance_width): simply return the width.
90 (image_instance_query_geometry): new function. query the image
91 instance's geometry by wiring through to format and device
92 specific methods. fallback on the existing geometry.
93 (image_instance_layout): new function. layout the image instance
94 by querying its geometry and then wiring through to format and
95 device specific methods.
96 (query_string_geometry): new function to decide the bounding box
97 of a string. text glyph geometry calculations moved here.
98 (query_string_font): new function. find out the font for a given
99 string in a given face.
100 (text_query_geometry): return geometry based on
101 quert_string_geometry.
102 (formatted_string_instantiate): call string_instantiate.
103 (image_instantiate): put strings in the per-window cache. Feed the
104 glyph to the instantiated image instance.
105 (glyph_height_internal): deleted.
106 (glyph_width): simply return the required dimension. re-layout if
107 the instance is dirty. Remove references to face_index and
108 frame_face which were only used for strings.
109 (glyph_ascent): ditto.
110 (glyph_descent): ditto.
111 (glyph_height): ditto.
112 (Fglyph_width): use new glyph_width function.
113 (Fglyph_ascent): use new glyph_ascent function.
114 (Fglyph_descent): use new glyph_descent function.
115 (Fglyph_height): use new glyph_height function.
116 (glyph_property_was_changed):
117 (glyph_image_instance_maybe): new function to possible create an
118 image instance from a glyph if we don't have one already.
119 (glyph_dirty_p): use it.
120 (glyph_layout): new function for laying out a glyph.
121 (glyph_query_geometry): new function for finding out the desired
123 (update_glyph_cachel_data): use new glyph_* signatures.
124 (update_subwindow): call resize_subwindow.
125 (map_subwindow): call update_subwindow if the image is dirty.
126 (subwindow_instantiate): add comment.
127 (Fresize_subwindow): don't actually resize the window, just record
128 the values and let update_subwindow handle it.
129 (Fglyph_animated_timeout_handler): use
130 MARK_IMAGE_INSTANCE_CHANGED.
131 (image_instantiator_format_create): declare things with
132 query_geometry and layout functions.
134 * glyphs-x.c: (x_update_subwindow): remove widget sizing.
135 (update_widget_face): use query_string_font.
136 (x_widget_set_property): don't return Qt when setting is
138 (x_combo_box_instantiate): call widget_instantiate rather than
139 widget_instantiate_1.
141 * glyphs-widget.c: (widget_face_font_info): deleted.
142 (widget_text_to_pixel_conversion): deleted.
143 (widget_set_property): make sure the new text gets propagated to
145 (widget_layout): new function. wire through to device and format
147 (widget_query_geometry): new function. wire through to device and
148 format specific methods. fallback on geometry of widget text.
149 (initialize_widget_image_instance): fixup new fields.
150 (widget_instantiate_1): deleted.
151 (tree_view_instantiate): deleted.
152 (tree_view_query_geometry): new function. returns desired sizing
154 (tab_control_instantiate): deleted.
155 (tab_control_query_geometry): new function. returns desired sizing
157 (widget_instantiate): subsume widget_instantiate_1. Fixup geometry
158 things in the light of dynamic layout.
159 (static_instantiate): deleted.
160 (layout_instantiate): use new glyph_* signatures.
161 (image_instantiator_format_create_glyphs_widget): fixup
162 query_geometry and layout declarations for various widgets.
164 * glyphs-msw.c: (mswindows_widget_instantiate): add comment.
165 (mswindows_button_instantiate): use query_string_font for geometry
167 (mswindows_update_subwindow): ditto.
168 (mswindows_combo_box_instantiate): fixup for new geometry
170 (mswindows_widget_set_property): Don't return Qt so that other
171 methods can be called.
173 2000-01-08 Martin Buchholz <martin@xemacs.org>
175 * gdbinit: rename to .gdbinit so that gdb will automatically source it.
177 2000-01-09 Hrvoje Niksic <hniksic@iskon.hr>
179 * insdel.c (signal_before_change): Make sure START and END are
180 within the buffer before calling report_extent_modification().
181 (signal_after_change): Ditto for START, NEW_END, and ORIG_END.
183 2000-01-09 Hrvoje Niksic <hniksic@iskon.hr>
185 * extents.h: Correct prototype of report_extent_modification().
187 * insdel.c (signal_before_change): Place record_unwind_protect()
188 outside MAP_INDIRECT_BUFFERS loops.
189 (signal_after_change): Ditto.
191 * extents.c (report_extent_modification): Don't expect pointer to
193 (report_extent_modification_mapper): Explain why
194 closure->speccount is almost unused.
196 * insdel.c (change_function_restore): Call Fset_buffer only if
198 (signal_before_change): Don't propagate inside_change_hook to
199 report_extent_modification().
201 2000-01-07 Martin Buchholz <martin@xemacs.org>
203 * elhash.c (make_general_lisp_hash_table): Remove purify UMR.
204 (hash_table_rehash_threshold): Removed. Update all callers.
206 2000-01-03 Michael Sperber [Mr. Preprocessor] <sperber@informatik.uni-tuebingen.de>
208 * s/windowsnt.h: Fix mail locking stuff.
210 * s/aix3-2.h: Remove HAVE_FSYNC which is now autodetected.
212 * emacs.c (vars_of_emacs): Added `mail-lock-methods' and
213 `configure-mail-lock-method' variables.
215 * config.h.in: Fix mail locking stuff.
217 2000-01-04 Martin Buchholz <martin@xemacs.org>
219 * mule-charset.h (REP_BYTES_BY_FIRST_BYTE):
220 Remove macro, always use inline function.
221 * mule-charset.c (make_charset): Don't assign to rep_bytes_by_first_byte.
222 (rep_bytes_by_first_byte): Make const.
224 2000-01-03 Didier Verna <didier@xemacs.org>
226 * redisplay.c (generate_fstring_runes): new parameter `offset'.
227 Take offset into account when outputting strings or glyphs.
228 (generate_formatted_string_db): call generate_fstring_runes with
229 an offset of 0 if generating a frame or icon title, or the
230 modeline hscroll if generating a modeline.
232 * redisplay.h: remove prototype of `generate_formatted_string' and
233 add prototype for `generate_formatted_string_db', now used in
236 * frame.c: `title_string_display_line' and
237 `title_string_emchar_dynarr', formerly known as
238 `format_string_display_line' and `format_string_emchar_dynarr'
239 moved here from "redisplay.c".
240 (generate_title_string): formerly known as
241 `generate_format_string', moved here from "redisplay.c".
242 (update_frame_title): take these name changes into account.
243 (init_frame): new function. Initialize here the variables that
244 were previously in "redisplay.c" and initialized in
247 * frame.h: prototype for `init_frame'.
249 * window.c (Fmodeline_hscroll): restore the definition (remove the
250 MODELINE_IS_SCROLLABLE #ifdef).
251 (Fset_modeline_hscroll): ditto, docstring improvement, and return
252 the actual value that was set.
253 (struct saved_window): turn the `modeline_hscroll' field into a
255 (syms_of_window): restore the declaration of
256 `[set-]modeline-hscroll' (remove the MODELINE_IS_SCROLLABLE #ifdef).
258 * window.h (struct window): turn the `modeline_hscroll field' into
261 * emacs.c: include "frame.h" to get `init_frame'.
262 (main_1): call `init_frame'.
264 1999-12-31 Martin Buchholz <martin@xemacs.org>
266 * XEmacs 21.2.26 is released.
268 1999-12-31 Andy Piper <andy@xemacs.org>
270 * glyphs-x.c (x_widget_instantiate): Avoid X errors calling
271 XMapWindow() on a NULL pointer X window.
273 1999-12-31 Martin Buchholz <martin@xemacs.org>
275 * data.c (indirect_function): Use signal_void_function_error().
277 * lisp.h: Modify prototypes for signal_*(). Add SUBR_FUNCTION macro.
279 * eval.c (PRIMITIVE_FUNCALL): Optimize.
280 (signal_void_function_error): return result of Fsignal().
281 (signal_invalid_function_error): return result of Fsignal().
282 (signal_wrong_number_of_arguments_error): return result of Fsignal().
283 (signal_malformed_list_error): Add DOESNT_RETURN.
284 (signal_malformed_property_list_error): Add DOESNT_RETURN.
285 (signal_circular_list_error): Add DOESNT_RETURN.
286 (signal_circular_property_list_error): Add DOESNT_RETURN.
287 (Feval): Use returned results of signal_*(). Avoids a crash!
288 (Ffuncall): Use returned results of signal_*(). Avoids the crash:
289 (setq debug-on-error t) (funcall 'foo) kbd{r42} kbd{RET}
290 - Only check for fun_nargs < subr_min_args if fun_nargs != max_args.
291 (function_argcount): Use signal_invalid_function_error().
292 (funcall_lambda): Use signal_wrong_number_of_arguments_error().
293 Use signal_invalid_function_error().
295 1999-12-28 Andy Piper <andy@xemacs.org>
297 * debug.c: rename debug_loop elements to X_ to avoid name clashes.
299 * menubar-x.c (menu_item_descriptor_to_widget_value_1): strdup
301 (menu_item_descriptor_to_widget_value_1): strdup name.
302 (pre_activate_callback): strdup name.
304 * scrollbar-x.c (scrollbar_instance_to_widget_value): strdup name.
305 (x_update_scrollbar_instance_status): use free_widget_value_tree.
307 * dialog-x.c (maybe_run_dbox_text_callback): strdup name. use
308 free_widget_value_tree.
309 (dbox_descriptor_to_widget_value): ditto.
311 * gui-x.c (widget_value_unwind): use free_widget_value_tree.
312 (gui_items_to_widget_values_1): ditto.
313 (gui_items_to_widget_values): ditto.
314 (free_popup_widget_value_tree): free name.
316 1999-12-27 Andy Piper <andy@xemacs.org>
318 * nt.c (fstat): use get_osfhandle rather than the handle
319 directly. From Fabrice Popineau.
321 * process-nt.c (nt_open_network_stream): take types into account
322 when warning. From Fabrice Popineau.
324 1999-12-24 Martin Buchholz <martin@xemacs.org>
326 * XEmacs 21.2.25 is released.
328 1999-12-22 Yoshiki Hayashi <t90553@mail.ecc.u-tokyo.ac.jp>
330 * syntax.c (vars_of_syntax): Initialize parse-sexp_ignore_comments.
332 1999-12-21 Martin Buchholz <martin@xemacs.org>
334 * editfns.c (Fpoint_min):
340 Docstring fixes. What's a `buffer pointer' anyways?
342 * editfns.c (char=): Remove unused and undocumented optional
343 third BUFFER argument.
345 * toolbar.h (DEVICE_SUPPORTS_TOOLBARS_P):
346 * fns.c (plists_differ):
347 * elhash.c (HASH_CODE):
348 * elhash.c (KEYS_EQUAL_P):
349 * redisplay-output.c (redisplay_move_cursor):
350 * redisplay.c (create_text_block):
351 * floatfns.c (Flogb):
352 * glyphs-msw.c (mswindows_initialize_image_instance_mask):
353 * glyphs-msw.c (xpm_to_eimage):
354 * buffer.h (POINT_MARKER_P):
355 * syntax.c (scan_lists):
356 * cmdloop.c (Fcommand_loop_1):
357 * widget.c (Fwidget_apply):
359 Remove extra parens, esp. of the form ((expr))
361 * floatfns.c (Flogb): Make 64-bit clean.
363 1999-12-12 Daniel Pittman <daniel@danann.net>
367 Clean up Athena widget support:
368 - Add `with-athena' to select a variant.
369 - Remove all `athena3d' options.
370 - Robust detection of Athena libraries and headers.
371 - Refuse to build with mismatched library and headers.
372 - Only build a 3d Athena if the user asks for it.
374 1999-12-21 Andy Piper <andy@xemacs.org>
376 * redisplay.c (redisplay_frame): check for faces changed when
377 reseting subwindow caches.
379 * glyphs.h (struct ii_keyword_entry): add copy_p.
380 (struct image_instantiator_methods): add query_geometry_method and
381 layout_children_method.
382 (IIFORMAT_VALID_GENERIC_KEYWORD): new macro to take into account
383 copying characteristics of keywords.
384 (IIFORMAT_VALID_NONCOPY_KEYWORD): new macro for defining keywords
385 whose arguments should not be copied by the specifier code.
386 (image_instance_geometry): new enum for layouts.
387 (struct Lisp_Image_Instance): re-jig for layouts and update
390 * glyphs.c (string_instantiate): rename variables.
391 (image_instantiate): add strings to those widgets that are
392 instantiated per-window.
393 (image_copy_vector_instantiator): new function for copying glyph
394 specifier instantiators.
395 (image_copy_instantiator): ditto.
397 * glyphs-x.c (x_update_subwindow): use new face update functions.
398 (update_widget_face): update to use new lwlib arg functions.
399 (update_tab_widget_face): new function for updating tab control
401 (x_widget_instantiate): use new face update functions and new
403 (x_tab_control_instantiate): ditto.
404 (x_tab_control_set_property): ditto.
406 * glyphs-widget.c (VALID_GUI_KEYWORDS): use NONCOPY keyword for
407 callbacks and other things that could recurse.
408 (VALID_GUI_KEYWORDS):
410 * event-msw.c: fix cpp stuff for cygwin < b20.
412 * config.h.in: move uid_t and friends to before the s&m files so
413 that they can be used there.
415 * Makefile.in.in (debug-temacs): new target that adds emacs
416 environment before invoking gdb.
418 * lwlib.h (_widget_args): new structure for holding widget
419 args. It is reference counted so that we don't have to copy Xt
421 (_widget_value): remove widget args. Add reference to widget_args.
423 * lwlib.c (free_widget_value_contents): free widget args using
424 free_widget_value_args.
426 * lwlib-Xaw.c (xaw_update_one_widget): use new arg packet.
427 (xaw_update_one_widget): use XtIsSubclass for determining labels.
429 * lwlib.c (lw_add_value_args_to_args): modify to use our reference
431 (lw_add_widget_value_arg): new function. Add an arg to the arg
433 (free_widget_value_args): new function. Remove a reference counted
435 (lw_copy_widget_value_args): new function. Copy reference counted
437 (merge_widget_value_args): new function. Do a merge of widget
439 (merge_widget_value): use it.
440 (copy_widget_value_tree): copy widget args using reference
441 counting, since we can't easily copy the args we have been given.
443 * specifier.h (struct specifier_methods): add copy_instantiator_method.
445 * specifier.c (build_up_processed_list): use
446 copy_instantiator_method if defined.
448 1999-12-19 Martin Buchholz <martin@xemacs.org>
450 * fns.c (Ffillarray): Use O(N), not O(N^2) algorithm for strings.
452 1999-12-19 Hrvoje Niksic <hniksic@iskon.hr>
454 * profile.c (sigprof_handler): FUN retrieved from the backtrace
455 can also be a cons representing anonymous interpreted function.
457 1999-12-18 Martin Buchholz <martin@xemacs.org>
463 Docstring fixes. Make them consistent with the lispref and ANSI Lisp.
465 1999-12-17 Martin Buchholz <martin@xemacs.org>
467 * print.c (print_internal): print ?+ instead of ?\+, etc...
468 Make printing a little more efficient.
469 Prevent buffer overflow if sizeof EMACS_INT > 8.
470 My first 128-bit fix!
472 1999-12-14 Karl M. Hegbloom <karlheg@inetarena.com>
474 * filelock.c (unlock_all_files): GC_CONSP should be CONSP
476 1999-12-17 Martin Buchholz <martin@xemacs.org>
481 Remove last vestigial uses of GC_*
483 * fns.c (mapcar1): Fix ***THREE*** obscure crashes in one function!
484 - Two of those involve evil mapping functions that destructively
485 modify a list being mapped over.
486 - Any garbage collection when mapping over a string could cause a
487 crash (typically in mapconcat).
489 1999-12-08 Adrian Aichner <adrian@xemacs.org>
491 * s\windowsnt.h (DIRECTORY_SEP): Initialize from
492 `Vdirectory_sep_char'.
494 * lisp.h: Add declaration for `Vdirectory_sep_char' to allow
495 customization of `DIRECTORY_SEP' under native Windows NT.
497 1999-12-14 Katsumi Yamaoka <yamaoka@jpl.org>
499 * buffer.c (Fbury_buffer): Add directions to the docstring.
501 1999-12-14 Martin Buchholz <martin@xemacs.org>
503 * XEmacs 21.2.24 is released.
505 1999-12-13 Martin Buchholz <martin@xemacs.org>
507 * sound.c (vars_of_sound): Provide esd-sound if HAVE_ESD_SOUND
509 * nas.c: Fix compiler warnings. Ansify. C++ compilation support.
511 1999-12-13 Kazuyuki IENAGA <ienaga@jsys.co.jp>
513 * input-method-xlib.c: Make sure src/ does not use Athena, except
514 indirectly through lwlib.
516 1999-12-13 Gunnar Evermann <ge204@eng.cam.ac.uk>
518 * dbxrc (pobj): Add opaque_ptr, remove opaque_list.
520 1999-12-10 Shenghuo ZHU <zsh@cs.rochester.edu>
522 * file-coding.c (add_coding_system_to_list_mapper):
523 - (coding-system-list) should list aliases correctly.
525 1999-12-07 Andy Piper <andy@xemacs.org>
527 * fileio.c (vars_of_fileio): directory separator fix from Mike Alexander.
528 * windowsnt.h (ditto):
530 1999-11-27 Adrian Aichner <adrian@xemacs.org>
532 * sysfile.h: Encapsulate `fstat' for Windows NT just like stat to
533 get consistent file modification times.
535 * sysdep.h: Declare `wait_for_termination' to use process handle,
536 not PID, on Windows NT native.
538 * sysdep.c (wait_for_termination): Use process handle, not PID, on
539 Windows NT native. Set exit code correctly on Windows NT.
540 (sys_subshell): Use process handle, not PID,
541 on Windows NT native.
542 (sys_fstat): Add ENCAPSULATE_FSTAT for Windows NT.
544 * process-nt.c (nt_create_process): Remove negative pid hack for
546 (nt_send_process): Declare vol_proc volatile.
547 (get_internet_address): warn_when_safe if IP address cannot be
549 (nt_open_network_stream): warn_when_safe if network stream fails
552 * ntproc.c (create_child): Remove negative pid hack for Windows
553 95. Remove incorrect and unnecessary USE_UNION_TYPE handling.
555 * nt.c (fstat): Encapsulate for Windows NT just like stat to get
556 consistent file modification times.
558 * callproc.c (call_process_cleanup): Use process handle, not PID,
559 on Windows NT native.
560 (Fcall_process_internal): Ditto. Close fd_error in parent. Don't
561 check for negative pid on Windows NT/9[58].
563 1999-12-07 Martin Buchholz <martin@xemacs.org>
565 * XEmacs 21.2.23 is released.
567 1999-12-06 Martin Buchholz <martin@xemacs.org>
569 * events.c (Fcopy_event): Don't copy the lrecord_header.
571 * lisp.h (DO_REALLOC):
573 Remove redundant parens.
574 Remove generic hygienic macro comment.
576 * lrecord.h (set_lheader_implementation): Remove redundant parens.
578 1999-12-05 Martin Buchholz <martin@xemacs.org>
580 * lstream.c (Lstream_adding):
581 - Never compare a size_t and a possibly negative number.
584 1999-12-05 Kyle Jones <kyle_jones@wonderworks.com>
586 * lisp/itimer.el: (require 'lisp-float-type). Use
587 floats directly in itimer-time-difference.
589 1999-12-05 Andy Piper <andy@xemacs.org>
591 * redisplay-output.c (redisplay_output_layout): avoid name hiding.
593 * gui.h: declare gui_add_item_keywords_to_plist.
595 * window.c (Fdelete_window): mark subwindows as changed so that
596 they can be GC'd if necessary.
598 1999-12-02 Jan Vroonhof <vroonhof@math.ethz.ch>
600 * src/callproc.c (Fcall_process_internal): Be careful in writing
601 terminating null when copying args. nargs can be < 4.
602 Idea from Klaus Frank <klausf@i3.informatik.rwth-aachen.de>
604 1999-11-29 Kyle Jones <kyle_jones@wonderworks.com>
606 * src/sound.c (Fding): Remove zero initialization of
607 static variables to avoid crashes on systems that dump
608 the initialized data segment read-only.
610 1999-12-05 Jan Vroonhof <vroonhof@math.ethz.ch>
612 * glyphs-x.c (convert_EImage_to_XImage): Guard against other
613 visual classes. From Rasmus Borup Hansen <rbh@math.ku.dk>
615 1999-12-04 Martin Buchholz <martin@xemacs.org>
617 * lstream.c: (filedesc_reader):
618 (filedesc_writer): Try number 2: Support broken systems where
619 return type of read() and write() is different from ssize_t.
624 - Replace macro calls to EMACS_GET_TTY and EMACS_SET_TTY with
625 function equivalents emacs_get_tty() and emacs_set_tty().
626 - Moved prototypes to systty.h, where struct event_tty is defined.
627 - Renamed bogus `waitp' parameter to `flushp'.
629 * lstream.c (filedesc_reader): Support broken systems where return
630 type of read() is different from ssize_t.
632 * events.c (Fcopy_event): Avoid redundant EQ test if event2 is nil.
634 * event-stream.c (menu_move_up): Remove redundant if block.
635 (menu_move_down): Gratuitous rewriting.
636 (menu_move_left): Work around Cygnus codefusion-990706 compiler bug.
637 (menu_move_right): Ditto.
639 * lrecord.h (copy_lcrecord):
641 Always add parentheses around uses of macro arguments.
643 * sysdll.c: #include <stdlib.h> for exit().
644 * unexhp9k800.x: #include <stdlib.h> for malloc().
645 Use proper prototype for Save_Shared_Data(void).
647 1999-12-04 Jan Vroonhof <vroonhof@math.ethz.ch>
649 * src/redisplay.c (point_would_be_visible): Correct for topclip.
651 1999-12-02 Hrvoje Niksic <hniksic@iskon.hr>
653 * lisp.h: Declare Qself_insert_defer_undo.
655 * event-stream.c (Fdispatch_event): Get the magic undo thing from
656 a symbol property, so commands other than self-insert-command can
658 (syms_of_event_stream): Define Qself_insert_defer_undo.
660 1999-11-30 Martin Buchholz <martin@xemacs.org>
662 * floatfns.c (emacs_rint): Rename rint to emacs_rint, so that
663 `#undef HAVE_RINT' works.
665 * sysdep.h: Fix up prototypes for sys_read_1(), sys_write_1()
667 1999-11-25 Andy Piper <andy@xemacs.org>
669 * select-msw.c (Fmswindows_set_clipboard): selection fixes from
671 (Fmswindows_delete_selection): ditto.
673 * redisplay.h (CLASS_REDISPLAY_FLAGS_CHANGEDP): add size_changed.
674 (GLOBAL_REDISPLAY_FLAGS_CHANGEDP): ditto.
676 * redisplay.c (redisplay_device): move size changed to macros in
678 (redisplay_without_hooks): ditto.
680 * redisplay-output.c (redisplay_output_layout): rename to avoid
683 * process-nt.c (struct nt_process_data): mks toolkit fixes from
685 (nt_create_process): ditto.
686 (nt_send_process): ditto.
688 * nt.c (init_environment): make sure mingw32 gets the cached
691 * gui.h: declare gui_add_item_keywords_to_plist.
693 * event-msw.c (mswindows_wnd_proc): Clipboard fixes from Mike
696 * console-msw.h: fix cygwin define/header 1.0 problems.
697 * glyphs-msw.c: ditto.
700 * s/cygwin32/h: ditto.
702 1999-11-29 XEmacs Build Bot <builds@cvs.xemacs.org>
704 * XEmacs 21.2.22 is released
706 1999-11-28 Martin Buchholz <martin@xemacs.org>
708 * XEmacs 21.2.21 is released.
710 1999-11-26 Martin Buchholz <martin@xemacs.org>
712 * callproc.c (Fcall_process_internal):
715 * event-msw.c (ntpipe_slurp_reader):
716 * event-msw.c (ntpipe_shove_writer):
717 * event-msw.c (winsock_reader):
718 * event-msw.c (winsock_writer):
719 * event-stream.c (dribble_out_event):
721 * fileio.c (Fexpand_file_name):
722 * glyphs-x.c (write_lisp_string_to_temp_file):
723 * gpmevent.c (tty_get_foreign_selection):
724 * lisp.h: Update prototypes.
725 * lstream.c (Lstream_flush_out):
726 * lstream.c (Lstream_write_1):
727 * lstream.c (Lstream_was_blocked_p):
728 * lstream.c (Lstream_read_more):
729 * lstream.c (Lstream_read):
730 * lstream.c (Lstream_fputc):
731 * lstream.c (make_stdio_output_stream):
732 * lstream.c (stdio_flusher):
733 * lstream.c (stdio_closer):
734 * lstream.c (make_filedesc_output_stream):
735 * lstream.c (errno_would_block_p):
736 * lstream.c (filedesc_writer):
737 * lstream.c (make_lisp_string_input_stream):
738 * lstream.c (make_fixed_buffer_output_stream):
739 * lstream.c (fixed_buffer_reader):
740 * lstream.c (make_resizing_buffer_output_stream):
741 * lstream.c (make_dynarr_output_stream):
742 * lstream.c (make_lisp_buffer_output_stream):
743 * lstream.c (lisp_buffer_reader):
744 * lstream.h (lstream_implementation):
746 * miscplay.h (reset_parsestate):
747 * process-nt.c (nt_send_process):
748 * process-unix.c (unix_send_process):
750 * sysdep.c (sys_close):
751 * sysdep.c (sys_read_1):
752 * sysdep.c (sys_write_1):
754 * file-coding.c (determine_real_coding_system):
755 * file-coding.c (Fdetect_coding_region):
756 * file-coding.c (struct decoding_stream):
757 * file-coding.c (decoding_reader):
758 * file-coding.c (Fdecode_coding_region):
759 * file-coding.c (struct encoding_stream):
760 * file-coding.c (encoding_reader):
761 * file-coding.c (Fencode_coding_region):
762 * file-coding.c (convert_to_external_format):
763 * file-coding.c (convert_from_external_format):
764 - Lstream functions mirror Unix98 read(),write(). Therefore use
765 Unix98 types size_t and ssize_t.
766 - Try to make Lstream* functions 64-bit clean. Someday someone
767 may actually want to read from a Lstream with more than 2**32 bytes.
768 - Add configure support for ssize_t.
769 - Update all callers of Lstream_read and Lstream_write to
771 - Fix esd* initiated C++ compile errors.
772 - Remove comments referring to `fpurge' - we don't want to call it
776 - Remove some lingering Lucid compiler support.
779 - Add prototype for Fdelete_process.
781 * gpmevent.c (Freceive_gpm_event): Remove unused variables.
783 1999-11-27 Martin Buchholz <martin@xemacs.org>
785 * Makefile.in.in (depend): Only update `depend' if there were changes.
787 1999-11-26 Martin Buchholz <martin@xemacs.org>
789 * editfns.c (get_system_name): Remove.
791 1999-11-26 Martin Buchholz <martin@xemacs.org>
793 * device-x.c (x_init_device):
794 - Replace magic number `17' with equivalent expn using sizeof.
795 - Replace strcmp with marginally more efficient memcmp.
796 - Avoid using C++ reserved word `class'.
798 * file-coding.c (determine_real_coding_system):
799 - Look for both initial and final -*- cookies.
800 - Replace EQ (foo, Qnil) with NILP (foo)
801 - Make searching for cookies more efficient.
802 - Recognize only rfc 1521 characters in charset names.
804 1999-11-22 Kazuyuki IENAGA <kazz@imasy.or.jp>
806 * input-method-xlib.c (IMDestroyCallback): #ifdef'd by
807 "THIS_IS_X11R6", because it shouldn't be evaluated unless X11R6.
808 * input-method-xlib.c (IMInstantiateCallback): Ditto.
809 * input-method-xlib.c (XIM_init_device): Revive XOpenIM function
810 call for X11R5 systems.
811 * input-method-xlib.c (XIM_delete_frame): Enabled XDestroyIC()
812 again because XIM doesn't concern with frame deletion itself.
813 The XIC will be cleared by XIM when XIM is closing (at XIM destroy
816 1999-10-25 Kazuyuki IENAGA <kazz@imasy.or.jp>
818 * input-method-xlib.c: Added new lisp object Qxim_xlib.
819 New macro xim_warn(str), xim_warn1(fmt,str) and xim_info(str).
820 All the valid stderr_out were changed to those macros.
821 (IMDestroyCallback): Don't test the XIC if the frame is not X
823 (IMInstantiateCallback): Treat the client_data as "device" not
824 "frame" because the caller changed from frame to device.
825 Here initializes XIM and activates XICs for each frame which
827 (XIM_init_device): Register the XIM instantiation callback which
828 had been performed by XIM_init_frame() before.
829 (XIM_delete_frame): Added a test for the XIM before clearing XIC.
830 (XIM_init_frame): Placed an actual code for XIC activation which
831 was moved from IMInstantiateCallback.
832 (syms_of_input_method_xlib): New function which includes a symbol
833 Qxim_xlib that uses in emacs.c.
835 * emacs.c: Added a function entry "syms_of_input_method_xlib" for
838 * symsinit.h: Added a declaration of "syms_of_input_method_xlib".
840 1999-11-05 Robert Pluim <rpluim@bigfoot.com>
842 * emacs.c (shut_down_emacs): Point users to PROBLEMS file
844 1999-11-16 Jan Vroonhof <vroonhof@math.ethz.ch>
846 * redisplay-output.c (compare_runes): Add comments about
847 results from profiling.
849 * redisplay.h (struct rune): Do not use bitfields for members.
850 (struct rune): Add various comments about further optimizations.
852 1999-11-19 Eric Darve <darve@crocco.stanford.edu>
854 * abbrev.c (abbrev_oblookup): Check whether wordend <= wordstart
855 if Vabbrev_start_location is used too.
857 1999-10-27 Yoshiki Hayashi <t90553@mail.ecc.u-tokyo.ac.jp>
859 * file-coding.c (detect_eol_type): Return CR when two
860 sequential CR are found.
861 (determine_real_coding_system): Check EOL type when coding:
862 cookie is found and EOL type is not specified.
863 Don't assume 8bit char as part of coding: cookie.
865 1999-10-26 Yoshiki Hayashi <t90553@mail.ecc.u-tokyo.ac.jp>
867 * file-coding.c (determine_real_coding_system): Check if
868 '-*-' exists. End searching for coding: cookie at the end
869 of line. Check whether character before coding: is space,
872 1999-11-07 William M. Perry <wmperry@aventail.com>
874 * gpmevent.c: Completely rewrote GPM mouse support for linux
875 console. The TTY console and event stream are modified at run
876 time, so this code can now be used as a module.
877 (tty_get_foreign_selection): New function to allow pasting from
878 other virtual consoles.
879 (Fgpm_enable): New lisp-visible function to turn GPM on or off
882 * device-tty.c (tty_asynch_device_change): No longer need to
883 notify GPM code of window/console height/width changes.
885 * console-tty.c (tty_init_console): Removed outdated GPM support
886 that was part of the console/event code.
888 * event-Xt.c (emacs_Xt_select_console): Ditto
890 * event-Xt.c (emacs_Xt_unselect_console): Ditto
892 * event-unixoid.c (read_event_from_tty_or_stream_desc): Ditto
894 * frame-tty.c (console_type_create_frame_tty): Ditto
896 1999-11-17 Martin Buchholz <martin@xemacs.org>
902 - Use Unix 98 types uid_t, gid_t, pid_t.
905 1999-11-01 Olivier Galibert <galibert@pobox.com>
907 * alloc.c (reinit_alloc_once_early): Move purify_flag init...
908 * emacs.c (main_1): ...here, to get the correct value even with
911 1999-11-17 Martin Buchholz <martin@xemacs.org>
913 * lisp.h (BIT_VECTOR_LONG_STORAGE): Add extra parens. It's a macro!
915 * tooltalk.c (tt_build_string): Remove extra parens.
916 * process.c (print_process): Remove extra parens.
917 * buffer.h (BI_BUF_PTR_BYTE_POS):
919 (BI_BUF_BYTE_ADDRESS):
920 (BI_BUF_BYTE_ADDRESS_BEFORE):
924 Remove extra parens. Inline functions are not macros.
926 * editfns.c (Fuser_login_name):
928 Use proper type uid_t.
930 1999-11-15 Martin Buchholz <martin@xemacs.org>
932 * syntax.c (complex_vars_of_syntax): Make more readable.
933 (define_standard_syntax): New function.
935 * syntax.c (forward-comment): Gradually make XEmacs 64-bit-clean.
937 1999-11-14 Martin Buchholz <martin@xemacs.org>
939 * mule-ccl.c (CCL_WRITE_STRING): Fix compiler warnings.
941 1999-11-12 Yoshiki Hayashi <t90553@mail.ecc.u-tokyo.ac.jp>
943 * mule-charset.h (LEADING_BYTE_OFFICIAL_1, LEADING_BYTE_OFFICIAL_2):
944 New enum type to make sure no gap in the leading byte definition.
946 1999-11-11 Yoshiki Hayashi <t90553@mail.ecc.u-tokyo.ac.jp>
948 * mule-charset.h (LEADING_BYTE_CYRILLIC_ISO_8859_5,
949 LEADING_BYTE_LATIN_ISO8859_9): Moved to 0x8B and 0x8C
950 to remove a hole in leading byte definition.
952 1999-11-10 Yoshiki Hayashi <t90553@mail.ecc.u-tokyo.ac.jp>
954 * mule-charset.c (non_ascii_valid_charptr_p): Check if
955 private charset is defined.
957 1999-11-09 Yoshiki Hayashi <t90553@mail.ecc.u-tokyo.ac.jp>
959 * mule-ccl.c (ccl_driver): Make sure generated sequences
960 are valid when doing `CCL_WRITE_STRING'.
961 (ccl-execute-on-string): Pass CCL_MODE_DECODING to ccl_driver.
963 1999-11-10 XEmacs Build Bot <builds@cvs.xemacs.org>
965 * XEmacs 21.2.20 is released
967 1999-11-04 Martin Buchholz <martin@xemacs.org>
969 * mule-ccl.c (ccl_driver): Warning suppression
971 1999-11-01 SL Baur <steve@miho.m17n.org>
973 * emacs.c (main_1): Guard call to reinit_vars_of_debug when not
974 building a debugged XEmacs.
976 1999-10-28 Andreas Jaeger <aj@suse.de>
978 * src/emacs.c (main_1): Don't set the malloc hooks if using
981 1999-10-30 Olivier Galibert <galibert@pobox.com>
983 * alloc.c (pdump_dump_rtables): Don't forget to dump the last
987 1999-10-25 Olivier Galibert <galibert@pobox.com>
989 * emacs.c (main_1): Call reinit_vars_of_scrollbar_x.
991 * symsinit.h: Declare reinit_vars_of_scrollbar_x.
993 1999-10-25 Martin Buchholz <martin@xemacs.org>
995 * redisplay.h (CLASS_RESET_CHANGED_FLAGS):
996 (GLOBAL_RESET_CHANGED_FLAGS):
997 (CLASS_REDISPLAY_FLAGS_CHANGEDP):
998 (RESET_CHANGED_SET_FLAGS):
999 Fix C++ compile errors/warnings.
1000 These macros were just a tad too clever.
1002 * process-unix.c (unix_open_network_stream):
1003 * objects-x.c (allocate_nearest_color):
1004 * mule-charset.c (vars_of_mule_charset):
1005 * fileio.c (Ffile_truename):
1006 * file-coding.c (vars_of_file_coding):
1007 Fix compile errors/warnings.
1009 * alloc.c (xstrdup): Use fact that memcpy returns its first arg.
1010 (allocate_lisp_storage): Simplify.
1012 1999-10-24 Olivier Galibert <galibert@pobox.com>
1014 * conslots.h: Add defines with first and last slot names.
1015 * bufslots.h: Add defines with first and last slot names.
1017 * buffer.c (common_init_complex_vars_of_buffer): Renamed from
1018 reinit_complex_vars_of_buffer
1019 (reinit_complex_vars_of_buffer): Reset the slots to the dumped
1021 (complex_vars_of_buffer): Dump the slots values.
1023 * console.c (common_init_complex_vars_of_console): Renamed from
1024 reinit_complex_vars_of_console
1025 (reinit_complex_vars_of_console): Reset the slots to the dumped
1027 (complex_vars_of_console): Dump the slots values.
1029 * alloc.c: Rename reloc_table to pdump_reloc_table, rt_list to
1030 pdump_rt_list and move them at the beginning of the file.
1031 (gc_sweep): Unmark pdumped objects after the sweep phase.
1032 (pdump_dump_rtables): Change a bare 256 to
1033 last_lrecord_type_index_assigned. Add a separator between the
1034 adresses or lrecords and the ones of C structs in the dump file.
1035 (pdump_load): Cope with the new separator and the renamings. Stop
1036 looking for the hash tables list after it has been found (duh!).
1038 1999-10-24 Robert Bihlmeyer <robbe@orcus.priv.at>
1040 * sound.c: support HAVE_ESD_SOUND
1044 * linuxplay.c: Move large part of linuxplay to generalized file
1045 miscplay. Make it platform independent.
1049 1999-10-24 Adrian Aichner <adrian@xemacs.org>
1051 * lisp.h (Dynarr_declare): Fix boo-boo.
1053 1999-10-24 Olivier Galibert <galibert@pobox.com>
1055 * process-unix.c (allocate_pty): Fix HAVE_GETPT.
1058 1999-10-24 Jan Vroonhof <vroonhof@math.ethz.ch>
1060 * redisplay.c (start_with_line_at_pixpos): Remove assert(cur_elt
1061 >=0). Handle the cur_elt == 0 case.
1063 1999-10-24 Jan Vroonhof <vroonhof@math.ethz.ch>
1065 * unexelf.c: Merge Martin's c++ fixes back in
1067 1999-10-20 Jan Vroonhof <vroonhof@math.ethz.ch>
1069 * unexelf.c (unexec): Only copy the global offset
1070 table from memory on sgi machines.
1072 1999-08-13 Alexandre Oliva <oliva@dcc.unicamp.br>, Vin Shelton <acs@xemacs.org>
1074 * unexelf.c: Enable GNU/Linux/alpha to build with gcc 2.95 by
1075 adding support for an sbss section. Get IRIX 5.2 to build using
1078 * m/iris4d.h: Use unexelf.o for unexec.
1080 * m/iris5d.h: Use unexelf.o for unexec.
1082 1999-10-24 Jan Vroonhof <vroonhof@math.ethz.ch>
1084 * unexelf.c: Revert to 21.1 version
1086 1999-08-28 Jan Vroonhof <vroonhof@math.ethz.ch>
1088 * window.c (Fwindow_truncated_p): New function.
1090 1999-08-25 Jonathan Marten <jonathan.marten@uk.sun.com>
1092 * window.c (window_truncation_on): Always return 0 for minibuffer
1093 windows, to enable auto scrolling.
1095 1999-10-24 Neal Becker <nbecker@fred.net>
1096 * process.h: Unix98 PTY support
1098 1999-10-17 Jan Vroonhof <vroonhof@math.ethz.ch>
1100 * fileio.c (Ffile_truename): Do proper mule decoding on
1101 the argument to xrealpath()
1103 1999-08-19 Stephen Tse <stephent@sfu.ca>
1105 * process-unix.c (unix_open_network_stream): Add udp network
1106 support; rename variable Qtcpip to Qtcp, parameter family to
1107 protocol for consistency with Qudp.
1109 * process-nt.c (nt_open_network_stream): Rename variable Qtcpip to
1110 Qtcp, parameter family to protocol for consistency with Qudp.
1112 * process.c (global_variables): Add a new variable Qudp for udp
1113 network support; rename variable Qtcpip to Qtcp for consistency
1115 (Fopen_network_stream_internal): Rename parameter FAMILY to
1116 PROTOCOL for consistency; fix a minor typo and add an explanation
1117 in docstring for udp programming.
1118 (Fopen_multicast_group_internal): Fix a minor typo in docstring.
1119 (syms_of_process): Add a new variable Qudp for udp network
1120 support; rename variable Qtcpip to Qtcp for consistency with Qudp.
1122 * process.h (extern_variables): Add a new variable Qudp for udp
1123 network support; rename variable Qtcpip to Qtcp for consistency
1126 * procimpl.h: Add a new variable Qudp for udp network support;
1127 rename variable Qtcpip to Qtcp for consistency with Qudp.
1128 (struct process_methods): Rename parameter family to protocol.
1131 1999-10-24 Olivier Galibert <galibert@pobox.com>
1133 * alloc.c (pdump_make_hash): Divide pointers by 8 for a better hash.
1135 1999-10-23 Olivier Galibert <galibert@pobox.com>
1137 * lrecord.h (struct lrecord_header): Removed dumped flags.
1139 * dynarr.c: Use DUMPEDP instead of dumped flag.
1141 * lisp.h (DUMPEDP): Added. Removed dumped flag from dynarr.
1143 * alloc.c: Removed hash_next linked list pointer.
1145 * *.c *.h: Removed markobj and mark_object parameters, removed GC_
1148 1999-10-14 Andy Piper <andy@xemacs.org>
1150 * redisplay-x.c (x_output_shadows): fix dodgy maths for border
1153 * gutter.c (output_gutter): be more accurate about the area to be
1154 cleared since X seems to manage to do the clear after drawing the
1157 * redisplay.h (RESET_CHANGED_FLAGS): new macro for setting
1158 redisplay flags as a group.
1159 (RESET_CHANGED_SET_FLAGS): ditto.
1160 (CLASS_RESET_CHANGED_FLAGS): ditto.
1161 (GLOBAL_RESET_CHANGED_FLAGS): ditto.
1162 (REDISPLAY_FLAGS_CHANGEDP): new macro for testing redisplay flags
1164 (CLASS_REDISPLAY_FLAGS_CHANGEDP): ditto.
1165 (GLOBAL_REDISPLAY_FLAGS_CHANGEDP): ditto.
1167 * redisplay.c (redisplay_frame): use CLASS_RESET_CHANGED_FLAGS
1168 instead of setting flags individually.
1169 (redisplay_device): ditto CLASS_REDISPLAY_FLAGS_CHANGEDP.
1170 (redisplay_device): ditto.
1171 (redisplay_device): ditto CLASS_RESET_CHANGED_FLAGS.
1172 (redisplay_without_hooks): ditto GLOBAL_REDISPLAY_FLAGS_CHANGEDP.
1173 (redisplay_without_hooks): ditto CLASS_REDISPLAY_FLAGS_CHANGEDP.
1174 (redisplay_without_hooks): ditto.
1175 (redisplay_without_hooks): ditto GLOBAL_RESET_CHANGED_FLAGS.
1177 * redisplay-x.c (x_output_string): unmap subwindows in the area.
1178 (x_output_blank): ditto.
1180 * redisplay-output.c (redisplay_output_display_block): don't unmap
1181 subwindows in case layout optimization can avoid it.
1182 (redisplay_output_subwindow): unmap subwindows in the area.
1183 (redisplay_output_layout): optimize the output of layouts - only
1184 output glyphs that have changed if nothing else of redisplay
1185 significance has occurred.
1186 (redisplay_output_pixmap): change args to
1187 redisplay_clear_clipped_region.
1188 (redisplay_clear_clipped_region): allow the clipped region to be
1189 cleared of all subwindows except the one passed in.
1191 * redisplay-msw.c (mswindows_output_blank): unmap subwindows in
1193 (mswindows_output_cursor): ditto.
1194 (mswindows_output_string): ditto.
1196 * gutter.c (calculate_gutter_size): if the window buffer is nil
1197 then don't continue.
1198 (update_frame_gutters): be more lenient about when we actually
1199 update the gutter. Layout optimization makes this
1200 non-costly. Cache redisplay flags that we want to temporarily
1203 * glyphs.c (Fglyph_animated_timeout_handler): handle image
1204 specific timeouts rather than iterating over the instance cache.
1205 (glyph_animated_timeout_mapper): deleted.
1206 (add_glyph_animated_timeout): use a weak list to hold onto the
1207 image so that it can be GC'ed.
1208 (disable_glyph_animated_timeout): disable a specific timeout.
1209 (vars_of_glyphs): disable-animated-pixmaps is a new boolean for
1210 controlling whether pixmaps are animated or not.
1212 * glyphs-msw.c (mswindows_finalize_image_instance): make sure the
1213 image timeout gets disabled when the image gets freed.
1215 * glyphs-eimage.c (gif_instantiate): remove meaningless
1216 comment. Cope with timeouts specified in the gif extension block.
1218 * event-msw.c (vars_of_event_mswindows): new variable
1219 mswindows-meta-activates-menu.
1220 (mswindows_wnd_proc): only goto defproc with VK_MENU if the user
1223 * glyphs-x.c (x_finalize_image_instance): delete mask first so
1224 that we can compare with image.
1226 1999-10-14 Jonathan Harris <jhar@tardis.ed.ac.uk>
1228 * event-msw.c (mswindows_key_to_emacs_keysym):
1229 Recognise keypad keys as different from normal keys.
1231 1999-10-14 Didier Verna <didier@xemacs.org>
1233 * glyphs-x.c (x_finalize_image_instance): avoid freeing null pixmaps.
1235 1999-10-10 Olivier Galibert <galibert@pobox.com>
1237 * symbols.c (init_symbols_once_early): dump Vquit_flag.
1239 * symsinit.h: Updated.
1241 * ntproc.c (vars_of_ntproc): Use defsymbol.
1243 * emacs.c (main_1): Updated reinit calls.
1245 * lisp.h: Removed Fpurecopy and pure_put declarations.
1246 * fns.c: Removed pure_put.
1248 * eval.c (Fdefvar): pure_put -> Fput
1250 * frame-x.c (init_x_prop_symbols): Ditto.
1251 * symbols.c (deferror): Ditto.
1253 * alloc.c (Fmake_byte_code): Remove Fpurecopy call.
1254 * buffer.c (vars_of_buffer): Ditto.
1255 * bytecode.c (Ffetch_bytecode): Ditto.
1256 (optimize_compiled_function): Ditto.
1257 * emacs.c (vars_of_emacs): Ditto.
1258 * emodules.c (vars_of_module): Ditto.
1259 * eval.c (define_function): Ditto.
1261 * frame.c (vars_of_frame): Ditto.
1262 * intl.c (Fset_domain): Ditto.
1263 * lread.c (load_force_doc_string_unwind): Ditto.
1264 * menubar.c (vars_of_menubar): Ditto.
1265 * minibuf.c (reinit_complex_vars_of_minibuf): Ditto.
1267 * debug.c (reinit_vars_of_debug): Extracted.
1268 * device-x.c (reinit_vars_of_device_x): Ditto.
1269 * emodules.c (reinit_vars_of_module): Ditto.
1270 * font-lock.c (reinit_vars_of_font_lock): Ditto.
1271 * glyphs-widget.c (reinit_vars_of_glyphs_widget): Ditto.
1272 * glyphs.c (reinit_vars_of_glyphs): Ditto.
1273 * gui-x.c (reinit_vars_of_gui_x): Ditto.
1274 * insdel.c (reinit_vars_of_insdel): Ditto.
1275 * menubar-x.c (reinit_vars_of_menubar_x): Ditto.
1276 * minibuf.c (reinit_complex_vars_of_minibuf): Ditto.
1277 * mule-wnnfns.c (reinit_vars_of_mule_wnn): Ditto.
1278 * print.c (reinit_vars_of_print): Ditto.
1279 * redisplay.c (reinit_vars_of_redisplay): Ditto.
1280 * select-x.c (reinit_vars_of_xselect): Ditto.
1281 * undo.c (reinit_vars_of_undo): Ditto.
1283 1999-10-10 Olivier Galibert <galibert@pobox.com>
1285 * symsinit.h: Updated declarations, see other ChangeLog entries.
1287 * redisplay.c (init_redisplay): Ensure proper reinitialisation.
1289 * lrecord.h (XD_DYNARR_DESC): Introduce XD_INT_RESET and use it.
1291 * glyphs.c: Add the ii_keyword_entry and related descriptions.
1292 Fix the image_instantiator_methods one.
1294 * file-coding.c: Plonk all data that needs to be dumped in a
1295 dynamically allocated structure.
1297 * extents.c (reinit_vars_of_extents): Extracted from
1300 * event-stream.c (vars_of_event_stream): Don't staticpro when
1301 pdump_wire is enough.
1303 * event-msw.c (reinit_vars_of_event_mswindows): Extracted from
1304 vars_of_event_mswindows.
1306 * event-Xt.c (reinit_vars_of_event_Xt): Extracted from
1309 * eval.c (vars_of_eval): Don't staticpro when pdump_wire is enough.
1311 * emacs.c (main_1): Added some reinit calls.
1313 * device-x.c (reinit_console_type_create_device_x): Extracted from
1314 console_type_create_device_x.
1316 * console.h: Declare the console_type_entry_dynarr description.
1318 * console.c: Unstatic the console_type_entry_dynarr description.
1320 * alloc.c: Removed some dubious comments. Handle XD_INT_RESET.
1322 1999-10-07 Olivier Galibert <galibert@pobox.com>
1324 * symsinit.h: Updated declarations, see other ChangeLog entries.
1326 * minibuf.c (reinit_complex_vars_of_minibuf): Extracted from
1327 complex_vars_of_minibuf.
1329 * lrecord.h: Removed XD_PARENT_INDIRECT (unused and
1330 unimplemented), added XD_LO_LINK.
1332 * lisp.h (pdump_wire_list): Add declaration.
1334 * glyphs.h (INITIALIZE_DEVICE_IIFORMAT): Fix bug found by Andy.
1335 (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT): Fix stupid bug.
1336 (REINITIALIZE_IMAGE_INSTANTIATOR_FORMAT): Remove, useless once the
1339 * glyphs.c (reinit_image_instantiator_format_create): Remove.
1341 * glyphs-x.c (reinit_image_instantiator_format_create_glyphs_x):
1345 (reinit_image_instantiator_format_create_glyphs_widget): Remove.
1348 (reinit_image_instantiator_format_create_glyphs_mswindows):
1352 (reinit_image_instantiator_format_create_glyphs_eimage): Remove.
1354 * frame.c (Fmake_frame): Don't reset the face cache when using the
1357 * file-coding.c: Dumped the_codesys_prop_dynarr and added all
1358 relevant descriptions.
1360 * events.c (reinit_vars_of_events): Extracted from vars_of_events.
1362 * eval.c: The subr is _not_ a lcrecord.
1364 * emacs.c (main_1): Call vars_of_specifier early before any
1365 specifier creation (e.g in vars_of_glyphs, at least). Remove the
1366 useless reinit_image_instantiator_format*. Add
1367 reinit_vars_of_events and reinit_complex_vars_of_minibuf. Add
1368 calls to lstream_type_create* and process_type_create*.
1370 * elhash.c: Dump Vall_weak_hash_tables correctly.
1372 * data.c: Dump Vall_weak_lists correctly.
1374 * console.c: Fix description.
1376 * console-stream.c (init_console_stream): Do initializations
1377 correctly in the pdump case.
1379 * chartab.c: Fix description. Dump Vall_syntax_tables correctly.
1380 (Fcopy_char_table): Link into Vall_syntax_tables.
1382 * alloc.c (pdump_wire_list): Added.
1383 (Fgarbage_collect): Fix loop in stats couting missing the last
1385 (pdump_register_sub): Added XD_LO_LINK.
1386 (pdump_dump_data): Ditto. Fixed XD_LO_RESET_NIL forgttting the
1388 (pdump_reloc_one): Ditto.
1389 (pdump_scan_by_alignement): Use last_lrecord_type_index_assigned
1391 (pdump_dump_wired): Added lists.
1392 (pdump): Use last_lrecord_type_index_assigned instead of 256.
1393 Dump last_lrecord_type_index_assigned value. Fix minor bugs.
1395 1999-10-07 Andy Piper <andy@xemacs.org>
1397 * glyphs-msw.c (mswindows_finalize_image_instance): zero out
1400 * glyphs-x.c (x_finalize_image_instance): fix FMW problem.
1402 1999-10-06 Andy Piper <andy@xemacs.org>
1404 * elhash.c (resize_hash_table): Correct reference to lrecord_header.
1406 1999-10-06 Damon Lipparelli <lipp@primus.com>
1408 * elhash.h: forward declare Lisp_Hash_Table.
1410 1999-10-06 Andy Piper <andy@xemacs.org>
1412 * glyphs.c (Fset_image_instance_property): mark glyphs as dirty
1413 after setting an image instance property.
1415 1999-10-05 Andy Piper <andy@xemacs.org>
1417 * gutter.c (update_frame_gutters): output gutters if
1418 windows_changed is set. This is the only way of catching changes
1419 in selected window which obviously can affect the specifiers.
1421 * redisplay.c: new state flags, subwindows_state_changed and
1422 subwindows_state_changed set.
1423 (redisplay_window): use them.
1424 (redisplay_device): ditto.
1425 (redisplay_without_hooks): ditto.
1426 (redisplay_frame): ditto. Reset subwindow cachels if
1427 subwindows_changed is set.
1428 (redisplay_window): call mark_glyph_cachels_as_clean after
1431 * redisplay-x.c (x_output_x_pixmap): select correct
1432 pixmap image for display depending on the currently selected
1435 * redisplay-output.c (compare_runes): check dirtiness when
1436 checking RUNE_DGLYPH runes.
1437 (compare_display_blocks): relax invalidation of display blocks
1438 since we can now detect whether individual glyphs have changed or
1441 * redisplay-msw.c (mswindows_output_dibitmap): select correct
1442 bitmap image for display depending on the currently selected
1445 * glyphs.h (struct Lisp_Image_Instance): add a dirty flag.
1446 (IMAGE_INSTANCE_DIRTYP): new macro.
1447 (XIMAGE_INSTANCE_DIRTYP): ditto.
1448 (MARK_IMAGE_INSTANCE_CHANGED): ditto.
1449 (GLYPH_DIRTYP): ditto.
1450 (XGLYPH_DIRTYP): ditto.
1451 (MARK_GLYPH_CHANGED): ditto.
1452 (GLYPH_CACHEL_DIRTYP): ditto.
1453 (struct glyph_cachel): add a dirty flag.
1455 * glyphs.c (update_frame_subwindows): Don't update on
1457 (glyph_animated_timeout_mapper): new function. Map over the
1458 instance cache lookinng for animated images to update.
1459 (Fglyph_animated_timeout_handler): new function. Lisp callback for
1460 handling animated image timeout events.
1461 (disable_glyph_animated_timeout): new function. Add the animated
1463 (disable_glyph_animated_timeout): new function. Remove the
1464 animated image timeout.
1465 (syms_of_glyphs): initialize Qglyph_animated_timeout_handler and
1467 (vars_of_glyphs): initialize Vglyph_animated_ticker.
1468 (image_instance_equal): add the currently displayed slice.
1469 (image_instance_hash): ditto.
1470 (allocate_glyph): initialize dirty flag.
1471 (glyph_width): rename glyph -> glyph_or_image.
1472 (glyph_height_internal): ditto.
1473 (glyph_dirty_p): new function. Determine whether the image
1474 instance in the domain and/or glyph is dirty.
1475 (set_glyph_dirty_p): set the dirtiness.
1476 (update_glyph_cachel_data): take dirtiness into account. Pass the
1477 image instance we are interested in to glyph_width and friends.
1478 (get_glyph_cachel_index): make non-static. Always call
1479 update_glyph_cachel_data.
1480 (mark_glyph_cachels_as_not_updated): meaningless formatting
1482 (mark_glyph_cachels_as_clean): new function. Clean dirtiness from
1485 * glyphs-x.h (struct x_image_instance_data): change
1486 pixmap to a list of pixmaps.
1487 (IMAGE_INSTANCE_X_PIXMAP_SLICE): new macro.
1488 (IMAGE_INSTANCE_X_PIXMAP_SLICES): ditto.
1489 (XIMAGE_INSTANCE_X_PIXMAP_SLICE): ditto.
1490 (XIMAGE_INSTANCE_X_PIXMAP_SLICES): ditto.
1492 * glyphs-x.c (x_finalize_image_instance): make sure multi pixmap
1493 images get deleted properly.
1494 (init_image_instance_from_x_image): add slices paramater and use
1495 it to initialize x_image_instance_data correctly.
1496 (image_instance_add_x_image): new function. Add new pixmaps to our
1497 set of instantiated pixmaps for an image. Used by animated images.
1498 (x_init_image_instance_from_eimage): add a slices
1499 parameter. Instantiate all images from the eimage.
1500 (x_xpm_instantiate): update use of
1501 init_image_instance_from_x_image.
1502 (init_image_instance_from_xbm_inline): ditto.
1503 (x_initialize_pixmap_image_instance): add slices paramater and use
1504 it to allocate x_image_instance_data correctly.
1506 * glyphs-msw.h (struct mswindows_image_instance_data): change
1507 bitmap to a list of bitmaps.
1508 (IMAGE_INSTANCE_MSWINDOWS_BITMAP_SLICE): new macro.
1509 (IMAGE_INSTANCE_MSWINDOWS_BITMAP_SLICES): ditto.
1510 (XIMAGE_INSTANCE_MSWINDOWS_BITMAP_SLICE): ditto.
1511 (XIMAGE_INSTANCE_MSWINDOWS_BITMAP_SLICES): ditto.
1513 * glyphs-msw.c (init_image_instance_from_dibitmap): add slices
1514 paramater and use it to initialize mswindows_image_instance_data
1516 (image_instance_add_dibitmap): new function. Add new bitmaps to
1517 our set of instantiated bitmaps for an image. Used by animated
1519 (mswindows_init_image_instance_from_eimage): add a slices
1520 parameter. Instantiate all images from the eimage.
1521 (mswindows_xpm_instantiate): update use of
1522 init_image_instance_from_dibitmap.
1523 (bmp_instantiate): ditto.
1524 (init_image_instance_from_xbm_inline): ditto.
1525 (mswindows_finalize_image_instance): make sure all the bitmap
1527 (mswindows_initialize_dibitmap_image_instance): add slices
1528 paramater and use it to allocate mswindows_image_instance_data
1531 * glyphs-eimage.c (jpeg_instantiate): give extra paramter to
1532 init_image_instance_from_eimage.
1533 (png_instantiate): ditto.
1534 (tiff_instantiate): ditto.
1535 (gif_instantiate): allocate bitmaps for all gif slices not just
1538 * device.h (struct device): add subwindows_state_changed flag.
1539 (MARK_DEVICE_SUBWINDOWS_STATE_CHANGED): new macro.
1540 (MARK_DEVICE_FRAMES_GLYPHS_CHANGED): ditto.
1542 * console.h (struct console_methods): add a slice parameter to
1543 init_image_instance_from_eimage_method.
1545 * redisplay.c (create_string_text_block): Allow buffer to be nil
1548 1999-09-24 Andy Piper <andy@xemacs.org>
1550 * glyphs-x.c: only include gui-x.h if we are building with
1553 * gui-x.c (vars_of_gui_x): only set popup_up_p if we have popups.
1555 1999-09-28 Lee Kindness <lkindness@csl.co.uk>
1557 * objects-x.c (allocate_nearest_color): will return 0 (failure)
1558 when the colormap is full and the color it has computed to be the
1559 'nearest' has been allocated read/write.
1561 1999-10-02 Olivier Galibert <galibert@pobox.com>
1563 * search.c (reinit_vars_of_search): Reinit the search cache
1566 * elhash.h: Make the description visible. Declare
1569 * elhash.c (resize_hash_table): Extracted from enlarge_hash_table
1570 to generalize the hash table reorganization.
1571 (reorganize_hash_table): Added.
1572 (enlarge_hash_table): Uses resize_has_table.
1574 * casetab.c (complex_vars_of_casetab): staticpro the mule mirror
1577 * alloc.c: Add correct management of blocks of structures.
1578 Reorganize hash tables at reload since the hash values can change
1581 1999-10-01 Olivier Galibert <galibert@pobox.com>
1583 * lisp.h: Add pdump_wire declaration
1585 * elhash.c (vars_of_elhash): Wire Vall_weak_hash_tables.
1586 * symbols.c (init_symbols_once_early): Wire Qnil and Qunbound.
1588 * alloc.c (pdump_wire): Added..
1589 (pdump_load): Support it.
1593 (reinit_image_instantiator_format_create_glyphs_mswindows): Fix
1596 1999-09-28 Olivier Galibert <galibert@pobox.com>
1598 * symsinit.h: Added lots of prototypes.
1600 * symeval.h: Added defsymbol_nodump declaration.
1602 * symbols.c (find_symbol_value): Lame attempt at making the
1604 (defsymbol_nodump): Added.
1606 * mule-charset.c: Collapsed global lisp objects arrays in one
1609 * lrecord.h: Added some flags.
1611 * lisp.h: Added dumped flag to dynarrs. Added dumpstruct
1614 * glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM): Don't
1615 staticpro dynamic variables.
1617 * glyphs.c (reinit_specifier_type_create_image): Added.
1618 (image_instantiator_format_create): Dump image instantiator format
1620 (reinit_image_instantiator_format_create): Added.
1622 * emacs.c (main_1): Added reinits calls.
1624 * dynarr.c: Protect dumped dynarrays from going berzek in free or
1627 * specifier.h (INITIALIZE_SPECIFIER_TYPE): Don't staticpro dynamic
1629 * specifier.c (specifier_type_create): Dump the specifier type
1631 (reinit_specifier_type_create): Added.
1632 * console.h (INITIALIZE_CONSOLE_TYPE): Don't staticpro dynamic
1634 * console.c (console_type_create): Dump the console type dynarr.
1635 (reinit_vars_of_console): Extracted from vars_of_console.
1636 (reinit_complex_vars_of_console): Extracted from
1637 complex_vars_of_console
1638 * window.c (reinit_vars_of_window): Extracted from vars_of_window.
1639 * toolbar.c (reinit_specifier_type_create_toolbar): Added.
1640 * search.c (reinit_vars_of_search): Extracted from vars_of_search.
1641 * objects.c (reinit_specifier_type_create_objects): Added.
1642 (reinit_vars_of_objects): Extracted from vars_of_objects.
1643 * lstream.c (reinit_vars_of_lstream): Extracted from
1645 * lread.c (reinit_vars_of_lread): Extracted from vars_of_lread.
1646 * gutter.c (reinit_specifier_type_create_gutter): Added.
1647 * glyphs-x.c (reinit_image_instantiator_format_create_glyphs_x):
1650 (reinit_image_instantiator_format_create_glyphs_widget): Added
1652 (reinit_image_instantiator_format_create_glyphs_mswindows): Added.
1654 (reinit_image_instantiator_format_create_glyphs_eimage): Added.
1655 * event-stream.c (reinit_vars_of_event_stream): Extracted from
1656 vars_of_event_stream
1657 * eval.c (reinit_vars_of_eval): Extracted from vars_of_eval.
1658 * device.c (reinit_vars_of_device): Extracted from vars_of_device.
1659 * console-x.c (reinit_console_type_create_x): Added.
1660 * console-tty.c (reinit_console_type_create_tty): Added
1661 * console-stream.c (reinit_console_type_create_stream): Added.
1662 (init_console_stream): If PDUMP, always reinitialise basic
1664 * console-msw.c (reinit_console_type_create_mswindows): Added.
1665 * buffer.c (reinit_vars_of_buffer): Extracted from
1666 init_vars_of_buffer.
1667 (reinit_complex_vars_of_buffer): Extracted from
1668 complex_vars_of_buffer
1670 * alloc.c: Further with the portable dumping, the revenge.
1671 (dumpstruct): Added.
1672 (reinit_alloc_once_early): Extracted from init_alloc_once_early.
1674 * specifier.c (sizeof_specifier): Correct size computation.
1675 (make_specifier_internal): Ditto.
1677 1999-09-27 Olivier Galibert <galibert@pobox.com>
1679 * alloc.c: Further with the portable dumping.
1681 1999-09-27 Martin Buchholz <martin@xemacs.org>
1683 * glyphs-x.c (update_widget_face): Remove bogus cast
1685 * data.c (sign_extent_lisp):
1686 * data.c (check_int_range):
1689 * data.c (number_char_or_marker_to_int):
1690 * data.c (number_char_or_marker_to_double):
1693 * extents.c (print_extent_1):
1694 * fns.c (print_bit_vector):
1696 * fns.c (Fsafe_length):
1697 * fns.c (copy_list):
1701 * fns.c (Fnbutlast):
1703 * marker.c (print_marker):
1705 * bytecode.c (bytecode_arithcompare):
1706 * bytecode.c (bytecode_arithop):
1708 * lisp.h (EXTERNAL_LIST_LOOP_DELETE_IF):
1709 * lisp.h (TRUE_LIST_P):
1710 * lisp.h (CHECK_TRUE_LIST):
1711 * lisp.h (bit_vector_length):
1712 * lisp.h (GCPRO4): Make consistent.
1713 * lisp.h (NGCPRO4): Make consistent.
1714 * lisp.h (NNGCPRO4): Make consistent.
1715 * alloc.c (Fmake_list):
1716 * alloc.c (Fmake_string):
1717 Use proper 64-bit types, e.g. EMACS_INT or size_t instead of int.
1718 This should make all arithmetic 64-bit clean.
1720 Use %ld with (long) casts in print statements of types with sizes
1721 possibly larger than int.
1723 Following functions had mismatched prototypes!!:
1724 do_marker_adjustment(), fixup_internal_substring(), scan_lists(),
1725 char_quoted(), make_string_from_buffer(),
1726 make_string_from_buffer_no_extents()
1728 The types of Bufpos, Bytind, Memind, Bytecount, Charcount,
1729 Extcount are all now EMACS_INT. I hope to see the day when I can
1730 create a buffer with more than INT_MAX characters, without having
1731 XEmacs slow down to a crawl. I also hope to be able to create a
1732 list with more than INT_MAX cons cells.
1734 * redisplay.c (decode_mode_spec):
1735 The %p and %P specs in the mode line were not correct for buffers
1736 larger than MAX_INT/100! The %p spec was off by .5% even for
1739 1999-09-27 Martin Buchholz <martin@xemacs.org>
1741 * cmdloop.c (num_input_keys):
1742 * print.c (debug_temp):
1743 * emacs.c (Vinfo_directory):
1744 Delete unused variables
1746 * console-x.h (x_interline_space): Mark as unimplemented.
1747 * redisplay-x.c (x_interline_space): Mark as unimplemented.
1749 * event-Xt.c (pending_timeouts):
1750 * linuxplay.c (linuxplay_sndbuf):
1752 * search.c (searchbufs):
1753 * specifier.c (specifier_type_entry_dynarr):
1754 * undo.c (pending_boundary):
1755 * event-stream.c (the_low_level_timeout_blocktype):
1756 * extents.c (gap_array_marker_freelist):
1757 * extents.c (extent_list_marker_freelist):
1758 * print.c (being_printed):
1759 * print.c (alternate_do_pointer):
1760 * alloc.c (first_string_chars_block):
1761 * alloc.c (current_string_chars_block):
1762 * emacs.c (initial_argv):
1763 * emacs.c (initial_argc):
1764 * eval.c (lisp_eval_depth):
1765 * free-hook.c (pointer_table):
1766 * free-hook.c (free_queue):
1767 * free-hook.c (current_free):
1768 * free-hook.c (strict_free_check):
1769 * redisplay.c (formatted_string_emchar_dynarr):
1770 * redisplay.c (formatted_string_display_line):
1771 * redisplay.c (formatted_string_extent_dynarr):
1772 * redisplay.c (formatted_string_extent_start_dynarr):
1773 * redisplay.c (formatted_string_extent_end_dynarr):
1774 * redisplay.c (updating_line_start_cache):
1775 * redisplay.c (last_display_warning_tick):
1776 * redisplay.c (display_warning_tick):
1777 * redisplay.c (internal_cache):
1778 * window.c (Vwindow_configuration_free_list):
1781 * redisplay.c (Vinitial_window_system): Make CONST.
1783 1999-09-24 Martin Buchholz <martin@xemacs.org>
1785 * redisplay-tty.c (term_get_fkeys_1): Minor aesthetic improvements.
1787 * doprnt.c (get_doprnt_args): Use int, not short, with va_arg.
1789 1999-09-24 Andy Piper <andy@xemacs.org>
1791 * redisplay-output.c (output_display_line): only clear the borders
1792 if we are not displaying the gutter.
1794 1999-09-24 Jan Vroonhof <vroonhof@math.ethz.ch>
1796 * frame-x.c (x_any_window_to_frame): Let Xt find the widget and
1797 then use x_any_widget_or_parent_to_frame().
1798 (x_find_frame_for_window): remove special cases.
1800 1999-09-24 Andy Piper <andy@xemacs.org>
1802 * scrollbar-x.c (x_window_is_scrollbar): deleted.
1803 * scrollbar-x.h: ditto.
1805 1999-09-23 Martin Buchholz <martin@xemacs.org>
1807 * alloc.c (this_marks_a_marked_record): Remove.
1809 * buffer.c (mark_buffer):
1810 * buffer.c (nuke_all_buffer_slots):
1811 * console.c (mark_console):
1812 * console.c (nuke_all_console_slots):
1813 * frame.c (mark_frame):
1814 * frame.c (nuke_all_frame_slots):
1815 Treat MARKED_SLOT() macros consistently.
1817 * device.h (error_check_device_type):
1818 * faces.c (face_getprop):
1819 * fileio.c (DRIVE_LETTER):
1820 * filelock.c (lock_file_1):
1821 * frame-x.c (x_create_widgets):
1822 * frame.h (error_check_frame_type):
1823 * keymap.c (print_keymap):
1824 * keymap.c (Fkey_description):
1825 * keymap.c (where_is_recursive_mapper):
1826 * mule-charset.h (CHARSET_LEADING_BYTE):
1827 * objects-msw.c (mswindows_color_instance_hash):
1828 * objects.c (color_instance_equal):
1829 * objects.h (struct color_specifier):
1830 * objects.h (struct font_specifier):
1831 * objects.h (struct face_boolean_specifier):
1832 * opaque.h (get_opaque_ptr):
1833 * opaque.h (set_opaque_ptr):
1834 * process-unix.c (set_socket_nonblocking_maybe):
1835 * specifier.h (SPECIFIER_TYPE_P):
1836 * symbols.c (store_symval_forwarding):
1837 * syssignal.h (EMACS_KILLPG):
1838 * terminfo.c (emacs_tparam):
1839 * glyphs.c (glyph_putprop):
1840 * glyphs.c (glyph_remprop):
1841 * glyphs.c (Fimage_instance_subwindow_id):
1842 * window.c (mark_window):
1843 * window.c (mark_window_config):
1844 * window.c (Fset_window_configuration):
1845 * window.c (save_window_save):
1846 * eval.c (Fuser_variable_p):
1847 * eval.c (Fcommand_execute):
1849 * eval.c (Ffuncall):
1851 * lisp.h (INT_OR_FLOATP):
1852 * lisp.h (GC_INT_OR_FLOATP):
1853 * lisp.h (XFLOATINT):
1854 * lisp.h (IS_ANY_SEP):
1855 * mule-ccl.c (Fccl_execute):
1856 * mule-ccl.c (Fccl_execute_on_string):
1857 * redisplay-x.c (x_output_string):
1858 Remove redundant extra parentheses.
1860 1999-09-22 Martin Buchholz <martin@xemacs.org>
1862 * chartab.c (word_boundary_p): Add prototype for warning avoidance.
1863 * eval.c (PRIMITIVE_FUNCALL): ANSIfy
1864 * free-hook.c (fun_ptr): ANSIfy
1865 * getloadavg.c: Remove declaration for errno.
1866 * gui.c (allocate_gui_item): ANSIfy
1867 * gui.h (allocate_gui_item): ANSIfy
1868 * mule-ccl.c (resolve_symbol_ccl_program): Make static
1869 * realpath.c: Remove K&R support.
1870 * redisplay-x.c (x_output_display_block): Don't shadow previous local
1871 * glyphs-widget.c (layout_instantiate): Don't shadow previous local
1872 * gutter.c (get_gutter_coords): Make static.
1873 * lread.c (locate_file_map_suffixes): Make static.
1874 * ralloc.c (relinquish): ANSIfy
1877 Move prototypes from redisplay.c to lisp.h
1879 1999-09-22 Martin Buchholz <martin@xemacs.org>
1881 * glyphs-x.c (x_widget_set_property):
1882 - Remove unnecessary initialization.
1883 - Use char*, not Bufbyte *, with GET_C_STRING_OS_DATA_ALLOCA
1884 * glyphs-x.c (x_widget_instantiate):
1885 - Use char*, not Bufbyte *, with GET_C_STRING_OS_DATA_ALLOCA
1886 * unexelf.c (unexec):
1887 Add cast for C++ compilability.
1890 * ralloc.c (r_alloc_reinit):
1891 SET_FUN_PTR was broken wrt ANSI aliasing!
1892 To compensate, use __typeof__ when using gcc, else live with
1893 possible (but rare) warnings.
1894 * ralloc.c (init_ralloc):
1896 * ralloc.c: Use the real dlmalloc prototype for __morecore.
1897 * lread.c (locate_file_map_suffixes):
1898 * input-method-xlib.c (XIM_init_frame):
1899 - Xlib functions should use XPointer, not XtPointer.
1900 * input-method-xlib.c (XIM_delete_frame):
1901 - Xlib functions should use XPointer, not XtPointer.
1902 * input-method-xlib.c (IMDestroyCallback):
1904 - XFRAME (obj) can never be NULL, so don't test for it.
1906 Add GUTTER_POS_LOOP for iterating over all gutter_pos'es
1907 * gutter.c (SET_GUTTER_WAS_VISIBLE_FLAG):
1908 Run c-backslash-region on macro body.
1909 * gutter.c (gutter_was_visible):
1910 Remove redundant parens - this is not a macro.
1911 * gutter.c (redraw_exposed_gutters):
1912 Use GUTTER_POS_LOOP.
1913 * gutter.c (gutter_specs_changed):
1914 Use GUTTER_POS_LOOP.
1915 * gutter.c (gutter_geometry_changed_in_window):
1916 Use GUTTER_POS_LOOP.
1917 * gutter.c (update_frame_gutters):
1918 Use GUTTER_POS_LOOP.
1919 * gutter.c (init_frame_gutters):
1920 Use GUTTER_POS_LOOP.
1921 * file-coding.c (determine_real_coding_system):
1922 Fix C++ compile error.
1923 * emodules.c (find_make_module):
1924 Cast return value from xrealloc
1925 * emacs.c (Fkill_emacs):
1926 Use __typeof__, when available.
1927 * emacs.c (voodoo_free_hook):
1928 Use __typeof__, when available.
1929 (Unfortunately, the type of __free_hook is glibc-version-dependent)
1930 * dired.c (user_cache): Use Bufbyte *, not char *
1931 * dired.c (Fuser_name_all_completions): Ditto.
1933 1999-09-22 Andy Piper <andy@xemacs.org>
1935 * redisplay.c (redisplay_frame): reset the gutter display lines
1936 when we reset the subwindows.
1938 * gutter.c (reset_gutter_display_lines): new function.
1940 * window.c (Flast_nonminibuf_window): new function equivalent to
1941 FRAME_LAST_NONMINIBUF_WINDOW ().
1942 (syms_of_window): declare it.
1944 * redisplay.c (create_string_text_block): don't add bogus eol
1945 markers to gutter display lines.
1947 * glyphs.c (reset_subwindow_cachels): make sure we unmap
1948 subwindows using unmap_subwindow so that expose events get
1949 registered correctly.
1951 * window.c (window_scroll): use Vwindow_pixel_scroll_increment to
1952 determine how much to scroll the window.
1953 (vars_of_window): Vwindow_pixel_scroll_increment is a new
1956 1999-09-20 Robert Pluim <rpluim@nortelnetworks.com>
1958 * glyphs-x.c (update_widget_face): Guard fontList declaration for
1961 1999-09-20 Andy Piper <andy@xemacs.org>
1963 * glyphs-msw.c (mswindows_update_subwindow): update faces.
1965 1999-09-19 Andy Piper <andy@xemacs.org>
1967 * glyphs.c (update_frame_subwindows): update if faces have
1970 * glyphs-x.c (x_widget_instantiate): create the clip widget using
1971 lwlib rather than directly.
1972 (x_finalize_image_instance): delete the clip widget using lwlib.
1973 (x_update_subwindow): update widget faces.
1974 (update_widget_face): new function for updating the face
1975 properties of a widget.
1976 (x_widget_set_property): update widget faces.
1978 * lwlib-Xlw.c (xlw_create_clip_window): new function. We need to
1979 manage the clip widgets using lwlib so that we can delete them in
1982 1999-09-16 Martin Buchholz <martin@xemacs.org>
1986 Define new, potentially faster INT arithmetic macros
1987 INT_PLUS, INT_MINUS, INT_PLUS1, INT_MINUS1
1988 * bytecode.c (execute_optimized_function):
1991 * bytecode.c (bytecode_negate):
1992 Optimize for integer case.
1994 1999-08-29 Andreas Jaeger <aj@arthur.rhein-neckar.de>
1996 * m/mips.h: Support for mips-linux: Add !linux around places
1997 that are not valid for linux, define TEXT_START, DATA_START,
2000 1999-09-16 Andy Piper <andy@xemacs.org>
2002 * redisplay-output.c (redisplay_output_subwindow): clip subwindows
2003 that don't completely fit on-screen rather than just unmapping
2006 * glyphs.h: change signature of map_subwindow.
2008 * glyphs.c (map_subwindow): add display_glyph_area to the
2009 signature. make sure the mapped area saved in the subwindow_cachel
2011 (Fforce_subwindow_map): make a no-op. I don't think this does
2014 * glyphs-x.h (struct x_subwindow_data): save the Display rather
2015 than the Screen. Add a clipwindow and clipwidget handle.
2016 (IMAGE_INSTANCE_X_CLIPWINDOW): new accessor.
2017 (IMAGE_INSTANCE_X_CLIPWIDGET): ditto.
2018 (XIMAGE_INSTANCE_X_CLIPWIDGET): ditto.
2019 (XIMAGE_INSTANCE_X_CLIPWINDOW): ditto.
2021 * glyphs-x.c (x_finalize_image_instance): destroy the clipwidget
2022 as well as the widget itself.
2023 (x_unmap_subwindow): unmap the clipwindow and clipwidget rather
2024 than the widgets and subwindows themselves. move the widget inside
2026 (x_subwindow_instantiate): hold onto the Display rather than the
2027 Screen. allocate a clipwindow to put the subwindow inside.
2028 (x_resize_subwindow): use saved Display directly.
2029 (x_widget_instantiate): allocate a clipwidget of type EmacsManager
2030 to put widgets inside.
2032 * glyphs-widget.c: remove group stuff.
2034 * glyphs-msw.h (struct mswindows_subwindow_data): new structure to
2035 hold the clipwindow.
2036 (IMAGE_INSTANCE_MSWINDOWS_CLIPWINDOW): new accessor.
2037 (XIMAGE_INSTANCE_MSWINDOWS_CLIPWINDOW): ditto.
2039 * glyphs-msw.c: remove group stuff.
2040 (mswindows_finalize_image_instance): destroy clipwindow as well as
2042 (mswindows_unmap_subwindow): unmap the clipwindow rather than the
2044 (mswindows_map_subwindow): ditto. move the widget within the
2046 (mswindows_subwindow_instantiate): allocate and initialize
2047 mswindows_subwindow_data. allocate a clipwindow with the subwindow
2049 (mswindows_widget_instantiate): ditto.
2050 (mswindows_control_wnd_proc): new function that allows us to
2051 propagate events from the widget to the main windows control loop.
2053 * device-msw.c (mswindows_init_device): register new widget clip window
2056 * console.h (struct console_methods): add display_glyph_area to
2059 * console-msw.h: declare new window class and wnd proc for
2062 1999-09-14 Martin Buchholz <martin@xemacs.org>
2066 Move symbols used only by eldap.c into eldap.c as statics.
2068 1999-09-09 Martin Buchholz <martin@xemacs.org>
2070 * window.c (syms_of_window):
2071 * symbols.c (syms_of_symbols):
2072 * redisplay.c (syms_of_redisplay):
2073 * print.c (syms_of_print):
2075 * intl.c (syms_of_intl):
2076 * general.c (syms_of_general):
2077 * frame.c (syms_of_frame):
2078 * fileio.c (syms_of_fileio):
2080 * file-coding.c (syms_of_file_coding):
2081 * extents.c (syms_of_extents):
2082 * event-stream.c (syms_of_event_stream):
2083 * event-stream.c (Fnext_event):
2084 * device.c (syms_of_device):
2085 * data.c (syms_of_data):
2086 * casetab.c (syms_of_casetab):
2087 * casetab.c (check_case_table):
2088 * callint.c (syms_of_callint):
2089 * buffer.c (syms_of_buffer):
2090 Delete unused C symbols:
2091 Qbuffer_file_name, Qbuffer_undo_list, Quser_variable_p,
2092 Qcurrent_prefix_arg, Qtranslate_table, Qkeywordp,
2093 Qnumber_or_marker_p, Qcons, Qkeyword, Qignore, Qdelete_device,
2094 Qcommand_execute, Qglyph_invisible,
2095 Qbuffer_file_coding_system, Qfile_name_handler_alist,
2096 Qframe_x_p, Qframe_tty_p, Qblack, Qkeyboard, Qmenubar, Qpath,
2097 Qvector, Qwhite, Qcase, Qdomain, Qalternate_debugging_output,
2098 Qprint_escape_newlines, Qprint_readably, Qfloat_output_format,
2099 Qwindow_scroll_functions, Qfboundp, Qscroll_up, Qscroll_down
2101 Rename symbols as required by the CHECK_RECORD macro:
2102 - Qcase_table_p to Qcase_tablep
2103 - Qcoding_system_p to Qcoding_systemp
2106 * debug.c (syms_of_debug):
2107 Make debug.c's internal Lisp_Objects static.
2109 * events.c (vars_of_events):
2110 * events.c (syms_of_events):
2111 Use regular old defsymbol instead of KEYSYM + staticpro().
2113 * select-x.c (CHECK_CUTBUFFER):
2114 Rewrite in accordance with coding standards.
2116 * keymap.c (syms_of_keymap):
2117 Use SPC in the same way as RET, TAB, etc.
2119 1999-08-27 Jan Vroonhof <vroonhof@math.ethz.ch>
2121 * xemacs-20/src/menubar-x.c (make_dummy_xbutton_event): Don't add
2122 offset twice if HAVE_WMCOMMAND is defined.
2124 1999-09-13 Mike McEwan <mike@lotusland.demon.co.uk>
2126 * redisplay-x.c (x_output_vertical_divider): make sure
2127 shadow_thickness is positive.
2129 1999-09-10 Julian Back <jback@rudd.compulink.co.uk>
2131 * process-nt.c (nt_create_process): fixup to cope with
2132 Vprocess_environment.
2134 1999-09-02 Andy Piper <andy@xemacs.org>
2136 * redisplay-output.c (redisplay_output_layout): call output
2137 routines with clear_clip false. output layout borders with text
2140 * redisplay-msw.c (mswindows_output_blank): call output routines
2141 with clear_clip true.
2142 (mswindows_output_string): ditto.
2143 (mswindows_output_display_block): ditto.
2145 * redisplay-x.c (x_output_display_block): call output routines
2146 with clear_clip true.
2148 * redisplay.h: fix output routines for clear_clip parameter.
2150 * redisplay-output.c (redisplay_output_layout): cope with glyphs
2153 * glyphs-widget.c (layout_instantiate): deal with border glyphs.
2154 (check_valid_glyph_or_instantiator): renamed from
2155 check_valid_glyph_or_image.
2156 (check_valid_border): allow glyphs or their instantiators.
2157 (check_valid_glyph_or_instantiator_list): renamed from
2158 check_valid_glyph_or_image_list,
2159 (glyph_instantiator_to_glyph): new function. make sure a glyph is
2160 a glyph and not an instantiator.
2161 (substitute_keyword_value): new function. replace a keyword value
2164 1999-09-01 Andy Piper <andy@xemacs.org>
2166 * glyphs.c (string_set_property): new function to set the data of
2168 (image_instantiator_format_create): use it.
2170 1999-09-07 Hrvoje Niksic <hniksic@srce.hr>
2172 * fns.c (Fmapc): Rename back to Fmapc_internal.
2174 1999-07-30 Gleb Arshinov <gleb@cs.stanford.edu>
2176 * ntheap.h: CONST (semantically constant) name field of file_data
2179 * unexnt.c (open_output_file): match function definition with
2180 function declaration
2182 * editfns.c: #include "sysfile.h" for getcwd() prototype
2184 * gif_io.c: #include "sysfile.h" for close() prototype
2186 1999-09-02 Martin Buchholz <martin@xemacs.org>
2190 Change the :type keyword to :weakness, for compatibility with the
2191 GNU Emacs 20.5 hash table implementation.
2192 Keep (but don't document) the :type keyword for compatibility.
2193 Obsolete function hash-table-type
2195 Define function sxhash for compatibility with Common Lisp and GNU Emacs.
2197 1999-09-01 Martin Buchholz <martin@xemacs.org>
2199 * floatfns.c (arith_error):
2200 * floatfns.c (range_error):
2201 * floatfns.c (range_error2):
2202 * floatfns.c (domain_error):
2203 * floatfns.c (domain_error2):
2204 * lrecord.h (LRECORDP):
2205 * console-x.h (X_ERROR_OCCURRED):
2206 * console-x.h (HANDLING_X_ERROR):
2207 * chartab.c (CATEGORYP):
2208 * buffer.h (XCHAR_OR_CHAR_INT):
2209 Remove redundant and confusing parentheses.
2211 * redisplay-output.c (redisplay_clear_to_window_end):
2212 Remove redundant initialization.
2217 Move declarations of bevel_modeline() into redisplay.h.
2219 1999-08-30 Olivier Galibert <galibert@pobox.com>
2221 * lisp.h: Add staticpro_nodump for undumped staticpro-ing.
2222 * alloc.c: Add staticpro_nodump for undumped staticpro-ing. Add
2223 alignment information for dumped data. Enhance
2224 descriptions. Phase out Vterminal_* variables while
2226 * lrecord.h: Add chained descriptions and automagically-reset
2227 lisp_objects to the description system.
2229 * console-stream.h: Declare the Vterminal_* variables.
2231 * buffer.c: Don't dump Vbuffer_alist, Vbuffer_defaults and
2232 Vbuffer_local_symbols.
2233 * console.c: Don't dump Vconsole_list, Vconsole_defaults and
2234 Vconsole_local_symbols.
2235 * eval.c: Don't dump Qunbound_suspended_errors_tag.
2236 * lread.c: Don't dump Vread_buffer_stream.
2237 * lstream.c: Don't dump Vlstream_free_list[].
2238 * search.c: Don't dump last_thing_searched.
2239 * window.c: Don't dump minibuf_window and
2240 Vwindow_configuration_free_list[].
2242 * faces.c: Add face description.
2243 * fns.c: Add bit_vector description.
2244 * glyphs.c: Add image specifier description.
2245 * objects.c: Add color, face and face boolean specifiers descriptions.
2246 * opaque.c: Add opaque description. Don't dump Vopaque_ptr_free_list.
2247 * rangetab.c: Add range table description.
2248 * specifier.c: Add specifier and specifier methods description.
2249 * specifier.h: Add specifier extra description support.
2251 * symbols.c: Fix symbol_value_buffer_local_description.
2253 * gdbinit (Lisp): Add opaque_ptr, remove opaque_list.
2255 1999-09-02 Hrvoje Niksic <hniksic@srce.hr>
2257 * extents.c (extent_remprop): Get extent's plist address
2260 1999-08-31 Andy Piper <andy@xemacs.org>
2262 * xmu.h: define Xmu/Converters.h things.
2264 1999-08-31 Andy Piper <andy@xemacs.org>
2266 * opaque.c (equal_opaque_ptr): define.
2267 (hash_opaque_ptr): define.
2269 * xmu.h: define Xmu/Misc.h things.
2271 1999-08-17 MORIOKA Tomohiko <tomo@etl.go.jp>
2273 * file-coding.c (determine_real_coding_system): Treat `coding:'
2276 1999-08-16 MORIOKA Tomohiko <tomo@etl.go.jp>
2278 * file-coding.c (struct decoding_stream): New member `counter'.
2279 (reset_decoding_stream): Initialize `counter'.
2280 (decode_coding_ucs4): Use `counter'.
2281 (decode_coding_utf8): Likewise.
2283 1999-08-31 Andy Piper <andy@xemacs.org>
2285 * redisplay-output.c (redisplay_normalize_glyph_area): make sure
2286 the clip offset doesn't exceed the height we have available to
2289 * window.h (struct window): add top_yoffset and left_xoffset for
2291 (WINDOW_TEXT_TOP_CLIP): new macro.
2293 * window.c (window_scroll): add behaviour for pixel-scrolling of
2296 * redisplay.h (struct display_line): add top_clip.
2297 (DISPLAY_LINE_HEIGHT): adjust for top_clip.
2298 (DISPLAY_LINE_YPOS): ditto.
2300 * redisplay.c (position_redisplay_data_type): add
2301 start_col_xoffset to prepare for pixel-based h-scrolling.
2302 (WINDOW_SCROLLED): new macro.
2303 (next_tab_position): use it.
2304 (add_glyph_rune): use new hscoll vars.
2305 (create_text_block): ditto.
2306 (generate_displayable_area): adjust off-by-one error.
2307 (regenerate_window): take top_clip into account.
2308 (regenerate_window_extents_only_changed): ditto.
2309 (regenerate_window_incrementally): ditto.
2311 * redisplay-x.c (x_output_display_block): use DISPLAY_LINE_YPOS,
2312 DISPLAY_LINE_HEIGHT and DISPLAY_LINE_YEND macros.
2313 (x_output_string): ditto.
2314 (x_output_blank): ditto.
2315 (x_output_hline): ditto.
2316 (x_output_eol_cursor): ditto.
2318 * redisplay-output.c (output_display_line): allow for
2319 top_clip. use DISPLAY_LINE_YPOS, DISPLAY_LINE_HEIGHT and
2320 DISPLAY_LINE_YEND macros.
2321 (redisplay_output_layout): output strings in layouts correctly.
2322 (redisplay_clear_clipped_region): allow for top_clip.
2323 (redisplay_calculate_display_boxes): ditto.
2325 * redisplay-msw.c (mswindows_output_blank): use DISPLAY_LINE_YPOS,
2326 DISPLAY_LINE_HEIGHT and DISPLAY_LINE_YEND macros.
2327 (mswindows_output_cursor): ditto.
2328 (mswindows_output_string): ditto.
2329 (mswindows_redraw_exposed_window): ditto.
2330 (mswindows_output_display_block): ditto.
2332 * gutter.c: new specifier type gutter-size.
2333 (gutter_size_validate): validate gutter-size specifier.
2334 (Fgutter_size_specifier_p): predicate for gutter-size.
2335 (Fredisplay_gutter_area): allow the gutter area to be redisplayed
2336 under user contol, like Fredisplay_echo_area.
2337 (syms_of_gutter): add new functions.
2338 (specifier_type_create_gutter): add new specifier.
2339 (specifier_vars_of_gutter): change specifier types of *-height to
2342 * glyphs.c (glyph_width): make work with image instances.
2344 * console.h (struct console_methods): change api of output_string.
2346 * glyphs-x.c (x_map_subwindow): move before mapping as reported by
2347 Stephen J. Turnbull <turnbull@sk.tsukuba.ac.jp>
2349 1999-08-30 Andy Piper <andy@xemacs.org>
2351 * glyphs-x.c (x_finalize_image_instance): X_MASK -> PIXMAP_MASK
2353 (init_image_instance_from_x_image): ditto.
2354 (x_xpm_instantiate): ditto.
2355 (x_colorize_image_instance): ditto. Reported by Richard Cognot
2356 <cognot@ensg.u-nancy.fr>
2358 1999-08-29 Andy Piper <andy@xemacs.org>
2360 * glyphs-x.c (x_widget_instantiate): move font initialisation so
2361 that it doesn't get saved in the user defined args.
2362 (x_tab_control_instantiate): Set the fg color of the tab's
2364 (x_tab_control_set_property): ditto.
2366 1999-08-27 Damon Lipparelli <lipp@primus.com>
2368 * events.h (XTIMEOUT): must preface Lisp_Timeout with ``struct''
2369 (XSETTIMEOUT): fixup typo
2371 1999-08-11 Jan Vroonhof <vroonhof@math.ethz.ch>
2373 * syntax.c (scan_words): Unified Mule and Non-mule scanning.
2374 Word boundary search looks back instead of forward so that it
2375 doesn't peek over the limit.
2377 1999-08-20 Olivier Galibert <galibert@pobox.com>
2379 * config.h.in: Add PDUMP define.
2380 * emacs.c (Fdump_emacs): Hackish, call pdump() if configured in.
2382 * lrecord.h: Enhance description system.
2383 * alloc.c: Fix vector and string description. Add portable
2384 dumper enumeration fonctions.
2386 * symbols.c: Fix symbols description. Add symbol_value_forward
2388 * eval.c: Add subr description.
2389 * elhash.c (CLEAR_HENTRY): Clean value pointer too. Fix hash
2391 (remhash_1): CLEAR_HENTRY evaluates the parameter two times now.
2393 1999-08-20 Olivier Galibert <galibert@pobox.com>
2395 * opaque.c: Kill opaque lists, make Lisp_Opaque_Ptr a lrecord of
2399 * eval.c (eval_in_buffer_trapping_errors):
2400 (run_hook_trapping_errors):
2401 (safe_run_hook_trapping_errors):
2402 (call0_trapping_errors):
2403 (call1_trapping_errors):
2404 (call2_trapping_errors): OPAQUEP -> OPAQUE_PTRP. make_opaque_ptr
2405 now takes a non-const void *.
2407 1999-08-20 Olivier Galibert <galibert@pobox.com>
2409 * opaque.c: Remove make_opaque_long.
2411 * opaque.h: Remove everything opaque_long related.
2413 * eval.c (vars_of_eval): Make Qunbound_suspended_errors_tag an
2416 * emacs.c (main_1): Remove make_opaque_long from comment.
2418 1999-08-20 Olivier Galibert <galibert@pobox.com>
2420 * event-stream.c (mark_timeout):
2422 (event_stream_generate_wakeup):
2423 (event_stream_resignal_wakeup):
2424 (event_stream_disable_wakeup):
2425 (event_stream_wakeup_pending_p):
2426 (vars_of_event_stream): Lisp_Timeout is now a lrecord.
2428 * events.h (struct Lisp_Timeout): Added.
2430 1999-08-24 Andy Piper <andy@xemacs.org>
2432 * console-x.h: declare new pixmap signatures.
2434 1999-08-23 Andy Piper <andy@xemacs.org>
2436 * glyphs-x.c (x_update_subwindow): make sure the widget size is
2437 maintained after an update.
2439 * event-Xt.c (emacs_Xt_handle_magic_event): use
2440 find_matching_subwindow to check whether the exposure is totally
2441 inside a subwindow, if it is then ignore it.
2443 * glyphs.c (find_matching_subwindow): new function.
2445 * toolbar-x.c (x_draw_blank_toolbar_button): use new
2446 x_output_shadows signature.
2447 (x_output_toolbar_button): use new x_output_x_pixmap signature.
2449 * redisplay.h (struct display_box): new structure.
2450 (struct display_glyph_area): ditto.
2451 declare new display_box functions.
2453 * redisplay-x.c (x_output_pixmap): update for new display
2455 (x_bevel_area): update to allow multiple edge styles and border
2457 (x_output_display_block): update for new display_box stuff and
2459 (x_clear_region): ditto.
2460 (x_output_x_pixmap): ditto. adjust offsets rather than clip.
2461 (console_type_create_redisplay_x): declare new console methods.
2462 (x_output_vertical_divider): update for new bevel_area signature.
2463 (x_output_shadows): update to allow selective drawing of edges.
2465 * redisplay-tty.c (tty_output_display_block): do nothing for
2468 * redisplay-output.c (redisplay_output_subwindow): convert to use
2469 display_box structure, this allows us to put subwindows anywhere
2470 with any offset, useful for layout glyphs.
2471 (redisplay_output_layout): new function. output a layout and its
2473 (redisplay_output_pixmap): new modular function combining generic
2474 parts of the X and mswindows versions. convert to use display_box
2476 (redisplay_clear_clipped_region): new function. clear the area a
2477 glyph is going into.
2478 (redisplay_normalize_glyph_area): new function. calculate the
2479 bounds of a display_glyph_area given a display_box.
2480 (redisplay_normalize_display_box): new function. shrink a
2481 display_box to enclose a display_glyph_area.
2482 (redisplay_display_boxes_in_window_p): check whether the input
2483 display_box and display_glyph_area are actually in a window.
2484 (redisplay_calculate_display_boxes): calculate display boxes based
2485 on conventional display_line metrics.
2486 (bevel_modeline): update for new bevel_area signature.
2488 * redisplay-msw.c (mswindows_output_blank): update for new
2490 (mswindows_output_string): ditto.
2491 (mswindows_output_dibitmap): ditto.
2492 (mswindows_output_dibitmap_region): ditto.
2493 (mswindows_output_pixmap): ditto.
2494 (mswindows_bevel_area): update to allow multiple edge styles and
2496 (mswindows_output_display_block): update for new display_box stuff
2498 (mswindows_clear_region): ditto.
2499 (console_type_create_redisplay_mswindows): declare new console methods.
2501 * lisp.h (edge_style): new enum.
2502 declare display_box and display_glyph_area.
2504 * gutter.c (output_gutter): update for new bevel_area signature.
2506 * glyphs.h (image_instance_type): add layout.
2507 (IMAGE_LAYOUT_MASK): ditto.
2508 (LAYOUT_IMAGE_INSTANCEP): new macro.
2509 (CHECK_LAYOUT_IMAGE_INSTANCE): ditto.
2510 (struct Lisp_Image_Instance): add offsets for layout and the
2511 layout type itself. move mask here also.
2512 (IMAGE_INSTANCE_LAYOUT_CHILDREN): new macro.
2513 (IMAGE_INSTANCE_LAYOUT_BORDER): ditto.
2514 (XIMAGE_INSTANCE_LAYOUT_CHILDREN): ditto.
2515 (XIMAGE_INSTANCE_LAYOUT_BORDER): ditto.
2517 * glyphs.c (mark_image_instance): update for layouts.
2518 (print_image_instance): ditto.
2519 (image_instance_equal): ditto.
2520 (image_instance_hash): ditto.
2521 (allocate_image_instance): initialise offsets for layout.
2522 (decode_image_instance_type): update for layouts.
2523 (encode_image_instance_type): ditto.
2524 (Fimage_instance_height): ditto.
2525 (Fimage_instance_width): ditto.
2526 (allocate_glyph): ditto.
2527 (glyph_width): allow image instances as an argument. update for layouts.
2528 (glyph_height_internal): ditto.
2529 (syms_of_glyphs): add layout symbols.
2531 * glyphs-x.h (struct x_image_instance_data): remove mask entry.
2532 (IMAGE_INSTANCE_X_MASK): update.
2534 * glyphs-x.c (x_label_instantiate): new function. instantiate a
2536 (image_instantiator_format_create_glyphs_x): initialise new layout
2539 * glyphs-widget.c: new layout type.
2540 (check_valid_orientation): new keyword checker for layouts.
2541 (check_valid_justification): ditto.
2542 (check_valid_border): ditto.
2543 (check_valid_glyph_or_image_list): ditto.
2544 (layout_possible_dest_types): new function for layout glyph type.
2545 (layout_normalize): ditto.
2546 (layout_instantiate): ditto.
2547 (syms_of_glyphs_widget): new keywords for layout.
2548 (image_instantiator_format_create_glyphs_widget): initialise the
2551 * glyphs-msw.h (struct mswindows_image_instance_data): remove mask
2553 (IMAGE_INSTANCE_MSWINDOWS_MASK): update.
2555 * glyphs-msw.c: declare layout format.
2556 (image_instantiator_format_create_glyphs_mswindows): initialise it.
2558 * general.c: new symbols for layouts.
2560 * console.h (struct console_methods): new console methods for
2561 outputting pixmaps and strings.
2563 1999-08-23 Didier Verna <didier@xemacs.org>
2565 * sound.c: revert the renaming of `bell_volume' to `Vbell_volume'
2566 and `bell_inhibit_time' to `Vbell_inhibit_time'.
2568 1999-08-18 Andy Piper <andy@xemacs.org>
2570 * redisplay-output.c (redisplay_output_subwindow): disable
2573 1999-08-17 Andy Piper <andy@xemacs.org>
2575 * gutter.c (redraw_exposed_gutter): handle degenerate case of no
2576 area to expose or no gutter to display.
2578 1999-08-16 Charles G Waldman <cgw@fnal.gov>
2580 * sound.c: rename `bell_volume' to `Vbell_volume' and
2581 `bell_inhibit_time' to `Vbell_inhibit_time'.
2583 1999-08-13 Charles G Waldman <cgw@fnal.gov>
2585 * sound.c: (bell-inhibit-time): New variable.
2587 (sound-alist): Fix docstring.
2589 1999-08-17 Andy Piper <andy@xemacs.org>
2591 * gui-x.c (button_item_to_widget_value): xstrdup name so that
2594 1999-08-16 Jeff Miller <jmiller@smart.net>
2596 * syntax.c (scan_words): make compile.
2598 1999-08-16 Andy Piper <andy@xemacs.org>
2600 * redisplay-output.c (redisplay_output_subwindow): try and be more
2601 relaxed about clipping possibilities.
2603 * glyphs-x.c (x_tab_control_set_property): free_widget_value_tree
2604 rather than just the widget_value.
2605 (x_update_subwindow): ditto.
2606 (x_widget_instantiate): ditto.
2608 * gutter.c (output_gutter): shrink current display lines if
2611 1999-08-15 Andy Piper <andy@xemacs.org>
2613 * redisplay.h: declare free_display_lines.
2615 * redisplay.c (free_display_lines): make non-static.
2617 * gutter.c (free_frame_gutters): use free_display_lines instead of
2619 (calculate_gutter_size): ditto.
2621 1999-08-12 Jan Vroonhof <vroonhof@math.ethz.ch>
2623 * eval.c (run_hook_with_args_in_buffer): GCPRO globals.
2625 1999-08-14 Andy Piper <andy@xemacs.org>
2627 * glyphs.c (update_subwindow_cachel): make it less brittle.
2629 1999-08-04 Mike Woolley <mike@bulsara.com>
2631 * scrollbar-msw.c (mswindows_handle_mousewheel_event): Fixed
2632 problem in wheelmouse code occurring when the horizontal scrollbar
2633 is enabled but not visible.
2635 1999-08-08 Andy Piper <andyp@beasys.com>
2637 * toolbar-msw.c (mswindows_redraw_frame_toolbars): new function.
2638 (console_type_create_toolbar_mswindows): use it.
2640 * glyphs.c (Fset_image_instance_property): fiddly reorganisation.
2642 * redisplay-output.c (redisplay_output_display_block): unmap
2643 subwindows in the block area before outputting the block.
2645 * event-msw.c (mswindows_wnd_proc): check the update rect before
2646 painting and disable expose registration while painting.
2648 * glyphs.c (register_ignored_expose): check
2649 hold_ignored_expose_registration before registering expose events.
2651 * redisplay.c (redisplay_frame): reset the subwindow cache before
2652 displaying the gutter.
2654 * glyphs-msw.c (mswindows_map_subwindow): move the window before
2657 * gutter.c (update_frame_gutters): check for glyphs_changed as if
2658 it is the subwindow cache will have been reset.
2660 1999-08-06 Andy Piper <andyp@beasys.com>
2662 * gui-x.c (button_item_to_widget_value): cope with strings.
2664 * glyphs.h: declare global widget functions.
2665 (IIFORMAT_HAS_SHARED_DEVMETHOD): new macro.
2667 * glyphs-x.c (x_combo_box_instantiate): do generic initialization
2668 here. remove dead code.
2669 (image_instantiator_format_create_glyphs_x): enable combo boxes
2672 * glyphs-widget.c (widget_instantiate_1): make non-static.
2673 (tree_view_instantiate): renamed from combo_box_instantiate.
2674 (image_instantiator_format_create_glyphs_widget): use new/changed methods.
2676 * glyphs-msw.c (mswindows_combo_box_instantiate): do generic
2677 initialization here.
2679 * lwlib-Xm.c (xm_update_combo_box): new function.
2680 (xm_update_one_widget): call it.
2681 (xm_update_one_value): deal with combo boxes as well as lists.
2682 (xm_create_combo_box): create a drop-down combo box.
2684 * toolbar-msw.c (mswindows_output_toolbar): call
2685 mswindows_move_toolbar.
2687 1999-08-05 Andy Piper <andyp@beasys.com>
2689 * window.c (Fcurrent_pixel_column): new function. use display
2690 lines to calculate pixel position of point.
2691 * window.c (syms_of_window): declare it.
2693 1999-08-05 Andy Piper <andy@xemacs.org>
2695 * glyphs.c (check_for_ignored_expose): ignore exposures wholly
2696 contained in our ignore list.
2698 * buffer.c (Frecord_buffer): add call to record-buffer-hook.
2699 (syms_of_buffer): declare record-buffer-hook.
2701 * s/mingw32.h: define mousewheel things.
2703 1999-08-04 Mike Woolley <mike@bulsara.com>
2705 * windowsnt.h (_WIN32_WINNT): enable for win95
2707 * s/cygwin32.h: define mousewheel things.
2709 * scrollbar-msw.h: declare mousewheel handler.
2711 * scrollbar-msw.c (mswindows_handle_mousewheel_event): new function.
2713 1999-08-04 Andy Piper <andy@xemacs.org>
2715 * gui-x.c (gui_items_to_widget_values): remove unused variable.
2716 (gui_items_to_widget_values_1): ditto.
2718 * gui-x.h: unconditionally define since it is used everywhere.
2720 1999-08-04 Andy Piper <andy@xemacs.org>
2722 * glyphs-x.c (x_finalize_image_instance): only free pixels if we
2723 have that type of image.
2725 1999-07-30 Andy Piper <andy@xemacs.org>
2727 * redisplay-output.c (redisplay_unmap_subwindows): add comparison
2728 subwindow to not unmap if required.
2729 (redisplay_unmap_subwindows_maybe): comparison is Qnil.
2730 (redisplay_unmap_subwindows_except_us): new function.
2731 (redisplay_output_subwindow): use it to unmap windows in the area
2732 we are displaying into.
2734 * glyphs.c (update_subwindow_cachel_data): always update as we
2735 only ever get called when an update is required.
2736 (update_subwindow_cachel): new function. sync a subwindow with its
2738 (Fresize_subwindow): use it.
2739 (register_ignored_expose): make sure we set the tail correctly.
2741 1999-07-28 Andy Piper <andy@xemacs.org>
2743 * redisplay-output.c (redisplay_clear_bottom_of_window): remove
2746 * gutter.c (redraw_exposed_gutter): unmap subwindows from the
2749 * gui.h: declare parse_gui_item_tree_list and
2750 parse_gui_item_tree_children.
2752 * gui.c (parse_gui_item_tree_item): new function for parsing item
2753 lists into gui-item trees.
2754 (parse_gui_item_tree_children): ditto.
2755 (parse_gui_item_tree_list): ditto.
2757 * gui-x.h: declare gui_items_to_widget_values.
2759 * gui-x.c (gui_items_to_widget_values_1): new function for
2760 recursively parsing gui-items into widget_values.
2761 (gui_item_children_to_widget_values): ditto.
2762 (gui_items_to_widget_values): ditto.
2763 (sanity_check_lwlib): add widgets macrolets.
2765 * glyphs.h (IMAGE_INSTANCE_WIDGET_ITEMS): rename from *ITEM.
2766 (XIMAGE_INSTANCE_WIDGET_ITEMS): ditto.
2767 (IMAGE_INSTANCE_WIDGET_ITEM): rename from *SINGLE_ITEM.
2768 (XIMAGE_INSTANCE_WIDGET_ITEM): ditto.
2769 (struct expose_ignore): new structure for storing ignorable expose
2772 * glyphs.c (valid_image_instantiator_format_p): fix so that using
2773 a console-type as a locale works.
2774 (mark_image_instance): ITEM->ITEMS.
2775 (image_instance_equal): ditto.
2776 (image_instance_hash): ditto.
2777 (struct expose_ignore_blocktype): new blocktype.
2778 (check_for_ignored_expose): new function. checks frame exposure
2779 list for events to ignore.
2780 (register_ignored_expose): new function. registers an expose event
2782 (unmap_subwindow): register the expose event as ignorable.
2783 (vars_of_glyphs): initialise the exposure blocktype.
2785 * glyphs-x.c (x_finalize_image_instance): use lw_destroy_widget.
2786 (x_update_subwindow): modify all widgets using widget_value tree
2787 rather than just a single widget value.
2788 (x_widget_instantiate): LWLIB_USES_MOTIF -> LWLIB_WIDGETS_MOTIF.
2789 make sure widgets don't resize themselves.
2790 (x_tab_control_instantiate): new function. use lwlib tab functions.
2791 (x_tab_control_set_property): new function.
2792 (image_instantiator_format_create_glyphs_x): add tab_control.
2794 * glyphs-widget.c (widget_text_to_pixel_conversion): calculate
2795 slightly more sensibly.
2796 (initialize_widget_image_instance): ITEM->ITEMS.
2797 (widget_instantiate_1): parse gui items generically into the ITEMS
2800 * glyphs-msw.c (mswindows_update_subwindow): replace
2802 (mswindows_register_widget_instance): ditto.
2803 (add_tree_item): modify to use new pre-initialised gui-item
2805 (add_tab_item): ditto.
2806 (mswindows_tab_control_instantiate): ditto.
2807 (mswindows_tab_control_set_property): ditto.
2808 (image_instantiator_format_create_glyphs_mswindows): predicate
2809 existence of widgets on HAVE_WIDGETS.
2811 * frame.h (struct frame): add subwindow_exposures variables.
2813 * frame.c (allocate_frame_core): reset subwindow_exposures links.
2815 * event-msw.c (mswindows_wnd_proc): check for ignored
2816 expose events before redrawing.
2818 * event-Xt.c (emacs_Xt_handle_magic_event): check for ignored
2819 expose events before redrawing.
2821 1999-07-30 SL Baur <steve@xemacs.org>
2823 * scrollbar-x.c: should include EmacsFrame.h.
2824 From Jeff Miller <jmiller@smart.net>
2826 1999-07-30 XEmacs Build Bot <builds@cvs.xemacs.org>
2828 * XEmacs 21.2.19 is released
2830 1999-07-27 Jeff Miller <jmiller@smart.net>
2832 * add a "#ifdef HAVE_MENUBARS" wrapper to gui.c around
2833 menubar_show_keybindings.
2835 1999-07-23 SL Baur <steve@miho>
2837 * mule-charset.c (syms_of_mule_charset): Delete duplicated
2838 definition of Qccl_program.
2840 * mule-ccl.h: Make a global declaration of it here.
2842 1999-07-20 Bob Weiner <weiner@beopen.com>
2844 * s/sco7.h: Added from rr@sco.com.
2846 1999-06-25 MORIOKA Tomohiko <tomo@etl.go.jp>
2848 * mule-ccl.c (ccl_driver): Fix `CCL_WriteMultibyteChar2'.
2850 1999-06-24 MORIOKA Tomohiko <tomo@etl.go.jp>
2852 * file-coding.c (mule_decode): Setup `str->ccl.last_block'.
2853 (mule_encode): Likewise.
2855 * mule-ccl.c (Qccl_program): New variable.
2856 (CCL_SUSPEND): New macro.
2857 (CCL_INVALID_CMD): New macro.
2858 (CCL_READ_CHAR): Don't regard as invalid command while processing
2859 the last block even if input is empty; use
2860 `CCL_STAT_SUSPEND_BY_SRC' instead of `CCL_STAT_SUSPEND'.
2861 (vars_of_mule_ccl): Setup `Qccl_program' and `Qccl_program_idx'.
2863 * mule-ccl.h (CCL_STAT_SUCCESS): Moved from mule-ccl.c.
2864 (CCL_STAT_SUSPEND_BY_SRC): Imported from Emacs 20.3.10.
2865 (CCL_STAT_SUSPEND_BY_DST): Likewise.
2866 (CCL_STAT_INVALID_CMD): Moved from mule-ccl.c; change value from 2.
2867 (CCL_STAT_QUIT): Moved from mule-ccl.c; change value from 3.
2869 1999-05-04 Ken'ichi Handa <handa@gnu.org>
2871 * mule-ccl.h (struct ccl_program): New member stack_idx.
2873 * mule-ccl.c (ccl_prog_stack_struct): Declare it as static.
2874 (ccl_driver): Setup stack_idx and ccl_prog correctly. Update them
2876 (setup_ccl_program): Initialize ccl->stack_idx to 0.
2878 1998-10-12 Kenichi Handa <handa@etl.go.jp>
2880 * mule-ccl.c (CCL_DECODE_SJIS, CCL_ENCODE_SJIS): Swap the
2883 1998-08-18 Kenichi Handa <handa@etl.go.jp>
2885 * mule-ccl.c (CCL_READ_CHAR): If eof is encounterd while
2886 processing the last block, don't just finish but processes eol
2887 block of the current CCL program.
2888 (ccl_driver): Add a new jump label ccl_repeat for the above
2891 1998-04-15 Kenichi Handa <handa@etl.go.jp>
2893 * mule-ccl.c: Typo in comments fixed.
2894 (Qccl_program_idx): New variables.
2895 (CCL_ReadMultibyteChar2): Macro name changed from
2896 CCL_ReadMultibyteCharacter.
2897 (CCL_WriteMultibyteChar2): Macro name changed from
2898 CCL_WriteMultibyteChar2.
2899 (ccl_driver): Adjusted for the above changes.
2900 (resolve_symbol_ccl_program): New function.
2901 (Fccl_execute): The arg CCL-PROGRAM can be a symbol of CCL
2902 program. If CCL-PRGRAM is a vector, convert symbols in it to ID
2903 numbers by resolve_symbol_ccl_program.
2904 (Fccl_execute_on_string): Likewise.
2905 (Fregister_ccl_program): If the arg CCL-PRGRAM is a vector,
2906 convert symbols in it to ID numbers by resolve_symbol_ccl_program.
2908 1998-01-21 Kenichi Handa <handa@etl.go.jp>
2910 * mule-ccl.h: (struct ccl_program): New member private_state.
2913 (CCL_Call): Fix the comment.
2914 (CCL_ReadMultibyteCharacter, CCL_WriteMultibyteCharacter): New
2915 macros for CCL Commands.
2917 (ccl_driver): New case label `CCL_Extension'.
2918 (setup_ccl_program): Initialize the member `private_state' of CCL.
2920 1999-07-08 Katsumi Yamaoka <yamaoka@jpl.org>
2922 * keymap.c (copy_keymap_internal): Inherit the default binding.
2924 1999-07-14 Kazuyuki IENAGA <kazz@imasy.or.jp>
2926 * event-Xt.c (handle_focus_event_1): Re-enable Motif/XIM to get
2927 focus the event (XIM_focus_event).
2928 (emacs_Xt_handle_magic_event): No side effect on Motif/XIM because
2929 XIM_SetGeometry does nothing in input_method_motif.c, but re-unify
2930 the interface for future use (XIM_SetGeometry).
2931 * redisplay-x.c (x_output_string): Re-enable Motif/XIM to set spot
2932 location (XIM_SetSpotLocation).
2933 (x_output_eol_cursor): Ditto.
2935 1999-07-17 Gunnar Evermann <ge204@eng.cam.ac.uk>
2937 * gdbinit (pobj): change lrecord_foo to &lrecord_foo to match
2938 Olivier's change to lrecord.h of 1999-04-22
2940 1999-07-20 Robert Pluim <rpluim@bigfoot.com>
2942 * gutter.c (redraw_exposed_gutter): Change type of pos from
2943 enum toolbar_pos -> enum gutter_pos, since former is only defined
2944 if toolbar support is.
2946 1999-07-19 Andy Piper <andy@xemacs.org>
2948 * glyphs-x.c (x_resize_subwindow): cope with widgets as well as
2951 * gutter.c (gutter_validate): new function for the gutter specifier.
2952 (specifier_type_create_gutter): declare specifier validator.
2954 * buffer.h (INC_CHARBYTIND): add for no error checking version.
2956 1999-07-18 Andy Piper <andy@xemacs.org>
2958 * redisplay.c (add_emchar_rune): use XSTRING_DATA not string_data.
2960 * glyphs-msw.c (console_type_create_glyphs_mswindows): add
2962 (mswindows_resize_subwindow): new function.
2964 * gutter.c (redraw_exposed_gutter): only reset the
2965 current_display_lines if non-zero.
2966 (Fgutter_pixel_height): new function.
2967 (Fgutter_pixel_width): new function.
2969 * event-msw.c (mswindows_wnd_proc): set the mask of the parameter
2970 we want to retrive from the tab control.
2972 1999-07-17 Andy Piper <andy@xemacs.org>
2974 * window.c (change_window_height): mark gutters changed when we're
2977 * gutter.c (specifier_vars_of_gutter): make defaults more
2980 * gutter.h (WINDOW_REAL_GUTTER_BORDER_WIDTH): adjust to be 0 for 0
2982 (DEFAULT_GUTTER_WIDTH): change.
2983 (DEFAULT_GUTTER_BORDER_WIDTH): change.
2985 1999-07-18 Andy Piper <andy@xemacs.org>
2987 * redisplay.c (add_emchar_rune): use XSTRING_DATA not string_data.
2989 1999-07-16 Andy Piper <andy@xemacs.org>
2991 * frame.c (Fmake_frame): call init_frame_gutters().
2993 * redisplay.c (add_emchar_rune): use string functions if we are
2994 working with a string.
2995 (position_redisplay_data_type): add string element.
2997 1999-07-15 Andy Piper <andy@xemacs.org>
2999 * winslots.h: add real_gutter_size slots to hold the actual gutter
3000 size. This is important for autodetected sizes.
3002 * gutter.c (calculate_gutter_size): calculate size for gutters
3003 that have 'autodetect size.
3005 * redisplay-msw.c (mswindows_output_vertical_divider): adjust
3006 extent of divider for gutters.
3008 * redisplay-x.c (x_output_vertical_divider): adjust extent of
3009 divider for gutters.
3011 * scrollbar.c (update_scrollbar_instance): adjust scrollbar
3012 position to take into account the gutters.
3014 * redisplay.c (generate_modeline): adjust modeline position to
3015 take into account the gutters.
3017 1999-07-14 Andy Piper <andy@xemacs.org>
3019 * gutter.c (frame_topmost_window): new function.
3020 (frame_bottommost_window): ditto.
3021 (frame_leftmost_window): ditto.
3022 (frame_rightmost_window): ditto.
3024 1999-07-13 Andy Piper <andy@xemacs.org>
3026 * redisplay.c (calculate_display_line_boundaries): use text
3027 boundaries so that gutters get handled properly.
3029 1999-07-12 Andy Piper <andy@xemacs.org>
3031 * glyphs-x.c (x_widget_instantiate): set the font Motif-style if
3034 * redisplay-output.c (redisplay_clear_to_window_end): generalised
3037 * redisplay-x.c (redisplay_clear_to_window_end): moved to
3040 * redisplay-msw.c (redisplay_clear_to_window_end): deleted.
3042 * gutter.c: new file - implements gutters. All new functions are
3043 semantically equivalent to the toolbar functions.
3044 (gutter_was_visible): new function.
3045 (get_gutter_coords): ditto.
3046 (output_gutter): ditto.
3047 (clear_gutter): ditto.
3048 (update_frame_gutters): ditto.
3049 (redraw_exposed_gutter): ditto.
3050 (redraw_exposed_gutters): ditto.
3051 (free_frame_gutters): ditto.
3052 (init_frame_gutters): ditto.
3053 (decode_gutter_position): ditto.
3054 (Fset_default_gutter_position): ditto.
3055 (Fset_default_gutter_position): ditto.
3056 (Fdefault_gutter_position): ditto.
3057 (gutter_after_change): ditto.
3058 (Fgutter_specifier_p): ditto.
3059 (recompute_overlaying_specifier): ditto.
3060 (gutter_specs_changed): ditto.
3061 (default_gutter_specs_changed): ditto.
3062 (gutter_geometry_changed_in_window): ditto.
3063 (default_gutter_size_changed_in_window): ditto.
3064 (default_gutter_border_width_changed_in_window): ditto.
3065 (default_gutter_visible_p_changed_in_window): ditto.
3066 (syms_of_gutter): ditto.
3067 (vars_of_gutter): ditto.
3068 (specifier_type_create_gutter): ditto.
3069 (specifier_vars_of_gutter): ditto.
3071 * gutter.h: new file. Contains gutter constants and sizing macros
3072 similar to those for the toolbar.
3074 * winslots.h: add gutter variables.
3076 * window.h: declare window_is_* functions.
3078 * window.c (window_is_lowest): make non-static.
3079 (window_is_highest): ditto.
3080 (window_top_toolbar_height): deleted.
3081 (window_bottom_toolbar_height): deleted.
3082 (window_left_toolbar_width): deleted.
3083 (window_right_toolbar_width): deleted.
3084 (window_top_gutter_height): add gutter sizing.
3085 (window_bottom_gutter_height): ditto.
3086 (window_left_gutter_width): ditto.
3087 (window_right_gutter_width): ditto.
3089 * symsinit.h: declarations for gutters vars etc.
3091 * search.c (bi_find_next_emchar_in_string): new function.
3093 * scrollbar.c (update_scrollbar_instance): remove reference to
3094 window_bottom_toolbar_height which did nothing.
3096 * redisplay.h (struct display_line): add face indices for
3097 overriding defaults in output_display_line.
3098 Add gutter_changed flags and declarations.
3100 * redisplay.c (create_string_text_block): new function, similar to
3101 create_text_block but for strings. Display tables etc are used
3102 from the currently selected window.
3103 (generate_string_display_line): ditto. Similar to
3104 generate_display_line.
3105 (generate_displayable_area): generate display lines for a given
3106 area on a frame. Input is the string, with associated extents, to
3108 (redisplay_frame): add gutter_changed check.
3109 (redisplay_device): ditto.
3110 (redisplay_without_hooks): ditto.
3112 * redisplay-x.c (bevel_modeline): moved to redisplay.c.
3113 (x_redraw_exposed_area): redraw exposed gutters.
3114 (x_bevel_area): new redisplay device method.
3115 (x_type_create_redisplay_mswindows): add bevel_area device method.
3116 (x_output_display_block): fiddly Martin-style cleanup.
3117 (x_output_vertical_divider): use bevel_area.
3119 * redisplay-output.c (output_display_line): check display_lines
3120 for face information before using defaults.
3121 (bevel_modeline): new function, calls bevel_area with appropriate
3124 * redisplay-msw.c (bevel_modeline): moved to redisplay.c.
3125 (mswindows_redraw_exposed_area): redraw exposed gutters.
3126 (mswindows_bevel_area): new redisplay device method.
3127 (console_type_create_redisplay_mswindows): add bevel_area device
3130 * indent.c (string_column_at_point): add column_at_point but for
3133 * glyphs-x.c (image_instantiator_format_create_glyphs_x): only
3134 instantiate widgets that we have a toolkit for.
3136 * general.c: add Qgutter.
3138 * frame.h (struct frame): add display lines for gutters and
3141 * frame.c (set_frame_selected_window): mark gutters changed.
3143 * emacs.c (main_1): add gutter initialisation.
3145 * device.h (struct device): add gutter_changed flag and macros to
3148 * console.h (struct console_methods): new bevel area redisplay
3151 * buffer.h (REAL_INC_CHARBYTIND): new macro for strings as
3152 REAL_INC_BYTIND is for buffers.
3153 (INC_CHARPTR): ditto.
3155 * Makefile.in.in (objs): add gutter.o
3157 1999-07-13 XEmacs Build Bot <builds@cvs.xemacs.org>
3159 * XEmacs 21.2.18 is released
3161 1999-07-08 SL Baur <steve@mule.m17n.org>
3163 * event-Xt.c (handle_focus_event_1): Guard FRAME_X_XIC with
3165 (emacs_Xt_handle_magic_event): Ditto.
3166 * redisplay-x.c (x_output_string): Ditto.
3167 (x_output_eol_cursor): Ditto.
3169 1999-06-30 Kazuyuki IENAGA <kazz@imasy.or.jp>
3171 * event-Xt.c, input-method-xlib.c, redisplay-x.c: Avoid the
3172 problem that when XIM is destroyed or missed with some reason,
3173 xemacs will die. Now xim=xlib waits the XIM will be ready and
3174 endures the case of XIM end up.
3176 1999-07-03 Gunnar Evermann <ge204@eng.cam.ac.uk>
3178 * tooltalk.c (init_tooltalk): save signal actions for SIGQUIT,
3179 SIGINT and SIGCHLD before calling tt_open and restore the
3180 afterwards. This fixes e.g. the zombie subprocesses on Solaris
3182 1999-07-06 SL Baur <steve@xemacs.org>
3184 * s/linux.h: gcc-2.8 changes for powerpc
3185 From Justin Vallon <vallon@mindspring.com>
3187 1999-07-05 Didier Verna <didier@xemacs.org>
3189 * indent.c: new symbol Qcoerce.
3190 (Fmove_to_column): use it + doc string update.
3192 1999-07-04 Andy Piper <andy@xemacs.org>
3194 * console.c: undo earlier Fprovide changes.
3198 * console-tty.c (image_instantiator_format_create_glyphs_tty): new
3199 function. validate appropriate image formats for tty.
3201 * glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM):
3202 initialize consoles parameter.
3203 (struct image_instantiator_methods): add consoles parameter.
3204 (IIFORMAT_VALID_CONSOLE): new function. validate the format on the
3206 (INITIALIZE_DEVICE_IIFORMAT): validate the format on the given
3209 * glyphs-msw.c: declare instantiators for later use.
3210 (image_instantiator_format_create_glyphs_mswindows): validate xpm
3211 and friends on the mswindows console.
3212 * glyphs-x.c: ditto.
3214 * glyphs.c (valid_image_instantiator_format_p): disallow glyphs
3215 that have not been registered on the supplied device.
3216 (Fvalid_image_instantiator_format_p): add locale argument.
3217 (instantiate_image_instantiator): valid image instantiator on the
3220 * symsinit.h: add image_instantiator_format_create_glyphs_tty()
3223 * emacs.c (main_1): add call to
3224 image_instantiator_format_create_glyphs_tty().
3226 1999-06-29 Olivier Galibert <galibert@pobox.com>
3228 * lisp.h: Add #include <stddef.h>.
3230 * sysdep.c: Remove #include <stddef.h>.
3231 * symbols.c: Remove #include <stddef.h>.
3232 * sheap.c: Remove #include <stddef.h>.
3233 * opaque.c: Remove #include <stddef.h>.
3234 * nt.c: Remove #include <stddef.h>.
3235 * mule-charset.c: Remove #include <stddef.h>.
3236 * marker.c: Remove #include <stddef.h>.
3237 * file-coding.c: Remove #include <stddef.h>.
3238 * extents.c: Remove #include <stddef.h>.
3239 * elhash.c: Remove #include <stddef.h>.
3240 * data.c: Remove #include <stddef.h>.
3241 * chartab.c: Remove #include <stddef.h>.
3242 * bytecode.c: Remove #include <stddef.h>.
3243 * alloc.c: Remove #include <stddef.h>. Fix vector description
3245 1999-06-30 SL Baur <steve@miho.m17n.org>
3247 * editfns.c: Document "%s" format spec.
3248 Suggested by Bob Weiner <weiner@altrasoft.com>
3250 1999-06-29 Andy Piper <andy@xemacs.org>
3252 * event-msw.c: fix definition booboo.
3254 1999-06-28 Andy Piper <andy@xemacs.org>
3256 * glyphs-x.c: change tree -> tree-view, progress ->
3257 progress_gauge, edit -> edit-field, tab -> tab-control, combo ->
3259 (complex_vars_of_glyphs_x): provide-on-console the implemented
3262 * glyphs-msw.c: ditto.
3263 (complex_vars_of_glyphs_mswindows): ditto.
3265 * lisp.h: add Fprovide_on_console.
3267 * fns.c (Ffeaturep): add extra optional console argument.
3268 (Fprovide_on_console): like Fprovide but provides only on the
3269 specified console-type.
3270 (Frequire): check console-features as well as global features.
3272 * console.c (Fconsole_features): new function. return features for
3274 (syms_of_console): add Fconsole_features.
3276 * console.h (CONMETH_FEATURES): new function for accessing features.
3277 (CONSOLE_FEATURES): ditto.
3278 (struct console_methods): add features slot.
3279 (INITIALIZE_CONSOLE_TYPE): initialize features slot.
3281 1999-06-28 Andy Piper <andy@xemacs.org>
3283 * event-Xt.c (handle_focus_event_1): conditionally compile for
3286 * s/cygwin32.h: fix me website address.
3288 * event-msw.c: add NMHDR for pre b20 cygwin builds.
3290 * gui-x.c (button_item_to_widget_value): only add callback if it
3293 * glyphs-x.c: add progress, edit and combo instantiators.
3294 (x_widget_set_property): new function. uses lwlib to set widget
3296 (x_widget_property): new function. uses lwlib to get widget
3298 (x_button_instantiate): support images in buttons.
3299 (x_button_property): new function. use lwlib to get the selected
3301 (x_progress_instantiate): new function for instantiating progress
3303 (x_progress_set_property): new function. sets the progress gauge
3305 (x_edit_instantiate): new function. for instantiating edit fields.
3306 (x_combo_instantiate): new function. for instantiating combo
3308 (image_instantiator_format_create_glyphs_x): add new device ii
3311 * glyphs-msw.c (mswindows_tab_instantiate): remove redundant var.
3313 * console.h (CONSOLE_FEATURES): new features accesor.
3315 * conslots.h (MARKED_SLOT): add features entry.
3317 1999-06-25 Andy Piper <andy@xemacs.org>
3319 * menubar-x.c (menu_item_descriptor_to_widget_value_1): use new
3322 * menubar-msw.c: move MAX_MENUITEM_LENGTH to gui.h
3324 * gui.h (struct Lisp_Gui_Item): add accelerator.
3326 * gui.c (gui_item_add_keyval_pair): deal with accelerators.
3327 (gui_item_init): ditto.
3328 (gui_add_item_keywords_to_plist): ditto.
3329 (mark_gui_item): ditto.
3330 (gui_item_hash): ditto.
3331 (gui_item_accelerator): new function.
3332 (gui_name_accelerator): new function stolen from gui-x.c
3334 * gui-x.c (popup_selection_callback): always define. mark
3335 subwindows changed after calling a callback.
3336 (menu_name_to_accelerator): deleted.
3337 (button_item_to_widget_value): forward gui_item things to gui_item
3340 * glyphs-x.h (struct x_subwindow_data): add data for widgets. add
3341 appropriate accesors.
3343 * glyphs-x.c: declare new glyph formats.
3344 (x_finalize_image_instance): unmanage and destroy widgets if they
3346 (x_unmap_subwindow): handle widgets specially.
3347 (x_map_subwindow): ditto. offset display of widgets by offset of
3348 text widget within container.
3349 (x_update_subwindow): new function. call lw_modify_all_widgets
3350 when we are a widget.
3351 (x_widget_instantiate): new function for generically creating
3352 widgets-glyphs. toolkit specifics forwarded to lwlib.
3353 (x_button_instantiate): new function for instantiating
3354 widgets-glyph buttons.
3355 (console_type_create_glyphs_x): register update_subwindow.
3356 (image_instantiator_format_create_glyphs_x): register widget and
3359 * event-msw.c (mswindows_wnd_proc): remove redundant variable.
3361 * event-Xt.c (x_event_to_emacs_event): call handle_focus_event_1
3362 when we get a button press in case we do not have the focus.
3363 (handle_focus_event_1): set the keyboard focus to the text widget
3364 if we do not have it.
3366 * dialog-x.c (dbox_descriptor_to_widget_value): use new gui_item
3369 1999-06-24 SL Baur <steve@miho.m17n.org>
3371 * syntax.c (scan_words): Restore non-Mule code.
3372 (word_constituent_p): Restore.
3374 1999-06-23 Olivier Galibert <galibert@pobox.com>
3376 * config.h.in: Add missing #undef *_USER_DEFINED.
3378 1999-06-23 SL Baur <steve@miho.m17n.org>
3380 * lisp.h (set_bit_vector_bit): Force promotion to unsigned long
3381 int (fixes a 64-bit problem).
3383 * chartab.c (word_boundary_p): Use EQ not == for lisp_object
3386 1999-03-23 Michael Sperber [Mr. Preprocessor] <sperber@informatik.uni-tuebingen.de>
3388 * paths.h.in (PATH_DOC): Made doc-directory configurable.
3390 1999-06-22 Olivier Galibert <galibert@pobox.com>
3392 * lrecord.h: Added basic external description system.
3394 * symbols.c: Added symbol, symbol-value-buffer-local,
3395 symbol-value-lisp-magic and symbol-value-varalias description.
3396 * mule-charset.c: Added charset description.
3397 * marker.c: Added marker description.
3398 * keymap.c: Added keymap description.
3399 * glyphs.c: Added glyph description.
3400 * floatfns.c: Added float description.
3401 * file-coding.c: Added coding-system description.
3402 * extents.c: Added extent description.
3403 * elhash.c: Added hash-table description.
3404 * data.c: Added weak-list desciption.
3405 * chartab.c: Added char-table-entry and char-table description.
3406 * bytecode.c: Added compiled-function description.
3407 * alloc.c: Added cons, vector and string description.
3409 1999-06-22 Olivier Galibert <galibert@pobox.com>
3411 * lrecord.h (struct lrecord_header): Reduced size to 4 bytes.
3412 Updated everything to the removal of the "flags" substructure.
3414 * lisp.h (subr_lheader_initializer): Updated.
3415 * symeval.h (symbol_value_forward_lheader_initializer): Updated.
3417 1999-06-20 MORIOKA Tomohiko <tomo@etl.go.jp>
3419 * syntax.c (word_constituent_p): Deleted.
3420 (scan_words): Use `WORD_BOUNDARY_P'.
3422 * chartab.c (Vword_combining_categories): New variable.
3423 (Vword_separating_categories): Likewise.
3424 (CATEGORYP): New macro.
3425 (CATEGORY_SET): Likewise.
3426 (CATEGORY_MEMBER): Likewise.
3427 (word_boundary_p): New function.
3428 (complex_vars_of_chartab): Set up new variable
3429 `word-combining-categories' and `word-separating-categories'.
3431 1999-06-18 Olivier Galibert <galibert@pobox.com>
3433 * lrecord.h: Added description as a placehold in the lrecord
3434 implementation structures. Added the parameter to all constructor
3437 * alloc.c: Added placeholders.
3439 * bytecode.c: Ditto.
3443 * database.c: Ditto.
3448 * event-stream.c: Ditto.
3452 * file-coding.c: Ditto.
3453 * floatfns.c: Ditto.
3461 * mule-charset.c: Ditto.
3465 * rangetab.c: Ditto.
3466 * specifier.c: Ditto.
3469 * tooltalk.c: Ditto.
3472 1999-06-22 XEmacs Build Bot <builds@cvs.xemacs.org>
3474 * XEmacs 21.2.17 is released
3476 1999-06-13 Oscar Figueiredo <oscar@xemacs.org>
3478 * config.h.in (HAVE_LDAP_SET_OPTION): New define
3479 (HAVE_LDAP_GET_LDERRNO): Ditto
3480 (HAVE_LDAP_RESULT2ERROR): Ditto
3481 (HAVE_LDAP_PARSE_RESULT): Ditto
3482 (HAVE_UMICH_LDAP): Removed
3483 (HAVE_NS_LDAP): Removed
3485 * eldap.h (struct Lisp_LDAP): Removed the `livep' member as
3486 suggested by Olivier Galibert
3487 (CHECK_LIVE_LDAP): Test on `ld' instead of `livep'
3489 * eldap.c: Take the removal of `livep' into account in all the
3491 (signal_ldap_error): Take two additional parameters
3492 Added new finer compilation conditions in order to use
3493 ldap_parse_result or ldap_result2error if available
3494 (Fldap_open): Conform to this new API
3495 (Fldap_search_internal): Ditto
3497 1999-06-17 SL Baur <steve@miho.m17n.org>
3499 * data.c (struct int_or_double): Should use EMACS_INT not int.
3501 1999-06-16 Norbert Koch <n.koch@eai-delta.de>
3503 * redisplay-msw.c: Run 'ccl_driver' with 'CCL_MODE_ENCODING' as in
3506 1999-06-12 MORIOKA Tomohiko <tomo@etl.go.jp>
3508 * redisplay-x.c (separate_textual_runs): Run `ccl_driver' with
3509 `CCL_MODE_ENCODING'.
3511 * file-coding.c (mule_decode): Run `ccl_driver' with
3512 `CCL_MODE_DECODING'.
3513 (mule_encode): Run `ccl_driver' with `CCL_MODE_ENCODING'.
3515 * mule-ccl.c (CCL_WRITE_CHAR): Refer `conversion_mode'.
3516 (ccl_driver): Add new argument `conversion_mode'.
3517 (Fccl_execute): Run `ccl_driver' with `CCL_MODE_ENCODING'.
3518 (Fccl_execute_on_string): Likewise [perhaps it is better to add
3519 new optional argument].
3521 * mule-ccl.h (CCL_MODE_ENCODING): New macro.
3522 (CCL_MODE_DECODING): New macro.
3523 (ccl_driver): Add new argument `conversion_mode'.
3525 1999-06-15 SL Baur <steve@miho.m17n.org>
3527 * mule-charset.c (Fsplit_char): New subr.
3528 (Fchar_octet): delete.
3529 (syms_of_mule_charset): DEFSUBR it.
3531 1999-06-13 Andy Piper <andy@xemacs.org>
3533 * menubar.h: update declarations involving gui_items.
3535 * lisp.h: declare Lisp_Gui_Item.
3537 * glyphs.h (struct Lisp_Image_Instance): update type of gui_item.
3539 * glyphs.c (mark_image_instance): modify for new lisp-based gui_items.
3540 (print_image_instance): ditto.
3541 (image_instance_equal): ditto.
3542 (image_instance_hash): ditto.
3544 * event-msw.c (mswindows_need_event): assert badly_p status.
3545 (mswindows_wnd_proc): modify WM_NOTIFY handling to cope with
3546 callbacks in tree-view and tab-control widgets.
3547 (emacs_mswindows_next_event): modify use of
3548 mswindows_dequeue_dispatch_event.
3550 * dialog-msw.c (mswindows_popup_dialog_box): modify for new
3551 lisp-based gui_items.
3553 * glyphs-msw.c (mswindows_update_subwindow): update use of
3555 (mswindows_register_gui_item): new function.
3556 (mswindows_register_gui_item): fix to use lisp gui_items.
3557 (mswindows_widget_instantiate): ditto.
3558 (mswindows_button_instantiate): ditto.
3559 (add_tree_item): new function to recursively add tree view
3561 (add_tree_item_list): ditto.
3562 (mswindows_tree_instantiate): new function. instantiate tree view
3564 (add_tab_item): new function to add tabs to a tab control.
3565 (mswindows_tab_instantiate): new function. instantiate tab
3567 (image_instantiator_format_create_glyphs_mswindows): add tree view
3569 (vars_of_glyphs_mswindows): ditto.
3571 * glyphs-widget.c (check_valid_item_list_1): allow nested lists in
3573 (check_valid_item_list): ditto.
3574 (initialize_widget_image_instance): fix to use new lisp gui_item.
3575 (widget_instantiate_1): allow the setting of default textwidth in
3577 (widget_instantiate): change to use new widget_instantiate_1
3579 (combo_instantiate): ditto.
3580 (static_instantiate): ditto.
3581 (tab_instantiate): new function for tab widgets.
3582 (image_instantiator_format_create_glyphs_widget): add tab and tree
3585 * menubar-msw.c (displayable_menu_item): convert to use lisp
3587 (populate_menu_add_item): ditto.
3588 (populate_or_checksum_helper): ditto.
3590 * menubar.c (menu_parse_submenu_keywords): convert to use lisp
3592 (Fmenu_find_real_submenu): ditto.
3594 * gui.h (struct Lisp_Gui_Item): make gui_item a lisp oebjct.
3596 * gui.c (gui_item_add_keyval_pair): gui_items are now lisp
3597 objects, convert functions that use them accordingly.
3598 (gui_item_init): ditto.
3599 (gui_item_active_p): ditto.
3600 (gui_item_selected_p): ditto.
3601 (gui_item_included_p): ditto.
3602 (gui_item_display_flush_left): ditto.
3603 (gui_item_display_flush_right): ditto.
3604 (mark_gui_item): ditto.
3605 (allocate_gui_item): new function to create a gui_item.
3606 (make_gui_item_from_keywords_internal): ditto. create and return a
3607 gui_item as well as setting keywords.
3608 (gui_parse_item_keywords): ditto.
3609 (gui_parse_item_keywords_no_errors): ditto.
3610 (gui_add_item_keywords_to_plist): new function, not yet used.
3611 (gui_item_hash): new function.
3612 (gui_item_id_hash): use gui_item_hash.
3613 (gui_item_equal): new function.
3614 (print_gui_item): new function.
3616 1999-06-11 XEmacs Build Bot <builds@cvs.xemacs.org>
3618 * XEmacs 21.2.16 is released
3620 1999-06-10 Andy Piper <andy@xemacs.org>
3622 * select-msw.c (mswindows_own_selection): only set the clipboard
3624 (mswindows_get_foreign_selection): only get the clipboard if
3626 (mswindows_disown_selection): only disown the clipboard if asked.
3628 1999-06-03 MORIOKA Tomohiko <tomo@etl.go.jp>
3630 * file-coding.c (coding_system_from_mask): Use `raw-text' instead
3632 (complex_vars_of_mule_coding): Use `raw-text' as the coding-system
3633 of coding-category `no-conversion'.
3635 1999-06-03 MORIOKA Tomohiko <tomo@etl.go.jp>
3637 * file-coding.c (Qraw_text): New variable.
3638 (syms_of_mule_coding): Add new symbol `raw-text'.
3639 (complex_vars_of_mule_coding): Add new coding-system `raw-text';
3640 define coding-system `binary' independently; define coding-system
3641 `no-conversion' as an alias for `raw-text'.
3643 * file-coding.h (Qraw_text): New variable.
3645 1999-06-08 SL Baur <steve@xemacs.org>
3647 * s/decosf4-0.h: Explicitly #undef SYSTEM_MALLOC.
3649 1999-06-06 Hrvoje Niksic <hniksic@srce.hr>
3651 * fns.c (MIME_LINE_LENGTH): Default to 72, as in mimencode and
3653 (base64_decode_1): Signal errors instead of returning -1.
3655 1999-06-07 Hrvoje Niksic <hniksic@srce.hr>
3657 * mule-charset.c (Fmake_char): Update docstring.
3659 1999-06-07 Hrvoje Niksic <hniksic@srce.hr>
3661 * fns.c (Fstring_lessp): Actually increment the Bufbyte pointers.
3663 1999-06-05 Hrvoje Niksic <hniksic@srce.hr>
3665 * fns.c (base64_decode_1): Allow and ignore any non-base64
3666 characters in input.
3668 1999-05-27 Olivier Galibert <galibert@pobox.com>
3670 * emacs.c (Fdump_emacs): Add clear_message() lost with the removal
3671 of report_pure_usage().
3673 1999-06-04 Hrvoje Niksic <hniksic@srce.hr>
3675 * fns.c (Fstring_lessp): Remove O(n^2) under Mule.
3677 1999-06-04 XEmacs Build Bot <builds@cvs.xemacs.org>
3679 * XEmacs 21.2.15 is released
3681 1999-06-01 Hirokazu FUKUI <fukui@atesoft.advantest.co.jp>
3683 * frame.c (Fset_mouse_position):
3684 (Fset_mouse_pixel_position):
3685 * window.c (Fsplit_window):
3686 (Fmove_to_window_line):
3687 Fix crash when invoking functions with an already-deleted window
3690 * indent.c (vertical_motion_1):
3692 (Fvertical_motion_pixels):
3693 * window.c (Fwindow_displayed_text_pixel_height):
3694 Fix error message when invoking functions with an already-deleted
3697 1999-06-01 Jan Vroonhof <vroonhof@math.ethz.ch>
3699 * sysdep.c (request_sigio_on_device): Guard against glibc
3700 2.1's stub streams implementation.
3702 1999-06-03 SL Baur <steve@xemacs.org>
3705 * emacs.c: Implement x.y.z version numbers
3706 From Jan Vroonhof <vroonhof@math.ethz.ch>
3708 1999-05-20 MORIOKA Tomohiko <tomo@etl.go.jp>
3710 * mule-charset.c (complex_vars_of_mule_charset): Registry of
3711 japanese-jisx0208-1978 should not match with "jisx0208.1983" nor
3714 1999-06-03 SL Baur <steve@xemacs.org>
3717 * device-x.c: rename session option to wmcommand.
3718 From Oliver Graf <ograf@rhein-zeitung.de>
3720 1999-05-27 Hrvoje Niksic <hniksic@srce.hr>
3722 * fns.c (Fsubstring): Don't traverse the same region twice with
3723 charcount_to_bytecount().
3725 1999-06-03 SL Baur <steve@steve1.m17n.org>
3727 * m/alpha.h (SYSTEM_MALLOC): Fix indented preprocessor directive
3730 * s/decosf4-0.h: Defining ORDINARY_LINK here is redundant (and it
3731 doesn't really work as is implied by the commentary).
3732 Don't define SYSTEM_MALLOC so the old GNU malloc can be used.
3734 1999-06-02 SL Baur <steve@steve1.m17n.org>
3736 * symsinit.h: Declare vars_of_ntproc.
3737 * emacs.c (main_1): Call it.
3739 * ntproc.c (syms_of_ntproc): Move variable initializations from
3741 (vars_of_ntproc): ... to here [new function].
3743 * file-coding.c (syms_of_file_coding): Rename.
3744 (vars_of_file_coding): Ditto.
3745 (complex_vars_of_file_coding): Ditto.
3747 * symsinit.h: Rename *_mule_coding to *_file_coding.
3749 * emacs.c (main_1): Call them by the proper name.
3751 * device-msw.c (syms_of_device_mswindows): Move variable
3752 initializations from here ...
3753 (vars_of_device_mswindows): ... to here.
3755 * chartab.c (vars_of_chartab): New function.
3757 * symsinit.h: New function, vars_of_chartab.
3759 * emacs.c (main_1): Call it.
3761 * mule-canna.c (syms_of_mule_canna): Move CANNA initialization ...
3762 (vars_of_mule_canna): ... to here.
3764 * mule-ccl.c (vars_of_mule_ccl): New function. Move variable
3765 initializations out of syms_of_mule_ccl.
3767 * symsinit.h: Declare new function vars_of_mule_ccl.
3769 * emacs.c (main_1): Call it.
3771 1999-05-27 Hrvoje Niksic <hniksic@srce.hr>
3773 * fns.c (base64_decode_1): Ignore whitespace.
3775 1999-05-27 Hrvoje Niksic <hniksic@srce.hr>
3777 * mule-charset.c (Fmake_char): Strip the eighth bit off ARG1 and
3780 1999-05-21 Andy Piper <andy@xemacs.org>
3782 * xselect.c: deleted.
3784 * symsinit.h: declare select initialisation.
3786 * select.h: new file. declare commonly used select functions and
3789 * select.c: new file. generalised from xselect.c.
3790 (clean_local_selection_data): moved from xselect.c.
3791 (get_local_selection): ditto. device specific pieces called via a
3793 (handle_selection_clear): ditto.
3794 (Fown_selection_internal): renamed and generalised from
3795 Fx_own_selection_internal. moved from xselect.c.
3796 (Fdisown_selection_internal): ditto.
3797 (Fselection_owner_p): ditto.
3798 (Fselection_exists_p): ditto.
3799 (Fget_selection_internal): ditto.
3800 (syms_of_select): new function. QXXXX values moved from xselect.c
3801 (vars_of_select): new function. selection_converter_alist,
3802 lost_selection_hooks moved and renamed from xselect.c
3804 * select-x.c: renamed from xselect.c.
3805 (x_own_selection): converted to device specific. non-X-specific
3806 bits moved to select.c.
3807 (x_get_foreign_selection): ditto.
3808 (x_disown_selection): ditto.
3809 (x_selection_exists_p): ditto.
3810 (console_type_create_select_x): new function.
3812 * select-msw.c (mswindows_own_selection): new device method to set
3813 the clipboard when we 'own' the selection.
3814 (mswindows_get_foreign_selection): new device method to get the
3816 (mswindows_disown_selection): new device method to delete the
3817 selection when we 'disown' it.
3818 (console_type_create_select_mswindows): new function.
3820 * emacs.c (main_1): add select to things to initialise.
3822 * console.h (struct console_methods): new console methods for
3825 * Makefile.in.in (x_objs): xselect.c renamed to select-x.c
3827 1999-05-20 Hrvoje Niksic <hniksic@srce.hr>
3829 * print.c (long_to_string): Install a faster version.
3831 1999-05-16 Andy Piper <andy@xemacs.org>
3833 * ntproc.c (syms_of_ntproc): default
3834 win32-start-process-share-console to t.
3836 1999-05-14 Hrvoje Niksic <hniksic@srce.hr>
3838 * config.h.in: Do it here.
3840 * bytecode.c: Don't define ERROR_CHECK_TYPECHECK here.
3842 1999-05-14 Andy Piper <andy@xemacs.org>
3844 * toolbar-msw.c (mswindows_output_toolbar): hash on something
3847 1999-05-14 XEmacs Build Bot <builds@cvs.xemacs.org>
3849 * XEmacs 21.2.14 is released
3851 1999-05-12 Andy Piper <andy@xemacs.org>
3853 * ntproc.c (sys_spawnve): kludge argv[0] in a MS compatible way.
3855 1999-05-11 Gunnar Evermann <ge204@eng.cam.ac.uk>
3857 * emacs.c (Frun_emacs_from_temacs): (re)alloc natgs+2 entries for
3858 run_temacs_argv array -- fixes random memory corruption crash
3860 1999-05-12 Jan Vroonhof <vroonhof@math.ethz.ch>
3862 * window.c (Fcurrent_window_configuration):
3863 Save minibuffer height;
3865 * window.c (set_window_configuration): use it.
3867 1999-05-10 Robert Pluim <rpluim@bigfoot.com>
3869 * lisp.h (NNUNGCPRO): fix typo in name of DEBUG_GCPRO version
3871 1999-04-21 Jan Vroonhof <vroonhof@math.ethz.ch>
3873 * redisplay.c (redisplay_window): Do not put data
3874 in the line start cache if it is not guaranteed to be correct
3876 1999-04-02 Jan Vroonhof <vroonhof@math.ethz.ch>
3878 * window.c (struct window_config): Removed frame
3880 (window_config_equal): No longer compare frame sizes.
3881 (Fset_window_configuration): Resize old top window to fit in the
3882 current frame directly, no longer use a fake frame resize.
3883 (Fcurrent_window_configuration): No longer save frame size
3885 1999-05-11 Andy Piper <andy@xemacs.org>
3887 * ntproc.c (sys_spawnve): actually assign argv[0] instead of the
3890 1999-05-10 Hrvoje Niksic <hniksic@srce.hr>
3892 * sysdep.c (init_system_name): If gethostname gives a proper
3893 domain name, don't look further for one.
3895 1999-05-09 Hrvoje Niksic <hniksic@srce.hr>
3897 * symbols.c (Fintern): Avoid frequent XSYMBOL (foo).
3898 (Fintern_soft): Accept a symbol argument.
3900 1999-05-06 Hrvoje Niksic <hniksic@srce.hr>
3902 * symbols.c (Fintern): ...do it here.
3904 * lread.c (read_atom): Don't handle keywords here.
3906 1999-05-06 Hrvoje Niksic <hniksic@srce.hr>
3908 * symbols.c (reject_constant_symbols): Just use SYMBOL_IS_KEYWORD.
3910 1999-05-03 Olivier Galibert <galibert@pobox.com>
3912 * lisp.h (SYMBOL_IS_KEYWORD): A symbol can be a keyword only if it
3913 is interned in the main obarray.
3915 1999-04-23 Gunnar Evermann <ge204@eng.cam.ac.uk>
3917 * menubar-x.c (pre_activate_callback): set accelerator field in
3918 "No menu" entries to nil. Avoid crash in
3919 command_builder_operate_menu_accelerator
3921 1999-05-03 Olivier Galibert <galibert@pobox.com>
3923 * symeval.h (symbol_value_forward_lheader_initializer): Ditto.
3925 * lisp.h (DEFUN): Fix lrecord header initialisation.
3927 1999-05-02 Andy Piper <andy@xemacs.org>
3929 * objects-msw.c (mswindows_font_instance_truename): add a ';'.
3931 * ntproc.c (sys_kill): cast using MS mandated defines.
3933 1999-04-29 Andy Piper <andy@xemacs.org>
3935 * m/intel386.h: remove redundant definitions.
3937 * s/mingw32.h: new header for mingw32.
3939 * unexnt.c: (open_input_file): function moved to nt.c.
3940 (close_file_data): ditto.
3941 (rva_to_section): function moved to ntproc.
3943 * symsinit.h: declare syms_of_ntproc();
3945 * objects-msw.c (mswindows_font_instance_truename): new function.
3947 * ntproc.c: remove many warnings.
3948 (_sys_read_ahead): moved from nt.c and made static.
3949 (rva_to_section): moved from unexnt.c but not defined under
3951 (win32_executable_type): implement what we can for mingw32
3953 (sys_spawnve): fix bad MULE/GCPRO bug in filename handling.
3955 * ntheap.h: remove declarations of functions that are now static.
3957 * ntheap.c: support static heap.
3959 * nt.h: conditionalise X_OK definition.
3961 * nt.c: eliminate many warnings and support mingw32.
3962 (open_input_file): function moved from unexnt.c and made static
3963 (close_file_data): ditto.
3964 (_sys_read_ahead): moved to ntproc.c
3966 * emacs.c: make sure syms_of_ntptroc gets called under windows.
3968 * console-msw.h: support mingw32.
3969 * getloadavg.c: ditto.
3976 * config.h.in: don't turn on DEBUG_ENCAPSULATION by default because
3977 some systems don't have all of the encapsulated system calls.
3979 * callproc.c: warning elimination.
3980 * dired-msw.c: ditto.
3981 * process-nt.c: ditto.
3982 * realpath.c: ditto.
3984 * Makefile.in.in: tweak : and ; for building under mswindows.
3986 1999-04-26 Michael Harnois <mharnois@willinet.net>
3988 * eldap.c (allocate_ldap): Adapt to the new semantics of
3989 alloc_lcrecord_type().
3991 1999-03-16 MORIOKA Tomohiko <tomo@etl.go.jp>
3993 * file-coding.c (DECODE_HANDLE_END_OF_CONVERSION): fixed.
3995 1998-09-04 MORIOKA Tomohiko <morioka@jaist.ac.jp>
3997 * Delete mule-coding.c and mule-coding.h because they are not
4000 1999-04-22 Gunnar Evermann <ge204@eng.cam.ac.uk>
4002 * objects.c (print_font_instance): Check for NILP(f->device),
4003 i.e. Vthe_null_font_instance.
4004 (font_instance_truename_internal): ditto.
4005 (Ffont_instance_properties): ditto.
4007 1999-04-22 Olivier Galibert <galibert@pobox.com>
4009 * lrecord.h (DECLARE_LRECORD): lrecord_implementation isn't an
4012 1999-04-22 Hrvoje Niksic <hniksic@srce.hr>
4014 * Makefile.in.in (tests): Don't mention tests explicitly -- makes
4015 it easier to add new ones.
4017 1999-04-22 Hrvoje Niksic <hniksic@srce.hr>
4019 * symbols.c (reject_constant_symbols): Ditto.
4020 (init_symbols_once_early): Ditto.
4022 * print.c (print_symbol): Don't use ->obarray.
4024 * symbols.c (Funintern): Ditto.
4026 * alloc.c (Fmake_symbol): Don't set ->obarray.
4028 * lisp.h (struct Lisp_Symbol): Removed .obarray field.
4030 * symbols.c (init_symbols_once_early): Removed
4031 Vpure_uninterned_symbol_table.
4032 (Fintern): Don't store to ->obarray field.
4034 1999-04-22 Hrvoje Niksic <hniksic@srce.hr>
4036 * data.c (vars_of_data): Default debug_issue_ebola_notices to 0.
4037 (eq_with_ebola_notice): Remove abracadabra support.
4039 1999-04-11 Oscar Figueiredo <Oscar.Figueiredo@di.epfl.ch>
4041 * eldap.c (Fldap_search_internal): Add a new parameter `withdn' to
4042 retrieve the distinguished names of entries
4044 1999-03-08 Martin Buchholz <martin@xemacs.org>
4046 * lread.c (read_escape): Make hex escapes read only two hex digits.
4048 1999-04-05 Olivier Galibert <galibert@pobox.com>
4050 * Makefile.in.in: Remove puresize-adjust.h and recursive makes.
4051 * make-src-depend: Remove puresize-adjust.h.
4052 * src-headers: Remove puresize-adjust.h.
4053 * config.h.in: Kill everything purespace/gung-ho related.
4055 * dbxrc: Make gung-ho mandatory.
4058 * lrecord.h: Make gung-ho mandatory. Remove pure flag and add
4059 c_readonly and lisp_readonly. Remove implementation arrays.
4060 (C_READONLY_RECORD_HEADER_P): Added.
4061 (LISP_READONLY_RECORD_HEADER_P): Added.
4062 (SET_C_READONLY_RECORD_HEADER): Added.
4063 (SET_LISP_READONLY_RECORD_HEADER): Added.
4065 * lisp.h: Kill everything purespace/non gung-ho related.
4066 (CHECK_C_WRITEABLE): Added.
4067 (CHECK_LISP_WRITEABLE): Added.
4068 (C_READONLY): Added.
4069 (LISP_READONLY): Added.
4071 * lisp-union.h: Make gung-ho mandatory.
4072 * lisp-disunion.h: Ditto.
4074 * alloc.c: Kill everything purespace/non gung-ho related. Fix all
4075 set_lheader_implementation calls.
4076 (c_readonly): Added.
4077 (lisp_readonly): Added.
4078 (make_string_nocopy): Added.
4079 (Fpurecopy): Changed to do nothing. Kept the old documentation
4080 for reference purposes for the next patches.
4081 (sweep_lcrecords_1): Don't free C readonly lcrecords.
4082 (sweep_bit_vectors_1): Don't free C readonly bitvectors.
4083 (SWEEP_FIXED_TYPE_BLOCK): Don't free C readonly lrecords.
4085 * fns.c: Make gung-ho mandatory.
4086 (Fput): CHECK_IMPURE -> CHECK_LISP_WRITEABLE.
4088 (Ffillarray): Ditto.
4090 * data.c: Make gung-ho mandatory.
4091 (pure_write_error): Removed.
4092 (c_write_error): Added.
4093 (lisp_write_error): Added.
4094 (Fsetcar): CHECK_IMPURE -> CHECK_LISP_WRITEABLE.
4098 * symbols.c: Make gung-ho mandatory. make_pure_pname ->
4099 make_string or make_string_nocopy. Fix various
4100 alloc_lcrecord_type.
4102 * lread.c: Remove everything purespace related.
4103 (Flocate_file_clear_hashing): purified -> c_readonly.
4104 (locate_file): Ditto.
4105 (read_atom): make_pure_pname -> make_string.
4107 * emacs.c (Frun_emacs_from_temacs): Remove purespace stats
4109 (Fdump_emacs): Ditto.
4111 * print.c (print_internal): Make gung-ho mandatory.
4112 * ntheap.c (sbrk): Ditto.
4113 * mem-limits.h (EXCEEDS_LISP_PTR): Ditto
4114 * symeval.h (symbol_value_forward_lheader_initializer): Ditto.
4116 * sheap.c (more_static_core): Remove puresize-adjust.h from
4119 * syntax.c (complex_vars_of_syntax): make_pure_string ->
4121 * keymap.c (make_keymap): Fix alloc_lcrecord_type.
4122 (vars_of_keymap): make_pure_string -> make_string_nocopy.
4123 * events.c (deinitialize_event): Fix set_lheader_implementation.
4124 (zero_event): Ditto.
4125 * specifier.c (make_specifier_internal): Fix alloc_lcrecord.
4126 * menubar-x.c (set_frame_menubar): Fix alloc_lcrecord_type.
4127 * mule-charset.c (make_charset): Ditto.
4128 * console.c (allocate_console): Ditto.
4129 (complex_vars_of_console): Ditto.
4130 * file-coding.c (allocate_coding_system): Ditto.
4131 * device.c (allocate_device): Ditto
4132 * gui-x.c (gcpro_popup_callbacks): Ditto.
4133 * extents.c (allocate_extent_auxiliary): Ditto.
4134 (allocate_extent_info): Ditto.
4135 (copy_extent): Ditto.
4136 * glyphs.c (allocate_image_instance): Ditto.
4137 (allocate_glyph): Ditto.
4138 * frame.c (allocate_frame_core): Ditto.
4139 * database.c (allocate_database): Ditto.
4140 * tooltalk.c (make_tooltalk_message): Ditto.
4141 (make_tooltalk_pattern): Ditto.
4142 * rangetab.c (Fmake_range_table): Ditto.
4143 (Fcopy_range_table): Ditto.
4144 * process.c (make_process_internal): Ditto.
4145 * chartab.c (Fmake_char_table): Ditto.
4146 (make_char_table_entry): Ditto.
4147 (copy_char_table_entry): Ditto.
4148 (Fcopy_char_table): Ditto.
4149 * elhash.c (make_general_lisp_hash_table): Ditto.
4150 (Fcopy_hash_table): Ditto.
4151 * buffer.c (allocate_buffer): Ditto.
4152 (complex_vars_of_buffer): Ditto.
4153 * event-stream.c (allocate_command_builder): Ditto.
4154 * objects.c (Fmake_color_instance): Ditto.
4155 (Fmake_font_instance): Ditto.
4156 (vars_of_objects): Ditto.
4157 * toolbar.c (update_toolbar_button): Ditto.
4158 * window.c (allocate_window): Ditto.
4159 (make_dummy_parent): Ditto.
4160 (Fcurrent_window_configuration): Fix alloc_lcrecord.
4161 (vars_of_window): Fix make_lcrecord_list.
4162 * faces.c (allocate_face): Fix alloc_lcrecord_type. pure_list ->
4164 * lstream.c (Lstream_new): Fix make_lcrecord_list.
4165 * opaque.c (make_opaque): Fix alloc_lrecord.
4166 (make_opaque_list): Fix alloc_lrecord_type.
4168 1999-04-19 Hrvoje Niksic <hniksic@srce.hr>
4170 * process.c (Fstart_process_internal): Ditto.
4172 * ntproc.c (sys_spawnve): Use Vlisp_EXEC_SUFFIXES when calling
4175 * glyphs-x.c (x_locate_pixmap_file): Ditto.
4177 * glyphs-msw.c (mswindows_locate_pixmap_file): Fix call to
4180 * emodules.c (vars_of_module): New variable Vmodule_extensions.
4181 (emodules_load): Use it when calling locate_file().
4183 * emacs.c (main_1): Use Vlisp_EXEC_SUFFIXES when calling
4186 * callproc.c: Vlisp_EXEC_SUFFIXES: New variable.
4187 (vars_of_callproc): Initialize it.
4188 (Fcall_process_internal): Use it when calling locate_file().
4190 * alloc.c (disksave_object_finalization): Use
4191 Flocate_file_clear_hashing().
4193 * lread.c (Flocate_file_clear_hashing): Clear all hasing when
4194 given `t' as argument.
4196 1999-04-18 Hrvoje Niksic <hniksic@srce.hr>
4198 * lread.c (locate_file): Expand `pathel' when appropriate.
4199 (Flocate_file_clear_hashing): Expand path elements.
4200 (Flocate_file_clear_hashing): Use Vlocate_file_hash_table.
4202 * dired.c (make_directory_hash_table): Create the hash-table only
4203 if the directory open is successful.
4205 * lread.c (decode_mode_1): New function.
4206 (decode_mode): Ditto.
4207 (Flocate_file): Use them.
4208 (Flocate_file): Expand FILENAME.
4209 (locate_file_map_suffixes): New function.
4210 (locate_file_in_directory_mapper): New function.
4211 (locate_file_in_directory): Use locate_file_in_directory_mapper()
4212 and locate_file_map_suffixes().
4213 (locate_file_construct_suffixed_files): Use
4214 locate_file_map_suffixes().
4215 (locate_file_without_hash): Don't GCPRO path.
4216 (Flocate_file_clear_hashing): Use EXTERNAL_LIST_LOOP.
4217 (syms_of_lread): Remove Qlocate_file_hash_table.
4218 (locate_file_find_directory_hash_table): Use
4219 Vlocate_file_hash_table.
4220 (locate_file_refresh_hashing): Ditto.
4222 * lread.c: Renamed read_objects to Vread_objects.
4224 1999-04-16 Olivier Galibert <galibert@pobox.com>
4226 * mule-charset.c: Generally resync with fsf 20.3 charset
4228 (make_charset): Add long and short name. Use id instead of
4230 (Fmake_charset): Ditto.
4231 (Fmake_reverse_direction_charset): Ditto.
4232 (Fcharset_property): Ditto.
4233 (Fcharset_short_name): Added.
4234 (Fcharset_long_name): Added.
4235 (Fcharset_description): Renamed from charset-doc-string.
4236 (syms_of_mule_charset): Synced symbols.
4237 (complex_vars_of_mule_charset): Synced charsets.
4239 * mule-charset.h: Removed leading byte (uses id instead), added
4240 short and long name.
4242 1999-04-15 Hrvoje Niksic <hniksic@srce.hr>
4244 * file-coding.c (Fdefine_coding_system_alias): New function.
4246 1999-04-08 Olivier Galibert <galibert@pobox.com>
4248 * mule-charset.c (complex_vars_of_mule_charset): Allow all iso8859
4249 and -ascii fonts for displaying ascii instead of iso8859-1 only.
4251 1998-12-14 Hrvoje Niksic <hniksic@srce.hr>
4253 * extents.c (set_extent_glyph_1): Make sure that the glyph we
4254 attach to the extent is valid.
4256 1998-12-12 Hrvoje Niksic <hniksic@srce.hr>
4258 * dired.c (user_name_completion): Mule-ize.
4259 (user_name_completion): Use xmalloc/xrealloc/xfree.
4260 (user_name_completion): Use DO_REALLOC.
4261 (user_name_completion): Cut down the number of static variables;
4263 (user_name_completion): Username completion is always
4266 1998-12-06 Hrvoje Niksic <hniksic@srce.hr>
4268 * fns.c (base64_decode_1): Remove COUNTER.
4269 (base64_decode_1): Accept CRLF in addition to CR.
4270 (base64_decode_1): Disallow a stray character after final EOF; the
4271 check was probably a remnant of buggy recode code.
4273 1998-12-05 Hrvoje Niksic <hniksic@srce.hr>
4275 * fns.c (init_provide_once): Provide `base64'.
4277 1998-12-04 Hrvoje Niksic <hniksic@srce.hr>
4279 * fns.c (XMALLOC_UNBIND): Include SPECCOUNT argument, for clarity.
4280 (Fbase64_encode_region): If buffer is read-only, bail out early.
4281 (Fbase64_decode_region): Ditto.
4282 (Fbase64_encode_region): Initialize SPECCOUNT to pacify the
4284 (Fbase64_encode_string): Ditto.
4285 (Fbase64_decode_region): Ditto.
4286 (Fbase64_decode_string): Ditto.
4288 1998-11-25 Hrvoje Niksic <hniksic@srce.hr>
4290 * dired.c (Fdirectory_files): Remove redundant code.
4292 1999-03-05 Philip Aston <philipa@parallax.co.uk>
4294 * frame-msw.c Make raise-frame restore minimised windows.
4296 1999-03-05 Philip Aston <philipa@parallax.co.uk>
4298 * device-msw.c: Fix DEFVAR format - Death to phantom quote, and
4301 1999-03-05 Philip Aston <philipa@parallax.co.uk>
4303 * toolbar-msw.c Consider captions when deciding whether to rebuild
4304 toolbar. This fixes the initial toolbar display for those of us
4305 who don't like captions. These patches applied by Andy Piper.
4307 1999-03-12 XEmacs Build Bot <builds@cvs.xemacs.org>
4309 * XEmacs 21.2.13 is released
4311 1999-03-12 SL Baur <steve@xemacs.org>
4313 * file-coding.c: Guard ucs table initialization with ifdef MULE.
4315 1999-03-10 Stephen J. Turnbull <turnbull@sk.tsukuba.ac.jp>
4317 * file-coding.c: docstring and comment improvements.
4318 (decode_ucs4) flag possible data loss with comment.
4320 1999-03-10 Martin Buchholz <martin@xemacs.org>
4322 * file-coding.c (Fset_ucs_char): add CHECK_INT, CHECK_CHAR
4326 (decode_coding_ucs4):
4327 (encode_coding_ucs4):
4328 (detect_coding_utf8):
4329 (decode_coding_utf8):
4331 (encode_coding_utf8):
4332 Add CHECK_* macros where needed to avoid crashes.
4333 #ifdef out all composite character support using
4334 #ifdef ENABLE_COMPOSITE_CHARS
4335 Use normal XEmacs coding standards.
4337 Remove CODING_STREAM_COMPOSE, CODING_STREAM_DECOMPOSE.
4339 1998-09-08 MORIOKA Tomohiko <morioka@jaist.ac.jp>
4341 * file-coding.c (make-coding-system): Add description about
4342 `ucs-4' and `utf-8'.
4343 (detection_state): Modify to implement ucs-4 and utf-8.
4344 (detect_coding_type): Likewise.
4345 (detect_coding_ucs4): New implementation.
4346 (detect_coding_utf8): New implementation.
4347 (encode_utf8): fixed.
4348 (syms_of_mule_coding): Rename `ucs4' and `utf8' to `ucs-4' and
4351 1998-09-08 MORIOKA Tomohiko <morioka@jaist.ac.jp>
4353 * file-coding.c (mule_char_to_ucs4): Encode 94x94 chars in ISO
4354 2022 registry to private area.
4356 1998-09-07 MORIOKA Tomohiko <morioka@jaist.ac.jp>
4358 * file-coding.c (encode_utf8): New function.
4359 (encode_coding_utf8): New implementation.
4361 1998-09-07 MORIOKA Tomohiko <morioka@jaist.ac.jp>
4363 * file-coding.c (ucs_to_mule_table): New variable; abolish
4364 `Vucs_to_mule_table'
4365 (mule_to_ucs_table): renamed from `Vmule_to_ucs_table'.
4366 (set-ucs-char): New function.
4367 (ucs_to_char): New function.
4368 (ucs-char): New function.
4369 (set-char-ucs): New function.
4370 (char-ucs): New function.
4371 (decode_ucs4): Use `ucs_to_char'.
4372 (complex_vars_of_mule_coding): Abolish `ucs-to-mule-table' and
4373 `mule-to-ucs-table'.
4375 1998-09-06 MORIOKA Tomohiko <morioka@jaist.ac.jp>
4377 * chartab.h: EXFUN `Fget_char_table'.
4379 * file-coding.c (encode_ucs4): New function.
4380 (encode_coding_ucs4): Use `encode_ucs4'.
4382 1998-09-06 MORIOKA Tomohiko <morioka@jaist.ac.jp>
4384 * file-coding.c (decode_coding_ucs4): New implementation.
4386 1998-09-06 MORIOKA Tomohiko <morioka@jaist.ac.jp>
4388 * file-coding.c (decode_coding_ucs4): fixed.
4390 * file-coding.c (Vmule_to_ucs_table): New variable.
4391 (mule_char_to_ucs4): New function.
4392 (encode_coding_ucs4): New implementation.
4393 (complex_vars_of_mule_coding): Define variable
4394 `mule-to-ucs-table'.
4396 1998-09-06 MORIOKA Tomohiko <morioka@jaist.ac.jp>
4398 * file-coding.c (decode_coding_utf8): New implementation.
4400 1998-09-06 MORIOKA Tomohiko <morioka@jaist.ac.jp>
4402 * file-coding.c (decode_coding_utf8): fixed.
4404 1998-09-06 MORIOKA Tomohiko <morioka@jaist.ac.jp>
4406 * file-coding.c (Vucs_to_mule_table): New variable.
4407 (decode_ucs4): Refer `Vucs_to_mule_table'.
4408 (complex_vars_of_mule_coding): Define variable
4409 `ucs-to-mule-table'.
4411 1998-09-04 MORIOKA Tomohiko <morioka@jaist.ac.jp>
4413 * file-coding.c (detect_coding_ucs4): New function (not
4415 (decode_coding_ucs4): New function.
4416 (encode_coding_ucs4): New function (not implemented yet).
4417 (detect_coding_utf8): New function (not implemented yet).
4418 (decode_coding_utf8): New function.
4419 (encode_coding_utf8): New function (not implemented yet).
4420 (make-coding-system): New type `ucs4' and `utf8'.
4421 (coding-system-type): Likewise.
4422 (detection_state): Add `ucs4' and `utf8'.
4423 (detect_coding_type): Likewise.
4424 (mule_decode): Use `decode_coding_ucs4' and `decode_coding_utf8'.
4425 (mule_encode): Use `encode_coding_ucs4' and `encode_coding_utf8'.
4426 (decode_ucs4): New function (very incomplete).
4427 (syms_of_mule_coding): Add `ucs4' and `utf8'.
4429 * file-coding.h: Add definitions for UCS-4 and UTF-8.
4431 1999-03-08 Martin Buchholz <martin@xemacs.org>
4434 (non_ascii_valid_char_p):
4435 (lookup_composite_char):
4436 (composite_char_string):
4437 (make-composite-char):
4438 (composite-char-string):
4439 (syms_of_mule_charset):
4440 (complex_vars_of_mule_charset):
4441 * mule-charset.h (LEADING_BYTE_COMPOSITE):
4442 (CHAR_LEADING_BYTE):
4444 * file-coding.h (CODING_STATE_COMPOSITE):
4445 (CODING_STATE_ISO2022_LOCK):
4447 (LEADING_BYTE_COMPOSITE):
4448 * file-coding.c (struct iso2022_decoder):
4451 (parse_iso2022_esc):
4452 (encode_coding_iso2022):
4453 #ifdef out all composite character support using
4454 #ifdef ENABLE_COMPOSITE_CHARS
4456 * alloc.c: Define lrecord_coding_system only if ! FILE_CODING
4458 1999-03-04 Takeshi YAMADA <yamada@cslab.kecl.ntt.co.jp>
4460 * fns.c (Fbase64_encode_string): Calculate `allength' in the same
4461 way of `Fbase64_encode_region'.
4463 1999-02-18 Katsumi Yamaoka <yamaoka@jpl.org>
4465 * fns.c (base64_encode_1): Don't add a newline at the tail.
4467 1999-03-08 Andy Piper <andy@xemacs.org>
4469 * menubar-msw.c (displayable_menu_item): correct off-by-one &
4472 1999-03-07 Martin Buchholz <martin@xemacs.org>
4474 * console-stream.h (struct stream_console):
4475 * event-unixoid.c (event_stream_unixoid_select_console):
4476 (event_stream_unixoid_unselect_console):
4477 * print.c (Fexternal_debugging_output):
4478 * sysdep.c (reset_one_device):
4479 * console-stream.c (stream_init_console):
4480 (stream_delete_console):
4481 (allocate_stream_console_struct): move into stream_init_console.
4482 (free_stream_console_struct): move into stream_delete_console.
4483 Use `fd' only for file descriptors.
4484 Therefore, rename members of struct stream_console.
4486 * systime.h: Unix98 says sys/time.h should define select(), but
4487 some systems define that in unistd.h. So include that file always.
4489 * glyphs.h (MAYBE_IIFORMAT_METH): Don't use leading `_'. Avoid
4490 multiple evaluation of first arg. Do proper do {} while (0) wrapping.
4491 (HAS_IIFORMAT_METH_P): Prevent macro from being used in
4493 (MAYBE_IIFORMAT_DEVMETH): Use standard internal macro naming convention.
4497 Add #include <stdio.h>.
4498 Some versions of assert.h use printf() without #include'ing stdio.h
4500 * free-hook.c (blocktype): Add gcpro5_type to blocktype.
4501 (log_gcpro): Remove unused variable FRAME.
4502 (show_gcprohist): Ansify.
4503 Comment the #endif's
4505 * frame-x.c (x_delete_frame): Don't use FRAME_X_SHELL_WIDGET(f)
4506 after it's just been XtDestroy'ed!
4508 1999-02-18 Martin Buchholz <martin@xemacs.org>
4510 * opaque.c (print_opaque):
4514 Egcs 1.1.1 seems to have a bug where
4515 INTP (p->size_or_chain)
4516 will crash XEmacs. Fix by introducing intermediate variable.
4518 * sound.c (Fdevice_sound_enabled_p): Fix compiler warning.
4520 * dired.c (Fdirectory_files):
4521 (Ffile_name_completion):
4522 (Ffile_name_all_completions):
4523 (file_name_completion):
4524 - Use `directory' instead of `dirname' to sync with FSF Emacs and
4525 avoid compiler warnings.
4526 - Fix up docstrings so that C variables match documentation.
4528 1999-03-05 Martin Buchholz <martin@xemacs.org>
4530 * alloc.c: (garbage_collect_1): Reorg code to make scope of local
4531 variables as small as possible to help out the compiler and the maintainer.
4533 * alloc.c: (disksave_object_finalization):
4534 Set all the *-load-path variables to
4535 nil, not just load-path itself. This gets the locate-file hash
4536 tables garbage collected BEFORE dump, and has the side effect of
4537 preventing crashes on OSF4.0+egcs.
4542 - Clean up gdb/dbx debugging support.
4543 - Storing an EMACS_INT in an enum is not 64-bit clean!
4544 - So change the enum to a set of separate variables.
4545 - Add test cases to help debug the debugging support!
4546 - Add `lisp-shadows' and `run-temacs' targets for dbx.
4547 - Both dbx and gdb have been tested now.
4549 1999-03-05 XEmacs Build Bot <builds@cvs.xemacs.org>
4551 * XEmacs 21.2.12 is released
4553 1999-02-16 Kazuyuki IENAGA <ienaga@jsys.co.jp>
4555 * device-x.c: Support to find best visual without flashing.
4557 1999-03-02 Paul Keusemann <pkeusem@visi.com>
4559 * database.c (berkdb_map): Add flags argument to cursor call (must
4560 be 0 according to docs) required for Berkeley DB 2.6.4 and later.
4562 1999-03-03 Martin Buchholz <martin@xemacs.org>
4566 General cleanup. Get free-hook.c working again.
4567 Remove unused functions:
4568 make_strings_hash_table, copy_hash, expand_hash_table.
4572 Always use new ANSI-style function prototypes.
4574 * unexalpha.c (unexec): Never use implicit int.
4576 * sgiplay.c (close_sound_file):
4578 (restore_audio_port):
4583 (write_mulaw_8_chunk):
4584 (write_linear_chunk):
4585 (write_linear_32_chunk):
4586 (initialize_audio_port):
4589 (set_output_format):
4590 (adjust_audio_volume):
4591 (get_current_volumes):
4593 Always use new ANSI-style function prototypes.
4594 Use unistd.h for missing prototypes.
4596 * unexelfsgi.c (round_up):
4598 (unexec): Always use new ANSI-style function prototypes
4600 * elhash.c (struct Lisp_Hash_Table): rename golden to golden_ratio
4602 * console.h (struct console_methods): Always use full ANSI prototypes
4604 * emacs.c (__sti__iflPNGFile_c___): Always use full ANSI prototypes
4606 1999-03-02 Andy Piper <andy@xemacs.org>
4608 * event-stream.c (init_event_stream): make sure native mswindows
4609 gets an appropriate event loop.
4611 1999-02-22 Andy Piper <andy@xemacs.org>
4613 * frame-msw.c (mswindows_make_frame_visible): use SW_SHOW rather
4614 than SW_SHOWNORMAL to prevent resizing of maximised frames.
4615 (mswindows_raise_frame): remove comment.
4617 1999-03-01 XEmacs Build Bot <builds@cvs.xemacs.org>
4619 * XEmacs 21.2.11 is released
4621 1999-02-25 SL Baur <steve@xemacs.org>
4623 * mule-charset.c (Qleading_byte): New variable to implement
4624 charset-leading-byte function.
4625 (Fcharset_property): Use it.
4626 (syms_of_mule_charset): Initialize it.
4627 From Kazuyuki IENAGA <ienaga@jsys.co.jp>
4629 1999-02-17 Kazuo Oishi <oishi@ae.agr.yamaguchi-u.ac.jp>
4631 * glyphs-x.c (cononvert_EImage_to_XImage): correct
4632 bytes per pixel counting.
4634 1999-02-15 Andy Piper <andy@xemacs.org>
4636 * s/cygwin32.h (BROKEN_SIGIO): don't define this as it causes
4639 1999-02-16 MORIOKA Tomohiko <morioka@jaist.ac.jp>
4641 * fns.c (Fbase64_encode_string): New optional argument
4644 1999-02-16 Martin Buchholz <martin@xemacs.org>
4646 * gdbinit: Fix up commands to run temacs. Add lisp-shadows command.
4647 * alloc.c (xcalloc): undef xcalloc, just like xmalloc
4649 1999-02-10 Martin Buchholz <martin@xemacs.org>
4651 * s/bsdos4.h: New file. Port to BSDI BSD/OS 4.0.
4652 * xintrinsic.h: Redo CONST support for X11 R4 compatibility.
4654 1999-02-05 XEmacs Build Bot <builds@cvs.xemacs.org>
4656 * XEmacs 21.2.10 is released
4658 1999-02-02 Gleb Arshinov <gleb@cs.stanford.edu>
4660 * process-nt.c (nt_send_process):
4661 Fix for process-send-region/process-send-string breaking when size
4662 of the input > 128 chars: change maximum chunk size for process
4663 stream from 512 to 128, thus guaranteeing that ntpipe_shove_writer
4666 1999-02-02 XEmacs Build Bot <builds@cvs.xemacs.org>
4668 * XEmacs 21.2.9 is released
4670 1999-01-30 Martin Buchholz <martin@xemacs.org>
4672 * bytecode.c (funcall_compiled_function): Call
4673 UNBIND_TO_GCPRO instead of UNBIND_TO_GCPRO_VARIABLES_ONLY.
4675 * backtrace.h (UNBIND_TO_GCPRO_VARIABLES_ONLY):
4676 #ifdef 0 out unused macro.
4678 1999-01-27 Martin Buchholz <martin@xemacs.org>
4680 * gui.c (gui_parse_item_keywords_internal): Make static.
4682 1999-01-21 Andy Piper <andy@xemacs.org>
4684 * glyphs-msw.c: add xface support.
4685 (mswindows_xface_instantiate): new function copied from glyphs-x.c
4686 (image_instantiator_format_create_glyphs_mswindows): do device
4687 specific initialisation for xfaces.
4688 (xbm_create_bitmap_from_data): line data must be padded to a word
4691 * glyphs-x.c (xface_validate): moved to glyphs.c
4692 (xface_normalize): ditto.
4693 (xface_possible_dest_types): ditto.
4694 (image_instantiator_format_create_glyphs_x): do device specific
4695 initialisation for xfaces.
4697 * glyphs.h: declare xface symbol.
4699 * glyphs.c: move generic xface support here.
4700 (xface_validate): moved from glyphs-x.c
4701 (xface_normalize): ditto.
4702 (xface_possible_dest_types): ditto.
4703 (image_instantiator_format_create): xface declarations moved from
4706 1999-01-14 Adrian Aichner <adrian@xemacs.org>
4708 * event-stream.c (vars_of_event_stream): Fixing documentation.
4710 1999-01-17 Gunnar Evermann <ge204@eng.cam.ac.uk>
4712 * glyphs-eimage.c (gif_instantiate): Correct handling of
4713 interlaced gifs to avoid writing past the end of the eimage
4716 1999-01-13 Hrvoje Niksic <hniksic@srce.hr>
4718 * search.c (Freplace_match): Handle single backslash at end of
4721 1999-01-12 William M. Perry <wmperry@aventail.com>
4723 * eldap.c (Fldap_open): slow down interrupts around ldap_open to
4724 avoid connection errors.
4726 1999-01-12 Andy Piper <andy@xemacs.org>
4728 * redisplay-output.c (redisplay_update_line): backout change that
4729 shouldn't have gone ine.
4731 1999-01-09 Oscar Figueiredo <Oscar.Figueiredo@di.epfl.ch>
4733 * eldap.c (vars_of_ldap): Do no provide `ldap' here since it may
4734 collide with ldap.el
4736 1999-01-11 Andy Piper <andy@xemacs.org>
4738 * redisplay.h (DISPLAY_LINE_HEIGHT): new macro.
4739 (DISPLAY_LINE_YPOS): new macro.
4741 * redisplay-msw.c (mswindows_output_string): use it.
4742 (mswindows_output_pixmap): ditto.
4743 (mswindows_output_display_block): ditto.
4745 * redisplay-output.c (redisplay_output_display_block): new
4746 function. just call the devmeth, maybe insert some generic code
4748 (compare_display_blocks): use it.
4749 (output_display_line): ditto.
4750 (redisplay_unmap_subwindows_maybe): new function. potentially
4751 unmap subwindows in the given area.
4753 * glyphs.c (reset_subwindow_cachels): unmap subwindows that we are
4756 1999-01-10 J. Kean Johnston <jkj@sco.com>
4758 * Makefile.in.in: Set value of moduledir
4759 - Changed DUMPENV to include $(MODULEPATH)
4760 - Added install rule to install header files for use by ellcc.
4762 * config.h.in: Added INHIBIT_SITE_MODULES
4763 - Added HAVE__DLERROR
4764 - Added HAVE_DLFCN_H
4765 - Added DLSYM_NEEDS_UNDERSCORE
4769 * emodules.c: New file containing dynamic loading code.
4771 * emodules.h: New file.
4773 * emacs.c: Added variables Vmodule_directory,
4774 Vsite_module_directory, Vconfigure_module_directory and
4775 Vconfigure_site_module_directory.
4776 - (main_1): Added new variable inhibit_site_modules and command
4777 line options `-no-site-modules' and `--no-site-modules'.
4778 - (main_1): Call syms_of_module() instead of syms_of_dll().
4779 - (main_1): Call vars_of_module().
4780 - (vars_of_emacs): Introduce inhibit-site-modules,
4781 module-directory, configure-module-directory,
4782 site-module-directory, and configure-site-module-directory to the
4785 * lisp.h: Declare load_module and list_modules, as well as
4786 Vmodule_directory, Vsite_module_directory,
4787 Vconfigure_module_directory and Vconfigure_site_module_directory.
4789 * paths.h.in: Added PATH_MODULESEARCH and PATH_SITE_MODULES.
4790 - Added correct support for site-lisp directory.
4792 * symbols.c (defsubr): Modified to allow modules to add new subrs
4794 - (defsubr_macro): Same.
4795 - (defvar_magick): Only use purespace when not initialized, so
4796 that loaded modules can still add symbols.
4798 * symsinit.h: Add definitions for syms_of_module(),
4799 vars_of_module(). Removed syms_of_dll().
4801 * sysdll.c: Include dlfcn.h if HAVE_DLFCN_H is defined.
4802 - (dll_variable): Take DLSYM_NEEDS_UNDERSCORE into account.
4803 - (dll_error): use _dlerror() if HAVE__DLERROR is defined.
4805 * s/sco5-shr.h (C_SWITCH_SYSTEM): Correct for modern gcc and
4806 explicitly pass -belf for native cc.
4808 * s/sco5.h (LIB_GCC): Use -print-libgcc-file-name instead of
4809 hard-coding the library name.
4811 1999-01-01 <martin@xemacs.org>
4813 * device-x.c (Fx_set_font_path):
4814 Add proper cast to permit compilation under C++.
4816 * buffer.c (directory_is_current_directory):
4817 Add proper casts to permit compilation under C++.
4819 1998-12-30 Damon Lipparelli <lipp@primus.com>
4821 * event-msw.c (mswindows_wnd_proc):
4822 Fixed failure when building with MSVC 5.
4824 1998-12-29 Martin Buchholz <martin@xemacs.org>
4826 * file-coding.c (decode_coding_iso2022):
4827 - Prevent crash when decoding ISO7/Lock detected files
4828 - the usual martin fiddling
4830 1998-12-29 Jonathan Harris <jhar@tardis.ed.ac.uk>
4834 Fixed failures when building with MSVC.
4835 * unexnt.c (dump_bss_and_heap):
4836 Removed compiler warning by removing bss_data variable.
4838 1998-12-18 Jim Radford <radford@robby.caltech.edu>
4840 * device-x.c (Fx_set_font_path, Fx_get_font_path): New functions
4841 so that packages that distribute their own fonts can access them.
4843 1998-12-28 Andy Piper <andy@xemacs.org>
4845 * glyphs-msw.c (mswindows_button_instantiate): cope with buttons
4846 that have an image provided.
4848 * glyphs.h: add Q_image decl.
4850 * glyphs-widget.c new functionality allowing images in
4852 (check_valid_glyph_or_image): new function to validate
4853 glyphs passed in through :image.
4854 (widget_normalize): new function. convert :image parameters into
4855 real glyphs if not already so.
4856 (widget_instantiate_1): mess with size parameters to be similar to
4858 (syms_of_glyphs_widget): new keyword :image.
4859 (image_instantiator_format_create_glyphs_widget): normalize
4860 buttons and allow :image.
4862 1998-12-27 Andy Piper <andy@xemacs.org>
4864 * frame-msw.c (mswindows_init_frame_1): warning elimination.
4866 * glyphs-widget.c (check_valid_anything): no-op function.
4867 (check_valid_callback): check callbacks in gui_items.
4868 (check_valid_symbol): as it sounds.
4869 (check_valid_string_or_vector): ditto.
4870 (widget_validate): modified for descriptors that are vectors or
4871 sequences of keyword/val pairs.
4872 (widget_instantiate_1): ditto.
4873 (image_instantiator_format_create_glyphs_widget): allow gui_item
4874 keywords in the instantiator.
4876 * gui.c (gui_parse_item_keywords_internal): renamed from
4877 gui_parse_item_keywords but taking error behaviour.
4878 (gui_parse_item_keywords): use it.
4879 (gui_parse_item_keywords_no_errors): ditto.
4880 (gui_item_add_keyval_pair): add Error_behavior flag and only
4881 signal invalid keywords if required.
4883 * gui.h: new gui signatures.
4885 * menubar.c (menu_parse_submenu_keywords): use new
4886 gui_item_add_keyval_pair signature.
4888 * s/cygwin32.h: modify PTY_ITERATION to eliminate warnings.
4890 1998-12-28 Martin Buchholz <martin@xemacs.org>
4892 * XEmacs 21.2.8 is released.
4894 1998-12-28 Martin Buchholz <martin@xemacs.org>
4896 * editfns.c (get_home_directory):
4897 (user-home-directory): Simplify.
4900 * callproc.c (child_setup):
4901 - Environment variables were being passed to inferior processes
4902 using internal encoding.
4903 - Convert to external encoding.
4904 - Rename local var `tem' to better name `tail'.
4905 - Use Flength instead of `manual' calculation.
4907 * buffer.c (kill-buffer):
4909 (set-buffer-major-mode):
4911 - Fix up parameter names to correspond to docstrings.
4912 - Don't use `bufname' when a buffer will do as well.
4913 - Remove one unneeded GCPRO.
4915 * buffer.h (initial_directory):
4916 * buffer.c (init_initial_directory):
4917 - use correct conversions between internal and external format.
4918 (directory_is_current_directory): new function
4919 (init_buffer): convert initial_directory to internal format.
4920 - solve crashes when current working directory is non-ASCII.
4922 * alloc.c (xmalloc):
4925 - remove stupid casts, since XEmacs requires an ANSI C system.
4926 (lrecord_type_index): replace abort() with more readable assert().
4928 (reset_lcrecord_stats): remove.
4929 (sweep_lcrecords_1):
4930 - replace call to reset_lcrecord_stats() with call to xzero().
4932 1998-12-27 Martin Buchholz <martin@xemacs.org>
4934 * process-unix.c (unix_create_process):
4935 - Fix crash invoking program with non-ASCII name.
4936 Try invoking xemacs with SHELL=/bin/sh, then M-x shell.
4937 - Remove unused variable `env'.
4938 - Rename `temp' to better name `save_errno'.
4939 - Reorganize code for clarity. But still too chicken to nuke the
4942 1998-12-24 Martin Buchholz <martin@xemacs.org>
4944 * XEmacs 21.2.7 is released.
4946 1998-12-23 Martin Buchholz <martin@xemacs.org>
4948 * glyphs.c (decode_device_ii_format):
4950 - Use GET_C_STRING_FILENAME_DATA_ALLOCA with char *, not Extbyte *.
4952 * glyphs-x.c (x_subwindow_instantiate):
4953 - A image instance mask was being assigned to a image instance type!
4954 - X_SUBWINDOW_INSTANCE_DATA (ii) is not an lvalue in C++.
4956 * glyphs-msw.c (mswindows_initialize_dibitmap_image_instance):
4958 * glyphs-x.h: Make indentation consistent.
4960 * emacs.c (Fdump_emacs): Remove Steve Martin merge artifacts.
4962 * glyphs-widget.c (check_valid_glyph): Warning suppression.
4964 - #ifdef it out, since it's not actually used yet (FIX THIS!)
4968 Move declarations of decode_device_ii_format and
4969 decode_image_instantiator_format into glyphs.h where they belong.
4971 1998-12-22 Martin Buchholz <martin@xemacs.org>
4973 * frame-x.c (x_delete_frame): Revert part of my changes at the
4974 suggestion of Gunnar Evermann - unfortunately no one really
4975 understands this code.
4977 * callproc.c (init_callproc): code cleanup.
4979 * free-hook.c (malloc):
4984 (block_input_malloc):
4985 (block_input_realloc):
4986 * device-x.c (x_delete_device):
4987 * emacs.c (voodoo_free_hook):
4988 * events.c (print_event):
4990 (CHECK_EVENT_TYPE2):
4991 (CHECK_EVENT_TYPE3):
4992 Use proper prototypes.
4993 Make C_E_T macros a little faster.
4994 Pedantic fiddly little changes. You really don't care.
4996 1998-12-22 Andy Piper <andy@xemacs.org>
4998 * redisplay-output.c (redisplay_clear_region): make sure that
4999 fg/bg colors get set even when we are in the border area.
5001 1998-12-13 Martin Buchholz <martin@xemacs.org>
5003 * console-msw.c: Function definitions follow coding standards
5004 - This prevents e.g. find-tag on Lisp_Event finding DEVENT
5006 1998-12-11 Martin Buchholz <martin@xemacs.org>
5008 * events.h (struct timeout_data):
5009 * event-tty.c (tty_timeout_to_emacs_event):
5010 * event-msw.c (mswindows_wm_timer_callback):
5011 * event-Xt.c (Xt_timeout_to_emacs_event):
5012 * event-msw.c (mswindows_cancel_dispatch_event):
5013 Make sure Lisp_Objects inside events are initialized to Qnil, not
5014 Qnull_pointer, which is now illegal.
5016 1998-12-10 Martin Buchholz <martin@xemacs.org>
5018 * lisp.h: Fix up prototypes to match alloc.c
5020 1998-12-08 Martin Buchholz <martin@xemacs.org>
5022 * windowsnt.h: Remove `support' for using index and rindex
5024 * filelock.c (current_lock_owner):
5025 - Change uses of index -> strchr, rindex -> strrchr
5027 1998-12-07 Martin Buchholz <martin@xemacs.org>
5029 * sysdep.c (set_descriptor_non_blocking):
5030 Since O_NONBLOCK is now always #defined, make use of fcntl
5031 conditional on F_SETFL being defined.
5033 * console-msw.c (DHEADgER):
5042 - max_align_t should not be visible to the user of the
5044 - use Bufbyte instead of char
5045 - parens around (FOOP (obj)) are always redundant.
5046 If they were necessary, we should fix the macro instead.
5047 - Always use string_data(foo) instead of foo->data.
5050 1998-12-06 Martin Buchholz <martin@xemacs.org>
5052 * frame-msw.c (mswindows_init_frame_1):
5053 - use make_lisp_hash_table, not Fmake_hash_table
5057 * alloc.c (make_vector): remove travesty
5061 (make_bit_vector_internal):
5063 (make_bit_vector_from_byte_vector):
5065 - make vector_equal a little faster.
5066 - Don't use variable name `new'.
5067 - Use size_t instead of EMACS_INT.
5068 - usual Martin-style pointless bit-twiddling.
5074 Make mapcar faster. In particular, make
5075 (mapc #'identity long-string)
5076 MUCH faster under Mule.
5077 * tests/automated/lisp-tests.el: Test 'em!
5079 * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
5082 1998-12-01 Martin Buchholz <martin@xemacs.org>
5084 * menubar-x.c (menu_item_descriptor_to_widget_value_1): Always use
5085 Qnil, not NULL, to initialize `null' Lisp_Objects.
5087 1998-11-29 Hrvoje Niksic <hniksic@srce.hr>
5089 * specifier.c (display_table_validate): Update.
5091 * redisplay.c (create_text_block): Use them.
5093 * glyphs.c (display_table_entry): New function.
5094 (get_display_tables): Ditto.
5096 1998-12-15 Oscar Figueiredo <Oscar.Figueiredo@di.epfl.ch>
5098 * eldap.c (toplevel): Mention that eldap.c compiles with
5100 (Fldap_open): Use `GET_C_STRING_OS_DATA_ALLOCA'
5101 (Fldap_search_internal): Ditto
5103 1998-12-11 Martin Buchholz <martin@xemacs.org>
5105 * event-msw.c (mswindows_cancel_dispatch_event):
5106 Gratuitous code prettification
5109 1998-12-07 Hrvoje Niksic <hniksic@srce.hr>
5111 * fns.c (Fnconc): Fix use of wrong_type_argument().
5113 * floatfns.c (Ffloat): Fix docstring.
5114 (Ffloat): Fix use of wrong_type_argument().
5116 (extract_float): Ditto.
5121 1998-12-06 Martin Buchholz <martin@xemacs.org>
5123 * frame-msw.c (mswindows_init_frame_1):
5124 - use make_lisp_hash_table, not Fmake_hash_table
5128 * alloc.c (make_vector): remove travesty
5132 (make_bit_vector_internal):
5134 (make_bit_vector_from_byte_vector):
5136 - make vector_equal a little faster.
5137 - Don't use variable name `new'.
5138 - Use size_t instead of EMACS_INT.
5139 - usual Martin-style pointless bit-twiddling.
5145 Make mapcar faster. In particular, make
5146 (mapc #'identity long-string)
5147 MUCH faster under Mule.
5148 * tests/automated/lisp-tests.el: Test 'em!
5150 * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
5153 1998-12-02 Didier Verna <didier@xemacs.org>
5155 * menubar-x.c (menu_item_descriptor_to_widget_value_1): set the
5156 accelerator field to nil for labels.
5158 1998-12-16 Jonathan Harris <jhar@tardis.ed.ac.uk>
5160 * menubar-msw.c (displayable_menu_item):
5161 Escape occurrences of '&' and support occurrences of the
5162 '%_' accelerator indicator in menus.
5164 1998-11-26 Didier Verna <didier@xemacs.org>
5166 * dired.c (Fdirectory_files): use make_string instead of
5167 make_ext_string on the filename. The conversion external->internal
5168 format is already done in sys_readdir.
5170 1998-12-15 Gunnar Evermann <ge204@eng.cam.ac.uk>
5172 * glyphs.c (normalize_image_instantiator): GCPRO instantiator
5174 1998-12-16 Jonathan Harris <jhar@tardis.ed.ac.uk>
5177 (Belatedly) added Kirill to list of file's authors.
5178 emacs_mswindows_quit_p: Don't process WM_PAINT messages in
5179 quit checking. WM_PAINT messages cause redisplay, but
5180 windows' states are not necessarily stable when this function
5183 1998-12-17 Andy Piper <andy@xemacs.org>
5185 * strftime.c (zone_name): CONSTify.
5187 1998-12-15 Andy Piper <andy@xemacs.org>
5189 * glyphs-msw.c (mswindows_combo_instantiate): ditto.
5190 (mswindows_widget_property): return Qunbound when no property available.
5191 (mswindows_button_property): ditto.
5192 (mswindows_combo_property): ditto.
5193 (mswindows_widget_set_property): ditto.
5195 * glyphs-widget.c (check_valid_item_list): use properties.
5197 * glyphs.h (struct Lisp_Image_Instance): we have properties now.
5199 * glyphs.c (Fset_image_instance_property): allow setting of arbitrary properties.
5200 (Fimage_instance_property): ditto.
5201 * glyphs-widget.c (widget_property): ditto.
5202 (widget_set_property): ditto.
5204 * frame-msw.c (mswindows_set_frame_pointer): SetCursor() as well
5205 as setting the class cursor so that GC actually changes the
5208 * config.h: don't undef MAIL_USE_POP.
5210 1998-12-13 Andy Piper <andy@xemacs.org>
5213 (image_instantiator_format_create_glyphs_mswindows): line ->
5215 (mswindows_label_instantiate): ditto. Play with window flags.
5216 (image_instantiator_format_create_glyphs_mswindows): ditto.
5217 (vars_of_glyphs_mswindows): provide Qlabel as we support it now.
5219 * glyphs-widget.c (widget_instantiate_1): re-jig autosizing to
5220 cope with lines and labels.
5221 (static_instantiate): use widget_instantiate_1.
5223 (image_instantiator_format_create_glyphs_widget): ditto.
5225 1998-12-10 Andy Piper <andy@xemacs.org>
5227 * Makefile.in.in (objs): add gui.o
5229 1998-12-10 Andy Piper <andy@xemacs.org>
5231 * gui.c: adjust defines of HAVE_POPUPS so that we can build with
5234 1998-12-09 Andy Piper <andy@xemacs.org>
5236 * glyphs.c (finalize_image_instance): mark glyphs changed when an
5237 image instance is removed so that the subwindow cache gets reset
5238 and thus destroyed images get GC'd.
5240 1998-12-08 Andy Piper <andy@xemacs.org>
5242 * gui-msw.c (mswindows_handle_gui_wm_command): call
5243 MARK_SUBWINDOWS_CHANGED.
5245 * glyphs-msw.c (mswindows_finalize_image_instance): make sure
5246 subwindows really get deleted.
5248 * redisplay.c: new variable subwindows_changed[_set].
5249 (redisplay_window): use it.
5250 (redisplay_frame): ditto.
5251 (redisplay_device): ditto.
5252 (redisplay_without_hooks): ditto.
5254 * device.h (MARK_DEVICE_SUBWINDOWS_CHANGED): new macro for
5255 subwindows redisplay as per glyphs equivalent.
5256 * redisplay.h: ditto.
5257 (MARK_SUBWINDOWS_CHANGED): ditto.
5258 (RESET_CHANGED_SET_FLAGS): ditto.
5259 * frame.h (MARK_FRAME_SUBWINDOWS_CHANGED): ditto.
5261 1998-12-07 Andy Piper <andy@xemacs.org>
5263 * frame.c (Fmake_frame): reset subwindow cachels on non-stream
5266 * redisplay.c (redisplay_frame): invalidate subwindow cachels.
5268 * event-msw.c (mswindows_wnd_proc): catch the various WM_CTLCOLOR*
5269 messages and paint widget glyphs as appropriate with their face fg
5272 1998-12-06 Andy Piper <andy@xemacs.org>
5274 * glyphs-msw.c (vars_of_glyphs_mswindows): provide widget types
5275 here rather than in glyphs-widget - do this because we only want
5276 to provide what is really available.
5278 * glyphs.c (Fimage_instance_property): new function to get the
5279 properties of image instances. wires through to console specific
5280 methods and then to widget specific methods.
5281 (Fset_image_instance_property): ditto but for setting widget properties.
5282 (check_valid_face): make extern so that it can be used elsewhere.
5284 * glyphs-widget.c (widget_property): new function. gets the
5285 properties of widgets in general and wires the function through to
5286 widget specific ones.
5287 (widget_set_property): ditto but for setting widget properties.
5289 * glyphs-msw.c (mswindows_combo_instantiate): Add functionality to
5290 add items to the list. Play with window styles a bit to get the
5292 (mswindows_widget_property): break out specific widget properties.
5293 (mswindows_button_property): new function. gets the checked state
5295 (mswindows_combo_property): new function. gets the current
5296 selection in the combo box.
5297 (mswindows_widget_set_property): new function. sets specific
5298 properties of specific widgets.
5300 * glyphs-widget.c (check_valid_item_list): new function. check
5301 that items for a combo-box are just a list of strings.
5302 (combo_validate): new function. check there is an item list.
5303 (widget_instantiate_1): new function. renamed from
5304 widget_instantiate so that we can do slightly different things for
5306 (widget_instantiate): call widget_instantiate_1.
5307 (combo_instantiate): new function to instantiate combo boxes,
5308 defaults height to the pixel height of the number of items in the
5310 (syms_of_glyphs_widget): move widget keywords here.
5311 (image_instantiator_format_create_glyphs_widget): use new combo
5314 1998-12-04 Andy Piper <andy@xemacs.org>
5316 * event-msw.c (mswindows_wnd_proc): mule-ize.
5318 * glyphs.c (pixmap_to_lisp_data): mule-ize.
5320 * glyphs-msw.c (extract_xpm_color_names): mule-ize.
5321 (resource_name_to_resource): ditto.
5322 (mswindows_resource_instantiate): ditto.
5323 (mswindows_widget_instantiate): ditto.
5324 (mswindows_widget_set_property): ditto.
5326 * redisplay-output.c (redisplay_output_subwindow): don't show
5327 subwindows if they are obscured at the edge of the frame, emacs
5328 gets into some sort of redisplay loop otherwise.
5330 * gui.h: prototype gui_item_selected_p.
5332 * gui.c (gui_item_selected_p): new function to determine the
5333 selected state of a gui_item.
5335 * frame.h (struct frame): add subwindows_changed flag.
5337 * redisplay.c (redisplay_frame): call update_frame_subwindows ().
5339 * glyphs.c (update_subwindow): new function to update a
5341 (update_frame_subwindows): new function to update all the
5342 subwindows on a frame.
5344 * console.h (struct console_methods): add update_subwindow.
5346 * glyphs-msw.c (mswindows_widget_property): return selected state
5347 for selected property.
5348 (mswindows_update_subwindow): new function. updates widget glyphs
5349 in redisplay as per menubars or toolbars e.g. selected state.
5350 (console_type_create_glyphs_mswindows): add update_subwindow.
5352 1998-12-03 Andy Piper <andy@xemacs.org>
5354 * console-tty.c (syms_of_console_tty): MULE -> FILE_CODING since
5355 tty coding system things are such.
5357 * glyphs-widget.c (widget_face_font_info): new function for
5358 pulling out height and width metrics for a widget's face.
5359 (widget_text_to_pixel_conversion): calculate pixel sizes of text
5362 * event-msw.c (mswindows_drain_windows_queue): translate messages
5363 that are destined for subwindows. This makes edit fields interact
5364 with the keyboard correctly.
5365 nuke warnings by #ifndef'ing out stuff not required by msg select().
5367 * glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM): new
5368 macro defining the iiforma without the symbol required by widget.
5369 (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT): use it.
5371 * general.c (syms_of_general): add Qwidget, Qselected.
5373 * faces.c (complex_vars_of_faces): add widget face inheriting from
5376 1998-11-09 Andy Piper <andy@xemacs.org>
5378 * window.h (struct window): add a cache of subwindows on a
5381 * window.c (mark_window): mark the subwindow_instance_cache.
5382 (allocate_window): initialise the subwindow instance_cache.
5384 * toolbar-x.c (x_output_toolbar): call redisplay_clear_region
5385 instead of the devmeth.
5386 (x_clear_toolbar): ditto.
5388 * redisplay-x.c (x_output_display_block): call
5389 redisplay_output_subwindow for subwindows and widgets.
5391 * redisplay-tty.c (tty_output_display_block): add IMAGE_WIDGET to
5392 types to do nothing for.
5394 * lisp.h: declare new widget/subwindow symbols.
5396 * glyphs.c (image_instantiate): cache subwindows on a per-window
5398 (subwindow_possible_dest_types): new function for subwindow dest
5400 (subwindow_instantiate): generic instantiation of a
5401 subwindow. specialised by device multi-methods.
5402 (Fsubwindowp): moved from glyphs-x.c. adapted for glyph-based
5404 (Fimage_instance_subwindow_id): ditto.
5405 (Fresize_subwindow): ditto.
5406 (Fforce_subwindow_map): ditto.
5408 * glyphs-x.c (x_print_image_instance): remove subwindow
5409 stuff. Handled genrically in glyphs.c.
5410 (x_image_instance_equal): ditto.
5411 (x_image_instance_hash): ditto.
5412 (x_finalize_image_instance): delete subwindows when required.
5413 (mark_subwindow) (print_subwindow) (finalize_subwindow)
5414 (subwindow_hash) (Fmake_subwindow): deleted because of new,
5415 glyph-based, subwindow implementation.
5416 (Fsubwindow_height) (Fsubwindow_width) (Fsubwindow_xid): aliased
5418 (Fsubwindowp) (Fresize_subwindow) (Fforce_subwindow_map): moved to
5420 (x_unmap_subwindow): new function to unmap X subwindows.
5421 (x_map_subwindow): new function to map X subwindows.
5422 (x_subwindow_instantiate): new function to instantiate X
5424 (x_resize_subwindow): new function to resize X subwindows.
5425 (console_type_create_glyphs_x): add subwindow functions.
5426 (image_instantiator_format_create_glyphs_x): add device
5427 multi-methods for xpm, xbm and subwindow.
5429 * glyphs.el (subwindow-xid): old alias for new subwindow functions.
5430 (subwindow-width): ditto.
5431 (subwindow-height): ditto.
5433 * glyphs-msw.c (mswindows_widget_instantiate): new function for
5434 generally instantiating ms subwindows. Used by
5435 mswindows_*_instantiate.
5436 (mswindows_edit_instantiate): instantiate an edit field on a
5439 1998-11-04 Andy Piper <andy@xemacs.org>
5441 * symsinit.h: declare new functions.
5443 * redisplay.h: declare new functions.
5445 * redisplay-x.c (x_output_display_block): call
5446 redisplay_clear_region rather than x_clear_region.
5447 (x_output_string): ditto.
5448 (x_output_pixmap): ditto.
5449 (x_clear_to_window_end): ditto.
5450 (x_output_eol_cursor): ditto.
5451 (x_clear_region): only do X specific things. other duties handled
5452 in redisplay_clear_region.
5454 * redisplay-tty.c (tty_clear_region): do tty specific things - some
5455 duties moved to redisplay_clear_region.
5457 * redisplay-output.c (clear_left_border): use
5458 redisplay_clear_region instead of device method.
5459 (clear_right_border): ditto.
5460 (output_display_line): ditto.
5461 (redisplay_output_subwindow): ditto.
5462 (redisplay_clear_top_of_window): ditto.
5463 (redisplay_clear_region): perform duties previously handled by
5464 device methods. call the appropriate device method at the
5465 end. unmap subwindows if necessary.
5467 * redisplay-msw.c (mswindows_output_string): use
5468 redisplay_clear_region instead of mswindows_clear_region.
5469 (mswindows_clear_to_window_end): ditto.
5470 (mswindows_output_display_block): output subwindows when required.
5471 (mswindows_clear_region): only do mswindows specific things,
5472 everything else is now handled in redisplay_clear_region.
5474 * gui.h: add item id hash defines and declare function prototypes.
5476 * gui.c (mark_gui_item): new function for marking gui_items.
5477 (gui_item_hash): generic hash function for generating command ids
5480 * gui-msw.c: new file.
5481 (mswindows_handle_gui_wm_command): new function to handle widget
5484 * glyphs.h (MAYBE_IIFORMAT_DEVMETH): new function for device
5486 (IIFORMAT_HAS_SHARED_METHOD): ditto.
5487 (DEFINE_DEVICE_IIFORMAT): ditto.
5488 (INITIALIZE_DEVICE_IIFORMAT): ditto.
5489 (struct Lisp_Image_Instance): add widget and subwindow data plus
5490 appropriate access functions.
5492 * glyphs.c (decode_device_ii_format): new function for decoding
5493 image instantiator functions based on a device type as well as an
5495 (decode_image_instantiator_format): just call
5496 decode_device_ii_format with nil device.
5497 (add_entry_to_device_ii_format_list): new function for per device
5499 (add_entry_to_image_instantiator_format_list): just call
5500 add_entry_to_device_ii_format_list with nil device.
5501 (check_valid_vector): new function.
5502 (instantiate_image_instantiator): instantiate using per-format
5503 method and then per-format-per-device method (device
5504 multi-methods). signal an error if neither is possible.
5505 (mark_image_instance): cope with subwindows and widgets.
5506 (print_image_instance): ditto.
5507 (image_instance_equal): ditto.
5508 (image_instance_hash): ditto.
5509 (allocate_glyph): ditto.
5510 (glyph_width): ditto.
5511 (glyph_height_internal): ditto.
5512 (xpm_instantiate): removed because of device multi-methods.
5513 (mark_subwindow_cachels): new cachel functions for caching
5514 instantiated subwindows on a per-frame basis. mostly copied from
5515 glyph cachel functions.
5516 (update_subwindow_cachel_data): ditto.
5517 (add_subwindow_cachel): ditto.
5518 (get_subwindow_cachel_index): ditto.
5519 (reset_subwindow_cachels): ditto.
5520 (mark_subwindow_cachels_as_not_updated): ditto.
5521 (unmap_subwindow): generic unmapping of subwindows based on cachel
5523 (map_subwindow): ditto.
5524 (initialize_subwindow_image_instance): generic initialisation of
5526 (syms_of_glyphs): add widget keywords.
5528 * glyphs-x.h (struct x_subwindow_data): convert Lisp_Subwindow to
5531 1998-11-04 Andy Piper <andy@xemacs.org>
5533 * glyphs-widget.c: new file for instantiating widget type glyphs.
5534 (widget_possible_dest_types): new general dest type function for
5536 (widget_validate): ditto.
5537 (initialize_widget_image_instance): ditto
5538 (widget_instantiate): ditto. Sets up fg/bg, gui_item parsing
5539 before handing on control to device multi-methods.
5540 (syms_of_glyphs_widget): new function.
5541 (image_instantiator_format_create_glyphs_widget): new function,
5542 added placeholders for button, edit, combo, scrollbar
5543 (vars_of_glyphs_widget): new function.
5545 * glyphs-msw.h (WIDGET_INSTANCE_MSWINDOWS_HANDLE): new define for
5546 storing window ids of widgets.
5548 * glyphs-msw.c (mswindows_finalize_image_instance): cope with
5549 deletion of widget and subwindow glyphs.
5550 (mswindows_unmap_subwindow): new device function for unmapping
5551 subwindows on a msw frame.
5552 (mswindows_map_subwindow): ditto.
5553 (mswindows_register_image_instance): register instantiated widgets
5554 with the widget hashtable.
5555 (mswindows_button_instantiate): instantiate a button type widget
5557 (mswindows_subwindow_instantiate): instanttiate a subwindow on a
5559 (image_instantiator_format_create_glyphs_mswindows): add device
5560 multi-methods for xbm, xpm, subwindow, edit and button.
5562 * frame.h (struct frame): add subwindow_cachels dynarr for caching
5563 information about subwindows visible on the current frame. used by
5564 redisplay_clear_region to unmap subwindows as required.
5566 * frame.c (mark_frame): mark subwindow_cachels.
5567 (allocate_frame_core): instantiate subwindow_cachels.
5569 * frame-msw.c (mswindows_init_frame_1): instntiate and mark the
5572 * event-msw.c (mswindows_wnd_proc): add call to
5573 mswindows_handle_gui_wm_command to handle widget callbacks.
5575 * emacs.c (main_1): add calls to glyphs-widget initialisation
5578 * console.h (struct console_methods): add
5579 unmap/map_subwindow_method for use be redisplay_clear_region to
5580 map and unmap subwindows. Remove xpm and xbm stuff - now dealt
5581 with by image instantiator multi-methods. Add
5582 resize_subwindow_method.
5584 * console-stream.c (stream_clear_region): change signature to
5585 match new generic clear region function.
5587 * Makefile.in.in: add glyphs-widget.o to list of objects.
5589 * console-msw.h (struct mswindows_frame): add widget hashtable for
5590 wiring command ids to callbacks.
5592 1998-12-16 Andy Piper <andy@xemacs.org>
5594 * XEmacs 21.2.6 is released
5596 1998-12-08 Hrvoje Niksic <hniksic@srce.hr>
5598 * md5.c (Fmd5): Correctly initiate string input stream.
5600 * Makefile.in.in (tests): Add md5-tests.el.
5602 1998-12-06 Martin Buchholz <martin@xemacs.org>
5605 * alloc.c (make_vector): remove travesty
5609 (make_bit_vector_internal):
5611 (make_bit_vector_from_byte_vector):
5613 - make vector_equal a little faster.
5614 - Don't use variable name `new'.
5615 - Use size_t instead of EMACS_INT.
5616 - usual Martin-style pointless bit-twiddling.
5622 Make mapcar faster. In particular, make
5623 (mapc #'identity long-string)
5624 MUCH faster under Mule.
5625 * tests/automated/lisp-tests.el: Test 'em!
5627 1998-12-06 Martin Buchholz <martin@xemacs.org>
5629 * bytecode.c (Ffetch_bytecode): Fix crash when loading lazy-loaded
5632 1998-12-13 Martin Buchholz <martin@xemacs.org>
5634 * console-msw.c: Function definitions follow coding standards
5635 - This prevents e.g. find-tag on Lisp_Event finding DEVENT
5637 1998-12-11 Martin Buchholz <martin@xemacs.org>
5639 * events.h (struct timeout_data):
5640 * event-tty.c (tty_timeout_to_emacs_event):
5641 * event-msw.c (mswindows_wm_timer_callback):
5642 * event-Xt.c (Xt_timeout_to_emacs_event):
5643 * event-msw.c (mswindows_cancel_dispatch_event):
5644 Make sure Lisp_Objects inside events are initialized to Qnil, not
5645 Qnull_pointer, which is now illegal.
5647 1998-12-10 Martin Buchholz <martin@xemacs.org>
5649 * lisp.h: Fix up prototypes to match alloc.c
5651 1998-12-09 Andy Piper <andy@xemacs.org>
5653 * glyphs-msw.c (init_image_instance_from_xbm_inline): don't use
5654 XSETINT for assigning lisp objects.
5656 1998-12-07 Martin Buchholz <martin@xemacs.org>
5659 * console-msw.c (DHEADER):
5668 - max_align_t should not be visible to the user of the
5670 - use Bufbyte instead of char
5671 - parens around (FOOP (obj)) are always redundant.
5672 If they were necessary, we should fix the macro instead.
5673 - Always use string_data(foo) instead of foo->data.
5675 1998-12-07 Martin Buchholz <martin@xemacs.org>
5677 * sysdep.c (set_descriptor_non_blocking):
5678 Since O_NONBLOCK is now always #defined, make use of fcntl
5679 conditional on F_SETFL being defined.
5681 1998-12-09 Andy Piper <andy@xemacs.org>
5683 * menubar-msw.c (mswindows_handle_wm_command): add back in checks
5684 that got removed in the merge
5686 1998-11-30 Greg Klanderman <greg@alphatech.com>
5688 * dired.c (vars_of_dired): bugfix for previous conditionalization
5689 of user-name-completion on non- Windows NT.
5691 1998-12-08 Martin Buchholz <martin@xemacs.org>
5693 * windowsnt.h: Remove `support' for using index and rindex
5695 * filelock.c (current_lock_owner):
5696 - Change uses of index -> strchr, rindex -> strrchr
5698 1998-12-06 Martin Buchholz <martin@xemacs.org>
5700 * frame-msw.c (mswindows_init_frame_1):
5701 - use make_lisp_hash_table, not Fmake_hash_table
5704 1998-12-05 XEmacs Build Bot <builds@cvs.xemacs.org>
5706 * XEmacs 21.2.5 is released
5708 1998-11-30 Martin Buchholz <martin@xemacs.org>
5710 * xselect.c (receive_incremental_selection):
5711 * xselect.c (x_get_window_property):
5712 * xmu.c (XmuReadBitmapDataFromFile):
5713 * xmu.c (XmuCursorNameToIndex):
5714 * xgccache.c (describe_gc_cache):
5715 * xgccache.c (gc_cache_lookup):
5716 * xgccache.c (free_gc_cache):
5717 * xgccache.c (make_gc_cache):
5719 * window.c (map_windows_1):
5720 * window.c (Fother_window_for_scrolling):
5721 * window.c (window_scroll):
5722 * window.c (change_window_height):
5723 * window.c (Fsplit_window):
5724 * window.c (window_left_gutter_width):
5725 * window.c (window_modeline_height):
5726 * window.c (invalidate_vertical_divider_cache_in_window):
5727 * window.c (window_needs_vertical_divider_1):
5728 * window.c (update_mirror_internal):
5729 * window.c (SET_LAST_FACECHANGE):
5730 * widget.c (Fwidget_plist_member):
5731 * unexec.c (copy_text_and_data):
5732 * unexcw.c (copy_executable_and_dump_data_section):
5734 * tooltalk.c (struct Lisp_Tooltalk_Pattern):
5735 * tooltalk.c (struct Lisp_Tooltalk_Message):
5736 * toolbar.h (struct toolbar_button):
5737 * toolbar.c (default_toolbar_visible_p_changed_in_window):
5738 * toolbar.c (recompute_overlaying_specifier):
5739 * toolbar.c (toolbar_validate):
5740 * toolbar.c (toolbar_button_at_pixpos):
5741 * toolbar.c (get_toolbar_coords):
5742 * toolbar.c (update_frame_toolbars):
5744 * toolbar-msw.c (mswindows_handle_toolbar_wm_command):
5745 * toolbar-msw.c (mswindows_find_toolbar_pos):
5746 * toolbar-msw.c (mswindows_output_toolbar):
5747 * toolbar-msw.c (mswindows_clear_toolbar):
5756 * sysdep.c (sys_fopen):
5757 * sysdep.c (sys_open):
5758 * sysdep.c (tty_init_sys_modes_on_device):
5759 * sysdep.c (get_eof_char):
5760 * sysdep.c (child_setup_tty):
5761 * sysdep.c (set_descriptor_non_blocking):
5763 * syntax.c (scan_words):
5766 * symeval.h (struct symbol_value_varalias):
5767 * symeval.h (struct symbol_value_forward):
5768 * symbols.c (syms_of_symbols):
5769 * symbols.c (init_symbols_once_early):
5770 * symbols.c (Fbuilt_in_variable_type):
5771 * symbols.c (Fsymbol_value_in_buffer):
5772 * symbols.c (default_value):
5774 * symbols.c (find_symbol_value_quickly):
5775 * symbols.c (store_symval_forwarding):
5776 * symbols.c (set_default_console_slot_variable):
5777 * symbols.c (set_default_buffer_slot_variable):
5778 * symbols.c (verify_ok_for_buffer_local):
5779 * symbols.c (symbol_is_constant):
5780 * symbols.c (oblookup):
5781 * symbols.c (Funintern):
5782 * symbols.c (Fintern):
5783 * symbols.c (check_obarray):
5785 * specifier.h (struct specifier_methods):
5787 * specifier.c (specifier_instance):
5788 * specifier.c (specifier_instance_from_inst_list):
5789 * specifier.c (decode_locale_type):
5790 * specifier.c (specifier_equal):
5791 * specifier.c (finalize_specifier):
5792 * specifier.c (prune_specifiers):
5793 * specifier.c (kill_specifier_buffer_locals):
5794 * sound.c (init_native_sound):
5797 * search.c (Fmatch_data):
5798 * search.c (match_limit):
5799 * search.c (Freplace_match):
5800 * search.c (skip_chars):
5801 * search.c (scan_buffer):
5803 * scrollbar.c (specifier_vars_of_scrollbar):
5804 * scrollbar.c (Fscrollbar_set_hscroll):
5805 * scrollbar.c (vertical_scrollbar_changed_in_window):
5806 * scrollbar.c (release_window_mirror_scrollbars):
5807 * scrollbar.c (free_scrollbar_instance):
5810 * s/msdos.h (O_BINARY):
5812 * s/freebsd.h (LIBS_TERMCAP):
5813 * regex.c (re_match_2_internal):
5814 * regex.c (compile_extended_range):
5815 * regex.c (POP_FAILURE_POINT):
5816 * regex.c (PUSH_FAILURE_POINT):
5817 * redisplay.h (RESET_CHANGED_SET_FLAGS):
5819 * redisplay.h (struct display_line):
5820 * redisplay.h (struct rune):
5821 * redisplay.c (vars_of_redisplay):
5822 * redisplay.c (redisplay_variable_changed):
5823 * redisplay.c (UPDATE_CACHE_RETURN):
5824 * redisplay.c (validate_line_start_cache):
5825 * redisplay.c (mark_redisplay_structs):
5826 * redisplay.c (mark_glyph_block_dynarr):
5827 * redisplay.c (window_line_number):
5828 * redisplay.c (redisplay_frame):
5829 * redisplay.c (redisplay_window):
5830 * redisplay.c (generate_modeline):
5831 * redisplay.c (create_right_glyph_block):
5832 * redisplay.c (create_left_glyph_block):
5833 * redisplay.c (create_text_block):
5835 * redisplay-x.c (x_output_hline):
5836 * redisplay-x.c (x_output_vertical_divider):
5837 * redisplay-tty.c (tty_output_display_block):
5838 * redisplay-output.c (output_display_line):
5839 * redisplay-output.c:
5840 * redisplay-msw.c (mswindows_output_vertical_divider):
5841 * redisplay-msw.c (mswindows_ring_bell):
5842 * redisplay-msw.c (mswindows_output_cursor):
5846 * puresize.h (RAW_PURESIZE):
5847 * profile.c (syms_of_profile):
5848 * profile.c (Fstart_profiling):
5849 * profile.c (sigprof_handler):
5852 * process.c (vars_of_process):
5853 * process.c (read_process_output):
5854 * process.c (get_process):
5856 * process-unix.c (unix_open_multicast_group):
5857 * process-unix.c (unix_get_tty_name):
5858 * process-unix.c (unix_send_process):
5859 * process-unix.c (unix_reap_exited_processes):
5860 * process-unix.c (unix_create_process):
5861 * process-unix.c (unix_init_process_io_handles):
5862 * process-unix.c (allocate_pty):
5864 * process-nt.c (nt_open_network_stream):
5865 * process-nt.c (nt_update_status_if_terminated):
5866 * process-nt.c (nt_finalize_process_data):
5868 * print.c (debug_short_backtrace):
5869 * print.c (debug_backtrace):
5870 * print.c (print_symbol):
5871 * print.c (print_internal):
5872 * print.c (print_cons):
5873 * print.c (Fwrite_char):
5874 * print.c (print_prepare):
5875 * print.c (canonicalize_printcharfun):
5876 * print.c (output_string):
5879 * opaque.c (allocate_managed_opaque):
5881 * offix.c (DndSetData):
5882 * objects.c (face_boolean_create):
5883 * objects.c (font_instantiate):
5884 * objects.c (font_create):
5885 * objects.c (color_create):
5886 * objects.c (finalize_font_instance):
5887 * objects.c (finalize_color_instance):
5889 * objects-x.c (x_font_instance_truename):
5891 * objects-x.c (x_initialize_font_instance):
5892 * objects-x.c (allocate_nearest_color):
5893 * objects-tty.c (tty_initialize_font_instance):
5894 * objects-tty.c (tty_initialize_color_instance):
5895 * objects-msw.c (mswindows_initialize_color_instance):
5896 * ntproc.c (syms_of_ntproc):
5897 * ntproc.c (Fwin32_set_process_priority):
5898 * ntproc.c (sys_spawnve):
5900 * ntheap.c (get_data_end):
5904 * nt.c (generate_inode_val):
5905 * nt.c (sys_rename):
5907 * mule-wnnfns.c (Fwnn_hinsi_number):
5908 * mule-wnnfns.c (Fwnn_yuragi):
5909 * mule-wnnfns.c (Fwnn_common_learn):
5910 * mule-wnnfns.c (Fwnn_suffix_learn):
5911 * mule-wnnfns.c (Fwnn_prefix_learn):
5912 * mule-wnnfns.c (Fwnn_okuri_learn):
5913 * mule-wnnfns.c (Fwnn_complex_conv):
5914 * mule-wnnfns.c (Fwnn_last_is_first):
5915 * mule-wnnfns.c (Fwnn_bmodify_dict_add):
5916 * mule-wnnfns.c (Fwnn_notrans_dict_add):
5917 * mule-wnnfns.c (Fwnn_fiusr_dict_add):
5918 * mule-wnnfns.c (Fwnn_fisys_dict_add):
5919 * mule-wnnfns.c (Fwnn_hinsi_list):
5920 * mule-wnnfns.c (Fwnn_fuzokugo_set):
5921 * mule-wnnfns.c (Fwnn_dict_search):
5922 * mule-wnnfns.c (Fwnn_word_toroku):
5923 * mule-wnnfns.c (Fwnn_hindo_update):
5924 * mule-wnnfns.c (Fwnn_bunsetu_henkou):
5925 * mule-wnnfns.c (Fwnn_kakutei):
5926 * mule-wnnfns.c (Fwnn_begin_henkan):
5927 * mule-wnnfns.c (Fwnn_dict_comment):
5928 * mule-wnnfns.c (Fwnn_dict_add):
5929 * mule-wnnfns.c (Fwnn_open):
5930 * mule-mcpath.c (mc_getcwd):
5931 * mule-coding.c (vars_of_mule_coding):
5932 * mule-coding.c (convert_to_external_format):
5933 * mule-coding.c (encoding_marker):
5934 * mule-coding.c (decoding_marker):
5935 * mule-coding.c (Fcopy_coding_system):
5936 * mule-coding.c (Fmake_coding_system):
5937 * mule-coding.c (Fcoding_system_list):
5938 * mule-coding.c (Ffind_coding_system):
5939 * mule-coding.c (symbol_to_eol_type):