From 94600551b1e954c3ed31af443c0244aca2e6fccd Mon Sep 17 00:00:00 2001 From: Michael Schroeder Date: Tue, 29 Jul 2025 15:34:59 +0200 Subject: [PATCH] Split grow_whatprovides_rel from pool_rel2id --- src/poolid.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/src/poolid.c b/src/poolid.c index b55317e8..7e4194f4 100644 --- a/src/poolid.c +++ b/src/poolid.c @@ -33,6 +33,16 @@ grow_whatprovides(Pool *pool, Id id) pool->whatprovides[id] = 1; } +static inline void +grow_whatprovides_rel(Pool *pool, Id id) +{ + if ((id & WHATPROVIDES_BLOCK) == 0) + { + pool->whatprovides_rel = solv_realloc2(pool->whatprovides_rel, id + (WHATPROVIDES_BLOCK + 1), sizeof(Offset)); + memset(pool->whatprovides_rel + id, 0, (WHATPROVIDES_BLOCK + 1) * sizeof(Offset)); + } +} + /* intern string into pool, return id */ Id @@ -129,11 +139,8 @@ pool_rel2id(Pool *pool, Id name, Id evr, int flags, int create) ran->flags = flags; /* extend whatprovides_rel if needed */ - if (pool->whatprovides_rel && (id & WHATPROVIDES_BLOCK) == 0) - { - pool->whatprovides_rel = solv_realloc2(pool->whatprovides_rel, id + (WHATPROVIDES_BLOCK + 1), sizeof(Offset)); - memset(pool->whatprovides_rel + id, 0, (WHATPROVIDES_BLOCK + 1) * sizeof(Offset)); - } + if (pool->whatprovides_rel) + grow_whatprovides_rel(pool, id); return MAKERELDEP(id); } -- 2.47.2