diff options
Diffstat (limited to 'tasking.cpp')
-rw-r--r-- | tasking.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/tasking.cpp b/tasking.cpp index 97dd51a..1b78011 100644 --- a/tasking.cpp +++ b/tasking.cpp @@ -21,7 +21,7 @@ struct Task static std::array<Task, 4> tasks; static int current = -1; -void schedule(const Registers& regs) +void schedule(const Registers&) { if (current < 0) return; @@ -32,7 +32,7 @@ void schedule(const Registers& regs) )" : "=m" (tasks[current].esp), "=m" (tasks[current].ebp)); do { - if (++current >= tasks.size()) + if (++current >= static_cast<int>(tasks.size())) current = 0; } while (tasks[current].state == Task::Invalid || tasks[current].state == Task::Staging); @@ -61,13 +61,13 @@ void tasking_initialize() bool tasking_spawn(void (*entry)(), unsigned ssize) { - int i = -1; + unsigned i; for (i = 0; i < tasks.size(); ++i) { if (tasks[i].state == Task::Invalid) break; } - if (i < 0) + if (i >= tasks.size()) return false; tasks[i].state = Task::Staging; |