From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: David Reitter Newsgroups: gmane.emacs.devel Subject: custom-reevaluate-setting / custom-initialize-delay Date: Mon, 22 Feb 2010 20:41:44 -0500 Message-ID: NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 (Apple Message framework v1077) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable X-Trace: dough.gmane.org 1266889336 6367 80.91.229.12 (23 Feb 2010 01:42:16 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Tue, 23 Feb 2010 01:42:16 +0000 (UTC) To: "emacs-devel@gnu.org discussions" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Feb 23 02:42:11 2010 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Njjmn-00069h-VE for ged-emacs-devel@m.gmane.org; Tue, 23 Feb 2010 02:42:06 +0100 Original-Received: from localhost ([127.0.0.1]:49058 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Njjmn-0002Lv-CW for ged-emacs-devel@m.gmane.org; Mon, 22 Feb 2010 20:42:05 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Njjmi-0002Lj-Km for emacs-devel@gnu.org; Mon, 22 Feb 2010 20:42:00 -0500 Original-Received: from [140.186.70.92] (port=34514 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Njjmd-0002LV-3D for emacs-devel@gnu.org; Mon, 22 Feb 2010 20:41:59 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1NjjmY-0006Xi-C3 for emacs-devel@gnu.org; Mon, 22 Feb 2010 20:41:54 -0500 Original-Received: from mail-vw0-f41.google.com ([209.85.212.41]:39269) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1NjjmY-0006XY-8V for emacs-devel@gnu.org; Mon, 22 Feb 2010 20:41:50 -0500 Original-Received: by vws1 with SMTP id 1so1385852vws.0 for ; Mon, 22 Feb 2010 17:41:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:from:content-type :content-transfer-encoding:subject:date:message-id:to:mime-version :x-mailer; bh=tgEEKyzJml7USjcKoAXY3B+KLhC1ZfB/Cuvc2h6i4OQ=; b=k7WdQSUlas+EBDYycdD0oHTASsfrZZSYtrQhxSx9Y+MdjjVsRUrqAIzPm92e9aj3rQ I0iOLcaNuHkAAUg+t37QDNNcf3yedS2PH8hP2oPDNkyjovvuS2OpwX5OhGItakk1xwtI 8phW70fS577+DDzCPIi/PxYXYZkZOghbl7wmg= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=from:content-type:content-transfer-encoding:subject:date:message-id :to:mime-version:x-mailer; b=bj+LLFdJIpPKgndrEf1JG7w1qDN9zmEGMN7LVjZXz/JQyym2seTrak3Qiacr8HFCWT yKQLNtV4pBOziuT2IBtSsvcPD4jHPO7l1cug8RdcLu1ggqwZybNb7sJ2ygeJAtm/Y2wo ZHj0oFKLmEw2Xj7XYorKWBrGBfy0ZSXCgYNdE= Original-Received: by 10.220.123.204 with SMTP id q12mr5961838vcr.37.1266889308641; Mon, 22 Feb 2010 17:41:48 -0800 (PST) Original-Received: from ?192.168.1.42? (pool-96-236-181-152.pitbpa.east.verizon.net [96.236.181.152]) by mx.google.com with ESMTPS id 23sm37646833vws.6.2010.02.22.17.41.46 (version=TLSv1/SSLv3 cipher=RC4-MD5); Mon, 22 Feb 2010 17:41:47 -0800 (PST) X-Mailer: Apple Mail (2.1077) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:121287 Archived-At: There's a bug in the initialization customization variables when this = initialization is delayed using `custom-initialize-delay' function. These get init'd during dumping rather than at run-time. The = documentation suggests that it's supposed to happen at run-time. A symptom of this is that `send-mail-function' is always set to = `sendmail-send-it', because `window-system' is not available during = dumping. This is a regression compared to Emacs 22, where this mechanism worked. I think the correct fix is to not clear `custom-delayed-init-variables' = while dumping. Possibly, one would want to not initialize the variables = at all (see also the comment in `custom-initialize-delay' w.r.t. = evaluating value). The patch below just implements the variant with = the smaller change in behavior. diff --git a/lisp/startup.el b/lisp/startup.el index 87f1a00..0c9b190 100644 --- a/lisp/startup.el +++ b/lisp/startup.el @@ -913,10 +913,12 @@ opening the first frame (e.g. open a connection to = an X server).") ;; Re-evaluate predefined variables whose initial value depends on ;; the runtime context. (mapc 'custom-reevaluate-setting - ;; Initialize them in the same order they were loaded, in case = there - ;; are dependencies between them. - (prog1 (nreverse custom-delayed-init-variables) - (setq custom-delayed-init-variables nil))) + ;; Initialize them in the same order they were loaded, in case = there + ;; are dependencies between them. + (prog1 (nreverse custom-delayed-init-variables) + (unless (or (member (nth 3 command-line-args) '("dump" = "bootstrap")) + (member (nth 4 command-line-args) '("dump" "bootstrap"))) + (setq custom-delayed-init-variables nil)))) =20 (normal-erase-is-backspace-setup-frame) =20