aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNIIBE Yutaka <[email protected]>2021-11-24 01:43:38 +0000
committerWerner Koch <[email protected]>2023-08-28 06:42:13 +0000
commitdccc471de40be843e24f534f7399033ea76c29de (patch)
tree49af72eaa30db69b6daed5f03a6b274d1dbc7c09
parentsm: Fix use of value NONE in gnupg_isotime_t type. (diff)
downloadgnupg-dccc471de40be843e24f534f7399033ea76c29de.tar.gz
gnupg-dccc471de40be843e24f534f7399033ea76c29de.zip
gpg: Fix format_keyid.
* g10/keyid.c (format_keyid): Allocate buffer earlier. -- Signed-off-by: NIIBE Yutaka <[email protected]> (cherry picked from commit a9be9f4e6e6d451698afa3d4780a53ed3718b30b)
-rw-r--r--g10/keyid.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/g10/keyid.c b/g10/keyid.c
index 22375ca46..4fc1622c1 100644
--- a/g10/keyid.c
+++ b/g10/keyid.c
@@ -326,11 +326,12 @@ keyid_copy (u32 *dest, const u32 *src)
char *
format_keyid (u32 *keyid, int format, char *buffer, int len)
{
- char tmp[KEYID_STR_SIZE];
if (! buffer)
{
- buffer = tmp;
- len = sizeof (tmp);
+ len = KEYID_STR_SIZE;
+ buffer = xtrymalloc (len);
+ if (!buffer)
+ return NULL;
}
if (format == KF_DEFAULT)
@@ -365,8 +366,6 @@ format_keyid (u32 *keyid, int format, char *buffer, int len)
BUG();
}
- if (buffer == tmp)
- return xstrdup (buffer);
return buffer;
}