• Status Closed
  • Percent Complete
  • Task Type Bugs
  • Category User Interface
  • Assigned To No-one
  • Operating System Iriver H300 series
  • Severity Low
  • Priority Very Low
  • Reported Version Version 3.3
  • Due in Version Undecided
  • Due Date Undecided
  • Votes
  • Private
Attached to Project: Rockbox
Opened by Skyly - 2009-06-22
Last edited by jdgordon - 2009-12-22

FS#10368 - Performing 'View Catalog' 3 times in a row crashes with StkOv

To reproduce, go to the Playlist Catalog by any means.

1. Highlight a playlist and hold NAVI to enter the context menu.
2. Select Playlist Catalog.
3. Select View Catalog.
4. Repeat.

After about 3 repeats the unit crashes, on any of the above steps depending on how you first entered the catalog.

Not a critical problem, just a thorn to be there. Workaround is to not do it.

Closed by  jdgordon
2009-12-22 06:09
Reason for closing:  Fixed
Additional comments about closing:   Warning: Undefined array key "typography" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 371 Warning: Undefined array key "camelcase" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 407

in r24097. someone is welcome to make this hack work better with the menus

I can’t reproduce this on my Sansa E280, tried repeating the steps 7 times and no crash. Could this be linked to the difference in arch between the players?

I can’t repro it on the H300 sim either, FWIW. Maybe post your config.cfg?

Difference in compilers is a possibility. I’ve noticed that the gcc used for coldfire (including the h300) inlines more functions, which can make stack usage quite different on arm and coldfire (like in the recently fixed database stack overflow, which only happened on coldfire targets). And in the sim, the stack is much bigger…


I can confirm that this happens on my H3xx mp3 player with build r21613-090702.

Hope this helps.


nls commented on 2009-12-05 10:47

still happening on h300, i would say the fundamental problem is that we allow the catalog_view_playlists function (with a few button presses) to recursively call itself as much as it wants, so the stack will overflow eventually on any platform and any compiler

catalog_view_playlists calls display_playlists which allocates a 1600 byte array on the stack so only a few iterations and indeed it crashes my Gigabeat S and sansa c200 reliably too so
some kind of recursion protection for this function is needed.


Available keyboard shortcuts


Task Details

Task Editing