From 63e42784290b4bb103fbb3f64bad23dc9edef9f3 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Fri, 26 Jun 2020 07:44:55 +0200 Subject: libtest: Add T_get_scope() Update #3199. --- cpukit/libtest/t-test.c | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) (limited to 'cpukit/libtest') diff --git a/cpukit/libtest/t-test.c b/cpukit/libtest/t-test.c index bf9b68cdf2..e74b4d3495 100644 --- a/cpukit/libtest/t-test.c +++ b/cpukit/libtest/t-test.c @@ -1095,3 +1095,42 @@ T_pop_fixture(void) memset(node, 0, sizeof(*node)); } + +void +T_get_scope(const char * const * const *desc, char *buf, size_t n, + const size_t *second_indices) +{ + size_t i; + + i = 0; + + while (true) { + const char * const *desc2; + size_t m; + + desc2 = desc[i]; + + if (desc2 == NULL) { + return; + } + + if (n > 1) { + buf[0] = '/'; + --n; + ++buf; + } else { + return; + } + + m = strlcpy(buf, desc2[second_indices[i]], n); + + if (m < n) { + n -= m; + buf += m; + } else { + return; + } + + ++i; + } +} -- cgit v1.2.3