Merge from emacs-24; up to 2014-05-12T06:15:47Z!rgm@gnu.org
authorGlenn Morris <rgm@gnu.org>
Mon, 12 May 2014 06:59:30 +0000 (23:59 -0700)
committerGlenn Morris <rgm@gnu.org>
Mon, 12 May 2014 06:59:30 +0000 (23:59 -0700)
12 files changed:
1  2 
admin/ChangeLog
doc/lispref/functions.texi
lisp/ChangeLog
lisp/files.el
lisp/gnus/ChangeLog
lisp/printing.el
lisp/progmodes/compile.el
lisp/url/ChangeLog
lisp/url/url-handlers.el
src/ChangeLog
src/fileio.c
test/indent/perl.perl

diff --cc admin/ChangeLog
@@@ -1,4 -1,14 +1,12 @@@
 -2014-05-11  Glenn Morris  <rgm@gnu.org>
++2014-05-12  Glenn Morris  <rgm@gnu.org>
+       * find-gc.el: Move here from ../lisp/emacs-lisp.
 -2014-05-10  Glenn Morris  <rgm@gnu.org>
 -
+       * admin.el (set-version-in-file): Don't set identical version.
+       (set-version): Provide default version number.
+       (set-version, set-copyright): Give start/end messages.
 -2014-04-17  Paul Eggert  <eggert@cs.ucla.edu>
 +2014-04-18  Paul Eggert  <eggert@cs.ucla.edu>
  
        * notes/bzr: Update instructions for merging from gnulib.
        Remove obsolete note about tramp.el and tramp-sh.el.
Simple merge
diff --cc lisp/ChangeLog
 -2014-05-11  Santiago Payà i Miralta  <santiagopim@gmail.com>  (tiny change)
+ 2014-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * emacs-lisp/nadvice.el (advice--interactive-form): Don't get fooled
+       into autoloading just because of a silly indirection.
 -2014-05-11  Glenn Morris  <rgm@gnu.org>
