version 1.44, 2000/04/11 12:26:30
|
version 1.45, 2000/07/13 14:30:15
|
Line 265 rpmRessPtr rpmRequAdd(char *requ, char *
|
Line 265 rpmRessPtr rpmRequAdd(char *requ, char *
|
|
|
if (!rpmHashInitialized) rpmHashInitialize(); |
if (!rpmHashInitialized) rpmHashInitialize(); |
|
|
hash = rpmGetRessHash(requv); |
hash = rpmGetRessHash(requ); |
cur = rpmRessHashTable[hash]; |
cur = rpmRessHashTable[hash]; |
|
|
/* search for the resource */ |
/* search for the resource */ |
while (cur != NULL) { |
while (cur != NULL) { |
if (!strcmp(requ, cur->name)){ |
if (!strcmp(requ, cur->name)){ |
if ((cur->version != NULL) && (!strcmp(requv, cur->version))) { |
goto found; |
if ((cur->flags != NULL) && (!strcmp(requf, cur->flags))) |
|
goto found; |
|
} |
|
} |
} |
cur = cur->nextHash; |
cur = cur->nextHash; |
} |
} |
Line 374 int rpmPtrCmpFunc(const rpmData **a, con
|
Line 371 int rpmPtrCmpFunc(const rpmData **a, con
|
return(currentCmpFunc(*a, *b)); |
return(currentCmpFunc(*a, *b)); |
} |
} |
|
|
rpmDataPtr rpmGenericSort(rpmCmpFunc rpmCmp, rpmDataPtr list, int installed) { |
void rpmGenericSort(rpmCmpFunc rpmCmp, rpmDataPtr *base, int installed) { |
int i, nb_elems = 0; |
int i, nb_elems = 0; |
|
rpmDataPtr list; |
rpmDataPtr *array = NULL; |
rpmDataPtr *array = NULL; |
int max_elems = 1024; |
int max_elems = 1024; |
|
|
if (list == NULL) return(NULL); |
if (base == NULL) |
|
return; |
|
if (*base == NULL) |
|
return; |
|
list = *base; |
|
|
array = (rpmDataPtr *) debugMalloc(max_elems * sizeof(rpmDataPtr)); |
array = (rpmDataPtr *) debugMalloc(max_elems * sizeof(rpmDataPtr)); |
if (array == NULL) { |
if (array == NULL) { |
Line 418 rpmDataPtr rpmGenericSort(rpmCmpFunc rpm
|
Line 420 rpmDataPtr rpmGenericSort(rpmCmpFunc rpm
|
array[nb_elems - 1]->next = NULL; |
array[nb_elems - 1]->next = NULL; |
|
|
list = array[0]; |
list = array[0]; |
|
*base = list; |
debugFree(array); |
debugFree(array); |
return(list); |
|
} |
} |
|
|
/* |
/* |
Line 492 int rpmGroupCmp(const rpmData *a, const
|
Line 494 int rpmGroupCmp(const rpmData *a, const
|
/* |
/* |
* sort all the RPMs by Group. |
* sort all the RPMs by Group. |
*/ |
*/ |
rpmDataPtr rpmGroupSort(rpmDataPtr list, int installed) { |
void rpmGroupSort(rpmDataPtr *list, int installed) { |
rpmDataPtr res; |
rpmGenericSort(rpmGroupCmp, list, installed); |
|
|
res = rpmGenericSort(rpmGroupCmp, list, installed); |
|
rpmGenericSortSoftware(rpmGroupCmp, installed); |
rpmGenericSortSoftware(rpmGroupCmp, installed); |
return(res); |
|
} |
} |
|
|
/* |
/* |
Line 516 int rpmDistribCmp(const rpmData *a, cons
|
Line 515 int rpmDistribCmp(const rpmData *a, cons
|
/* |
/* |
* sort all the RPMs by Distribution. |
* sort all the RPMs by Distribution. |
*/ |
*/ |
rpmDataPtr rpmDistribSort(rpmDataPtr list, int installed) { |
void rpmDistribSort(rpmDataPtr *list, int installed) { |
rpmDataPtr res; |
rpmGenericSort(rpmDistribCmp, list, installed); |
|
|
res = rpmGenericSort(rpmDistribCmp, list, installed); |
|
return(res); |
|
} |
} |
|
|
/* |
/* |
Line 541 int rpmVendorCmp(const rpmData *a, const
|
Line 537 int rpmVendorCmp(const rpmData *a, const
|
/* |
/* |
* sort all the RPMs by Vendor. |
* sort all the RPMs by Vendor. |
*/ |
*/ |
rpmDataPtr rpmVendorSort(rpmDataPtr list, int installed) { |
void rpmVendorSort(rpmDataPtr *list, int installed) { |
rpmDataPtr res; |
rpmGenericSort(rpmVendorCmp, list, installed); |
|
|
res = rpmGenericSort(rpmVendorCmp, list, installed); |
|
return(res); |
|
} |
} |
|
|
/* |
/* |
Line 564 int rpmDateCmp(const rpmData *a, const r
|
Line 557 int rpmDateCmp(const rpmData *a, const r
|
/* |
/* |
* sort all the RPMs by Date. |
* sort all the RPMs by Date. |
*/ |
*/ |
rpmDataPtr rpmDateSort(rpmDataPtr list, int installed) { |
void rpmDateSort(rpmDataPtr *list, int installed) { |
rpmDataPtr res; |
rpmGenericSort(rpmDateCmp, list, installed); |
|
|
res = rpmGenericSort(rpmDateCmp, list, installed); |
|
return(res); |
|
} |
} |
|
|
/* Compare two version or release numbers. If there are leading |
/* Compare two version or release numbers. If there are leading |
Line 659 int rpmNameCmp(const rpmData *a, const r
|
Line 649 int rpmNameCmp(const rpmData *a, const r
|
/* |
/* |
* sort all the RPMs by Name. |
* sort all the RPMs by Name. |
*/ |
*/ |
rpmDataPtr rpmNameSort(rpmDataPtr list, int installed) { |
void rpmNameSort(rpmDataPtr *list, int installed) { |
rpmDataPtr res; |
rpmGenericSort(rpmNameCmp, list, installed); |
|
|
res = rpmGenericSort(rpmNameCmp, list, installed); |
|
rpmGenericSortSoftware(rpmNameCmp, installed); |
rpmGenericSortSoftware(rpmNameCmp, installed); |
return(res); |
|
} |
} |
|
|
/* |
/* |
Line 1262 void rpmDestroyRealRoot(rpmRealDirPtr di
|
Line 1249 void rpmDestroyRealRoot(rpmRealDirPtr di
|
void rpmdataCleanup(void) { |
void rpmdataCleanup(void) { |
int i; |
int i; |
|
|
|
fprintf(stderr, "rpmdataCleanup\n"); |
|
|
rpmDirListFree(&dirList); |
rpmDirListFree(&dirList); |
rpmDataListFree(&rpmSoftwareList); |
rpmDataListFree(&rpmSoftwareList); |
rpmRessListFree(&ressList); |
rpmRessListFree(&ressList); |