NoPaste

main()

von RobertDebiannutzer

SNIPPET_TEXT:
  1. int
  2. main(int argc, char *argv[])
  3. {
  4.         int opt;
  5.  
  6.         if (!isatty(STDIN_FILENO)) {
  7.                 perror("isatty");
  8.                 exit(EXIT_FAILURE);
  9.         }
  10.  
  11.         while ((opt = getopt(argc, argv, "hv")) != -1) {
  12.                 switch (opt) {
  13.                 case 'h':
  14.                         usage(argv[0]);
  15.                         exit(EXIT_SUCCESS);
  16.                         break;
  17.                 case 'v':
  18.                         version();
  19.                         exit(EXIT_SUCCESS);
  20.                         break;
  21.                 }
  22.         }
  23.  
  24.         if (argc > 1) {
  25.                 pwd = scalloc(strlen(argv[1])+1, 1);
  26.                 strcpy(pwd, argv[1]);
  27.                 if (chdir(pwd) == -1) {
  28.                         perror("chdir");
  29.                         free(pwd);
  30.                         exit(EXIT_FAILURE);
  31.                 }
  32.         } else {
  33.                 /* pwd has to be freed */
  34.                 if ((pwd = getcwd(pwd, 0)) == NULL) {
  35.                         perror("getcwd");
  36.                         exit(EXIT_FAILURE);
  37.                 }
  38.         }
  39.  
  40.         setup();
  41.  
  42.         fm_loop();
  43.  
  44.         cleanup();
  45.         exit(EXIT_SUCCESS);
  46. }

Quellcode

Hier kannst du den Code kopieren und ihn in deinen bevorzugten Editor einfügen. PASTEBIN_DOWNLOAD_SNIPPET_EXPLAIN