From d44583e8bd45872b9396815057d6f1b0e1218098 Mon Sep 17 00:00:00 2001 From: Thierry Vignaud Date: Thu, 14 Jun 2012 18:23:59 +0000 Subject: (update_provides_files) fix support for RPMTAG_OLDFILENAMES it is broken since commit r250325 by pixel on Tue Dec 9 2008 (4 years!!!): "- adapt to rpm 4.6 changes: headerGetEntry -> headerGet" previously 'list' was initialized the right way note: still needed for the testsuite --- URPM.xs | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/URPM.xs b/URPM.xs index bf896b2..285d483 100644 --- a/URPM.xs +++ b/URPM.xs @@ -1000,7 +1000,6 @@ static void update_provides_files(const URPM__Package pkg, HV *provides) { if (pkg->h) { STRLEN len; - char **list = NULL; unsigned int i; struct rpmtd_s td_baseNames, td_dirIndexes, td_dirNames; @@ -1030,15 +1029,16 @@ update_provides_files(const URPM__Package pkg, HV *provides) { free(dirNames); } else { struct rpmtd_s td; - headerGet(pkg->h, RPMTAG_OLDFILENAMES, &td, HEADERGET_DEFAULT); - if (list) { + + if (headerGet(pkg->h, RPMTAG_OLDFILENAMES, &td, HEADERGET_DEFAULT)) { for (i = 0; i < rpmtdCount(&td); i++) { - len = strlen(list[i]); + const char *s = rpmtdNextString(&td); + len = strlen(s); - update_provide_entry(list[i], len, 0, 0, pkg, provides); + update_provide_entry(s, len, 0, 0, pkg, provides); } - free(list); + rpmtdFreeData(&td); } } } -- cgit v1.2.1