(handle_fontified_prop): While running fontification
[bpt/emacs.git] / src / ChangeLog
index 80c610d..e8f7c30 100644 (file)
@@ -1,5 +1,322 @@
+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 `!='.
+
+       * lread.c (syms_of_lread): Change value of regexp
+       Vbytecomp_version_regexp to not match some XEmacs-compiled files.
+
+       * xmenu.c (xdialog_show): When looking up the selection in
+       menu_items, take `quote' boundaries into account; this corresponds
+       to a nil ITEM in x-popup-dialog.
+
+2000-09-07  Kenichi Handa  <handa@etl.go.jp>
+
+       * charset.h (MIN_CHARSET_OFFICIAL_DIMENSION1): Define it as 0x80,
+       not 0x81.
+       (MIN_CHAR_OFFICIAL_DIMENSION1): Define it as ((0x81 - 0x70) << 7).
+
+       * coding.c (encode_coding_sjis_big5): Use translation table for
+       encoding, not decoding.  Fix the handling of latin-jisx0201.
+       Check for the charset katakana-jisx0201 too.
+       (ONE_MORE_CHAR): Call translate_char with CHARSET arg -1.
+       (detect_coding_sjis): Check the byte sequence more rigidly.
+
+2000-09-07  Gerd Moellmann  <gerd@gnu.org>
+
+       * xfaces.c (Vparam_value_alist): New variable.
+       (syms_of_xfaces): Initialize it.
+       (Finternal_set_lisp_face_attribute): Avoid more consing.
+
+       * frame.c (Fframe_parameter): Handle `name' and `background-mode'
+       specially.
+       (Fframe_parameter) [HAVE_X_WINDOWS]: Handle `display' specially.
+       (Qbackground_mode): New variable.
+       (syms_of_frame_1): Initialize Qbackground_mode.
+
+       * lisp.h (Qdisplay): Declare extern.
+
+       * xfaces.c (Finternal_set_lisp_face_attribute): If FRAME is 0,
+       change face on all frames, and change the default for new frames.
+
+2000-09-07  Dave Love  <fx@gnu.org>
+
+       * Makefile.in [!SYSTEM_MALLOC && REL_ALLOC_MMAP]: Set mallocobj.
+
+2000-09-07  Kenichi Handa  <handa@etl.go.jp>
+
+       * charset.h (MAKE_CHAR): Be sure to set MSB of C1 to 0.
+
+       * charset.c: Include composite.h
+       (lisp_string_width): New function.
+       (Fstring_width): Call lisp_string_width instead of strwidth.
+
+       * Makefile.in (charset.o): Depends on composite.h.
+
+       * process.c (read_process_output): Before inserting the decoded
+       text in the buffer, adjust the multibyteness.
+
+2000-09-06  Gerd Moellmann  <gerd@gnu.org>
+
+       * buffer.c (set_buffer_internal_1) [REL_ALLOC_MMAP]: If 
+       buffer's text buffer is null, map new memory.
+
+       * ralloc.c (POINTER, SIZE) [emacs]: Define in terms of
+       POINTER_TYPE and size_t.
+       (struct mmap_region) [REL_ALLOC_MMAP]: New structure.
+       (mmap_regions, mmap_regions_1) [REL_ALLOC_MMAP]: New variables.
+       (ROUND, MMAP_REGION_STRUCT_SIZE, MMAP_REGION, MMAP_USER_AREA)
+       [REL_ALLOC_MMAP]: New macros.
+       (mmap_find, mmap_free, mmap_enlarge, mmap_set_vars)
+       (mmap_mapped_bytes, r_alloc, r_re_alloc, r_alloc_free)
+       [REL_ALLOC_MMAP]: New functions.
+
+       * emacs.c (Fdump_emacs) [REL_ALLOC_MMAP]: Call mmap_set_vars
+       before and after unexec.
+
+       * buffer.c (init_buffer) [REL_ALLOC_MMAP]: Map new buffer
+       text buffers if necessary.
+
+       * buffer.h (R_ALLOC_DECLARE): Removed because unused.
+       (r_alloc, r_re_alloc, r_alloc_free): Use POINTER_TYPE and size_t
+       in prototypes.
+
+       * config.in (HAVE_MMAP): Add #undef.
+
+2000-09-05  Gerd Moellmann  <gerd@gnu.org>
+
+       * frame.c (Qdisplay_type): New variable.
+       (syms_of_frame_1): Initialize it.
+       (Fframe_parameter): New function that avoids consing.
+       (syms_of_frame): Defsubr it.
+
+       * buffer.c (Fother_buffer): Consider buffers as invisible when
+       they are displayed in a window on an invisible frame.
+
+       * window.c (window_loop) <GET_LARGEST_WINDOW>: Fix bug making
+       get-largest-window always return nil.
+
+2000-09-04  Gerd Moellmann  <gerd@gnu.org>
+
+       * lread.c (syms_of_lread): Make Vbytecomp_version_regexp a Lisp
+       variable; recognize Emacs 19 elc files.
+
+2000-09-04  Miles Bader  <miles@gnu.org>
+
+       * xmenu.c (xmenu_show): Call x_set_menu_resources_from_menu_face
+       before initially popping up the menu, so the menu doesn't flash
+       when the face settings are significantly different from the
+       defaults.
+
+2000-09-04  Stefan Monnier  <monnier@cs.yale.edu>
+
+       * regex.c (WIDE_CHAR_SUPPORT): New macro.
+       (btowc, iswctype, wctype) [_LIBC]: Redefine to __<fun>.
+       (BIT_ALPHA, BIT_ALNUM, BIT_ASCII, BIT_NONASCII, BIT_GRAPH, BIT_PRINT)
+       (BIT_UNIBYTE): Remove.
+       (re_match_2_internal): Delete corresponding code and streamline the
+       BIT_MULTIBYTE case to not bother checking ISUNIBYTE.
+       (CHAR_CLASS_MAX_LENGTH) [!WIDE_CHAR_SUPPORT]: Set to 9 rather than 6.
+       (re_wctype_t): New type.
+       (re_wctype, re_iswctype, re_wctype_to_bit): New functions.
+       (regex_compile): Use them and fix handling of overly long char classes.
+
 2000-09-03  Andrew Innes  <andrewi@gnu.org>
 
+       * makefile.w32-in: Change to DOS line endings.
+
        * s/ms-w32.h (ORDINARY_LINK): New define.
 
        * w32.c (_ANONYMOUS_UNION) [__GNUC__]: New define
@@ -8,6 +325,9 @@
        * makefile.w32-in (clean): Don't delete config.h and epaths.h.
        (distclean): Delete them here instead.
 
+       * w32proc.c (compare_env): Convert to uppercase for comparison,
+       not lowercase, to match how the native Windows shell works.
+
 2000-09-03  Jason Rumney  <jasonr@gnu.org>
 
        * ChangeLog: Remove -unix from coding. Let Emacs autodetect, as