]> git.pld-linux.org Git - packages/rpm.git/blame - rpm-rpm5-patchset-9486.patch
- put gpg key to /etc/pki/rpm-gpg, rfc
[packages/rpm.git] / rpm-rpm5-patchset-9486.patch
CommitLineData
00ba3905
ER
1fix: --rollback PSM_INIT changes added fstates before initialize.
2http://rpm5.org/cvs/chngview?cn=9486
3
4--- rpm-4.4.9/lib/psm.c 2008-02-05 19:50:14.238918269 +0200
5+++ rpm-4.4.9-cs9486/lib/psm.c 2008-02-05 19:47:16.644011486 +0200
6@@ -1497,10 +1497,6 @@
7 int xx = 1;
8
9 assert(fi->h != NULL);
10- if (fi->fstates != NULL && fc > 0)
11- xx = headerAddEntry(fi->h, RPMTAG_FILESTATES, RPM_CHAR_TYPE,
12- fi->fstates, fc);
13-assert(xx);
14
15 xx = headerAddEntry(fi->h, RPMTAG_INSTALLTIME, RPM_INT32_TYPE,
16 &installTime, 1);
7610c768 17@@ -1530,6 +1526,28 @@
00ba3905
ER
18 return 0;
19 }
20
21+
22+/**
23+ * Add fi->states to an install header.
24+ * @param ts transaction set
25+ * @param te transaction element
26+ * @param fi file info set
27+ * @return 0 always
28+ */
29+static int postPopulateInstallHeader(const rpmts ts, const rpmte te, rpmfi fi)
30+ /*@modifies fi @*/
31+{
32+ HE_t he = memset(alloca(sizeof(*he)), 0, sizeof(*he));
33+ int fc = rpmfiFC(fi);
34+ int xx = 1;
35+
36+ if (fi->fstates != NULL && fc > 0) {
7610c768 37+ xx = headerAddEntry(fi->h, RPMTAG_FILESTATES, RPM_CHAR_TYPE, fi->fstates, fc);
00ba3905
ER
38+ }
39+
40+ return 0;
41+}
42+
43 static void * rpmpsmThread(void * arg)
44 /*@globals rpmGlobalMacroContext, h_errno, fileSystem, internalState @*/
45 /*@modifies arg, rpmGlobalMacroContext, fileSystem, internalState @*/
46@@ -2059,6 +2081,9 @@
47 if (rc) break;
48 }
49
50+ /* Add fi->fstates to install header. */
51+ xx = postPopulateInstallHeader(ts, psm->te, fi);
52+
53 rc = rpmpsmNext(psm, PSM_RPMDB_ADD);
54 if (rc) break;
55
56--- rpm-4.4.9/lib/transaction.c 2007-05-17 01:47:00.000000000 +0300
57+++ rpm-4.4.9-cs9486/lib/transaction.c 2008-02-05 19:39:52.565758407 +0200
58@@ -895,9 +895,6 @@
59
60 /*@-dependenttrans@*/
61 if (netsharedPaths) freeSplitString(netsharedPaths);
62-#ifdef DYING /* XXX freeFi will deal with this later. */
63- fi->flangs = _free(fi->flangs);
64-#endif
65 if (languages) freeSplitString((char **)languages);
66 /*@=dependenttrans@*/
67 }
This page took 0.727778 seconds and 4 git commands to generate.