i changed this line
(if writable (buffer-name buffer) buffer)
to
(if writable buffer (buffer-name buffer))
and it get fixed. ^_^


On Tue, May 27, 2014 at 1:09 PM, martin rudalics <rudalics@gmx.at> wrote:
>> If the WRITABLE argument of `window-state-get' is non-nil use the
>> buffer name and the buffer object otherwise.
>
> Oh, I see. Yes, that makes sense.

Could you test it?


--- lisp/window.el      2014-05-25 10:06:35 +0000
+++ lisp/window.el      2014-05-27 12:57:50 +0000
@@ -4875,7 +4875,7 @@
                (let ((point (window-point window))
                      (start (window-start window)))
                  `((buffer
-                    ,(buffer-name buffer)
+                    ,(if writable (buffer-name buffer) buffer)
                     (selected . ,selected)
                     (hscroll . ,(window-hscroll window))
                     (fringes . ,(window-fringes window))


martin