1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-28 16:21:07 -08:00
Commit graph

131188 commits

Author SHA1 Message Date
Olaf Rogalsky
51a5ccbe85 * src/keyboard.c: Make xterm-mouse clicks on mode-line work
Copyright-paperwork-exempt: yes

(read_key_sequence): Recompute first_event
after replay_sequence, since it might have changed (bug#29104).
2017-11-20 12:47:39 -05:00
Johan Bockgård
369c67a6bb copyright.el: Avoid inadvertent point motion
* lisp/emacs-lisp/copyright.el (copyright-update-year): Enlarge the
scope of save-excursion. Reported in:
https://lists.gnu.org/archive/html/emacs-devel/2017-04/msg00271.html
2017-11-19 16:29:14 +01:00
Michael Albinus
f41bcae3e5 ; * test/lisp/net/tramp-tests.el (tramp-test24-file-acl):
Remove test instrumentation.
2017-11-19 12:18:37 +01:00
Michael Albinus
ecda09c22d ; * test/lisp/net/tramp-tests.el (tramp-test24-file-acl): More instrumentation 2017-11-19 11:06:19 +01:00
Vibhav Pant
afbd8140e4
lisp/erc/erc-services.el: Fix arg eval order of inline functions.
* lisp/erc/erc-services.el (erc-nickserv-alist-sender,
  erc-nickserv-alist-regexp, erc-nickserv-alist-nickserv,
  erc-nickserv-alist-ident-keyword, erc-nickserv-alist-use-nick-p,
  erc-nickserv-alist-ident-command,
  erc-nickserv-alist-identified-regexp): Use `inline-letevals' to make
  sure that `network' is evaluated first and independently of `entry'.
2017-11-19 15:08:17 +05:30
Eric Abrahamsen
d547f417c8 Further fixes to writing of object names
Pursuant to 1ef6d2b0e6

* lisp/emacs-lisp/eieio.el (object-write): Only write the name in the
  comment when the comment's also present. Newline should only be
  printed if the name is.
2017-11-18 10:18:53 -08:00
Vibhav Pant
52cc9a57f4
Reimplement inline functions in ERC with define-inline.
* lisp/erc/erc-backend.el: (erc-server-reconnect-p): Reimplement using
  define-inline.

* lisp/erc/erc-dcc.el: (erc-dcc-unquote-filename, erc-dcc-get-parent):
  Reimplement using define-inline.

* lisp/erc/erc-services.el: (erc-nickserv-alist-sender,
  erc-nickserv-alist-regexp, erc-nickserv-alist-nickserv,
  erc-nickserv-alist-ident-keyword, erc-nickserv-alist-use-nick-p,
  erc-nickserv-alist-ident-command,
  erc-nickserv-alist-identified-regexp): Reimplement using define-inline.

* lisp/erc/erc.el: (erc-get-channel-user, erc-get-server-user,
  erc-add-server-user, erc-remove-server-user, erc-channel-user-owner-p,
  erc-channel-user-admin-p, erc-channel-user-op-p,
  erc-channel-user-halfop-p, erc-channel-user-voice-p, erc-log):
  Reimplement using define-inline.
2017-11-18 19:10:08 +05:30
Phillip Lord
6b8e9b74bd Rebrand Uninstaller
* admin/nt/dist-build/emacs.nsi: Add MUI_UNICON
2017-11-17 23:03:03 +00:00
Phillip Lord
d20eab9831 Fix install location for windows installer 2017-11-17 23:03:03 +00:00
Michael Albinus
345c7d9c7b ; * test/lisp/net/tramp-tests.el (tramp-test24-file-acl): Instrument test. 2017-11-17 13:38:52 +01:00
Phillip Lord
bc462efec8 Rebrand Windows installer
* admin/nt/dist-build/emacs.nsi: Use two icons.
 * etc/images/splash.bmp,etc/images/icons/hicolor/scalable/apps/emacs.ico:
   New files.
2017-11-15 22:53:31 +00:00
Glenn Morris
52d822f31b Merge from origin/emacs-26
796c7f7 (origin/emacs-26) ; Fix last fix of 'mouse-drag-and-drop-region'
40d41dd (emacs-26) Fix Bug#28139
a5ec644 Fix Bug#29291
8b900e5 Fix Bug#2928
ff7bd84 Make 'mouse-drag-and-drop-region' work with 'mouse-autoselect...
0491de8 * etc/PROBLEMS: Remove fixed xterm-mouse-mode problems
caa39f4 Fix cookie handling (bug#29282)
93304e3 Improve documentation of Edebug and macros
2017-11-14 17:43:06 -05:00
Martin Rudalics
796c7f7a94 ; Fix last fix of 'mouse-drag-and-drop-region'
* lisp/mouse.el (mouse-drag-and-drop-region): Use 'car-safe'
instead of 'car' to ignore 'select-window' events.  Thanks to
Stefan Monnier for spotting this.
2017-11-14 18:36:12 +01:00
Daniel Pittman
40d41dd497 Fix Bug#28139
* tramp-sh.el: Set TERM and INSIDE_EMACS environment earlier.
(tramp-remote-process-environment): Remove TERM and INSIDE_EMACS.
(tramp-remote-process-environment): Document their special handling.
(tramp-open-shell): Set TERM and INSIDE_EMACS prior to starting the
initial remote shell, so that it is also aware of the environment
in which it is operating.  (Bug#28139)
2017-11-14 11:38:30 +01:00
Michael Albinus
a5ec644caa Fix Bug#29291
* test/lisp/net/tramp-tests.el (tramp-test24-file-acl):
Preserve permissions when copying.  (Bug#29291)
2017-11-14 10:38:41 +01:00
Michael Albinus
8b900e5ba2 Fix Bug#2928
* test/lisp/net/tramp-tests.el (tramp-test25-file-selinux):
Enhance test.  (Bug#29287)
(tramp-test44-delay-load): Fix for older Emacsen.
2017-11-14 10:21:55 +01:00
Martin Rudalics
ff7bd84b23 Make 'mouse-drag-and-drop-region' work with 'mouse-autoselect-window' non-nil
* lisp/mouse.el (mouse-drag-and-drop-region): Ignore
'select-window' events to make it work with
'mouse-autoselect-window'.
2017-11-14 10:09:24 +01:00
Alexander Gramiak
0491de8dad * etc/PROBLEMS: Remove fixed xterm-mouse-mode problems
See: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=29143#26
2017-11-14 00:00:18 -06:00
Eric Abrahamsen
13248f7444 Fix name of gnus-summary-sort-by-mark(s)
* lisp/gnus/gnus-sum.el (gnus-summary-sort-by-marks): Needs the
  "s", according to docs and keymap both.
2017-11-13 21:40:17 -08:00
Katsumi Yamaoka
caa39f495c Fix cookie handling (bug#29282)
* lisp/url/url-cookie.el (url-cookie-handle-set-cookie):
Regard a Set-Cookie header as it contains a single cookie;
prefer Max-Age to Expires and convert it to Expires;
remove support for old time string styles (bug#29282).
2017-11-13 23:56:26 +00:00
Gemini Lasswell
93304e3115 Improve documentation of Edebug and macros
* doc/lispref/edebug.texi (Instrumenting Macro Calls): Improve
discussion of when it might be necessary to find and evaluate macro
specifications before instrumenting.
(Specification List): Clarify what "defining form" means to Edebug
and when 'def-form' or 'def-body' should be used instead of 'form'
or 'body'.
2017-11-13 13:22:39 -08:00
Paul Eggert
99ceefa8ec Merge from origin/emacs-26
79108894db Port to IBM xlc 12.01
d14956099d Simplify by removing HAVE_STRUCT_ATTRIBUTE_ALIGNED
b1573a97e1 Use alignas to fix GCALIGN-related bugs
5d68dc9a2f Change vectorlike from struct to union
6aa0a26b46 Don't enable cursor-sensor-mode in mhtml-mode
2b8ef8dddf * lisp/files.el (abbreviate-file-name): Doc fix.  (Bug#29267)
fe85ce1e16 Unbreak interactive run of a flymake test (bug#29267)
48ad00390d Fix Bug#29225
42daf83f08 CC Mode: Fix defun-open being recognized as brace-list-ope...
7775c47298 Merge from Gnulib
e470d16448 Pacify GCC when configured --with-x-toolkit=no
49450d0951 * lisp/find-dired.el (find-grep-dired): Doc fix.  (Bug#29262)
e286b3381f Fix more flymake-diag-region eob corner cases and add test...

# Conflicts:
#	src/lisp.h
2017-11-13 10:54:20 -08:00
Paul Eggert
79108894db Port to IBM xlc 12.01
Work around a compiler bug by using a separate enum for alignment.
* src/alloc.c (roundup_size): Declare in a separate enum.
2017-11-13 10:16:52 -08:00
Paul Eggert
d14956099d Simplify by removing HAVE_STRUCT_ATTRIBUTE_ALIGNED
* configure.ac (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Remove.  No longer
needed, since we no longer rely on __attribute__ ((aligned (8))).
All uses removed.
* src/emacs-module.c (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Remove.
(lisp_to_value): Simplify now that we no longer need to worry
whether HAVE_STRUCT_ATTRIBUTE_ALIGNED is false.
2017-11-13 10:16:52 -08:00
Paul Eggert
b1573a97e1 Use alignas to fix GCALIGN-related bugs
Use alignas and unions to specify alignments of objects needing
addresses that are at least a multiple of GCALIGNMENT.  Using
these standard C facilities should be safer than relying on ad hoc
and poorly-understood features like GCC’s __attribute__
((aligned (N))), the root cause for recent porting bugs like
Bug#29040.  The alignas macro was standardized by C11 and Gnulib
supports alignas for pre-C11 platforms.  I have tested this on Sun
Studio 12 sparc (2007) and GCC 4.4.7 x86-64 (2012) as well as on
more recent platforms like GCC 7.2.1 (2017) on Fedora 26 (both
x86-64 and x86).
* lib-src/make-docfile.c (close_emacs_globals): lispsym is now
just an array of struct Lisp_Symbol, since struct Lisp_Symbol is
now properly aligned.  All uses changed.
* src/alloc.c (NEXT_FREE_LISP_STRING): Just use the new u.next
member; this is simpler and safer than casting a pointer that
might not be aligned properly.
(aligned_Lisp_Symbol): Remove.  No longer needed, now that struct
Lisp_Symbol is aligned properly.  All uses replaced with struct
Lisp_Symbol.
* src/lisp.h (GCALIGNED): Remove, as it does not work as expected:
it can cause the natural alignment to be ignored.  All uses
replaced by unions with a ‘char alignas (GCALIGNMENT)’ member as
described below.
(struct Lisp_Symbol, struct Lisp_Cons, struct Lisp_String):
Change definition from ‘struct TAG { MEMBERS };’ to
‘struct TAG { union { struct { MEMBERS } s; char alignas
(GCALIGNMENT) gcaligned; } u; };’.  This guarantees ‘struct TAG’
to have an alignment that at least max (GCALIGNMENT, N) where N is
its old alignment.  All uses like ‘PTR->MEMBER’ changed to
‘PTR->u.s.MEMBER’; these uses were supposed to be mostly private
anyway.  Verify that the resulting ‘struct TAG’ is properly
aligned for Emacs.
(union vectorlike_header): New member ‘gcaligned’ to guarantee
that this type, and its containing types like ‘struct Lisp_Subr’,
‘struct buffer’ and ‘struct thread_state’, are all properly
aligned for Emacs.
(struct Lisp_String): New union member ‘next’, for the benefit
of NEXT_FREE_LISP_STRING.
(union Aligned_Cons, union Aligned_String): Remove.  All uses
replaced by struct Lisp_Cons and struct Lisp_String, since they
are now properly aligned.
(USE_STACK_CONS, USE_STACK_STRING): Simplify now that we can
assume struct Lisp_Cons and struct Lisp_String are properly
aligned.
2017-11-13 10:16:51 -08:00
Paul Eggert
5d68dc9a2f Change vectorlike from struct to union
* src/lisp.h (vectorlike_headed): Change from struct to union.
All uses changed.  Since it has only one member, this does not
change semantics.  This is designed to simplify future changes
needed to fix bugs like Bug#29040.  All uses changed.
2017-11-13 10:16:51 -08:00
Stefan Monnier
a7b7b85567 * lisp/gnus/gnus-srvr.el: Avoid custom-set-variables
* lisp/gnus/gnus-srvr.el (gnus-server-toggle-cloud-method-server):
Prefer customize-set-variable.
2017-11-13 11:28:05 -05:00
Tom Tromey
6aa0a26b46 Don't enable cursor-sensor-mode in mhtml-mode
* lisp/textmodes/mhtml-mode.el (mhtml--last-submode): Update doc
string.
(mhtml-mode): Don't call cursor-sensor-mode.
2017-11-12 11:56:05 -07:00
Eli Zaretskii
2b8ef8dddf * lisp/files.el (abbreviate-file-name): Doc fix. (Bug#29267) 2017-11-12 15:25:06 +02:00
João Távora
fe85ce1e16 Unbreak interactive run of a flymake test (bug#29267)
See https://debbugs.gnu.org/cgi/bugreport.cgi?bug=19657#20 for the
technique used here.

* test/lisp/progmodes/flymake-tests.el (ruby-backend):
Let-bind abbreviated-home-dir.
2017-11-12 12:34:36 +00:00
Michael Albinus
48ad00390d Fix Bug#29225
* src/fileio.c (Fset_file_acl): Report error only when
acl_errno_valid returns true.  (Bug#29225)

* test/lisp/net/tramp-tests.el (tramp-test24-file-acl)
(tramp-test25-file-selinux): New tests.
(tramp-test26-file-name-completion, tramp-test27-load)
(tramp-test28-process-file, tramp-test29-start-file-process)
(tramp-test30-interrupt-process, tramp-test31-shell-command)
(tramp-test32-environment-variables)
(tramp-test32-environment-variables-and-port-numbers)
(tramp-test33-explicit-shell-file-name)
(tramp-test34-vc-registered)
(tramp-test35-make-auto-save-file-name)
(tramp-test36-find-backup-file-name)
(tramp-test37-make-nearby-temp-file)
(tramp-test38-special-characters)
(tramp-test38-special-characters-with-stat)
(tramp-test38-special-characters-with-perl)
(tramp-test38-special-characters-with-ls, tramp-test39-utf8)
(tramp-test39-utf8-with-stat, tramp-test39-utf8-with-perl)
(tramp-test39-utf8-with-ls, tramp-test40-file-system-info)
(tramp-test41-asynchronous-requests)
(tramp-test42-recursive-load, tramp-test43-remote-load-path)
(tramp-test44-delay-load, tramp-test45-unload): Rename.
2017-11-12 13:06:09 +01:00
Alan Mackenzie
42daf83f08 CC Mode: Fix defun-open being recognized as brace-list-open at EOB.
* lisp/progmodes/cc-engine.el (c-looking-at-statement-block): Add handling
for an open brace at EOB and nested braces inside an unclosed brace block.
2017-11-12 11:49:03 +00:00
Paul Eggert
7775c47298 Merge from Gnulib
This incorporates:
2017-11-11 faccessat: port to macOS (Bug#29231)
2017-11-05 fstatat: pacify GCC on unusual platform
* build-aux/config.guess, build-aux/config.sub:
* doc/misc/texinfo.tex, lib/faccessat.c, lib/fstatat.c:
* lib/unistd.in.h, m4/faccessat.m4, m4/unistd_h.m4:
Copy from Gnulib.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.
2017-11-11 23:12:17 -08:00
Paul Eggert
e470d16448 Pacify GCC when configured --with-x-toolkit=no
Without these changes, Emacs does not build on Fedora 26 x86-64
when configured --with-x-toolkit=no --enable-gcc-warnings.
* oldXMenu/Activate.c (XMenuActivate): Add FALLTHROUGH.
* src/xterm.c (x_dispatch_event): Define only if
USE_X_TOOLKIT || USE_MOTIF || USE_GTK.
2017-11-11 23:00:31 -08:00
Eli Zaretskii
49450d0951 * lisp/find-dired.el (find-grep-dired): Doc fix. (Bug#29262) 2017-11-12 07:03:48 +02:00
João Távora
e286b3381f Fix more flymake-diag-region eob corner cases and add tests (bug#29201)
* lisp/progmodes/flymake.el (flymake-diag-region): Correct
more eob corner cases.

* test/lisp/progmodes/flymake-tests.el
(eob-region-and-trailing-newline): New test.
2017-11-11 23:44:52 +00:00
Basil L. Contovounesios
000e729071 Rename Man-build-section-alist (bug#28998)
The defsubst Man-build-section-alist builds and returns a list of
strings, so rename it to Man-build-section-list and make it a defun.

* lisp/man.el (Man-build-section-alist): Do it and reduce syntax.
(Man-goto-page):
* lisp/woman.el (woman-find-file): Use it.
2017-11-11 11:12:28 -05:00
Noam Postavsky
1fa0766cfa ; Merge from emacs-26
9533d76b0b Keep Man sections in natural order (bug#28998)
d63c9a96f5 * lisp/minibuffer.el: Install a workaround for bug#16274
7657a86709 Fix comparisons with tip_frame in GTK builds
603a0716a8 Improve the documentation of M-n for entering file names
72f813fb56 Fix desktop auto-save timer when linum-mode is used
44340b475f Fix "C-h k" in xterm-mouse-mode
05aa6d4a68 Fix off-by-1 bug in --enable-checking=stringbytes
096f638ddc Correct the indentation of C99's compound literals.
c52a2aa8f3 Improve the doc string of 'dired-isearch-filter-filenames'
e592b92482 * lisp/isearch.el (search-invisible): Doc fix.  (Bug#29222)
f3e69a80ab Fix display of line numbers in GTK builds
e6f1fd4091 Fix previous change to flymake-diag-region (bug#29174)
89382780e1 flymake-diag-region really returns nil if region is invali...
535688a418 Flymake correctly highlights whole last line if eob (bug#2...
72e62d3fdb Protect Flymake checkdoc backend against checkdoc errors (...
b28de57411 Sort entries of the Flymake diagnostics buffer (bug#29175)
fc56bea142 Correctly indent C++14 brace lists which are a second argu...
9dde8be9cd Fix redisplay of overlay-arrows on GUI frames
0da08f2f8e Protect Flymake tests against older Ruby and Perl (bug#29187)
781f276cc1 Fix URL cookie expiration bug
2017-11-11 11:12:00 -05:00
Basil L. Contovounesios
9533d76b0b Keep Man sections in natural order (bug#28998)
* lisp/man.el (Man-build-section-alist): Reverse sections.
2017-11-11 10:46:43 -05:00
Stefan Monnier
d63c9a96f5 * lisp/minibuffer.el: Install a workaround for bug#16274
* lisp/minibuffer.el (completion--nth-completion): Avoid signaling an
error when `md` is applied to another table.
2017-11-11 10:25:20 -05:00
Eli Zaretskii
7657a86709 Fix comparisons with tip_frame in GTK builds
* src/xterm.c (x_update_begin, x_new_font):
* src/xfns.c (Fx_display_monitor_attributes_list):
* src/frame.c (Fframe_list) [USE_GTK]: Don't consider tip_frame a
tooltip frame unless its 'tooltip' parameter is non-nil.  (Bug#26747)
2017-11-11 14:42:30 +02:00
Eli Zaretskii
603a0716a8 Improve the documentation of M-n for entering file names
* lisp/files.el (find-file, find-file-other-window)
(find-file-other-frame): Mention file-name-at-point-functions in
the doc string.  Reported by Florian Weimer <fw@deneb.enyo.de> in
http://lists.gnu.org/archive/html/emacs-devel/2017-11/msg00224.html.

* doc/emacs/mini.texi (Minibuffer History): Document
file-name-at-point-functions and its effect on M-n when typing
file names in the minibuffer.
* doc/emacs/files.texi (File Names):
* doc/emacs/mini.texi (Minibuffer File): Add a cross-reference to
"Minibuffer History", where special features of M-n regarding
files are described.
2017-11-11 13:48:37 +02:00
Eli Zaretskii
72f813fb56 Fix desktop auto-save timer when linum-mode is used
* lisp/desktop.el (desktop-read): Use toplevel value of
window-configuration-change-hook when deciding whether desktop
auto-saving is enabled.  Suggested by Peter Neidhardt
<pe.neidhardt@googlemail.com>.  (Bug#28945)
2017-11-11 11:53:42 +02:00
Olaf Rogalsky
44340b475f Fix "C-h k" in xterm-mouse-mode
* lisp/help.el (help-read-key-sequence): Support "C-h k" for
xterm-mouse-mode by calling read-key-sequence-vector instead of
read-event.  (Bug#29150)
2017-11-11 11:05:53 +02:00
Eric Abrahamsen
1ef6d2b0e6 Provide more control over writing of objects in object-write
* lisp/emacs-lisp/eieio.el (eieio-print-indentation,
  eieio-print-object-name): New variables controlling whether an
  object name is printed for each object, and whether an object's
  contents are indented or not. Object names are obsoleted; omitting
  indentation reduces the size of persistence files.
2017-11-10 17:33:57 -08:00
Paul Eggert
05aa6d4a68 Fix off-by-1 bug in --enable-checking=stringbytes
Evidently nobody builds Emacs with --enable-checking=all,
which is no surprise as it is so slow as to be unusable nowadays.
Perhaps we should remove the slowest checks, or move them into
another category, or speed them up, or something.
* src/alloc.c (SDATA_SIZE) [GC_CHECK_STRING_BYTES]: Fix off-by-one
error in size calculation, which caused a failure when
--enable-checking=stringbytes was used.  I introduced this bug in
2016-09-08T01:08:45!eggert@cs.ucla.edu "Port flexible array
members to GCC + valgrind".
2017-11-10 15:44:04 -08:00
Alan Mackenzie
096f638ddc Correct the indentation of C99's compound literals.
* lisp/progmodes/cc-engine.el (c-looking-at-statement-block): Amend so that
if there is only syntactic whitespace in a brace block, it is regarded as a
statement block.  Also, if there is no semicolon or comma delimiter, treat as
a statement block when there is a keyword.
(c-guess-basic-syntax): CASE 9 test: Regard a brace as starting a brace block
when its contents indicate a brace block.
2017-11-10 17:45:22 +00:00
Eli Zaretskii
c52a2aa8f3 Improve the doc string of 'dired-isearch-filter-filenames'
* lisp/dired-aux.el (dired-isearch-filter-filenames): Doc fix.
(Bug#29215)
2017-11-10 12:12:46 +02:00
Eli Zaretskii
e592b92482 * lisp/isearch.el (search-invisible): Doc fix. (Bug#29222) 2017-11-10 12:05:08 +02:00
Eli Zaretskii
f3e69a80ab Fix display of line numbers in GTK builds
* src/xdisp.c (should_produce_line_number) [USE_GTK]: Make sure
tip_frame is indeed a tooltip frame, before disabling line numbers
on it.  (Bug#27647)

* src/dispextern.h (tip_frame): Add commentary describing the
kludgey usage of this variable in GTK builds.
2017-11-10 10:35:31 +02:00