+ /* maybe it's not installable and thus not in whatprovides. do a slow search */
+ if (repo)
+ {
+ Solvable *s;
+ FOR_REPO_SOLVABLES(repo, p, s)
+ {
+ if (s->name != nid || s->evr != evrid)
+ continue;
+ if (arch && s->arch != arch)
+ continue;
+ return p;
+ }
+ }
+ else
+ {
+ FOR_POOL_SOLVABLES(p)
+ {
+ Solvable *s = pool->solvables + p;
+ if (s->name != nid || s->evr != evrid)
+ continue;
+ if (arch && s->arch != arch)
+ continue;
+ return p;
+ }
+ }