Ask GpgME for path to gpg executable for manual key import.
This commit is contained in:
parent
37794f6a74
commit
61f7c3c5e7
|
@ -67,6 +67,23 @@ static GtkWidget *pgp_get_widget(MimeViewer *_viewer)
|
|||
return GTK_WIDGET(viewer->textview->vbox);
|
||||
}
|
||||
|
||||
static gchar *_get_gpg_executable_name()
|
||||
{
|
||||
gpgme_engine_info_t e;
|
||||
|
||||
if (!gpgme_get_engine_info(&e)) {
|
||||
while (e != NULL) {
|
||||
if (e->protocol == GPGME_PROTOCOL_OpenPGP
|
||||
&& e->file_name != NULL) {
|
||||
debug_print("Found gpg executable: '%s'\n", e->file_name);
|
||||
return e->file_name;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static void pgpview_show_mime_part(TextView *textview, MimeInfo *partinfo)
|
||||
{
|
||||
GtkTextView *text;
|
||||
|
@ -119,7 +136,9 @@ static void pgpview_show_mime_part(TextView *textview, MimeInfo *partinfo)
|
|||
}
|
||||
gpgme_get_key(ctx, sig->fpr, &key, 0);
|
||||
if (!key) {
|
||||
gchar *cmd = g_strdup_printf("gpg --no-tty --recv-keys %s", sig->fpr);
|
||||
gchar *gpgbin = _get_gpg_executable_name();
|
||||
gchar *cmd = g_strdup_printf("\"%s\" --no-tty --recv-keys %s",
|
||||
(gpgbin ? gpgbin : "gpg"), sig->fpr);
|
||||
AlertValue val = G_ALERTDEFAULT;
|
||||
if (!prefs_common_get_prefs()->work_offline) {
|
||||
val = alertpanel(_("Key import"),
|
||||
|
|
Loading…
Reference in a new issue