RPM Package Manager, CVS Repository http://rpm5.org/cvs/ ____________________________________________________________________________
Server: rpm5.org Name: Jeff Johnson Root: /v/rpm/cvs Email: j...@rpm5.org Module: rpm Date: 31-Mar-2009 00:39:38 Branch: HEAD Handle: 2009033022393700 Modified files: rpm CHANGES rpm/lib poptI.c poptQV.c Log: - fix: --noscripts/--nofdigests/--nocontexts need to use popt callback. Summary: Revision Changes Path 1.2889 +1 -0 rpm/CHANGES 2.52 +24 -0 rpm/lib/poptI.c 2.63 +2 -0 rpm/lib/poptQV.c ____________________________________________________________________________ patch -p0 <<'@@ .' Index: rpm/CHANGES ============================================================================ $ cvs diff -u -r1.2888 -r1.2889 CHANGES --- rpm/CHANGES 30 Mar 2009 18:55:38 -0000 1.2888 +++ rpm/CHANGES 30 Mar 2009 22:39:37 -0000 1.2889 @@ -1,5 +1,6 @@ 5.2a3 -> 5.2a4: + - jbj: fix: --noscripts/--nofdigests/--nocontexts need to use popt callback. - jbj: rpmiob: fix: return iob to _rpmiobPool instead. - jbj: yarn: convert mire to usage mutex with refcounts (unifying array <-> element mutexes by copying use/pool @@ . patch -p0 <<'@@ .' Index: rpm/lib/poptI.c ============================================================================ $ cvs diff -u -r2.51 -r2.52 poptI.c --- rpm/lib/poptI.c 21 Jan 2009 22:24:18 -0000 2.51 +++ rpm/lib/poptI.c 30 Mar 2009 22:39:37 -0000 2.52 @@ -180,6 +180,18 @@ ia->noDeps = 1; break; + case RPMCLI_POPT_NOCONTEXTS: + ia->transFlags |= RPMTRANS_FLAG_NOCONTEXTS; + break; + + case RPMCLI_POPT_NOSCRIPTS: + ia->transFlags |= (_noTransScripts|_noTransTriggers); + break; + + case RPMCLI_POPT_NOFDIGESTS: + ia->transFlags |= RPMTRANS_FLAG_NOFDIGESTS; + break; + } } @@ -218,19 +230,31 @@ { "nodocs", '\0', POPT_BIT_SET|POPT_ARGFLAG_TOGGLE|POPT_ARGFLAG_DOC_HIDDEN, &rpmIArgs.transFlags, RPMTRANS_FLAG_NODOCS, N_("do not install documentation"), NULL}, +#ifdef NOTYET /* XXX multiple identical options forces popt callback. */ { "nocontexts", '\0', POPT_BIT_SET|POPT_ARGFLAG_TOGGLE|POPT_ARGFLAG_DOC_HIDDEN, &rpmIArgs.transFlags, RPMTRANS_FLAG_NOCONTEXTS, N_("don't install file security contexts"), NULL}, { "nofdigests", '\0', POPT_BIT_SET, &rpmIArgs.transFlags, RPMTRANS_FLAG_NOFDIGESTS, N_("don't verify file digests"), NULL }, +#else + { "nocontexts", '\0', POPT_ARGFLAG_DOC_HIDDEN, NULL, RPMCLI_POPT_NOCONTEXTS, + N_("don't verify file security contexts"), NULL }, + { "nofdigests", '\0', 0, NULL, RPMCLI_POPT_NOFDIGESTS, + N_("don't verify file digests"), NULL }, +#endif { "norpmdb", '\0', POPT_BIT_SET|POPT_ARGFLAG_TOGGLE|POPT_ARGFLAG_DOC_HIDDEN, &rpmIArgs.transFlags, RPMTRANS_FLAG_NORPMDB, N_("don't register headers in rpmdb"), NULL}, +#ifdef NOTYET /* XXX multiple identical options forces popt callback. */ { "noscripts", '\0', POPT_BIT_SET, &rpmIArgs.transFlags, (_noTransScripts|_noTransTriggers), N_("do not execute package scriptlet(s)"), NULL }, +#else + { "noscripts", '\0', 0, NULL, RPMCLI_POPT_NOSCRIPTS, + N_("do not execute package scriptlet(s)"), NULL }, +#endif { "nopretrans", '\0', POPT_BIT_SET|POPT_ARGFLAG_TOGGLE|POPT_ARGFLAG_DOC_HIDDEN, &rpmIArgs.transFlags, RPMTRANS_FLAG_NOPRETRANS, N_("do not execute %%pretrans scriptlet (if any)"), NULL }, @@ . patch -p0 <<'@@ .' Index: rpm/lib/poptQV.c ============================================================================ $ cvs diff -u -r2.62 -r2.63 poptQV.c --- rpm/lib/poptQV.c 27 Mar 2009 21:17:42 -0000 2.62 +++ rpm/lib/poptQV.c 30 Mar 2009 22:39:37 -0000 2.63 @@ -288,6 +288,8 @@ { QVA_t qva = &rpmQVKArgs; + /* XXX avoid accidental collisions with POPT_BIT_SET for flags */ + if (opt->arg == NULL) switch (opt->val) { case 'c': qva->qva_flags |= QUERY_FOR_CONFIG | QUERY_FOR_LIST; break; case 'd': qva->qva_flags |= QUERY_FOR_DOCS | QUERY_FOR_LIST; break; @@ . ______________________________________________________________________ RPM Package Manager http://rpm5.org CVS Sources Repository rpm-cvs@rpm5.org