Thumbnail

rani/cscroll.git

Clone URL: https://git.buni.party/rani/cscroll.git

commit 381971522b730c85d5ad8c205e8d38e3d37e80d5 Author: Raniconduh <clagv.randomgames@gmail.com> Date: Sun Oct 16 11:30:18 2022 +0000 clean up parsing of oneshot option diff --git a/src/main.c b/src/main.c index 6f6876f..2844944 100644 --- a/src/main.c +++ b/src/main.c @@ -566 +5611 @@ int main(int argc, char ** argv) {   }   }   + if (show_dot_dirs && !oneshot) { + fputs("-a is only available in oneshot mode\n", stderr); + exit(1); + } +   if (!cwd) {   char p[2048];   getcwd(p, sizeof(p)); @@ -6326 +6811 @@ int main(int argc, char ** argv) {   strcpy(cwd, p);   }   - if (oneshot) { - if (!check_dpath(cwd)) cwd_is_file = true; - } else if (!check_dpath(cwd)) { - if (oneshot) { - cwd_is_file = true; - } else { - fputs("Invalid directory specified\n", stderr); - exit(1); - } - } else { - chdir(cwd); - } - - if (show_dot_dirs && !oneshot) { - fputs("-a is only available in oneshot mode\n", stderr); - exit(1); - } + bool cwd_is_dir = check_dpath(cwd);     if (oneshot) { - if (!cwd_is_file) list_dir(cwd); + if (!cwd_is_dir) cwd_is_file = true; + else list_dir(cwd);     print_oneshot();   @@ -916 +8111 @@ int main(int argc, char ** argv) {   terminate_var();   free(cwd);   exit(0); + } else if (!cwd_is_dir) { + fputs("Invalid directory specified\n", stderr); + exit(1); + } else { + chdir(cwd);   }     curses_init();