Convert build reqprov to headerPut()
authorPanu Matilainen <pmatilai@redhat.com>
Tue, 17 Jun 2008 09:56:53 +0000 (12:56 +0300)
committerPanu Matilainen <pmatilai@redhat.com>
Tue, 17 Jun 2008 09:56:53 +0000 (12:56 +0300)
- also changes index type to uint32_t instead of signed

build/reqprov.c
build/rpmbuild.h

index 273a78f..cd0b975 100644 (file)
 
 int addReqProv(rpmSpec spec, Header h, rpmTag tagN,
                const char * N, const char * EVR, rpmsenseFlags Flags,
-               int index)
+               uint32_t index)
 {
     rpmTag nametag = 0;
     rpmTag versiontag = 0;
     rpmTag flagtag = 0;
     rpmTag indextag = 0;
     rpmsenseFlags extra = RPMSENSE_ANY;
-    int xx;
+    struct rpmtd_s td;
     
     if (Flags & RPMSENSE_PROVIDES) {
        nametag = RPMTAG_PROVIDENAME;
@@ -65,15 +65,22 @@ int addReqProv(rpmSpec spec, Header h, rpmTag tagN,
     }
 
     /* Add this dependency. */
-    xx = headerAddOrAppendEntry(h, nametag, RPM_STRING_ARRAY_TYPE, &N, 1);
+    if (rpmtdFromStringArray(&td, nametag, &N, 1))
+       headerPut(h, &td, HEADERPUT_APPEND);
+    assert(rpmtdType(&td) == RPM_STRING_ARRAY_TYPE);
     if (flagtag) {
-       xx = headerAddOrAppendEntry(h, versiontag,
-                              RPM_STRING_ARRAY_TYPE, &EVR, 1);
-       xx = headerAddOrAppendEntry(h, flagtag,
-                              RPM_INT32_TYPE, &Flags, 1);
+       if (rpmtdFromStringArray(&td, versiontag, &EVR, 1))
+           headerPut(h, &td, HEADERPUT_APPEND);
+       assert(rpmtdType(&td) == RPM_STRING_ARRAY_TYPE);
+       if (rpmtdFromUint32(&td, flagtag, &Flags, 1))
+           headerPut(h, &td, HEADERPUT_APPEND);
+       assert(rpmtdType(&td) == RPM_INT32_TYPE);
+    }
+    if (indextag) {
+       if (rpmtdFromUint32(&td, indextag, &index, 1))
+           headerPut(h, &td, HEADERPUT_APPEND);
+       assert(rpmtdType(&td) == RPM_INT32_TYPE);
     }
-    if (indextag)
-       xx = headerAddOrAppendEntry(h, indextag, RPM_INT32_TYPE, &index, 1);
 
 exit:
     rpmdsFree(hds);
index a18afce..2e30370 100644 (file)
@@ -330,7 +330,7 @@ Package  freePackage(Package pkg);
  */
 int addReqProv(rpmSpec spec, Header h, rpmTag tagN,
                const char * N, const char * EVR, rpmsenseFlags Flags,
-               int index);
+               uint32_t index);
 
 /** \ingroup rpmbuild
  * Add rpmlib feature dependency.