From debbugs-submit-bounces@debbugs.gnu.org Mon Dec 30 09:11:53 2019 Received: (at submit) by debbugs.gnu.org; 30 Dec 2019 14:11:53 +0000 Received: from localhost ([127.0.0.1]:60602 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ilvlv-0007ON-Mq for submit@debbugs.gnu.org; Mon, 30 Dec 2019 09:11:53 -0500 Received: from lists.gnu.org ([209.51.188.17]:59033) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ilvls-0007OE-Pf for submit@debbugs.gnu.org; Mon, 30 Dec 2019 09:11:50 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:34093) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ilvln-00071M-Rq for bug-gnu-emacs@gnu.org; Mon, 30 Dec 2019 09:11:48 -0500 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, HTML_MESSAGE,URIBL_BLOCKED autolearn=disabled version=3.3.2 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ilvli-0005bc-UL for bug-gnu-emacs@gnu.org; Mon, 30 Dec 2019 09:11:43 -0500 Received: from mail-lj1-x22c.google.com ([2a00:1450:4864:20::22c]:42168) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ilvli-0005b0-Ce for bug-gnu-emacs@gnu.org; Mon, 30 Dec 2019 09:11:38 -0500 Received: by mail-lj1-x22c.google.com with SMTP id y4so19070526ljj.9 for ; Mon, 30 Dec 2019 06:11:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=wXBQ6D9QZvQtE5N0KolYwo7EzHWNctPy7Vqtp+NQWqw=; b=PfEib7MUxWR+hd++cSyIz8vmuyrrmEQzEkszZ8XD1C7nKOGwDzYoRnsEQL7cEF4cQX 1nhgE8aXf3nTYmvPmSnS/r+rCklNoiHG7GIaBEB7ZuwPXjNHfVE1ow6INXtgIKUp8EZB UEZ9GBVX/icdgUPhcp8H45kXafuvnEv7MTfCUng8iMHCEqoUt+J+P7ZNkLXBv/hh/a8M JDrFTutccX7gHIntRgywyJxtMjFwG2zPWioNsT9oh0dm5F+QdT7jmoLmBA+HctkLdla5 an3N8TPKcuc+INAWFtVdOhJ3SY0dsXdhP2cp0v22CDHTnfGD1/azW5ql6MFaD884HXV5 X9CA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=wXBQ6D9QZvQtE5N0KolYwo7EzHWNctPy7Vqtp+NQWqw=; b=EUr6eGQNzO2+dCKll4bv6+oE2y4wXffOhxMuex/TiFSdtnUXYsqmR+6yOIS2jUpuaj zcNmXP+nadNaeeENnSekVq7JOjDxGhnb+kR7XGdcE3OL8mMrZgwfegD0FubHGlcmOEDI VadlTPuf6qNODNRZM+3DLKhNPUNQArVf6Ux1yMGqtv8dwiikp9taxXIagMBVYjU+x9MY djpbe8KEkG0z88QUiZV0rMuBrwklAZZxwjqiSCkVZtTO5wtrhz9vHThuJMY5m1ilwGjT wiVagM8mGGkIA7L0N0UQ+4Xj+dwkhk4gJE2GN3Amf0Qg3kIrsczhVDin3GnlnuPp18M0 BSgA== X-Gm-Message-State: APjAAAWgxKDUjp7Ud8HbJ6PexWnbuFHioYjEZRDhR3mRCO+4eM43VYFa YhZ4rVM+6Lgg6R+MvbxUJGezINcsnxXHFvVi2u7Lfjgx X-Google-Smtp-Source: APXvYqyjoymv0ATqlCazAbTiPuI8IQBVJyf7tSk9kwvq8aLsZBHIarJG4eNEQPwbm+D3Pco2XaQTc9bW/WP8en4AlR4= X-Received: by 2002:a2e:9284:: with SMTP id d4mr38955025ljh.226.1577715095967; Mon, 30 Dec 2019 06:11:35 -0800 (PST) MIME-Version: 1.0 From: Mauro Aranda Date: Mon, 30 Dec 2019 11:11:24 -0300 Message-ID: Subject: 28.0.50; Custom: Problem with reverting some session's customizations To: bug-gnu-emacs Content-Type: multipart/alternative; boundary="000000000000da1ad8059aec6bbc" X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::22c X-Spam-Score: 0.7 (/) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) --000000000000da1ad8059aec6bbc Content-Type: text/plain; charset="UTF-8" Hello. The way I've found to reproduce this bug requires the init file to have the following contents: (custom-set-variables '(compile-command "make ") '(custom-enabled-themes '(deeper-blue)) '(dired-kept-versions 4)) Although, the variables don't have to be those, and neither the theme has to be deeper-blue. More generally, there has to be one setting before the customization of custom-enabled-themes, and one after. And the theme can be whatever theme that Emacs can find. The theme should not customize the variables being customized before and after. Steps to reproduce: 1. Start emacs. 2. M-x customize-variable compile-command 3. In the *Customize* buffer, modify the value of compile-command to any value (e.g., "make -s "). 4. Now with the State button choose "Set for current session". 5. And now revert your choice with: Revert This Session's Customization. There is no change in the value of compile-command. It is still the customized value, after reverting. IOW, reverting hasn't restored the saved value in the init file. Furthermore, (get 'compile-command 'saved-value) evaluates to the customized value, so setting the variable for the current session has modified it. That should not happen. Compare the previous result with the following: 2. M-x customize-variable dired-kept-versions 3. In the *Customize* buffer, modify the value of dired-kept-versions to any other value (e.g., 3). 4. Now with the State button choose "Set for current session". 5. And now revert your choice with: Revert This Session's Customization. The result is that dired-kept-versions is back at value 4, which is the saved value in the init file. This behavior is correct. This bug affects the customizations that happen before customizing custom-enabled-themes, that's why in the init file is necessary to have one customization before and one after, to be able to compare the results. Since custom maintains the arguments to custom-set-variables in alphabetic order, all variables that would be sorted before custom-enabled-themes are affected by this bug. In GNU Emacs 28.0.50 (build 16, i686-pc-linux-gnu, GTK+ Version 3.18.9) of 2019-12-30 built on the-blackbeard Repository revision: e1fd6b1107179270b6daeab52053ffb2461531a9 Repository branch: master Windowing system distributor 'The X.Org Foundation', version 11.0.11906000 System Description: Ubuntu 16.04.6 LTS Recent messages: Loading /home/the-blackbeard/.emacs.d/.custom.el (source)...done For information about GNU Emacs and the GNU system, type C-h C-a. Configured features: XPM JPEG TIFF GIF PNG RSVG SOUND GPM DBUS GSETTINGS GLIB NOTIFY INOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE HARFBUZZ M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM MODULES THREADS PDUMPER LCMS2 GMP Important settings: value of $LANG: en_US.utf8 value of $XMODIFIERS: locale-coding-system: utf-8-unix Major mode: Fundamental Minor modes in effect: tooltip-mode: t global-eldoc-mode: t electric-indent-mode: t mouse-wheel-mode: t tool-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t buffer-read-only: t line-number-mode: t transient-mark-mode: t Load-path shadows: /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ox-latex hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ox-latex /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-crypt hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-crypt /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-sed hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-sed /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-footnote hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-footnote /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-src hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-src /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ox-html hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ox-html /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-datetree hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-datetree /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-macs hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-macs /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ox-texinfo hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ox-texinfo /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ox hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ox /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-matlab hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-matlab /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-coq hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-coq /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-mobile hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-mobile /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-fortran hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-fortran /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ox-icalendar hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ox-icalendar /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-mscgen hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-mscgen /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-lisp hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-lisp /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-haskell hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-haskell /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-maxima hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-maxima /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-id hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-id /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-macro hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-macro /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ox-beamer hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ox-beamer /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-C hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-C /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-org hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-org /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-feed hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-feed /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-timer hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-timer /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-ocaml hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-ocaml /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-awk hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-awk /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-mouse hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-mouse /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-asymptote hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-asymptote /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-sqlite hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-sqlite /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-ebnf hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-ebnf /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-shen hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-shen /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-habit hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-habit /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-ditaa hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-ditaa /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-compat hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-compat /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-inlinetask hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-inlinetask /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-table hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-table /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-stan hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-stan /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-element hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-element /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-dot hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-dot /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-plantuml hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-plantuml /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-lua hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-lua /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-clock hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-clock /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-J hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-J /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-lob hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-lob /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-indent hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-indent /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-ctags hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-ctags /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-lint hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-lint /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-screen hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-screen /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-exp hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-exp /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-tempo hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-tempo /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-eval hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-eval /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ox-ascii hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ox-ascii /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-table hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-table /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-sql hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-sql /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-plot hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-plot /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ox-odt hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ox-odt /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-install hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-install /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-calc hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-calc /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ox-publish hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ox-publish /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-pcomplete hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-pcomplete /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-agenda hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-agenda /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-clojure hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-clojure /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ox-org hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ox-org /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-archive hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-archive /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-gnuplot hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-gnuplot /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-ruby hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-ruby /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-forth hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-forth /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ox-md hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ox-md /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-tangle hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-tangle /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-js hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-js /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-duration hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-duration /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-ref hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-ref /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-goto hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-goto /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ox-man hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ox-man /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-processing hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-processing /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-colview hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-colview /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-abc hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-abc /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-python hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-python /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-vala hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-vala /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-entities hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-entities /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-capture hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-capture /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-list hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-list /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-octave hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-octave /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-io hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-io /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-latex hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-latex /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-lilypond hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-lilypond /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-R hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-R /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-hledger hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-hledger /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-attach hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-attach /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-shell hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-shell /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-core hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-core /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-groovy hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-groovy /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-picolisp hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-picolisp /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-emacs-lisp hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-emacs-lisp /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-version hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-version /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-comint hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-comint /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-scheme hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-scheme /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-css hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-css /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-protocol hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-protocol /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-java hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-java /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-faces hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-faces /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-loaddefs hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-loaddefs /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-ledger hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-ledger /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-perl hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-perl /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-sass hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-sass /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-makefile hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-makefile Features: (shadow sort mail-extr emacsbug message rmc puny dired dired-loaddefs format-spec rfc822 mml mml-sec epa derived epg epg-config gnus-util rmail rmail-loaddefs text-property-search time-date mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils deeper-blue-theme info slime-autoloads package easymenu browse-url url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs eieio-loaddefs password-cache json subr-x map url-vars seq byte-opt gv bytecomp byte-compile cconv cl-loaddefs cl-lib tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel term/x-win x-win term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode elisp-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core term/tty-colors frame minibuffer cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite charscript charprop case-table epa-hook jka-cmpr-hook help simple abbrev obarray cl-preloaded nadvice loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote threads dbusbind inotify lcms2 dynamic-setting system-font-setting font-render-setting move-toolbar gtk x-toolkit x multi-tty make-network-process emacs) Memory information: ((conses 8 71230 6087) (symbols 24 8332 1) (strings 16 24942 2715) (string-bytes 1 907664) (vectors 8 13050) (vector-slots 4 180354 7826) (floats 8 27 13) (intervals 28 237 0) (buffers 568 12) (heap 1024 9744 809)) --000000000000da1ad8059aec6bbc Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hello.

The way I've found to reproduce this bug= requires the init file to have the
following contents:
(custom-set-v= ariables
=C2=A0'(compile-command "make ")
=C2=A0'(c= ustom-enabled-themes '(deeper-blue))
=C2=A0'(dired-kept-versions= 4))

Although, the variables don't have to be those, and neither= the theme has
to be deeper-blue.=C2=A0 More generally, there has to be = one setting before the
customization of custom-enabled-themes, and one a= fter.=C2=A0 And the theme can
be whatever theme that Emacs can find.=C2= =A0 The theme should not customize the
variables being customized before= and after.

Steps to reproduce:
1. Start emacs.
2. M-x customi= ze-variable compile-command
3. In the *Customize* buffer, modify the val= ue of compile-command to any
value (e.g., "make -s ").
4. N= ow with the State button choose "Set for current session".
5. = And now revert your choice with: Revert This Session's Customization.
There is no change in the value of compile-command.=C2=A0 It is still= the
customized value, after reverting.=C2=A0 IOW, reverting hasn't = restored the
saved value in the init file.
Furthermore, (get 'com= pile-command 'saved-value) evaluates to the
customized value, so set= ting the variable for the current session has
modified it.=C2=A0 That sh= ould not happen.

Compare the previous result with the following:
=
2. M-x customize-variable dired-kept-versions
3. In the *Customize* = buffer, modify the value of dired-kept-versions to any
other value (e.g.= , 3).
4. Now with the State button choose "Set for current session&= quot;.
5. And now revert your choice with: Revert This Session's Cus= tomization.

The result is that dired-kept-versions is back at value = 4, which is the saved
value in the init file.=C2=A0 This behavior is cor= rect.


This bug affects the customizations that happen before cus= tomizing
custom-enabled-themes, that's why in the init file is neces= sary to have one
customization before and one after, to be able to compa= re the results.
Since custom maintains the arguments to custom-set-varia= bles in alphabetic
order, all variables that would be sorted before cust= om-enabled-themes
are affected by this bug.


In GNU Emacs 28.0= .50 (build 16, i686-pc-linux-gnu, GTK+ Version 3.18.9)
=C2=A0of 2019-12-= 30 built on the-blackbeard
Repository revision: e1fd6b1107179270b6daeab5= 2053ffb2461531a9
Repository branch: master
Windowing system distribut= or 'The X.Org Foundation', version 11.0.11906000
System Descript= ion: Ubuntu 16.04.6 LTS

Recent messages:
Loading /home/the-blackb= eard/.emacs.d/.custom.el (source)...done
For information about GNU Emacs= and the GNU system, type C-h C-a.

Configured features:
XPM JPEG = TIFF GIF PNG RSVG SOUND GPM DBUS GSETTINGS GLIB NOTIFY INOTIFY
ACL LIBSE= LINUX GNUTLS LIBXML2 FREETYPE HARFBUZZ M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_= SCROLL_BARS GTK3 X11 XDBE XIM MODULES THREADS PDUMPER LCMS2 GMP

Impo= rtant settings:
=C2=A0 value of $LANG: en_US.utf8
=C2=A0 value of $XM= ODIFIERS:
=C2=A0 locale-coding-system: utf-8-unix

Major mode: Fu= ndamental

Minor modes in effect:
=C2=A0 tooltip-mode: t
=C2=A0= global-eldoc-mode: t
=C2=A0 electric-indent-mode: t
=C2=A0 mouse-whe= el-mode: t
=C2=A0 tool-bar-mode: t
=C2=A0 menu-bar-mode: t
=C2=A0 = file-name-shadow-mode: t
=C2=A0 global-font-lock-mode: t
=C2=A0 blink= -cursor-mode: t
=C2=A0 auto-composition-mode: t
=C2=A0 auto-encryptio= n-mode: t
=C2=A0 auto-compression-mode: t
=C2=A0 buffer-read-only: t<= br>=C2=A0 line-number-mode: t
=C2=A0 transient-mark-mode: t

Load-= path shadows:
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-201909= 23/ox-latex hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/= lisp/org/ox-latex
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20= 190923/org-crypt hides /home/the-blackbeard/Documentos/Programacion/emacs/e= macs/lisp/org/org-crypt
/home/the-blackbeard/.emacs.d/elpa/org-plus-cont= rib-20190923/ob-sed hides /home/the-blackbeard/Documentos/Programacion/emac= s/emacs/lisp/org/ob-sed
/home/the-blackbeard/.emacs.d/elpa/org-plus-cont= rib-20190923/org-footnote hides /home/the-blackbeard/Documentos/Programacio= n/emacs/emacs/lisp/org/org-footnote
/home/the-blackbeard/.emacs.d/elpa/o= rg-plus-contrib-20190923/org-src hides /home/the-blackbeard/Documentos/Prog= ramacion/emacs/emacs/lisp/org/org-src
/home/the-blackbeard/.emacs.d/elpa= /org-plus-contrib-20190923/ox-html hides /home/the-blackbeard/Documentos/Pr= ogramacion/emacs/emacs/lisp/org/ox-html
/home/the-blackbeard/.emacs.d/el= pa/org-plus-contrib-20190923/org-datetree hides /home/the-blackbeard/Docume= ntos/Programacion/emacs/emacs/lisp/org/org-datetree
/home/the-blackbeard= /.emacs.d/elpa/org-plus-contrib-20190923/org-macs hides /home/the-blackbear= d/Documentos/Programacion/emacs/emacs/lisp/org/org-macs
/home/the-blackb= eard/.emacs.d/elpa/org-plus-contrib-20190923/ox-texinfo hides /home/the-bla= ckbeard/Documentos/Programacion/emacs/emacs/lisp/org/ox-texinfo
/home/th= e-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ox hides /home/the-bla= ckbeard/Documentos/Programacion/emacs/emacs/lisp/org/ox
/home/the-blackb= eard/.emacs.d/elpa/org-plus-contrib-20190923/ob-matlab hides /home/the-blac= kbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-matlab
/home/the-= blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org hides /home/the-blac= kbeard/Documentos/Programacion/emacs/emacs/lisp/org/org
/home/the-blackb= eard/.emacs.d/elpa/org-plus-contrib-20190923/ob-coq hides /home/the-blackbe= ard/Documentos/Programacion/emacs/emacs/lisp/org/ob-coq
/home/the-blackb= eard/.emacs.d/elpa/org-plus-contrib-20190923/org-mobile hides /home/the-bla= ckbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-mobile
/home/th= e-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-fortran hides /home= /the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-fortran
= /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ox-icalendar h= ides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ox-i= calendar
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob= -mscgen hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp= /org/ob-mscgen
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190= 923/ob-lisp hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/= lisp/org/ob-lisp
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-201= 90923/ob-haskell hides /home/the-blackbeard/Documentos/Programacion/emacs/e= macs/lisp/org/ob-haskell
/home/the-blackbeard/.emacs.d/elpa/org-plus-con= trib-20190923/ob-maxima hides /home/the-blackbeard/Documentos/Programacion/= emacs/emacs/lisp/org/ob-maxima
/home/the-blackbeard/.emacs.d/elpa/org-pl= us-contrib-20190923/org-id hides /home/the-blackbeard/Documentos/Programaci= on/emacs/emacs/lisp/org/org-id
/home/the-blackbeard/.emacs.d/elpa/org-pl= us-contrib-20190923/org-macro hides /home/the-blackbeard/Documentos/Program= acion/emacs/emacs/lisp/org/org-macro
/home/the-blackbeard/.emacs.d/elpa/= org-plus-contrib-20190923/ox-beamer hides /home/the-blackbeard/Documentos/P= rogramacion/emacs/emacs/lisp/org/ox-beamer
/home/the-blackbeard/.emacs.d= /elpa/org-plus-contrib-20190923/ob-C hides /home/the-blackbeard/Documentos/= Programacion/emacs/emacs/lisp/org/ob-C
/home/the-blackbeard/.emacs.d/elp= a/org-plus-contrib-20190923/ob-org hides /home/the-blackbeard/Documentos/Pr= ogramacion/emacs/emacs/lisp/org/ob-org
/home/the-blackbeard/.emacs.d/elp= a/org-plus-contrib-20190923/org-feed hides /home/the-blackbeard/Documentos/= Programacion/emacs/emacs/lisp/org/org-feed
/home/the-blackbeard/.emacs.d= /elpa/org-plus-contrib-20190923/ob hides /home/the-blackbeard/Documentos/Pr= ogramacion/emacs/emacs/lisp/org/ob
/home/the-blackbeard/.emacs.d/elpa/or= g-plus-contrib-20190923/org-timer hides /home/the-blackbeard/Documentos/Pro= gramacion/emacs/emacs/lisp/org/org-timer
/home/the-blackbeard/.emacs.d/e= lpa/org-plus-contrib-20190923/ob-ocaml hides /home/the-blackbeard/Documento= s/Programacion/emacs/emacs/lisp/org/ob-ocaml
/home/the-blackbeard/.emacs= .d/elpa/org-plus-contrib-20190923/ob-awk hides /home/the-blackbeard/Documen= tos/Programacion/emacs/emacs/lisp/org/ob-awk
/home/the-blackbeard/.emacs= .d/elpa/org-plus-contrib-20190923/org-mouse hides /home/the-blackbeard/Docu= mentos/Programacion/emacs/emacs/lisp/org/org-mouse
/home/the-blackbeard/= .emacs.d/elpa/org-plus-contrib-20190923/ob-asymptote hides /home/the-blackb= eard/Documentos/Programacion/emacs/emacs/lisp/org/ob-asymptote
/home/the= -blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-sqlite hides /home/t= he-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-sqlite
/ho= me/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-ebnf hides /ho= me/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-ebnf
/= home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-shen hides /= home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-shen/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-habit hid= es /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-ha= bit
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-dita= a hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/o= b-ditaa
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org= -compat hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp= /org/org-compat
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-2019= 0923/org-inlinetask hides /home/the-blackbeard/Documentos/Programacion/emac= s/emacs/lisp/org/org-inlinetask
/home/the-blackbeard/.emacs.d/elpa/org-p= lus-contrib-20190923/org-table hides /home/the-blackbeard/Documentos/Progra= macion/emacs/emacs/lisp/org/org-table
/home/the-blackbeard/.emacs.d/elpa= /org-plus-contrib-20190923/ob-stan hides /home/the-blackbeard/Documentos/Pr= ogramacion/emacs/emacs/lisp/org/ob-stan
/home/the-blackbeard/.emacs.d/el= pa/org-plus-contrib-20190923/org-element hides /home/the-blackbeard/Documen= tos/Programacion/emacs/emacs/lisp/org/org-element
/home/the-blackbeard/.= emacs.d/elpa/org-plus-contrib-20190923/ob-dot hides /home/the-blackbeard/Do= cumentos/Programacion/emacs/emacs/lisp/org/ob-dot
/home/the-blackbeard/.= emacs.d/elpa/org-plus-contrib-20190923/ob-plantuml hides /home/the-blackbea= rd/Documentos/Programacion/emacs/emacs/lisp/org/ob-plantuml
/home/the-bl= ackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-lua hides /home/the-bla= ckbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-lua
/home/the-bl= ackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-clock hides /home/the-= blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-clock
/home/= the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-J hides /home/the= -blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-J
/home/the-= blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-lob hides /home/the-b= lackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-lob
/home/the-= blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-indent hides /home/t= he-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-indent
/h= ome/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-ctags hides = /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-ctags=
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-lint h= ides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-= lint
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-scr= een hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org= /ob-screen
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/= ob-exp hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/= org/ob-exp
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/= org-tempo hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/li= sp/org/org-tempo
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-201= 90923/ob-eval hides /home/the-blackbeard/Documentos/Programacion/emacs/emac= s/lisp/org/ob-eval
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-2= 0190923/ox-ascii hides /home/the-blackbeard/Documentos/Programacion/emacs/e= macs/lisp/org/ox-ascii
/home/the-blackbeard/.emacs.d/elpa/org-plus-contr= ib-20190923/ob-table hides /home/the-blackbeard/Documentos/Programacion/ema= cs/emacs/lisp/org/ob-table
/home/the-blackbeard/.emacs.d/elpa/org-plus-c= ontrib-20190923/ob-sql hides /home/the-blackbeard/Documentos/Programacion/e= macs/emacs/lisp/org/ob-sql
/home/the-blackbeard/.emacs.d/elpa/org-plus-c= ontrib-20190923/org-plot hides /home/the-blackbeard/Documentos/Programacion= /emacs/emacs/lisp/org/org-plot
/home/the-blackbeard/.emacs.d/elpa/org-pl= us-contrib-20190923/ox-odt hides /home/the-blackbeard/Documentos/Programaci= on/emacs/emacs/lisp/org/ox-odt
/home/the-blackbeard/.emacs.d/elpa/org-pl= us-contrib-20190923/org-install hides /home/the-blackbeard/Documentos/Progr= amacion/emacs/emacs/lisp/org/org-install
/home/the-blackbeard/.emacs.d/e= lpa/org-plus-contrib-20190923/ob-calc hides /home/the-blackbeard/Documentos= /Programacion/emacs/emacs/lisp/org/ob-calc
/home/the-blackbeard/.emacs.d= /elpa/org-plus-contrib-20190923/ox-publish hides /home/the-blackbeard/Docum= entos/Programacion/emacs/emacs/lisp/org/ox-publish
/home/the-blackbeard/= .emacs.d/elpa/org-plus-contrib-20190923/org-pcomplete hides /home/the-black= beard/Documentos/Programacion/emacs/emacs/lisp/org/org-pcomplete
/home/t= he-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-agenda hides /hom= e/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-agenda/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-clojure hi= des /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-cl= ojure
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ox-or= g hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/o= x-org
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-a= rchive hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/= org/org-archive
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-2019= 0923/ob-gnuplot hides /home/the-blackbeard/Documentos/Programacion/emacs/em= acs/lisp/org/ob-gnuplot
/home/the-blackbeard/.emacs.d/elpa/org-plus-cont= rib-20190923/ob-ruby hides /home/the-blackbeard/Documentos/Programacion/ema= cs/emacs/lisp/org/ob-ruby
/home/the-blackbeard/.emacs.d/elpa/org-plus-co= ntrib-20190923/ob-forth hides /home/the-blackbeard/Documentos/Programacion/= emacs/emacs/lisp/org/ob-forth
/home/the-blackbeard/.emacs.d/elpa/org-plu= s-contrib-20190923/ox-md hides /home/the-blackbeard/Documentos/Programacion= /emacs/emacs/lisp/org/ox-md
/home/the-blackbeard/.emacs.d/elpa/org-plus-= contrib-20190923/ob-tangle hides /home/the-blackbeard/Documentos/Programaci= on/emacs/emacs/lisp/org/ob-tangle
/home/the-blackbeard/.emacs.d/elpa/org= -plus-contrib-20190923/ob-js hides /home/the-blackbeard/Documentos/Programa= cion/emacs/emacs/lisp/org/ob-js
/home/the-blackbeard/.emacs.d/elpa/org-p= lus-contrib-20190923/org-duration hides /home/the-blackbeard/Documentos/Pro= gramacion/emacs/emacs/lisp/org/org-duration
/home/the-blackbeard/.emacs.= d/elpa/org-plus-contrib-20190923/ob-ref hides /home/the-blackbeard/Document= os/Programacion/emacs/emacs/lisp/org/ob-ref
/home/the-blackbeard/.emacs.= d/elpa/org-plus-contrib-20190923/org-goto hides /home/the-blackbeard/Docume= ntos/Programacion/emacs/emacs/lisp/org/org-goto
/home/the-blackbeard/.em= acs.d/elpa/org-plus-contrib-20190923/ox-man hides /home/the-blackbeard/Docu= mentos/Programacion/emacs/emacs/lisp/org/ox-man
/home/the-blackbeard/.em= acs.d/elpa/org-plus-contrib-20190923/ob-processing hides /home/the-blackbea= rd/Documentos/Programacion/emacs/emacs/lisp/org/ob-processing
/home/the-= blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-colview hides /home/= the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-colview
= /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-abc hides /= home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-abc
= /home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-python hide= s /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-pyth= on
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-vala = hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-= vala
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-en= tities hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/= org/org-entities
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-201= 90923/org-capture hides /home/the-blackbeard/Documentos/Programacion/emacs/= emacs/lisp/org/org-capture
/home/the-blackbeard/.emacs.d/elpa/org-plus-c= ontrib-20190923/org-list hides /home/the-blackbeard/Documentos/Programacion= /emacs/emacs/lisp/org/org-list
/home/the-blackbeard/.emacs.d/elpa/org-pl= us-contrib-20190923/ob-octave hides /home/the-blackbeard/Documentos/Program= acion/emacs/emacs/lisp/org/ob-octave
/home/the-blackbeard/.emacs.d/elpa/= org-plus-contrib-20190923/ob-io hides /home/the-blackbeard/Documentos/Progr= amacion/emacs/emacs/lisp/org/ob-io
/home/the-blackbeard/.emacs.d/elpa/or= g-plus-contrib-20190923/ob-latex hides /home/the-blackbeard/Documentos/Prog= ramacion/emacs/emacs/lisp/org/ob-latex
/home/the-blackbeard/.emacs.d/elp= a/org-plus-contrib-20190923/ob-lilypond hides /home/the-blackbeard/Document= os/Programacion/emacs/emacs/lisp/org/ob-lilypond
/home/the-blackbeard/.e= macs.d/elpa/org-plus-contrib-20190923/ob-R hides /home/the-blackbeard/Docum= entos/Programacion/emacs/emacs/lisp/org/ob-R
/home/the-blackbeard/.emacs= .d/elpa/org-plus-contrib-20190923/ob-hledger hides /home/the-blackbeard/Doc= umentos/Programacion/emacs/emacs/lisp/org/ob-hledger
/home/the-blackbear= d/.emacs.d/elpa/org-plus-contrib-20190923/org-attach hides /home/the-blackb= eard/Documentos/Programacion/emacs/emacs/lisp/org/org-attach
/home/the-b= lackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-shell hides /home/the-= blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-shell
/home/t= he-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-core hides /home/t= he-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-core
/home= /the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-groovy hides /ho= me/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-groovy/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-picolisp h= ides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-p= icolisp
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-= emacs-lisp hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/l= isp/org/ob-emacs-lisp
/home/the-blackbeard/.emacs.d/elpa/org-plus-contri= b-20190923/org-version hides /home/the-blackbeard/Documentos/Programacion/e= macs/emacs/lisp/org/org-version
/home/the-blackbeard/.emacs.d/elpa/org-p= lus-contrib-20190923/ob-comint hides /home/the-blackbeard/Documentos/Progra= macion/emacs/emacs/lisp/org/ob-comint
/home/the-blackbeard/.emacs.d/elpa= /org-plus-contrib-20190923/ob-scheme hides /home/the-blackbeard/Documentos/= Programacion/emacs/emacs/lisp/org/ob-scheme
/home/the-blackbeard/.emacs.= d/elpa/org-plus-contrib-20190923/ob-css hides /home/the-blackbeard/Document= os/Programacion/emacs/emacs/lisp/org/ob-css
/home/the-blackbeard/.emacs.= d/elpa/org-plus-contrib-20190923/org-protocol hides /home/the-blackbeard/Do= cumentos/Programacion/emacs/emacs/lisp/org/org-protocol
/home/the-blackb= eard/.emacs.d/elpa/org-plus-contrib-20190923/ob-java hides /home/the-blackb= eard/Documentos/Programacion/emacs/emacs/lisp/org/ob-java
/home/the-blac= kbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-faces hides /home/the-bl= ackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-faces
/home/th= e-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/org-loaddefs hides /ho= me/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/org-loaddefs=
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-ledger = hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org/ob-= ledger
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob-p= erl hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/org= /ob-perl
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/ob= -sass hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/lisp/o= rg/ob-sass
/home/the-blackbeard/.emacs.d/elpa/org-plus-contrib-20190923/= ob-makefile hides /home/the-blackbeard/Documentos/Programacion/emacs/emacs/= lisp/org/ob-makefile

Features:
(shadow sort mail-extr emacsbug me= ssage rmc puny dired dired-loaddefs
format-spec rfc822 mml mml-sec epa d= erived epg epg-config gnus-util
rmail rmail-loaddefs text-property-searc= h time-date mm-decode mm-bodies
mm-encode mail-parse rfc2231 mailabbrev = gmm-utils mailheader sendmail
rfc2047 rfc2045 ietf-drums mm-util mail-pr= svr mail-utils
deeper-blue-theme info slime-autoloads package easymenu b= rowse-url
url-handlers url-parse auth-source cl-seq eieio eieio-core cl-= macs
eieio-loaddefs password-cache json subr-x map url-vars seq byte-opt= gv
bytecomp byte-compile cconv cl-loaddefs cl-lib tooltip eldoc electri= c
uniquify ediff-hook vc-hooks lisp-float-type mwheel term/x-win x-winterm/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe
tab= ulated-list replace newcomment text-mode elisp-mode lisp-mode
prog-mode = register page tab-bar menu-bar rfn-eshadow isearch timer
select scroll-b= ar mouse jit-lock font-lock syntax facemenu font-core
term/tty-colors fr= ame minibuffer cl-generic cham georgian utf-8-lang
misc-lang vietnamese = tibetan thai tai-viet lao korean japanese eucjp-ms
cp51932 hebrew greek = romanian slovak czech european ethiopic indian
cyrillic chinese composit= e charscript charprop case-table epa-hook
jka-cmpr-hook help simple abbr= ev obarray cl-preloaded nadvice loaddefs
button faces cus-face macroexp = files text-properties overlay sha1 md5
base64 format env code-pages mule= custom widget hashtable-print-readable
backquote threads dbusbind inoti= fy lcms2 dynamic-setting
system-font-setting font-render-setting move-to= olbar gtk x-toolkit x
multi-tty make-network-process emacs)

Memor= y information:
((conses 8 71230 6087)
=C2=A0(symbols 24 8332 1)
= =C2=A0(strings 16 24942 2715)
=C2=A0(string-bytes 1 907664)
=C2=A0(ve= ctors 8 13050)
=C2=A0(vector-slots 4 180354 7826)
=C2=A0(floats 8 27 = 13)
=C2=A0(intervals 28 237 0)
=C2=A0(buffers 568 12)
=C2=A0(heap = 1024 9744 809))
--000000000000da1ad8059aec6bbc-- From debbugs-submit-bounces@debbugs.gnu.org Tue Dec 31 09:22:48 2019 Received: (at 38812) by debbugs.gnu.org; 31 Dec 2019 14:22:48 +0000 Received: from localhost ([127.0.0.1]:33893 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1imIQ3-0006dV-Ur for submit@debbugs.gnu.org; Tue, 31 Dec 2019 09:22:48 -0500 Received: from mail-lf1-f50.google.com ([209.85.167.50]:46138) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1imIQ2-0006dG-5B for 38812@debbugs.gnu.org; Tue, 31 Dec 2019 09:22:46 -0500 Received: by mail-lf1-f50.google.com with SMTP id f15so27092455lfl.13 for <38812@debbugs.gnu.org>; Tue, 31 Dec 2019 06:22:46 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=AzAlDC5he0bhGNyXiGFMiw3VuvkclQDy4YQlGWgwLMc=; b=Cd3ppeV5EgpcKPf6Fa6x1+xbOdenqLui+yCmX3db8FE0yJmpw8hJBXiTbNtHa2Qere 7bugeGNBuvRm2D0mvY7SECowJ2fV5AfEqP7TePM/OZjdkZ5FQckDj2p+Sbup6OybgVEE gE2Un/PG2nEUseQSRgOHKrUvGiSaS5ebQ0MKITtL8W5OES2BWb/9oHTLzLEkQ4mQ63F6 eyY72upGYENFJBBk1KiA7+QAoQ7FI/H2iRQFgFY167OirFzfnNFtkhs09EnAHcLfDuO+ Yfgox18wTF5sWfO2FalM8uyAp1ITyUx0oHBwgXzRx/Vqhw9+aQFR2z6KHdbhWsPLLylY DIng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=AzAlDC5he0bhGNyXiGFMiw3VuvkclQDy4YQlGWgwLMc=; b=kHi35SrRQ27yGijn19vdNDTI3bw4BsjxJzgavWJBFCgyAmGlgC6FQwn5Q34fS0GNdd LAwFNqxvg80jQHV4vbwg6g8gLssRs+24TTFvnzfTA1BZqqdgidA+CKw542kW6/8Yh7Dk 45WC044terBJwb1yejfRoff6vv8vPWuhkETPIJEDpFla+nE8XV+9MO4OfI7VyDlUuzRv aeEhpmgwMRsJfmJ+Vv1Q23LCOozJYXQBVpoitnSCWsAgk2GKFBEznafL7JtqC1xxtKbv 7Z1Gt/kuo6apEFmObBAlQt5+qic+AjprW9Nj9rlHa9De1BU+TCATrT+6lCS6flz9uJmH yp7A== X-Gm-Message-State: APjAAAX0jViLdocc6EdbDed+br6WPs4x+NzCL5dleuWssP/ue7r4ovwC wHHe5YzSeD2fbcVq/IIU/EWPDddUra4/7GyPIfTdsdXc0vk= X-Google-Smtp-Source: APXvYqwyuZPKnPA1DhhQxmbcx26pBEnHpg2ME/AwT+gCa5eDKmrvPREHJ2R53h32I4gRjX3MAK8d85e3VTF1xkOOFUE= X-Received: by 2002:a05:6512:c7:: with SMTP id c7mr42697040lfp.120.1577802160003; Tue, 31 Dec 2019 06:22:40 -0800 (PST) MIME-Version: 1.0 From: Mauro Aranda Date: Tue, 31 Dec 2019 11:22:27 -0300 Message-ID: Subject: Re: bug#38812: 28.0.50; Custom: Problem with reverting some session's customizations To: 38812@debbugs.gnu.org Content-Type: multipart/mixed; boundary="00000000000045f1f4059b00b1ae" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 38812 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --00000000000045f1f4059b00b1ae Content-Type: multipart/alternative; boundary="00000000000045f1f1059b00b1ac" --00000000000045f1f1059b00b1ac Content-Type: text/plain; charset="UTF-8" tags 38812 patch thanks > This bug affects the customizations that happen before customizing > custom-enabled-themes, that's why in the init file is necessary to have one > customization before and one after, to be able to compare the results. > Since custom maintains the arguments to custom-set-variables in alphabetic > order, all variables that would be sorted before custom-enabled-themes > are affected by this bug. When custom-enabled-themes is customized, its set function enable the themes. When that happens, custom recalculates the value of the variables, according to the enabled themes, with custom-theme-recalc-variable. For variables that already have a theme-value property (i.e., the variables that were customized with custom-set-variables before customizing custom-enabled-themes), custom-theme-recalc-variable ends up putting in the 'saved-value property the same cons cell that is in the 'theme-value property. Customizing in a session changes the 'theme-value property of the customized variable, and the above has the effect of changing the 'saved-value property as well. A possible fix is to make custom-variable-theme-value return a new list. I attach a patch that does that. Best regards, Mauro. --00000000000045f1f1059b00b1ac Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
tags 38812 patch
thanks

> This bug affects the customizations that happen before customizi= ng
> custom-enabled-themes, that's why in the init file is necess= ary to have one
> customization before and one after, to be able to c= ompare the results.
> Since custom maintains the arguments to custom-= set-variables in alphabetic
> order, all variables that would be sort= ed before custom-enabled-themes
> are affected by this bug.
=C2=A0=
When custom-enabled-themes is customized, its set function enable thethemes.=C2=A0 When that happens, custom recalculates the value of the
= variables, according to the enabled themes, with
custom-theme-recalc-var= iable.=C2=A0 For variables that already have a
theme-value property (i.e= ., the variables that were customized with
custom-set-variables before c= ustomizing custom-enabled-themes),
custom-theme-recalc-variable ends up = putting in the 'saved-value
property the same cons cell that is in t= he 'theme-value property.

Customizing in a session changes the &= #39;theme-value property of the
customized variable, and the above has t= he effect of changing the
'saved-value property as well.

A po= ssible fix is to make custom-variable-theme-value return a new list.
<= div>I attach a patch that does that.

Best regards,=
Mauro.
--00000000000045f1f1059b00b1ac-- --00000000000045f1f4059b00b1ae Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Preserve-the-saved-value-property-when-doing-session.patch" Content-Disposition: attachment; filename="0001-Preserve-the-saved-value-property-when-doing-session.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_k4tym90i0 RnJvbSA5YjYyZGU2YWFkYTdjNDFlZjIzNDQxZTAyZDQ4YjI2MjA4MmJlZTVjIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXVybyBBcmFuZGEgPG1hdXJvb2FyYW5kYUBnbWFpbC5jb20+ CkRhdGU6IE1vbiwgMzAgRGVjIDIwMTkgMTE6Mzc6MDIgLTAzMDAKU3ViamVjdDogW1BBVENIXSBQ cmVzZXJ2ZSB0aGUgJ3NhdmVkLXZhbHVlIHByb3BlcnR5IHdoZW4gZG9pbmcgc2Vzc2lvbidzCiBj dXN0b21pemF0aW9ucwoKKiBsaXNwL2N1c3RvbS5lbCAoY3VzdG9tLXZhcmlhYmxlLXRoZW1lLXZh bHVlKTogUmV0dXJuIGEgbmV3IGxpc3Qgd2l0aAp0aGUgdmFsdWUgb2YgdmFyaWFibGUsIHNvIHRo ZSB2YWx1ZXMgb2YgdGhlIHByb3BlcnRpZXMgJ3RoZW1lLXZhbHVlCmFuZCAnc2F2ZWQtdmFsdWUg YXJlIG5vdCBzaGFyZWQuICAoQnVnIzM4ODEyKQotLS0KIGxpc3AvY3VzdG9tLmVsIHwgNCArKy0t CiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL2xpc3AvY3VzdG9tLmVsIGIvbGlzcC9jdXN0b20uZWwKaW5kZXggMjZiZGFhZS4uZTli YjBkMyAxMDA2NDQKLS0tIGEvbGlzcC9jdXN0b20uZWwKKysrIGIvbGlzcC9jdXN0b20uZWwKQEAg LTE0ODMsOCArMTQ4Myw4IEBAIGN1c3RvbS12YXJpYWJsZS10aGVtZS12YWx1ZQogCiBUaGlzIGZ1 bmN0aW9uIHJldHVybnMgbmlsIGlmIG5vIGN1c3RvbSB0aGVtZSBzcGVjaWZpZXMgYSB2YWx1ZSBm b3IgVkFSSUFCTEUuIgogICAobGV0ICgodGhlbWUtdmFsdWUgKGdldCB2YXJpYWJsZSAndGhlbWUt dmFsdWUpKSkKLSAgICAoaWYgdGhlbWUtdmFsdWUKLQkoY2RyIChjYXIgdGhlbWUtdmFsdWUpKSkp KQorICAgIChpZiB0aGVtZS12YWx1ZSA7ICgoVEhFTUUgVkFMVUUpKQorCShsaXN0IChjYWRhciB0 aGVtZS12YWx1ZSkpKSkpCiAKIChkZWZ1biBjdXN0b20tdGhlbWUtcmVjYWxjLXZhcmlhYmxlICh2 YXJpYWJsZSkKICAgIlNldCBWQVJJQUJMRSBhY2NvcmRpbmcgdG8gY3VycmVudGx5IGVuYWJsZWQg Y3VzdG9tIHRoZW1lcy4iCi0tIAoyLjcuNAoK --00000000000045f1f4059b00b1ae-- From debbugs-submit-bounces@debbugs.gnu.org Tue Dec 31 11:04:51 2019 Received: (at 38812) by debbugs.gnu.org; 31 Dec 2019 16:04:51 +0000 Received: from localhost ([127.0.0.1]:35001 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1imK0p-0002uS-7M for submit@debbugs.gnu.org; Tue, 31 Dec 2019 11:04:51 -0500 Received: from eggs.gnu.org ([209.51.188.92]:52001) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1imK0n-0002uF-6D for 38812@debbugs.gnu.org; Tue, 31 Dec 2019 11:04:49 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:51182) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1imK0i-0000ex-2N; Tue, 31 Dec 2019 11:04:44 -0500 Received: from [176.228.60.248] (port=3337 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1imK0g-0007nq-12; Tue, 31 Dec 2019 11:04:42 -0500 Date: Tue, 31 Dec 2019 18:04:52 +0200 Message-Id: <83o8volbvf.fsf@gnu.org> From: Eli Zaretskii To: Mauro Aranda In-reply-to: (message from Mauro Aranda on Tue, 31 Dec 2019 11:22:27 -0300) Subject: Re: bug#38812: 28.0.50; Custom: Problem with reverting some session's customizations References: X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 38812 Cc: 38812@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Mauro Aranda > Date: Tue, 31 Dec 2019 11:22:27 -0300 > > * lisp/custom.el (custom-variable-theme-value): Return a new list with > the value of variable, so the values of the properties 'theme-value > and 'saved-value are not shared. (Bug#38812) > --- > lisp/custom.el | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/lisp/custom.el b/lisp/custom.el > index 26bdaae..e9bb0d3 100644 > --- a/lisp/custom.el > +++ b/lisp/custom.el > @@ -1483,8 +1483,8 @@ custom-variable-theme-value > > This function returns nil if no custom theme specifies a value for VARIABLE." > (let ((theme-value (get variable 'theme-value))) > - (if theme-value > - (cdr (car theme-value))))) > + (if theme-value ; ((THEME VALUE)) > + (list (cadar theme-value))))) This will look strange without some comment explaining why we do this. And I have a question is: isn't it better not to use setcar in custom-push-theme instead? From debbugs-submit-bounces@debbugs.gnu.org Tue Dec 31 12:21:28 2019 Received: (at 38812) by debbugs.gnu.org; 31 Dec 2019 17:21:28 +0000 Received: from localhost ([127.0.0.1]:35051 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1imLCy-0004gv-Ik for submit@debbugs.gnu.org; Tue, 31 Dec 2019 12:21:28 -0500 Received: from mail-lj1-f171.google.com ([209.85.208.171]:40068) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1imLCx-0004gi-BH for 38812@debbugs.gnu.org; Tue, 31 Dec 2019 12:21:27 -0500 Received: by mail-lj1-f171.google.com with SMTP id u1so36825454ljk.7 for <38812@debbugs.gnu.org>; Tue, 31 Dec 2019 09:21:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=I6aFiMPX8dkXla5XB/qD5nR2WF3jdWFBalyuXupMP8U=; b=mT20OcLPFRHr7yEqtk4OvjplxA//qPQuwwTCpBdB9pBzkVtWk5tGYnXWWAXIxNGOk6 GtLXTe/kSVbn7nBjNoPpPQmV4BZLibfzK9f9WYw0m0ntLImDMnhVaX/wTcyfXbiztI+1 tu8FPdbWmlPPj0Zb5MCgE+1GKl95MhvEJ+faLbbqSfHYs6tRKXTLtfw2y2vFo4bR6xwl twmZO5fAiR19VGV50cPDgjZ/LANCSKId0FCDv8acpvVVpiZO1NDKM+h73k9ScQkwNuH3 wvKHic67hr7MGQ1m2Fom+DhY5o/RXbvrJjH5r/I8GKd+U5QXkaSPuUgDpxhfAv5QqIma VDaw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=I6aFiMPX8dkXla5XB/qD5nR2WF3jdWFBalyuXupMP8U=; b=BcA0kD061Pq6t6Iuof6J7vNdLmuRAuKbiAaoByaX1x5hj/4xJue5glUyNFPN+TRCCH 8aa4pmkRX/tA903/Yw84w1P5Ry9ep1r3zIEbLj8zWXeikihE+hxN+YHse7kS4ZtLQlbN Gl8J/yhUJRYQeKdtTwV/mLPuvFa3ePrcg6nBvUrL6GMRcIqMSP+S7j6J+eA5oxHWGmpN PJZQUe/Vwu1fNIQtTSD8UGYb4/jfoKytF8gi/Ye+3HygQAckaYrMZTuiWPXaOOK8sc+0 ahTLkZNHZO7saSMEYTMD3oLQoA/yNq8O+h+tBCHBLwS6Mra9d9CbPED5qkoyvMfH0x03 ZeAw== X-Gm-Message-State: APjAAAWiVMMcuaXFOrIT5k/nu7V1WcY/MmAB6fMMaTRnJ3OmfuVp+HWG VW80bgLA9V14+/8AfiqONkzYd14lBHRpTWms4MVbJBv0u6E= X-Google-Smtp-Source: APXvYqxKijZiJZ8gaV1vBlecNjB3fRwKZwLf880uD0b6i1tiTXrPzO9nTbFL9S6n/MkjzpMARJWoB0dstGZ/gD2UUxw= X-Received: by 2002:a2e:93c5:: with SMTP id p5mr41372978ljh.192.1577812881290; Tue, 31 Dec 2019 09:21:21 -0800 (PST) MIME-Version: 1.0 References: <83o8volbvf.fsf@gnu.org> In-Reply-To: <83o8volbvf.fsf@gnu.org> From: Mauro Aranda Date: Tue, 31 Dec 2019 14:21:09 -0300 Message-ID: Subject: Re: bug#38812: 28.0.50; Custom: Problem with reverting some session's customizations To: Eli Zaretskii Content-Type: multipart/alternative; boundary="0000000000004fbac0059b033073" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 38812 Cc: 38812@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --0000000000004fbac0059b033073 Content-Type: text/plain; charset="UTF-8" Eli Zaretskii writes: >> This function returns nil if no custom theme specifies a value for VARIABLE." >> (let ((theme-value (get variable 'theme-value))) >> - (if theme-value >> - (cdr (car theme-value))))) >> + (if theme-value ; ((THEME VALUE)) >> + (list (cadar theme-value))))) > > This will look strange without some comment explaining why we do this. True. I can add that comment. > And I have a question is: isn't it better not to use setcar in > custom-push-theme instead? I thought of doing that, and use setf with alist-get to make the change instead. But I think we'll be better off if we avoid sharing the cons cell inadvertedly, since that is prone to have bugs like this one. Alternatively, we could create the list in custom-theme-recalc-variable, to accomplish the same thing without changing the return value of custom-variable-theme-value. In that case, I think it would be convenient to change the doc string of custom-variable-theme-value, to say it returns some cdr. To me, either the patch I posted (with an additional explanatory comment, of course) or the latter option sound better, but I won't argue too much if you think otherwise. Best regards, Mauro. --0000000000004fbac0059b033073 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Eli Zaretskii <eliz@gnu= .org> writes:

>> =C2=A0This function returns nil if no = custom theme specifies a value for VARIABLE."
>> =C2=A0 =C2= =A0(let ((theme-value (get variable 'theme-value)))
>> - =C2= =A0 =C2=A0(if theme-value
>> - (cdr (car theme-value)))))
>&= gt; + =C2=A0 =C2=A0(if theme-value ; ((THEME VALUE))
>> + (list (c= adar theme-value)))))
>
> This will look strange without some c= omment explaining why we do this.

True.=C2=A0 I can add that comment= .

> And I have a question is: isn't it better not to use setc= ar in
> custom-push-theme instead?

I thought of doing that, an= d use setf with alist-get to make the change
instead.=C2=A0 But I think = we'll be better off if we avoid sharing the cons
cell inadvertedly, = since that is prone to have bugs like this one.

Alternatively, we co= uld create the list in custom-theme-recalc-variable,
to accomplish the s= ame thing without changing the return value of
custom-variable-theme-val= ue.=C2=A0 In that case, I think it would be
convenient to change the doc= string of custom-variable-theme-value, to
say it returns some cdr.
<= br>To me, either the patch I posted (with an additional explanatory
comm= ent, of course) or the latter option sound better, but I won't argue
too much if you think otherwise.

Best regards,Mauro.
--0000000000004fbac0059b033073-- From debbugs-submit-bounces@debbugs.gnu.org Tue Dec 31 12:25:27 2019 Received: (at 38812) by debbugs.gnu.org; 31 Dec 2019 17:25:27 +0000 Received: from localhost ([127.0.0.1]:35055 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1imLGp-0004my-5W for submit@debbugs.gnu.org; Tue, 31 Dec 2019 12:25:27 -0500 Received: from eggs.gnu.org ([209.51.188.92]:57709) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1imLGo-0004mm-8I for 38812@debbugs.gnu.org; Tue, 31 Dec 2019 12:25:26 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:52580) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1imLGi-0006GJ-OI; Tue, 31 Dec 2019 12:25:20 -0500 Received: from [176.228.60.248] (port=4317 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1imLGa-0003T2-8I; Tue, 31 Dec 2019 12:25:16 -0500 Date: Tue, 31 Dec 2019 19:25:23 +0200 Message-Id: <83eewkl858.fsf@gnu.org> From: Eli Zaretskii To: Mauro Aranda In-reply-to: (message from Mauro Aranda on Tue, 31 Dec 2019 14:21:09 -0300) Subject: Re: bug#38812: 28.0.50; Custom: Problem with reverting some session's customizations References: <83o8volbvf.fsf@gnu.org> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 38812 Cc: 38812@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Mauro Aranda > Date: Tue, 31 Dec 2019 14:21:09 -0300 > Cc: 38812@debbugs.gnu.org > > > And I have a question: isn't it better not to use setcar in > > custom-push-theme instead? > > I thought of doing that, and use setf with alist-get to make the change > instead. But I think we'll be better off if we avoid sharing the cons > cell inadvertedly, since that is prone to have bugs like this one. And I actually think that a problem should be fixed where it is caused. There's nothing wrong per se with sharing portions of Lisp data structures. > Alternatively, we could create the list in custom-theme-recalc-variable, > to accomplish the same thing without changing the return value of > custom-variable-theme-value. In that case, I think it would be > convenient to change the doc string of custom-variable-theme-value, to > say it returns some cdr. > > To me, either the patch I posted (with an additional explanatory > comment, of course) or the latter option sound better, but I won't argue > too much if you think otherwise. My alternative patch is below. WDYT? diff --git a/lisp/custom.el b/lisp/custom.el index 26bdaae2c2..7ed85b22e8 100644 --- a/lisp/custom.el +++ b/lisp/custom.el @@ -886,7 +886,10 @@ custom-push-theme (put theme 'theme-settings (cons (list prop symbol theme value) (delq res theme-settings))) - (setcar (cdr setting) value))) + ;; It's tempting to use setcar here, but that could + ;; inadvertently modify other properties in SYMBOL's proplist, + ;; if those just happen to share elements with the value of PROP. + (put symbol prop (cons (list theme value) (delq setting old))))) ;; Add a new setting: (t (when (custom--should-apply-setting theme) From debbugs-submit-bounces@debbugs.gnu.org Tue Dec 31 12:38:23 2019 Received: (at 38812) by debbugs.gnu.org; 31 Dec 2019 17:38:23 +0000 Received: from localhost ([127.0.0.1]:35064 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1imLTK-000568-Ju for submit@debbugs.gnu.org; Tue, 31 Dec 2019 12:38:23 -0500 Received: from mail-lj1-f179.google.com ([209.85.208.179]:34309) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1imLTJ-00055t-1V for 38812@debbugs.gnu.org; Tue, 31 Dec 2019 12:38:21 -0500 Received: by mail-lj1-f179.google.com with SMTP id z22so32075126ljg.1 for <38812@debbugs.gnu.org>; Tue, 31 Dec 2019 09:38:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=KvscVNo5NW/glOXvw5XS58xUQnKIMTrZr4VFnEEN+ic=; b=HZLzmF377SN4ThBzROsxs9Yx103YOnuTTlvGxtvova6EPRpay/qgK0ry7DCW1LtkQ/ U8NNatqj+HQRZHAmrNzXxzUelhOx35yvCCLg4l1ZOLmZUAcvPIf4r1dbYtxNidOn2YQS IzYaRym/tdPNjVw9ElBMCcpq8hEFb8gBUcjlcrcAWD9md3F/awloRUtvlrhi8smifFDd 5lB4ZiVzBet1ku0uPx29e1sKBPabrN8c4yfqf2N0z/ICyg4x7PSz+JoK/WiDXV6e6FwR Ipyzbw2eiVxGFkePqREKTRwLbi6owRgUEUHs9/MVPZmz3RD/0QrmfyJcjfglgFobMsX4 v/rQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=KvscVNo5NW/glOXvw5XS58xUQnKIMTrZr4VFnEEN+ic=; b=XcF5OIOIgrRRo68NBYoOiyNmQ/L6Owf6llsgUMbLSUvF2vGkJWAzwX4MhQFwpQa42o SuhMhIIYQmuWqunpflmhGfe5JO7zwaIsPr582erTahEfK2MWk9rrgpDKui24Jqa2oquZ Zw7oQchSL2BT1gIGmqwILP73v7rfeGHvNm+LFkGb/xU/DRD5ZkdlGGmeSD+/hTmo9t9e UJX+MC08rpHwpkcER8TMy7nwZxF5NCJ/N73xQe9XwioiCyFZKUN70YU5N4CjH2wV0CNO JlYcwumtkQC7XZfARVrViY1bbNxxynbLS/gHyniQAVy+6kMiavQb5SofzRpeGPeob7xh WCew== X-Gm-Message-State: APjAAAX9ho7tOEDCBXnhSIRgvn4igEinG97wNLLF5g+ZKlltZxpaWWs6 uZSdId3PWsmGb6kqNMoJoRXcRS2HPPnSL+E4KzQ= X-Google-Smtp-Source: APXvYqx2xI1L36M34bx5OcT+KFVXgYgy2lPtVTaOVk4K7bE6NzVvKf7LLWakyQ4pdpZB3kVuUCpr5YuskNKTHBoUewM= X-Received: by 2002:a2e:96c6:: with SMTP id d6mr12954280ljj.4.1577813894988; Tue, 31 Dec 2019 09:38:14 -0800 (PST) MIME-Version: 1.0 References: <83o8volbvf.fsf@gnu.org> <83eewkl858.fsf@gnu.org> In-Reply-To: <83eewkl858.fsf@gnu.org> From: Mauro Aranda Date: Tue, 31 Dec 2019 14:38:02 -0300 Message-ID: Subject: Re: bug#38812: 28.0.50; Custom: Problem with reverting some session's customizations To: Eli Zaretskii Content-Type: multipart/alternative; boundary="000000000000bb870f059b036cf3" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 38812 Cc: 38812@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --000000000000bb870f059b036cf3 Content-Type: text/plain; charset="UTF-8" Eli Zaretskii writes: >> From: Mauro Aranda >> Date: Tue, 31 Dec 2019 14:21:09 -0300 >> Cc: 38812@debbugs.gnu.org >> >> > And I have a question: isn't it better not to use setcar in >> > custom-push-theme instead? >> >> I thought of doing that, and use setf with alist-get to make the change >> instead. But I think we'll be better off if we avoid sharing the cons >> cell inadvertedly, since that is prone to have bugs like this one. > > And I actually think that a problem should be fixed where it is > caused. There's nothing wrong per se with sharing portions of Lisp > data structures. Of course. But I said "inadvertedly". Now we are aware. >> Alternatively, we could create the list in custom-theme-recalc-variable, >> to accomplish the same thing without changing the return value of >> custom-variable-theme-value. In that case, I think it would be >> convenient to change the doc string of custom-variable-theme-value, to >> say it returns some cdr. >> >> To me, either the patch I posted (with an additional explanatory >> comment, of course) or the latter option sound better, but I won't argue >> too much if you think otherwise. > > My alternative patch is below. WDYT? > > diff --git a/lisp/custom.el b/lisp/custom.el > index 26bdaae2c2..7ed85b22e8 100644 > --- a/lisp/custom.el > +++ b/lisp/custom.el > @@ -886,7 +886,10 @@ custom-push-theme > (put theme 'theme-settings > (cons (list prop symbol theme value) > (delq res theme-settings))) > - (setcar (cdr setting) value))) > + ;; It's tempting to use setcar here, but that could > + ;; inadvertently modify other properties in SYMBOL's proplist, > + ;; if those just happen to share elements with the value of PROP. > + (put symbol prop (cons (list theme value) (delq setting old))))) > ;; Add a new setting: > (t > (when (custom--should-apply-setting theme) Looks good, thank you. --000000000000bb870f059b036cf3 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Eli Zaretskii <eliz@gnu.org> writes:

>> From: Mauro Aranda &l= t;maurooaranda@gmail.com><= br>>> Date: Tue, 31 Dec 2019 14:21:09 -0300
>> Cc: 38812@debbugs.gnu.org
>> >> > And I have a question: isn't it better not to use setcar= in
>> > custom-push-theme instead?
>>
>> I = thought of doing that, and use setf with alist-get to make the change
&g= t;> instead.=C2=A0 But I think we'll be better off if we avoid shari= ng the cons
>> cell inadvertedly, since that is prone to have bugs= like this one.
>
> And I actually think that a problem should = be fixed where it is
> caused.=C2=A0 There's nothing wrong per se= with sharing portions of Lisp
> data structures.

Of course.= =C2=A0 But I said "inadvertedly".=C2=A0 Now we are aware.

= >> Alternatively, we could create the list in custom-theme-recalc-var= iable,
>> to accomplish the same thing without changing the return= value of
>> custom-variable-theme-value.=C2=A0 In that case, I th= ink it would be
>> convenient to change the doc string of custom-v= ariable-theme-value, to
>> say it returns some cdr.
>> >> To me, either the patch I posted (with an additional explanatory=
>> comment, of course) or the latter option sound better, but I w= on't argue
>> too much if you think otherwise.
>
>= My alternative patch is below.=C2=A0 WDYT?
>
> diff --git a/li= sp/custom.el b/lisp/custom.el
> index 26bdaae2c2..7ed85b22e8 100644> --- a/lisp/custom.el
> +++ b/lisp/custom.el
> @@ -886,7 = +886,10 @@ custom-push-theme
> =C2=A0 (put theme 'theme-settings<= br>> =C2=A0 =C2=A0 =C2=A0 (cons (list prop symbol theme value)
> = =C2=A0 =C2=A0 (delq res theme-settings)))
> - (setcar (cdr setting)= value)))
> + =C2=A0 =C2=A0 =C2=A0 =C2=A0;; It's tempting to use = setcar here, but that could
> + =C2=A0 =C2=A0 =C2=A0 =C2=A0;; inadver= tently modify other properties in SYMBOL's proplist,
> + =C2=A0 = =C2=A0 =C2=A0 =C2=A0;; if those just happen to share elements with the valu= e of PROP.
> + =C2=A0 =C2=A0 =C2=A0 =C2=A0(put symbol prop (cons (lis= t theme value) (delq setting old)))))
> =C2=A0 =C2=A0 =C2=A0 ;; Add a= new setting:
> =C2=A0 =C2=A0 =C2=A0 (t
> =C2=A0 =C2=A0 =C2=A0 = =C2=A0(when (custom--should-apply-setting theme)

Looks good, thank y= ou.
--000000000000bb870f059b036cf3-- From debbugs-submit-bounces@debbugs.gnu.org Wed Jan 01 12:51:33 2020 Received: (at 38812-done) by debbugs.gnu.org; 1 Jan 2020 17:51:34 +0000 Received: from localhost ([127.0.0.1]:37532 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1imi9d-0004eB-OQ for submit@debbugs.gnu.org; Wed, 01 Jan 2020 12:51:33 -0500 Received: from eggs.gnu.org ([209.51.188.92]:41247) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1imi9c-0004du-Hc for 38812-done@debbugs.gnu.org; Wed, 01 Jan 2020 12:51:32 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:39463) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1imi9X-0001AO-BM; Wed, 01 Jan 2020 12:51:27 -0500 Received: from [176.228.60.248] (port=1892 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1imi9W-0006Xf-Q5; Wed, 01 Jan 2020 12:51:27 -0500 Date: Wed, 01 Jan 2020 19:51:39 +0200 Message-Id: <83h81fjc9g.fsf@gnu.org> From: Eli Zaretskii To: Mauro Aranda In-reply-to: (message from Mauro Aranda on Tue, 31 Dec 2019 14:38:02 -0300) Subject: Re: bug#38812: 28.0.50; Custom: Problem with reverting some session's customizations References: <83o8volbvf.fsf@gnu.org> <83eewkl858.fsf@gnu.org> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 38812-done Cc: 38812-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Mauro Aranda > Date: Tue, 31 Dec 2019 14:38:02 -0300 > Cc: 38812@debbugs.gnu.org > > > My alternative patch is below. WDYT? > > > > diff --git a/lisp/custom.el b/lisp/custom.el > > index 26bdaae2c2..7ed85b22e8 100644 > > --- a/lisp/custom.el > > +++ b/lisp/custom.el > > @@ -886,7 +886,10 @@ custom-push-theme > > (put theme 'theme-settings > > (cons (list prop symbol theme value) > > (delq res theme-settings))) > > - (setcar (cdr setting) value))) > > + ;; It's tempting to use setcar here, but that could > > + ;; inadvertently modify other properties in SYMBOL's proplist, > > + ;; if those just happen to share elements with the value of PROP. > > + (put symbol prop (cons (list theme value) (delq setting old))))) > > ;; Add a new setting: > > (t > > (when (custom--should-apply-setting theme) > > Looks good, thank you. Thanks, pushed. From unknown Thu Aug 14 18:37:03 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Thu, 30 Jan 2020 12:24:04 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator