Commit 37ad855a authored by Paul Eggert's avatar Paul Eggert
Browse files

Merge from origin/emacs-24

f1601063 Avoid assertion violations in Rmail due to newline cache
1b0ebbdb browse-url-firefox: update for firefox 36's removal of -remote
18178922 Avoid erratic behavior of menu-bar tooltips on w32  (Bug#19925)
02609324 Bump python.el version
b0adfc72 Spelling fixes
35f047c0 * src/fileio.c (Fmake_temp_name): Doc tweaks.
6f2971ab * lisp/comint.el (comint-line-beginning-position): Revert searching
65d8ac7c Mention in admin/notes/repo how to mark commits not to be merged.
86fe7502 # Remove NEWS temporary markup
4fa778b6 erc.el: Add old version header for package.el compatibilty
9366f054 Tramp: Disable paging with PAGER=cat

parents 36a50f38 f1601063
......@@ -7,6 +7,27 @@ package archive ( See admin/notes/elpa for further
explanation, and the README file in the branch for usage
* Install changes only on one branch, let them get merged elsewhere if needed.
In particular, install bug-fixes only on the release branch (if there
is one) and let them get synced to the trunk; do not install them by
hand on the trunk as well. E.g. if there is an active "emacs-24" branch
and you have a bug-fix appropriate for the next emacs-24.x release,
install it only on the emacs-24 branch, not on the trunk as well.
Installing things manually into more than one branch makes merges more
The exception is, if you know that the change will be difficult to
merge to the trunk (eg because the trunk code has changed a lot).
In that case, it's helpful if you can apply the change to both trunk
and branch yourself (when committing the branch change, indicate
in the commit log that it should not be merged to the trunk, by
including the phrase "Not to be merged to master", or any other phrase
that matches "merge").
* Installing changes from your personal branches.
If your branch has only a single commit, or many different real
......@@ -14,13 +14,6 @@ and NEWS.1-17 for changes in older Emacs versions.
You can narrow news to a specific version by calling `view-emacs-news'
with a prefix argument or by typing C-u C-h C-n.
Temporary note:
+++ indicates that all necessary documentation updates are complete.
(This means all relevant manuals in doc/ AND lisp doc-strings.)
--- means no change in the manuals is needed.
When you add a new item, use the appropriate mark if you are sure it applies,
otherwise leave it unmarked.
* Installation Changes in Emacs 25.1
......@@ -28,13 +21,16 @@ otherwise leave it unmarked.
** Building Emacs now requires C99 or later.
** The default value of `history-length' has increased to 100.
** The variable `redisplay-dont-pause' is obsolete.
** Building Emacs now requires GNU make, version 3.81 or later.
** `call-process-shell-command' and `process-file-shell-command'
don't take "&rest args" any more.
** `call-process-shell-command' and `process-file-shell-command' no longer
take "&rest args".
** The option `browse-url-firefox-startup-arguments' no longer has an effect.
** By default, Emacs no longer works on IRIX. We expect that Emacs
users are not affected by this, as SGI stopped supporting IRIX in
......@@ -51,32 +47,33 @@ If gnustep-config is not available, the old heuristics are used.
*** New option `erc-rename-buffers'.
*** New faces `erc-my-nick-prefix-face' and `erc-nick-prefix-face'.
*** `erc-format-@nick' displays all user modes instead of only op and voice.
*** The display of irc commands in the current buffer has been disabled.
*** `erc-version' now follows the Emacs version.
** Obsolete packages
*** cc-compat.el
** The configure option `--with-pkg-config-prog' has been removed.
Use './configure PKG_CONFIG=/full/name/of/pkg-config' if you need to.
*** crisp.el (moved to
** The configure option '--enable-silent-rules' is now the default,
and silent rules are now quieter. To get the old behavior where
'make' chatters a lot, configure with '--disable-silent-rules' or
build with 'make V=1'.
*** tpu-edt.el, ws-mode.el
These emulations of old editors are believed to be no longer relevant
- contact if you disagree.
** The configure option '--with-gameuser' now allows to specify a
group instead of a user if its argument is prefixed by ':' (a colon).
......@@ -89,6 +86,8 @@ be installed setgid. The option now defaults to the 'games' group.
It has no particular connection to Emacs and has not changed in years,
so if you want to use it, you can always take a copy from an older Emacs.
*** vi.el, vip.el (try M-x viper instead)
* Startup Changes in Emacs 25.1
2015-03-03 Glenn Morris <>
* net/browse-url.el (browse-url-firefox-startup-arguments):
Make obsolete.
(browse-url-firefox): Doc fix. Remove -remote, which no longer
exists in Firefox 36. (Bug#19921)
(browse-url-firefox-sentinel): Remove function.
2015-03-03 Eli Zaretskii <>
* frame.el (blink-cursor-timer-function): Don't increment
blink-cursor-blinks-done counter when a menu is active on a w32
frame. (Bug#19925)
2015-03-03 Juri Linkov <>
* comint.el (comint-line-beginning-position): Revert searching for
the prompt when comint-use-prompt-regexp is non-nil because it
doesn't distinguish input from output. Check the field property
`output' for the case when comint-use-prompt-regexp is nil.
2015-03-03 Jérémy Compostella <>
* net/tramp-sh.el (tramp-remote-process-environment): Disable paging
with PAGER=cat. (Bug#19870)
2015-03-03 Glenn Morris <>
2015-03-03 Glenn Morris <>
* textmodes/flyspell.el (flyspell-duplicate-distance):
......@@ -2274,8 +2274,6 @@ a buffer local variable."
;; Use comint-prompt-regexp
(unless (looking-at comint-prompt-regexp)
(re-search-backward comint-prompt-regexp nil t))
;; Use input fields. Note that, unlike the behavior of
......@@ -2285,7 +2283,10 @@ a buffer local variable."
;; if there are two fields on a line, then the first one is the
;; prompt, and the second one is an input field, and is front-sticky
;; (as input fields should be).
(constrain-to-field (field-beginning) (line-end-position))))
(constrain-to-field (if (eq (field-at-pos (point)) 'output)
(defun comint-bol (&optional arg)
"Go to the beginning of line, then skip past the prompt, if any.
2015-03-03 Kelvin White <>
* erc.el: Add old version string back to file header for
package.el compatibility
2015-03-03 Glenn Morris <>
2015-03-03 Glenn Morris <>
* erc.el (erc-rename-buffers): Doc fix. Add :version.
......@@ -12,7 +12,7 @@
;; Kelvin White (
;; Maintainer:
;; Keywords: IRC, chat, client, Internet
;; Version: 5.3
;; This file is part of GNU Emacs.
......@@ -1816,8 +1816,12 @@ command starts, by installing a pre-command hook."
(defun blink-cursor-timer-function ()
"Timer function of timer `blink-cursor-timer'."
(internal-show-cursor nil (not (internal-show-cursor-p)))
;; Suspend counting blinks when the w32 menu-bar menu is displayed,
;; since otherwise menu tooltips will behave erratically.
(or (and (fboundp 'w32--menu-bar-in-use)
(setq blink-cursor-blinks-done (1+ blink-cursor-blinks-done)))
;; Each blink is two calls to this function.
(setq blink-cursor-blinks-done (1+ blink-cursor-blinks-done))
(when (and (> blink-cursor-blinks 0)
(<= (* 2 blink-cursor-blinks) blink-cursor-blinks-done))
......@@ -337,6 +337,9 @@ Defaults to the value of `browse-url-firefox-arguments' at the time
:type '(repeat (string :tag "Argument"))
:group 'browse-url)
(make-obsolete-variable 'browse-url-firefox-startup-arguments
"it no longer has any effect." "24.5")
(defcustom browse-url-chromium-program
(let ((candidates '("chromium" "chromium-browser")))
(while (and candidates (not (executable-find (car candidates))))
......@@ -1102,68 +1105,39 @@ used instead of `browse-url-new-window-flag'."
(defun browse-url-firefox (url &optional new-window)
"Ask the Firefox WWW browser to load URL.
Default to the URL around or before point. The strings in
variable `browse-url-firefox-arguments' are also passed to
Defaults to the URL around or before point. Passes the strings
in the variable `browse-url-firefox-arguments' to Firefox.
When called interactively, if variable
`browse-url-new-window-flag' is non-nil, load the document in a
new Firefox window, otherwise use a random existing one. A
non-nil interactive prefix argument reverses the effect of
Interactively, if the variable `browse-url-new-window-flag' is non-nil,
loads the document in a new Firefox window. A non-nil prefix argument
reverses the effect of `browse-url-new-window-flag'.
If `browse-url-firefox-new-window-is-tab' is non-nil, then
whenever a document would otherwise be loaded in a new window, it
is loaded in a new tab in an existing window instead.
When called non-interactively, optional second argument
NEW-WINDOW is used instead of `browse-url-new-window-flag'.
Non-interactively, this uses the optional second argument NEW-WINDOW
instead of `browse-url-new-window-flag'.
On MS-Windows systems the optional `new-window' parameter is
ignored. Firefox for Windows does not support the \"-remote\"
command line parameter. Therefore, the
`browse-url-new-window-flag' and `browse-url-firefox-new-window-is-tab'
are ignored as well. Firefox on Windows will always open the requested
URL in a new window."
On MS Windows, this ignores `browse-url-new-window-flag' and
`browse-url-firefox-new-window-is-tab', as well as the NEW-WINDOW argument.
It always uses a new window."
(interactive (browse-url-interactive-arg "URL: "))
(setq url (browse-url-encode-url url))
(let* ((process-environment (browse-url-process-environment))
(not (memq system-type '(windows-nt ms-dos))))
(apply 'start-process
(concat "firefox " url) nil
(if use-remote
(list "-remote"
(if (browse-url-maybe-new-window new-window)
(if browse-url-firefox-new-window-is-tab
(list url))))))
;; If we use -remote, the process exits with status code 2 if
;; Firefox is not already running. The sentinel runs firefox
;; directly if that happens.
(when use-remote
(set-process-sentinel process
`(lambda (process change)
(browse-url-firefox-sentinel process ,url))))))
(defun browse-url-firefox-sentinel (process url)
"Handle a change to the process communicating with Firefox."
(or (eq (process-exit-status process) 0)
(let* ((process-environment (browse-url-process-environment)))
;; Firefox is not running - start it
(message "Starting Firefox...")
(apply 'start-process (concat "firefox " url) nil
(append browse-url-firefox-startup-arguments (list url))))))
(let* ((process-environment (browse-url-process-environment)))
(apply 'start-process
(concat "firefox " url) nil
;; FIXME someone should check if this limitation
;; still applies.
(unless (memq system-type '(windows-nt ms-dos))
(if (browse-url-maybe-new-window new-window)
(if browse-url-firefox-new-window-is-tab
(list url)))))
(defun browse-url-chromium (url &optional _new-window)
......@@ -13109,7 +13109,7 @@
2012-01-03 Nicolas Goaziou <>
* org.el (org-fontify-meta-lines-and-blocks-1):
Recognize "name" as a valid keyword that can preceed a block.
Recognize "name" as a valid keyword that can precede a block.
2012-01-03 Eric Schulte <>
......@@ -4,7 +4,7 @@
;; Author: Fabián E. Gallina <>
;; URL:
;; Version: 0.24.4
;; Version: 0.24.5
;; Maintainer:
;; Created: Jul 2010
;; Keywords: languages
......@@ -220,7 +220,7 @@ get_next_token (char * buf, const char ** pSrc)
/* Output literal backslashes. Note that we don't
treat a backslash as an escape character here,
since it doesn't preceed a quote. */
since it doesn't precede a quote. */
for ( ; escape_char_run > 0; escape_char_run--)
*o++ = escape_char;
2015-03-03 Eli Zaretskii <>
* search.c (find_newline): Avoid assertion violations in
CHAR_TO_BYTE when a portion of the buffer was deleted and we look
for newlines near the end of the buffer. This happens in Rmail
hen JIT font-lock fontifies a newly displayed portion of the
2015-03-03 Eli Zaretskii <>
* w32fns.c (Fw32__menu_bar_in_use): New internal function.
2015-03-03 Glenn Morris <>
* fileio.c (Fmake_temp_name): Doc tweaks. (Bug#19858)
2015-03-03 Eli Zaretskii <>
* menu.c (Fx_popup_menu) [HAVE_X_WINDOWS]: Call
mouse_position_for_popup only for X frames. (Bug#19862)
2015-03-03 Eli Zaretskii <>
2015-03-03 Eli Zaretskii <>
* buffer.c (syms_of_buffer): Doc fix. (Bug#19841)
......@@ -724,20 +724,16 @@ make_temp_name (Lisp_Object prefix, bool base64_p)
DEFUN ("make-temp-name", Fmake_temp_name, Smake_temp_name, 1, 1, 0,
doc: /* Generate temporary file name (string) starting with PREFIX (a string).
The Emacs process number forms part of the result,
so there is no danger of generating a name being used by another process.
The Emacs process number forms part of the result, so there is no
danger of generating a name being used by another Emacs process
\(so long as only a single host can access the containing directory...).
In addition, this function makes an attempt to choose a name
which has no existing file. To make this work,
PREFIX should be an absolute file name.
This function tries to choose a name that has no existing file.
For this to work, PREFIX should be an absolute file name.
There is a race condition between calling `make-temp-name' and creating the
file which opens all kinds of security holes. For that reason, you should
probably use `make-temp-file' instead, except in three circumstances:
* If you are creating the file in the user's home directory.
* If you are creating a directory rather than an ordinary file.
* If you are taking special precautions as `make-temp-file' does. */)
file, which opens all kinds of security holes. For that reason, you should
normally use `make-temp-file' instead. */)
(Lisp_Object prefix)
return make_temp_name (prefix, 0);
......@@ -706,6 +706,12 @@ find_newline (ptrdiff_t start, ptrdiff_t start_byte, ptrdiff_t end,
start, &next_change);
if (result)
/* When the cache revalidation is deferred,
next-change might point beyond ZV, which will
cause assertion violation in CHAR_TO_BYTE below.
Limit next_change to ZV to avoid that. */
if (next_change > ZV)
next_change = ZV;
start = next_change;
lim1 = next_change = end;
......@@ -8238,6 +8238,15 @@ w32_sys_ring_bell (struct frame *f)
MessageBeep (sound_type);
DEFUN ("w32--menu-bar-in-use", Fw32__menu_bar_in_use, Sw32__menu_bar_in_use,
0, 0, 0,
doc: /* Return non-nil when a menu-bar menu is being used.
Internal use only. */)
return menubar_in_use ? Qt : Qnil;
......@@ -8615,6 +8624,7 @@ only be necessary if the default setting causes problems. */);
defsubr (&Sw32_frame_rect);
defsubr (&Sw32_frame_menu_bar_size);
defsubr (&Sw32_battery_status);
defsubr (&Sw32__menu_bar_in_use);
defsubr (&Sfile_system_info);
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment