]> git.eshelyaron.com Git - emacs.git/log
emacs.git
8 years ago; Merge from origin/emacs-25
Paul Eggert [Sun, 1 Jan 2017 09:02:46 +0000 (01:02 -0800)]
; Merge from origin/emacs-25

The following commit was skipped:

dfc9f11 Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emac...

8 years agoMerge from origin/emacs-25
Paul Eggert [Sun, 1 Jan 2017 09:02:45 +0000 (01:02 -0800)]
Merge from origin/emacs-25

9adb101 Document 'describe-fontset'
229315c ; Add missing symbol quoting.
3d94931 Repair desktop restoration on text terminals
43022f9 Ignore forward-sexp-function in js-mode indentation code
b19fb49 Improve documentation of 'define-coding-system'
467768f Fix Bug#25162
6db78ae Fix a typo in define-abbrev-table
5f7d906 Bump makeinfo requirement from 4.7 to 4.13
442e2f6 Fixes related to select-enable-clipboard
e4ac450 Define struct predicate before acccesors
08decbd Doc fix for vc-git
5531e75 Further improve make-dist checking
953bf67 Improve previous make-dist change
129645a Make make-dist --snapshot do some sanity checks

# Conflicts:
# lisp/menu-bar.el

8 years agoGive eval-and-compile a correct edebug spec. Fixes bug #16184 properly.
Alan Mackenzie [Sun, 1 Jan 2017 08:28:04 +0000 (08:28 +0000)]
Give eval-and-compile a correct edebug spec.  Fixes bug #16184 properly.

* lisp/emacs-lisp/edebug.el (edebug_offset_indices): Revert abortive commit
from Thu Dec 29 09:22:36 2016 +0000 which didn't really fix the bug.

* lisp/emacs-lisp/byte-run.el (eval-and-compile): Change the edebug spec from
t to (&rest def-form).

8 years agoClarify internal_catch etc.
Paul Eggert [Sat, 31 Dec 2016 21:10:38 +0000 (13:10 -0800)]
Clarify internal_catch etc.

The recent change to internal_catch and friends relied on some
confusion I introduced to the code in 2013.  Attempt to fix
the confusion by clarifying the code instead.  This saves an
instruction and a load dependency in the typical case.
* src/eval.c (internal_catch, internal_condition_case)
(internal_condition_case_1, internal_condition_case_2)
(internal_condition_case_n): Undo the previous change.  Instead,
use use ‘c’ rather than ‘handlerlist’ in the typical case.
Also, use ‘eassert’ rather than ‘clobbered_eassert’ when possible.

8 years agoFurther improve filenotify-tests.el
Ken Brown [Sat, 31 Dec 2016 21:16:12 +0000 (16:16 -0500)]
Further improve filenotify-tests.el

* test/lisp/filenotify-tests.el
(file-notify--test-read-event): Adapt to file monitors of type
GFamFileMonitor, which occur on Cygwin.
(file-notify--test-monitor): Update doc string.

8 years ago* src/xdisp.c (string_from_display_spec): Simplify.
Paul Eggert [Sat, 31 Dec 2016 17:13:38 +0000 (09:13 -0800)]
* src/xdisp.c (string_from_display_spec): Simplify.

