reports.c: fix links to Required by: packages in html pages

This commit is contained in:
Silvan Calarco 2013-01-10 13:01:44 +01:00
parent 55afaf208c
commit abc188b260

View File

@ -1554,12 +1554,10 @@ generateHTMLFiles(struct configTag *ct, int arch)
fprintf(fout,"%s",currheaderlist->require[i]->resolved->name); fprintf(fout,"%s",currheaderlist->require[i]->resolved->name);
} else if (currheaderlist->require[i]->resolved->numproviders == 1) { } else if (currheaderlist->require[i]->resolved->numproviders == 1) {
// single provider // single provider
if ((ct->repository_level == 0) || if (currheaderlist->require[i]->resolved->provider[0]->sourceheader) {
(currheaderlist->require[i]->resolved->provider[0]->sourceheader &&
currheaderlist->require[i]->resolved->provider[0]->altrepository == ct->repository_level)) {
fprintf(fout,"<a href=\"%stag=%s&amp;pkg=%s.%s\">%s</a>", fprintf(fout,"<a href=\"%stag=%s&amp;pkg=%s.%s\">%s</a>",
ct->configdefaults->url_prefix, ct->configdefaults->url_prefix,
ct->tag, ct->repository[currheaderlist->require[i]->resolved->provider[0]->altrepository]->tag,
currheaderlist->require[i]->resolved->provider[0]->name, currheaderlist->require[i]->resolved->provider[0]->name,
ct->arch[arch], ct->arch[arch],
currheaderlist->require[i]->resolved->name); currheaderlist->require[i]->resolved->name);
@ -1571,12 +1569,10 @@ generateHTMLFiles(struct configTag *ct, int arch)
logmsg(LOG_DEBUG,"Requirement %s has multiple providers",currheaderlist->require[i]->resolved->name); logmsg(LOG_DEBUG,"Requirement %s has multiple providers",currheaderlist->require[i]->resolved->name);
fprintf(fout,"<i>%s</i>(",currheaderlist->require[i]->resolved->name); fprintf(fout,"<i>%s</i>(",currheaderlist->require[i]->resolved->name);
for (j = 0; j < currheaderlist->require[i]->resolved->numproviders; j++) { for (j = 0; j < currheaderlist->require[i]->resolved->numproviders; j++) {
if ((ct->repository_level == 0) || if (currheaderlist->require[i]->resolved->provider[j]->sourceheader)
(currheaderlist->require[i]->resolved->provider[j]->sourceheader &&
currheaderlist->require[i]->resolved->provider[j]->altrepository == ct->repository_level))
fprintf(fout,"<a href=\"%stag=%s&amp;pkg=%s.%s\">%s</a>", fprintf(fout,"<a href=\"%stag=%s&amp;pkg=%s.%s\">%s</a>",
ct->configdefaults->url_prefix, ct->configdefaults->url_prefix,
ct->tag, ct->repository[currheaderlist->require[i]->resolved->provider[j]->altrepository]->tag,
currheaderlist->require[i]->resolved->provider[j]->name, currheaderlist->require[i]->resolved->provider[j]->name,
ct->arch[arch], ct->arch[arch],
currheaderlist->require[i]->resolved->provider[j]->name); currheaderlist->require[i]->resolved->provider[j]->name);
@ -1665,12 +1661,11 @@ generateHTMLFiles(struct configTag *ct, int arch)
auxheaderlist = ct->headerlist[arch]; auxheaderlist = ct->headerlist[arch];
while (auxheaderlist) { while (auxheaderlist) {
if (auxheaderlist != currheaderlist) if (auxheaderlist != currheaderlist)
found = 0;
for (i = 0; i < auxheaderlist->requirecount; i++) { for (i = 0; i < auxheaderlist->requirecount; i++) {
if (auxheaderlist->require[i]->resolved && if (auxheaderlist->require[i]->resolved) {
(auxheaderlist->require[i]->resolved->numproviders == 1) && for (j = 0; j < auxheaderlist->require[i]->resolved->numproviders; j++) {
!strcmp(auxheaderlist->require[i]->resolved->provider[0]->name, if (!strcmp(auxheaderlist->require[i]->resolved->provider[j]->name, currheaderlist->name)) {
currheaderlist->name)) {
if ((ct->repository_level == 0) || auxheaderlist->altrepository == ct->repository_level) {
fprintf(fout, fprintf(fout,
"<a href=\"%stag=%s&amp;pkg=%s.%s\">%s(%s)</a> ", "<a href=\"%stag=%s&amp;pkg=%s.%s\">%s(%s)</a> ",
ct->configdefaults->url_prefix, ct->configdefaults->url_prefix,
@ -1679,13 +1674,13 @@ generateHTMLFiles(struct configTag *ct, int arch)
ct->arch[arch], ct->arch[arch],
auxheaderlist->name, auxheaderlist->name,
ct->arch[arch]); ct->arch[arch]);
} else found = 1;
{
fprintf(fout,"%s\n",auxheaderlist->name);
} }
break; if (found) break;
} }
} }
if (found) break;
}
auxheaderlist = auxheaderlist->next; auxheaderlist = auxheaderlist->next;
} }
fprintf(fout, "</font></td></tr>\n"); fprintf(fout, "</font></td></tr>\n");