/****************************************************************************
- * Copyright 2020,2021 Thomas E. Dickey *
+ * Copyright 2020-2021,2022 Thomas E. Dickey *
* Copyright 1998-2016,2017 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
#include <dump_entry.h>
-MODULE_ID("$Id: infocmp.c,v 1.151 2021/06/17 21:11:08 tom Exp $")
+MODULE_ID("$Id: infocmp.c,v 1.155 2022/09/03 23:28:48 tom Exp $")
#define MAX_STRING 1024 /* maximum formatted string */
ExitProgram(EXIT_FAILURE);
}
-static char *
-canonical_name(char *ptr, char *buf)
+static void
+canonical_name(char *source, char *target)
/* extract the terminal type's primary name */
{
- char *bp;
-
- _nc_STRCPY(buf, ptr, NAMESIZE);
- if ((bp = strchr(buf, '|')) != 0)
- *bp = '\0';
+ int limit = NAMESIZE;
- return (buf);
+ while (--limit > 0) {
+ char ch = *source++;
+ if (ch == '|')
+ break;
+ *target++ = ch;
+ }
+ *target = '\0';
}
static bool
if (entryeq(&qp->tterm, &rp->tterm) && useeq(qp, rp)) {
char name1[NAMESIZE], name2[NAMESIZE];
- (void) canonical_name(qp->tterm.term_names, name1);
- (void) canonical_name(rp->tterm.term_names, name2);
+ canonical_name(qp->tterm.term_names, name1);
+ canonical_name(rp->tterm.term_names, name2);
(void) printf("%s = %s\n", name1, name2);
}
entries[0] = *qp;
entries[1] = *rp;
- (void) canonical_name(qp->tterm.term_names, name1);
- (void) canonical_name(rp->tterm.term_names, name2);
+ canonical_name(qp->tterm.term_names, name1);
+ canonical_name(rp->tterm.term_names, name2);
switch (compare) {
case C_DIFFERENCE:
case 'v':
itrace = (unsigned) optarg_to_number();
- set_trace_level(itrace);
+ use_verbosity(itrace);
break;
case 'W':