Subject: Re: bug#3430: 23.0.94; cannot enable two minor modes in .dir-locals.el

From: Glenn Morris <[email-masked]>
Date: Wed, 17 Jun 2009 22:40:26 -0400

Possible hack follows, but I don't know what the point of the
dir-locals-collect-mode-variables function is supposed to be (an
optimization to avoid settings things twice?).

***************
*** 3213,3219 ****
      (let* ((variable (car pair))
       (value (cdr pair))
       (slot (assq variable variables)))
!       (if slot
      (setcdr slot value)
    ;; Need a new cons in case we setcdr later.
    (push (cons variable value) variables)))))
--- 3214,3222 ----
      (let* ((variable (car pair))
       (value (cdr pair))
       (slot (assq variable variables)))
!       ;; If variables are specified more than once, only use the last.
!       ;; But any number of `modes' (assumed to be minor) are allowed.
!       (if (and slot (not (eq variable 'mode)))
      (setcdr slot value)
    ;; Need a new cons in case we setcdr later.
    (push (cons variable value) variables)))))