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:   29-May-2009 21:04:21
  Branch: HEAD                             Handle: 2009052919042001

  Modified files:
    rpm                     CHANGES rpmqv.c
    rpm/misc                librpmmisc.c
    rpm/rpmdb               rpmdb.c

  Log:
    - display rebuilddb progress using ps(1) and top(1).
    - mark rebuilddb legacy hysteria for destruction.

  Summary:
    Revision    Changes     Path
    1.3001      +2  -0      rpm/CHANGES
    1.5         +5  -0      rpm/misc/librpmmisc.c
    1.305       +16 -0      rpm/rpmdb/rpmdb.c
    1.160       +5  -0      rpm/rpmqv.c
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: rpm/CHANGES
  ============================================================================
  $ cvs diff -u -r1.3000 -r1.3001 CHANGES
  --- rpm/CHANGES       28 May 2009 13:48:46 -0000      1.3000
  +++ rpm/CHANGES       29 May 2009 19:04:20 -0000      1.3001
  @@ -1,5 +1,7 @@
   
   5.2b1 -> 5.3a1
  +    - jbj: display rebuilddb progress using ps(1) and top(1).
  +    - jbj: mark rebuilddb legacy hysteria for destruction.
       - jbj: add RPMTAG_SHA1HEADER to rpmdb pubkeys.
       - jbj: remove first (of 3) rpm-5.2.0 release process be-bugging flaws.
       - jbj: fix: resuscitate --nodigest/--nosignature w --rebuilddb.
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/misc/librpmmisc.c
  ============================================================================
  $ cvs diff -u -r1.4 -r1.5 librpmmisc.c
  --- rpm/misc/librpmmisc.c     17 Mar 2009 16:30:16 -0000      1.4
  +++ rpm/misc/librpmmisc.c     29 May 2009 19:04:21 -0000      1.5
  @@ -32,6 +32,11 @@
   #include "setenv.c"
   #endif
   
  +/* XXX limit the fiddle up to linux for now. */
  +#if !defined(HAVE_SETPROCTITLE) && defined(__linux__)
  +#include "setproctitle.c"
  +#endif
  +
   #if !defined(HAVE_STPCPY)
   #include "stpcpy.c"
   #endif
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/rpmdb/rpmdb.c
  ============================================================================
  $ cvs diff -u -r1.304 -r1.305 rpmdb.c
  --- rpm/rpmdb/rpmdb.c 29 May 2009 15:18:40 -0000      1.304
  +++ rpm/rpmdb/rpmdb.c 29 May 2009 19:04:21 -0000      1.305
  @@ -4120,6 +4120,9 @@
        /*...@globals _rebuildinprogress @*/
        /*...@modifies _rebuildinprogress @*/
   {
  +#if !defined(HAVE_SETPROCTITLE) && defined(__linux__)
  +    HE_t he = memset(alloca(sizeof(*he)), 0, sizeof(*he));
  +#endif
       const char * myprefix = NULL;
       rpmdb olddb;
       const char * dbpath = NULL;
  @@ -4238,6 +4241,7 @@
   
        while ((h = rpmmiNext(mi)) != NULL) {
   
  +#if defined(SUPPORT_REBUILDDB_SANITY)
            /* let's sanity check this record a bit, otherwise just skip it */
            if (!(headerIsEntry(h, RPMTAG_NAME) &&
                headerIsEntry(h, RPMTAG_VERSION) &&
  @@ -4257,7 +4261,9 @@
                        _RECNUM);
                continue;
            }
  +#endif
   
  +#if defined(SUPPORT_REBUILDDB_FILTER)
            /* Filter duplicate entries ? (bug in pre rpm-3.0.4) */
            if (_db_filter_dups || newdb->db_filter_dups) {
                const char * name, * version, * release;
  @@ -4283,6 +4289,16 @@
                if (skip)
                    continue;
            }
  +#endif
  +
  +/* XXX limit the fiddle up to linux for now. */
  +#if !defined(HAVE_SETPROCTITLE) && defined(__linux__)
  +         he->tag = RPMTAG_NVRA;
  +         if (headerGet(h, he, 0)) {
  +             setproctitle("%s", he->p.str);
  +             he->p.ptr = _free(he->p.ptr);
  +         }
  +#endif
   
            /* Deleted entries are eliminated in legacy headers by copy. */
            {   Header nh = (headerIsEntry(h, RPMTAG_HEADERIMAGE)
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/rpmqv.c
  ============================================================================
  $ cvs diff -u -r1.159 -r1.160 rpmqv.c
  --- rpm/rpmqv.c       25 May 2009 16:48:21 -0000      1.159
  +++ rpm/rpmqv.c       29 May 2009 19:04:20 -0000      1.160
  @@ -425,6 +425,11 @@
        
   #if !defined(__GLIBC__) && !defined(__LCLINT__)
       environ = envp;
  +#else
  +/* XXX limit the fiddle up to linux for now. */
  +#if !defined(HAVE_SETPROCTITLE) && defined(__linux__)
  +    (void) initproctitle(argc, (char **)argv, environ);
  +#endif
   #endif  
   
       /* Set the major mode based on argv[0] */
  @@ .
______________________________________________________________________
RPM Package Manager                                    http://rpm5.org
CVS Sources Repository                                rpm-cvs@rpm5.org

Reply via email to