From: Michael Schroeder Date: Wed, 19 Apr 2017 07:59:01 +0000 (+0200) Subject: Simplify namespace formatting X-Git-Tag: 0.6.27~8 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f9f230a3b62c7c16a503d3c5f4ff8bd2e77531f3;p=thirdparty%2Flibsolv.git Simplify namespace formatting --- diff --git a/ext/testcase.c b/ext/testcase.c index 505a8b01..df7dc2b0 100644 --- a/ext/testcase.c +++ b/ext/testcase.c @@ -409,21 +409,13 @@ testcase_dep2str_complex(Pool *pool, char *s, Id id, int addparens) /* check for special shortcuts */ if (rd->flags == REL_NAMESPACE && !ISRELDEP(rd->name) && !strncmp(pool_id2str(pool, rd->name), "namespace:", 10)) { - const char *ns = pool_id2str(pool, rd->name); - size_t nslen = strlen(ns); - size_t slen = s ? strlen(s) : 0; - /* special namespace formatting */ + s = pool_tmpappend(pool, s, pool_id2str(pool, rd->name), "("); s = testcase_dep2str_complex(pool, s, rd->evr, 0); - s = pool_tmpappend(pool, s, ns, "()"); /* -> FOOnamespace:xxx() */ - s += slen; - memmove(s + nslen + 1, s, strlen(s) - nslen - 2); /* -> FOOnamespace:xFOO) */ - memcpy(s, ns, nslen); /* -> namespace:xxxxFOO) */ - s[nslen] = '('; /* -> namespace:xxx(FOO) */ - return s - slen; + return pool_tmpappend(pool, s, ")", 0); } if (rd->flags == REL_MULTIARCH && !ISRELDEP(rd->name) && rd->evr == ARCH_ANY) { - /* special :any suffix */ + /* append special :any suffix */ s2 = testcase_id2str(pool, rd->name, 1); s = pool_tmpappend(pool, s, s2, ":any"); pool_freetmpspace(pool, s2);