All, I think the current window.el `window-state-get' and `window-state-put' function does not manage the mark well. First, `mark-active' save was missing in the `window-state-get' function. Second, `window-state-put' restore the mark without taking into account the previously set mark(s). It looks better to use `push-mark' instead of `set-mark'. Moreover it does not restore the active mark state which lead to an automatically active mark in restored buffer. Please, review it or merge it, Best Regards, Jérémy