Merge from emacs-24; up to 2012-12-25T11:37:21Z!dmantipov@yandex.ru
authorGlenn Morris <rgm@gnu.org>
Wed, 6 Mar 2013 08:01:47 +0000 (00:01 -0800)
committerGlenn Morris <rgm@gnu.org>
Wed, 6 Mar 2013 08:01:47 +0000 (00:01 -0800)
1  2 
ChangeLog
configure.ac
src/ChangeLog
src/sysdep.c

diff --cc ChangeLog
+++ b/ChangeLog
@@@ -1,3 -1,8 +1,8 @@@
 -2013-03-05  Paul Eggert  <eggert@cs.ucla.edu>
++2013-03-06  Paul Eggert  <eggert@cs.ucla.edu>
+       * configure.ac (TERM_HEADER): Remove duplicate definition (Bug#13872).
+       It can mess up 'configure' runs.
  2013-03-05  Glenn Morris  <rgm@gnu.org>
  
        * Makefile.in (install-man): Ignore gzip exit status.
diff --cc configure.ac
Simple merge
diff --cc src/ChangeLog
 -2013-03-05  Paul Eggert  <eggert@cs.ucla.edu>
++2013-03-06  Paul Eggert  <eggert@cs.ucla.edu>
+       Fix a build failure on OpenBSD 4.x and MirBSD (Bug#13881).
+       * sysdep.c (list_system_processes)
+       [BSD_SYSTEM && !DARWIN_OS && !__FreeBSD__]:
+       Make it a stub in this case; otherwise the build might fail,
+       and this code hasn't been tested on such hosts anyway.
+       Problem reported by Nelson H. F. Beebe in
+       <http://lists.gnu.org/archive/html/emacs-devel/2013-03/msg00021.html>
+       and analyzed by Jérémie Courrèges-Anglas in
+       <http://lists.gnu.org/archive/html/emacs-devel/2013-03/msg00062.html>.
 +2013-03-06  Dmitry Antipov  <dmantipov@yandex.ru>
 +
 +      * lisp.h (find_next_newline_no_quit): Rename to find_next_newline.
 +      * xdisp.c (back_to_previous_line_start, forward_to_next_line_start)
 +      (get_visually_first_element, move_it_vertically_backward): Ajust users.
 +      * bidi.c (bidi_find_paragraph_start): Likewise.
 +      * indent.c (vmotion): Likewise.
 +
 +2013-03-05  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      FILE's lock is now always .#FILE and may be a regular file (Bug#13807).
 +      * filelock.c: Include <c-ctype.h>.
 +      (MAX_LFINFO): New top-level constant.
 +      (lock_info_type): Remove members pid, boot_time.  Add members at,
 +      dot, colon.  Change user member to be the entire buffer, not a
 +      pointer.  This allows us to handle the case where a foreign
 +      pid or boot time exceeds the local range.  All uses changed.
 +      (LINKS_MIGHT_NOT_WORK): New constant.
 +      (FREE_LOCK_INFO): Remove, as the pieces no longer need freeing.
 +      (defined_WINDOWSNT): Remove.
 +      (MAKE_LOCK_NAME, file_in_lock_file_name):
 +      Always use .#FILE (not .#-FILE) for the file lock,
 +      even if it is a regular file.
 +      (rename_lock_file): New function.
 +      (create_lock_file): Use it.
 +      (create_lock_file, read_lock_data):
 +      Prefer a symbolic link for the lock file, falling back on a
 +      regular file if symlinks don't work.  Do not try to create
 +      symlinks on MS-Windows, due to security hassles.  Stick with
 +      POSIXish functions (open, read, write, close, fchmod, readlink, symlink,
 +      link, rename, unlink, mkstemp) when creating locks, as a GNUish
 +      host may be using a Windowsish file system, and cannot use
 +      MS-Windows-only system calls.  Fall back on mktemp if mkstemp
 +      doesn't work.  Don't fail merely because of a symlink-contents
 +      length limit in the current file system; fall back on regular
 +      files.  Increase the symlink contents length limit to 8 KiB, this
 +      should be big enough for any real use and doesn't crunch the
 +      stack.
 +      (create_lock_file, lock_file_1, read_lock_data):
 +      Simplify allocation of lock file buffers now that they fit in 8 KiB.
 +      (lock_file_1): Return error number, not bool.  All callers changed.
 +      (ELOOP): New macro, if not already defined.
 +      (read_lock_data): Return size of lock file contents, not Lisp object.
 +      All callers changed.  Handle a race condition if some other process
 +      replaces a regular-file lock with a symlink lock or vice versa,
 +      while we're trying to read the lock.
 +      (current_lock_owner): Parse contents more carefully, to help avoid
 +      confusing a regular-file lock with some other application's use
 +      of the file.  Check for lock file contents being too long, or
 +      not parsing correctly.
 +      (current_lock_owner, lock_file):
 +      Allow foreign pid and boot times that exceed the local range.
 +      (current_lock_owner, lock_if_free, lock_file):
 +      Simplify allocation of lock file contents.
 +      * w32.c (sys_rename_replace): New function, containing most of
 +      the contents of the old sys_rename.
 +      (sys_rename): Use it.
 +      (fchmod): New dummy function.
 +      * w32.h (sys_rename_replace, fchmod): New decls.
 +
 +2013-03-05  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * bidi.c (bidi_resolve_explicit_1): Don't call CHAR_TO_BYTE or
 +      bidi_count_bytes, as the callers now arrange for bidi_it->charpos
 +      to be in sync with bidi_it->bytepos.  Suggested by Dmitry Antipov
 +      <dmantipov@yandex.ru>.
 +
- 2013-03-05  Paul Eggert  <eggert@cs.ucla.edu>
-       Fix a build failure on OpenBSD 4.x and MirBSD.
-       * sysdep.c (KERN_PROC, kinfo_proc)
-       [BSD_SYSTEM && (!KERN_PROC || __MirBSD__)]:
-       Define to KERN_PROC2 and kinfo_proc2, for OpenBSD 4.9 and MirBSD.
-       list-system-processes still returns nil, but at least it doesn't crash.
-       Problem reported by Nelson H. F. Beebe in
-       <http://lists.gnu.org/archive/html/emacs-devel/2013-03/msg00021.html>.
 +2013-03-05  Dmitry Antipov  <dmantipov@yandex.ru>
 +
 +      * composite.c (get_composition_id, fill_gstring_header):
 +      Use make_uninit_vector where appropriate.
 +      * font.c (Ffont_get_glyphs, build_style_table): Likewise.
 +      * xselect.c (clean_local_selection_data): Likewise.
 +
 +2013-03-04  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      Fix misuse of ImageMagick that caused core dump (Bug#13846).
 +      * image.c (imagemagick_load_image): Calculate height and width
 +      after flattening the image, not before.
 +
 +2013-03-04  Dmitry Antipov  <dmantipov@yandex.ru>
 +
 +      * font.c (Ffont_get_glyphs): Use convenient LGLYPH_NEW.
 +      * ftfont.c (ftfont_shape_by_flt): Likewise.
 +      * w32uniscribe.c (uniscribe_shape): Likewise.
 +
 +2013-03-02  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      The lock for FILE is now .#FILE or .#-FILE (Bug#13807).
 +      The old approach, which fell back on DIR/.#FILE.0 through
 +      DIR/.#FILE.9, had race conditions that could not be easily fixed.
 +      If DIR/.#FILE is a non-symlink file, Emacs now does not create a
 +      lock file for DIR/FILE; that is, DIR/FILE is no longer partly
 +      protected by a lock if DIR/.#FILE is a non-symlink file ("partly"
 +      because the locking mechanism was never reliable in that case).
 +      This patch fixes this and other bugs discovered by a code
 +      inspection that was prompted by
 +      <http://lists.gnu.org/archive/html/emacs-devel/2013-02/msg00531.html>.
 +      Also, this patch switches to .#-FILE (not .#FILE) on MS-Windows,
 +      to avoid interoperability problems between the MS-Windows and
 +      non-MS-Windows implementations.  MS-Windows and non-MS-Windows
 +      instances of Emacs now ignore each others' locks.
 +      * filelock.c (defined_WINDOWSNT): New constant.
 +      (MAKE_LOCK_NAME, fill_in_lock_file_name):
 +      Don't create DIR/.#FILE.0 through DIR/.#FILE.9.  Instead, create
 +      DIR/.#FILE symlinks on non-MS-Windows hosts, and DIR/.#-FILE
 +      regular files on MS-Windows hosts.
 +      (MAKE_LOCK_NAME, unlock_file, Ffile_locked_p):
 +      Use SAFE_ALLOCA to avoid problems with long file names.
 +      (MAX_LFINFO): Now a local constant, not a global macro.
 +      (IS_LOCK_FILE): Remove.
 +      (lock_file_1): Don't inspect errno if symlink call succeeds;
 +      that's not portable.
 +      (lock_file): Document that this function can return if lock
 +      creation fails.
 +      (lock_file): Don't access freed storage.
 +
  2013-03-02  Andreas Schwab  <schwab@linux-m68k.org>
  
        * lisp.h (XPNTR) [!USE_LSB_TAG]: Remove extra paren.  (Bug#13734)
diff --cc src/sysdep.c
Simple merge