* window.c (Fwindow_combination_limit): Revert to the only
[bpt/emacs.git] / src / ChangeLog
index bea7c93..10c48b8 100644 (file)
@@ -1,3 +1,509 @@
+2012-11-06  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       * window.c (Fwindow_combination_limit): Revert to the only
+       required argument and adjust docstring as suggested in
+       http://lists.gnu.org/archive/html/emacs-diffs/2012-11/msg01082.html
+       by Martin Rudalics <rudalics@gmx.at>.
+
+2012-11-06  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       Widely used frame validity and checking functions.
+       * frame.h (decode_live_frame, decode_any_frame): Add prototypes.
+       * frame.c (decode_live_frame, decode_any_frame): New functions.
+       (delete_frame, Fredirect_frame_focus, Fframe_parameters)
+       (Fframe_parameter, Fframe_char_height, Fframe_char_width)
+       (Fframe_pixel_height, Fframe_pixel_width, Ftool_bar_pixel_width)
+       (Fframe_pointer_visible_p): Use decode_any_frame.
+       (Fmake_frame_visible, Fmake_frame_invisible, Ficonify_frame)
+       (Fraise_frame, Flower_frame, Fmodify_frame_parameters)
+       (Fset_frame_height, Fset_frame_width): Use decode_live_frame.
+       (Fframe_focus): Likewise.  Allow zero number of arguments.
+       Adjust docstring.
+       (frame_buffer_list, frame_buffer_predicate): Remove.
+       * lisp.h (frame_buffer_predicate): Remove prototype.
+       * buffer.c (Fother_buffer): Use decode_any_frame.
+       * xdisp.c (Ftool_bar_lines_needed): Likewise.
+       * xfaces.c (Fcolor_gray_p, Fcolor_supported_p): Likewise.
+       * font.c (Ffont_face_attributes, Ffont_family_list, Fopen_font)
+       (Fclose_font, Ffont_info): Use decode_live_frame.
+       * fontset.c (check_fontset_name): Likewise.
+       * terminal.c (Fframe_terminal): Likewise.
+       * w32fns.c (check_x_frame): Likewise.
+       * window.c (Fminibuffer_window, Fwindow_at)
+       (Fcurrent_window_configuration): Likewise.
+       (Frun_window_configuration_change_hook, Fwindow_resize_apply):
+       Likewise.  Allow zero number of arguments.  Adjust docstring.
+       * dispnew.c (Fredraw_frame): Likewise.
+       * xfaces.c (frame_or_selected_frame): Remove.
+       (Fx_list_fonts, Finternal_get_lisp_face_attribute, Fface_font)
+       (Finternal_lisp_face_equal_p, Finternal_lisp_face_empty_p)
+       (Fframe_face_alist): Use decode_live_frame.
+       * xfns.c (check_x_frame): Likewise.
+
+2012-11-06  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       * window.c (quad): New function.
+       (Fwindow_edges, Fwindow_pixel_edges, Fwindow_inside_edges)
+       (Fwindow_absolute_pixel_edges, Fwindow_inside_absolute_pixel_edges)
+       (Fwindow_inside_pixel_edges, Fpos_visible_in_window_p)
+       (Fwindow_line_height): Use it.
+       (Fwindow_fringes): Use list3.
+       (Fwindow_scroll_bars): Use list4.
+       (Fwindow_frame, Fwindow_top_child, Fwindow_left_child)
+       (Fwindow_combination_limit): Allow zero number of arguments.
+
+2012-11-05  Eli Zaretskii  <eliz@gnu.org>
+
+       * makefile.w32-in ($(BLD)/w32fns.$(O)): Depend on $(NT_INC)/unistd.h.
+
+       * w32fns.c: Include unistd.h, to avoid compiler warnings on Cygwin.
+       (emacs_abort) [CYGWIN]: Don't call _open_osfhandle; instead, use
+       file descriptor 2 for standard error.  (Bug#12805)
+
+2012-11-05  Chong Yidong  <cyd@gnu.org>
+
+       * process.c (wait_reading_process_output): Revert previous change.
+
+2012-11-05  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Assume at least POSIX.1-1988 for getpgrp, setpgid, setsid (Bug#12800).
+       This removes code that has been obsolete since around 1990.
+       * callproc.c (Fcall_process):
+       * emacs.c (main):
+       * process.c (create_process):
+       * term.c (dissociate_if_controlling_tty):
+       Assume setsid exists.
+       * callproc.c (child_setup): Assume setpgid exists and behaves as
+       per POSIX.1-1988 or later.
+       * conf_post.h (setpgid) [!HAVE_SETPGID]: Remove.
+       * emacs.c (shut_down_emacs):
+       * sysdep.c (sys_suspend, init_foreground_group):
+       Assume getpgrp behaves as per POSIX.1-1998 or later.
+       * msdos.c (setpgrp): Remove.
+       (tcgetpgrp, setpgid, setsid): New functions.
+       * systty.h (EMACS_GETPGRP): Remove.  All callers now use getpgrp.
+       * term.c (no_controlling_tty): Remove; unused.
+       * w32proc.c (setpgrp): Remove.
+       (setsid, tcgetpgrp): New functions.
+
+       Simplify by assuming __fpending.
+       * dispnew.c: Include <fpending.h>, not <stdio_ext.h>.
+       (update_frame_1): Use __fpending, not PENDING_OUTPUT_COUNT.
+       Do not assume that __fpending's result fits in int.
+
+2012-11-04  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Remove EMACS_OUTQSIZE+sleep hack.
+       * dispnew.c (update_frame_1): Remove hack for terminals slower
+       than 2400 bps, which throttled Emacs by having it sleep.  This
+       code hasn't worked since at least 2007, when the multi-tty stuff
+       was added, and anyway those old terminals are long dead.
+       * systty.h (EMACS_OUTQSIZE): Remove; unused.  The macro isn't used even
+       without the dispnew.c change, as dispnew.c doesn't include systty.h.
+
+       Fix data-loss with --version (Bug#9574).
+       * emacs.c (close_output_streams): Use strerror, not emacs_strerror,
+       as we can't assume that emacs_strerror is initialized, and strerror
+       is good enough here.
+       (main): Invoke atexit earlier, to catch earlier instances of
+       sending data to stdout and exiting, e.g., "emacs --version >/dev/full".
+
+2012-11-04  Michael Marchionna  <tralfaz@pacbell.net>
+
+       * nsterm.m: Add NSClearLineFunctionKey and keypad keys (Bug#8680).
+       (keyDown): Remap keypad keys to X11 virtual key codes.
+
+2012-11-03  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Fix data-loss with --batch (Bug#9574).
+       * emacs.c: Include <close-stream.h>.
+       (close_output_streams): New function.
+       (main): Pass it to atexit, so that Emacs closes stdout and stderr
+       and handles errors appropriately.
+       (Fkill_emacs): Don't worry about flushing, as close_output_stream
+       does that now.
+
+       Fix a race condition that causes Emacs to mess up glib (Bug#8855).
+       The symptom is a diagnostic "GLib-WARNING **: In call to
+       g_spawn_sync(), exit status of a child process was requested but
+       SIGCHLD action was set to SIG_IGN and ECHILD was received by
+       waitpid(), so exit status can't be returned."  The diagnostic
+       is partly wrong, as the SIGCHLD action is not set to SIG_IGN.
+       The real bug is a race condition between Emacs and glib: Emacs
+       does a waitpid (-1, ...) and reaps glib's subprocess by mistake,
+       so that glib can't find it.  Work around the bug by invoking
+       waitpid only on subprocesses that Emacs itself creates.
+       * process.c (create_process, record_child_status_change):
+       Don't use special value -1 in pid field, as the caller now must
+       know the pid rather than having the callee infer it.  The
+       inference was sometimes incorrect anyway, due to another race.
+       (create_process): Set new 'alive' member if child is created.
+       (process_status_retrieved): New function.
+       (record_child_status_change): Use it.
+       Accept negative 1st argument, which means to wait for the
+       processes that Emacs already knows about.  Move special-case code
+       for DOS_NT (which lacks WNOHANG) here, from caller.  Keep track of
+       processes that have already been waited for, by testing and
+       clearing new 'alive' member.
+       (CAN_HANDLE_MULTIPLE_CHILDREN): Remove, as record_child_status_change
+       now does this internally.
+       (handle_child_signal): Let record_child_status_change do all
+       the work, since we do not want to reap all exited child processes,
+       only the child processes that Emacs itself created.
+       * process.h (Lisp_Process): New boolean member 'alive'.
+
+       Omit duplicate definitions no longer needed with gcc -g3.
+       * lisp.h (GCTYPEBITS, GCALIGNMENT, ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG)
+       (VALMASK, MOST_POSITIVE_FIXNUM, MOST_NEGATIVE_FIXNUM):
+       Define only as macros.  There's no longer any need to also define
+       these symbols as enums or as constants, since we now assume
+       gcc -g3 when debugging.
+
+2012-11-03  Eli Zaretskii  <eliz@gnu.org>
+
+       * lisp.mk: Adjust comments to the fact that term/internal is now
+       loaded from loadup.el.
+
+       * msdos.c (msdos_abort): Rename from emacs_abort, and make static.
+       (msdos_fatal_signal): New function.
+       (XMenuActivate): Adjust the call to kbd_buffer_events_waiting to
+       its argument list.
+
+       * conf_post.h (_GL_EXECINFO_INLINE) [MSDOS]: Define to "inline"
+       for GCC versions before 4.
+       (emacs_raise): Define to call msdos_fatal_signal.
+
+       * xdisp.c (init_from_display_pos): Fix initialization of the bidi
+       iterator when starting in the middle of a display or overlay
+       string.  (Bug#12745)
+
+2012-11-03  Chong Yidong  <cyd@gnu.org>
+
+       * process.c (wait_reading_process_output): Clean up the last
+       change.
+
+2012-11-03  Jim Paris  <jim@jtan.com>  (tiny change)
+
+       * process.c (wait_reading_process_output): Avoid a race condition
+       with SIGIO delivery (Bug#11536).
+
+2012-11-03  Chong Yidong  <cyd@gnu.org>
+
+       * buffer.c (cursor_type): Untabify docstring.
+
+2012-11-03  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       * frame.h (struct frame): Drop can_have_scroll_bars member
+       which is meaningless for a long time.  Adjust comments.
+       (FRAME_CAN_HAVE_SCROLL_BARS): Remove.
+       * frame.c, nsfns.m, term.c, w32fns.c, xfns.c: Adjust users.
+
+2012-11-03  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       * window.c (decode_next_window_args): Update window arg after
+       calling decode_live_window and so fix crash reported at
+       http://lists.gnu.org/archive/html/emacs-devel/2012-11/msg00035.html
+       by Juanma Barranquero <lekktu@gmail.com>.
+       (Fwindow_body_width, Fwindow_body_height): Simplify a bit.
+       * font.c (Ffont_at): Likewise.
+
+2012-11-01  Jan Djärv  <jan.h.d@swipnet.se>
+
+       * widget.c (resize_cb): New function.
+       (EmacsFrameRealize): Add resize_cb as event handler (Bug#12733).
+       (EmacsFrameResize): Check if all is up to date before changing frame
+       size.
+
+2012-11-02  Eli Zaretskii  <eliz@gnu.org>
+
+       Implement backtrace output for fatal errors on MS-Windows.
+       * w32fns.c (CaptureStackBackTrace_proc): New typedef.
+       (BACKTRACE_LIMIT_MAX): New macro.
+       (w32_backtrace): New function.
+       (emacs_abort): Use w32_backtrace when the user chooses not to
+       attach a debugger.  Update the text of the abort dialog.
+
+2012-11-02  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       Window-related stuff cleanup here and there.
+       * dispnew.c (Finternal_show_cursor, Finternal_show_cursor_p):
+       Use decode_any_window.
+       * fringe.c (Ffringe_bitmaps_at_pos): Likewise.
+       * xdisp.c (Fformat_mode_line): Likewise.
+       * font.c (Ffont_at): Use decode_live_window.
+       * indent.c (Fcompute_motion, Fvertical_motion): Likewise.
+       * window.c (decode_next_window_args): Likewise.
+       (decode_any_window): Remove static.
+       * window.h (decode_any_window): Add prototype.
+       * lisp.h (CHECK_VALID_WINDOW, CHECK_LIVE_WINDOW): Move from here...
+       * window.h: ...to here, redefine via WINDOW_VALID_P and WINDOW_LIVE_P,
+       respectively.
+
+2012-11-02  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       Remove pad from struct input_event.
+       * termhooks.h (struct input_event): Remove padding field.
+       Adjust comment.
+       * keyboard.c (event_to_kboard): Simplify because frame_or_window
+       member is never cons for a long time.  Adjust comment.
+       (mark_kboards): Adjust because SELECTION_REQUEST_EVENT and
+       SELECTION_CLEAR_EVENT has no Lisp_Objects to mark.  Add comment.
+       * xterm.c (handle_one_xevent): Do not initialize frame_or_window
+       field of SELECTION_REQUEST_EVENT and SELECTION_CLEAR_EVENT.
+
+2012-11-01  Eli Zaretskii  <eliz@gnu.org>
+
+       * w32proc.c (getpgrp, setpgid): New functions.  (Bug#12776)
+
+2012-10-31  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Fix crash when using Emacs as commit editor for git (Bug#12697).
+       * callproc.c (setpgrp): Remove macro, as we now use setpgid
+       and it is configured in conf_post.h.
+       (Fcall_process): Don't invoke both setsid and setpgid; the former
+       is enough, if it exists.
+       * callproc.c (Fcall_process, child_setup):
+       * process.c (create_process): Use setpgid.
+       * conf_post.h (setpgid) [!HAVE_SETPGID]: New macro, which substitutes
+       for the real thing.
+       * dispnew.c (init_display): Initialize the foreground group
+       if we are running a tty display.
+       * emacs.c (main): Do not worry about setpgrp; init_display does it now.
+       * lisp.h (init_foreground_group): New decl.
+       * sysdep.c (inherited_pgroup): New static var.
+       (init_foreground_group, tcsetpgrp_without_stopping)
+       (narrow_foreground_group, widen_foreground_group): New functions.
+       (init_sys_modes): Narrow foreground group.
+       (reset_sys_modes): Widen foreground group.
+
+2012-10-31  Michael Albinus  <michael.albinus@gmx.de>
+
+       * dbusbind.c: Fix cut'n'waste error.  Use HAVE_DBUS_VALIDATE_INTERFACE.
+
+2012-10-31  Martin Rudalics  <rudalics@gmx.at>
+
+       * minibuf.c (read_minibuf): Restore current buffer since
+       choose_minibuf_frame calling Fset_frame_selected_window may
+       change it (Bug#12766).
+
+2012-10-30  Jan Djärv  <jan.h.d@swipnet.se>
+
+       * frame.c (Fframe_pixel_height): Fix documentation (Bug#12733).
+
+2012-10-30  Kenichi Handa  <handa@gnu.org>
+
+       * font.c (Ffont_at): If WINDOW is specified and it is not
+       displaying the current buffer, signal an error.
+
+2012-10-29  Daniel Colascione  <dancol@dancol.org>
+
+       * cygw32.h, cygw32.c (Qutf_16le, from_unicode, to_unicode): In
+       preparation for fixing bug#12739, move these functions from
+       here...
+
+       * coding.h, coding.c: ... to here, and compile them only when
+       WINDOWSNT or CYGWIN.  Moving these functions out of cygw32 proper
+       lets us write cygw32-agnostic code for the HAVE_NTGUI case.
+
+2012-10-28  Eli Zaretskii  <eliz@gnu.org>
+
+       * w32proc.c (TIMER_TICKS_PER_SEC): New macro.
+       (timer_loop, getitimer, setitimer): Use it instead of
+       CLOCKS_PER_SEC, which is no longer pertinent, since we don't use
+       'clock'.
+       (w32_get_timer_time): Use 10*TIMER_TICKS_PER_SEC instead of a
+       literal 10000.
+
+2012-10-28  Jan Djärv  <jan.h.d@swipnet.se>
+
+       * nsterm.m (NO_APPDEFINED_DATA): New define.
+       (last_appdefined_event_data): New variable
+       (last_appdefined_event): Remove.
+       (ns_select): Initialize t from last_appdefined_event_data instead
+       of [last_appdefined_event data1].
+       (sendEvent:): Save [theEvent data1] to last_appdefined_event_data,
+       remove last_appdefined_event (Bug#12698).
+
+2012-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * frame.c (x_set_font): Catch internal error.
+
+2012-10-27  Eli Zaretskii  <eliz@gnu.org>
+
+       Avoid overflow in w32 implementation of interval timers.
+       When possible, for ITIMER_PROF count only times the main thread
+       actually executes.
+       * w32proc.c <struct itimer_data>: 'expire' and 'reload' are now
+       'volatile ULONGLONG' types.  All the other data which was
+       previously clock_t is now ULONGLONG.  'terminate' is 'volatile int'.
+       (GetThreadTimes_Proc): New typedef.
+       (w32_get_timer_time): New function, returns a suitable time value
+       for the timer.
+       (timer_loop): Enter critical section when accessing ULONGLONG
+       values of the itimer_data struct, as these accesses are no longer
+       atomic.  Call 'w32_get_timer_time' instead of 'clock'.
+       Remove unused variable.
+       (init_timers): Initialize s_pfn_Get_Thread_Times.
+       (start_timer_thread): Don't assign itimer->caller_thread here.
+       (getitimer): Assign itimer->caller_thread here.
+       (setitimer): Always call getitimer to get the value of ticks_now.
+       (sys_spawnve): Avoid compiler warning about format mismatch.
+
+2012-10-26  Eli Zaretskii  <eliz@gnu.org>
+
+       * w32fns.c (w32_wnd_proc) <WM_MOUSEMOVE>: Don't enable tracking of
+       mouse movement events if the menu bar is active.  This avoids
+       producing a busy "hour-glass" cursor by Windows if the mouse
+       pointer is positioned over a tooltip shown for some menu item.
+
+2012-10-25  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Don't assume process IDs fit in int.
+       * emacs.c (shut_down_emacs) [!DOS_NT]:
+       * sysdep.c (sys_suspend) [SIGTSTP && !MSDOS]:
+       * term.c (dissociate_if_controlling_tty) [!DOS_NT]:
+       Use pid_t, not int, to store process IDs, as 'int'
+       is not wide enough on a few platforms (e.g., AIX and IRIX).
+
+2012-10-23  Kenichi Handa  <handa@gnu.org>
+
+       The following change is to make face-font-rescale-alist work
+       correctly for non-ASCII fonts.
+
+       * font.c (font_open_entity): Don't handle Vface_font_rescale_alist.
+       (font_open_for_lface): Handle Vface_font_rescale_alist.
+
+2012-10-23  Chong Yidong  <cyd@gnu.org>
+
+       * xfaces.c (Vfont_list_limit): Move unused variable to faces.el.
+
+2012-10-21  Jan Djärv  <jan.h.d@swipnet.se>
+
+       * nsfont.m (nsfont_open, ns_glyph_metrics): Force integer advancement
+       for screen font.
+       (nsfont_draw): Turn off LCD-smoothing (Bug#11484).
+
+       * xterm.c (x_focus_changed): Check if daemonp when sending focus in
+       event (Bug#12681).
+
+2012-10-21  Glenn Morris  <rgm@gnu.org>
+
+       * lisp.mk (lisp): Add cp51932.el and eucjp-ms.el.
+
+2012-10-20  Paul Eggert  <eggert@cs.ucla.edu>
+
+       Port to OpenBSD 5.1.
+       * frame.c (Fmouse_position, Fmouse_pixel_position):
+       * xdisp.c (produce_stretch_glyph):
+       Declare local vars only when they're needed.
+       This is clearer and avoids a warning on OpenBSD about unused vars.
+       * frame.h (FRAME_WINDOW_P): Always evaluate its argument.
+       This is safer, and avoids OpenBSD warnings about unused vars.
+       * keyboard.c (record_menu_key): Remove unnecessary decl.
+       (poll_timer): Define only if POLL_FOR_INPUT is defined.
+       * unexelf.c (ELFSIZE) [!ElfW]: Do not define if already defined,
+       as our definition clashes with OpenBSD's.
+       * xfaces.c (load_face_colors, check_lface_attrs)
+       (get_lface_attributes_no_remap, get_lface_attributes)
+       (lface_fully_specified_p, x_supports_face_attributes_p)
+       (tty_supports_face_attributes_p, face_fontset, realize_face)
+       (realize_x_face, realize_tty_face):
+       Declare parameters to be Lisp_Object[LFACE_VECTOR_SIZE], not
+       merely Lisp_Object *.  This is more informative and avoids
+       a warning on OpenBSD about accessing beyond an object's size.
+
+2012-10-20  Chong Yidong  <cyd@gnu.org>
+
+       * lread.c (Fload): Doc fix (Bug#12592).
+
+2012-10-19  Kazuhiro Ito  <kzhr@d1.dion.ne.jp>  (tiny change)
+
+       * font.c (Ffont_at): Fix previous change.
+
+2012-10-19  Eli Zaretskii  <eliz@gnu.org>
+
+       * puresize.h (BASE_PURESIZE): Bump the base value to 1700000.
+       See http://lists.gnu.org/archive/html/emacs-devel/2012-10/msg00593.html
+       for the reasons.
+
+       * alloc.c (NSTATICS): Decrease to 0x800.
+
+2012-10-19  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * fns.c (Fnreverse): Include the problem element when signalling an
+       error (bug#12677).
+
+2012-10-18  Jan Djärv  <jan.h.d@swipnet.se>
+
+       * nsterm.m (ns_select): Check writefds before call to
+       FD_ISSET (Bug#12668).
+
+2012-10-18  Daniel Colascione  <dancol@dancol.org>
+
+       * alloc.c (NSTATICS): Increase from 0x650 to 0x1000
+       (staticpro): If we run out of staticpro slots, die with an
+       informative error instead of just calling emacs_abort.
+
+2012-10-18  Martin Rudalics  <rudalics@gmx.at>
+
+       Fix two flaws reported by Dmitry Antipov.
+       * window.c (Ftemp_output_buffer_show): Remove.
+       (Fwindow_vscroll, Fset_window_vscroll): Use decode_live_window.
+       (syms_of_window): Remove defsubr for Stemp_output_buffer_show.
+
+2012-10-17  Eli Zaretskii  <eliz@gnu.org>
+
+       * makefile.w32-in ($(BLD)/w32.$(O)):
+       ($(BLD)/vm-limit.$(O)):
+       ($(BLD)/term.$(O)):
+       ($(BLD)/unexw32.$(O)):
+       ($(BLD)/fileio.$(O)):
+       ($(BLD)/dispnew.$(O)): Update dependencies.
+
+       * w32term.h (w32_initialize_display_info, initialize_w32_display):
+       Add prototypes.
+
+       * w32proc.c: Include ctype.h.
+
+       * w32.h (init_environment, check_windows_init_file)
+       (syms_of_ntproc, syms_of_ntterm, dostounix_filename)
+       (unixtodos_filename, init_winsock, srandom, random, sys_pipe)
+       (set_process_dir, sys_spawnve, register_child, sys_sleep, getwd)
+       (sys_link): Add prototypes.
+
+       * w32.c: Include w32select.h.
+       (sys_access, e_malloc, sys_select): Add prototypes.
+       (emacs_gnutls_pull): 'timeout' is now EMACS_TIME, not struct timeval.
+
+       * vm-limit.c [WINDOWSNT]: Include w32heap.h.
+
+       * unexw32.c: Include lisp.h and w32.h.
+
+       * term.c [WINDOWSNT]: Include w32term.h.
+
+       * process.c [WINDOWSNT]: Add prototype of sys_select.
+
+       * fileio.c [WINDOWSNT]: Include w32.h.
+
+       * dispnew.c [WINDOWSNT]: Include w32.h.
+
+       * cygw32.c (Fcygwin_convert_path_to_windows)
+       (Fcygwin_convert_path_from_windows): Use EQ to compare 2
+       Lisp_Object values.  (Bug#12661)
+
+       * w32fns.c (w32_msg_pump): Use XIL instead of casting an integer
+       to Lisp_Object.  (Bug#12661)
+
+2012-10-17  Kenichi Handa  <handa@gnu.org>
+
+       * xdisp.c (reseat_1): Make the information stored in it->cmp_it
+       invalidate.
+
+2012-10-17  Dmitry Antipov  <dmantipov@yandex.ru>
+
+       * buffer.c (Fkill_buffer): When unchaining the marker,
+       reset its buffer pointer to NULL (Bug#12652).
+
 2012-10-17  Dmitry Antipov  <dmantipov@yandex.ru>
 
        Do not verify indirection counters of killed buffers (Bug#12579).
        * nsfont.m (Vfonts_in_cache): Remove, not needed as font.c handles
        caching.
        (nsfont_open): Remove setting of Vfonts_in_cache.
-       (syms_of_nsfont): Remove initialization of Vfonts_in_cache
+       (syms_of_nsfont): Remove initialization of Vfonts_in_cache.
 
 2012-10-09  Eli Zaretskii  <eliz@gnu.org>
 
        * w32select.h (HAVE_W32SELECT): Remove.
 
        * w32select.c, w32proc.c, w32menu.c, w32console.c, w32.c: Include
-       w32common.h instead of w32heap.h
+       w32common.h instead of w32heap.h.
 
        * w32heap.h (ROUND_UP, ROUND_DOWN, get_page_size)
        (get_allocation_unit, get_processor_type, get_w32_major_version)
        now a supported configuration.
 
        * Makefile.in: consolidate image variables into LIBIMAGE; add
-       W32_OBJ and W32_LIBS. Compile new files.
+       W32_OBJ and W32_LIBS.  Compile new files.
 
        * conf_post.h:
        (_DebPrint) declare tracing facility for W32 debugging.  We need
        Cygwin builds.  Remove w32select declarations.
 
        * w32console.c (w32_sys_ring_bell, Fset_message_beep): Move to
-       w32fns.c. w32console.c is WINDOWSNT-only.
+       w32fns.c.  w32console.c is WINDOWSNT-only.
 
        * w32fns.c: Include cygw32.h or w32.h depending on CYGWIN; more
        NTGUI_UNICODE tweaks.  (See above.) Change _snprintf to the more
        (ns_clear_frame_area): Remove resize handle code.
 
        * nsfns.m (ns_in_resize): Remove.
-       (x_set_icon_name, ns_set_name, ns_set_name_as_filename):  Remove
-       ns_in_resize check.
+       (x_set_icon_name, ns_set_name, ns_set_name_as_filename):
+       Remove ns_in_resize check.
 
 2012-10-07  Paul Eggert  <eggert@cs.ucla.edu>
 
        (initFrameFromEmacs:): tbar_height renamed tibar_height.
        (windowDidEnterFullScreen:): Toggle toolbar for fullscreen to fix
        error in drawing background.
-       (toggleFullScreen:): Remove comment. Rearrange calls.
+       (toggleFullScreen:): Remove comment.  Rearrange calls.
        Set toolbar values to zero, save old height in tobar_height.
        Restore tool bar height when leaving fullscreen.
        (canBecomeMainWindow): New function.
        Call setCollectionBehavior if NEW_STYLE_FS.  Initialize bwidth and
        tbar_height.
        (windowWillUseStandardFrame:defaultFrame:): Update frame parameter
-       fullscreen. Set maximized_width/height.  Act on next_maximized.
+       fullscreen.  Set maximized_width/height.  Act on next_maximized.
 
        * nsterm.h (MAC_OS_X_VERSION_10_7, MAC_OS_X_VERSION_10_8): New.
        (EmacsView): Add variables for fullscreen.
 2012-09-19  Paul Eggert  <eggert@cs.ucla.edu>
 
        * w32inevt.c (w32_console_read_socket): Return -1 on failure, not 0.
-       Ignore 'expected'. See Eli Zaretskii in
+       Ignore 'expected'.  See Eli Zaretskii in
        <http://bugs.gnu.org/12471#8> (last line).
 
        * frame.c (read_integer): Remove.  All uses replaced by strtol/strtoul.
        (bytes_used_when_full, emacs_blocked_free, emacs_blocked_malloc)
        (emacs_blocked_realloc, reset_malloc_hooks, uninterrupt_malloc):
        [!SYSTEM_MALLOC && !SYNC_INPUT]:
-       Remove. All uses removed.
+       Remove.  All uses removed.
        (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): Use a different
        implementation, one that depends on whether the new macro
        XMALLOC_BLOCK_INPUT_CHECK is defined, not on whether SYNC_INPUT
        * alloc.c (discard_killed_buffers): New function.
        (mark_object): Use it for deleted windows and frames.
        (mark_object): If symbol's value is set up for a killed buffer
-       or deleted frame, restore it's global binding.
+       or deleted frame, restore its global binding.
        * data.c (swap_in_global_binding): Add GC notice.
        (swap_in_symval_forwarding): Use convenient set_blv_where.
        * window.c (wset_next_buffers, wset_prev_buffers): Move ...
 
        * nsterm.m (ns_set_vertical_scroll_bar, ns_redeem_scroll_bar)
        (EmacsWindow-accessibilityAttributeValue, EmacsScroller-initFrame:)
-       (EmacsScroller-dealloc):  Adjust to use WVAR.  (Bug#12114)
+       (EmacsScroller-dealloc): Adjust to use WVAR.  (Bug#12114)
        * nsfns.m (ns_set_name_as_filename): Likewise.
        * nsmenu.m (ns_update_menubar): Likewise.
        * nsselect.m (symbol_to_nsstring): Adjust to use SVAR.
        * lisp.h (make_formatted_string): New prototype.
        * alloc.c (make_formatted_string): New function.
        * buffer.c (Fgenerate_new_buffer_name): Use it.
-       * dbus.c (syms_of_dbusbind): Likewise.
+       * dbusbind.c (syms_of_dbusbind): Likewise.
        * editfns.c (Fcurrent_time_zone): Likewise.
        * filelock.c (get_boot_time): Likewise.
        * frame.c (make_terminal_frame, set_term_frame_name)
        Fix block vector allocation code to allow VECTOR_BLOCK_SIZE
        values which aren't power of 2.
        * alloc.c (VECTOR_FREE_LIST_SIZE_MASK): New macro.
-       Verify it's value and the value of VECTOR_BLOCK_SIZE.  Adjust users
+       Verify its value and the value of VECTOR_BLOCK_SIZE.  Adjust users
        accordingly.
 
 2012-07-03  Stefan Monnier  <monnier@iro.umontreal.ca>
        bitfields where appropriate, remove unused fields.
        * window.h (struct window): Remove unused 'last_mark_x' and
        'last_mark_y' fields.  Rename 'mini_p' field to 'mini',
-       change it's type from Lisp_Object to bitfield.
+       change its type from Lisp_Object to bitfield.
        Change type of 'force_start', 'optional_new_start',
        'last_had_star', 'update_mode_line' and 'start_at_line_beg'
        fields from Lisp_Object to bitfield.  Adjust users accordingly.