mirror of
git://git.gnupg.org/gnupg.git
synced 2024-12-22 10:19:57 +01:00
gpg: Don't call keybox_compress when KEYDB_RESOURCE_FLAG_READONLY.
* g10/keydb.c (keydb_add_resource): Check the FLAGS to call keybox_compress. -- GnuPG-bug-id: 6811 Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
This commit is contained in:
parent
2be53b214d
commit
591a53d716
26
g10/keydb.c
26
g10/keydb.c
@ -746,28 +746,30 @@ keydb_add_resource (const char *url, unsigned int flags)
|
||||
err = gpg_error (GPG_ERR_RESOURCE_LIMIT);
|
||||
else
|
||||
{
|
||||
KEYBOX_HANDLE kbxhd;
|
||||
|
||||
if ((flags & KEYDB_RESOURCE_FLAG_PRIMARY))
|
||||
primary_keydb = token;
|
||||
all_resources[used_resources].type = rt;
|
||||
all_resources[used_resources].u.kb = NULL; /* Not used here */
|
||||
all_resources[used_resources].token = token;
|
||||
|
||||
/* Do a compress run if needed and no other user is
|
||||
* currently using the keybox. */
|
||||
kbxhd = keybox_new_openpgp (token, 0);
|
||||
if (kbxhd)
|
||||
if (!(flags & KEYDB_RESOURCE_FLAG_READONLY))
|
||||
{
|
||||
if (!keybox_lock (kbxhd, 1, 0))
|
||||
KEYBOX_HANDLE kbxhd;
|
||||
|
||||
/* Do a compress run if needed and no other user is
|
||||
* currently using the keybox. */
|
||||
kbxhd = keybox_new_openpgp (token, 0);
|
||||
if (kbxhd)
|
||||
{
|
||||
keybox_compress (kbxhd);
|
||||
keybox_lock (kbxhd, 0, 0);
|
||||
if (!keybox_lock (kbxhd, 1, 0))
|
||||
{
|
||||
keybox_compress (kbxhd);
|
||||
keybox_lock (kbxhd, 0, 0);
|
||||
}
|
||||
|
||||
keybox_release (kbxhd);
|
||||
}
|
||||
|
||||
keybox_release (kbxhd);
|
||||
}
|
||||
|
||||
used_resources++;
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user