aboutsummaryrefslogtreecommitdiffstats
path: root/URPM.xs
diff options
context:
space:
mode:
Diffstat (limited to 'URPM.xs')
-rw-r--r--URPM.xs9
1 files changed, 6 insertions, 3 deletions
diff --git a/URPM.xs b/URPM.xs
index 10d9c2c..aac4b43 100644
--- a/URPM.xs
+++ b/URPM.xs
@@ -2447,11 +2447,14 @@ Db_traverse_tag_find(db,tag,name,callback)
int count = _run_cb_while_traversing(callback, header, 0);
SPAGAIN;
- if (count == 1 && POPi) {
- found = 1;
- break;
+ if (count == 1) {
+ SV* ret = POPs;
+ found = SvTRUE(ret);
}
PUTBACK;
+ if (found) {
+ break;
+ }
}
rpmtsSetVSFlags(db->ts, ovsflags);
(void)rpmdbFreeIterator(mi);