less confusing error when apps get past main

This commit is contained in:
Kartik K. Agaram 2022-03-13 12:12:19 -07:00
parent 6ece3bb664
commit 1017e80fe5
1 changed files with 6 additions and 4 deletions

View File

@ -388,15 +388,17 @@ _M.NOP = NOP
function spawn_main() function spawn_main()
task.spawn(call_main) task.spawn(call_main)
task.scheduler() task.scheduler()
assert(false, "Teliva's scheduler ran out of work; this shouldn't happen.\n".. assert(false, "Teliva ran out of stuff to do. Possible causes:\n"..
"Either a channel is blocked forever or you're reading past\n".. "- main() returned. Apps shouldn't let this happen.\n"..
"the end of a file (after recv() returned nil).\n") "- App is reading past the end of a file (after recv() returned nil)\n"..
"- Some channel is blocked forever.\n"..
curses.nodelay(true) curses.nodelay(true)
curses.getch() curses.getch()
end end
-- This function exists only to make the call to 'main' visible to Teliva. -- This function exists only to make the call to 'main' visible to Teliva.
-- Teliva can't yet recognize the caller of indirect calls. -- Teliva can't yet recognize the caller of indirect calls, as happens with
-- task.spawn.
function call_main() function call_main()
main() main()
end end