Rockbox

  • Status Closed
  • Percent Complete
    100%
  • Task Type Bugs
  • Category Database
  • Assigned To No-one
  • Operating System All players
  • Severity Low
  • Priority Very Low
  • Reported Version Daily build (which?)
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Rockbox
Opened by sideral - 2010-11-04
Last edited by Jonathan Gordon - 2010-11-16

FS#11722 - Runtime statistics data not gathered for first song played after power-on

The reason is that, depending on the thread scheduling, the tagtree_buffer_event function may attempt to access the tagcache before it is initialized.

I could reproduce this problem on my Sansa ClipV2, but not with the simulator, which had a slightly different schedule during startup.

When problem occurs, the debug logfiles shows this:

load track: /PODCASTS/foo.mp3
codec < Q_CODEC_LOAD_DISK
be:/PODCASTS/foo.mp3
tc stat: not found: /PODCASTS/foo.mp3
[...]
loading tagcache to ram...
tagcache loaded into ram!
[...]
Request new track
codec >| audio Q_AUDIO_CHECK_NEW_TRACK
audio < Q_AUDIO_CHECK_NEW_TRACK
No tagcache index pointer found

As you can see, the tagcache is initialized after the first song is buffered. The “tc stat: not found” message is generated by tagtree_buffer_event, and the “No tagcache index pointer found” message is generated by tagtree_track_finish_event.

The attached patch fixes the problem by deferring the use of the tagcache until it has been initialized.

Closed by  Jonathan Gordon
2010-11-16 22:08
Reason for closing:  Accepted
Additional comments about closing:  

r28608:

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing