summaryrefslogtreecommitdiff
path: root/lisp/progmodes/flymake.el
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2017-11-08 19:22:26 -0800
committerPaul Eggert <eggert@cs.ucla.edu>2017-11-08 19:22:26 -0800
commit6ee827059463e4b95c9251ef22a21f9c67cf668d (patch)
tree0612e1b84922cc43eeed5ea219104d4c5985cbdf /lisp/progmodes/flymake.el
parent83dc3f0e9b518e45bcfb0aaebcc706f79622f157 (diff)
parent255ba01148f69f452937e67feb7af5d4c1466fed (diff)
downloademacs-6ee827059463e4b95c9251ef22a21f9c67cf668d.tar.gz
Merge from origin/emacs-26
255ba01148 Fix handling of nil PRED2 arg for completion-table-with-pr... 949b70a7d8 ; Minor comment copyedit in window.c 20f9bf30f0 Describe Lao rendering problem 3d61657694 Fix docstring of arabic-shaper-ZWNJ-handling db949166ec Handle single-line comments correctly (Bug#26049) 795bb233a5 * test/lisp/net/tramp-tests.el (tramp-test16-file-expand-w... ba00ea7d0d * etc/PROBLEMS: Add URL to relevant issues for xterm+evil bug 4a6015811e ; In text.texi fix typo spotted by Štěpán Němec 93cd8415b2 Document new treatment of 'comment-auto-fill-only-comments' ca2d94ba61 Do not load Tramp unless `tramp-mode' is non-nil 709478eaa8 Prefer `customize-set-variable' in tramp.texi 5d36f2227f Fix last change in hscroll_window_tree 72d07d1950 Ediff: add some missing documentation 18af404ef3 Support python virtualenv on w32 (Bug#24464) efd0371c23 Improve dired deletion error handling (Bug#28797) 5d744e032f Don't replace user input when completion prefix is empty (... ec6cf35c5f ; Describe xt-mouse problems with Evil mode c572e1f329 Return non-nil from gnutls-available-p under GnuTLS 2.x a2cc6d74c5 Fix Flymake help-echo functions across windows (bug#29142) 58bb3462ee Add tests for Flymake backends for Ruby and Perl 58e742b21d Add a Flymake backend for Perl 9dee764165 Add a Flymake backend for Ruby 3ad712ebc9 Add a Flymake backend for Python (bug#28808) 8db2b3a79b Allow "%" in Tramp host names 8c50842790 ; Fix typo in test/file-organization.org 00fa4449cd ; Fix typo 918a2dda07 Use hybrid malloc for FreeBSD (Bug#28308) 725ab635d9 Add html-, mhtml- and python-mode support to semantic symref 369da28702 Improve documentation of 'window-scroll-functions' 93818eed8a Fix subtle problems in tabulated-list-mode with line numbers 1f1de8e872 Make gdb-non-stop-setting default to nil on MS-Windows 680e8e119b Fix gdb-mi prompt after "attach PID" command ff33074546 Fix doc string of 'window-configuration-change-hook' 787b75ad71 Improve documentation of window hooks d9be8704ae Fix hscroll suspension after cursor motion 6f43d29d29 ; * CONTRIBUTE, admin/make-tarball.txt: Doc tweaks re 'ema... a0d30d6369 Introduce a function to CC Mode which displays the current... 383abc8898 ; Fix some comment typos b02c2714c3 Fix typos in ediff-wind.el 4f38bdec74 Examine tex-chktex--process in the correct buffer 94b490529a * nt/INSTALL.W64: Update to current mingw64 install instru... c25113d4ac Don't resignal errors in flymake-diag-region e950f329c0 New xref-quit-and-goto-xref command bound to TAB (bug#28814) 5d34e1b288 Allow split-window-sensibly to split threshold in further ... 2a973edeac Honor window-switching intents in xref-find-definitions (b... 78e9065e9f * lisp/emacs-lisp/generator.el (iter-do): Add a debug decl... caa63cc96c * lisp/progmodes/flymake.el (flymake-start): Fix dead buff... 9f4f130b79 Fix buffer name comparison in async shell-command # Conflicts: # etc/NEWS # lisp/vc/ediff-wind.el
Diffstat (limited to 'lisp/progmodes/flymake.el')
-rw-r--r--lisp/progmodes/flymake.el26
1 files changed, 15 insertions, 11 deletions
diff --git a/lisp/progmodes/flymake.el b/lisp/progmodes/flymake.el
index 19dac81fe6d..0d200f01b34 100644
--- a/lisp/progmodes/flymake.el
+++ b/lisp/progmodes/flymake.el
@@ -342,7 +342,7 @@ region is invalid."
(let* ((beg (fallback-bol))
(end (fallback-eol beg)))
(cons beg end)))))))
- (error (flymake-error "Invalid region line=%s col=%s" line col))))
+ (error (flymake-log :warning "Invalid region line=%s col=%s" line col))))
(defvar flymake-diagnostic-functions nil
"Special hook of Flymake backends that check a buffer.
@@ -522,11 +522,12 @@ associated `flymake-category' return DEFAULT."
(flymake--fringe-overlay-spec
(overlay-get ov 'bitmap)))
(default-maybe 'help-echo
- (lambda (_window _ov pos)
- (mapconcat
- #'flymake--diag-text
- (flymake-diagnostics pos)
- "\n")))
+ (lambda (window _ov pos)
+ (with-selected-window window
+ (mapconcat
+ #'flymake--diag-text
+ (flymake-diagnostics pos)
+ "\n"))))
(default-maybe 'severity (warning-numeric-level :error))
(default-maybe 'priority (+ 100 (overlay-get ov 'severity))))
;; Some properties can't be overridden.
@@ -603,8 +604,8 @@ not expected."
(null expected-token))
;; should never happen
(flymake-error "Unexpected report from stopped backend %s" backend))
- ((and (not (eq expected-token token))
- (not force))
+ ((not (or (eq expected-token token)
+ force))
(flymake-error "Obsolete report from backend %s with explanation %s"
backend explanation))
((eq :panic report-action)
@@ -744,8 +745,11 @@ Interactively, with a prefix arg, FORCE is t."
()
(remove-hook 'post-command-hook #'start-post-command
nil)
- (with-current-buffer buffer
- (flymake-start (remove 'post-command deferred) force)))
+ ;; The buffer may have disappeared already, e.g. because of
+ ;; code like `(with-temp-buffer (python-mode) ...)'.
+ (when (buffer-live-p buffer)
+ (with-current-buffer buffer
+ (flymake-start (remove 'post-command deferred) force))))
(start-on-display
()
(remove-hook 'window-configuration-change-hook #'start-on-display
@@ -948,7 +952,7 @@ applied."
(message
"%s"
(funcall (overlay-get target 'help-echo)
- nil nil (point)))))
+ (selected-window) target (point)))))
(interactive
(user-error "No more Flymake errors%s"
(if filter