diff options
author | Steve Bavin <pondlife@pondlife.me> | 2007-10-26 18:04:42 +0000 |
---|---|---|
committer | Steve Bavin <pondlife@pondlife.me> | 2007-10-26 18:04:42 +0000 |
commit | ab784649cd95cc5c7fc0d81bb6ef85b762e237b5 (patch) | |
tree | 4e4c54b11edd8e60e8d44b260d0a03b62cacb202 | |
parent | a63181c1d12ee9a5b658638008948e295617f92d (diff) |
Don't lock up simulators when lists are used with TIMEOUT_NOBLOCK. Fixes FS#8030.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15318 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r-- | apps/gui/list.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/apps/gui/list.c b/apps/gui/list.c index 64551055c3..4d19bbdf96 100644 --- a/apps/gui/list.c +++ b/apps/gui/list.c @@ -1285,6 +1285,11 @@ bool simplelist_show_list(struct simplelist_info *info) gui_syncstatusbar_draw(&statusbars, true); list_do_action(CONTEXT_STD, info->timeout, &lists, &action, LIST_WRAP_UNLESS_HELD); +#ifdef SIMULATOR + /* Sim has no interrupts, so this is needed for buttons to be recognised */ + if (info->timeout == TIMEOUT_NOBLOCK) + yield(); +#endif if (info->action_callback) { action = info->action_callback(action, &lists); @@ -1303,7 +1308,6 @@ bool simplelist_show_list(struct simplelist_info *info) } else if(default_event_handler(action) == SYS_USB_CONNECTED) return true; - } talk_shutup(); return false; |