diff options
| -rw-r--r-- | src/main.c | 12 |
1 files changed, 5 insertions, 7 deletions
@@ -188,9 +188,9 @@ static void ftag_file_get_path(char *out, int size, const char *file) static void ftag_export(int argc, char **argv) { - /* TODO: use getopt here */ - while ((argc > 0) && (argv[0][0] == '-')) { - switch (argv[0][1]) { + int opt; + while ((opt = getopt(argc, argv, "h")) != -1) { + switch (opt) { case 'h': ftag_export_help(); exit(EXIT_SUCCESS); @@ -198,15 +198,13 @@ static void ftag_export(int argc, char **argv) ftag_export_usage(); exit(EXIT_FAILURE); } - argv++; - argc--; } - if (argc != 2) { + if (argc - optind != 1) { ftag_export_help(); exit(EXIT_FAILURE); } - char *archive_dir = argv[1]; + char *archive_dir = argv[optind]; char archive_file[64]; strbuild(archive_file, "%s%s", archive_dir, ".tar.gz"); |
