summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Bavin <pondlife@pondlife.me>2007-10-26 18:04:42 +0000
committerSteve Bavin <pondlife@pondlife.me>2007-10-26 18:04:42 +0000
commitab784649cd95cc5c7fc0d81bb6ef85b762e237b5 (patch)
tree4e4c54b11edd8e60e8d44b260d0a03b62cacb202
parenta63181c1d12ee9a5b658638008948e295617f92d (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.c6
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;