GNU bug report logs - #34685
26.1; function nnrss-get-namespace-prefix always returns nil

Previous Next

Packages: gnus, emacs;

Reported by: wenbushi <wenbushi <at> gmail.com>

Date: Thu, 28 Feb 2019 15:37:02 UTC

Severity: minor

Fixed in version 28.1

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


Message #45 received at 34685 <at> debbugs.gnu.org (full text, mbox):

From: Benjamin Riefenstahl <b.riefenstahl <at> turtle-trading.net>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: 34685 <at> debbugs.gnu.org, wenbushi <wenbushi <at> gmail.com>,
 Noam Postavsky <npostavs <at> gmail.com>
Subject: Re: bug#34685: 26.1; function nnrss-get-namespace-prefix always
 returns nil
Date: Mon, 09 Aug 2021 18:30:01 +0200
[Message part 1 (text/plain, inline)]
Hi Lars,

> Benjamin Riefenstahl <b.riefenstahl <at> turtle-trading.net> writes:
>> LS09LT0tPQpDb250ZW50LVR5cGU6IHRleHQvcGxhaW4KCkhpIExhcnMsCgpMYXJzIEluZ2Vicmln
>> dHNlbiB3cml0ZXM6Cj4gSSd2ZSBub3cgZml4ZWQgdGhpcyBtb3JlIGdlbmVyYWxseSBieSBzZWFy

Lars Ingebrigtsen writes:
> Your message arrived kinda destroyed, but I used my decoder ring:

Sorry about that.  My laptop does not have email setup correctly, that
made things complicated in this case.

>> +(defconst test-nnrss-xml
>> +  '((rss
>> +     ((version . "2.0")
>> +      (xmlns:dc . "http://purl.org/dc/elements/1.1/"))
>> +     (channel
>> +      ((xmlns:content . "http://purl.org/rss/1.0/modules/content/"))))))

> The problem here is that this test XML isn't a valid DOM -- it's a
> list of DOMs.  A valid DOM would be

I originally just copied this from the output of the debugger, so this
is what nnrss-get-namespace-prefix gets passed.  I just checked, the
structure is the result of xml-parse-region, is that supposed to create
something that matches the use of dom-search?  When I try it on some
test XML it does create this same structure again.

Test code:

    (with-temp-buffer
      (insert "<rss xmlns:content='http://purl.org/rss/1.0/modules/content/'>
                 <channel />
               </rss>")
      (xml-parse-region (point-min) (point-max)))

> So if EL is a list of nodes, then it's the caller of
> nnrss-get-namespace-prefix here that should be adjusted to pass in the
> car of the list instead?  Could you try that and see whether that
> works?

What is passed to nnrss-get-namespace-prefix is also used in other
places and the calling function is a bit complicated so I'd rather not
change it.  I attach another change in nnrss-get-namespace-prefix
function instead.

I note that your previous work on this bug is the first time that
nnrss.el uses functions from dom.el.  It maybe should use it more, but
that is a project for another day, I would say.

> (And send a new patch; I've applied your test (adjusted).)

See below.

Thanks for your time,
benny

[0001-Fix-nnrss-get-namespace-prefix-bug-34685.patch (text/x-diff, attachment)]

This bug report was last modified 3 years and 286 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.