diff --git a/interactions.c b/interactions.c index fe7a6e7..702f662 100644 --- a/interactions.c +++ b/interactions.c @@ -187,15 +187,19 @@ void dir_changed(){ } void move_down(unsigned long passes){ - /*bounds checking happens within thread_mid*/ mid_dir.current_file += passes; + if (mid_dir.current_file > mid_dir.file_list + mid_dir.file_count - 1) { + mid_dir.current_file = mid_dir.file_list + mid_dir.file_count - 1; + } status |= (STATUS_RUN_BACKEND); } void move_up(unsigned long passes){ - /*bounds checking happens within thread_mid*/ mid_dir.current_file -= passes; + if (mid_dir.current_file < mid_dir.file_list) { + mid_dir.current_file = mid_dir.file_list; + } status |= (STATUS_RUN_BACKEND); }