1
0
mirror of https://github.com/moparisthebest/pacman synced 2024-12-22 07:48:50 -05:00

support ALPM_SIG_USE_DEFAULT for file siglevels

This brings file siglevels in line with how db siglevels are handled.

Signed-off-by: Andrew Gregory <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
This commit is contained in:
Andrew Gregory 2013-10-28 09:58:28 -04:00 committed by Allan McRae
parent 88df07717d
commit af284d5fdb
2 changed files with 11 additions and 5 deletions

View File

@ -650,7 +650,11 @@ int SYMEXPORT alpm_option_set_local_file_siglevel(alpm_handle_t *handle,
alpm_siglevel_t SYMEXPORT alpm_option_get_local_file_siglevel(alpm_handle_t *handle)
{
CHECK_HANDLE(handle, return -1);
return handle->localfilesiglevel;
if(handle->localfilesiglevel & ALPM_SIG_USE_DEFAULT) {
return handle->siglevel;
} else {
return handle->localfilesiglevel;
}
}
int SYMEXPORT alpm_option_set_remote_file_siglevel(alpm_handle_t *handle,
@ -670,7 +674,11 @@ int SYMEXPORT alpm_option_set_remote_file_siglevel(alpm_handle_t *handle,
alpm_siglevel_t SYMEXPORT alpm_option_get_remote_file_siglevel(alpm_handle_t *handle)
{
CHECK_HANDLE(handle, return -1);
return handle->remotefilesiglevel;
if(handle->remotefilesiglevel & ALPM_SIG_USE_DEFAULT) {
return handle->siglevel;
} else {
return handle->remotefilesiglevel;
}
}
/* vim: set ts=2 sw=2 noet: */

View File

@ -405,9 +405,7 @@ static int process_siglevel(alpm_list_t *values, alpm_siglevel_t *storage,
static void merge_siglevel(alpm_siglevel_t *base, alpm_siglevel_t *over)
{
alpm_siglevel_t level = *over;
if(level & ALPM_SIG_USE_DEFAULT) {
level = *base;
} else {
if(!(level & ALPM_SIG_USE_DEFAULT)) {
if(!(level & ALPM_SIG_PACKAGE_SET)) {
level |= *base & ALPM_SIG_PACKAGE;
level |= *base & ALPM_SIG_PACKAGE_OPTIONAL;