+2012-07-17 Eli Zaretskii <eliz@gnu.org>
+
+ Remove FILE_SYSTEM_CASE.
+ * s/msdos.h (FILE_SYSTEM_CASE): Don't define.
+
+ * fileio.c (FILE_SYSTEM_CASE): Don't define.
+ (Ffile_name_directory, Fexpand_file_name): Don't use FILE_SYSTEM_CASE.
+ Fixes problems on MS-DOS with Vtemp_file_name_pattern when
+ call-process-region passes it through expand-file-name.
+
+ * dired.c (file_name_completion): Don't use FILE_SYSTEM_CASE.
+
+2012-07-17 Andreas Schwab <schwab@linux-m68k.org>
+
+ Fix crash when creating indirect buffer (Bug#11917)
+ * buffer.c (buffer_lisp_local_variables): Add argument CLONE.
+ Don't handle unbound variables specially if non-zero.
+ (Fbuffer_local_variables): Pass zero.
+ (clone_per_buffer_values): Pass non-zero.
+
+2012-07-17 Andreas Schwab <schwab@linux-m68k.org>
+
+ * gnutls.c (emacs_gnutls_handshake): Revert last change. Add QUIT
+ to make the loop interruptible.
+
+2012-07-17 Andreas Schwab <schwab@linux-m68k.org>
+
+ * gnutls.c (emacs_gnutls_handshake): Only retry if
+ GNUTLS_E_INTERRUPTED.
+
+2012-07-17 Eli Zaretskii <eliz@gnu.org>
+2012-07-17 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Cleanup and convert miscellaneous checks to eassert.
+ * alloc.c (mark_interval): Fix comment, partially rephrase
+ old comment from intervals.h (see below).
+ * intervals.c (find_interval, adjust_intervals_for_insertion)
+ (delete_interval, adjust_intervals_for_deletion)
+ (graft_intervals_into_buffer, temp_set_point_both, copy_intervals):
+ Convert to eassert.
+ (adjust_intervals_for_insertion, make_new_interval):
+ Remove obsolete and unused code.
+ * intervals.h (struct interval): Remove obsolete comment.
+ * textprotp.c (erase_properties): Remove unused code.
+ (Fadd_text_properties, set_text_properties_1, Fremove_text_properties)
+ (Fremove_list_of_text_properties): Convert to eassert.
+
+2012-07-17 Chong Yidong <cyd@gnu.org>
+
+ * editfns.c (Finsert_char): Doc fix.
+
+2012-07-17 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Fix previous change to make Fmemory_free always accurate.
+ * alloc.c (make_interval): Update total_free_intervals.
+ (make_float): Likewise for total_free_floats.
+ (free_cons, Fcons): Likewise for total_free_conses.
+ (SETUP_ON_FREE_LIST, allocate_vector_from_block):
+ Likewise for total_free_vector_bytes.
+ (Fmake_symbol): Likewise for total_free_symbols.
+ (bytes_free): Remove.
+
+2012-07-17 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Simple free memory accounting feature.
+ * alloc.c (bytes_free, total_free_vector_bytes): New variable.
+ (sweep_vectors): Accumulate size of free vectors.
+ (Fgarbage_collect): Setup bytes_free.
+ (Fmemory_free): New function.
+ (syms_of_alloc): Register it.
+
+2012-07-17 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Cleanup overlays checking.
+ * buffer.h (OVERLAY_VALID): Remove as useless synonym of OVERLAYP.
+ * buffer.c (overlay_touches_p, recenter_overlay_lists): Change to
+ eassert and OVERLAYP.
+ (sort_overlays): Change to use OVERLAYP.
+
+2012-07-16 René Kyllingstad <Rene@Kyllingstad.com> (tiny change)
+
+ * editfns.c (Finsert_char): Make it interactive, and make the
+ second arg optional. Copy interactive spec and docstring from
+ ucs-insert.
+
+2012-07-17 Paul Eggert <eggert@cs.ucla.edu>
+
+ * floatfns.c (Fabs): Do not wrap fabs inside IN_FLOAT (Bug#11913).
+ Unlike the other wrapped functions, fabs has an unspecified
+ effect on errno.
+
+2012-07-16 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsterm.m (keyDown): Interpret flags without left/right bits
+ as the left key (Bug#11670).
+
+2012-07-16 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Remove empty and useless init functions.
+ * lisp.h (init_character_once, init_fns, init_image)
+ (init_filelock, init_sound): Remove prototype.
+ * character.c (init_character_once): Remove.
+ * filelock.c (init_filelock): Likewise.
+ * fns.c (init_fns): Likewise.
+ * image.c (init_image): Likewise.
+ * sound.c (init_sound): Likewise.
+ * emacs.c (main): Adjust accordingly.
+
+2012-07-16 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * gtkutil.h: Tiny cleanups.
+ (use_old_gtk_file_dialog): Remove useless declaration.
+ (xg_uses_old_file_dialog): Add suggested const attribute.
+
+2012-07-15 Eli Zaretskii <eliz@gnu.org>
+
+ * bidi.c (MAX_STRONG_CHAR_SEARCH): New macro.
+ (bidi_paragraph_init): Use it to limit search forward for a strong
+ directional character in abnormally large paragraphs full of
+ neutral or weak characters. (Bug#11943)
+
+2012-07-15 Stefano Facchini <stefano.facchini@gmail.com> (tiny change)
+
+ * gtkutil.c (xg_create_tool_bar): Apply "primary-toolbar" style to
+ the toolbar (Bug#9451).
+ (xg_make_tool_item): Give the widget event box a transparent
+ background.
+
+2012-07-15 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Cleanup basic allocation variables and functions.
+ * alloc.c (ignore_warnings, init_intervals, init_float)
+ (init_cons, init_symbol, init_marker): Remove.
+ (interval_block_index): Initialize to INTERVAL_BLOCK_SIZE.
+ (float_block_index): Initialize to FLOAT_BLOCK_SIZE.
+ (cons_block_index): Initialize to CONS_BLOCK_SIZE.
+ (symbol_block_size): Initialize to SYMBOL_BLOCK_SIZE.
+ (marker_block_index): Initialize to MARKER_BLOCK_SIZE.
+ (staticidx, init_alloc_once, init_strings, free_ablock):
+ Remove redundant initialization.
+ * fns.c (init_weak_hash_tables): Remove.
+ * lisp.h (init_weak_hash_tables): Remove prototype.
+
+2012-07-15 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Use zero_vector where appropriate.
+ * alloc.c (zero_vector): Define as Lisp_Object. Adjust users
+ accordingly.
+ * lisp.h (zero_vector): New declaration.
+ * font.c (null_vector): Remove.
+ (syms_of_font): Remove initialization and staticpro.
+ (font_list_entities, font_find_for_lface): Change to use zero_vector.
+ * keymap.c (Faccessible_keymaps): Likewise.
+
+2012-07-15 Leo Liu <sdl.web@gmail.com>
+
+ * fringe.c: Fix typo in comments.
+
+2012-07-14 Leo Liu <sdl.web@gmail.com>
+
+ * fringe.c: Add a new bitmap exclamation-mark.
+
+2012-07-14 Eli Zaretskii <eliz@gnu.org>
+
+ * gmalloc.c (GMALLOC_INHIBIT_VALLOC): Don't reference.
+
+ * s/msdos.h (BSD_SYSTEM, DATA_START, GC_SETJMP_WORKS, HAVE_MOUSE)
+ (HAVE_MENUS): Don't define, defined by editing config.in with
+ msdos/sed2v2.inp.
+ (GMALLOC_INHIBIT_VALLOC): Don't define.
+ (MODE_LINE_BINARY_TEXT): Remove, not used anymore.
+
+2012-07-14 Juanma Barranquero <lekktu@gmail.com>
+
+ * s/ms-w32.h (GC_SETJMP_WORKS, GC_MARK_STACK): Set in nt/config.nt.
+
+2012-07-14 Glenn Morris <rgm@gnu.org>
+
+ * s/aix4-2.h, s/freebsd.h, s/gnu-linux.h, s/hpux10-20.h:
+ * s/irix6-5.h, s/netbsd.h, s/sol2-6.h, s/unixware.h:
+ Let configure set GC_SETJMP_WORKS, GC_MARK_STACK.
+
+2012-07-13 Glenn Morris <rgm@gnu.org>
+
+ * s/gnu-linux.h (GC_MARK_SECONDARY_STACK): Let configure set it.
+
+ * s/usg5-4-common.h (SETUP_SLAVE_PTY): Let configure set it.
+ * s/irix6-5.h (SETUP_SLAVE_PTY): No more need to unset it.
+
+2012-07-13 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsterm.m (uRect): Only define if NS_IMPL_GNUSTEP.
+ (x_free_frame_resources): Pass x_free_frame_resources to NSTRACE.
+ (ns_lisp_to_color, ns_string_to_lispmod, ns_term_init)
+ (ns_term_shutdown, requestService, initFrameFromEmacs): Use SSDATA
+ where appropriate.
+ (ns_exec_path, ns_load_path, changeFont): Put () around assignment used
+ as boolean expression.
+ (x_set_window_size): Remove unused variable toolbar.
+ (ns_get_color_default, ns_mod_to_lisp): Remove.
+ (ns_mouse_position): Remove unused variables xchar and ychar.
+ (ns_compute_glyph_string_overhangs): Remove unused variable face.
+ (ns_set_vertical_scroll_bar): Remove unused variable count.
+ (ns_delete_terminal): Remove unused variable i.
+ (ns_term_init): Remove unused variables r, g and b.
+ (mouseDown): Remove unused variable window.
+ (windowDidResize): Move definition of theWindow inside NS_IMPL_GNUSTEP.
+ (initFrameFromEmacs): Remove unused variable vbextra.
+ (mouseEntered): Remove unused variables p and dpyinfo.
+ (mouseExited): Remove unused variables p and r.
+ (ns_define_frame_cursor, ns_clear_frame_area)
+ (ns_draw_window_cursor, ns_initialize_display_info): Make static.
+ (menuDown): Assign [sender tag] to variable and cast the variable.
+
+ * nsterm.h (menuDown): Add id as type to argument sender.
+ (ns_display_info_for_name): Add Lisp_Object argument.
+ (ns_term_init): Add Lisp_Object argument.
+ (ns_map_event_to_object): Add void argument.
+ (ns_string_from_pasteboard, ns_string_to_pasteboard): Add correct
+ prototype with arguments and only declare if __OBJC__.
+ (nxatoms_of_nsselect): Add void argument.
+ (ns_lisp_to_cursor_type): Add Lisp_Object argument.
+ (ns_alloc_autorelease_pool): Add void argument.
+ (ns_release_autorelease_pool): Add void* argument.
+ (ns_get_defaults_value): Add const char* argument.
+
+ * nsmenu.m (ns_update_menubar, ns_menu_show, process_dialog)
+ (initFromContents): Use SSDATA where appropriate.
+ (ns_update_menubar): Add braces to ambigous if-else.
+ (initWithTitle): Put () around assignment in if statement.
+ (ns_menu_show): Remove unused variables window and keymap.
+ (update_frame_tool_bar): Remove unused variable selected_p.
+ (initWithContentRect): Remove unused variable this_cmd_name.
+
+ * nsimage.m (ns_load_image, allocInitFromFile): Use SSDATA where
+ appropriate.
+ (setXBMColor): Remove unused variable len.
+ (setPixmapData): Put () around assignment in loop statement.
+
+ * nsfont.m (ns_get_family, ns_lang_to_script, ns_otf_to_script)
+ (ns_registry_to_script, ns_get_req_script, nsfont_open): Use SSDATA
+ where appropriate.
+ (ns_get_covering_families, ns_findfonts, nsfont_list_family): Put ()
+ around assignment in loop statement.
+ (nsfont_open): Remove unused variable i.
+ (nsfont_open): Remove unused variable len.
+ (nsfont_draw): Remove unused variable cs.
+
+ * nsfns.m (x_set_icon_name, ns_set_name_internal)
+ (ns_set_name_as_filename, ns_implicitly_set_icon_type)
+ (x_set_icon_type, ns_lisp_to_cursor_type, Fns_read_file_name)
+ (Fns_get_resource, Fns_set_resource, Fx_open_connection)
+ (Fns_font_name, Fns_perform_service)
+ (Fns_convert_utf8_nfd_to_nfc, ns_do_applescript)
+ (Fns_do_applescript, Fx_show_tip): Use SSDATA where appropriate.
+ (ns_set_name): Remove unused variable view.
+ (x_set_menu_bar_lines): Remove unused variable olines.
+ (x_set_tool_bar_lines): Remove unused variable root_window.
+ (Fns_list_colors): Put () around assignment in while statement.
+ (Fns_perform_service): Remove unused variable len.
+ (Fns_display_usable_bounds): Remove unused variable top.
+ (syms_of_nsfns): Remove unused variable i.
+
+ * nsmenu.m (ns_update_menubar): Exchange place of argument 2 and 3 to
+ memcpy (Bug#11907).
+
+2012-07-13 Kalle Kankare <kalle.kankare@iki.fi> (tiny change)
+
+ * image.c (Fimagemagick_types): Initialize ex with GetExceptionInfo
+ and free it with DestroyExceptionInfo (Bug#11558).
+
+2012-07-13 Juanma Barranquero <lekktu@gmail.com>
+
+ * s/ms-w32.h (FIRST_PTY_LETTER, HAVE_SOCKETS): Move to nt/config.nt.
+ (HAVE_ATTRIBUTE_ALIGNED, HAVE_C99_STRTOLD, HAVE___BUILTIN_UNWIND_INIT):
+ Set here, not in nt/config.nt.
+
+2012-07-13 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (move_it_in_display_line_to): On GUI terminals, allow
+ cursor overflow into the last glyph on display line when the right
+ fringe is off. (Bug#11832)
+
+2012-07-13 Paul Eggert <eggert@cs.ucla.edu>
+
+ * xdisp.c (produce_special_glyphs): Now static.
+ * dispextern.h (produce_special_glyphs): Remove decl.
+
+2012-07-13 Glenn Morris <rgm@gnu.org>
+
+ * s/bsd-common, s/cygwin.h: Remove empty files.
+ * s/freebsd.h, s/netbsd.h: Do not include bsd-common.h.
+
+ * s/usg5-4-common.h (USG, USG5):
+ * s/template.h (USG5, USG, HPUX, BSD4_2, BSD_SYSTEM):
+ * s/sol2-6.h (SOLARIS2):
+ * s/irix6-5.h (IRIX6_5):
+ * s/hpux10-20.h (USG, USG5, HPUX):
+ * s/gnu-linux.h (USG, GNU_LINUX):
+ * s/freebsd.h (BSD_SYSTEM):
+ * s/darwin.h (BSD4_2, BSD_SYSTEM, DARWIN_OS):
+ * s/cygwin.h (CYGWIN):
+ * s/bsd-common.h (BSD_SYSTEM, BSD4_2):
+ * s/aix4-2.h (USG, USG5, _AIX): Move "system type" macros to configure.
+
+2012-07-13 BT Templeton <bpt@hcoop.net> (tiny change)
+
+ * nsfont.m (ns_charset_covers): Don't abort if no bitmap (Bug#11853).
+
+2012-07-13 Glenn Morris <rgm@gnu.org>
+
+ * s/usg5-4-common.h (NSIG_MINIMUM): Let configure set it.
+
+ * s/gnu-linux.h, s/irix6-5.h: Let configure set ULIMIT_BREAK_VALUE.
+
+ * process.c (init_process_emacs): Replace MIN_PTY_KERNEL_VERSION.
+ * s/darwin.h (MIN_PTY_KERNEL_VERSION): Remove single-use macro.
+
+2012-07-12 Glenn Morris <rgm@gnu.org>
+
+ * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Move to configure.
+
+ * process.c (init_process_emacs): Rename from init_process.
+ The old name is also the name of a Mach system call.
+ * lisp.h, emacs.c: Update for this name change.
+ * nsgui.h, sysselect.h, s/darwin.h: Remove workaround that is no
+ longer needed.
+
+2012-07-12 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (insert_left_trunc_glyphs): Fix incorrect size in
+ memmove call that removes glyphs covered by the left truncation
+ glyph. Improve commentary.
+ (display_line): Fix display of continuation glyphs on GUI frames
+ when the right fringe is turned off and variable-size fonts are
+ used in the window. Move the code that appends a stretch glyph to
+ produce_special_glyphs, so that it could be used for truncation
+ and continuation glyphs alike.
+ (produce_special_glyphs) [HAVE_WINDOW_SYSTEM]: Produce a stretch
+ glyph of a suitably computed width, to align the special glyphs at
+ the window margin. Code moved from display_line. (Bug#11832)
+
+2012-07-12 Glenn Morris <rgm@gnu.org>
+
+ * s/aix4-2.h, s/hpux10-20.h: Let configure set NO_EDITRES.
+
+ * s/gnu-linux.h, s/hpux10-20.h:
+ Do not unconditionally define HAVE_XRMSETDATABASE.
+
+ * s/gnu-linux.h (UNIX98_PTYS): Let configure set it.
+
+2012-07-12 Paul Eggert <eggert@cs.ucla.edu>
+
+ Fix typos that broke OS X build.
+ Reported by Randal L. Schwartz in
+ <http://lists.gnu.org/archive/html/emacs-devel/2012-07/msg00225.html>.
+ * nsterm.m (ns_timeout): Add missing local decl.
+ (ns_get_color): snprintf -> sprintf, to fix typo.
+
+2012-07-12 Glenn Morris <rgm@gnu.org>
+
+ * src/s/aix4-2.h, src/s/cygwin.h, src/s/darwin.h:
+ * src/s/gnu-linux.h, src/s/hpux10-20.h, src/s/irix6-5.h:
+ * src/s/sol2-6.h, src/s/unixware.h, src/s/usg5-4-common.h:
+ Move PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF to configure.
+
+ * s/cygwin.h, s/darwin.h, s/gnu-linux.h, s/irix6-5.h:
+ Move PTY_OPEN to configure.
+
+ * s/aix4-2.h, s/bsd-common.h, s/cygwin.h, s/darwin.h:
+ * s/gnu-linux.h, s/hpux10-20.h, s/irix6-5.h, s/template.h:
+ * s/usg5-4-common.h: Move FIRST_PTY_LETTER, PTY_ITERATION to configure.
+
+2012-07-12 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Use empty_unibyte_string where applicable.
+ * keyboard.c (parse_tool_bar_item): Use empty_unibyte_string.
+ * lread.c (read1): Likewise.
+ * xsettings.c (syms_of_xsettings): Likewise.
+
+2012-07-12 Glenn Morris <rgm@gnu.org>
+
+ * s/cygwin.h (G_SLICE_ALWAYS_MALLOC):
+ * s/freebsd.h (BROKEN_PTY_READ_AFTER_EAGAIN):
+ * s/irix6-5.h (SETPGRP_RELEASES_CTTY, PREFER_VSUSP):
+ * s/hpux10-20.h (RUN_TIME_REMAP):
+ * s/bsd-common.h (TABDLY): Move to configure.
+
+ * s/hpux10-20.h, s/sol2-6.h: Move XOS_NEEDS_TIME_H to configure.
+
+ * s/bsd-common.h, s/darwin.h: Move TAB3 to configure.
+
+ * s/aix4-2.h (BROKEN_FIONREAD, BROKEN_SIGAIO, BROKEN_SIGPTY)
+ (BROKEN_SIGPOLL, BROKEN_GET_CURRENT_DIR_NAME): Let configure set them.
+
+ * s/darwin.h (NO_ABORT, NO_MATHERR): Let configure set them.
+
+ * s/bsd-common.h, s/cygwin.h, s/gnu-linux.h, s/irix6-5.h:
+ * s/template.h: Move NARROWPROTO to configure.
+
+2012-07-11 Glenn Morris <rgm@gnu.org>
+
+ * s/gnu-linux.h, s/sol2-6.h: No longer define POSIX,
+ unused since 2011-01-17 change to systty.h.
+
+ * s/aix4-2.h, s/bsd-common.h, s/cygwin.h, s/darwin.h, s/gnu-linux.h:
+ * s/hpux10-20.h, s/template.h, s/usg5-4-common.h:
+ Move HAVE_PTYS and HAVE_SOCKETS to configure.
+
+2012-07-11 Paul Eggert <eggert@cs.ucla.edu>
+
+ * s/sol2-6.h (HAVE_LIBKSTAT): Remove. (Bug#11914)
+
+2012-07-11 Glenn Morris <rgm@gnu.org>
+
+ * s/darwin.h, s/gnu-linux.h, s/template.h:
+ Move INTERRUPT_INPUT to configure.
+
+2012-07-11 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Minor adjustments to interning code.
+ * lisp.h (intern, intern_c_string): Redefine as static inline
+ wrappers for intern_1 and intern_c_string_1, respectively.
+ (intern_1, intern_c_string_1): Rename prototypes.
+ * lread.c (intern_1, intern_c_string_1, oblookup): Simplify
+ Vobarray checking.
+ * font.c (font_intern_prop): Likewise. Adjust comment.
+ * w32font.c (intern_font_name): Likewise.
+
+2012-07-11 Andreas Schwab <schwab@linux-m68k.org>
+
+ * gnutls.c (Fgnutls_boot): Properly parse :keylist argument.
+
+ * coding.c (Fdefine_coding_system_internal): Use XCAR/XCDR instead
+ of Fcar/Fcdr if possible.
+ * font.c (check_otf_features): Likewise.
+ * fontset.c (Fnew_fontset): Likewise.
+ * gnutls.c (Fgnutls_boot): Likewise.
+ * minibuf.c (read_minibuf): Likewise.
+ * msdos.c (IT_set_frame_parameters): Likewise.
+ * xmenu.c (Fx_popup_dialog): Likewise.
+ * w32menu.c (Fx_popup_dialog): Likewise.
+
+2012-07-11 Glenn Morris <rgm@gnu.org>
+
+ * s/bsd-common.h, s/cygwin.h: No need to undefine INTERRUPT_INPUT,
+ since nothing has defined it on these platforms.
+
+ * s/aix4-2.h, s/bsd-common.h, s/cygwin.h, s/gnu-linux.h:
+ * s/irix6-5.h: Move SIGNALS_VIA_CHARACTERS to configure.
+
+ * s/aix4-2.h, s/bsd-common.h, s/cygwin.h, s/darwin.h:
+ * s/gnu-linux.h, s/hpux10-20.h, s/template.h, s/usg5-4-common.h:
+ Move CLASH_DETECTION to configure.
+
+ * s/gnu.h: Remove file, which is now empty.
+
+ * s/gnu.h, s/gnu-linux.h:
+ Move GNU_LIBRARY_PENDING_OUTPUT_COUNT to configure.
+
+2012-07-11 John Wiegley <johnw@newartisans.com>
+
+ * alloc.c (mark_memory): Guard the "no_address_safety_analysis"
+ function attribute, so we only use it if it exists in the
+ compiler.
+
+2012-07-11 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Avoid call to strlen in fast_c_string_match_ignore_case.
+ * search.c (fast_c_string_match_ignore_case): Change to use
+ length argument. Adjust users accordingly.
+ * lisp.h (fast_c_string_match_ignore_case): Adjust prototype.
+
+2012-07-11 Paul Eggert <eggert@cs.ucla.edu>
+
+ Assume mkdir, rmdir.
+ * sysdep.c (mkdir) [!HAVE_MKDIR]: Remove.
+ * sysdep.c (rmdir) [!HAVE_RMDIR]: Remove.
+
+ Assume rename.
+ * sysdep.c (rename) [!HAVE_RENAME]: Remove.
+
+ Assume perror.
+ * s/hpux10-20.h (HAVE_PERROR): Remove.
+ * sysdep.c (perror) [HPUX && !HAVE_PERROR]:
+ Remove dummy definition, as this problem was obsolete long ago.
+
+ Assume strerror.
+ * sysdep.c (strerror) [!HAVE_STRERROR && !WINDOWSNT]: Remove.
+
+2012-07-11 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Avoid calls to strlen in font processing functions.
+ * font.c (font_parse_name, font_parse_xlfd, font_parse_fcname)
+ (font_open_by_name): Change to use length argument. Adjust
+ users accordingly.
+ * font.h (font_open_by_name, font_parse_xlfd, font_unparse_xlfd):
+ Adjust prototypes.
+ * xfont.c (xfont_decode_coding_xlfd, font_unparse_xlfd):
+ Change to return ptrdiff_t.
+ (xfont_list_pattern, xfont_match): Use length returned by
+ xfont_decode_coding_xlfd.
+ * xfns.c (x_default_font_parameter): Omit useless xstrdup.
+
+2012-07-11 Glenn Morris <rgm@gnu.org>
+
+ * s/darwin.h, s/freebsd.h, s/netbsd.h:
+ Move DONT_REOPEN_PTY to configure.
+
+ * sound.c (DEFAULT_SOUND_DEVICE) [!WINDOWSNT]:
+ * s/netbsd.h (DEFAULT_SOUND_DEVICE): Let configure set it.
+
+2012-07-10 Paul Eggert <eggert@cs.ucla.edu>
+
+ Remove "#define unix" that is no longer needed (Bug#11905).
+ * s/aix4-2.h (unix): Remove; no longer needed.
+
+ EMACS_TIME simplification (Bug#11875).
+ This replaces macros (which typically do not work in GDB)
+ with functions, typedefs and enums, making the code easier to debug.
+ The functional style also makes code easier to read and maintain.
+ * systime.h: Include <sys/time.h> on all hosts, not just if
+ WINDOWSNT, since 'struct timeval' is needed in general.
+ (EMACS_TIME): Now a typedef, not a macro.
+ (EMACS_TIME_RESOLUTION, LOG10_EMACS_TIME_RESOLUTION): Now constants,
+ not macros.
+ (EMACS_SECS, EMACS_NSECS, EMACS_TIME_SIGN, EMACS_TIME_VALID_P)
+ (EMACS_TIME_FROM_DOUBLE, EMACS_TIME_TO_DOUBLE, EMACS_TIME_EQ)
+ (EMACS_TIME_NE, EMACS_TIME_GT, EMACS_TIME_GE, EMACS_TIME_LT)
+ (EMACS_TIME_LE): Now functions, not macros.
+ (EMACS_SET_SECS, EMACS_SET_NSECS, EMACS_SET_SECS_NSECS)
+ (EMACS_SET_USECS, EMACS_SET_SECS_USECS): Remove these macros,
+ which are not functions. All uses rewritten to use:
+ (make_emacs_time): New function.
+ (EMACS_SECS_ADDR, EMACS_SET_INVALID_TIME, EMACS_GET_TIME)
+ (EMACS_ADD_TIME, EMACS_SUB_TIME): Remove these macros, which are
+ not functions. All uses rewritten to use the following, respectively:
+ (emacs_secs_addr, invalid_emacs_time, get_emacs_time)
+ (add_emacs_time, sub_emacs_time): New functions.
+ * atimer.c: Don't include <sys/time.h>, as "systime.h" does this.
+ * fileio.c (Fcopy_file):
+ * xterm.c (XTflash): Get the current time closer to when it's used.
+ * makefile.w32-in ($(BLD)/atimer.$(O)): Update dependencies.
+
+ * bytecode.c (targets): Suppress -Woverride-init warnings.
+
+ Simplify by avoiding confusing use of strncpy etc.
+ * doc.c (Fsnarf_documentation):
+ * fileio.c (Ffile_name_directory, Fsubstitute_in_file_name):
+ * frame.c (Fmake_terminal_frame):
+ * gtkutil.c (get_utf8_string):
+ * lread.c (openp):
+ * nsmenu.m (ns_update_menubar):
+ * regex.c (regerror):
+ Prefer memcpy to strncpy and strncat when either will do.
+ * fileio.c (Fsubstitute_in_file_name):
+ * keyboard.c (MULTI_LETTER_MOD, parse_modifiers_uncached)
+ (menu_separator_name_p):
+ * nsmenu.m (ns_update_menubar):
+ Prefer memcmp to strncmp when either will do.
+ * nsterm.m: Include <ftoastr.h>.
+ (ns_get_color):
+ * s/gnu-linux.h, s/sol2-6.h, s/unixware.h (PTY_TTY_NAME_SPRINTF):
+ Prefer snprintf to strncpy.
+ * nsterm.m (ns_term_init):
+ * widget.c (set_frame_size) [0]: Prefer xstrdup to xmalloc + strncpy.
+ * nsterm.m (ns_term_init):
+ Avoid the need for strncpy, by using build_string or
+ make_unibyte_string directly. Use dtoastr, not snprintf.
+ * process.c (Fmake_network_process): Diagnose service names that
+ are too long, rather than silently truncating them or creating
+ non-null-terminated names.
+ (Fnetwork_interface_info): Likewise, for interface names.
+ * sysdep.c (system_process_attributes) [GNU_LINUX]:
+ Prefer sprintf to strncat.
+ * xdisp.c (debug_method_add) [GLYPH_DEBUG]:
+ Prefer vsnprintf to vsprintf + strncpy.
+
+2012-07-10 Glenn Morris <rgm@gnu.org>
+
+ * dispnew.c (PENDING_OUTPUT_COUNT) [!__GNU_LIBRARY__]:
+ Clarify fallback case.
+
+2012-07-10 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Use XCAR and XCDR instead of Fcar and Fcdr where possible.
+ * callint.c, coding.c, doc.c, editfns.c, eval.c, font.c, fontset.c,
+ * frame.c, gnutls.c, minibuf.c, msdos.c, textprop.c, w32fns.c,
+ * w32menu.c, window.c, xmenu.c: Change to use XCAR and XCDR
+ where argument type is known to be a Lisp_Cons.
+
+2012-07-10 Tom Tromey <tromey@redhat.com>
+
+ * bytecode.c (BYTE_CODE_THREADED): New macro.
+ (BYTE_CODES): New macro. Replaces all old byte-code defines.
+ (enum byte_code_op): New type.
+ (CASE, NEXT, FIRST, CASE_DEFAULT, CASE_ABORT): New macros.
+ (exec_byte_code): Use them. Use token threading when applicable.
+
+2012-07-10 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Optimize pure C strings initialization.
+ * lisp.h (make_pure_string): Fix prototype.
+ (build_pure_c_string): New function, defined as static inline. This
+ provides a better opportunity to optimize away calls to strlen when
+ the function is called with compile-time constant argument.
+ * alloc.c (make_pure_c_string): Fix comment. Change to add nchars
+ argument, adjust users accordingly. Use build_pure_c_string where
+ appropriate.
+ * buffer.c, coding.c, data.c, dbusbind.c, fileio.c, fontset.c, frame.c,
+ * keyboard.c, keymap.c, lread.c, search.c, syntax.c, w32fns.c, xdisp.c,
+ * xfaces.c, xfns.c, xterm.c: Use build_pure_c_string where appropriate.
+
+2012-07-10 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Avoid calls to strlen in miscellaneous functions.
+ * buffer.c (init_buffer): Use precalculated len, adjust if needed.
+ * font.c (Ffont_xlfd_name): Likewise. Change to call make_string.
+ * lread.c (openp): Likewise.
+
2012-07-10 Dmitry Antipov <dmantipov@yandex.ru>
Avoid calls to strlen in path processing functions.
srclen argument and return the length of result. Adjust users
accordingly.
(directory_file_name): Fix comment. Change to add srclen argument,
- swap 1nd and 2st arguments to obey the common convention. Adjust
+ swap 1st and 2nd arguments to obey the common convention. Adjust
users accordingly.
* filelock.c (fill_in_lock_file_name): Avoid calls to strlen.
2012-07-10 Glenn Morris <rgm@gnu.org>
+ * s/cygwin.h, s/darwin.h, s/freebsd.h, s/netbsd.h, s/unixware.h:
+ Move PENDING_OUTPUT_COUNT definition to configure.
+
* s/irix6-5.h (DATA_START, DATA_SEG_BITS):
* s/hpux10-20.h (DATA_SEG_BITS, DATA_START):
* s/gnu.h (DATA_START): Move definitions to configure.
X Windows version. Doc fix.
* xfns.c (Fx_window_property): Doc fix. (Bug#11870)
-2012-07-06 Juanma Barranquero <lekktu@gmail.com>
+2012-07-06 Juanma Barranquero <lekktu@gmail.com>
Eli Zaretskii <eliz@gnu.org>
* s/ms-w32.h: Settings not specific to Windows moved to nt/config.nt.
* alloc.c (PSEUDOVECTOR_NBYTES): Remove stray ';'
that causes compilation to fail on pre-C99 compilers.
-2012-07-04 Juanma Barranquero <lekktu@gmail.com>
+2012-07-04 Juanma Barranquero <lekktu@gmail.com>
* s/ms-w32.h (LISP_FLOAT_TYPE, HAVE_MEMCMP, HAVE_MEMCPY)
(HAVE_MEMMOVE, HAVE_MEMSET): Don't set, obsolete.