Subject: bug#11605: 24.1.50; vc-ediff revert annoyance

From: Dmitry Gutov <[email-masked]>
Date: Fri, 26 Feb 2016 02:38:35 +0200

On 02/24/2016 08:33 AM, Lars Ingebrigtsen wrote:

>> @@ -1815,11 +1815,13 @@ Use BACKEND as the VC backend if specified."
>>  		(delete-file filename))))
>>  	  (vc-mode-line file))
>>  	(message "Checking out %s...done" filename)))
>> -    (let ((result-buf (find-file-noselect filename)))
>> +    (let ((result-buf (or (get-file-buffer filename)
>> +                          (find-file-noselect filename))))

Doesn't find-file-noselect call get-file-buffer anyway?

>>        (with-current-buffer result-buf
>>  	;; Set the parent buffer so that things like
>>  	;; C-x v g, C-x v l, ... etc work.
>> -	(set (make-local-variable 'vc-parent-buffer) filebuf))
>> +	(set (make-local-variable 'vc-parent-buffer) filebuf)
>> +        (revert-buffer nil t))

It seems like this might conflict with other uses of vc-find-revision, 
like vc-revision-other-window. Where the user is allowed to change the 
contents of the returned buffer, and might've done so before we do this 
automatic silent revert.

Maybe do it on ediff's side instead?