can't open an album if it contains double quotes (")

Bug #500768 reported by asdfgh2091
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Exaile
Fix Released
Undecided
Unassigned

Bug Description

if the album title contains double quotes (for instance 'Beethoven - Symphony No. 3 "Erorica"'), you can't expand it in the browser. If album or track title contains a double quote, you can't drop it from the browser to the playlist panel.

I'm using the exaile of xubuntu 9.10.
This might be related to Bug #492112

Revision history for this message
Thomas Zander (thomas-e-zander) wrote :

I can reproduce this on the most recent trunk on FreeBSD.
Exaile does not generate debug output or a traceback related to the problem. How can I diagnose where it happens?

Changed in exaile:
status: New → Confirmed
Revision history for this message
Thomas Zander (thomas-e-zander) wrote :

I believe I found where this happens.
In xlgui/panel/collection.py there is the class member CollectionPanel.get_selected_tracks() which calls CollectionPanel._find_tracks() for the given iterator. This function generates the search criterion by calling CollectionPanel.get_node_search_terms() for the iterator. This constructs a single string containing the search criteria by doing:
return " ".join(queries)

This results in a returned string like (example for a song containing a double quote)
u'discnumber=="0" tracknumber=="3" title=="Some song (12" Remix)" album=="Some album" artist=="Some artist"'

And if this string is passed later into trax.TracksMatcher(), it will generate a matcher object with matcher.content=u'Some song (12' instead of u'Some song (12" Remix)'
This does not match any existing track in the database and no track is appended to the playlist.

Shouldn't CollectionPanel.get_node_search_terms() return a dictionary defining the search criteria instead of one single string? Then we wouldn't have to worry about certain characters.

Revision history for this message
reacocard (reacocard) wrote :

should be fixed in trunk/2877.

Changed in exaile:
milestone: none → 0.3.1
status: Confirmed → Fix Committed
reacocard (reacocard)
Changed in exaile:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.