*** empty log message ***
[bpt/emacs.git] / src / ChangeLog
index d1cf3aa..95a1d8f 100644 (file)
@@ -1,5 +1,264 @@
+2000-09-15  Gerd Moellmann  <gerd@gnu.org>
+
+       * xfns.c (lookup_image): Build mask before applying an algorithm.
+       Recognize algorithm `disabled'.
+       (cross_disabled_images): New variable.
+       (COLOR_INTENSITY): New macro.
+       (x_detect_edges): Use COLOR_INTENSITY.
+       (x_disable_image): New function.
+       (syms_of_xfns): DEFVAR_BOOL cross_disabled_images.
+
+       * xdisp.c (build_desired_tool_bar_string): For a toolbar item in
+       disabled state, don't apply an image transformation algorithm if
+       the user specified an image for the disabled state.  Use
+       `:algorthm disabled' for creating a disabled item's image if the
+       user hasn't specified an image.
+
+       * xfns.c (ALLOC_XPM_COLORS): Define if we can use Emacs' color
+       allocation functions with the XPM lib.
+       (struct xpm_cached_color) [ALLOC_XPM_COLORS]: New structure.
+       (XPM_COLOR_CACHE_BUCKETS) [ALLOC_XPM_COLORS]: New macro.
+       (xpm_color_cache) [ALLOC_XPM_COLORS]: New variable.
+       (xpm_init_color_cache, xpm_free_color_cache, xpm_lookup_color)
+       (xpm_alloc_color, xpm_free_colors) [ALLOC_XPM_COLORS]: New
+       functions.
+       (xpm_load) [ALLOC_XPM_COLORS]: Use Emacs' own color allocation
+       functions, if possible, because these handle color allocation
+       failure more gracefully.
+       (Fimage_mask_p): New function.
+
+       * xfns.c (QCmatrix, QCcolor_adjustment, QCmask, Qemboss)
+       (Qedge_detection, Qheuristic): New symbols.
+       (syms_of_xfns): Initialize new symbols.
+       (lookup_image): Handle `:mask X', `:algorithm emboss', and
+       `algorithm (edge-detection ...)'.
+       (xbm_format, xpm_format, pbm_format, png_format, jpeg_format):
+       (tiff_format, gif_format, gs_format): Add `:mask'.
+       (XBM_MASK, XPM_MASK, PBM_MASK, PNG_MASK, JPEG_MASK, TIFF_MASK)
+       (GIF_MASK, GS_MASK): New enumerators.
+       (x_laplace_read_row, x_laplace_write_row): Functions removed.
+       (emboss_matrix, laplace_matrix): New variables.
+       (x_to_xcolors, x_from_xcolors, x_detect_edges, x_emboss)
+       (x_edge_detection): New functions.
+       (x_laplace): Rewritten in terms of x_detect_edges.
+       (x_build_heuristic_mask): If image has a mask, free it.
+
+2000-09-14  Andrew Innes  <andrewi@gnu.org>
+
+       * makefile.w32-in: Revert to Unix line endings.
+
+2000-09-14  Andrew Innes  <andrewi@gnu.org>
+
+       * makefile.w32-in: Standardize indentation somewhat.
+       (bootstrap-temacs): Use $(ARGQUOTE) instead of literal quotes, to
+       cater for differences between shells.
+
+       * w32term.c (w32_per_char_metric): Handle non-TrueType fonts.
+
+2000-09-14  Gerd Moellmann  <gerd@gnu.org>
+
+       * xterm.c (x_produce_glyphs): If the distance from the current
+       position to the next tab stop is less than a canonical character
+       width, use the tab stop after that.
+
+2000-09-14  Dave Love  <fx@gnu.org>
+
+       * buffer.c (alloc_buffer_text): Fix xmalloc call.
+
+2000-09-14  Gerd Moellmann  <gerd@gnu.org>
+
+       * xdisp.c (handle_fontified_prop): While running fontification
+       functions, bind `fontification-functions' and
+       `after-change-functions' to nil.
+
+       * s/freebsd.h, s/irix-5.0.h, s/sol2.h, s/template.h
+       (USE_MMAP_FOR_BUFFERS): Define instead of REL_ALLOC_MMAP.
+
+       * Makefile.in (mallocobj) [SYSTEM_MALLOC]: Don't add ralloc.o.
+
+       * emacs.c: Change conditional compilation on REL_ALLOC_MMAP to
+       USE_MMAP_FOR_BUFFERS.
+
+       * insdel.c (make_gap): Use enlarge_buffer_text.
+
+       * buffer.c: Move allocation with mmap here, from ralloc.c.  Change
+       conditional compilation on REL_ALLOC_MMAP to USE_MMAP_FOR_BUFFERS.
+       (mmap_alloc, mmap_free, mmap_realloc) [REL_ALLOC_MMAP]: Renamed
+       from former r_alloc_* functions in ralloc.c.
+       (mmap_page_size, mmap_initialized_p) [REL_ALLOC_MMAP]: New
+       variables.
+       (MEM_ALIGN) [REL_ALLOC_MMAP]: New macro.
+       (mmap_init) [REL_ALLOC_MMAP]: New function.
+       (alloc_buffer_text, enlarge_buffer_text, free_buffer_text): New
+       functions replacing macros BUFFER_ALLOC, BUFFER_REALLOC, and
+       BUFFER_FREE.
+
+       * buffer.h (BUFFER_ALLOC, BUFFER_REALLOC, BUFFER_FREE): Removed.
+       (enlarge_buffer_text): Add prototype.
+
+       * ralloc.c: Remove everything having to do with the use of mmap.
+
+2000-09-13  Gerd Moellmann  <gerd@gnu.org>
+
+       * sound.c (Fplay_sound): Doc fix.
+
+       * keyboard.c: Avoid some more compiler warnings.
+       (parse_tool_bar_item): Ignore cached key bindings.
+
+       * alloc.c: Add some comments about DOUG_LEA_MALLOC's use of mmap
+       and allocation of Lisp data.
+
+2000-09-12  Gerd Moellmann  <gerd@gnu.org>
+
+       * xfaces.c: Remove conditional compilation on SCALABLE_FONTS.
+       (Finternal_set_lisp_face_attribute): If frame is 0, set new frame
+       defaults first.
+
+       * lread.c (Fload): Put code checking for recursive loads in #if 0.
+
+2000-09-12  Miyashita Hisashi  <himi@meadowy.org>
+
+       * ccl.c: Comment fixed.
+       (MAX_MAP_SET_LEVEL): Increased to 30.
+       (PUSH_MAPPING_STACK): Enclose with do-while block.
+       (POP_MAPPING_STACK): Likewise.
+       (stack_idx_of_map_multiple): New variable.
+       (CCL_CALL_FOR_MAP_INSTRUCTION): New macro.
+       (ccl_driver) <CCL_IterateMultipleMap>: If the content is a symbol,
+       call the corresponding CCL program by
+       CCL_CALL_FOR_MAP_INSTRUCTION.
+       (ccl_driver) <CCL_MapSingle>: Likewise.
+       (ccl_driver) <CCL_MapMultiple>: Rewritten to fix many bugs, deal
+       with the case where looking up process reaches to the end of
+       map-set, and call CCL programs as the above change.
+
+2000-09-11  Gerd Moellmann  <gerd@gnu.org>
+
+       * xfns.c (png_load, jpeg_load): Declare some variables volatile
+       that might be clobbered by longjmp.
+       (check_x_display_info, x_decode_color, create_frame_xic)
+       (Fx_display_backing_store, Fx_display_visual_class)
+       (x_build_heuristic_mask, pbm_scan_number): Avoid compiler
+       warnings.
+
+       * lread.c (init_lread): Set Vloads_in_progress to nil.
+       (Fload): Show list of recursively loaded files, when signaling an
+       error.
+
+       * lread.c (Vloads_in_progress): New variable.
+       (record_load_unwind): New function.
+       (Fload): Check for recursive loads.
+       (syms_of_lread): Initialize Vloads_in_progress.
+       (read_integer, read1): Avoid some compiler warnings.
+
+       * fns.c (concat, Fsubstring, internal_equal, Fnconc): Avoid some
+       compiler warnings.
+
+2000-09-11  Miles Bader  <miles@gnu.org>
+
+       * editfns.c (Fbuffer_string): Doc fix.
+
+2000-09-10  Gerd Moellmann  <gerd@gnu.org>
+
+       * ralloc.c (mmap_enlarge): Don't return 0 if successful.
+
+2000-09-09  Ken Raeburn  <raeburn@gnu.org>
+
+       * s/netbsd.h: Use NOT_C_CODE, not NO_C_SOURCE, when deciding
+       whether to include other header files.
+
+2000-09-09  Gerd Moellmann  <gerd@gnu.org>
+
+       * xfaces.c (CYCLE_CHECK): Don't use the Lisp_Object returned 
+       by Fmemq as a boolean.
+
+2000-09-08  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * xfaces.c (Finternal_set_lisp_face_attribute): Minor thinko.
+
+2000-09-08  Gerd Moellmann  <gerd@gnu.org>
+
+       * ralloc.c (mmap_fd): Remove initializer which can make it
+       read-only in a dumped Emacs.
+       (mmap_fd_1): New variable.
+       (mmap_set_vars): Remove local `fd'.  Save mmap_fd in mmap_fd_1,
+       restore it from there.
+       (r_alloc, r_re_alloc, r_alloc_free): Call r_alloc_init
+       unconditionally so that mmap_fd can be initialized there.
+       (r_alloc_init_fd): Open-coded in r_alloc_init; function removed.
+       (r_alloc_init) [REL_ALLOC_MMAP && !MAP_ANON]: Open /dev/zero.
+       (r_alloc_init) [REL_ALLOC_MMAP && MAP_ANON]: Set mmap_fd to -1.
+
+       * xfaces.c (Finternal_merge_in_global_face): Return a Lisp object.
+
+       * xdisp.c (dump_glyph_row): Fix printf format string.
+       (display_line, move_it_in_display_line_to): Avoid compiler
+       warnings.
+
+       * s/freebsd.h (GC_MARK_STACK, REL_ALLOC_MMAP): Define.
+
+       * keymap.c (Fset_keymap_parent): Check for cycles in keymap
+       inheritance.
+
+       * xdisp.c (try_window_id): When trying to locate cursor in
+       unchanged rows at the top, handle the case that we can't find it.
+
+       * xterm.c (x_draw_glyphs): Handle case START and END are out
+       of bounds more carefully.
+
+2000-09-08  Dave Love  <fx@gnu.org>
+
+       * s/sol2.h (REL_ALLOC_MMAP): Define.
+       * s/irix5-0.h (REL_ALLOC_MMAP): Likewise.
+
+       * ralloc.c: Don't include string.h (redundant).
+       (MAP_ANON) [REL_ALLOC_MMAP]: Ensure it's defined.
+       [!MAP_ANON]: Include fcntl.h.
+       (mmap_fd) [REL_ALLOC_MMAP]: New variable.
+       (r_alloc, r_re_alloc, r_alloc_free)
+       (mmap_enlarge, mmap_set_vars): Use it.
+       (r_alloc_init_fd): New function.
+       (__morecore) [SYSTEM_MALLOC]: Don't declare.
+       (r_alloc_init): Call r_alloc_init_fd.  Conditionalize stuff on
+       malloc type.
+
+       * Makefile.in (allocaobj) [!SYSTEM_MALLOC && REL_ALLOC_MMAP]:
+       Remove vm-limit.o.
+
+       * unexelf.c (SHT_MIPS_DEBUG, HDRR) [__mips__]: Really confine last
+       change to __NetBSD__.
+
+2000-09-08  Kenichi Handa  <handa@etl.go.jp>
+
+       * search.c (compile_pattern): Check the multibyteness of cached
+       string and PATTERN.
+
+2000-09-08  Miles Bader  <miles@gnu.org>
+
+       * xfaces.c (default_face_vector): Function removed.
+       (Finternal_merge_in_global_face): Restore old global/local
+       attribute override order.  Use inline loop instead of calling
+       default_face_vector.
+
 2000-09-07  Gerd Moellmann  <gerd@gnu.org>
 
+       * ralloc.c (obtain, relinquish, relinquish, r_alloc_size_in_use)
+       (get_bloc, relocate_blocs, update_heap_bloc_correspondence)
+       (resize_bloc, r_alloc_sbrk, r_alloc_init): Add casts to `char *'
+       where necessary, in case POINTER_TYPE is `void'.
+
+2000-09-07  Eli Zaretskii  <eliz@is.elta.co.il>
+
+       * frame.c (make_terminal_frame): Initialize frame foreground and
+       background colors to unspecified, for the initial instance of an
+       MSDOS frame.
+
+2000-09-07  Gerd Moellmann  <gerd@gnu.org>
+
+       * ralloc.c (mmap_find): Fix overlap computation.
+       (mmap_enlarge): Compute nbytes before trying to find an
+       overlapping region.
+
        * xfaces.c (smaller_face): Compare font heights with `<' and `>'
        instead of `!='.