8 years agoRework NS event handling (bug#25265)
Alan Third [Sat, 31 Dec 2016 10:31:19 +0000 (10:31 +0000)]
Rework NS event handling (bug#25265)

* src/nsterm.m (unwind_apploopnr): Remove.
(ns_read_socket): Remove references to apploopnr.  Make processing the
NS event loop conditional on being in the main thread.
(ns_select): Remove references to apploopnr.  Remove all fd_handler
related stuff.  Check if there are events waiting on the NS event
queue rather than running the event loop.  Remove unused variables and
code.
(fd_handler): Remove.
(ns_term_init): Remove creation of fd_handler thread.
(hold_event, EmacsApp:sendEvent, EmacsView:mouseMoved,
EmacsView:windowDidExpose): Remove send_appdefined.
(ns_send_appdefined): Always check the event queue for
applicationDefined events rather than relying on send_appdefined var.
* src/nsterm.h: Remove reference to fd_handler method.

8 years agoCheckdoc: use syntax functions instead of regex
Philipp Stephani [Fri, 30 Dec 2016 17:00:54 +0000 (18:00 +0100)]
Checkdoc: use syntax functions instead of regex

In checkdoc.el, get rid of the error-prone regex to find definition
forms, and use existing syntax-based navigation functions instead.
This fixes a corner case with one-argument `defvar' forms.

* lisp/emacs-lisp/checkdoc.el (checkdoc--next-docstring): New function.
(checkdoc-next-docstring, checkdoc-defun): Use it.
* test/lisp/emacs-lisp/checkdoc-tests.el (checkdoc-tests--next-docstring):
Add unit test.

8 years agoDon't define NOMINMAX on MS-Windows
Eli Zaretskii [Sat, 31 Dec 2016 12:07:39 +0000 (14:07 +0200)]
Don't define NOMINMAX on MS-Windows

* src/callproc.c (NOMINMAX) [WINDOWSNT]: Don't define.  This is no
longer needed with the current sources and MinGW headers, while
defining NOMINMAX causes an annoying compiler warning.

8 years agoSimplify code in eval.c that calls 'setjmp'
Chris Gregory [Sat, 31 Dec 2016 11:36:32 +0000 (13:36 +0200)]
Simplify code in eval.c that calls 'setjmp'

* src/eval.c (internal_catch, internal_condition_case)
(internal_condition_case_1, internal_condition_case_2)
(internal_condition_case_n): Factor out the common tail of the
functions.

Copyright-paperwork-exempt: yes

8 years agoSimplify code in 'string_from_display_spec'
Chris Gregory [Sat, 31 Dec 2016 11:18:57 +0000 (13:18 +0200)]
Simplify code in 'string_from_display_spec'

* src/xdisp.c (string_from_display_spec): Eliminate a redundant
test before the loop.

Copyright-paperwork-exempt: yes

8 years agoSerialize random number generation on MS-Windows
Eli Zaretskii [Sat, 31 Dec 2016 11:01:19 +0000 (13:01 +0200)]
Serialize random number generation on MS-Windows

* src/w32.c (rand_as183): New function.
(random): Use it instead of MS runtime's 'rand'.  This avoids
producing separate and identical random series in each Lisp
thread.
(srandom): Modify to supply 3 seed values to 'rand_as183'.

8 years ago* src/gfilenotify.c (Fgfile_monitor_name): Return interned symbol.
Michael Albinus [Sat, 31 Dec 2016 09:40:04 +0000 (10:40 +0100)]
* src/gfilenotify.c (Fgfile_monitor_name): Return interned symbol.

8 years agoDon't call xg_select for a NextStep build.
Ken Raeburn [Fri, 30 Dec 2016 22:51:35 +0000 (17:51 -0500)]
Don't call xg_select for a NextStep build.

NextStep builds use glib but don't use xg_select.

* src/process.c (wait_reading_process_output): Don't call xg_select
for a NextStep build.

8 years agoIncrease the obarray size.
Ken Raeburn [Fri, 30 Dec 2016 22:41:26 +0000 (17:41 -0500)]
Increase the obarray size.

In a typical GNU/Linux/X11 build, we wind up with over 15k symbols by
the time we've started.  The old obarray size ensured an average chain
length of 10 or more.

* src/lread.c (OBARRAY_SIZE): Increase to 15121.

8 years agoInitialize thread support for Xlib.
Ken Raeburn [Fri, 30 Dec 2016 01:56:31 +0000 (20:56 -0500)]
Initialize thread support for Xlib.

* src/xterm.c (x_initialize) [THREADS_ENABLED]: Call XInitThreads
before doing anything else with X.

8 years agoRename primary_thread to main_thread
Paul Eggert [Fri, 30 Dec 2016 21:42:38 +0000 (13:42 -0800)]
Rename primary_thread to main_thread

This avoids the confusion of using two different phrases "main thread"
and "primary thread" internally to mean the same thing.  See:
http://lists.gnu.org/archive/html/emacs-devel/2016-12/msg01142.html
* src/thread.c (main_thread): Rename from primary_thread,
since the new name no longer clashes with main_thread_id
and Emacs internals normally call this the "main thread".
(init_main_thread): Rename from init_primary_thread.
(main_thread_p): Rename from primary_thread_p.
All uses changed.

8 years agoRename main_thread to main_thread_id and simplify
Paul Eggert [Fri, 30 Dec 2016 21:01:39 +0000 (13:01 -0800)]
Rename main_thread to main_thread_id and simplify

* src/emacs-module.c: Include syssignal.h, for main_thread_id.
[HAVE_PTHREAD]: Do not include pthread.h.
(main_thread): Remove.  All uses replaced by main_thread_id,
or by dwMainThreadId on NT.  Since the HAVE_PTHREAD code is now using
the main_thread_id established by sysdep.c, there is no need for a
separate copy of the main thread ID here.
(module_init): Remove.  All uses removed.
* src/sysdep.c (main_thread_id) [HAVE_PTHREAD]:
Rename from main_thread.  All uses changed.  Now extern.

8 years ago* src/gfilenotify.c (Fgfile_monitor_name): Return a symbol.
Michael Albinus [Fri, 30 Dec 2016 19:04:33 +0000 (20:04 +0100)]
* src/gfilenotify.c (Fgfile_monitor_name): Return a symbol.

8 years ago* src/sysdep.c (deliver_process_signal): Improve comment.
Paul Eggert [Fri, 30 Dec 2016 17:45:46 +0000 (09:45 -0800)]
* src/sysdep.c (deliver_process_signal): Improve comment.

8 years agoCC Mode: Fix the fontification of a spuriously recognised enum member.
Alan Mackenzie [Fri, 30 Dec 2016 15:31:42 +0000 (15:31 +0000)]
CC Mode: Fix the fontification of a spuriously recognised enum member.

The "enum" was in an argument list, but triggered the fontification of a
following identifier in the function block as though it were in an enum
declaration.

* lisp/progmodes/cc-fonts.el (c-font-lock-enum-body): New function.
(c-basic-matchers-after): Replace the inline stanza for enum elements with a
call to c-font-lock-enum-body.

* lisp/progmodes/cc-langs.el (c-enum-clause-introduction-re): New language
variable.

8 years agoAttempt to fix crashes with threads in GTK builds
Eli Zaretskii [Fri, 30 Dec 2016 09:36:07 +0000 (11:36 +0200)]
Attempt to fix crashes with threads in GTK builds

* src/xgselect.c (xg_select): Call pselect via thread_select, not
directly, to avoid running Lisp (via unblock_input) when more than
one thread could be running.  (Bug#25247)
* src/process.c (wait_reading_process_output) [HAVE_GLIB]: Call
xg_select directly instead of through thread_select.
* src/xgselect.h (xg_select): Last 2 arguments are no longer
'const', for consistency with thread_select.

8 years agoAdd entry for biblatex
Arash Esbati [Fri, 30 Dec 2016 06:44:41 +0000 (07:44 +0100)]
Add entry for biblatex

* lisp/textmodes/reftex-vars.el (reftex-cite-format-builtin): Add
entry for biblatex macros.

8 years agoffap-string-at-point: Limit max length of active region
Tino Calancha [Fri, 30 Dec 2016 06:31:01 +0000 (15:31 +0900)]
ffap-string-at-point: Limit max length of active region

Prevents that 'ffap-guesser' waste time checking large strings
which are likely not valid candidates (Bug#25243).
* lisp/ffap.el (ffap-max-region-length): New variable.
(ffap-string-at-point): Use it.
* test/lisp/ffap-tests.el: New test suite.
(ffap-tests-25243): Add test for this bug.

8 years agolast-chance: Also ignore NEWS files + typo fixes
Thien-Thi Nguyen [Fri, 30 Dec 2016 06:13:17 +0000 (07:13 +0100)]
last-chance: Also ignore NEWS files + typo fixes

* admin/last-chance.el: Fix typo in copyright notice.
(last-chance-uninteresting-regexps): Add entry to match NEWS files.
(last-chance-cleanup): Fix typo in docstring.

8 years ago* mh-e.el (mh-fetch-x-image-url): Fix a docstring typo.
Mike Kupfer [Wed, 28 Dec 2016 23:46:19 +0000 (15:46 -0800)]
* mh-e.el (mh-fetch-x-image-url): Fix a docstring typo.

8 years agoRemove an ambiguity from defvar's doc string. Fixes bug #25292.
Alan Mackenzie [Thu, 29 Dec 2016 20:52:02 +0000 (20:52 +0000)]
Remove an ambiguity from defvar's doc string.  Fixes bug #25292.

The ambiguity was whether INITVALUE is evaluated when it's not going to be
used to set SYMBOL's value.

* src/eval.c (defvar): Rewrite a paragraph of the doc string.

8 years agoImprove filenotify-tests.el
Michael Albinus [Thu, 29 Dec 2016 18:48:17 +0000 (19:48 +0100)]
Improve filenotify-tests.el

* src/inotify.c (Finotify_valid_p):
* src/kqueue.c (Fkqueue_valid_p):
* src/w32notify.c (Fw32notify_valid_p):
* src/gfilenotify.c (Fgfile_valid_p): Fix typo in docstring.
(Fgfile_monitor_name): New defun.
(syms_of_gfilenotify): Declare Sgfile_monitor_name.

* test/lisp/filenotify-tests.el (file-notify--test-read-event):
New defun, derived from `file-notify--test-read-event-timeout'.
Replace all calls of `read-event' by this.
(file-notify--test-timeout): Fix docstring.
(file-notify--test-monitor): New defun.
(file-notify--deftest-remote): Do not bind
`file-notify--test-read-event-timeout' anymore.
(file-notify-test00-availability): Print also monitor, if existent.
(file-notify--test-with-events): Add an additional
`file-notify--test-read-event' call, in order to get it work
after `file-notify-add-watch'.  Remove special timeout for cygwin.
(file-notify-test02-events): Make a better check for cygwin.
(file-notify-test06-many-events): Improve event list for cygwin.
(file-notify-test08-watched-file-in-watched-dir): Add cygwin case.

8 years agoPartially correct fontification of "(b*3)", and the like, in C++ Mode
Alan Mackenzie [Thu, 29 Dec 2016 15:34:36 +0000 (15:34 +0000)]
Partially correct fontification of "(b*3)", and the like, in C++ Mode

This problem is caused by the fundamental ambiguity in C++ between
argument declarations and initialisation clauses.

* lisp/progmodes/cc-fonts.el (c-font-lock-declarations): If we have an open
paren preceded by an arithmetic operator, we give this the context nil, not
'arglist.

* lisp/progmodes/cc-langs.el (c-arithmetic-operators, c-arithmetic-op-regexp):
New lang consts and vars.

8 years agoInitialize edebug-offset-indices to a cons, not nil. Fixes bug #16184.
Alan Mackenzie [Thu, 29 Dec 2016 09:22:36 +0000 (09:22 +0000)]
Initialize edebug-offset-indices to a cons, not nil.  Fixes bug #16184.

This is because there are times when this variable is changed by setcar before
an atom is pushed onto it by debug-enter.  This happens, for example, whilst
instrumenting c-font-lock-declarations in .../lisp/progmodes/cc-fonts.el.

* lisp/emacs-lisp/edebug.el (edebug-offset-indices): initialize to '(0).

8 years ago; fix indenting
Paul Eggert [Tue, 27 Dec 2016 23:27:40 +0000 (15:27 -0800)]
; fix indenting

Problem reported by Chris Gregory in:
http://lists.gnu.org/archive/html/emacs-devel/2016-12/msg00968.html
* src/keyboard.c (read_event_from_main_queue): Fix indenting.

8 years agoRelease Tramp 2.3.1
Michael Albinus [Tue, 27 Dec 2016 19:06:27 +0000 (20:06 +0100)]
Release Tramp 2.3.1

* doc/misc/trampver.texi:
* lisp/net/trampver.el: Change version to "2.3.1".

* lisp/net/tramp.el (tramp-eshell-directory-change): Add it to
`eshell-mode-hook' but `eshell-first-time-mode-hook'.

* lisp/net/tramp-compat.el (tramp-compat-file-name-quoted-p)
(tramp-compat-file-name-quote)
(tramp-compat-file-name-unquote): Embed them in `eval-and-compile'.

8 years agoSimplify prog1 implementation
Paul Eggert [Tue, 27 Dec 2016 18:32:44 +0000 (10:32 -0800)]
Simplify prog1 implementation

Inspired by a suggestion from Chris Gregory in:
http://lists.gnu.org/archive/html/emacs-devel/2016-12/msg00965.html
On my platform, this generates exactly the same machine insns.
* src/eval.c (prog_ignore): Rename from unwind_body, since
it’s more general than that.  All callers changed.
(Fprog1): Simplify by using prog_ignore.
(Fwhile): Clarify by using prog_ignore.

8 years ago* lisp/emacs-lisp/inline.el: Fix apply-conversion (bug#25280)
Stefan Monnier [Tue, 27 Dec 2016 17:44:32 +0000 (12:44 -0500)]
* lisp/emacs-lisp/inline.el: Fix apply-conversion (bug#25280)

(inline--dont-quote): Quote the function with #' when passing it to `apply'.

8 years agoRemove a use of lexical-let
Mark Oteiza [Tue, 27 Dec 2016 16:09:39 +0000 (11:09 -0500)]
Remove a use of lexical-let

* lisp/gnus/message.el (message-completion-function): Just use let,
since the file now uses lexical-binding.

8 years agoImprove filenotify-tests.el on Cygwin (Bug #21804)
Ken Brown [Mon, 26 Dec 2016 18:24:43 +0000 (13:24 -0500)]
Improve filenotify-tests.el on Cygwin (Bug #21804)

* test/lisp/filenotify-tests.el [CYGWIN]
(file-notify--test-read-event-timeout): Increase.
(file-notify--test-with-events): Add delay before executing body.
(file-notify-test02-events, file-notify-test04-file-validity):
Adjust expected results.

8 years agoFix expand-file-name on DOS_NT systems when /: escaping is used
Eli Zaretskii [Tue, 27 Dec 2016 08:12:06 +0000 (10:12 +0200)]
Fix expand-file-name on DOS_NT systems when /: escaping is used

* src/fileio.c (Fexpand_file_name) [DOS_NT]: Don't expand "~" in
file names escaped by "/:".  Don't recursively expand
default-directory escaped with "/:" which is not followed by a
drive spec.  (Bug#25183)

8 years agoFix `mail-sources' value of `(group)' in Gnus manual (bug#25275)
Bake Timmons [Tue, 27 Dec 2016 06:39:02 +0000 (06:39 +0000)]
Fix `mail-sources' value of `(group)' in Gnus manual (bug#25275)

* doc/misc/gnus.texi (Mail Source Specifiers):
Replace wrong `mail-sources' value of `(group)' in Gnus manual with
the correct `((group))' value.  (bug#25275) (tiny change)

8 years agoFix bug in customizing `mail-sources' variable (bug#25274)
Bake Timmons [Tue, 27 Dec 2016 06:38:41 +0000 (06:38 +0000)]
Fix bug in customizing `mail-sources' variable (bug#25274)

* lisp/gnus/mail-source.el (mail-sources): Use list instead of cons
for lone argument. (bug#25274) (tiny change)

8 years agoCheckdoc: Don't require a space before an arg list
Philipp Stephani [Wed, 23 Nov 2016 19:29:36 +0000 (20:29 +0100)]
Checkdoc: Don't require a space before an arg list

See Bug#24998.

* lisp/emacs-lisp/checkdoc.el (checkdoc-defun-regexp): Don't require a
space before a argument list.
* test/lisp/emacs-lisp/checkdoc-tests.el (checkdoc-tests--bug-24998):
Add unit test.

8 years agoAdd zshrc and zshenv detection to sh-mode (bug#25217)
Michihito Shigemura [Tue, 20 Dec 2016 12:12:35 +0000 (21:12 +0900)]
Add zshrc and zshenv detection to sh-mode (bug#25217)

* lisp/progmodes/sh-script.el (sh-mode): Add zsh string-match

Copyright-paperwork-exempt: yes

8 years agoFix typo in lisp.h reordering patch
Paul Eggert [Sun, 25 Dec 2016 18:12:39 +0000 (10:12 -0800)]
Fix typo in lisp.h reordering patch

* src/lisp.h (XUNTAG) [!USE_LSB_TAG]: Remove duplicate defn.
Reported by Eli Zaretskii (Bug#25128#19).

8 years agoregex.h now includes sys/types.h
Paul Eggert [Sun, 25 Dec 2016 18:02:27 +0000 (10:02 -0800)]
regex.h now includes sys/types.h

* src/dired.c, src/emacs.c, src/search.c, src/syntax.c, src/thread.h:
Do not include sys/types.h; no longer needed.
* src/regex.h: Include <sys/types.h>, as that's what Gnulib and
glibc regex.h does, and POSIX has blessed this since 2008.

8 years agoReorder lisp.h to declare types before using them
Paul Eggert [Sun, 25 Dec 2016 17:17:02 +0000 (09:17 -0800)]
Reorder lisp.h to declare types before using them

This puts basic functions for types to be after the corresponding
type definitions.  This is a more-common programming style in C,
and will make it easier to port Emacs to gcc
-fcheck-pointer-bounds, since the functions now have access to the
corresponding types' sizes.  This patch does not change the code;
it just moves declarations and definitions and removes
no-longer-needed forward declarations (Bug#25128).
* src/buffer.c, src/data.c, src/image.c:
Include process.h, for PROCESSP.
* src/buffer.h (BUFFERP, CHECK_BUFFER, XBUFFER):
* src/process.h (PROCESSP, CHECK_PROCESS, XPROCESS):
* src/termhooks.h (TERMINALP, XTERMINAL):
* src/window.h (WINDOWP, CHECK_WINDOW, XWINDOW):
* src/thread.h (THREADP, CHECK_THREAD, XTHREAD, MUTEXP, CHECK_MUTEX)
(XMUTEX, CONDVARP, CHECK_CONDVAR, XCONDVAR):
Move here from lisp.h.
* src/intervals.h: Include buffer.h, for BUFFERP.
Include lisp.h, for Lisp_Object.
* src/lisp.h: Reorder declarations and definitions as described
above.  Move thread includes to be later, so that they can use the
reordered definitions.  Move some symbols to other headers (noted
elsewhere).  Remove forward decls that are no longer needed.
* src/thread.h: Include systhread.h here, not in lisp.h,
since lisp.h itself does not need systhread.h.

8 years agodiff-mode auto-refines only after a successful motion
Dima Kogan [Tue, 20 Dec 2016 07:23:14 +0000 (23:23 -0800)]
diff-mode auto-refines only after a successful motion

Prior to this patch (if enabled) auto-refinement would kick in after all
hunk navigation commands, even if the motion failed.  This would result
in a situation where the hunk navigation would signal an error and beep,
but yet still accomplish potentially useful work, by auto-refining.
This patch moves the auto-refinement code to only run when a motion was
successful

* lisp/vc/diff-mode.el (diff--internal-hunk-next,
  diff--internal-hunk-prev): Removed auto-refinement-triggering code
* lisp/vc/diff-mode.el (diff--wrap-navigation): Added
  auto-refinement-triggering code

8 years agodiff-mode is able to better handle file headers
Dima Kogan [Tue, 20 Dec 2016 07:25:28 +0000 (23:25 -0800)]
diff-mode is able to better handle file headers

This fixes a regression introduced in

  http://git.savannah.gnu.org/gitweb/?p=emacs.git;a=commit;h=2c8a7e50d24daf19ea7d86f1cfeaa98a41c56085

This bug was filed in

  https://debbugs.gnu.org/cgi/bugreport.cgi?bug=25105

Patches generated from a VCS such as git contain a patch message at the
start, and diff-mode is now once-again able to properly able to ignore
this message when issuing navigation commands around the message.

* lisp/vc/diff-mode.el (diff-beginning-of-file-and-junk): More
  thoroughly ignore the header when looking for a beginning of file
  diffs.

8 years agoUse libpng-config --ldflags, not --libs
Paul Eggert [Sun, 25 Dec 2016 01:03:22 +0000 (17:03 -0800)]
Use libpng-config --ldflags, not --libs

Problem reported by James K. Lowden (Bug#25268).
* configure.ac (LIBPNG): Pass --ldflags, not --libs, to libpng-config.

8 years agoRemove redundant `save-match-data' in whitespace.el
Noam Postavsky [Sat, 24 Dec 2016 14:41:46 +0000 (09:41 -0500)]
Remove redundant `save-match-data' in whitespace.el

* lisp/whitespace.el (whitespace-cleanup, whitespace-cleanup-region):
(whitespace-report-region): Remove redundant `save-match-data' calls.

8 years agoFix whitespace eob cleanup
Noam Postavsky [Wed, 21 Dec 2016 04:02:48 +0000 (23:02 -0500)]
Fix whitespace eob cleanup

* lisp/whitespace.el (whitespace-empty-at-eob-regexp): Match any number
of empty lines at end of buffer.
* test/lisp/whitespace-tests.el (whitespace-cleanup-eob): New test.
(whitespace-tests--cleanup-string): New helper function for tests.

8 years agoFix timezone detection of parse-iso8601-time-string
Hong Xu [Sat, 24 Dec 2016 12:35:12 +0000 (14:35 +0200)]
Fix timezone detection of parse-iso8601-time-string

* parse-time.el (parse-iso8601-time-string): Fix timezone
parsing.  Add a doc string.  (Bug#25086)
* editfns.c (Fdecode-time): Doc fix.
* emacs-mime.texi (time-date): Add an example for
parse-iso8601-time-string.
* parse-time-tests.el (parse-time-tests): Add tests for
parse-iso8601-time-string.

8 years agoSimplify exec_byte_code via moving decls etc.
Paul Eggert [Sat, 24 Dec 2016 05:38:59 +0000 (21:38 -0800)]
Simplify exec_byte_code via moving decls etc.

* src/bytecode.c (exec_byte_code): Simplify, mostly by moving
initializers into decls, and by omitting some unnecessary changes
to ‘top’.

8 years agoRemove interpreter’s byte stack
Paul Eggert [Sat, 24 Dec 2016 05:13:58 +0000 (21:13 -0800)]
Remove interpreter’s byte stack

This improves performance overall on my benchmark on x86-64,
since the interpreted program-counter resides in a machine
register rather than in RAM.
* etc/DEBUG, src/.gdbinit: Remove xbytecode GDB command, as there
is no longer a byte stack to decode.
* src/bytecode.c (struct byte_stack, byte_stack_list)
(relocate_byte_stack): Remove.  All uses removed.
(FETCH): Simplify now that pc is now local (typically, in a
register) and no longer needs to be relocated.
(CHECK_RANGE): Remove.  All uses now done inline, in a different way.
(BYTE_CODE_QUIT): Remove; now done by op_relative_branch.
(exec_byte_code): Allocate a copy of the function’s bytecode,
so that there is no problem if GC moves it.
* src/lisp.h (struct handler): Remove byte_stack member.
All uses removed.
* src/thread.c (unmark_threads): Remove.  All uses removed.
* src/thread.h (struct thread_state): Remove m_byte_stack_list member.
All uses removed.  m_stack_bottom is now the first non-Lisp field.

8 years agoBYTE_CODE_SAFE typo fix
Paul Eggert [Sat, 24 Dec 2016 04:30:11 +0000 (20:30 -0800)]
BYTE_CODE_SAFE typo fix

* src/bytecode.c (FETCH): Depend on the value of BYTE_CODE_SAFE,
not on whether it is defined.

8 years agoBYTE_CODE_SAFE cleanups
Paul Eggert [Sat, 24 Dec 2016 03:01:36 +0000 (19:01 -0800)]
BYTE_CODE_SAFE cleanups

* src/bytecode.c (BYTE_MAINTAIN_TOP): Remove; no longer needed.
(struct byte_stack) [BYTE_MAINTAIN_TOP]:
Remove unused members ‘top’ and ‘bottom’.
(exec_byte_code): Nest inside { } to avoid GCC warning about
jumping over declaration when compiled with -DBYTE_CODE_SAFE.

8 years agolast-chance: new utility lib for dangling deterrence
Thien-Thi Nguyen [Sat, 24 Dec 2016 02:43:37 +0000 (03:43 +0100)]
last-chance: new utility lib for dangling deterrence

* admin/last-chance.el: New file.

8 years agoUse max_align_t instead of void *
Paul Eggert [Sat, 24 Dec 2016 02:28:44 +0000 (18:28 -0800)]
Use max_align_t instead of void *

* src/thread.c (run_thread): Don’t assume void * is aligned enough.

8 years agoPrevent infloops in redisplay due to truncate-lines and overlays
Eli Zaretskii [Fri, 23 Dec 2016 14:17:52 +0000 (16:17 +0200)]
Prevent infloops in redisplay due to truncate-lines and overlays

* src/xdisp.c (hscroll_window_tree): Avoid inflooping in
redisplay_window when a screen line ends in an overlay string with
a newline.  (Bug#25246)

8 years agoTreat incomplete integer literals as errors
Philipp Stephani [Sat, 10 Dec 2016 14:36:11 +0000 (15:36 +0100)]
Treat incomplete integer literals as errors

See Bug#25120.

* src/lread.c (read_integer): Treat incomplete integer literals as errors.
* test/src/lread-tests.el (lread-empty-int-literal): New unit test for
incomplete integer literals.

8 years ago* test/lisp/net/tramp-tests.el (tramp--test-check-files): Make it robust.
Michael Albinus [Fri, 23 Dec 2016 08:31:23 +0000 (09:31 +0100)]
* test/lisp/net/tramp-tests.el (tramp--test-check-files): Make it robust.

8 years agoAvoid aborts due to unaligned byte stack of threads
Eli Zaretskii [Fri, 23 Dec 2016 08:24:30 +0000 (10:24 +0200)]
Avoid aborts due to unaligned byte stack of threads

* src/thread.c (run_thread): Make sure the pointers to thread byte
stack are properly aligned.  (Bug#25247)

8 years ago; Remove mention of gm
Mark Oteiza [Fri, 23 Dec 2016 00:09:01 +0000 (19:09 -0500)]
; Remove mention of gm

This should have been done in 221d3a97 "; Revert "Recognize
graphicsmagick in image-dired"

8 years ago; Spelling fixes
Paul Eggert [Thu, 22 Dec 2016 18:13:46 +0000 (10:13 -0800)]
; Spelling fixes

8 years agoPacify --enable-gcc-warnings
Paul Eggert [Thu, 22 Dec 2016 17:25:58 +0000 (09:25 -0800)]
Pacify --enable-gcc-warnings

* src/charset.c (load_charset_map):
* src/coding.c (decode_coding_object):
* src/frame.c (make_frame):
* src/window.c (Frecenter):
Mark locals with UNINIT to silence false alarms from
-Wmaybe-uninitialized.
* src/lisp.h (SYMBOL_ALIAS, SYMBOL_BLV, SYMBOL_FWD)
(SET_SYMBOL_ALIAS, SET_SYMBOL_BLV, SET_SYMBOL_FWD):
Check and assume that values are nonnull.  This pacifies
-Wmaybe-uninitialized in Fmake_variable_buffer_local and
Fmake_local_variable.

8 years agoFix last change with thread marking under GC_CHECK_MARKED_OBJECTS
Eli Zaretskii [Thu, 22 Dec 2016 16:13:16 +0000 (18:13 +0200)]
Fix last change with thread marking under GC_CHECK_MARKED_OBJECTS

* src/thread.c (primary_thread_p): New function.
* src/alloc.c (mark_object): Use 'primary_thread_p' to bypass tests
meant for thread objects allocated dynamically.
* src/thread.h (primary_thread_p): Add prototype.

8 years ago; * test/lisp/buff-menu-tests.el: Fix typo in the header.
Tino Calancha [Thu, 22 Dec 2016 04:38:06 +0000 (13:38 +0900)]
; * test/lisp/buff-menu-tests.el: Fix typo in the header.

8 years agoUse completion-at-point in verilog-mode
Noam Postavsky [Sun, 14 Aug 2016 02:13:56 +0000 (22:13 -0400)]
Use completion-at-point in verilog-mode

There were some functions in verilog-mode that implemented in-buffer
completion, but this needlessly duplicates completion-at-point
functionality, and the popup window management had problems
(see Bug #23842).  We need to keep them for backwards compatibility with
older emacs versions, but use completion-at-point if available.

* lisp/progmodes/verilog-mode.el (verilog-toggle-completions): Mark as
obsolete if completion-cycle-threshold is available.
(verilog-mode-map, verilog-menu): Bind completion-at-point and
completion-help-at-point in preference to verilog-complete-word and
verilog-show-completions, respectively.
(verilog-mode): Add verilog-completion-at-point to
completion-at-point-functions.
(verilog-completion-at-point): New function.
(verilog-show-completions, verilog-complete-word): Use it to avoid code
duplication.

8 years agoKeep default CASECHARS/NOT-CASECHARS for ispell built-in dictionaries
Reuben Thomas [Wed, 21 Dec 2016 17:30:44 +0000 (17:30 +0000)]
Keep default CASECHARS/NOT-CASECHARS for ispell built-in dictionaries

* lisp/textmodes/ispell.el (ispell-set-spellchecker-params): Do not
override CASECHARS and NOT-CASECHARS.  The ispell dictionaries
retain their hardwired values, and all other dictionaries are given
sensible defaults.

8 years ago* tex-mode.el (tex-compile-commands): Add luatex and xetex commands
Stefan Monnier [Wed, 21 Dec 2016 20:51:14 +0000 (15:51 -0500)]
* tex-mode.el (tex-compile-commands): Add luatex and xetex commands

8 years agoFix aborts in GC under GC_CHECK_MARKED_OBJECTS
Eli Zaretskii [Wed, 21 Dec 2016 20:16:24 +0000 (22:16 +0200)]
Fix aborts in GC under GC_CHECK_MARKED_OBJECTS

* src/alloc.c (mark_object) [GC_CHECK_MARKED_OBJECTS]: Don't abort
for thread objects.  They are marked via the all_threads list, and
therefore don't need to be inserted into the red-black tree, so
mem_find will never find them.  Reported by Daniel Colascione
<dancol@dancol.org> in
http://lists.gnu.org/archive/html/emacs-devel/2016-12/msg00817.html.

8 years ago* src/data.c (Fmake_variable_frame_local): Remove
Stefan Monnier [Wed, 21 Dec 2016 20:07:43 +0000 (15:07 -0500)]
* src/data.c (Fmake_variable_frame_local): Remove

* src/lisp.h (struct Lisp_Buffer_Local_Value): Remove `frame_local'.

* src/data.c (swap_in_symval_forwarding, set_internal)
(set_symbol_trapped_write, make_blv, Fmake_variable_buffer_local)
(Fmake_local_variable, Fkill_local_variable, Flocal_variable_p):
Don't pay attention to ->frame_local any more.
(syms_of_data): Remove Qtrapping_frame_local and don't defsubr
Smake_variable_frame_local.

* etc/NEWS (Incompatible Lisp Changes in Emacs 26.1): Announce removal
of make-variable-frame-local.

* lisp/help-fns.el (describe-variable): Don't handle the now impossible
frame-local case.

* lisp/subr.el (make-variable-frame-local): Remove obsolescence data.

* src/frame.c (store_frame_param):
* src/eval.c (specbind): Don't pay attention to ->frame_local any more.

* src/widget.c (first_frame_p): Remove, unused.

8 years agoPort dumping better to WSL
Paul Eggert [Wed, 21 Dec 2016 17:52:28 +0000 (09:52 -0800)]
Port dumping better to WSL

Problem reported by Angelo Graziosi in:
http://lists.gnu.org/archive/html/emacs-devel/2016-12/msg00822.html
* src/sysdep.c (disable_address_randomization):
Detect buggy platforms where 'personality' always returns 0.

8 years agoRemove gateway methods in Tramp
Michael Albinus [Wed, 21 Dec 2016 11:42:22 +0000 (12:42 +0100)]
Remove gateway methods in Tramp

* doc/misc/tramp.texi (Top, Configuration): Remove section
`Gateway methods', insert section `Firewalls' in menu.
(History): Gateways are removed now.
(Gateway methods): Remove section.
(Multi-hops, Traces and Profiles): Don't reference to gateways anymore.
(Firewalls): New section.

* etc/NEWS: Gateway methods in Tramp have been removed.

* lisp/net/tramp.el (tramp-methods): Adapt docstring.
(tramp-file-name-port, tramp-accept-process-output): Simplify.

* lisp/net/tramp-gw.el: Remove.

* lisp/net/tramp-sh.el (tramp-gw-tunnel-method)
(tramp-gw-socks-method): Remove declarations.
(tramp-methods) <scp, scpx, ssh, sshx, telnet, nc, plink, pscp>:
Remove `tramp-gw-args' and `tramp-default-port'.  (Bug#18967)
(tramp-do-copy-or-rename-file-out-of-band)
(tramp-compute-multi-hops, tramp-maybe-open-connection):
Remove gateway support.

* test/lisp/net/tramp-tests.el (tramp-test03-file-name-defaults):
Remove gateway tests.

8 years ago; Revert "Recognize graphicsmagick in image-dired"
Mark Oteiza [Tue, 20 Dec 2016 16:14:53 +0000 (11:14 -0500)]
; Revert "Recognize graphicsmagick in image-dired"

This reverts commit 5c266405f559823038dfa900aaad66605f0d5287.
There are too many annoying differences between GM and IM to make this
default behavior.

8 years agofiles-test-read-file-in-: Delete temporary dir on exit
Tino Calancha [Tue, 20 Dec 2016 10:22:15 +0000 (19:22 +0900)]
files-test-read-file-in-: Delete temporary dir on exit

* test/lisp/files-tests.el (files-test-read-file-in-~):
Create subdir inside dir.

8 years agoibuffer: New filters and commands
Christopher Genovese [Tue, 20 Dec 2016 08:41:56 +0000 (17:41 +0900)]
ibuffer: New filters and commands

Add several new filters and improve documentation.
See discussion on:
https://lists.gnu.org/archive/html/emacs-devel/2016-11/msg00399.html
* lisp/ibuf-ext.el: Add paragraph to file commentary.
(ibuffer-saved-filters, ibuffer-filtering-qualifiers)
(ibuffer-filter-groups): Update doc string.
(ibuffer-unary-operand): Add new function that transparently
handles 'not' formats for compound filters.
(ibuffer-included-in-filter-p): Handle 'not' fully; update doc string.
(ibuffer-included-in-filter-p-1): Handle 'and' compound filters.
(ibuffer-decompose-filter): Handle 'and' as well,
and handle 'not' consistently with other uses.
(ibuffer-and-filter): New defun analogous to 'ibuffer-or-filter'.
(ibuffer--or-and-filter): New defun.
(ibuffer-or-filter, ibuffer-and-filter): Use it.
(ibuffer-format-qualifier): Handle 'and' filters as well.
(ibuffer-filter-by-basename, ibuffer-filter-by-file-extension)
(ibuffer-filter-by-directory, ibuffer-filter-by-starred-name)
(ibuffer-filter-by-modified, ibuffer-filter-by-visiting-file):
Add new pre-defined filters.
(ibuffer-filter-chosen-by-completion): Add new interactive command
for easily choosing a filter from the descriptions.
* lisp/ibuffer.el (ibuffer-mode-map):
Bind ibuffer-filter-by-basename, ibuffer-filter-by-file-extension,
ibuffer-filter-by-starred-name, ibuffer-filter-by-modified,
ibuffer-filter-by-visiting-file to '/b', '/.', '/*', '/i', '/v'
respectively; bind 'ibuffer-or-filter', 'ibuffer-and-filter',
'ibuffer-pop-filter' ,'ibuffer-pop-filter-group' and
'ibuffer-filter-disable' to '/|', '/&', '/<up>', '/S-<up>'
and '/ DEL' respectively.
* test/lisp/ibuffer-tests.el (ibuffer-autoload): Add appropriate
skip specification.
Add menu entries for the new filters.
(ibuffer-filter-inclusion-1, ibuffer-filter-inclusion-2
ibuffer-filter-inclusion-3, ibuffer-filter-inclusion-4
ibuffer-filter-inclusion-5, ibuffer-filter-inclusion-6
ibuffer-filter-inclusion-7, ibuffer-filter-inclusion-8
ibuffer-decompose-filter, ibuffer-and-filter
ibuffer-or-filter): Add new tests; they are skipped unless
ibuf-ext is loaded.
; * etc/NEWS: Add entries for new user-facing features.

8 years agoUpdate NEWS
Mark Oteiza [Tue, 20 Dec 2016 01:37:46 +0000 (20:37 -0500)]
Update NEWS

* etc/NEWS (Image-Dired): New section.

8 years agoRecognize graphicsmagick in image-dired
Mark Oteiza [Tue, 20 Dec 2016 01:35:02 +0000 (20:35 -0500)]
Recognize graphicsmagick in image-dired

* lisp/image-dired.el (image-dired-cmd-create-thumbnail-program):
(image-dired-cmd-create-thumbnail-options):
(image-dired-cmd-create-temp-image-program):
(image-dired-cmd-create-temp-image-options):
(image-dired-cmd-create-standard-thumbnail-options):
(image-dired-cmd-rotate-thumbnail-program):
(image-dired-cmd-rotate-thumbnail-options): Account for existence of
gm(1) executable.

8 years agoImplement asynchronous thumbnail generation in image-dired
Mark Oteiza [Tue, 20 Dec 2016 00:47:06 +0000 (19:47 -0500)]
Implement asynchronous thumbnail generation in image-dired

Additionally, all FOO-options defcustoms that were in fact shell command
strings have been converted to argument lists.  Another method for
shrinking PNG thumbs with optipng(1) has been added.
* lisp/image-dired.el: Remove TODO item in commentary.
(image-dired-cmd-create-thumbnail-options):
(image-dired-cmd-create-temp-image-options):
(image-dired-cmd-rotate-thumbnail-options):
(image-dired-cmd-rotate-original-options):
(image-dired-cmd-write-exif-data-options):
(image-dired-cmd-read-exif-data-options): Convert to argument lists.
(image-dired-cmd-pngnq-program, image-dired-cmd-pngcrush-program):
Change string type to file.
(image-dired-cmd-create-standard-thumbnail-command): Remove.
(image-dired-cmd-pngnq-options):
(image-dired-cmd-create-standard-thumbnail-options):
(image-dired-cmd-optipng-program, image-dired-cmd-optipng-options):
New defcustoms.
(image-dired-queue, image-dired-queue-active-jobs):
(image-dired-queue-active-limit): New variables.
(image-dired-pngnq-thumb, image-dired-pngcrush-thumb):
(image-dired-optipng-thumb): New functions.
(image-dired-create-thumb-1): Renamed from image-dired-create-thumb.
Use start-process instead of call-process.  Set file modes.  Trigger
PNG file optimization in process sentinel.
(image-dired-thumb-queue-run, image-dired-create-thumb): New functions.
(image-dired-display-thumbs):
(image-dired-create-thumbs): Don't expect call-process return value.
(image-dired-display-image, image-dired-rotate-thumbnail): Use
start-process instead of call-process.
(image-dired-rotate-original, image-dired-set-exif-data):
(image-dired-get-exif-data): Adapt to arguments being an arg list.

8 years agoProtect change of window's buffer in vertical-motion against unwinds (bug#25209)
Andreas Schwab [Mon, 19 Dec 2016 22:07:42 +0000 (23:07 +0100)]
Protect change of window's buffer in vertical-motion against unwinds (bug#25209)

* indent.c (restore_window_buffer): New function.
(Fvertical_motion): Use it to restore window's buffer.

8 years agoImprove default load-path for uninstalled CANNOT_DUMP builds
Glenn Morris [Mon, 19 Dec 2016 18:32:55 +0000 (13:32 -0500)]
Improve default load-path for uninstalled CANNOT_DUMP builds

* src/lread.c (load_path_default) [CANNOT_DUMP]:
Use build load-path if we seem to be running uninstalled.  (Bug#24974)
I think this became an issue several years ago when we stopped
using EMACSLOADPATH in the Makefiles; however this change should
improve the CANNOT_DUMP uninstalled case in general.

8 years agoMerge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
Eli Zaretskii [Mon, 19 Dec 2016 17:59:00 +0000 (19:59 +0200)]
Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25

8 years agoDocument 'describe-fontset'
Eli Zaretskii [Mon, 19 Dec 2016 17:57:22 +0000 (19:57 +0200)]
Document 'describe-fontset'

* doc/emacs/mule.texi (Fontsets): Document 'describe-fontset'.
(Bug#25216)

8 years agoDocument 'describe-fontset'
Eli Zaretskii [Mon, 19 Dec 2016 17:44:52 +0000 (19:44 +0200)]
Document 'describe-fontset'

* doc/emacs/mule.texi (Fontsets): Document 'describe-fontset'.
(Bug#25216)

8 years agoFix crashes upon C-g on Posix TTY frames
Eli Zaretskii [Mon, 19 Dec 2016 17:11:16 +0000 (19:11 +0200)]
Fix crashes upon C-g on Posix TTY frames

* src/thread.h (struct thread_state): New member not_holding_lock.
(maybe_reacquire_global_lock): Add prototype.
* src/thread.c: Include syssignal.h.
(maybe_reacquire_global_lock): New function.
(really_call_select): Set the not_holding_lock member of the
thread state before releasing the lock, and rest it after
re-acquiring the lock when the select function returns.  Block
SIGINT while doing this to make sure we are not interrupted on TTY
frames.
* src/sysdep.c (block_interrupt_signal, restore_signal_mask): New
functions.
* src/syssignal.h (block_interrupt_signal, restore_signal_mask):
Add prototypes.
* src/keyboard.c (read_char) [THREADS_ENABLED]: Call
maybe_reacquire_global_lock.  (Bug#25178)

8 years agoavoid Eager macro-expansion failure: (void-function string-to-list)
Sam Steingold [Mon, 19 Dec 2016 16:44:18 +0000 (11:44 -0500)]
avoid Eager macro-expansion failure: (void-function string-to-list)

* loadup.el [ns]: "ucs-normalize" uses `string-to-list' which is defined
  in "mule-util", so we have to load "mule-util" before "ucs-normalize",
  otherwise I get "Eager macro-expansion failure" on "make bootstrap"

8 years agoFix Bug#24980
Michael Albinus [Mon, 19 Dec 2016 08:32:30 +0000 (09:32 +0100)]
Fix Bug#24980

* lisp/ido.el (ido-add-virtual-buffers-to-list):
Suppress Tramp invocation.  (Bug#24980)

8 years ago; Add missing symbol quoting.
Philipp Stephani [Sun, 18 Dec 2016 21:27:42 +0000 (22:27 +0100)]
; Add missing symbol quoting.

* lisp/vc/ediff-util.el (ediff-janitor): Add missing symbol quoting.

8 years agoAdd a new compile error regexp for Clang includes
Philipp Stephani [Sat, 10 Dec 2016 20:39:55 +0000 (21:39 +0100)]
Add a new compile error regexp for Clang includes

Clang uses a slight variation of GCC's include format, causing includes
to be treated as warnings instead of informational messages.  Use a new
regular expression instead.

* lisp/progmodes/compile.el
(compilation-error-regexp-alist-alist): New element
`clang-include' for Clang-style "included from" lines.
* test/lisp/progmodes/compile-tests.el
(compile-tests--test-regexps-data): Add unit test.

8 years agoReinstate ispell character offset (bug#25219)
Alan Third [Sun, 18 Dec 2016 15:54:48 +0000 (15:54 +0000)]
Reinstate ispell character offset (bug#25219)

* lisp/textmodes/ispell.el (ispell-process-line): insert -1 where
ispell-offset used to be.

8 years agoBind new image-mode scroll commands in image-dired
Mark Oteiza [Sun, 18 Dec 2016 14:41:31 +0000 (09:41 -0500)]
Bind new image-mode scroll commands in image-dired

* lisp/image-dired.el (image-dired-display-image-mode-map): Add bindings
to new image-mode commands.

8 years agoFix rx-any with range with ?\] and ?-
Noam Postavsky [Thu, 8 Dec 2016 04:17:37 +0000 (23:17 -0500)]
Fix rx-any with range with ?\] and ?-

* lisp/emacs-lisp/rx.el: Make sure not to produce a circular
list (Bug#25123).
* test/lisp/emacs-lisp/rx-tests.el (rx-char-any): New test.

8 years agoUse floor of mtime instead of rounding for thumb property
Mark Oteiza [Sun, 18 Dec 2016 12:28:03 +0000 (07:28 -0500)]
Use floor of mtime instead of rounding for thumb property

This seems to be the correct thing to do, at least more in line with
what at least one other implementation does.  Anything using
gnome-desktop [0] effectively does the same, as
gnome_desktop_thumbnail_is_valid applies atol(3) to mtime for
comparison and time_t on GNU/Linux is a signed int.
[0] https://git.gnome.org/browse/gnome-desktop/
* lisp/image-dired.el (image-dired-create-thumb): Use floor here.

8 years agoFix spelling mistake in private defun name (Bug#25218)
Reuben Thomas [Sat, 17 Dec 2016 19:09:41 +0000 (19:09 +0000)]
Fix spelling mistake in private defun name (Bug#25218)

lisp/textmodes/flyspell.el (flyspell-ajust-cursor-point): Rename to
`flyspell-adjust-cursor-point'.

8 years agoRemove XEmacs support from flyspell.el (Bug#25218)
Reuben Thomas [Sat, 17 Dec 2016 19:06:34 +0000 (19:06 +0000)]
Remove XEmacs support from flyspell.el (Bug#25218)

lisp/textmodes/flyspell.el (flyspell-prog-mode, flyspell-mode-on):
(flyspell-word, flyspell-delete-region-overlays):
(flyspell-correct-word-before-point): Remove XEmacs support.
(flyspell-xemacs-popup): Remove XEmacs-specific defun.

8 years agoMore tests for Tramp
Michael Albinus [Sat, 17 Dec 2016 18:52:38 +0000 (19:52 +0100)]
More tests for Tramp

* lisp/net/tramp.el (tramp-drop-volume-letter): Handle quoted
file names.

* lisp/net/tramp-sh.el (tramp-make-copy-program-file-name): Quote file
name properly.

* test/lisp/net/tramp-tests.el (tramp-test05-expand-file-name):
Mark quoted file name as absolute.  (Bug#25183)
(tramp--test-windows-nt-and-batch)
(tramp--test-windows-nt-and-pscp-psftp-p): New defuns.
(tramp--test-windows-nt-or-smb-p): Rename from
`tramp--test-smb-windows-nt-p'.  Adapt callees.
(tramp--test-check-files): Improve checks for environment variables.
(tramp-test33-special-characters)
(tramp-test33-special-characters-with-stat)
(tramp-test33-special-characters-with-perl)
(tramp-test33-special-characters-with-ls, tramp-test34-utf8)
(tramp-test34-utf8-with-stat, tramp-test34-utf8-with-perl)
(tramp-test34-utf8-with-ls): Add more checks for skip.

8 years agoFix comments
Eli Zaretskii [Sat, 17 Dec 2016 17:38:36 +0000 (19:38 +0200)]
Fix comments

* src/thread.h (struct thread_state): Fix comments.
* src/process.c (wait_reading_process_output): Fix a typo in
commentary.

8 years agoRepair desktop restoration on text terminals
Eli Zaretskii [Sat, 17 Dec 2016 17:05:21 +0000 (19:05 +0200)]
Repair desktop restoration on text terminals

* lisp/desktop.el (desktop-restoring-frameset-p): Test for the GUI
frame here, instead of in desktop-restoring-frameset.  That's
because desktop-read wants to know whether frameset will actually
be restored, and has fallback procedures up its sleeve when it
won't be; these fallbacks need to be invoked when the frameset is
not going to be restored.  (Bug#24298)

8 years agoFix crashes on MS-Windows during dumping
Eli Zaretskii [Sat, 17 Dec 2016 11:08:52 +0000 (13:08 +0200)]
Fix crashes on MS-Windows during dumping

* src/unexw32.c (get_section_info): Make extra_bss_size be the
maximum of extra_bss_size and extra_bss_size_static.  This avoids
computing the size of the output file smaller than it actually
needs to be, which then causes copy_executable_and_dump_data to
write beyond the requested size of the file mapping, thus relying
on the OS roundup to page boundary to save us from ourselves.  See
http://lists.gnu.org/archive/html/emacs-devel/2016-12/msg00642.html
for the details.

* lib/stdio-impl.h: Revert the workaround fix of not including
errno.h for MinGW.

8 years agoIgnore forward-sexp-function in js-mode indentation code
Dmitry Gutov [Fri, 16 Dec 2016 23:52:12 +0000 (01:52 +0200)]
Ignore forward-sexp-function in js-mode indentation code

* lisp/progmodes/js.el (js--multi-line-declaration-indentation)
(js--maybe-goto-declaration-keyword-end):
Bind forward-sexp-function to nil (bug#25215).

8 years agoBe more selective clearing the image cache
Mark Oteiza [Fri, 16 Dec 2016 15:14:01 +0000 (10:14 -0500)]
Be more selective clearing the image cache

* lisp/image-dired.el (image-dired-create-thumbs):
(image-dired-rotate-thumbnail, image-dired-refresh-thumb): Only clear
the current thumbnail file from the image cache.