From: Michael Schroeder Date: Tue, 21 Oct 2008 10:59:16 +0000 (+0000) Subject: - make dataiterator safer X-Git-Tag: BASE-SuSE-Code-12_1-Branch~308^2~122 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6f6fe28401b94eec6c9b52667ac6df7ac5bdd258;p=thirdparty%2Flibsolv.git - make dataiterator safer --- diff --git a/src/repodata.c b/src/repodata.c index e083beab..4ba47f75 100644 --- a/src/repodata.c +++ b/src/repodata.c @@ -1045,6 +1045,8 @@ dataiterator_step(Dataiterator *di) switch (di->state) { case di_enterrepo: di_enterrepo: + if (!di->repo) + goto di_bye; if (!(di->flags & SEARCH_THISSOLVID)) { di->solvid = di->repo->start - 1; /* reset solvid iterator */ @@ -1363,7 +1365,7 @@ dataiterator_jump_to_solvid(Dataiterator *di, Id solvid) di->solvid = solvid; if (solvid) di->flags |= SEARCH_THISSOLVID; - di->state = di_entersolvable; + di->state = di_enterrepo; } void