Subject: Re: bug#62413: 29.0.60; [PATCH] save-place-mode cannot restore saved position

From: Liu Hui <[email-masked]>
Date: Sat, 25 Mar 2023 22:14:02 +0800

在 2023/3/25 19:52, Eli Zaretskii 写道:

>> --- a/lisp/saveplace.el
>> +++ b/lisp/saveplace.el
>> @@ -353,8 +353,11 @@ save-place-find-file-hook
>>     "Function added to `find-file-hook' by `save-place-mode'.
>>   It runs the hook `save-place-after-find-file-hook'."
>>     (or save-place-loaded (save-place-load-alist-from-file))
>> -  (let ((cell (assoc buffer-file-name save-place-alist)))
>> +  (let* ((item (if (and (stringp buffer-file-name)
>> +                        save-place-abbreviate-file-names)
>> +                   (abbreviate-file-name buffer-file-name)
>> +                 buffer-file-name))
>> +         (cell (assoc item save-place-alist)))
>
> Wouldn't it be best to always test for abbreviated file name if the
> full file name fails to match?  E.g., it could be that the user turned
> on save-place-abbreviate-file-names for a while, then turned it off
> (or vice versa), thus causing mixed file names in the saved history.
> It would also make the code simpler, I think.

I agree that it is better to consider mixed file names. Please see the
updated patch.