diff options
| -rw-r--r-- | runner/resultgen.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/runner/resultgen.c b/runner/resultgen.c index 2b7d26d5..7b4cd519 100644 --- a/runner/resultgen.c +++ b/runner/resultgen.c @@ -742,6 +742,7 @@ static const char *result_from_exitcode(int exitcode) static void add_subtest(struct subtests *subtests, char *subtest) { size_t len = strlen(subtest); + size_t i; if (len == 0) return; @@ -749,6 +750,11 @@ static void add_subtest(struct subtests *subtests, char *subtest) if (subtest[len - 1] == '\n') subtest[len - 1] = '\0'; + /* Don't add if we already have this subtest */ + for (i = 0; i < subtests->size; i++) + if (!strcmp(subtest, subtests->names[i])) + return; + subtests->size++; subtests->names = realloc(subtests->names, sizeof(*subtests->names) * subtests->size); subtests->names[subtests->size - 1] = subtest; |
