Instead of passing the repo to queue_from_mft() do the lookup in the
function.

-- 
:wq Claudio

Index: main.c
===================================================================
RCS file: /cvs/src/usr.sbin/rpki-client/main.c,v
retrieving revision 1.218
diff -u -p -r1.218 main.c
--- main.c      2 Sep 2022 21:56:45 -0000       1.218
+++ main.c      3 Sep 2022 09:09:25 -0000
@@ -359,12 +359,14 @@ rrdp_http_done(unsigned int id, enum htt
  * These are always relative to the directory in which "mft" sits.
  */
 static void
-queue_add_from_mft(const struct mft *mft, struct repo *rp)
+queue_add_from_mft(const struct mft *mft)
 {
        size_t                   i;
+       struct repo             *rp;
        const struct mftfile    *f;
        char                    *nfile, *npath = NULL;
 
+       rp = repo_byid(mft->repoid);
        for (i = 0; i < mft->filesz; i++) {
                f = &mft->files[i];
 
@@ -568,7 +570,7 @@ entity_process(struct ibuf *b, struct st
                }
                mft = mft_read(b);
                if (!mft->stale)
-                       queue_add_from_mft(mft, repo_byid(mft->repoid));
+                       queue_add_from_mft(mft);
                else
                        st->mfts_stale++;
                mft_free(mft);

Reply via email to