|
@@ -26,8 +26,8 @@ struct slisthead *headp; /* Singly-linked List head. */
|
|
|
struct entry {
|
|
struct entry {
|
|
|
char *name;
|
|
char *name;
|
|
|
int code;
|
|
int code;
|
|
|
- SLIST_ENTRY(entry) entries; /* Singly-linked List. */
|
|
|
|
|
-} *np;
|
|
|
|
|
|
|
+ SLIST_ENTRY(entry) entries; /* Singly-linked List. */
|
|
|
|
|
+} *np;
|
|
|
|
|
|
|
|
/*
|
|
/*
|
|
|
* signal handler
|
|
* signal handler
|
|
@@ -72,9 +72,10 @@ int
|
|
|
main(int argc, char *argv[])
|
|
main(int argc, char *argv[])
|
|
|
{
|
|
{
|
|
|
SLIST_INIT(&head);
|
|
SLIST_INIT(&head);
|
|
|
-
|
|
|
|
|
/* timer pointers */
|
|
/* timer pointers */
|
|
|
size_t nb_timers = 5;
|
|
size_t nb_timers = 5;
|
|
|
|
|
+ size_t cols = 0;
|
|
|
|
|
+
|
|
|
|
|
|
|
|
if (argc > 1) {
|
|
if (argc > 1) {
|
|
|
nb_timers = atoi(argv[1]);
|
|
nb_timers = atoi(argv[1]);
|
|
@@ -96,7 +97,7 @@ main(int argc, char *argv[])
|
|
|
strncpy(names[i], ".", MAX_LEN_NAME);
|
|
strncpy(names[i], ".", MAX_LEN_NAME);
|
|
|
continue;
|
|
continue;
|
|
|
}
|
|
}
|
|
|
- if (MAX_LEN_NAME <= snprintf(names[i], MAX_LEN_NAME, "+%zu+", i * 2 + 1)) {
|
|
|
|
|
|
|
+ if (MAX_LEN_NAME <= snprintf(names[i], MAX_LEN_NAME, "%c", (char)('A' + i - 1))) {
|
|
|
warnx("string %zu shorten", i);
|
|
warnx("string %zu shorten", i);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -146,6 +147,10 @@ main(int argc, char *argv[])
|
|
|
printf("waiting...\n");
|
|
printf("waiting...\n");
|
|
|
for (; !spankme;) {
|
|
for (; !spankme;) {
|
|
|
pause();
|
|
pause();
|
|
|
|
|
+ if (++cols > 79) {
|
|
|
|
|
+ cols = 0;
|
|
|
|
|
+ printf("\n");
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
printf("\nbye.\n");
|
|
printf("\nbye.\n");
|
|
@@ -160,5 +165,6 @@ main(int argc, char *argv[])
|
|
|
free(np);
|
|
free(np);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ return EXIT_SUCCESS;
|
|
|
|
|
|
|
|
}
|
|
}
|