diff --git a/userspace/programs/snake/main.cpp b/userspace/programs/snake/main.cpp index b289a731..1cef6e31 100644 --- a/userspace/programs/snake/main.cpp +++ b/userspace/programs/snake/main.cpp @@ -65,13 +65,16 @@ Point get_random_point() void update_apple() { -regenerate: - g_apple = get_random_point(); - if (g_head == g_apple) - goto regenerate; - for (auto point : g_tail) - if (point == g_apple) - goto regenerate; + for (;;) + { + g_apple = get_random_point(); + if (g_head == g_apple) + continue; + for (auto point : g_tail) + if (point == g_apple) + continue; + break; + } set_grid_tile(g_apple, "\e[31mO"); }