diff options
-rw-r--r-- | g10/misc.c | 5 | ||||
-rw-r--r-- | g10/photoid.c | 5 |
2 files changed, 10 insertions, 0 deletions
diff --git a/g10/misc.c b/g10/misc.c index c7107be06..a606d5364 100644 --- a/g10/misc.c +++ b/g10/misc.c @@ -922,6 +922,11 @@ pct_expando (ctrl_t ctrl, const char *string,struct expando_args *args) u32 pk_keyid[2]={0,0},sk_keyid[2]={0,0}; char *ret=NULL; + /* The parser below would return NULL for an empty string, thus we + * catch it here. Also catch NULL here. */ + if (!string || !*string) + return xstrdup (""); + if(args->pk) keyid_from_pk(args->pk,pk_keyid); diff --git a/g10/photoid.c b/g10/photoid.c index 8a4436b8b..592d5e484 100644 --- a/g10/photoid.c +++ b/g10/photoid.c @@ -670,6 +670,11 @@ show_photos (ctrl_t ctrl, const struct user_attribute *attrs, int count, command = pct_expando (ctrl, opt.photo_viewer,&args); if(!command) goto fail; + if (!*command) + { + xfree (command); + goto fail; + } name = xmalloc (1 + 16 + strlen(EXTSEP_S) + strlen (image_type_to_string (args.imagetype, 0))); |