From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: David Engster Newsgroups: gmane.emacs.bugs Subject: bug#23440: 25.1.50; xml.el parses default namespace incorrectly Date: Wed, 04 May 2016 08:06:36 +0200 Message-ID: <87mvo61hn7.fsf@engster.org> References: <87eg9ihdkz.fsf@ericabrahamsen.net> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Trace: ger.gmane.org 1462342064 13132 80.91.229.3 (4 May 2016 06:07:44 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 4 May 2016 06:07:44 +0000 (UTC) Cc: 23440@debbugs.gnu.org To: Eric Abrahamsen Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Wed May 04 08:07:32 2016 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 1axpy6-0006du-Uh for geb-bug-gnu-emacs@m.gmane.org; Wed, 04 May 2016 08:07:31 +0200 Original-Received: from localhost ([::1]:45853 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1axpy3-0002en-4Y for geb-bug-gnu-emacs@m.gmane.org; Wed, 04 May 2016 02:07:27 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:53267) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1axpxu-0002Qx-SB for bug-gnu-emacs@gnu.org; Wed, 04 May 2016 02:07:25 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1axpxj-0003zV-1d for bug-gnu-emacs@gnu.org; Wed, 04 May 2016 02:07:13 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:52187) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1axpxh-0003yK-Pl for bug-gnu-emacs@gnu.org; Wed, 04 May 2016 02:07:06 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1axpxe-0003rs-G1 for bug-gnu-emacs@gnu.org; Wed, 04 May 2016 02:07:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: David Engster Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 04 May 2016 06:07:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 23440 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 23440-submit@debbugs.gnu.org id=B23440.146234200314843 (code B ref 23440); Wed, 04 May 2016 06:07:02 +0000 Original-Received: (at 23440) by debbugs.gnu.org; 4 May 2016 06:06:43 +0000 Original-Received: from localhost ([127.0.0.1]:36291 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1axpxL-0003rL-FD for submit@debbugs.gnu.org; Wed, 04 May 2016 02:06:43 -0400 Original-Received: from randomsample.de ([5.45.97.173]:58553) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1axpxJ-0003rC-Mc for 23440@debbugs.gnu.org; Wed, 04 May 2016 02:06:42 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=randomsample.de; s=a; h=Content-Type:MIME-Version:Message-ID:Date:References:In-Reply-To:Subject:Cc:To:From; bh=9YP2FeL0h3DR3lVVfo49FiKjMV70GI2abV8BjcSSqfg=; b=BYkTelKRZyJq+XzIDekmtPAx5oXiE2ylmyv7w7KGbArqxXQEY3DO/zjC/3O/Egx8asxHbD31U/zCPXk0mu8TyXXgksnkbIN7YDUCE0NbzKRcWMONa97nlxm81N/AEhi2; Original-Received: from ip4d168166.dynamic.kabel-deutschland.de ([77.22.129.102] helo=isaac) by randomsample.de with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.80) (envelope-from ) id 1axpxI-00029b-9X; Wed, 04 May 2016 08:06:40 +0200 In-Reply-To: <87eg9ihdkz.fsf@ericabrahamsen.net> (Eric Abrahamsen's message of "Wed, 04 May 2016 08:27:40 +0800") User-Agent: Gnus/5.13001 (Ma Gnus v0.10) Emacs/25.0.50 (gnu/linux) Mail-Copies-To: never X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.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" Xref: news.gmane.org gmane.emacs.bugs:117714 Archived-At: --=-=-= Content-Type: text/plain Eric Abrahamsen writes: > Apparently xml.el isn't doing quite the right thing when parsing xml > default namespaces. With the following text: > > > > > M-: (xml-parse-region nil nil nil nil 'symbol-qnames) > > Should return: > > ((DAV:multistatus ((... . "DAV:")) > > But actually returns: > > ((multistatus ((http://www\.w3\.org/2000/xmlns/xmlns . "DAV:")) Should be fixed by the attached patch, but I need to test a bit more before pushing it. -David --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=xml-patch.diff diff --git a/lisp/xml.el b/lisp/xml.el index 414300c..848a030 100644 --- a/lisp/xml.el +++ b/lisp/xml.el @@ -646,8 +646,10 @@ xml-parse-string (defun xml-parse-attlist (&optional xml-ns) "Return the attribute-list after point. Leave point at the first non-blank character after the tag." - (let ((attlist ()) - end-pos name) + (let* ((attlist ()) + (symbol-qnames (eq (car-safe xml-ns) 'symbol-qnames)) + (xml-ns (if symbol-qnames (cdr xml-ns) xml-ns)) + end-pos name) (skip-syntax-forward " ") (while (looking-at (eval-when-compile (concat "\\(" xml-name-re "\\)\\s-*=\\s-*"))) --=-=-=--