doc/emacs/vc1-xtra.texi (General VC Options): Remove reference to `vc-path'.
ispell.el: Use expanded values of personal dictionary for process restart checks.

(ispell-internal-change-dictionary):
 Improve ispell process restart checks by using expanded values for ispell
  personal dictionary and for related restart check.

(ispell-start-process):
 * Remove apparently redundant code that seems better handled from
  (ispell-internal-change-dictionary)
 * No longer need to expand ispell personal dictionary, it is already
   expanded.
Fix my last Changelog entry.
* gtkutil.c (my_log_handler): New function.
(xg_set_geometry): Set log handler to my_log_handler.
Fix bug #13055 with cursor positioning inside scroll-margin.

 src/xdisp.c (redisplay_window): If the cursor is visible, but inside
 the scroll margin, move point outside the margin.
* bytecode.c, lisp.h (Qbytecode): Remove.

No longer needed after 2012-11-20 interactive-p changes.
Don't let call-process be a zombie factory.

Fixing this bug required some cleanup of the signal-handling code.
As a side effect, this change also fixes a longstanding rare race
condition whereby Emacs could mistakenly kill unrelated processes,
and it fixes a bug where a second C-g does not kill a recalcitrant
synchronous process in GNU/Linux and similar platforms.
The patch should also fix the last vestiges of Bug#9488,
a bug which has mostly been fixed on the trunk by other changes.
* callproc.c, process.h (synch_process_alive, synch_process_death)
(synch_process_termsig, sync_process_retcode):
Remove.  All uses removed, to simplify analysis and so that
less consing is done inside critical sections.
* callproc.c (call_process_exited): Remove.  All uses replaced
with !synch_process_pid.
* callproc.c (synch_process_pid, synch_process_fd): New static vars.
These take the role of what used to be in unwind-protect arg.
All uses changed.
(block_child_signal, unblock_child_signal):
New functions, to avoid races that could kill innocent-victim processes.
(call_process_kill, call_process_cleanup, Fcall_process): Use them.
(call_process_kill): Record killed processes as deleted, so that
zombies do not clutter up the system.  Do this inside a critical
section, to avoid a race that would allow the clutter.
(call_process_cleanup): Fix code so that the second C-g works again
on common platforms such as GNU/Linux.
(Fcall_process): Create the child process in a critical section,
to fix a race condition.  If creating an asynchronous process,
record it as deleted so that zombies do not clutter up the system.
Do unwind-protect for WINDOWSNT too, as that's simpler in the
light of these changes.  Omit unnecessary call to emacs_close
before failure, as the unwind-protect code does that.
* callproc.c (call_process_cleanup):
* w32proc.c (waitpid): Simplify now that synch_process_alive is gone.
* process.c (record_deleted_pid): New function, containing
code refactored out of Fdelete_process.
(Fdelete_process): Use it.
(process_status_retrieved): Remove.  All callers changed to use
child_status_change.
(record_child_status_change): Remove, folding its contents into ...
(handle_child_signal): ... this signal handler.  Now, this
function is purely a handler for SIGCHLD, and is not called after
a synchronous waitpid returns; the synchronous code is moved to
wait_for_termination.  There is no need to worry about reaping
more than one child now.
* sysdep.c (get_child_status, child_status_changed): New functions.
(wait_for_termination): Now takes int * status and bool
interruptible arguments, too.  Do not record child status change;
that's now the caller's responsibility.  All callers changed.
Reimplement in terms of get_child_status.
(wait_for_termination_1, interruptible_wait_for_termination):
Remove.  All callers changed to use wait_for_termination.
* syswait.h: Include <stdbool.h>, for bool.
(record_child_status_change, interruptible_wait_for_termination):
Remove decls.
(record_deleted_pid, child_status_changed): New decls.
(wait_for_termination): Adjust to API changes noted above.
gnus-sync.el (gnus-sync-newsrc-offsets): Add :version
* lisp/info.el (Info-fontify-node): Don't hide the last newline.
* lisp/sort.el (delete-duplicate-lines): New command.
Obsolete longlines.el.

* longlines.el: Move to obsolete/.

* lisp/org/org-bibtex.el (org-bibtex-ask): Use visual-line-mode instead of
longlines-mode.

* lisp/vc/ediff-diff.el (ediff-extract-diffs, ediff-extract-diffs3):
Remove code referring to longlines mode.
Obsolete terminal.el.

* terminal.el: Move to obsolete/.
gmm-utils.el (gmm-flet, gmm-labels): New macros.
gnus-sync.el (gnus-sync-lesync-call)
message.el (message-read-from-minibuffer): Use gmm-flet.
gnus-score.el (gnus-score-decode-text-parts): Use gmm-labels.
gnus-util.el (gnus-macroexpand-all): Remove.
* lisp.h (Mouse_HLInfo): Remove set-but-unused mouse_face_image_state
member.  Adjust users.  Convert mouse_face_past_end, mouse_face_defer
and mouse_face_hidden members to a bitfields.
* frame.h (struct frame): Remove set-but-not-used space_width member.
(FRAME_SPACE_WIDTH): Remove.
* nsterm.m, w32term.c, xterm.c: Adjust users.
* termchar.h (struct tty_display_info): Remove set-but-unused se_is_so
member.  Adjust users.  Convert term_initted, delete_in_insert_mode,
costs_set, insert_mode, standout_mode, cursor_hidden and flow_control
members to a bitfields.
* net/tramp-adb.el: New package.
* Makefile.in (TRAMP_SRC):
* makefile.w32-in (TRAMP_SRC): Add tramp-adb.el.
* tramp.texi (History): Mention ADB.
(Inline methods): Add `adb' method.
* lisp/obsolete/terminal.el, lisp/obsolete/longlines.el: Add obsolecence info.
* NEWS: Mention new Tramp method "adb".
rmail-new-summary fix for bug#13066

* lisp/mail/rmailsum.el (rmail-new-summary):
Tweak for rmail-maybe-display-summary changing buffer.