# HG changeset patch # User J. Ali Harlow # Date 1416223824 0 # Node ID 9816b7a56c23054d5e9ffaf6983f7762e4e8f527 # Parent e10f418d8e1d81c974fef18e3b2139a18d65baed Fix long-standing bug causing install prefixes not to be recorded diff -r e10f418d8e1d -r 9816b7a56c23 plover/packageset.c --- a/plover/packageset.c Sat Nov 15 19:10:51 2014 +0000 +++ b/plover/packageset.c Mon Nov 17 11:30:24 2014 +0000 @@ -241,17 +241,19 @@ struct razor_relocations *relocations,struct razor_importer *importer, PloverPackage *package,GError **error) { + int i; struct razor_property_iterator *prop_iter; struct razor_file_iterator *file_iter; struct razor_rpm *rpm; struct razor_property *prop; const char *name,*version,*arch,*summary,*desc,*url,*license; + const char *install_prefix; + const char *const *prefixes; uint32_t flags; rpm=plover_repository_open_rpm(repository,package,error); if (!rpm) return FALSE; razor_relocations_set_rpm(relocations,rpm); - razor_rpm_close(rpm); name=plover_package_get_name(package); version=plover_package_get_version(package); arch=plover_package_get_arch(package); @@ -261,6 +263,14 @@ url=plover_package_get_URL(package); license=plover_package_get_license(package); razor_importer_add_details(importer,summary,desc,url,license); + razor_rpm_get_details(rpm,RAZOR_DETAIL_PREFIXES,&prefixes, + RAZOR_DETAIL_LAST); + for(i=0;prefixes && prefixes[i];i++) + { + install_prefix=razor_relocations_apply(relocations,prefixes[i]); + razor_importer_add_install_prefix(importer,install_prefix); + } + razor_rpm_close(rpm); prop_iter=plover_package_property_iterator_create(package); while (razor_property_iterator_next(prop_iter,&prop,&name,&flags,&version)) razor_importer_add_property(importer,name,flags,version);