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:   21-Nov-2007 01:25:05
  Branch: HEAD                             Handle: 2007112100250301

  Modified files:
    rpm                     CHANGES
    rpm/lib                 rpmgi.c
    rpm/perl                RPM_Header.xs
    rpm/python              header-py.c
    rpm/rpmdb               hdrinline.h pkgio.c

  Log:
    - jbj: convert+remove headerRead() from the API, use rpmpkgRead
    instead.

  Summary:
    Revision    Changes     Path
    1.1860      +1  -0      rpm/CHANGES
    2.41        +9  -1      rpm/lib/rpmgi.c
    1.13        +12 -1      rpm/perl/RPM_Header.xs
    1.79        +35 -5      rpm/python/header-py.c
    1.35        +0  -12     rpm/rpmdb/hdrinline.h
    1.48        +12 -0      rpm/rpmdb/pkgio.c
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: rpm/CHANGES
  ============================================================================
  $ cvs diff -u -r1.1859 -r1.1860 CHANGES
  --- rpm/CHANGES       20 Nov 2007 23:50:55 -0000      1.1859
  +++ rpm/CHANGES       21 Nov 2007 00:25:03 -0000      1.1860
  @@ -1,4 +1,5 @@
   5.0a2 -> 5.0a3:
  +    - jbj: convert+remove headerRead() from the API, use rpmpkgRead instead.
       - jbj: rebase rpmParseState_e +256 to permit rpmRC to be returned too.
       - jbj: remove headerWrite() from the public API, use rpmpkgWrite instead.
       - jbj: convert last headerWrite to use rpmpkgWrite instead.
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/lib/rpmgi.c
  ============================================================================
  $ cvs diff -u -r2.40 -r2.41 rpmgi.c
  --- rpm/lib/rpmgi.c   19 Nov 2007 18:57:54 -0000      2.40
  +++ rpm/lib/rpmgi.c   21 Nov 2007 00:25:04 -0000      2.41
  @@ -672,7 +672,15 @@
            path = _free(path);
        }
        if (gi->fd != NULL) {
  -         Header h = headerRead(gi->fd);
  +         Header h = NULL;
  +         const char item[] = "Header";
  +         const char * msg = NULL;
  +         rpmrc = rpmpkgRead(item, gi->fd, &h, &msg);
  +         if (rpmrc != RPMRC_OK) {
  +             rpmlog(RPMLOG_ERR, "%s: %s: %s\n", "headerRead", item, msg);
  +             h = NULL;
  +         }
  +         msg = _free(msg);
            if (h != NULL) {
                if (!(gi->flags & RPMGI_NOHEADER))
                    gi->h = headerLink(h);
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/perl/RPM_Header.xs
  ============================================================================
  $ cvs diff -u -r1.12 -r1.13 RPM_Header.xs
  --- rpm/perl/RPM_Header.xs    20 Nov 2007 23:02:50 -0000      1.12
  +++ rpm/perl/RPM_Header.xs    21 Nov 2007 00:25:04 -0000      1.13
  @@ -38,7 +38,18 @@
       Header header;
       PPCODE:
       if (fp && (fd = fdDup(fileno(fp)))) {
  -        while ((header = headerRead(fd))) {
  +     while (1) {
  +         const char item[] = "Header";
  +         const char * msg = NULL;
  +         header = NULL;
  +         rpmRC rc = rpmpkgRead(item, fd, &header, &msg);
  +         if (rc != RPMRC_OK) {
  +             rpmlog(RPMLOG_ERR, "%s: %s: %s\n", "headerRead", item, msg);
  +             header = NULL;
  +         }
  +         msg = _free(msg);
  +         if (header == NULL)
  +             break;
               if (callback != NULL && SvROK(callback)) {
                   ENTER;
                   SAVETMPS;
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/python/header-py.c
  ============================================================================
  $ cvs diff -u -r1.78 -r1.79 header-py.c
  --- rpm/python/header-py.c    17 Nov 2007 18:11:45 -0000      1.78
  +++ rpm/python/header-py.c    21 Nov 2007 00:25:04 -0000      1.79
  @@ -692,7 +692,13 @@
   
       list = PyList_New(0);
       Py_BEGIN_ALLOW_THREADS
  -    h = headerRead(fd);
  +    {   const char item[] = "Header";
  +     const char * msg = NULL;
  +     rpmRC rc = rpmpkgRead(item, fd, &h, &msg);
  +     if (rc != RPMRC_OK)
  +         rpmlog(RPMLOG_ERR, "%s: %s: %s\n", "headerRead", item, msg);
  +     msg = _free(msg);
  +    }
       Py_END_ALLOW_THREADS
   
       while (h) {
  @@ -707,7 +713,13 @@
        h = headerFree(h);      /* XXX ref held by hdr */
   
        Py_BEGIN_ALLOW_THREADS
  -     h = headerRead(fd);
  +     {   const char item[] = "Header";
  +         const char * msg = NULL;
  +         rpmRC rc = rpmpkgRead(item, fd, &h, &msg);
  +         if (rc != RPMRC_OK)
  +             rpmlog(RPMLOG_ERR, "%s: %s: %s\n", "headerRead", item, msg);
  +         msg = _free(msg);
  +     }
        Py_END_ALLOW_THREADS
       }
   
  @@ -778,7 +790,13 @@
       int xx;
   
       Py_BEGIN_ALLOW_THREADS
  -    h = headerRead(fd);
  +    {   const char item[] = "Header";
  +     const char * msg = NULL;
  +     rpmRC rc = rpmpkgRead(item, fd, &h, &msg);
  +     if (rc != RPMRC_OK)
  +         rpmlog(RPMLOG_ERR, "%s: %s: %s\n", "headerRead", item, msg);
  +     msg = _free(msg);
  +    }
       Py_END_ALLOW_THREADS
   
       while (h) {
  @@ -826,7 +844,13 @@
        h = headerFree(h);
   
        Py_BEGIN_ALLOW_THREADS
  -     h = headerRead(fd);
  +     {   const char item[] = "Header";
  +         const char * msg = NULL;
  +         rpmRC rc = rpmpkgRead(item, fd, &h, &msg);
  +         if (rc != RPMRC_OK)
  +             rpmlog(RPMLOG_ERR, "%s: %s: %s\n", "headerRead", item, msg);
  +         msg = _free(msg);
  +     }
        Py_END_ALLOW_THREADS
       }
   
  @@ -890,7 +914,13 @@
       }
   
       Py_BEGIN_ALLOW_THREADS
  -    h = headerRead(fd);
  +    {   const char item[] = "Header";
  +     const char * msg = NULL;
  +     rpmRC rc = rpmpkgRead(item, fd, &h, &msg);
  +     if (rc != RPMRC_OK)
  +         rpmlog(RPMLOG_ERR, "%s: %s: %s\n", "headerRead", item, msg);
  +     msg = _free(msg);
  +    }
       Py_END_ALLOW_THREADS
   
       Fclose(fd);
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/rpmdb/hdrinline.h
  ============================================================================
  $ cvs diff -u -r1.34 -r1.35 hdrinline.h
  --- rpm/rpmdb/hdrinline.h     20 Nov 2007 23:02:50 -0000      1.34
  +++ rpm/rpmdb/hdrinline.h     21 Nov 2007 00:25:04 -0000      1.35
  @@ -192,18 +192,6 @@
   }
   
   /** \ingroup header
  - * Read (and load) header from file handle.
  - * @param _fd                file handle
  - * @return           header (or NULL on error)
  - */
  -/[EMAIL PROTECTED]@*/ static inline
  -/[EMAIL PROTECTED]@*/ Header headerRead(void * _fd)
  -     /[EMAIL PROTECTED] _fd @*/
  -{
  -    return hdrVec->hdrread(_fd);
  -}
  -
  -/** \ingroup header
    * Check if tag is in header.
    * @param h          header
    * @param tag                tag
  @@ .
  patch -p0 <<'@@ .'
  Index: rpm/rpmdb/pkgio.c
  ============================================================================
  $ cvs diff -u -r1.47 -r1.48 pkgio.c
  --- rpm/rpmdb/pkgio.c 20 Nov 2007 23:02:50 -0000      1.47
  +++ rpm/rpmdb/pkgio.c 21 Nov 2007 00:25:04 -0000      1.48
  @@ -53,6 +53,18 @@
   
   /*===============================================*/
   /** \ingroup header
  + * Read (and load) header from file handle.
  + * @param _fd                file handle
  + * @return           header (or NULL on error)
  + */
  +/[EMAIL PROTECTED]@*/ static inline
  +/[EMAIL PROTECTED]@*/ Header headerRead(void * _fd)
  +     /[EMAIL PROTECTED] _fd @*/
  +{
  +    return hdrVec->hdrread(_fd);
  +}
  +
  +/** \ingroup header
    * Write (with unload) header to file handle.
    * @param _fd                file handle
    * @param h          header
  @@ .
______________________________________________________________________
RPM Package Manager                                    http://rpm5.org
CVS Sources Repository                                rpm-cvs@rpm5.org

Reply via email to