Subject: Re: bug#10348: 24.0.92; Save and load window states
From: martin rudalics <[email-masked]>
To: [email-masked]
Cc: Michael Bach <[email-masked]>
Date: Mon, 16 Jan 2012 10:43:00 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

> `window-state-put' as used within the following functions does not work.
 > Please see *Backtrace* below for error.  (See also post to
 > [email-masked] with subject "Save and load window states")
 >
 > Steps to reproduce:
 > 1) Start via `emacs -Q'.
 > 2) evaluate the two functions:
 > (defun my-save-frame ()
 >   (interactive)
 >   (let ((buf (find-file-noselect "/tmp/emacs-layout")))
 >     (set-buffer buf)
 >     (erase-buffer)
 >     (print (window-state-get) buf)
 >     (save-buffer)
 >     (kill-buffer)))
 >
 > (defun my-load-frame ()
 >   (interactive)
 >   (let ((buf (find-file-noselect "/tmp/emacs-layout")))
 >     (set-buffer buf)
 >     (beginning-of-buffer)
 >     (window-state-put (read buf))
 >     (kill-buffer)))
 >
 > 3) Do a `M-x my-save-frame' and after that `M-x my-load-frame'
 >
 > Debugger entered--Lisp error: (invalid-read-syntax "#")
 >   read(#<buffer emacs-layout>)
 >   (window-state-put (read buf))
 >   (let ((buf (find-file-noselect "/tmp/emacs-layout"))) (set-buffer buf) (beginning-of-buffer) (window-state-put (read buf)) (save-buffer) (kill-buffer))
 >   my-load-frame()
 >   call-interactively(my-load-frame t nil)
 >   execute-extended-command(nil)
 >   call-interactively(execute-extended-command nil nil)

This problem should have been resolved with revision 106873 on trunk.

Thanks, martin