]> git.eshelyaron.com Git - emacs.git/log
emacs.git
4 years agoMerge from origin/emacs-27
Glenn Morris [Wed, 15 Jan 2020 15:50:22 +0000 (07:50 -0800)]
Merge from origin/emacs-27

0e936f18f8 (origin/emacs-27) Fix build failure with --with-cairo --wi...
c34f7e884b Add new node "Package Statuses" to manual
fdee034ac8 * lisp/isearch.el: Fix corner cases of isearch-lazy-count.
7b14329d86 ; * lisp/simple.el (messages-buffer): Doc fix.  (Bug#39124)
7ec66a59e3 Document spacing issues with Xft for some fonts
08cd247fbd ; * etc/NEWS: Fix typo.
d645628e3c Always use lexical-binding in lisp-interaction-mode (bug#3...
c42198f78c ; *etc/NEWS: Fix typo.
0ed9cfa7dc vc-dir: ensure we don't use a pager with git
37e0d00c14 Improve ERC's matching of nicks and URLs (bug#38257)
d47b157969 Handle tab-bar clicks on a GPM-capable console.
e4791f3f8e ;* etc/TODO: Update.

# Conflicts:
# etc/NEWS

4 years agoFix implicit declaration of getenv and atol
Andreas Schwab [Wed, 15 Jan 2020 09:02:10 +0000 (10:02 +0100)]
Fix implicit declaration of getenv and atol

* src/gtkutil.c: Include <stdlib.h>.

4 years agoFix build failure with --with-cairo --without-png
YAMAMOTO Mitsuharu [Wed, 15 Jan 2020 08:10:30 +0000 (17:10 +0900)]
Fix build failure with --with-cairo --without-png

* src/image.c: Don't enable PNG section only by USE_CAIRO.

4 years agoAdd new node "Package Statuses" to manual
Stefan Kangas [Wed, 15 Jan 2020 01:20:01 +0000 (02:20 +0100)]
Add new node "Package Statuses" to manual

* doc/emacs/emacs.texi (Top):
* doc/emacs/package.texi (Package Menu): New node "Package
Statuses".  (Bug#29420)

4 years ago* lisp/isearch.el: Fix corner cases of isearch-lazy-count.
Juri Linkov [Wed, 15 Jan 2020 00:02:53 +0000 (02:02 +0200)]
* lisp/isearch.el: Fix corner cases of isearch-lazy-count.

* lisp/isearch.el (isearch-mode): Reset isearch-lazy-count-current
and isearch-lazy-count-total to nil, so when isearch-mode is started,
there should be no counts from previous Isearch.
(isearch-lazy-highlight-new-loop): Call isearch-message after resetting
lazy-count variables only when isearch-mode is started.  This avoids
the problem of inappropriate calls of isearch-message-function
when query-replace in the minibuffer performs lazy-highlighting that
used to call minibuffer-history-isearch-message unnecessarily.

4 years ago; * lisp/simple.el (messages-buffer): Doc fix. (Bug#39124)
Eli Zaretskii [Tue, 14 Jan 2020 15:46:39 +0000 (17:46 +0200)]
; * lisp/simple.el (messages-buffer): Doc fix.  (Bug#39124)

4 years agoRefactor Tramp async process code
Michael Albinus [Tue, 14 Jan 2020 10:46:42 +0000 (11:46 +0100)]
Refactor Tramp async process code

* lisp/net/tramp-adb.el (tramp-adb-handle-make-process):
* lisp/net/tramp-sh.el (tramp-sh-handle-make-process):
Update stderr buffer when process has finished.  Do not call
`auto-revert'.

* test/lisp/net/tramp-tests.el (tramp-test31-interrupt-process):
Tag it :unstable.  Change `accept-process-output' arguments.
(tramp--test-async-shell-command): New defun.
(tramp--test-shell-command-to-string-asynchronously): Use it.
(tramp-test32-shell-command): Refactor code.

4 years agoDefault cairo to enabled
Robert Pluim [Tue, 14 Jan 2020 10:18:20 +0000 (11:18 +0100)]
Default cairo to enabled

* configure.ac (USE_CAIRO): Default cairo to enabled.

* etc/NEWS: Announce the change to use cairo if found.

4 years agoDocument spacing issues with Xft for some fonts
Robert Pluim [Tue, 14 Jan 2020 09:49:28 +0000 (10:49 +0100)]
Document spacing issues with Xft for some fonts

* etc/PROBLEMS: Document issues with Xft and some recent fonts (Bug#39082).

4 years agoUpdate from gnulib
Paul Eggert [Tue, 14 Jan 2020 00:25:28 +0000 (16:25 -0800)]
Update from gnulib

This incorporates:
2020-01-10 fix major regression from 2020-01-04
2020-01-05 tests: avoid GCC over-optimization
2020-01-04 fix AC_CHECK_DECL so it deactivates clang's built-ins
2020-01-03 getopt-posix: fix compilation failure in testdirs
2020-01-03 doc: mention the 64-bit inode number problem
2020-01-02 wchar: make the HP-UX workaround work on HP-UX 11.31
* build-aux/config.guess, build-aux/config.sub, lib/inttypes.in.h:
* lib/stdlib.in.h, lib/unistd.in.h, m4/00gnulib.m4, m4/largefile.m4:
* m4/unistd_h.m4: Copy from Gnulib
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.

4 years agoPort configure.ac to future Gnulib
Paul Eggert [Tue, 14 Jan 2020 00:07:27 +0000 (16:07 -0800)]
Port configure.ac to future Gnulib

Rewrite an ancient Alpha ELF check to port to a future Gnulib
version that may require AC_CHECK_DECL to be set up properly as
per the ‘Expanded Before Required’ section of the Autoconf manual
Autoconf doesn’t guarantee that AC_CHECK_DECL will work properly
if called conditionally (e.g., inside a shell ‘case’ statement)
and the condition is false.  Problem reported by Bruno Haible in:
https://lists.gnu.org/r/bug-gnulib/2020-01/msg00088.html
* configure.ac (LD_SWITCH_MACHINE): Migrate ELF check later,
when AC_CHECK_DECL is properly set up.

4 years ago; * etc/NEWS: Fix typo.
Michael Albinus [Mon, 13 Jan 2020 20:11:46 +0000 (21:11 +0100)]
; * etc/NEWS: Fix typo.

4 years agoAlways use lexical-binding in lisp-interaction-mode (bug#38835)
Mattias Engdegård [Mon, 13 Jan 2020 13:53:11 +0000 (14:53 +0100)]
Always use lexical-binding in lisp-interaction-mode (bug#38835)

* lisp/progmodes/elisp-mode.el (lisp-interaction-mode):
Set lexical-binding.
* lisp/startup.el (command-line, startup--get-buffer-create-scratch):
Don't set lexical-binding here.
* doc/lispref/variables.texi:
* etc/NEWS:
Make it clear that lisp-interaction-mode uses lexical-binding.

4 years ago; *etc/NEWS: Fix typo.
Michael Albinus [Mon, 13 Jan 2020 15:03:15 +0000 (16:03 +0100)]
; *etc/NEWS: Fix typo.

4 years agovc-dir: ensure we don't use a pager with git
Robert Pluim [Fri, 10 Jan 2020 15:36:57 +0000 (16:36 +0100)]
vc-dir: ensure we don't use a pager with git

* lisp/vc/vc-git.el (vc-git--call): Call git with '--no-pager' to
avoid hangs caused by remote pager settings (Bug#38688).

4 years agoImprove ERC's matching of nicks and URLs (bug#38257)
Amin Bandali [Mon, 18 Nov 2019 15:24:48 +0000 (10:24 -0500)]
Improve ERC's matching of nicks and URLs (bug#38257)

* lisp/erc/erc-{button,match}.el (erc-{button,match}-syntax-table):
Omit (, ), and '; as they're not valid nick characters, per RFC 2812
section 2.3.1.  This enables correct matching/highlighting of nicks
when they're surrounded by parens, like (nick), and when adjacent to
an apostrophe, like nick's.
* lisp/erc/erc-button.el (erc-button-url-regexp): Use the regexp from
browse-url-button-regexp, which among other things, seems to handle
surrounding pair of parens better.

4 years agoHandle tab-bar clicks on a GPM-capable console.
Juri Linkov [Sun, 12 Jan 2020 23:23:12 +0000 (01:23 +0200)]
Handle tab-bar clicks on a GPM-capable console.

* src/term.c (handle_one_term_event): Call tty_handle_tab_bar_click.

* src/xdisp.c (tty_handle_tab_bar_click): Force reset of up_modifier bit
from the event modifiers.

* lisp/tab-line.el (tab-line-tab-current): No need to use inverse-video
on console/xterm because the selected tab already uses inverse-video.

4 years ago* src/pdumper.c (dump_vectorlike): Unbreak build after 724af7671590c
Philipp Stephani [Sun, 12 Jan 2020 23:17:35 +0000 (00:17 +0100)]
* src/pdumper.c (dump_vectorlike): Unbreak build after 724af7671590c

4 years agoUse decode_string_utf_8 in emacs-module.c.
Philipp Stephani [Sun, 12 Jan 2020 23:07:07 +0000 (00:07 +0100)]
Use decode_string_utf_8 in emacs-module.c.

Now that decode_string_utf_8 is available, we can use it to signal
errors on invalid input.

* src/coding.c (syms_of_coding): Move Qutf_8_string_p from json.c
since it’s now used outside json.c.

* src/emacs-module.c (module_decode_utf_8): New helper function.
(module_make_function, module_copy_string_contents): Use it.

4 years ago;* etc/TODO: Update.
Alan Third [Sun, 12 Jan 2020 14:54:44 +0000 (14:54 +0000)]
;* etc/TODO: Update.

4 years agoMerge from origin/emacs-27
Glenn Morris [Sat, 11 Jan 2020 15:50:31 +0000 (07:50 -0800)]
Merge from origin/emacs-27

f0ebd919c1 (origin/emacs-27) ; * doc/lispref/anti.texi (Antinews): Fi...
6f059159ee Update Acknowledgments sections
e1262d45f9 Update Antinews in ELisp manual
fd8128f0c1 ; Move the description of define-inline to a different nod...
524441d6b3 Improve wording in the ELisp manual
8addfa91c8 Reset to the standard value when reverting session's custo...
d6f9b09777 Fix saving multiple themes
c556aabde8 Calc: fix interval entry (bug#39040)
91cd3c1372 Fix horizontal line display in Custom buffers
15c8e984ae ; * etc/NEWS: Fix a typo.
ff8996a337 flymake: fix typo in variable binding (bug#38752)
16eaaa07e6 ; Minor spelling fixes
5efe795659 Update Antinews in the Emacs manual
5841240295 Use NSNumber instead of BOOL (bug#39047)
beec9f64a5 Add comment on fido-mode's file-sorting semantics
eb3c6ad325 Consider non-string minibuffer-default in icomplete

# Conflicts:
# etc/NEWS

4 years ago; * doc/lispref/anti.texi (Antinews): Fix typo.
Michael Albinus [Sat, 11 Jan 2020 13:14:11 +0000 (14:14 +0100)]
; * doc/lispref/anti.texi (Antinews): Fix typo.

4 years agoUpdate Acknowledgments sections
Eli Zaretskii [Sat, 11 Jan 2020 12:06:19 +0000 (14:06 +0200)]
Update Acknowledgments sections

* doc/emacs/ack.texi (Acknowledgments):
* doc/emacs/emacs.texi (Acknowledgments): Update for Emacs 27.

4 years agoUpdate Antinews in ELisp manual
Eli Zaretskii [Sat, 11 Jan 2020 11:36:07 +0000 (13:36 +0200)]
Update Antinews in ELisp manual

* doc/lispref/anti.texi (Antinews): Rewrite for Emacs 27.
* doc/lispref/elisp.texi (Top): Update the top-level menu item for
Antinews.

4 years ago; Move the description of define-inline to a different node in functions.texi
Richard Stallman [Sun, 5 Jan 2020 22:21:41 +0000 (17:21 -0500)]
; Move the description of define-inline to a different node in functions.texi

4 years agoImprove wording in the ELisp manual
Richard Stallman [Wed, 1 Jan 2020 23:18:44 +0000 (18:18 -0500)]
Improve wording in the ELisp manual

* doc/lispref/modes.texi (Setting Hooks): Improve and clarify
wording.  (Bug#38818)

4 years agoReset to the standard value when reverting session's customizations
Mauro Aranda [Mon, 30 Dec 2019 21:10:28 +0000 (18:10 -0300)]
Reset to the standard value when reverting session's customizations

* lisp/cus-edit.el (custom-variable-reset-saved): When there is no
previous saved value, reset to the standard value.  (Bug#15214)

4 years agoFix saving multiple themes
Mauro Aranda [Mon, 6 Jan 2020 14:04:29 +0000 (11:04 -0300)]
Fix saving multiple themes

* lisp/custom.el (enable-theme): Be side-effect free when modifying
custom-enabled-themes.  (Bug#19999)

4 years agoCalc: fix interval entry (bug#39040)
Mattias Engdegård [Fri, 10 Jan 2020 18:49:56 +0000 (19:49 +0100)]
Calc: fix interval entry (bug#39040)

* lisp/calc/calc.el (calcDigit-start): Initialise calc-prev-char to
something more reasonable, so that non-algebraic entry of intervals
whose start is a single digit, like (1..10), works properly.
Reported by Michel Schinz.

4 years agoFix horizontal line display in Custom buffers
Eli Zaretskii [Fri, 10 Jan 2020 19:02:52 +0000 (21:02 +0200)]
Fix horizontal line display in Custom buffers

* lisp/cus-edit.el (custom-group-value-create): Insert a newline
before calling 'custom-group--draw-horizontal-line'.  (Bug#39074)

4 years ago; * etc/NEWS: Fix a typo.
Eli Zaretskii [Fri, 10 Jan 2020 18:44:56 +0000 (20:44 +0200)]
; * etc/NEWS: Fix a typo.

4 years agoflymake: fix typo in variable binding (bug#38752)
Mattias Engdegård [Fri, 10 Jan 2020 17:12:32 +0000 (18:12 +0100)]
flymake: fix typo in variable binding (bug#38752)

This mistake was found by an experimental elisp optimiser.

* lisp/progmodes/flymake-proc.el (flymake-proc-stop-all-syntax-checks):
Add missing brackets.

4 years ago; Minor spelling fixes
Robert Pluim [Fri, 10 Jan 2020 15:42:10 +0000 (16:42 +0100)]
; Minor spelling fixes

* doc/emacs/anti.texi (Antinews): Minor spelling fixes.

4 years agoUpdate Antinews in the Emacs manual
Eli Zaretskii [Fri, 10 Jan 2020 10:28:06 +0000 (12:28 +0200)]
Update Antinews in the Emacs manual

* doc/emacs/anti.texi (Antinews): Rewrite for Emacs 27.
* doc/emacs/emacs.texi (Top): Update the "Antiniews" item of the
top-level menu.

4 years agoUse NSNumber instead of BOOL (bug#39047)
Väinö Järvelä [Thu, 9 Jan 2020 06:01:59 +0000 (08:01 +0200)]
Use NSNumber instead of BOOL (bug#39047)

* src/nsfns.m (ns_set_represented_filename): Use correct type.

Copyright-paperwork-exempt: yes

4 years agoAdd hexdump/awk file encoding to Tramp. (Bug#35639)
Michael Albinus [Thu, 9 Jan 2020 12:41:10 +0000 (13:41 +0100)]
Add hexdump/awk file encoding to Tramp.  (Bug#35639)

* lisp/net/tramp-sh.el (tramp-hexdump-encode, tramp-hexdump-awk-encode)
(tramp-od-encode, tramp-od-awk-encode): New defconst.
(tramp-awk-encode, tramp-awk-decode): Adapt.
(tramp-awk-coding-test): Remove.
(tramp-remote-coding-commands): Add hexdump/awk encoding.  (Bug#35639)
(tramp-find-inline-encoding): Adapt handling of awk, hexdump and od.
(tramp-get-remote-busybox, tramp-get-remote-awk)
(tramp-get-remote-hexdump, tramp-get-remote-od): New defuns.

4 years agoRemove obsolete thread-alive-p
Michael Albinus [Thu, 9 Jan 2020 12:40:14 +0000 (13:40 +0100)]
Remove obsolete thread-alive-p

* etc/NEWS (thread-alive-p):
* lisp/thread.el (thread-alive-p):
* src/thread.c (thread-alive-p): Remove.

4 years agoAdd comment on fido-mode's file-sorting semantics
João Távora [Thu, 9 Jan 2020 10:07:45 +0000 (10:07 +0000)]
Add comment on fido-mode's file-sorting semantics

* lisp/icomplete.el (icomplete--sorted-completions): Add comment.

4 years agoConsider non-string minibuffer-default in icomplete
João Távora [Thu, 9 Jan 2020 10:01:16 +0000 (10:01 +0000)]
Consider non-string minibuffer-default in icomplete

Fixes: bug#38992
* lisp/icomplete.el (icomplete--sorted-completions): Consider
non-string minibuffer-default.

4 years agoMerge from origin/emacs-27
Glenn Morris [Wed, 8 Jan 2020 20:25:58 +0000 (12:25 -0800)]
Merge from origin/emacs-27

1fe596d89f (origin/emacs-27) Fix another compilation problem in a bui...

4 years agoFix another compilation problem in a build without threads
Eli Zaretskii [Wed, 8 Jan 2020 20:00:36 +0000 (22:00 +0200)]
Fix another compilation problem in a build without threads

* src/systhread.c (sys_thread_set_name) [!THREADS_ENABLED]: Add
a trivial implementation.

4 years agoMerge from origin/emacs-27
Glenn Morris [Wed, 8 Jan 2020 19:12:25 +0000 (11:12 -0800)]
Merge from origin/emacs-27

50dc615095 (origin/emacs-27) Fix build without threads

4 years agoFix build without threads
Eli Zaretskii [Wed, 8 Jan 2020 18:53:00 +0000 (20:53 +0200)]
Fix build without threads

* src/systhread.c (sys_thread_create) [!THREADS_ENABLED]: Update
the function's signature to match prototype.  Reported by Glenn
Morris <rgm@gnu.org>.  (Bug#38632)

4 years agoMerge from origin/emacs-27
Glenn Morris [Wed, 8 Jan 2020 17:09:47 +0000 (09:09 -0800)]
Merge from origin/emacs-27

6cd9ccb0a2 (origin/emacs-27) Fix compression of directories in Dired
42329e6d3b ; * etc/NEWS: Review of the whole text.
af5709f16b Further enhancement on `tramp-file-local-name'
fb432446f5 Objective C Mode imenu: cease recognizing "functions" with...
a18373a999 ; * etc/NEWS: Update the text about the XDG_CONFIG_HOME/em...
73fd8a4b53 Fix BSD and macOS builds w.r.t. pthread_setname_np (bug#38...
f54b24304d Scale top-left coordinates in display-monitor-attributes-list
b46c75b16c xref-matches-in-files: Big Tramp speed-up
883b3490d8 * lisp/net/tramp.el (tramp-file-local-name): Remove `save-...
c01f55f126 Fix rendering bug due to unsynchronized cairo surface size...
075f21c0e3 Avoid crash by access to cleared img->pixmap->data/img->ma...
16c6dfb4f1 Avoid assertion violations in very small-height windows
9063124b91 Use pthread_setname_np to set thread name

# Conflicts:
# etc/NEWS
# lisp/net/tramp.el

4 years ago; Merge from origin/emacs-27
Glenn Morris [Wed, 8 Jan 2020 17:03:04 +0000 (09:03 -0800)]
; Merge from origin/emacs-27

The following commit was skipped:

088bfcc2d8 Move “Fix some broken conditional forms” to master

4 years agoFix compression of directories in Dired
Eli Zaretskii [Wed, 8 Jan 2020 16:21:53 +0000 (18:21 +0200)]
Fix compression of directories in Dired

This fixes comporession and uncompression of directories on
MS-Windows, but also on other systems.  The original code used
":" as the REGEXP of the directory entry in
dired-compress-file-suffixes, which on Windows always matched any
absolute file name, and can also match unusual file names on Posix
hosts.  This false match would cause dired-compress-file to act as
if we are decompressing a directory, but use a command suitable
for compression, which would fail in interesting ways.
We now use a REGEXP that can never match any valid file name.

* lisp/dired-aux.el (dired-compress-file-suffixes): Make the
"compress directory" entry's REGEXP really fail to match any valid
file name.
(dired-compress-file): Adapt to the change in
dired-compress-file-suffixes.  (Bug#39024)
(dired-compress): If the current file is a directory, or if the
uncompressed file is a directory, don't remove the original from
the listing, since it is left in the filesystem.

4 years ago; * etc/NEWS: Review of the whole text.
Michael Albinus [Wed, 8 Jan 2020 13:44:18 +0000 (14:44 +0100)]
; * etc/NEWS: Review of the whole text.

4 years agoFurther enhancement on `tramp-file-local-name'
Michael Albinus [Wed, 8 Jan 2020 08:54:04 +0000 (09:54 +0100)]
Further enhancement on `tramp-file-local-name'

* lisp/net/tramp.el (tramp-file-local-name): Call `file-local-name'
if NAME is not a Tramp file name.

4 years agoObjective C Mode imenu: cease recognizing "functions" within comments, etc.
Alan Mackenzie [Tue, 7 Jan 2020 20:07:24 +0000 (20:07 +0000)]
Objective C Mode imenu: cease recognizing "functions" within comments, etc.

This fixes bug #38749.

* lisp/progmodes/cc-menus.el (cc-imenu-objc-function): Put a c-literal-limits
test around the innards of the main re-search-backward loop.

4 years agoFix sxhash-equal on bytecodes, markers, etc.
Paul Eggert [Tue, 7 Jan 2020 19:23:11 +0000 (11:23 -0800)]
Fix sxhash-equal on bytecodes, markers, etc.

Problem reported by Pip Cet (Bug#38912#14).
* doc/lispref/objects.texi (Equality Predicates):
Document better when ‘equal’ looks inside objects.
* doc/lispref/windows.texi (Window Configurations):
Don’t say that ‘equal’ looks inside window configurations.
* etc/NEWS: Mention the change.
* src/fns.c (internal_equal):
Do not look inside window configurations.
(sxhash_obj): Hash markers, byte-code function objects,
char-tables, and font objects consistently with Fequal.
* src/window.c (compare_window_configurations):
Now static.  Remove last argument.  Caller changed.
* test/lisp/ffap-tests.el (ffap-other-window--bug-25352):
Use compare-window-configurations, not ‘equal’.
* test/src/fns-tests.el (test-sxhash-equal): New test.

4 years agoHelp the compiler inline sxhash
Paul Eggert [Tue, 7 Jan 2020 19:23:11 +0000 (11:23 -0800)]
Help the compiler inline sxhash

* src/fns.c (sxhash_obj): Rename from sxhash and make
it static, so that the compiler can inline it better.
(sxhash): New function that does not take a depth arg.
All callers changed.

4 years agoFix NS frame parameters (bug#39000)
Alan Third [Tue, 7 Jan 2020 14:19:01 +0000 (14:19 +0000)]
Fix NS frame parameters (bug#39000)

* src/frame.c (make_frame): Use new system default setting.
* src/frame.h (enum ns_appearance_type): Add new system default
setting.
* src/nsfns.m (Fx_create_frame): Correctly handle Qunbound and support
system default appearance.
(syms_of_nsfns): Add Qlight.
* src/nsterm.h: New method definition.
* src/nsterm.m (ns_set_appearance): Correctly handle Qlight and use new
setAppearance method.
([EmacsView initFrameFromEmacs:]): Use new setAppearance method.
([EmacsWindow setAppearance]): New method.
* doc/lispref/frames.texi (Management Parameters): Document 'light'.

4 years ago; * etc/NEWS: Update the text about the XDG_CONFIG_HOME/emacs behavior.
Eli Zaretskii [Tue, 7 Jan 2020 17:41:02 +0000 (19:41 +0200)]
; * etc/NEWS: Update the text about the XDG_CONFIG_HOME/emacs behavior.

4 years agoFix BSD and macOS builds w.r.t. pthread_setname_np (bug#38632)
Mattias Engdegård [Tue, 7 Jan 2020 16:08:25 +0000 (17:08 +0100)]
Fix BSD and macOS builds w.r.t. pthread_setname_np (bug#38632)

pthread_setname_np takes only a single argument on BSD and macOS,
and affects the current thread only.

* configure.ac: Add check for single-argument pthread_setname_np
* src/systhread.c (sys_thread_set_name): New (w32 and pthread versions).
(sys_thread_create): Remove name argument and name-setting.
(w32_beginthread_wrapper): Remove name-setting.
* src/systhread.h (sys_thread_create, sys_thread_set_name):
Update prototypes.
* src/thread.c (run_thread): Call sys_thread_set_name.
(Fmake_thread): Adapt call to sys_thread_create.
* src/thread.h (struct thread_state): Adjust comment.

4 years agoScale top-left coordinates in display-monitor-attributes-list
Robert Pluim [Tue, 7 Jan 2020 13:41:52 +0000 (14:41 +0100)]
Scale top-left coordinates in display-monitor-attributes-list

When using multiple monitors, and HiDPI, the top-left coordinates of
the monitors need to be adjusted, not just the width and height
(Bug#31223).

* xfns.c (Fx_display_monitor_attributes_list): Scale top-left
coordinates.

4 years agoxref-matches-in-files: Big Tramp speed-up
Dmitry Gutov [Tue, 7 Jan 2020 13:30:25 +0000 (16:30 +0300)]
xref-matches-in-files: Big Tramp speed-up

* lisp/progmodes/xref.el (xref-matches-in-files):
Greatly improve performance with remote files using Tramp
(bug#34343).

4 years agoImplement stderr in tramp-adb-handle-make-process
Michael Albinus [Tue, 7 Jan 2020 12:13:03 +0000 (13:13 +0100)]
Implement stderr in tramp-adb-handle-make-process

* lisp/net/tramp-adb.el (tramp-adb-handle-make-process):
Implement `stderr'.

* lisp/net/tramp-sh.el (tramp-sh-handle-make-process):
Flush connection properties in time.

* test/lisp/net/tramp-tests.el (tramp-test30-make-process)
(tramp-test32-shell-command): Test asynchronous stderr for tramp-adb.

4 years ago* lisp/net/tramp.el (tramp-file-local-name): Remove `save-match-data'.
Michael Albinus [Tue, 7 Jan 2020 12:10:35 +0000 (13:10 +0100)]
* lisp/net/tramp.el (tramp-file-local-name): Remove `save-match-data'.

4 years agoFix rendering bug due to unsynchronized cairo surface size (Bug#38497)
YAMAMOTO Mitsuharu [Tue, 7 Jan 2020 03:42:19 +0000 (12:42 +0900)]
Fix rendering bug due to unsynchronized cairo surface size (Bug#38497)

* src/xterm.c (handle_one_xevent) <ConfigureNotify> [USE_CAIRO && !USE_GTK]:
Call x_cr_update_surface_desired_size for a related frame as a fallback.

4 years agoAvoid crash by access to cleared img->pixmap->data/img->mask->data (Bug#38774)
YAMAMOTO Mitsuharu [Tue, 7 Jan 2020 03:32:42 +0000 (12:32 +0900)]
Avoid crash by access to cleared img->pixmap->data/img->mask->data (Bug#38774)

* src/image.c (prepare_image_for_display) [USE_CAIRO]: Call IMAGE_BACKGROUND
and IMAGE_BACKGROUND_TRANSPARENT.

4 years agoAvoid assertion violations in very small-height windows
Eli Zaretskii [Mon, 6 Jan 2020 19:49:24 +0000 (21:49 +0200)]
Avoid assertion violations in very small-height windows

* src/xdisp.c (try_cursor_movement, redisplay_window)
(row_containing_pos): Skip tab-line glyph rows in addition to
header-line rows, when working on the top-most glyph row of a
window.  This avoids assertion violations in set_cursor_from_row.
(Bug#38966)

4 years agoUse pthread_setname_np to set thread name
Robert Pluim [Thu, 19 Dec 2019 16:33:16 +0000 (17:33 +0100)]
Use pthread_setname_np to set thread name

* configure.ac: Remove check for sys/prctl.h and prctl, check for
pthread_setname_np instead.

* systhread.c: Remove sys/prctl.h include.
(sys_thread_create) [HAVE_PTHREAD_SETNAME_NP]: Use pthread_setname_np
to set the name of the newly created thread (Bug#38632).

* thread.c (Fmake_thread): Use ENCODE_SYSTEM instead of
ENCODE_UTF_8 on the thread name.

4 years ago; Adapt tramp-tests.el
Michael Albinus [Mon, 6 Jan 2020 11:24:16 +0000 (12:24 +0100)]
; Adapt tramp-tests.el

* test/lisp/net/tramp-tests.el (tramp-test30-make-process):
(tramp-test32-shell-command): Extend for asynchronous stderr.

4 years ago; Sync with Tramp repository
Michael Albinus [Mon, 6 Jan 2020 11:11:53 +0000 (12:11 +0100)]
; Sync with Tramp repository

* doc/misc/tramp.texi (Frequently Asked Questions): Mention Emacs 28.

* doc/misc/trampver.texi:
* lisp/net/trampver.el: Change version to "2.4.4-pre".

* lisp/net/tramp-adb.el (tramp-adb-handle-copy-file)
(tramp-adb-handle-rename-file, tramp-adb-handle-process-file):
Use `tramp-file-local-name'.
(tramp-adb-handle-exec-path): Expand `default-directory'.

* lisp/net/tramp-cmds.el (tramp-rename-files):
Use `tramp-file-local-name'.

* lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
(tramp-do-copy-or-rename-file-directly)
(tramp-sh-handle-process-file, tramp-set-remote-path)
(tramp-find-inline-encoding, tramp-get-remote-touch):
Use `tramp-file-local-name'.
(tramp-sh-handle-make-process): Support `stderr' as file name.
Delete temporary stderr file.
(tramp-sh-handle-exec-path): Expand `default-directory'.

* lisp/net/tramp-smb.el (tramp-smb-handle-make-symbolic-link)
(tramp-smb-handle-process-file): Use `tramp-file-local-name'.

* lisp/net/tramp-sudoedit.el (tramp-sudoedit-do-copy-or-rename-file)
(tramp-sudoedit-handle-set-file-uid-gid):
Use `tramp-unquote-file-local-name'.
(tramp-sudoedit-handle-make-symbolic-link):
Use `tramp-file-local-name'.
(tramp-sudoedit-handle-file-system-info): Fix a scoping error.

* lisp/net/tramp.el: Bump version to 2.4.4-pre.
(tramp-ignored-file-name-regexp, tramp-time-dont-know)
(tramp-time-doesnt-exist): Fix typo.
(tramp-file-local-name): Extend for non-remote file names.
(tramp-unquote-file-local-name): New defun.
(tramp-completion-make-tramp-file-name): Simplify.
(tramp-set-connection-local-variables-for-buffer)
(tramp-equal-remote, tramp-handle-make-auto-save-file-name):
Use `tramp-tramp-file-p'.
(tramp-handle-file-name-case-insensitive-p)
(tramp-handle-file-truename, tramp-get-remote-tmpdir)
(tramp-make-tramp-temp-file): Use `tramp-file-local-name'.
(tramp-handle-shell-command, tramp-handle-start-file-process):
Implement asynchronous `error-buffer'.

4 years agoMark 'catch' and 'condition-case' bytecodes as obsolete
Mattias Engdegård [Sun, 5 Jan 2020 20:55:20 +0000 (21:55 +0100)]
Mark 'catch' and 'condition-case' bytecodes as obsolete

They have not been generated by the byte-compiler since Emacs 25.

* lisp/emacs-lisp/bytecomp.el (byte-catch, byte-condition-case):
* src/bytecode.c (BYTE_CODES, exec_byte_code):
Mark as obsolete (since Emacs 25; they were still generated in 24.4).

4 years ago; Fix typo in previous patch.
Paul Eggert [Sun, 5 Jan 2020 20:37:36 +0000 (12:37 -0800)]
; Fix typo in previous patch.

4 years agoGo back to iso-2022-7bit for titdic-cnv.el again
Paul Eggert [Sun, 5 Jan 2020 20:29:05 +0000 (12:29 -0800)]
Go back to iso-2022-7bit for titdic-cnv.el again

* admin/notes/unicode: Mention this.
* lisp/international/titdic-cnv.el:
Go back to iso-2022-7bit for this file, since utf-8-emacs unified
characters that tsanq-quick-converter did not want unified.
Problem reported by Eli Zaretskii in:
https://lists.gnu.org/r/emacs-devel/2020-01/msg00156.html

4 years agoMove “Fix some broken conditional forms” to master
Paul Eggert [Sun, 5 Jan 2020 19:48:59 +0000 (11:48 -0800)]
Move “Fix some broken conditional forms” to master

Revert 2020-01-04T19:17:12Z!eggert@cs.ucla.edu
which recently I installed into the emacs-27 branch by mistake.
These patches are now on master instead (via merging).
Do not merge to master.

4 years agoMerge from origin/emacs-27
Paul Eggert [Sun, 5 Jan 2020 19:44:48 +0000 (11:44 -0800)]
Merge from origin/emacs-27

448df8fec7 Improve doc-strings of 'quit-window' and 'quit-restore-win...
7f01dfca56 Fix MH-E bug #470: Show buffer discards text properties
f95a2b8301 Fix some broken conditional forms
28727444f1 Fix a scoping error in tramp-sudoedit.el
6cbdd048bd * lisp/autorevert.el (auto-revert-notify-handler): Fix bra...
076dd1f69a Fix typo in 'window_box_height'

4 years ago; Merge from origin/emacs-27
Paul Eggert [Sun, 5 Jan 2020 19:44:48 +0000 (11:44 -0800)]
; Merge from origin/emacs-27

The following commit was skipped:

e1b3fd3beb Install g++ for CEDET tests

4 years agoMerge from origin/emacs-27
Paul Eggert [Sun, 5 Jan 2020 19:44:48 +0000 (11:44 -0800)]
Merge from origin/emacs-27

05c5bf4d38 * lisp/net/tramp.el: Fix typos.

4 years agoShorten pointer printing code using a small helper function.
Philipp Stephani [Sun, 5 Jan 2020 16:04:17 +0000 (17:04 +0100)]
Shorten pointer printing code using a small helper function.

* src/print.c (print_pointer): New helper function.
(print_vectorlike): Use it.

4 years agoAlso print function data when printing module functions.
Philipp Stephani [Sun, 5 Jan 2020 15:05:14 +0000 (16:05 +0100)]
Also print function data when printing module functions.

This is especially useful in cases where modules only use a single
entry point and use the data to dispatch to the actual function.  Such
a design is common for languages such as Go and C++.

* src/emacs-module.c (module_function_data): New function.

* src/print.c (print_vectorlike): Use it to print module function data
if not NULL.
(print_object): Adapt size of buffer.

* test/data/emacs-module/mod-test.c (emacs_module_init): Pass some
non-NULL data to ‘mod-test-sum’.
(Fmod_test_sum): Check that correct data is passed through.

* test/src/emacs-module-tests.el (mod-test-sum-test)
(module-function-object): Adapt unit tests.

4 years ago; * lisp/x-dnd.el (x-dnd-get-motif-value): Fix typo.
Mattias Engdegård [Sun, 5 Jan 2020 11:22:05 +0000 (12:22 +0100)]
; * lisp/x-dnd.el (x-dnd-get-motif-value): Fix typo.

4 years agoRemove generation of old bytecodes for catch/unwind
Mattias Engdegård [Fri, 3 Jan 2020 12:58:15 +0000 (13:58 +0100)]
Remove generation of old bytecodes for catch/unwind

* lisp/emacs-lisp/bytecomp.el (byte-compile--use-old-handlers)
(byte-compile-condition-case, byte-compile-condition-case--old):
Remove.
(byte-compile-condition-case--new):
Rename to byte-compile-condition-case.
(byte-compile-catch, byte-compile-unwind-protect):
* lisp/emacs-lisp/cconv.el (cconv-convert, cconv-analyze-form):
* lisp/emacs-lisp/byte-opt.el (byte-optimize-form-code-walker):
Simplify.

4 years agoImprove doc-strings of 'quit-window' and 'quit-restore-window' (Bug#38819)
Martin Rudalics [Sun, 5 Jan 2020 08:59:01 +0000 (09:59 +0100)]
Improve doc-strings of 'quit-window' and 'quit-restore-window' (Bug#38819)

* lisp/window.el (quit-restore-window, quit-window): Make
doc-strings more consistent; add references to corresponding
section of the Elisp manual (Bug#38819).

4 years ago* lisp/emacs-lisp/bindat.el: Remove obsolete comment.
Paul Eggert [Sun, 5 Jan 2020 03:14:24 +0000 (19:14 -0800)]
* lisp/emacs-lisp/bindat.el: Remove obsolete comment.

4 years ago; Some that->than fixes.
Paul Eggert [Sun, 5 Jan 2020 03:12:41 +0000 (19:12 -0800)]
; Some that->than fixes.

4 years ago* lisp/arc-mode.el (archive-zip-summarize): Remove unused local.
Paul Eggert [Sun, 5 Jan 2020 03:08:39 +0000 (19:08 -0800)]
* lisp/arc-mode.el (archive-zip-summarize): Remove unused local.

4 years agoSimplify x-dnd.el due to bignums
Paul Eggert [Sun, 5 Jan 2020 03:07:02 +0000 (19:07 -0800)]
Simplify x-dnd.el due to bignums

* lisp/x-dnd.el (x-dnd-get-drop-x-y, x-dnd-version-from-flags)
(x-dnd-more-than-3-from-flags, x-dnd-get-motif-value)
(x-dnd-motif-value-to-list): Do not worry about pairs of
16-bit numbers, as the C code no longer generates them;
it generates bignums now, when needed on 32-bit platforms.

4 years agoFix MH-E bug #470: Show buffer discards text properties
Stephen Gildea [Sat, 4 Jan 2020 23:28:07 +0000 (15:28 -0800)]
Fix MH-E bug #470: Show buffer discards text properties

* lisp/mh-e/mh-show.el (mh-display-msg): reset font lock and set
major mode *before* formatting message content.  This changes lets
fonts work when the Show buffer is reused for a new message.
(mh-show-mode): no longer set buffer-read-only; that is better done
by mh-display-msg after setting all content.

4 years ago* lisp/gnus/gnus-start.el (gnus-group-change-level): Simplify
Stefan Monnier [Sat, 4 Jan 2020 23:07:23 +0000 (18:07 -0500)]
* lisp/gnus/gnus-start.el (gnus-group-change-level): Simplify

* lisp/gnus/gnus-group.el (gnus-group-unsubscribe-group): Simplify.

4 years agoFix bug in recent allocate_string_data patch
Paul Eggert [Sat, 4 Jan 2020 21:33:44 +0000 (13:33 -0800)]
Fix bug in recent allocate_string_data patch

Reported by Glenn Morris in:
https://lists.gnu.org/r/emacs-devel/2020-01/msg00098.html
* src/alloc.c (allocate_string_data): If the string is small and
there is not enough room in the current block, clear the string if
CLEARIT.

4 years agoFix some broken conditional forms
Paul Eggert [Sat, 4 Jan 2020 19:17:12 +0000 (11:17 -0800)]
Fix some broken conditional forms

Problem reported by Mattias Engdegård in:
https://lists.gnu.org/r/emacs-devel/2020-01/msg00088.html
* lisp/cedet/ede/cpp-root.el (ede-create-lots-of-projects-under-dir):
Remove this quick hack, which didn’t do anything anyway.
* lisp/cedet/ede/pconf.el (ede-proj-configure-test-required-file):
* lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-col):
* lisp/net/nsm.el (nsm-check-tls-connection):
Use ‘when’ rather than bypassing it.  This doesn’t affect behavior
and is better style.
* lisp/cedet/srecode/semantic.el (srecode-semantic-handle-:tag):
Fix typo that suppressed an error.
* lisp/filesets.el (filesets-run-cmd): Fix typo that mishandled spacing.
* lisp/gnus/gnus-cloud.el (gnus-cloud-update-newsrc-data):
Fix typo that caused “GROUP has older different info in the cloud
as of DATE, update it here?” prompt result to always be treated as
“yes”.
* lisp/gnus/mml-smime.el (mml-smime-openssl-encrypt): Simplify,
since smime-encrypt-buffer signals error on failure.
* lisp/international/titdic-cnv.el (tsang-quick-converter): Simplify.
The conversion of this file to utf-8-emacs in
2019-01-08T02:18:40Z!monnier@iro.umontreal.ca removed the
distinction between Big5 and CNS fulltitles in the generated docstring.
* lisp/org/org-agenda.el (org-agenda-show-and-scroll-up):
* lisp/textmodes/table.el (table--generate-source-cell-contents):
Simplify by removing useless code.
* lisp/org/ox-odt.el (org-odt--format-timestamp): Fix typo that
always output time-of-day even when the timestamp lacked it.

4 years agoFix a scoping error in tramp-sudoedit.el
Michael Albinus [Sat, 4 Jan 2020 13:00:39 +0000 (14:00 +0100)]
Fix a scoping error in tramp-sudoedit.el

* lisp/net/tramp-sudoedit.el (tramp-sudoedit-handle-file-system-info):
Fix a scoping error.

4 years agoImprove 'noexcept' support in C++17.
Philipp Stephani [Sat, 4 Jan 2020 12:54:29 +0000 (13:54 +0100)]
Improve 'noexcept' support in C++17.

In C++17, 'noexcept' is part of a function type and may be used in
typedef declarations, see
https://en.cppreference.com/w/cpp/language/noexcept_spec.

* src/emacs-module.h.in: Mark function pointer type aliases as
'noexcept' in C++17.

4 years agoGenerate fewer useless conditionals in cl-loop
Mattias Engdegård [Sat, 4 Jan 2020 12:14:32 +0000 (13:14 +0100)]
Generate fewer useless conditionals in cl-loop

* lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause):
Don't generate a condition if both branches are the same, which
is the common case.

4 years agoMake module function finalizer test less brittle.
Philipp Stephani [Sat, 4 Jan 2020 11:34:10 +0000 (12:34 +0100)]
Make module function finalizer test less brittle.

* test/src/emacs-module-tests.el (module/function-finalizer): Create
100 leaked functions to increase the probability that at least one
gets garbage-collected.

4 years ago* lisp/autorevert.el (auto-revert-notify-handler): Fix bracketing.
Mattias Engdegård [Fri, 3 Jan 2020 23:01:42 +0000 (00:01 +0100)]
* lisp/autorevert.el (auto-revert-notify-handler): Fix bracketing.

4 years agoFix typo in 'window_box_height'
Martin Rudalics [Sat, 4 Jan 2020 08:43:13 +0000 (09:43 +0100)]
Fix typo in 'window_box_height'

* src/xdisp.c (window_box_height): Add missing 'else'.

4 years agoemacs-module.h: Don't generate invalid C++11 code.
Philipp Stephani [Sat, 4 Jan 2020 02:21:32 +0000 (03:21 +0100)]
emacs-module.h: Don't generate invalid C++11 code.

* src/emacs-module.h.in: Remove 'noexcept' from function pointer type
aliases.  It is illegal there in C++11, see
https://en.cppreference.com/w/cpp/language/noexcept_spec.

4 years agoLet the OS clear new large strings of NUL
Paul Eggert [Sat, 4 Jan 2020 01:14:00 +0000 (17:14 -0800)]
Let the OS clear new large strings of NUL

On my platform, this sped up (make-string 4000000000 0) from 2.5
to 0.015 seconds (not that people should want to do this much :-).
* src/alloc.c (allocate_string_data): New arg CLEARIT.
Callers changed.
(Fmake_string): Prefer calloc to malloc+memset when allocating a
large string of NUL bytes.
(make_clear_string): New function.
(make_uninit_string): Use it.
(make_clear_multibyte_string): New function.
(make_uninit_multibyte_string): Use it.

4 years ago* src/alloc.c (cleanup_vector): Fix --without-modules builds.
Glenn Morris [Fri, 3 Jan 2020 22:26:02 +0000 (14:26 -0800)]
* src/alloc.c (cleanup_vector): Fix --without-modules builds.

4 years agoInstall g++ for CEDET tests
Mattias Engdegård [Fri, 3 Jan 2020 13:08:23 +0000 (14:08 +0100)]
Install g++ for CEDET tests

* .gitlab-ci.yml (before_script): Add g++.
Backport from master.

4 years ago* lisp/net/tramp.el: Fix typos.
Michael Albinus [Fri, 3 Jan 2020 18:33:10 +0000 (19:33 +0100)]
* lisp/net/tramp.el: Fix typos.

4 years agoImplement finalizers for module functions (Bug#30373)
Philipp Stephani [Sun, 11 Feb 2018 20:38:22 +0000 (21:38 +0100)]
Implement finalizers for module functions (Bug#30373)

* src/module-env-28.h: Add new module environment functions to
module environment for Emacs 28.

* src/emacs-module.h.in: Document that 'emacs_finalizer' also works
for function finalizers.

* src/emacs-module.c (CHECK_MODULE_FUNCTION): New function.
(struct Lisp_Module_Function): Add finalizer data member.
(module_make_function): Initialize finalizer.
(module_get_function_finalizer)
(module_set_function_finalizer): New module environment functions.
(module_finalize_function): New function.
(initialize_environment): Initialize new environment functions.

* src/alloc.c (cleanup_vector): Call potential module function
finalizer during garbage collection.

* test/data/emacs-module/mod-test.c (signal_error): New helper
function.
(memory_full): Use it.
(finalizer): New example function finalizer.
(Fmod_test_make_function_with_finalizer)
(Fmod_test_function_finalizer_calls): New test module functions.
(emacs_module_init): Define them.

* test/src/emacs-module-tests.el (module/function-finalizer): New unit
test.

* doc/lispref/internals.texi (Module Functions): Document new
functionality.
(Module Misc): Move description of 'emacs_finalizer' type to 'Module
Functions' node, and add a reference to it.

* etc/NEWS: Mention new functionality.

4 years agoFix the MS-Windows build broken by "Let the OS clear large new objects"
Eli Zaretskii [Fri, 3 Jan 2020 16:27:35 +0000 (18:27 +0200)]
Fix the MS-Windows build broken by "Let the OS clear large new objects"

* src/w32heap.c (sys_calloc): New function, implements calloc
in terms of our private implementations of malloc.

* nt/inc/ms-w32.h (calloc): Redirect to sys_calloc.

4 years agoMerge from origin/emacs-27
Glenn Morris [Fri, 3 Jan 2020 15:50:15 +0000 (07:50 -0800)]
Merge from origin/emacs-27

06364316e0 (origin/emacs-27) * lisp/net/tramp.el (tramp-file-local-na...
d3884f50e0 Adapt commentary in Tramp persistency file
2d82f5a44e Change Tramp version to 2.4.3.27.1
09b65707cc ; * src/dispnew.c (adjust_glyph_matrix): Fix last change.
37f9182b68 Fix redisplay when mode-line-format changes mode-line's he...
1420906b81 * src/fileio.c (Fwrite_region): Improve the doc string.
01dfcb7c87 Fix removal of frame decorations on Windows (Bug#38705)

4 years ago; Merge from origin/emacs-27
Glenn Morris [Fri, 3 Jan 2020 15:50:15 +0000 (07:50 -0800)]
; Merge from origin/emacs-27

The following commit was skipped:

338154240e Fix compilation with GTK versions older than 3

4 years agoMerge from origin/emacs-27
Glenn Morris [Fri, 3 Jan 2020 15:50:15 +0000 (07:50 -0800)]
Merge from origin/emacs-27

071483b6f5 Fix reverting customizations
43203d5068 * lisp/loadup.el: Set max-specpdl-size to 1800 when loadin...
fab3674b36 Revert "Raise default max-specpdl-size value"
42f66aa502 ; Fix NEWS.24
bb9402e6e9 Raise default max-specpdl-size value