Subject: bug#76911: dedicated side windows lose their dedication upon reuse

From: Daniel Colascione <[email-masked]>
Date: Mon, 10 Mar 2025 00:58:53 -0700

Consider the code below:

    (let ((b1 (get-buffer-create "*b1*"))
          (b2 (get-buffer-create "*b2*"))
          (action '(display-buffer-in-side-window
                    (dedicated . t)
                    (side . left))))
      (display-buffer b1 action)
      (sit-for 1)
      (display-buffer b2 action))

It puts b1 in a side window, then reuses that side window for b2.
When we display b2, the window loses the strong dedication it had to b1
despite the display action for b2 including a request for a
dedicated window.

I'd expect the window to be dedicated to b2 at the end of the
above snippet.