My favorites | Sign in
Logo
                
New issue | Search
for
| Advanced search | Search tips
Issue 20: Broken aliasing rules
1 person starred this issue and may be notified of changes. Back to list
Status:  Fixed
Owner:  ewxrjk
Closed:  May 2008
Type-Defect
Priority-High


Sign in to add a comment
 
Reported by ewxrjk, May 18, 2008
It's possible to end up with the following broken situation:

1) Track A is a real track
2) Track B is an alias for track A
3) Track C is an alias for track B

Below is db_dump output illustrating the situation:

From tracks.db:
 /music/Banco de Gaia/Last Train to Lhasa (disc 1)/01:Last Train To Lhasa.ogg
 _path=/music/Banco%20de%20Gaia/Last%20Train%20to%20Lhasa%20(disc%201)/01%3aLast%20Train%20To%20Lhasa.ogg&_noticed=1209918815&_length=704
 /music/Banco de Gaia/Last Train to Lhasa (disc 1)/Last Train To Lhasa
(wibble).ogg
 _alias_for=/music/Banco%20de%20Gaia/Last%20Train%20to%20Lhasa%20(disc%201)/01%3aLast%20Train%20To%20Lhasa.ogg
 /music/Banco de Gaia/Last Train to Lhasa (disc 1)/Last Train To Lhasa.ogg
 _alias_for=/music/Banco%20de%20Gaia/Last%20Train%20to%20Lhasa%20(disc%201)/Last%20Train%20To%20Lhasa%20(wibble).ogg

From prefs.db:
 /music/Banco de Gaia/Last Train to Lhasa (disc 1)/01:Last Train To Lhasa.ogg
 requested=1&played=1&played_time=1211056027&unscratched=1&trackname_display_title=Last%20Train%20To%20Lhasa%20(wibble)
 /music/Banco de Gaia/Last Train to Lhasa (disc 1)/Last Train To Lhasa
(wibble).ogg
 requested=1&played=1&played_time=1211056027&unscratched=1&trackname_display_title=Last%20Train%20To%20Lhasa


The fix would be to resolve track names before setting preferences.
Comment 1 by ewxrjk, May 18, 2008
revno: 653
committer: Richard Kettlewell <rjk@greenend.org.uk>
branch nick: disorder.dev
timestamp: Sun 2008-05-18 13:12:49 +0100
message:
  Resolve aliases in c_get, c_set, c_prefs and c_part.  The intended
  behaviour is that preferences always belong to the canonical version
  of the track and never to an alias.
  
  Added a new aliases.py test to verify this and related alias
  behaviour.
  
  Fixes defect 20.

Status: Fixed
Sign in to add a comment

Hosted by Google Code