1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-09 13:10:57 -08:00
Commit graph

127886 commits

Author SHA1 Message Date
Andreas Schwab
85aebc12de 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.
2016-12-19 23:17:36 +01:00
Glenn Morris
504e384604 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.
2016-12-19 13:32:55 -05:00
Eli Zaretskii
fe3188b1ce 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)
2016-12-19 19:11:16 +02:00
Sam Steingold
657bcaf5ac 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"
2016-12-19 11:44:18 -05:00
Michael Albinus
516b4c389a Fix Bug#24980
* lisp/ido.el (ido-add-virtual-buffers-to-list):
Suppress Tramp invocation.  (Bug#24980)
2016-12-19 09:32:30 +01:00
Philipp Stephani
5d1d00c341 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.
2016-12-18 21:59:14 +01:00
Alan Third
4b6baba252 Reinstate ispell character offset (bug#25219)
* lisp/textmodes/ispell.el (ispell-process-line): insert -1 where
ispell-offset used to be.
2016-12-18 16:01:16 +00:00
Mark Oteiza
15b3223ebc 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.
2016-12-18 09:41:31 -05:00
Noam Postavsky
a7523ba955 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.
2016-12-18 08:44:45 -05:00
Mark Oteiza
b21a3e726f 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.
2016-12-18 07:28:03 -05:00
Reuben Thomas
1a15d14e14 Fix spelling mistake in private defun name (Bug#25218)
lisp/textmodes/flyspell.el (flyspell-ajust-cursor-point): Rename to
`flyspell-adjust-cursor-point'.
2016-12-17 21:08:07 +00:00
Reuben Thomas
63f827ab02 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.
2016-12-17 21:07:57 +00:00
Michael Albinus
cfa2fb2626 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.
2016-12-17 19:52:38 +01:00
Eli Zaretskii
0390edcb81 Fix comments
* src/thread.h (struct thread_state): Fix comments.
* src/process.c (wait_reading_process_output): Fix a typo in
commentary.
2016-12-17 19:38:36 +02:00
Eli Zaretskii
0757b4f2f7 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.
2016-12-17 13:08:52 +02:00
Mark Oteiza
6bf8321831 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.
2016-12-16 10:14:01 -05:00
Eli Zaretskii
b3cf281174 Unbreak the MinGW build
* lib/stdio-impl.h [__MINGW32__]: Don't include errno.h.  Without
this, temacs crashes while dumping.
2016-12-16 12:50:06 +02:00
Nicolas Petton
fb2fdb1435 Make seq-into return the sequence when no conversion needed
* lisp/emacs-lisp/seq.el (seq-into): Do not convert the sequence when
  no conversion is needed.
* test/lisp/emacs-lisp/seq-tests.el (test-seq-into-and-identity): Add
  a regression test checking for identity.
2016-12-16 11:22:00 +01:00
Mark Oteiza
cdf5340f51 New commands image-scroll-left and image-scroll-right
* etc/NEWS: Mention them.
* lisp/image-mode.el (image-scroll-left, image-scroll-right): New
functions.
2016-12-15 21:59:15 -05:00
Mark Oteiza
f8a47b07ff More image-dired refactoring
* lisp/image-dired.el (image-dired-thumbnail-mode):
(image-dired-display-image-mode): Add :group 'image-dired so
customize-mode works.
(image-dired-display-image): Rearrange.
(image-dired-copy-with-exif-file-name): This map is for side effect.
(image-dired-dired-edit-comment-and-tags): Just use #'identity.
2016-12-15 20:36:24 -05:00
Mark Oteiza
9886239bd2 * lisp/image-dired.el: Turn on lexical-binding. 2016-12-15 19:58:33 -05:00
Mark Oteiza
7ec55a189c Teach image-dired to also generate large thumbs
* lisp/image-dired.el (image-dired-thumbnail-storage): Add
standard-large option.
(image-dired-thumb-size): Add condition for standard-large storage.
(image-dired-insert-thumbnail): Check for new option.  Change
thumbnail path conditionally.
(image-dired-thumb-size): New function.
(image-dired-create-thumb, image-dired-line-up-dynamic): Use it.
2016-12-15 19:55:47 -05:00
Paul Eggert
5942af6141 Merge from gnulib
This incorporates:
2016-12-14 xalloc-oversized: check for PTRDIFF_MAX too
2016-12-12 fpending: port to native Windows with MSVC
* .gitignore: Do not ignore lib/stdio-impl.h.
* lib/fpending.c, lib/xalloc-oversized.h, m4/fpending.m4:
Copy from gnulib.
* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
* lib/stdio-impl.h:
New file, copied from gnulib.
* nt/gnulib.mk (EXTRA_DIST): Add stdio-impl.h.
2016-12-15 12:19:45 -08:00
Paul Eggert
b80485f681 * emacs-document.svg: Append newline. 2016-12-15 12:06:23 -08:00
Mark Oteiza
b22cb96906 Don't abuse princ and spam messages
* lisp/image-dired.el (image-dired-format-properties-string): Nix princ.
(image-dired-display-thumb-properties):
(image-dired-dired-display-properties): Nix princ.  Bind
message-log-max to nil.
2016-12-15 14:40:32 -05:00
Mark Oteiza
214acb1e6b Inherit things from special-mode and image-mode
* lisp/image-dired.el: Require image-mode library.
(image-dired-thumbnail-mode-map): Remove superfluous binding.
(image-dired-display-image-mode-map): Remove superfluous binding.
Add movement remaps from image-mode-map.
(image-dired-thumbnail-mode): Derive from special-mode.
(image-dired-display-image-mode): Derive from special-mode. Call
image-mode-setup-winprops.
2016-12-15 13:49:38 -05:00
Mark Oteiza
d79ff2a4b9 Fix some image-dired customization types
* lisp/image-dired.el (image-dired): Add info link to defgroup.
(image-dired-dir, image-dired-gallery-dir): Set type to directory.
(image-dired-db-file, image-dired-temp-image-file):
(image-dired-cmd-create-thumbnail-program):
(image-dired-cmd-create-temp-image-program):
(image-dired-cmd-rotate-thumbnail-program):
(image-dired-cmd-rotate-original-program):
(image-dired-temp-rotate-image-file):
(image-dired-cmd-write-exif-data-program):
(image-dired-cmd-read-exif-data-program): Set type to file.
(image-dired-create-thumb, image-dired-line-up-dynamic): Check storage
type at runtime, since setting image-dired-thumb-size does not
automatically set image-dired-thumb-width and image-dired-thumb-height.
2016-12-15 13:25:08 -05:00
Eli Zaretskii
4fbda463dc Prevent crashes in xg_select due to concurrency
* src/xgselect.c (xg_select): Don't call Glib functions that use
'context' if we failed to acquire it.  This means some other
thread owns the context, in which case both using the context and
calling block_input/unblock_input will step on that thread's toes
and eventually lead to crashes.  (Bug#25172)
2016-12-15 18:18:59 +02:00
Nicolas Petton
09a66ceb5e Fix circular list handling in seq-mapn
* lisp/emacs-lisp/seq.el (seq-mapn): Do not copy list arguments.
* test/lisp/emacs-lisp/seq-tests.el (test-seq-mapn-circular-lists):
  Add a regression test.
2016-12-15 10:26:11 +01:00
Michael Albinus
acbe32abdd Check in tramp-tests.el, that environment variables are set correctly
* test/lisp/net/tramp-tests.el (tramp--test-check-files):
Check also, that environment variables are set correctly.
2016-12-15 09:37:35 +01:00
Dominique Quatravaux
d381db25a2 Protect environment variables with double quotes in Tramp
* lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
Protect environment variables with double quotes.

Copyright-paperwork-exempt: yes
2016-12-15 09:37:00 +01:00
Tino Calancha
0a5898c3dd * lisp/ibuf-macs.el (define-ibuffer-filter): Wrap ,@body in a progn. 2016-12-15 15:02:32 +09:00
Mark Oteiza
d0388bd12d * lisp/image-dired.el (image-dired-create-thumb): Create parent directories. 2016-12-14 20:36:06 -05:00
Mark Oteiza
0c77bcb393 * lisp/image-mode.el (image-mode-winprops-alist): Add docstring. 2016-12-14 16:38:18 -05:00
Mark Oteiza
53e8d7fb80 Recognize pngnq or pngnq-s9
* lisp/image-dired.el (image-dired-cmd-pngnq-program): Also consider
pngnq-s9 as a possible executable.
2016-12-14 16:34:12 -05:00
Mark Oteiza
66ccc65935 Update standard image-dired thumbnail location
* lisp/image-dired.el (image-dired-thumb-name): Conform to the latest
standard: consider XDG_CACHE_HOME, falling back on ~/.cache.
2016-12-14 14:34:21 -05:00
Mark Oteiza
44a77d34c6 Reset window scroll when displaying an image
When viewing a large image full size and scrolling, for instance, to
the lower right corner, then selecting a much smaller image in the
thumbnail buffer, the window stays scrolled so the new image is out of
the window.  One must scroll back to the "origin" to view the new
displayed image, or just kill the image-dired-display-image buffer and
try again.  This fixes the issue.
* lisp/image-dired.el (image-dired-display-window-width):
(image-dired-display-window-height): Operate on a window as argument.
(image-dired-display-image): Bind (image-dired-display-window) and use
it. Set window vscroll and hscroll to zero when refreshing the
buffer's contents.
2016-12-14 12:25:04 -05:00
Mark Oteiza
51b2669ad5 More image-dired polish
* lisp/image-dired.el (image-dired-file-name-at-point): New function.
(image-dired-thumbnail-mode, image-dired-display-image-mode): Disable
undo list. Add image-dired-file-name-at-point to
file-name-at-point-functions to facilitate find-file and friends.
(image-dired-thumbnail-display-external):
(image-dired-dired-display-external): Use start-process instead, to
avoid needlessly blocking and using a shell.
2016-12-13 22:56:42 -05:00
Phillip Lord
c27b645956 Replace ldefs-boot with a much smaller file
* Makefile.in (bootstrap-build,generate-ldefs-boot): New targets.
   (bootstrap): Depend on bootstrap-build.
 * admin/ldefs-clean.el: New file.
 * lisp/Makefile.in (compile-first): Depend on loaddefs.el
 * lisp/ldefs-boot.el: Remove.
 * lisp/ldefs-boot-auto.el: New file.
 * lisp/ldefs-boot-manual.el: New file.
 * lisp/loadup.el: Load ldefs-boot-manual.el.
 * src/emacs.c (generating_ldefs_boot): New variable.
   (main): Check whether we are generating ldefs.
 * src/eval.c (autoload-do-load): Dump autoload forms to stderr when
   requested.
 * src/lisp.h (generating_ldefs_boot): New variable.
 * admin/gitmerge.el, admin/make-tarball.txt, admin/notes/copyright,
   lisp/Makefile.in, lisp/cus-dep.el, lisp/emacs-lisp/elint.el,
   lisp/finder.el, lisp/loadup.el, msdos/mainmake.v2: Update reference to
   ldefs-boot.
 * admin/update_autogen: Alter mechanism for ldefs-boot generation.
2016-12-13 22:15:32 +00:00
Reuben Thomas
9e6618beca Remove support for aspell < 0.60 (from 2004)
lisp/textmodes/ispell.el (ispell-check-version): Require Aspell 0.60.
(ispell-aspell-dictionary-alist): Remove check that we have Aspell 0.60.
2016-12-13 19:43:49 +00:00
Reuben Thomas
97f327d8de Minor docstring and comment fixes to ispell.el
lisp/textmodes/ispell.el (ispell-aspell-dictionary-alist): Mention
ispell-aspell-dictionary-alist, not ispell-dictionary-alist.
(ispell-set-spellchecker-params): Change double-single quotes to
single single quotes in comment.
2016-12-13 19:43:49 +00:00
Reuben Thomas
94834bdf94 Remove unused variable
* lisp/textmodes/ispell.el (current-ispell-directory): Remove.
2016-12-13 19:43:49 +00:00
Reuben Thomas
6b5ac5837a Remove XEmacs-specific ispell-with-no-warnings
* lisp/textmodes/ispell.el (ispell-with-no-warnings): Remove this
defmacro, needed only for XEmacs.
(ispell-command-loop, ispell-message): Use with-no-warnings directly.
2016-12-13 19:43:49 +00:00
Reuben Thomas
8af9cb220d Remove meaningless defconst ispell-version
* lisp/textmodes/ispell.el (ispell-version): Since ispell.el is now
firmly part of Emacs, and the version hasn’t changed since 2003, and
isn’t used anywhere, remove it.  3rd-party code can better use the
Emacs version, or feature or function checks.
(ispell-check-version): No longer report ispell.el version.
2016-12-13 19:43:49 +00:00
Reuben Thomas
e1aa788807 Remove boundp test for always-bound symbol
* lisp/textmodes/ispell.el (ispell-message): mail-yank-prefix is
defvar’d at the top of the file, so remove a test to see if it is
bound.
2016-12-13 19:43:49 +00:00
Reuben Thomas
db6e1f8297 Remove support for ispell < 3.1.12
* lisp/textmodes/ispell.el (ispell-offset): Remove.
(ispell-check-version): Require ispell >= 3.1.12, released in 1994.
(ispell-process-line): No longer use ispell-offset.
2016-12-13 19:43:49 +00:00
Reuben Thomas
3affed01e1 Remove unused constant
* lisp/textmodes/ispell.el (ispell-required-version): Remove.
2016-12-13 19:43:49 +00:00
Reuben Thomas
8315d50bce Remove support for old versions of supercite and GNUS from ispell.el
* lisp/textmodes/ispell.el (ispell-message): Require supercite >= 3.0
and GNUS >= 5.  Not exactly the bleeding edge!
2016-12-13 19:43:49 +00:00
Reuben Thomas
b989c415ac Remove remaining mentions of XEmacs from ispell.el
* lisp/textmodes/ispell.el (ispell-valid-dictionary-list):
(ispell-add-per-file-word-list): Remove mentions of XEmacs from
comments.
2016-12-13 19:43:49 +00:00
Reuben Thomas
8886f156b3 Remove XEmacs-specific minibuffer handling code from ispell.el
* lisp/textmodes/ispell.el (ispell-init-process): Assume we are not in
XEmacs.
2016-12-13 19:43:49 +00:00