Fix: source package already part of the transaction.
authorjbj <devnull@localhost>
Wed, 10 Apr 2002 22:10:13 +0000 (22:10 +0000)
committerjbj <devnull@localhost>
Wed, 10 Apr 2002 22:10:13 +0000 (22:10 +0000)
CVS patchset: 5388
CVS date: 2002/04/10 22:10:13

build.c
lib/psm.c
lib/rpminstall.c

diff --git a/build.c b/build.c
index 8543984..a2a8436 100644 (file)
--- a/build.c
+++ b/build.c
@@ -28,8 +28,6 @@ static int checkSpec(rpmTransactionSet ts, Header h)
      && !headerIsEntry(h, RPMTAG_CONFLICTNAME))
        return 0;
 
-    rc = rpmtransAddPackage(ts, h, NULL, 0, NULL);
-
     rc = rpmdepCheck(ts, &conflicts, &numConflicts);
     /*@-branchstate@*/
     if (rc == 0 && conflicts) {
index ab16588..7485895 100644 (file)
--- a/lib/psm.c
+++ b/lib/psm.c
@@ -485,7 +485,7 @@ rpmRC rpmInstallSourcePackage(rpmTransactionSet ts, FD_t fd,
        goto exit;
     }
 
-    (void) rpmtransAddPackage(ts, h, NULL, 0, NULL);
+     (void) rpmtransAddPackage(ts, h, NULL, 0, NULL);
 
     fi = fiNew(ts, fi, h, RPMTAG_BASENAMES, scareMem);
     h = headerFree(h, "InstallSourcePackage");
index 0b466fd..a248f4d 100644 (file)
@@ -19,6 +19,8 @@
 /*@access IDTX @*/
 /*@access IDT @*/
 
+extern int _rpmio_debug;
+
 /*@unchecked@*/
 static int hashesPrinted = 0;
 
@@ -173,6 +175,8 @@ void * rpmShowProgress(/*@null@*/ const void * arg,
     case RPMCALLBACK_UNINST_PROGRESS:
     case RPMCALLBACK_UNINST_START:
     case RPMCALLBACK_UNINST_STOP:
+    case RPMCALLBACK_UNPACK_ERROR:
+    case RPMCALLBACK_CPIO_ERROR:
        /* ignore */
        break;
     }
@@ -700,11 +704,13 @@ int rpmErase(rpmTransactionSet ts,
 }
 
 int rpmInstallSource(rpmTransactionSet ts, const char * arg,
-               const char ** specFile, const char ** cookie)
+               const char ** specFilePtr, const char ** cookie)
 {
     FD_t fd;
     int rc;
 
+fprintf(stderr, "*** rpmInstallSource(%p,%s,%p,%p)\n", ts, arg, specFilePtr, cookie);
+_rpmio_debug = -1;
     fd = Fopen(arg, "r.ufdio");
     if (fd == NULL || Ferror(fd)) {
        rpmMessage(RPMMESS_ERROR, _("cannot open %s: %s\n"), arg, Fstrerror(fd));
@@ -716,14 +722,14 @@ int rpmInstallSource(rpmTransactionSet ts, const char * arg,
        fprintf(stdout, _("Installing %s\n"), arg);
 
     {
-       rpmRC rpmrc = rpmInstallSourcePackage(ts, fd, specFile, cookie);
+       rpmRC rpmrc = rpmInstallSourcePackage(ts, fd, specFilePtr, cookie);
        rc = (rpmrc == RPMRC_OK ? 0 : 1);
     }
     if (rc != 0) {
        rpmMessage(RPMMESS_ERROR, _("%s cannot be installed\n"), arg);
        /*@-unqualifiedtrans@*/
-       if (specFile && *specFile)
-           *specFile = _free(*specFile);
+       if (specFilePtr && *specFilePtr)
+           *specFilePtr = _free(*specFilePtr);
        if (cookie && *cookie)
            *cookie = _free(*cookie);
        /*@=unqualifiedtrans@*/