From: Philipp Stephani <p.stephani2@gmail.com>
To: npostavs@users.sourceforge.net
Cc: 25951@debbugs.gnu.org
Subject: bug#25951: 26.0.50; Error when ediffing files that are visited using quoted file names
Date: Sun, 23 Apr 2017 16:54:12 +0000 [thread overview]
Message-ID: <CAArVCkRGXWZV0u-J0M5RrGf+mmGXgNZ8B2gx7OzxN6MbE_7mKg@mail.gmail.com> (raw)
In-Reply-To: <87inlwp4if.fsf@users.sourceforge.net>
[-- Attachment #1: Type: text/plain, Size: 1553 bytes --]
<npostavs@users.sourceforge.net> schrieb am Sa., 22. Apr. 2017 um 22:31 Uhr:
> Philipp Stephani <p.stephani2@gmail.com> writes:
>
> > <npostavs@users.sourceforge.net> schrieb am Sa., 22. Apr. 2017 um 00:48
> Uhr:
> >
> >> Philipp Stephani <p.stephani2@gmail.com> writes:
> >>
> >> > + (let ((buffer (current-buffer)))
> >> > + ;; `unquote-then-quote' is only used for the
> >> > + ;; `verify-visited-file-modtime' action, which takes a
> buffer
> >> > + ;; as only optional argument.
> >> > + (with-current-buffer (or (car arguments) buffer)
> >> > + (let ((buffer-file-name (substring buffer-file-name 2)))
> >> > + ;; Make sure to hide the temporary buffer change from
> the
> >> > + ;; underlying operation.
> >> > + (with-current-buffer buffer
> >> > + (apply operation arguments))))))
> >>
> >> I think this could be simplified by using the buffer-file-name function:
> >>
> >> (let ((buffer-file-name
> >> (substring (buffer-file-name (car arguments)) 2)))
> >> (apply operation arguments))
> >>
> >
> > That's not the same, it will set the file name of the wrong buffer.
>
> Oh, I think I get it now. It could be written like this, right?
>
> (cl-letf* ((buf (or (car arguments) (current-buffer)))
> ((buffer-local-value buffer-file-name buf)
> (substring (buffer-file-name buf) 2)))
> (apply operation arguments))
>
Yes, that should work, thanks. Will send a new patch in a second.
[-- Attachment #2: Type: text/html, Size: 2393 bytes --]
next prev parent reply other threads:[~2017-04-23 16:54 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-03-03 13:56 bug#25951: 26.0.50; Error when ediffing files that are visited using quoted file names Philipp Stephani
2017-04-21 22:14 ` Philipp Stephani
2017-04-21 22:50 ` npostavs
2017-04-22 19:43 ` Philipp Stephani
2017-04-22 20:32 ` npostavs
2017-04-23 16:54 ` Philipp Stephani [this message]
2017-04-23 17:06 ` [PATCH] Fix quoted files for 'verify-visited-file-modtime' Philipp Stephani
2017-04-26 5:38 ` Eli Zaretskii
2017-04-29 12:20 ` bug#25951: " Philipp Stephani
2017-04-29 12:20 ` Philipp Stephani
2017-05-06 19:27 ` bug#25951: " Philipp
2017-05-06 19:27 ` Philipp
2017-05-06 20:28 ` bug#25951: " Glenn Morris
2017-05-06 20:41 ` npostavs
2017-05-06 21:21 ` bug#25951: [PATCH] Fix bootstrap build of files.el Philipp
2017-05-06 21:21 ` Philipp
2017-05-07 1:24 ` bug#25951: " Glenn Morris
2017-05-07 1:24 ` Glenn Morris
2017-05-07 11:35 ` bug#25951: " Philipp
2017-05-07 11:35 ` Philipp
2017-05-06 21:27 ` bug#25951: [PATCH] Fix quoted files for 'verify-visited-file-modtime' Philipp
2017-04-29 11:49 ` Philipp Stephani
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAArVCkRGXWZV0u-J0M5RrGf+mmGXgNZ8B2gx7OzxN6MbE_7mKg@mail.gmail.com \
--to=p.stephani2@gmail.com \
--cc=25951@debbugs.gnu.org \
--cc=npostavs@users.sourceforge.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.