lib/rpmts.c: Ensure that we check both providename and filepaths

When looking up a missing dependencies, such as /bin/sh, we need to lookup
in both the providename and filepaths DB, not just the filepaths DB.

Upstream-Status: Pending

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>

Index: rpm-5.4.14/lib/rpmts.c
===================================================================
--- rpm-5.4.14.orig/lib/rpmts.c
+++ rpm-5.4.14/lib/rpmts.c
@@ -410,8 +410,8 @@ fprintf(stderr, "--> %s(%p,%p,%p)\n", __
 	if (sdb == NULL)
 	    continue;
 
-	/* Look for a matching Provides: in suggested universe. */
-	rpmtag = (*keyp == '/' ? RPMTAG_FILEPATHS : RPMTAG_PROVIDENAME);
+	rpmtag = RPMTAG_PROVIDENAME;
+       do {
 	mi = rpmmiInit(sdb, rpmtag, keyp, keylen);
 	while ((h = rpmmiNext(mi)) != NULL) {
 	    size_t hnamelen;
@@ -446,6 +446,15 @@ fprintf(stderr, "--> %s(%p,%p,%p)\n", __
 	    bhnamelen = hnamelen;
 	}
 	mi = rpmmiFree(mi);
+
+	if (bh == NULL && *keyp == '/' && rpmtag == RPMTAG_PROVIDENAME) {
+	   rpmtag = RPMTAG_FILEPATHS;
+	   continue;
+        }
+
+        break;
+      } while (1);
+
     }
 
     /* Is there a suggested resolution? */
