Subject: ‘completion-content-when-empty’ is not reset

From: Dario Gjorgjevski <[email-masked]>
Date: Fri, 28 Aug 2020 12:46:21 +0200

Hi,

Commit 1b8d369c38 introduced ‘completion-content-when-empty’ which, at
the moment, is populated by ‘icomplete-completions’.  This works well
with one small catch: if ‘icomplete-completions’ has not run yet (e.g.,
one does C-x b followed by a very quick RET), the value of
‘completion-content-when-empty’ from the *previous interaction with the
minibuffer* will be used.

An example illustrating the problem is:

   0. emacs -Q
   1. M-x icomplete-mode
   2. (setq icomplete-show-matches-on-no-input t)
   3. C-x f, then wait a bit, then C-g to cancel
   4. C-x b followed by a quick RET

What will happen is that Emacs will switch to a buffer named “./” or
similar -- the value of ‘completion-content-when-empty’ from the C-x f
in step 3.

Therefore, I suggest is that we reset ‘completion-content-when-empty’
somewhere.  Perhaps in ‘icomplete-minibuffer-setup’?

Best regards,
Dario

-- 
[email-masked] :: +49 1525 8666837
%   gpg --keyserver 'hkps://hkps.pool.sks-keyservers.net' \
\`>     --recv-keys '744A4F0B4F1C9371'