aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2025-11-14 12:20:52 +0000
committerWerner Koch <[email protected]>2025-11-14 12:20:52 +0000
commit94fa3c2b25a1979bb838c7d9f9f74375072f4efe (patch)
treeecfb19643c75219380fe1d9b66816eb3b8c85533 /src
parentdoc: Add DCO for Chandler Davis (diff)
downloadgpgme-94fa3c2b25a1979bb838c7d9f9f74375072f4efe.tar.gz
gpgme-94fa3c2b25a1979bb838c7d9f9f74375072f4efe.zip
Treat empty DISPLAY envvar as unset.HEADmaster
* src/engine-gpg.c (gpg_new): Do not pass option --display if DISPLAY is set to the empty string. * src/engine-gpgsm.c (gpgsm_new): Likewiese for sending the display option. * src/engine-g13.c (g13_new): Ditto. * src/engine-assuan.c (llass_new): Ditto. * src/engine-uiserver.c (uiserver_new): Ditto. -- GnuPG-bug-id: 7919
Diffstat (limited to 'src')
-rw-r--r--src/engine-assuan.c5
-rw-r--r--src/engine-g13.c4
-rw-r--r--src/engine-gpg.c4
-rw-r--r--src/engine-gpgsm.c4
-rw-r--r--src/engine-uiserver.c4
5 files changed, 16 insertions, 5 deletions
diff --git a/src/engine-assuan.c b/src/engine-assuan.c
index e96313ff..654d41c8 100644
--- a/src/engine-assuan.c
+++ b/src/engine-assuan.c
@@ -265,7 +265,7 @@ llass_new (void **engine, const char *file_name, const char *home_dir,
err = _gpgme_getenv ("DISPLAY", &dft_display);
if (err)
goto leave;
- if (dft_display)
+ if (dft_display && *dft_display)
{
if (gpgrt_asprintf (&optstr, "OPTION display=%s", dft_display) < 0)
{
@@ -281,8 +281,11 @@ llass_new (void **engine, const char *file_name, const char *home_dir,
if (err)
goto leave;
}
+ else
+ free (dft_display);
}
+
if (llass->opt.gpg_agent)
err = _gpgme_getenv ("GPG_TTY", &env_tty);
diff --git a/src/engine-g13.c b/src/engine-g13.c
index e30c1834..c37800e6 100644
--- a/src/engine-g13.c
+++ b/src/engine-g13.c
@@ -268,7 +268,7 @@ g13_new (void **engine, const char *file_name, const char *home_dir,
err = _gpgme_getenv ("DISPLAY", &dft_display);
if (err)
goto leave;
- if (dft_display)
+ if (dft_display && *dft_display)
{
if (gpgrt_asprintf (&optstr, "OPTION display=%s", dft_display) < 0)
{
@@ -284,6 +284,8 @@ g13_new (void **engine, const char *file_name, const char *home_dir,
if (err)
goto leave;
}
+ else
+ free (dft_display);
err = _gpgme_getenv ("GPG_TTY", &env_tty);
if (isatty (1) || env_tty || err)
diff --git a/src/engine-gpg.c b/src/engine-gpg.c
index c6c5c4e6..4cc4dd83 100644
--- a/src/engine-gpg.c
+++ b/src/engine-gpg.c
@@ -697,7 +697,7 @@ gpg_new (void **engine, const char *file_name, const char *home_dir,
rc = _gpgme_getenv ("DISPLAY", &dft_display);
if (rc)
goto leave;
- if (dft_display)
+ if (dft_display && *dft_display)
{
rc = add_gpg_arg_with_value (gpg, "--display=", dft_display, 0);
@@ -705,6 +705,8 @@ gpg_new (void **engine, const char *file_name, const char *home_dir,
if (rc)
goto leave;
}
+ else
+ free (dft_display);
rc = _gpgme_getenv ("GPG_TTY", &env_tty);
if (isatty (1) || env_tty || rc)
diff --git a/src/engine-gpgsm.c b/src/engine-gpgsm.c
index ff77c8fc..d464aeed 100644
--- a/src/engine-gpgsm.c
+++ b/src/engine-gpgsm.c
@@ -474,7 +474,7 @@ gpgsm_new (void **engine, const char *file_name, const char *home_dir,
err = _gpgme_getenv ("DISPLAY", &dft_display);
if (err)
goto leave;
- if (dft_display)
+ if (dft_display && *dft_display)
{
if (gpgrt_asprintf (&optstr, "OPTION display=%s", dft_display) < 0)
{
@@ -490,6 +490,8 @@ gpgsm_new (void **engine, const char *file_name, const char *home_dir,
if (err)
goto leave;
}
+ else
+ free (dft_display);
err = _gpgme_getenv ("GPG_TTY", &env_tty);
if (isatty (1) || env_tty || err)
diff --git a/src/engine-uiserver.c b/src/engine-uiserver.c
index 6c89082e..aec07f30 100644
--- a/src/engine-uiserver.c
+++ b/src/engine-uiserver.c
@@ -314,7 +314,7 @@ uiserver_new (void **engine, const char *file_name, const char *home_dir,
err = _gpgme_getenv ("DISPLAY", &dft_display);
if (err)
goto leave;
- if (dft_display)
+ if (dft_display && *dft_display)
{
if (gpgrt_asprintf (&optstr, "OPTION display=%s", dft_display) < 0)
{
@@ -330,6 +330,8 @@ uiserver_new (void **engine, const char *file_name, const char *home_dir,
if (err)
goto leave;
}
+ else
+ free (dft_display);
err = _gpgme_getenv ("GPG_TTY", &env_tty);
if (isatty (1) || env_tty || err)