From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Ivan Shmakov Newsgroups: gmane.emacs.bugs Subject: bug#19140: dir-locals-collect-variables discrepancy in handling non-file buffers Date: Tue, 30 Dec 2014 19:45:57 +0000 Message-ID: <87egrg9b0q.fsf@violet.siamics.net> References: <87zjbky1kr.fsf@violet.siamics.net> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1419968838 29847 80.91.229.3 (30 Dec 2014 19:47:18 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 30 Dec 2014 19:47:18 +0000 (UTC) To: 19140@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Tue Dec 30 20:47:12 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 1Y62l5-0005gB-Kh for geb-bug-gnu-emacs@m.gmane.org; Tue, 30 Dec 2014 20:47:11 +0100 Original-Received: from localhost ([::1]:38093 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y62l4-0003d4-SY for geb-bug-gnu-emacs@m.gmane.org; Tue, 30 Dec 2014 14:47:10 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:35757) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y62l1-0003cz-ED for bug-gnu-emacs@gnu.org; Tue, 30 Dec 2014 14:47:08 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Y62kx-0000Rw-AT for bug-gnu-emacs@gnu.org; Tue, 30 Dec 2014 14:47:07 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:52021) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y62kw-0000Rq-Qx for bug-gnu-emacs@gnu.org; Tue, 30 Dec 2014 14:47:03 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1Y62kw-0000Ja-Ax for bug-gnu-emacs@gnu.org; Tue, 30 Dec 2014 14:47:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Ivan Shmakov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 30 Dec 2014 19:47:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 19140 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 19140-submit@debbugs.gnu.org id=B19140.14199687701151 (code B ref 19140); Tue, 30 Dec 2014 19:47:02 +0000 Original-Received: (at 19140) by debbugs.gnu.org; 30 Dec 2014 19:46:10 +0000 Original-Received: from localhost ([127.0.0.1]:33154 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Y62k6-0000IV-58 for submit@debbugs.gnu.org; Tue, 30 Dec 2014 14:46:10 -0500 Original-Received: from fely.am-1.org ([78.47.74.50]:47001) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Y62k2-0000IL-TK for 19140@debbugs.gnu.org; Tue, 30 Dec 2014 14:46:07 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=siamics.net; s=a2013295; h=Content-Transfer-Encoding:Content-Type:MIME-Version:Message-ID:In-Reply-To:Date:Sender:References:Subject:To:From; bh=BquyT22I0sAMnkNzhkyESyz+NfadyqnxRUF/P/8rypY=; b=JVZmIZcwYSO+sqFPbmQ/YWU4g8569Kx4taKS/VzcK1iNwHwzhXSTPpsIGpKhn23viJnE/r/9i3HkrMQA5bTyrw7WAqgofdQgFN5a7W7tLqDZFgOpYwYvxW/LnDQdmVzrogtE9iAv8XUdOISMVHiORg+YVdpGiVaj+H5Gx5h6plY=; Original-Received: from [2a02:2560:6d4:26ca::1:1d] (helo=violet.siamics.net) by fely.am-1.org with esmtps (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128) (Exim 4.80) (envelope-from ) id 1Y62k1-0001kg-5w for 19140@debbugs.gnu.org; Tue, 30 Dec 2014 19:46:05 +0000 Original-Received: from localhost ([::1] helo=violet.siamics.net) by violet.siamics.net with esmtps (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.80) (envelope-from ) id 1Y62jt-0004rj-ST for 19140@debbugs.gnu.org; Wed, 31 Dec 2014 02:45:57 +0700 Mail-Followup-To: 19140@debbugs.gnu.org In-Reply-To: <87zjbky1kr.fsf@violet.siamics.net> (Ivan Shmakov's message of "Fri, 21 Nov 2014 16:12:52 +0000") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) 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:97877 Archived-At: Please consider the revised patch MIMEd. * lisp/files.el (dir-locals-collect-variables): Use default-directory in place of the file name while working on non-file buffers (as hack-dir-local-variables already does.) --=20 FSF associate member #7257 http://boycottsystemd.org/ =E2=80=A6 3013 B6A0= 230E 334A --- a/lisp/files.el +++ b/lisp/files.el 2014-12-28 19:20:59+00:00 @@ -3628,7 +3628,9 @@ defun dir-locals-collect-variables (class-variables r= oot variables) "Collect entries from CLASS-VARIABLES into VARIABLES. ROOT is the root directory of the project. Return the new variables list." - (let* ((file-name (buffer-file-name)) + (let* ((file-name (or (buffer-file-name) + ;; handle non-file buffers, too + (expand-file-name default-directory))) (sub-file-name (if file-name ;; FIXME: Why not use file-relative-name? (substring file-name (length root)))))