Initial version of string reordering. Tested only on mode line and
[bpt/emacs.git] / src / ChangeLog
index a43e61f..3ca0241 100644 (file)
@@ -1,7 +1,590 @@
-2011-04-28  Paul Eggert  <eggert@cs.ucla.edu>
+2011-06-11  Eli Zaretskii  <eliz@gnu.org>
+
+       * xdisp.c (next_element_from_buffer): Improve commentary for when
+       the iterator is before prev_stop.
+       (init_iterator): Initialize bidi_p from the default value of
+       bidi-display-reordering, not from buffer-local value.  Use the
+       buffer-local value only if initializing for buffer iteration.
+       (handle_invisible_prop): Support invisible properties on strings
+       that are being bidi-reordered.
+       (reseat_to_string): Enable bidi-related code.
+       (set_iterator_to_next): Support bidi reordering of C strings and
+       Lisp strings.
+       (next_element_from_string): Support bidi reordering of Lisp
+       strings.
+       (handle_stop_backwards): Support Lisp strings as well.
+       (display_mode_line, display_mode_element): Temporarily force L2R
+       paragraph direction.
+       (display_string): Support display of R2L glyph rows.  Use
+       IT_STRING_CHARPOS when displaying from a Lisp string.
+
+2011-06-10  Eli Zaretskii  <eliz@gnu.org>
+
+       * xdisp.c (Fcurrent_bidi_paragraph_direction): Initialize
+       itb.string.lstring.
+       (compute_display_string_pos, compute_display_string_end):
+       Fix calculation of the object to scan.  Fixes an error when using
+       arrow keys.
+       (next_element_from_buffer): Don't abort when IT_CHARPOS is before
+       base_level_stop; instead, set base_level_stop to BEGV.  Fixes
+       crashes in vertical-motion.
+
+2011-06-09  Eli Zaretskii  <eliz@gnu.org>
+
+       * xdisp.c (compute_display_string_pos): First arg is now struct
+       `text_pos *'; all callers changed.  Support display properties on
+       Lisp strings.
+       (compute_display_string_end): Support display properties on Lisp
+       strings.
+       (init_iterator, reseat_1, reseat_to_string): Initialize the
+       string.bufpos member to 0 (zero, for compatibility with IT_CHARPOS
+       when iterating on a string not from display properties).
+
+       * bidi.c (bidi_fetch_char): Support strings with display
+       properties.
+
+       * dispextern.h (struct bidi_string_data): New member bufpos.
+       (compute_display_string_pos): Update prototype.
+
+2011-06-09  Eli Zaretskii  <eliz@gnu.org>
+
+       * bidi.c (bidi_level_of_next_char): Allow the sentinel "position"
+       to pass the test for valid cached positions.
+
+       * xdisp.c (init_iterator): Call bidi_init_it only of a valid
+       buffer position was specified.  Initialize paragraph_embedding to
+       L2R.
+       (reseat_to_string): Initialize the bidi iterator (for now ifdef'ed
+       out).
+       (display_string): If we need to ignore text properties of
+       LISP_STRING, set IT->stop_charpos to IT->end_charpos.  (The
+       original value of -1 will not work with bidi.)
+
+       * dispextern.h (struct bidi_string_data): New member lstring.
+
+2011-06-09  Eli Zaretskii  <eliz@gnu.org>
+
+       * xdisp.c (Fcurrent_bidi_paragraph_direction): Initialize
+       itb.string.s to NULL (avoids a crash in bidi_paragraph_init).
+
+2011-06-08  Eli Zaretskii  <eliz@gnu.org>
+
+       * bidi.c (bidi_paragraph_info): Delete unused struct.
+       (bidi_cache_idx, bidi_cache_last_idx): Declare EMACS_INT.
+       (bidi_cache_start): New variable.
+       (bidi_cache_reset): Reset bidi_cache_idx to bidi_cache_start, not
+       to zero.
+       (bidi_cache_fetch_state, bidi_cache_search)
+       (bidi_cache_find_level_change, bidi_cache_iterator_state)
+       (bidi_cache_find, bidi_peek_at_next_level)
+       (bidi_level_of_next_char, bidi_find_other_level_edge)
+       (bidi_move_to_visually_next): Compare cache index with
+       bidi_cache_start rather than with zero.
+       (bidi_fetch_char): Accept new argument STRING; all callers
+       changed.  Support iteration over a string.
+       (bidi_paragraph_init, bidi_resolve_explicit_1)
+       (bidi_resolve_explicit, bidi_resolve_weak)
+       (bidi_level_of_next_char, bidi_move_to_visually_next): Support
+       iteration over a string.
+       (bidi_set_sor_type, bidi_resolve_explicit_1)
+       (bidi_resolve_explicit, bidi_type_of_next_char): ignore_bn_limit
+       can now be zero (for strings); special values 0 and -1 were
+       changed to -1 and -2, respectively.
+       (bidi_char_at_pos): New function.
+       (bidi_paragraph_init, bidi_resolve_explicit, bidi_resolve_weak):
+       Call it instead of FETCH_MULTIBYTE_CHAR.
+       (bidi_move_to_visually_next): Abort if charpos or bytepos were not
+       initialized to valid values.
+       (bidi_init_it): Don't initialize charpos and bytepos with invalid
+       values.
+
+       * xdisp.c (compute_display_string_pos)
+       (compute_display_string_end): Accept additional argument STRING.
+       (init_iterator, reseat_1): Initialize bidi_it->string.s to NULL.
+       (reseat_to_string): Initialize bidi_it->string.s and
+       bidi_it->string.schars.
+
+       * dispextern.h (struct bidi_string_data): New structure.
+       (struct bidi_it): New member `string'.  Make flag members be 1-bit
+       fields, and put them last in the struct.
+       (compute_display_string_pos, compute_display_string_end): Update
+       prototypes.
+
+2011-06-04  Eli Zaretskii  <eliz@gnu.org>
+
+       * bidi.c (bidi_level_of_next_char): clen should be EMACS_NT, not int.
+
+2011-06-03  Eli Zaretskii  <eliz@gnu.org>
+
+       * bidi.c (bidi_fetch_char_advance): Remove unused and
+       unimplemented function.
+
+2011-05-28  Eli Zaretskii  <eliz@gnu.org>
+
+       * xdisp.c (set_cursor_from_row): Set start and stop points
+       according to the row's direction when priming the loop that looks
+       for the glyph on which to display cursor.
+       (single_display_spec_intangible_p): Function deleted.
+       (display_prop_intangible_p): Reimplement to call
+       handle_display_spec instead of single_display_spec_intangible_p.
+       Accept 3 additional arguments needed by handle_display_spec.  This
+       fixes incorrect cursor motion across display property with complex
+       values: lists, `(when COND...)' forms, etc.
+       (single_display_spec_string_p): Support property values that are
+       lists with the argument STRING its top-level element.
+       (display_prop_string_p): Fix the condition for processing a
+       property that is a list to be consistent with handle_display_spec.
+
+       * keyboard.c (adjust_point_for_property): Adjust the call to
+       display_prop_intangible_p to its new signature.
+
+       * dispextern.h (display_prop_intangible_p): Adjust prototype.
+
+2011-05-21  Eli Zaretskii  <eliz@gnu.org>
+
+       * xdisp.c (handle_display_spec): New function, refactored from the
+       last portion of handle_display_prop.
+       (compute_display_string_pos): Accept additional argument
+       FRAME_WINDOW_P.  Call handle_display_spec to determine whether the
+       value of a `display' property is a "replacing spec".
+       (handle_single_display_spec): Accept 2 additional arguments BUFPOS
+       and FRAME_WINDOW_P.  If IT is NULL, don't set up the iterator from
+       the display property, but just return a value indicating whether
+       the display property will replace the characters it covers.
+       (Fcurrent_bidi_paragraph_direction): Initialize the nchars and
+       frame_window_p members of struct bidi_it.
+
+       * bidi.c (bidi_fetch_char): Accept additional argument
+       FRAME_WINDOW_P and pass it to compute_display_string_pos.  All
+       callers changed.
+       (bidi_init_it): Accept additional argument FRAME_WINDOW_P and use
+       it to initialize the frame_window_p member of struct bidi_it.
+
+       * dispextern.h (struct bidi_it): New member frame_window_p.
+       (bidi_init_it, compute_display_string_pos): Update prototypes.
+
+2011-05-14  Eli Zaretskii  <eliz@gnu.org>
+
+       * xdisp.c (compute_display_string_pos): Non-trivial implementation.
+       (compute_display_string_end): New function.
+       (push_it): Accept second argument POSITION, where pop_it should
+       jump to continue iteration.
+
+       * dispextern.h (compute_display_string_end): Declare prototype.
+
+       * bidi.c (bidi_resolve_explicit_1): Use ZV for disp_pos.
+       (bidi_fetch_char): Implement support for runs of characters
+       covered by display strings.
+
+       * bidi.c (bidi_fetch_char): Accept also character position
+       corresponding to BYTEPOS.  DISP_POS is now a character position,
+       not a byte position.  All callers changed.
+       (bidi_cache_iterator_state, bidi_resolve_explicit_1)
+       (bidi_resolve_explicit, bidi_resolve_weak)
+       (bidi_level_of_next_char, bidi_move_to_visually_next): Abort if
+       bidi_it->nchars is non-positive.
+       (bidi_level_of_next_char): Don't try to lookup the cache for the
+       next/previous character if nothing is cached there yet, or if we
+       were just reseat()'ed to a new position.
+       (bidi_paragraph_init, bidi_resolve_explicit_1)
+       (bidi_level_of_next_char): Fix arguments in the calls to
+       bidi_fetch_char.
+
+2011-05-10  Eli Zaretskii  <eliz@gnu.org>
+
+       * xdisp.c (compute_display_string_pos): New function.
+       (reseat_1): Initialize bidi_it.disp_pos.
+
+       * bidi.c (bidi_copy_it): Use offsetof.
+       (bidi_fetch_char, bidi_fetch_char_advance): New functions.
+       (bidi_cache_search, bidi_cache_iterator_state)
+       (bidi_paragraph_init, bidi_resolve_explicit, bidi_resolve_weak)
+       (bidi_level_of_next_char, bidi_move_to_visually_next): Support
+       character positions inside a run of characters covered by a
+       display string.
+       (bidi_paragraph_init, bidi_resolve_explicit_1)
+       (bidi_level_of_next_char): Call bidi_fetch_char and
+       bidi_fetch_char_advance instead of FETCH_CHAR and
+       FETCH_CHAR_ADVANCE.
+       (bidi_init_it): Initialize new members.
+       (LRE_CHAR, RLE_CHAR, PDF_CHAR, LRO_CHAR, RLO_CHAR): Remove macro
+       definitions.
+       (bidi_explicit_dir_char): Lookup character type in bidi_type_table,
+       instead of using explicit *_CHAR codes.
+       (bidi_resolve_explicit, bidi_resolve_weak): Use
+       FETCH_MULTIBYTE_CHAR instead of FETCH_CHAR, as reordering of
+       bidirectional text is supported only in multibyte buffers.
+
+       * dispextern.h (struct bidi_it): New members nchars and disp_pos.
+       ch_len is now EMACS_INT.
+       (compute_display_string_pos): Declare prototype.
+
+2011-05-09  Andreas Schwab  <schwab@linux-m68k.org>
+
+       * w32menu.c (set_frame_menubar): Fix submenu allocation.
+
+2011-05-07  Eli Zaretskii  <eliz@gnu.org>
+
+       * w32console.c (Fset_screen_color): Doc fix.
+       (Fget_screen_color): New function.
+       (syms_of_ntterm): Defsubr it.
+
+       * callproc.c (call_process_cleanup): Don't close and unlink the
+       temporary file if Fcall_process didn't create it in the first
+       place.
+       (Fcall_process): Don't create tempfile if stdout of the child
+       process will be redirected to a file specified with `:file'.
+       Don't try to re-open tempfile in that case, and set fd[0] to -1 as
+       cue to call_process_cleanup not to close that handle.
+
+2011-05-07  Ben Key  <bkey76@gmail.com>
+
+       * makefile.w32-in: The bootstrap-temacs rule now makes use of
+       one of two shell specific rules, either bootstrap-temacs-CMD or
+       bootstrap-temacs-SH.  The bootstrap-temacs-SH rule is identical
+       to the previous implementation of the bootstrap-temacs rule.
+       The bootstrap-temacs-CMD rule is similar to the previous
+       implementation of the bootstrap-temacs rule except that it
+       makes use of the ESC_CFLAGS variable instead of the CFLAGS
+       variable.
+
+       These changes, along with some changes to nt/configure.bat,
+       nt/gmake.defs, and nt/nmake.defs, are required to extend my
+       earlier fix to add support for --cflags and --ldflags options
+       that include quotes so that it works whether make uses cmd or
+       sh as the shell.
+
+2011-05-06  Michael Albinus  <michael.albinus@gmx.de>
+
+       * dbusbind.c (QCdbus_type_unix_fd): Declare static.
+       (xd_remove_watch): Don't check QCdbus_type_unix_fd for SYMBOLP, it
+       is a constant.
+       (Fdbus_init_bus, xd_read_queued_messages): Bus can be a symbol or
+       a string.  Handle both cases.
+       (Fdbus_call_method_asynchronously, Fdbus_register_signal)
+       (Fdbus_register_method): Use Qinvalid_function.
+
+2011-05-06  Juanma Barranquero  <lekktu@gmail.com>
+
+       * makefile.w32-in: Update dependencies.
+       (LISP_H): Add inttypes.h and stdin.h.
+       (PROCESS_H): Add unistd.h.
+
+2011-05-06  Eli Zaretskii  <eliz@gnu.org>
+
+       * lread.c: Include limits.h (fixes the MS-Windows build broken by
+       2011-05-06T07:13:19Z!eggert@cs.ucla.edu).
+
+2011-05-06  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * image.c (Finit_image_library) [!HAVE_NTGUI]: Omit unused local.
+
+       * term.c (vfatal): Remove stray call to va_end.
+       It's not needed and the C Standard doesn't allow it here anyway.
+
+       Use C99's va_copy to avoid undefined behavior on x86-64 GNU/Linux.
+       * eval.c (verror): doprnt a copy of ap, not the original.  (Bug#8545)
+
+       * eval.c (verror): OK to create a string of up to MOST_POSITIVE_FIXNUM
+       bytes.
+
+       * term.c: Don't include <stdarg.h>, as <lisp.h> does that.
+
+       * callproc.c (Fcall_process): Use 'volatile' to avoid vfork clobbering.
+
+       * process.c (Fformat_network_address): Fix typo: args2 -> *args2.
+
+       * xmenu.c (set_frame_menubar): Fix typo: int * -> int (3 times).
+
+       * coding.c (detect_coding_charset): Fix typo: * 2 -> *4 (Bug#8601).
+
+       * charset.h (struct charset.code_space): Now has 15 elements, not 16.
+       * charset.c (Fdefine_charset_internal): Don't initialize
+       charset.code_space[15].  The value was garbage, on hosts with
+       32-bit int (Bug#8600).
+
+       * lread.c (read_integer): Be more consistent with string-to-number.
+       Use string_to_number to do the actual conversion; this avoids
+       rounding errors and fixes some other screwups.  Without this fix,
+       for example, #x1fffffffffffffff was misread as -2305843009213693952.
+       (digit_to_number): Move earlier, for benefit of read_integer.
+       Return -1 if the digit is out of range for the base, -2 if it is
+       not a digit in any supported base.  (Bug#8602)
+
+       * doprnt.c (doprnt): Support arbitrary pI values, such as "I64".
+
+       * dispnew.c (scrolling_window): Return 1 if we scrolled,
+       to match comment at start of function.  This also removes a
+       GCC warning about overflow in a 32+64-bit port.
+
+       * lisp.h (EMACS_INT, EMACS_UINT, BITS_PER_EMACS_INT, pI): Simplify.
+
+       * dbusbind.c: Do not use XPNTR on a value that may be an integer.
+       Reported by Stefan Monnier in
+       <http://lists.gnu.org/archive/html/emacs-devel/2011-04/msg00919.html>.
+       (xd_remove_watch, Fdbus_init_bus, xd_read_queued_messages): Use
+       SYMBOLP-guarded XSYMBOL, not XPNTR.
+
+       * lisp.h (EMACS_INTPTR): Remove.  All uses changed to intptr_t.
+       (EMACS_UINTPTR): Likewise, with uintptr_t.
+
+       * lisp.h: Prefer 64-bit EMACS_INT if available.
+       (EMACS_INT, EMACS_UINT, BITS_PER_EMACS_INT, pI): Define to 64-bit
+       on 32-bit hosts that have 64-bit int, so that they can access
+       large files.
+       However, temporarily disable this change unless the temporary
+       symbol WIDE_EMACS_INT is defined.
+
+       * lread.c, process.c: Do not include <inttypes.h>; lisp.h does it now.
+
+       Prefer intptr_t/uintptr_t for integers the same widths as pointers.
+       This removes an assumption that EMACS_INT and long are the same
+       width as pointers.  The assumption is true for Emacs porting targets
+       now, but we want to make other targets possible.
+       * lisp.h: Include <inttypes.h>, for INTPTR_MAX, UINTPTR_MAX.
+       (EMACS_INTPTR, EMACS_UINTPTR): New macros.
+       In the rest of the code, change types of integers that hold casted
+       pointers to EMACS_INTPTR and EMACS_UINTPTR, systematically
+       replacing EMACS_INT, long, EMACS_UINT, and unsigned long.
+       (XTYPE): Don't cast arg to EMACS_UINT; normally is not needed.
+       (XSET): Cast type of XTYPE arg to EMACS_INTPTR; it is needed here.
+       No need to cast type when ORing.
+       (XPNTR): Return a value of type EMACS_INTPTR or EMACS_UINTPTR.
+       * alloc.c (lisp_align_malloc): Remove a no-longer-needed cast.
+       * doc.c (store_function_docstring): Use EMACS_INTPTR, so as not to
+       assume EMACS_INT is the same width as char *.
+       * gtkutil.c (xg_gtk_scroll_destroy, xg_tool_bar_button_cb):
+       (xg_tool_bar_callback, xg_tool_bar_help_callback, xg_make_tool_item):
+       Remove no-longer-needed casts.
+       (xg_create_scroll_bar, xg_tool_bar_button_cb, xg_tool_bar_callback):
+       (xg_tool_bar_help_callback, xg_make_tool_item):
+       Use EMACS_INTPTR to hold an integer
+       that will be cast to void *; this can avoid a GCC warning
+       if EMACS_INT is not the same width as void *.
+       * menu.c (find_and_call_menu_selection): Remove no-longer-needed cast.
+       * xdisp.c (display_echo_area_1, resize_mini_window_1):
+       (current_message_1, set_message_1):
+       Use a local to convert to proper width without a cast.
+       * xmenu.c (dialog_selection_callback): Likewise.
+
+       * sysdep.c (get_random): Don't assume EMACS_INT is no wider than long.
+       Also, don't assume VALBITS / RAND_BITS is less than 5,
+       and don't rely on undefined behavior when shifting a 1 left into
+       the sign bit.
+       * lisp.h (get_random): Change signature to match.
+
+       * lread.c (hash_string): Use size_t, not int, for hash computation.
+       Normally we prefer signed values; but hashing is special, because
+       it's better to use unsigned division on hash table sizes so that
+       the remainder is nonnegative.  Also, size_t is the natural width
+       for hashing into memory.  The previous code used 'int', which doesn't
+       retain enough info to hash well into very large tables.
+       (oblookup, oblookup_last_bucket_number, Funintern): Likewise.
+
+       * dbusbind.c: Don't possibly lose pointer info when converting.
+       (xd_remove_watch, Fdbus_init_bus, xd_read_queued_messages):
+       Use XPNTR rather than XHASH, so that the high-order bits of
+       the pointer aren't lost when converting through void *.
+
+       * eval.c (Fautoload): Don't double-shift a pointer.
 
        * fns.c (Frandom): Let EMACS_UINT be wider than unsigned long.
 
+2011-05-06  Juanma Barranquero  <lekktu@gmail.com>
+
+       * gnutls.c (DEF_GNUTLS_FN):
+       * image.c (DEF_IMGLIB_FN): Make function pointers static.
+
+2011-05-05  Andreas Schwab  <schwab@linux-m68k.org>
+
+       * lread.c (lisp_file_lexically_bound_p): Stop scanning at end
+       marker.  (Bug#8610)
+
+2011-05-05 Eli Zaretskii  <eliz@gnu.org>
+
+       * w32heap.c (allocate_heap) [USE_LISP_UNION_TYPE || USE_LSB_TAG]:
+       New version that can reserve upto 2GB of heap space.
+
+2011-05-05  Chong Yidong  <cyd@stupidchicken.com>
+
+       * nsfns.m (Fns_read_file_name): Doc fix (Bug#8534).
+
+2011-05-05  Teodor Zlatanov  <tzz@lifelogs.com>
+
+       * gnutls.c (fn_gnutls_certificate_set_x509_key_file): Add alias to
+       `gnutls_certificate_set_x509_key_file'.
+
+2011-05-05  Juanma Barranquero  <lekktu@gmail.com>
+
+       * makefile.w32-in ($(BLD)/image.$(O), $(BLD)/process.$(O)):
+       Update dependencies.
+
+2011-05-04  Juanma Barranquero  <lekktu@gmail.com>
+
+       * gnutls.h (emacs_gnutls_write, emacs_gnutls_read):
+       * gnutls.c (emacs_gnutls_write, emacs_gnutls_read):
+       Remove unused parameter `fildes'.
+       * process.c (read_process_output, send_process): Don't pass it.
+
+2011-05-04  Juanma Barranquero  <lekktu@gmail.com>
+
+       Fix previous change: the library cache is defined in w32.c.
+       * image.c (CACHE_IMAGE_TYPE) [!HAVE_NTGUI]: Define to noop.
+       (Finit_image_library): Wrap Vlibrary_cache on "#ifdef HAVE_NTGUI".
+
+2011-05-04  Juanma Barranquero  <lekktu@gmail.com>
+
+       Implement dynamic loading of GnuTLS on Windows.
+
+       * gnutls.h (GNUTLS_EMACS_ERROR_NOT_LOADED): New macro.
+       (emacs_gnutls_write, emacs_gnutls_read): Mark as extern.
+       (emacs_gnutls_record_check_pending, emacs_gnutls_transport_set_errno):
+       Declare.
+
+       * gnutls.c (Qgnutls_dll): Define.
+       (DEF_GNUTLS_FN, LOAD_GNUTLS_FN): New macros.
+       (gnutls_*): Declare function pointers.
+       (init_gnutls_functions): New function to initialize function pointers.
+       (emacs_gnutls_handshake, Fgnutls_error_string, Fgnutls_deinit)
+       (emacs_gnutls_global_init, Fgnutls_bye): Use function pointers.
+       (emacs_gnutls_record_check_pending, emacs_gnutls_transport_set_errno):
+       Wrappers for gnutls_record_check_pending and gnutls_transport_set_errno.
+       (emacs_gnutls_write, emacs_gnutls_read)
+       (emacs_gnutls_handle_error, Fgnutls_error_fatalp)
+       (Fgnutls_available_p): New function.
+       (Fgnutls_boot): Call Fgnutls_available_p.  Use function pointers.
+       (syms_of_gnutls) <Qgnutls_dll>: Initialize and staticpro it.
+       (syms_of_gnutls) <Sgnutls_available_p>: defsubr it.
+
+       * image.c: Include w32.h.
+       (Vimage_type_cache): Delete.
+       (syms_of_image) <Vimage_type_cache>: Don't initialize and staticpro it.
+       (CACHE_IMAGE_TYPE, Finit_image_library): Use Vlibrary_cache instead.
+       (w32_delayed_load): Move to w32.c.
+
+       * w32.h (VlibraryCache, QCloaded_from, w32_delayed_load): Declare.
+
+       * w32.c (QCloaded_from, Vlibrary_cache): Define.
+       (w32_delayed_load): Move from image.c.  When loading a library, record
+       its filename in the :loaded-from property of the library id.
+       (globals_of_w32) <QCloaded_from, Vlibrary_cache>:
+       Initialize and staticpro them.
+       (emacs_gnutls_pull, emacs_gnutls_push): Call emacs_gnutls_* functions.
+
+       * process.c: Include lisp.h before w32.h, not after.
+       (wait_reading_process_output): Call emacs_gnutls_record_check_pending
+       instead of gnutls_record_check_pending.
+
+       * callproc.c, emacs.c: Include lisp.h before w32.h, not after.
+
+2011-05-04  Teodor Zlatanov  <tzz@lifelogs.com>
+
+       * gnutls.c (Fgnutls_boot): Support :keylist and :crlfiles options
+       instead of :keyfiles.  Give GnuTLS the keylist and the CRL lists
+       as passed in.
+
+2011-05-03  Jan Djärv  <jan.h.d@swipnet.se>
+
+       * xterm.c (x_set_frame_alpha): Do not set property on anything
+       else than FRAME_X_OUTER_WINDOW (Bug#8608).
+
+2011-05-02  Juanma Barranquero  <lekktu@gmail.com>
+
+       * sysdep.c (get_tty_size) [WINDOWSNT]: Implement.  (Bug#8596)
+
+2011-05-02  Juanma Barranquero  <lekktu@gmail.com>
+
+       * gnutls.c (Qgnutls_log_level, Qgnutls_code, Qgnutls_anon)
+       (Qgnutls_x509pki, Qgnutls_e_interrupted, Qgnutls_e_again)
+       (Qgnutls_e_invalid_session, Qgnutls_e_not_ready_for_handshake)
+       (gnutls_global_initialized, Qgnutls_bootprop_priority)
+       (Qgnutls_bootprop_trustfiles, Qgnutls_bootprop_keyfiles)
+       (Qgnutls_bootprop_callbacks, Qgnutls_bootprop_loglevel)
+       (Qgnutls_bootprop_hostname, Qgnutls_bootprop_verify_flags)
+       (Qgnutls_bootprop_verify_error, Qgnutls_bootprop_verify_hostname_error)
+       (Qgnutls_bootprop_callbacks_verify): Make static.
+
+2011-05-01  Andreas Schwab  <schwab@linux-m68k.org>
+
+       * callproc.c: Indentation fixup.
+
+       * sysdep.c (wait_for_termination_1): Make static.
+       (wait_for_termination, interruptible_wait_for_termination): Move
+       after wait_for_termination_1.
+
+2011-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
+
+       * sysdep.c (interruptible_wait_for_termination): New function
+       which is like wait_for_termination, but allows keyboard
+       interruptions.
+
+       * callproc.c (Fcall_process): Add (:file "file") as an option for
+       the STDOUT buffer.
+       (Fcall_process_region): Ditto.
+
+2011-04-30  Eli Zaretskii  <eliz@gnu.org>
+
+       * dosfns.c (Fint86, Fdos_memget, Fdos_memput): Use `ASIZE (FOO)'
+       rather than `XVECTOR (FOO)->size'.
+
+       * process.c: Remove HAVE_INTTYPES_H condition from inclusion of
+       inttypes.h, as a gnulib replacement is used if it not available in
+       system headers.
+
+2011-04-21  Eli Zaretskii  <eliz@gnu.org>
+
+       Lift the MOST_POSITIVE_FIXNUM/4 limitation on visited files.
+       * fileio.c (Finsert_file_contents): Don't limit file size to 1/4
+       of MOST_POSITIVE_FIXNUM.  (Bug#8528)
+
+       * coding.c (coding_alloc_by_realloc): Error out if destination
+       will grow beyond MOST_POSITIVE_FIXNUM.
+       (decode_coding_emacs_mule): Abort if there isn't enough place in
+       charbuf for the composition carryover bytes.  Reserve an extra
+       space for up to 2 characters produced in a loop.
+       (decode_coding_iso_2022): Abort if there isn't enough place in
+       charbuf for the composition carryover bytes.
+
+2011-04-21  Eli Zaretskii  <eliz@gnu.org>
+
+       * doprnt.c (doprnt) [!HAVE_LONG_LONG_INT]: Error out instead of
+       aborting when %lld or %lll format is passed.
+       [!HAVE_UNSIGNED_LONG_LONG_INT]: Error out instead of aborting when
+       %llo or %llx format is passed.  (Bug#8545)
+
+       * window.c (window_scroll_line_based): Use a marker instead of
+       simple variables to record original value of point.  (Bug#7952)
+
+       * doprnt.c (doprnt): Fix the case where a multibyte sequence
+       produced by %s or %c overflows available buffer space.  (Bug#8545)
+
+2011-04-28  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * doprnt.c (doprnt): Omit useless test; int overflow check (Bug#8545).
+       (SIZE_MAX): Move defn after all includes, as they might #define it.
+
+2011-04-28  Juanma Barranquero  <lekktu@gmail.com>
+
+       * w32.c (init_environment): Warn about defaulting HOME to C:\.
+
+2011-04-28  Juanma Barranquero  <lekktu@gmail.com>
+
+       * keyboard.c (Qdelayed_warnings_hook): Define.
+       (command_loop_1): Run `delayed-warnings-hook'
+       if Vdelayed_warnings_list is non-nil.
+       (syms_of_keyboard) <delayed-warnings-hook>: DEFSYM it.
+       (syms_of_keyboard) <delayed-warnings-list>: DEFVAR_LISP it.
+
+2011-04-28  Eli Zaretskii  <eliz@gnu.org>
+
+       * doprnt.c (doprnt): Don't return value smaller than the buffer
+       size if the message was truncated.  (Bug#8545).
+
+2011-04-28  Juanma Barranquero  <lekktu@gmail.com>
+
+       * w32fns.c (Fx_change_window_property, Fx_delete_window_property)
+       (Fx_window_property): #if-0 the whole functions, not just the bodies.
+
 2011-04-27  Paul Eggert  <eggert@cs.ucla.edu>
 
        * doprnt.c (doprnt): Support "ll" length modifier, for long long.