RPM Package Manager, CVS Repository http://rpm5.org/cvs/ ____________________________________________________________________________
Server: rpm5.org Name: Jeff Johnson Root: /v/rpm/cvs Email: [email protected] Module: rpm Date: 11-Dec-2009 18:28:33 Branch: HEAD Handle: 2009121117283300 Modified files: rpm/js/tscripts Mi.js Log: - js: attempt to catch endian issues with rpmmi persistent primary keys. - js: ensure that rpmmi and header instances argree. Summary: Revision Changes Path 1.11 +6 -12 rpm/js/tscripts/Mi.js ____________________________________________________________________________ patch -p0 <<'@@ .' Index: rpm/js/tscripts/Mi.js ============================================================================ $ cvs diff -u -r1.10 -r1.11 Mi.js --- rpm/js/tscripts/Mi.js 11 Dec 2009 16:09:22 -0000 1.10 +++ rpm/js/tscripts/Mi.js 11 Dec 2009 17:28:33 -0000 1.11 @@ -29,10 +29,9 @@ var bingo = 0; var npkgs = 0; for (var [dbkey,h] in Iterator(mi)) { -// nack("h.instance", 0); -// ack("h.instance", mi.instance); ack("mi.instance != 0", true); ack("mi.instance < 0x0000ffff", true); + ack("mi.instance == h.dbinstance", true); if (h[RPMTAG_NAME] == N) { hdrNum = mi.instance; V = h[RPMTAG_VERSION]; @@ -45,27 +44,21 @@ bingo = 1; } ack("bingo", 1); -nack("npkgs", 0); -ack("hdrNum != 0", true); -ack("hdrNum < 0x0000ffff", true); -nack("NVRA", N); delete mi; function doITER(ts, tag, key) { this.mi = new Mi(ts, tag, key); this.bingo = 0; -// this.dbkey = null; -// this.h = null; for ([this.dbkey,this.h] in Iterator(this.mi)) { ack("this.h.name", N); ack("this.h.nvra", NVRA); - ack("this.mi.instance < 0x0000ffff", true); - ack("this.mi.instance", hdrNum); + ack("this.mi.instance == hdrNum", true); + ack("this.mi.instance == this.h.dbinstance", true); delete this.h; this.bingo = 1; } - delete this.mi; ack("this.bingo", 1); + delete this.mi; return true; } @@ -94,7 +87,8 @@ for (var [dbkey,h] in Iterator(mi)) { ack("h.name", N); ack("h.nvra", NVRA); -// ack("h.instance", hdrNum); + ack("mi.instance == hdrNum", true); + ack("mi.instance == h.dbinstance", true); delete h; bingo = 1; } @@ . ______________________________________________________________________ RPM Package Manager http://rpm5.org CVS Sources Repository [email protected]
