mirror of
https://github.com/moparisthebest/pacman
synced 2024-12-23 00:08:50 -05:00
Add some verbosity to _alpm_db_read.
Name and version are computed from "/var/lib/pacman/..." pathname. And the %NAME% and %VERSION% fields from the desc file were not even read. So now, when we read the desc file, we make sure the %NAME% and %VERSION% fields are consistent. Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu> Signed-off-by: Xavier Chantry <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
This commit is contained in:
parent
ad54b28680
commit
da1c11cc30
@ -387,7 +387,23 @@ int _alpm_db_read(pmdb_t *db, pmpkg_t *info, pmdbinfrq_t inforeq)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
_alpm_strtrim(line);
|
_alpm_strtrim(line);
|
||||||
if(strcmp(line, "%FILENAME%") == 0) {
|
if(strcmp(line, "%NAME%") == 0) {
|
||||||
|
if(fgets(line, 512, fp) == NULL) {
|
||||||
|
goto error;
|
||||||
|
}
|
||||||
|
if(strcmp(_alpm_strtrim(line), info->name) != 0) {
|
||||||
|
_alpm_log(PM_LOG_ERROR, _("%s database is inconsistent: name "
|
||||||
|
"mismatch on package %s\n"), db->treename, info->name);
|
||||||
|
}
|
||||||
|
} else if(strcmp(line, "%VERSION%") == 0) {
|
||||||
|
if(fgets(line, 512, fp) == NULL) {
|
||||||
|
goto error;
|
||||||
|
}
|
||||||
|
if(strcmp(_alpm_strtrim(line), info->version) != 0) {
|
||||||
|
_alpm_log(PM_LOG_ERROR, _("%s database is inconsistent: version "
|
||||||
|
"mismatch on package %s\n"), db->treename, info->name);
|
||||||
|
}
|
||||||
|
} else if(strcmp(line, "%FILENAME%") == 0) {
|
||||||
if(fgets(line, 512, fp) == NULL) {
|
if(fgets(line, 512, fp) == NULL) {
|
||||||
goto error;
|
goto error;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user