{
rpmgi gi = qva->qva_gi;
int ec = 0;
+ Header h;
- while (rpmgiNext(gi) == RPMRC_OK) {
- Header h;
+ while ((h = rpmgiNext(gi)) != NULL) {
int rc;
rpmdbCheckSignals();
- h = rpmgiHeader(gi);
- if (h == NULL) /* XXX perhaps stricter break instead? */
- continue;
if ((rc = qva->qva_showPackage(qva, ts, h)) != 0)
ec = rc;
}
return gi;
}
-rpmRC rpmgiNext(rpmgi gi)
+Header rpmgiNext(rpmgi gi)
{
rpmRC rpmrc = RPMRC_NOTFOUND;
if (gi == NULL)
- return rpmrc;
+ return NULL;
/* Free header from previous iteration. */
gi->h = headerFree(gi->h);
goto enditer;
}
- return rpmrc;
+ return gi->h;
enditer:
gi->h = headerFree(gi->h);
gi->i = -1;
gi->active = 0;
- return rpmrc;
-}
-
-Header rpmgiHeader(rpmgi gi)
-{
- return (gi != NULL ? gi->h : NULL);
+ return NULL;
}
int rpmgiNumErrors(rpmgi gi)
/** \ingroup rpmgi
* Perform next iteration step.
* @param gi generalized iterator
- * @returns RPMRC_OK on success, RPMRC_NOTFOUND on EOI
+ * @returns next header, NULL on end of iteration
*/
RPM_GNUC_INTERNAL
-rpmRC rpmgiNext(rpmgi gi);
-
-/** \ingroup rpmgi
- * Return current iteration header.
- * @param gi generalized iterator
- * @returns header
- */
-RPM_GNUC_INTERNAL
-Header rpmgiHeader(rpmgi gi);
+Header rpmgiNext(rpmgi gi);
/** \ingroup rpmgi
* Return number of errors (file not found etc) encountered during iteration