++2014-05-12  Santiago Payà i Miralta  <santiagopim@gmail.com>  (tiny change)
+       * vc/vc-hg.el (vc-hg-unregister): New function.  (Bug#17454)
 -2014-05-10  Glenn Morris  <rgm@gnu.org>
 -
++2014-05-12  Glenn Morris  <rgm@gnu.org>
+       * emacs-lisp/find-gc.el: Move to ../admin.
 -2014-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * printing.el (pr-version):
+       * ps-print.el (ps-print-version): Also mention bug-gnu-emacs.
+       * net/browse-url.el (browse-url-mosaic):
+       Create /tmp/Mosaic.PID as a private file.
 -2014-05-09  Philipp Rumpf  <prumpf@gmail.com>  (tiny change)
++2014-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * emacs-lisp/nadvice.el: Support adding a given function multiple times.
+       (advice--member-p): If name is given, only compare the name.
+       (advice--remove-function): Don't stop at the first match.
+       (advice--normalize-place): New function.
+       (add-function, remove-function): Use it.
+       (advice--add-function): Pass the name, if any, to
+       advice--remove-function.
 -2014-05-09  Stefan Monnier  <monnier@iro.umontreal.ca>
 -
 -      * subr.el (function-put): Add function.
 -
 -2014-05-09  Stephen Berman  <stephen.berman@gmx.net>
++2014-05-12  Philipp Rumpf  <prumpf@gmail.com>  (tiny change)
+       * electric.el (electric-indent-post-self-insert-function): Don't use
+       `pos' after modifying the buffer (bug#17449).
 -2014-05-09  Glenn Morris  <rgm@gnu.org>
++2014-05-12  Stephen Berman  <stephen.berman@gmx.net>
+       * calendar/todo-mode.el (todo-insert-item-from-calendar):
+       Correct argument list to conform to todo-insert-item--basic.
 -2014-05-08  Juri Linkov  <juri@jurta.org>
 -
 -      * dired.el (dired-check-switches, dired-switches-recursive-p):
 -      New functions.  (Bug#17218)
 -      (dired-switches-escape-p, dired-move-to-end-of-filename):
 -      Use `dired-check-switches'.
 -      (dired-insert-old-subdirs, dired-build-subdir-alist)
 -      (dired-sort-R-check): Use `dired-switches-recursive-p'.
 -
 -2014-05-08  Glenn Morris  <rgm@gnu.org>
 -
++2014-05-12  Glenn Morris  <rgm@gnu.org>
+       * files.el (cd-absolute): Test if directory is accessible
+       rather than executable.  (Bug#17330)
+       * progmodes/compile.el (recompile):
+       Handle C-u M-x recompile from a non-compilation buffer.  (Bug#17444)
+       * net/browse-url.el (browse-url-mosaic):
+       Be careful when writing /tmp/Mosaic.PID.  (Bug#17428)
+       This is CVE-2014-3423.
 +2014-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * mouse.el: Use the normal toplevel loop while dragging.
 +      (mouse-set-point): Handle multi-clicks.
 +      (mouse-set-region): Handle multi-clicks for drags.
 +      (mouse-drag-region): Update call accordingly.
 +      (mouse-drag-track): Remove `do-mouse-drag-region-post-process' hack.
 +      Use the normal event loop instead of a local while/read-event loop.
 +      (global-map): Remove redundant bindings for double/triple-mouse-1.
 +      * xt-mouse.el (xterm-mouse-translate-1): Only process one event at a time.
 +      Generate synthetic down events when the protocol only sends up events.
 +      (xterm-mouse-last): Remove.
 +      (xterm-mouse--read-event-sequence-1000): Use xterm-mouse-last-down
 +      terminal parameter instead.
 +      (xterm-mouse--set-click-count): New function.
 +      (xterm-mouse-event): Detect/generate double/triple clicks.
 +      * reveal.el (reveal-close-old-overlays): Don't close while dragging.
 +
 +      * info.el (Info-quoted): New face.
 +      (Info-mode-font-lock-keywords): New var.
 +      (Info-mode): Use it.
 +
 +      * emacs-lisp/lisp-mode.el (preceding-sexp): Exclude leading "," which
 +      are a hindrance for C-x C-e.
 +
 +2014-05-11  Leo Liu  <sdl.web@gmail.com>
 +
 +      * net/rcirc.el (rcirc-sentinel): Fix last change.
 +
 +2014-05-08  Sam Steingold  <sds@gnu.org>
 +
 +      * net/rcirc.el (rcirc-reconnect-delay): New user option.
 +      (rcirc-sentinel): Auto-reconnect to the server if
 +      `rcirc-reconnect-delay' is non-0 (but not more often than its
 +      value in case the host is off-line).
 +
 +2014-05-09  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * progmodes/grep.el (lgrep): Fix a typo in last commit.
 +
 +2014-05-09  Glenn Morris  <rgm@gnu.org>
 +
 +      * files.el (file-expand-wildcards):
 +      * man.el (Man-support-local-filenames):
 +      * printing.el (pr-i-directory, pr-interface-directory):
 +      * progmodes/grep.el (lgrep, rgrep):
 +      * textmodes/ispell.el (ispell-call-process)
 +      (ispell-call-process-region, ispell-start-process)
 +      (ispell-init-process): Use file-accessible-directory-p.
 +
  2014-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
  
        * xt-mouse.el: Drop spurious/oddly shaped events (bug#17378).
        (tramp-remote-coding-commands): Enhance docstring.
        (tramp-find-inline-encoding): Replace "%t" by a temporary file
        name.  (Bug#17415)
+       This is CVE-2014-3424.
  
 -2014-05-06  Glenn Morris  <rgm@gnu.org>
 +2014-05-08  Glenn Morris  <rgm@gnu.org>
  
        * emacs-lisp/find-gc.el (find-gc-source-directory): Give it a value.
        (find-gc-source-files): Update some names.
        (trace-call-tree): Simplify and update.
        Avoid predictable temp-file names.  (http://bugs.debian.org/747100)
+       This is CVE-2014-3422.
  
 -2014-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
 +2014-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
  
        * minibuffer.el (completion--try-word-completion): Revert fix for
        Bug#15980 (bug#17375).
diff --cc lisp/files.el
Simple merge
@@@ -15,8 -2,9 +15,9 @@@
  
        * gnus-fun.el (gnus-grab-cam-face):
        Do not use predictable temp-file name.  (http://bugs.debian.org/747100)
+       This is CVE-2014-3421.
  
 -2014-05-01  Glenn Morris  <rgm@gnu.org>
 +2014-05-04  Glenn Morris  <rgm@gnu.org>
  
        * gnus-registry.el (gnus-registry-install-p): Doc fix.
  
Simple merge
Simple merge
@@@ -1,4 -1,9 +1,9 @@@
 -2014-05-09  Michael Albinus  <michael.albinus@gmx.de>
++2014-05-12  Michael Albinus  <michael.albinus@gmx.de>
+       * url-handlers.el (url-file-handler-load-in-progress): New defvar.
+       (url-file-handler): Use it, in order to avoid recursive load.
 -2014-05-01  Glenn Morris  <rgm@gnu.org>
 +2014-05-04  Glenn Morris  <rgm@gnu.org>
  
        * url-parse.el (url-generic-parse-url): Doc fix (replace `iff').
  
@@@ -143,29 -145,24 +146,33 @@@ like URLs \(Gnus is particularly bad a
    "Function called from the `file-name-handler-alist' routines.
  OPERATION is what needs to be done (`file-exists-p', etc).  ARGS are
  the arguments that would have been passed to OPERATION."
-   ;; Check, whether there are arguments we want pass to Tramp.
-   (if (catch :do
-       (dolist (url (cons default-directory args))
-         (and (member
-               (url-type (url-generic-parse-url (and (stringp url) url)))
-               url-tramp-protocols)
-              (throw :do t))))
-       (apply 'url-tramp-file-handler operation args)
-     ;; Otherwise, let's do the job.
-     (let ((fn (get operation 'url-file-handlers))
-         (val nil)
-         (hooked nil))
-       (if (and (not fn) (intern-soft (format "url-%s" operation))
-              (fboundp (intern-soft (format "url-%s" operation))))
-         (error "Missing URL handler mapping for %s" operation))
-       (if fn
-         (setq hooked t
-               val (save-match-data (apply fn args)))
-       (setq hooked nil
-             val (url-run-real-handler operation args)))
-       (url-debug 'handlers "%s %S%S => %S" (if hooked "Hooked" "Real")
-                operation args val)
-       val)))
+   ;; Avoid recursive load.
+   (if (and load-in-progress url-file-handler-load-in-progress)
+       (url-run-real-handler operation args)
 -    (let ((url-file-handler-load-in-progress load-in-progress)
 -        (fn (get operation 'url-file-handlers))
 -        (val nil)
 -        (hooked nil))
 -      (if (and (not fn) (intern-soft (format "url-%s" operation))
 -             (fboundp (intern-soft (format "url-%s" operation))))
 -        (error "Missing URL handler mapping for %s" operation))
 -      (if fn
 -        (setq hooked t
 -              val (save-match-data (apply fn args)))
 -      (setq hooked nil
 -            val (url-run-real-handler operation args)))
 -      (url-debug 'handlers "%s %S%S => %S" (if hooked "Hooked" "Real")
 -               operation args val)
 -      val)))
++    (let ((url-file-handler-load-in-progress load-in-progress))
++      ;; Check, whether there are arguments we want pass to Tramp.
++      (if (catch :do
++            (dolist (url (cons default-directory args))
++              (and (member
++                    (url-type (url-generic-parse-url (and (stringp url) url)))
++                    url-tramp-protocols)
++                   (throw :do t))))
++          (apply 'url-tramp-file-handler operation args)
++        ;; Otherwise, let's do the job.
++        (let ((fn (get operation 'url-file-handlers))
++              (val nil)
++              (hooked nil))
++          (if (and (not fn) (intern-soft (format "url-%s" operation))
++                   (fboundp (intern-soft (format "url-%s" operation))))
++              (error "Missing URL handler mapping for %s" operation))
++          (if fn
++              (setq hooked t
++                    val (save-match-data (apply fn args)))
++            (setq hooked nil
++                  val (url-run-real-handler operation args)))
++          (url-debug 'handlers "%s %S%S => %S" (if hooked "Hooked" "Real")
++                     operation args val)
++          val)))))
  
  (defun url-file-handler-identity (&rest args)
    ;; Identity function
diff --cc src/ChangeLog
@@@ -1,4 -1,13 +1,13 @@@
 -2014-05-11  Glenn Morris  <rgm@gnu.org>
++2014-05-12  Glenn Morris  <rgm@gnu.org>
+       * fileio.c (Ffile_executable_p): Doc tweak.
 -2014-05-10  Jan Djärv  <jan.h.d@swipnet.se>
++2014-05-12  Jan Djärv  <jan.h.d@swipnet.se>
+       * xsettings.c (init_gsettings): Use g_settings_schema_source_lookup
+       instead of deprecated g_settings_list_schemas if possible (Bug#17434).
 -2014-05-07  Paul Eggert  <eggert@cs.ucla.edu>
 +2014-05-08  Paul Eggert  <eggert@cs.ucla.edu>
  
        * minibuf.c (read_minibuf): Avoid C99ism in previous patch (Bug#17430).
  
diff --cc src/fileio.c
Simple merge
@@@ -1,13 -1,20 +1,24 @@@
  #!/usr/bin/perl
  # -*- eval: (bug-reference-mode 1) -*-
  
+ use v5.14;
+ my $str= <<END;
+ Hello
+ END
+ my $a = $';
+ my $b=3;
+ print $str;
  if ($c && /====/){xyz;}
  
 -print << "EOF1" . s/he"llo/th'ere/;
 +print "a" . <<EOF . s/he"llo/th'ere/;
 +It's a surprise!
 +EOF
 +
 +print <<\EOF1 . s/he"llo/th'ere/;
  foo
  EOF2
  bar