# HG changeset patch
# User Mychaela Falconia <falcon@freecalypso.org>
# Date 1742339309 0
# Node ID 7c7ace4999c15311f494d1ebaa4dbd3692408f2e
# Parent  f9ef582c199ca194dec1f77658432f6d1c611583
trau-hr-dump: change code to use getopt

diff -r f9ef582c199c -r 7c7ace4999c1 trau-decode/trau-hr-dump.c
--- a/trau-decode/trau-hr-dump.c	Tue Mar 18 22:56:23 2025 +0000
+++ b/trau-decode/trau-hr-dump.c	Tue Mar 18 23:08:29 2025 +0000
@@ -153,31 +153,24 @@
 main(argc, argv)
 	char **argv;
 {
-	char *filename, *subslot_arg;
+	extern int optind;
+	int c;
 
-	switch (argc) {
-	case 3:
-		if (argv[1][0] == '-')
-			goto usage;
-		filename = argv[1];
-		subslot_arg = argv[2];
-		include_raw = 0;
-		break;
-	case 4:
-		if (strcmp(argv[1], "-r"))
-			goto usage;
-		if (argv[2][0] == '-')
-			goto usage;
-		filename = argv[2];
-		subslot_arg = argv[3];
-		include_raw = 1;
-		break;
-	default:
-	usage:
-		fprintf(stderr, "usage: %s [-r] binfile subslot\n", argv[0]);
-		exit(1);
+	while ((c = getopt(argc, argv, "r")) != EOF) {
+		switch (c) {
+		case 'r':
+			include_raw = 1;
+			continue;
+		default:
+		usage:
+			fprintf(stderr, "usage: %s [-r] binfile subslot\n",
+				argv[0]);
+			exit(1);
+		}
 	}
-	read_ts_file(filename, subslot_arg);
+	if (argc != optind + 2)
+		goto usage;
+	read_ts_file(argv[optind], argv[optind + 1]);
 	process_filebuf();
 	exit(0);
 }