mirror of
https://github.com/golang/go
synced 2024-11-21 19:34:46 -07:00
misc/emacs: Fix the gofmt patching when the TMPDIR is not the default.
The previous code assumed the gofmt output referred to /tmp but that's not true if TMPDIR points somewhere else (like on Macs). Fixes #3782. R=sameer CC=golang-dev https://golang.org/cl/6346050
This commit is contained in:
parent
fa6f9b4a3e
commit
11cafa3a42
@ -217,7 +217,7 @@ nesting caches from the modified point on."
|
||||
(remove-text-properties
|
||||
b (min go-mode-mark-string-end (point-max)) '(go-mode-comment nil))
|
||||
(setq go-mode-mark-comment-end b)))
|
||||
|
||||
|
||||
(when (< b go-mode-mark-nesting-end)
|
||||
(remove-text-properties b (min go-mode-mark-nesting-end (point-max)) '(go-mode-nesting nil))
|
||||
(setq go-mode-mark-nesting-end b))))
|
||||
@ -264,7 +264,7 @@ directly; use `go-mode-cs'."
|
||||
;; Back up to the last known state.
|
||||
(let ((last-cs
|
||||
(and (> go-mode-mark-cs-end 1)
|
||||
(get-text-property (1- go-mode-mark-cs-end)
|
||||
(get-text-property (1- go-mode-mark-cs-end)
|
||||
'go-mode-cs))))
|
||||
(if last-cs
|
||||
(car last-cs)
|
||||
@ -332,7 +332,7 @@ comment or string."
|
||||
;; Back up to the last known state.
|
||||
(let ((last-comment
|
||||
(and (> go-mode-mark-comment-end 1)
|
||||
(get-text-property (1- go-mode-mark-comment-end)
|
||||
(get-text-property (1- go-mode-mark-comment-end)
|
||||
'go-mode-comment))))
|
||||
(if last-comment
|
||||
(car last-comment)
|
||||
@ -381,7 +381,7 @@ directly; use `go-mode-in-string'."
|
||||
;; Back up to the last known state.
|
||||
(let ((last-cs
|
||||
(and (> go-mode-mark-string-end 1)
|
||||
(get-text-property (1- go-mode-mark-string-end)
|
||||
(get-text-property (1- go-mode-mark-string-end)
|
||||
'go-mode-string))))
|
||||
(if last-cs
|
||||
(car last-cs)
|
||||
@ -389,7 +389,7 @@ directly; use `go-mode-in-string'."
|
||||
(while (< pos end)
|
||||
(goto-char pos)
|
||||
(let ((cs-end ; end of the text property
|
||||
(cond
|
||||
(cond
|
||||
((looking-at "\"")
|
||||
(goto-char (1+ pos))
|
||||
(if (looking-at "[^\"\n\\\\]*\\(\\\\.[^\"\n\\\\]*\\)*\"")
|
||||
@ -820,7 +820,10 @@ Replace the current buffer on success; display errors on failure."
|
||||
;; apply all the patch hunks
|
||||
(with-current-buffer patchbuf
|
||||
(goto-char (point-min))
|
||||
(if (re-search-forward "^--- \\(/tmp/gofmt[0-9]*\\)" nil t)
|
||||
;; The .* is for TMPDIR, but to avoid dealing with TMPDIR
|
||||
;; having a trailing / or not, it's easier to just search for .*
|
||||
;; especially as we're only replacing the first instance.
|
||||
(if (re-search-forward "^--- \\(.*/gofmt[0-9]*\\)" nil t)
|
||||
(replace-match filename nil nil nil 1))
|
||||
(condition-case nil
|
||||
(while t
|
||||
|
Loading…
Reference in New Issue
Block a user