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:   02-Aug-2007 17:49:47
  Branch: HEAD                             Handle: 2007080216494600

  Modified files:
    rpm                     CHANGES macros.in
    rpm/rpmdb               rpmdb.c

  Log:
    - hack up a NVRA retrival w/o extensions, sigh.

  Summary:
    Revision    Changes     Path
    1.1544      +1  -0      rpm/CHANGES
    1.192       +3  -3      rpm/macros.in
    1.146       +21 -3      rpm/rpmdb/rpmdb.c
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: rpm/CHANGES
  ============================================================================
  $ cvs diff -u -r1.1543 -r1.1544 CHANGES
  --- rpm/CHANGES       2 Aug 2007 15:13:43 -0000       1.1543
  +++ rpm/CHANGES       2 Aug 2007 15:49:46 -0000       1.1544
  @@ -1,4 +1,5 @@
   4.5 -> 5.0:
  +    - jbj: hack up a NVRA retrival w/o extensions, sigh.
       - jbj: add RPMTAG_NVRA header extension.
       - jbj: python ds.Uname getter for uname(...) dependencies.
       - jbj: use rpmmg magic wrapper.
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/macros.in
  ============================================================================
  $ cvs diff -u -r1.191 -r1.192 macros.in
  --- rpm/macros.in     2 Aug 2007 15:03:08 -0000       1.191
  +++ rpm/macros.in     2 Aug 2007 15:49:46 -0000       1.192
  @@ -1,7 +1,7 @@
   #/*! \page config_macros Default configuration: @USRLIBRPM@/macros
   # \verbatim
   #
  -# $Id: macros.in,v 1.191 2007/08/02 15:03:08 jbj Exp $
  +# $Id: macros.in,v 1.192 2007/08/02 15:49:46 jbj Exp $
   #
   # This is a global RPM configuration file. All changes made here will
   # be lost when the rpm package is upgraded. Any per-system configuration
  @@ -648,8 +648,8 @@
   
   # database tag configuration
   %_dbi_tags                      %{expand:%%{_dbi_tags_%{_dbapi_used}}}
  -%_dbi_tags_3                    
Packages:Name:Basenames:Group:Requirename:Providename:Conflictname:Triggername:Dirnames:Requireversion:Provideversion:Installtid:Sigmd5:Sha1header:Filemd5s:Pubkeys:Packagecolor
  -%_dbi_tags_4                    
Packages:Name:Basenames:Group:Requirename:Providename:Conflictname:Triggername:Dirnames:Requireversion:Provideversion:Installtid:Sigmd5:Sha1header:Filemd5s:Pubkeys:Packagecolor
  +%_dbi_tags_3                    
Packages:Name:Basenames:Group:Requirename:Providename:Conflictname:Triggername:Dirnames:Requireversion:Provideversion:Installtid:Sigmd5:Sha1header:Filemd5s:Pubkeys:Packagecolor:Nvra
  +%_dbi_tags_4                    
Packages:Name:Basenames:Group:Requirename:Providename:Conflictname:Triggername:Dirnames:Requireversion:Provideversion:Installtid:Sigmd5:Sha1header:Filemd5s:Pubkeys:Packagecolor:Nvra
   
   # database configuration: Berkeley-DB [dbapi 3 hooks]
   %_dbi_config_3                  %{_dbi_btconfig}
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/rpmdb/rpmdb.c
  ============================================================================
  $ cvs diff -u -r1.145 -r1.146 rpmdb.c
  --- rpm/rpmdb/rpmdb.c 1 Aug 2007 17:58:37 -0000       1.145
  +++ rpm/rpmdb/rpmdb.c 2 Aug 2007 15:49:46 -0000       1.146
  @@ -2852,12 +2852,19 @@
                    xx = dbiSync(dbi, 0);
                continue;
                /[EMAIL PROTECTED]@*/ /[EMAIL PROTECTED]@*/ break;
  +         case RPMTAG_NVRA:   /* XXX compound header extension. */
  +             rpmtype = RPM_STRING_TYPE;
  +             rpmvals = hGetNEVRA(h, NULL);
  +             rpmcnt = 1;
  +             /[EMAIL PROTECTED]@*/ break;
  +         default:
  +             if (!hge(h, rpmtag, &rpmtype, &rpmvals, &rpmcnt))
  +                 continue;
  +             /[EMAIL PROTECTED]@*/ break;
  +
            }
            /[EMAIL PROTECTED]@*/
        
  -         if (!hge(h, rpmtag, &rpmtype, &rpmvals, &rpmcnt))
  -             continue;
  -
          dbi = dbiOpen(db, rpmtag, 0);
          if (dbi != NULL) {
            int printed;
  @@ -3033,6 +3040,9 @@
                xx = dbiSync(dbi, 0);
          }
   
  +         if (rpmtag == RPMTAG_NVRA)  /* XXX compound header extension. */
  +             av[0] = _free(av[0]);
  +         else
            if (rpmtype != RPM_BIN_TYPE)        /* XXX WTFO? HACK ALERT */
                rpmvals = hfd(rpmvals, rpmtype);
            rpmtype = 0;
  @@ -3282,6 +3292,11 @@
                xx = hge(h, rpmtag, &rpmtype, &rpmvals, &rpmcnt);
                xx = hge(h, RPMTAG_REQUIREFLAGS, NULL, &requireFlags, NULL);
                /[EMAIL PROTECTED]@*/ break;
  +         case RPMTAG_NVRA:   /* XXX compound header extension. */
  +             rpmtype = RPM_STRING_TYPE;
  +             rpmvals = hGetNEVRA(h, NULL);
  +             rpmcnt = 1;
  +             /[EMAIL PROTECTED]@*/ break;
            default:
                xx = hge(h, rpmtag, &rpmtype, &rpmvals, &rpmcnt);
                /[EMAIL PROTECTED]@*/ break;
  @@ -3489,6 +3504,9 @@
                xx = dbiSync(dbi, 0);
          }
   
  +         if (rpmtag == RPMTAG_NVRA)  /* XXX compound header extension. */
  +             av[0] = _free(av[0]);
  +         else
        /[EMAIL PROTECTED]@*/
            if (rpmtype != RPM_BIN_TYPE)        /* XXX WTFO? HACK ALERT */
                rpmvals = hfd(rpmvals, rpmtype);
  @@ .
______________________________________________________________________
RPM Package Manager                                    http://rpm5.org
CVS Sources Repository                                [email protected]

Reply via email to