* authorization. *
****************************************************************************/
/*
- * $Id: combine.c,v 1.19 2022/05/21 23:19:31 tom Exp $
+ * $Id: combine.c,v 1.22 2022/12/04 00:40:11 tom Exp $
*/
#include <test.priv.h>
}
static void
-usage(void)
+usage(int ok)
{
static const char *msg[] =
{
- "Usage: combine [options]",
- "",
- "Demonstrate combining-characters.",
- "",
- "Options:",
- " -c use cchar_t data rather than wchar_t string",
- " -l FILE log window-dumps to this file",
- " -r draw even-numbered rows in reverse-video",
+ "Usage: combine [options]"
+ ,""
+ ,USAGE_COMMON
+ ,"Demonstrate combining-characters."
+ ,""
+ ,"Options:"
+ ," -c use cchar_t data rather than wchar_t string"
+ ," -l FILE log window-dumps to this file"
+ ," -r draw even-numbered rows in reverse-video"
};
unsigned n;
for (n = 0; n < SIZEOF(msg); ++n) {
fprintf(stderr, "%s\n", msg[n]);
}
- ExitProgram(EXIT_FAILURE);
+ ExitProgram(ok ? EXIT_SUCCESS : EXIT_FAILURE);
}
+/* *INDENT-OFF* */
+VERSION_COMMON()
+/* *INDENT-ON* */
int
main(int argc GCC_UNUSED, char *argv[]GCC_UNUSED)
{
- int n;
+ int ch;
int left_at = ' ';
int over_it = 0;
bool done = FALSE;
bool log_option = FALSE;
const char *dump_log = "combine.log";
- while ((n = getopt(argc, argv, "cl:r")) != -1) {
- switch (n) {
+ while ((ch = getopt(argc, argv, OPTS_COMMON "cl:r")) != -1) {
+ switch (ch) {
case 'c':
c_opt = TRUE;
break;
case 'l':
log_option = TRUE;
if (!open_dump(optarg))
- usage();
+ usage(FALSE);
break;
case 'r':
r_opt = TRUE;
break;
+ case OPTS_VERSION:
+ show_version(argv);
+ ExitProgram(EXIT_SUCCESS);
default:
- usage();
- break;
+ usage(ch == OPTS_USAGE);
+ /* NOTREACHED */
}
}