rpm/ndbglue.diff

32 lines
892 B
Diff
Raw Normal View History

--- ./lib/backend/ndb/glue.c.orig 2021-01-05 15:36:03.097744355 +0000
+++ ./lib/backend/ndb/glue.c 2021-01-05 15:36:35.353659287 +0000
@@ -316,7 +316,7 @@ static rpmRC ndb_pkgdbPut(dbiIndex dbi,
if (hnum == 0) {
rc = rpmpkgNextPkgIdx(dbc->dbi->dbi_db, &hnum);
- if (!rc)
+ if (!rc && ndbenv->hdrNum == hnum)
setdata(dbc, hnum, 0, 0);
}
@@ -325,7 +325,8 @@ static rpmRC ndb_pkgdbPut(dbiIndex dbi,
if (!rc) {
dbc->hdrNum = hnum;
- setdata(dbc, hnum, 0, 0);
+ if (ndbenv->hdrNum == hnum)
+ setdata(dbc, hnum, 0, 0);
*hdrNum = hnum;
}
return rc;
@@ -334,7 +335,8 @@ static rpmRC ndb_pkgdbPut(dbiIndex dbi,
static rpmRC ndb_pkgdbDel(dbiIndex dbi, dbiCursor dbc, unsigned int hdrNum)
{
dbc->hdrNum = 0;
- setdata(dbc, 0, 0, 0);
+ if (ndbenv->hdrNum == hnum)
+ setdata(dbc, 0, 0, 0);
return rpmpkgDel(dbc->dbi->dbi_db, hdrNum);
}