Subject: bug#38164: quit-restore-window doesn't restore point in man

From: martin rudalics <[email-masked]>
Date: Thu, 14 Nov 2019 10:20:09 +0100

> (progn
 >    (man "XYZ")
 >    (read-string "--> "))
 >
 > 'read-string' activates the minibuffer, but asynchronous Man-bgproc-sentinel
 > later calls 'quit-restore-window' that selects its previous window,
 > ignoring the fact that now the selected window was in the minibuffer.
 > So we need an exception for the case of active minibuffer.

So what you want is probably (twice)

       (when (and (window-live-p (nth 2 quit-restore))
                  (not (eq (selected-window) (minibuffer-window))))
	(select-window (nth 2 quit-restore))))

But note that quitting the minibuffer will restore the previous window
configuration and thus undo that selection and all other changes done
by 'quit-restore-window' anyway.

martin