- Status Closed
- Percent Complete
- Task Type Bugs
- Category User Interface
- 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
FS#10723 - Rockbox hangs or panics while trying to clear settings on boot
This bug was introduced with r23258 (works with r23257)
Steps to reproduce
1. hold record button while powering on
2. e280 locks up while displaying the verbose bootloader screen.
I commented the splashf() on line 538 in apps/main.c and it did not lock and did reset the settings.
Closed by mc2739
2009-11-05 03:48
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
2009-11-05 03:48
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
This was fixed in r23507
Loading...
Available keyboard shortcuts
- Alt + ⇧ Shift + l Login Dialog / Logout
- Alt + ⇧ Shift + a Add new task
- Alt + ⇧ Shift + m My searches
- Alt + ⇧ Shift + t focus taskid search
Tasklist
- o open selected task
- j move cursor down
- k move cursor up
Task Details
- n Next task
- p Previous task
- Alt + ⇧ Shift + e ↵ Enter Edit this task
- Alt + ⇧ Shift + w watch task
- Alt + ⇧ Shift + y Close Task
Task Editing
- Alt + ⇧ Shift + s save task
I can also reproduce this on my e260v2, although instead of hanging, it gets a data abort at 300265f8. According to the rockbox.map file, this address is in find_viewport in skin_parser.o
Here are my findings so far in trying to track this down using r23258:
NOTE: this may not be accurate for current svn.
1. apps/main.c line 536 calls splash()
2. apps/gui/splash.c line 225 calls splashf()
3. apps/gui/splash.c line 208 calls splash_internal()
4. apps/gui/splash.c line 64 calls viewport_set_defaults()
5. apps/gui/viewport.c line 170 calls viewport_set_fullscreen()
6. apps/gui/viewport.c line 116 calls sb_skin_get_info_vp()
I think this is where the problem is, sb_skin_init() has not yet been called and we are calling sb_skin_get_info_vp().
To test if this was the case, I set a bool if the settings cleared, moved the splash() after sb_skin_init() and used to bool to determine whether or not to splash the message. This worked properly.
At this point, I do not know the best way to fix this issue. Moving the splash works, but a warning would also need to be added stating that splash should not be used before sb_skin_init(). The more proper fix might be for sb_skin_get_info_vp() to know that sb_skin_init() has not happened yet and just return the standard fullscreen viewport.