Petteri Hintsanen <[email protected]> writes:
> I just pushed a new revision without emms-info-native--max-peek-size
> checks. It still does a couple of other checks, but you shouldn’t see
> excessive size errors anymore.
>
>> My personal take is that trimming the whitespace is a good idea, if only
>> because other info sources do it.
>
> I added trailing whitespace trimming to all info-fields, including
> Vorbis comments. They are text anyway.
>
>> and similarly for emms-info-taglib. The native took 200 seconds and taglib
>> 300 for the 14000 or so files! Looks like not shelling out 14000 times
>> trumps the speed of C++ (at least on my setup where I suspect a lot of the
>> time is spent reading the mp3's from the ntfs filesystem they live on).
>
> That’s true, shelling incurs a heavy overhead.
>
> I have compiled taglib shim as Emacs module so that it doesn’t need to
> do any execs. It is, depending on caching conditions (I suppose), about
> 2-10x faster than emms-info-native.
Seems to work well and fast.
I got an error from string-trim-right on a file with this data:
(("discnumber" . "1/2")
("albumartist" . "Elly Ameling/Dame Janet Baker/Theo Altmeyer/Hans
Sotin/Süddeutscher Madrigalchor/Consortium Musicum/Wolfgang Gönnenwein/Dame
Joan Sutherland/Helen Watts/Wilfred Brown/Thomas Hemsley/Geraint Jones
Singers/Geraint Jones Orchestra/Geraint Jones")
("year" . "2005")
("tracknumber" . "1/21")
("composer")
("album" . "Cantatas - Bach")
("artist" . "Dame Joan Sutherland/Helen Watts/Wilfred Brown/Thomas
Hemsley/Geraint Jones Singers/Geraint Jones Orchestra/Geraint Jones")
("title" . "Cantata No. 147, 'Herz Und Mund Und Tat Und Leben' Bwv147 (1995
Digital Remaster)
, Part 1: Chorus: Herz Und Mund"))
(Without actually checking) my guess is that it is the fact that:
(cdr '("composer")) => nil
...and so `string-trim-right' errors on getting nil as an input.
So perhaps the call to `string-trim-right' can look like:
(string-trim-right (or (cdr field) ""))
...to protect from that. But I'll leave that to you to decide.
--
"Cut your own wood and it will warm you twice"