RPM Package Manager, CVS Repository
  http://rpm5.org/cvs/
  ____________________________________________________________________________

  Server: rpm5.org                         Name:   Anders F. Björklund
  Root:   /v/rpm/cvs                       Email:  [EMAIL PROTECTED]
  Module: rpm                              Date:   06-Dec-2007 11:03:25
  Branch: HEAD                             Handle: 2007120610032500

  Modified files:
    rpm/rpmio               rpmxar.c

  Log:
    don't compress payload twice

  Summary:
    Revision    Changes     Path
    2.13        +6  -0      rpm/rpmio/rpmxar.c
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: rpm/rpmio/rpmxar.c
  ============================================================================
  $ cvs diff -u -r2.12 -r2.13 rpmxar.c
  --- rpm/rpmio/rpmxar.c        26 Nov 2007 15:33:20 -0000      2.12
  +++ rpm/rpmio/rpmxar.c        6 Dec 2007 10:03:25 -0000       2.13
  @@ -149,13 +149,19 @@
   
   int rpmxarPush(rpmxar xar, const char * fn, unsigned char * b, size_t bsize)
   {
  +    int payload = !strcmp(fn, "Payload");
  +
   /[EMAIL PROTECTED]@*/
   if (_xar_debug)
   fprintf(stderr, "--> rpmxarPush(%p, %s) %p[%u] 
%02x%02x%02x%02x%02x%02x%02x%02x\n", xar, fn, b, (unsigned)bsize, b[0], b[1], 
b[2], b[3], b[4], b[5], b[6], b[7]);
   /[EMAIL PROTECTED]@*/
   
       if (xar->x && b != NULL) {
  +     if (payload) /* payload is already compressed */
  +         xar_opt_set(xar->x, XAR_OPT_COMPRESSION, XAR_OPT_VAL_NONE);
        xar->f = xar_add_frombuffer(xar->x, NULL, fn, (char *)b, bsize);
  +     if (payload) /* restore default xar compression */
  +         xar_opt_set(xar->x, XAR_OPT_COMPRESSION, XAR_OPT_VAL_GZIP);
        if (xar->f == NULL)
            return 2;
       }
  @@ .
______________________________________________________________________
RPM Package Manager                                    http://rpm5.org
CVS Sources Repository                                [email protected]

Reply via email to