From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Juri Linkov Newsgroups: gmane.emacs.bugs Subject: bug#15382: desktop restores buffers in wrong order Date: Wed, 05 Feb 2014 10:07:27 +0200 Organization: JURTA Message-ID: <87zjm6kmo0.fsf@mail.jurta.org> References: <87y56ypiwv.fsf@mail.jurta.org> <874n69kdd6.fsf@mail.jurta.org> <87vbyo4icw.fsf@mail.jurta.org> <87fvprw8q6.fsf@mail.jurta.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1391588052 9973 80.91.229.3 (5 Feb 2014 08:14:12 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 5 Feb 2014 08:14:12 +0000 (UTC) Cc: 15382@debbugs.gnu.org To: Juanma Barranquero Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Wed Feb 05 09:14:19 2014 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1WAxcg-0003hk-MV for geb-bug-gnu-emacs@m.gmane.org; Wed, 05 Feb 2014 09:14:18 +0100 Original-Received: from localhost ([::1]:57863 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WAxcg-0005QZ-1k for geb-bug-gnu-emacs@m.gmane.org; Wed, 05 Feb 2014 03:14:18 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:35068) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WAxcX-0005Q2-LP for bug-gnu-emacs@gnu.org; Wed, 05 Feb 2014 03:14:15 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WAxcR-0004Nj-Bq for bug-gnu-emacs@gnu.org; Wed, 05 Feb 2014 03:14:09 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:36085) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WAxcR-0004Nf-8R for bug-gnu-emacs@gnu.org; Wed, 05 Feb 2014 03:14:03 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1WAxcQ-0003FO-VT for bug-gnu-emacs@gnu.org; Wed, 05 Feb 2014 03:14:03 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Juri Linkov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 05 Feb 2014 08:14:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 15382 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 15382-submit@debbugs.gnu.org id=B15382.139158798512367 (code B ref 15382); Wed, 05 Feb 2014 08:14:02 +0000 Original-Received: (at 15382) by debbugs.gnu.org; 5 Feb 2014 08:13:05 +0000 Original-Received: from localhost ([127.0.0.1]:50099 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WAxbU-0003DN-HL for submit@debbugs.gnu.org; Wed, 05 Feb 2014 03:13:04 -0500 Original-Received: from [69.163.184.122] (port=54884 helo=ps18281.dreamhostps.com) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WAxbS-0003DF-Sc for 15382@debbugs.gnu.org; Wed, 05 Feb 2014 03:13:03 -0500 Original-Received: from localhost.jurta.org (ps18281.dreamhostps.com [69.163.184.122]) by ps18281.dreamhostps.com (Postfix) with ESMTP id 992DB301C412BE; Wed, 5 Feb 2014 00:13:01 -0800 (PST) In-Reply-To: (Juanma Barranquero's message of "Tue, 17 Dec 2013 22:01:09 +0100") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (x86_64-pc-linux-gnu) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:84600 Archived-At: >> Maybe buffers should be saved in the desktop in reverse order? >> This will restore the original order of the global buffer list. > > You could try it with and without desktop-restore-frames and report back. I tried to replace (dolist (l (mapcar 'desktop-buffer-info (buffer-list))) with (dolist (l (mapcar 'desktop-buffer-info (nreverse (buffer-list)))) but it breaks the desktop saving by inserting the desktop file to the current buffer. Then I tried to replace it with (dolist (l (nreverse (mapcar 'desktop-buffer-info (buffer-list)))) and it saves the desktop in the natural order that could be replayed back when restoring the desktop to get the buffer list in the same order. But more code prevents from restoring in the same order, e.g. ;; Restore buffer list order with new buffer at end. Don't change ;; the order for old desktop files (old desktop module behavior). (unless (< desktop-file-version 206) (mapc 'bury-buffer buffer-list) (when result (bury-buffer result))) I'm afraid that changing the order of buffers in the desktop file might require incrementing the version number in desktop-file-version.