GNU bug report logs - #18633
24.3; `customize-save-customized' should be handled as a transaction

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: emacs; Reported by: Matúš Goljer <matus.goljer@HIDDEN>; dated Sun, 5 Oct 2014 16:39:02 UTC; Maintainer for emacs is bug-gnu-emacs@HIDDEN.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 5 Oct 2014 16:38:04 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Oct 05 12:38:04 2014
Received: from localhost ([127.0.0.1]:34844 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.80)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1Xaoot-0000ON-EE
	for submit <at> debbugs.gnu.org; Sun, 05 Oct 2014 12:38:04 -0400
Received: from eggs.gnu.org ([208.118.235.92]:34688)
 by debbugs.gnu.org with esmtp (Exim 4.80)
 (envelope-from <matus.goljer@HIDDEN>) id 1Xamdw-0005Tl-NY
 for submit <at> debbugs.gnu.org; Sun, 05 Oct 2014 10:18:37 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <matus.goljer@HIDDEN>) id 1Xamdn-0007bh-87
 for submit <at> debbugs.gnu.org; Sun, 05 Oct 2014 10:18:36 -0400
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,FREEMAIL_FROM,
 T_DKIM_INVALID autolearn=disabled version=3.3.2
Received: from lists.gnu.org ([2001:4830:134:3::11]:51596)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <matus.goljer@HIDDEN>) id 1Xamdn-0007bZ-5C
 for submit <at> debbugs.gnu.org; Sun, 05 Oct 2014 10:18:27 -0400
Received: from eggs.gnu.org ([2001:4830:134:3::10]:36373)
 by lists.gnu.org with esmtp (Exim 4.71)
 (envelope-from <matus.goljer@HIDDEN>) id 1Xamde-0002jA-3Z
 for bug-gnu-emacs@HIDDEN; Sun, 05 Oct 2014 10:18:27 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <matus.goljer@HIDDEN>) id 1XamdV-0007Cx-3Z
 for bug-gnu-emacs@HIDDEN; Sun, 05 Oct 2014 10:18:18 -0400
Received: from mail-wi0-x230.google.com ([2a00:1450:400c:c05::230]:50327)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <matus.goljer@HIDDEN>) id 1XamdU-0007CY-Ry
 for bug-gnu-emacs@HIDDEN; Sun, 05 Oct 2014 10:18:09 -0400
Received: by mail-wi0-f176.google.com with SMTP id hi2so2434064wib.9
 for <bug-gnu-emacs@HIDDEN>; Sun, 05 Oct 2014 07:18:07 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=from:to:subject:user-agent:date:message-id:mime-version
 :content-type:content-transfer-encoding;
 bh=U0Tau354R2ilztzdS1Rdfvo4+Zgre8CFheapBayo4BA=;
 b=WLl8k3pQf010fA9f4JHiez3i41Z1CX27E0t8zRrbSkmnbD0D7lgIOQF9E2kZI0drxM
 QwFHAPeIDGxjSbC/37gR013uBDqg11CTQyURmMHkvbiJ2vWkaZrY5rbQ6dc325qeTaON
 eIGHFnjSd45ouc3R/RpiXsRqnS52X2004X3hUzlyGS2xJKqZe5RWapLa7MF2qpvXpSCt
 8pe68QO/X8DaiUMh2VdoiapeBzq8T1tn03RQsKggk35t+85vwmULHMUyOr+nIBcZSHU5
 lwJ0zVNNZIwiOC+UJ9F8u2H/BVgVqDYZVreVJbxWpsYZBM5XRElK6CI0MXegLj3zQ6T9
 vuvw==
X-Received: by 10.194.77.195 with SMTP id u3mr3478610wjw.115.1412518687539;
 Sun, 05 Oct 2014 07:18:07 -0700 (PDT)
Received: from herakleitos.herakleitos (gw106-105-sasova.imafex.sk.
 [188.123.106.105])
 by mx.google.com with ESMTPSA id u10sm5356002wix.8.2014.10.05.07.18.06
 for <bug-gnu-emacs@HIDDEN>
 (version=TLSv1.2 cipher=RC4-SHA bits=128/128);
 Sun, 05 Oct 2014 07:18:06 -0700 (PDT)
From: =?utf-8?B?TWF0w7rFoQ==?= Goljer <matus.goljer@HIDDEN>
To: bug-gnu-emacs@HIDDEN
Subject: 24.3; `customize-save-customized' should be handled as a transaction
User-Agent: Notmuch/0.18 (http://notmuchmail.org) Emacs/24.3.2
 (x86_64-unknown-linux-gnu)
Date: Sun, 05 Oct 2014 16:18:00 +0200
Message-ID: <8761fyd2hz.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address
 (bad octet value).
X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address
 (bad octet value).
X-Received-From: 2001:4830:134:3::11
X-Spam-Score: -4.0 (----)
X-Debbugs-Envelope-To: submit
X-Mailman-Approved-At: Sun, 05 Oct 2014 12:38:01 -0400
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <http://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <http://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <http://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -4.0 (----)

If `customize-save-customized' is issued (through M-x or any other way,
such as C-x C-s in customize buffer), and during the run of the function
"exit" is called (e.g. using C-g), the routine writes garbage into the
`custom-set-variables' form in `custom-file'.

We should first construct the form in a temporary buffer and then write
it at once into the output file.  Another (simpler) solution is to use
`atomic-change-group' from subr.el

Had I not kept the file under git, I would've lost most of my settings.
It seems like a good idea to handle a critical operation like this
atomically.

Cheers.

--=20
Best regards,
  Mat=C3=BA=C5=A1 Goljer




Acknowledgement sent to Matúš Goljer <matus.goljer@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs@HIDDEN. Full text available.
Report forwarded to bug-gnu-emacs@HIDDEN:
bug#18633; Package emacs. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Fri, 31 Oct 2014 17:00:04 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.