[PATCH] gnome3: Redirect GLib logging messages to stderr
Kernc <[email protected]>
| Newsgroups | gmane.comp.encryption.gpg.devel |
|---|---|
| Message-ID | <CAFh6oAyA0jzmBJYJ6CRDkG3OYUpuGO4S=GkQvK_ETddcy11XDA@mail.gmail.com> |
By default, GLib/Gcr/libsecret outputs debug/info logging messages to stdout, but we use that as the Assuan channel, and outputting to it anything but the expected verbs breaks pinentry pipelines in confusing ways. It is unknown whether a similar patch is needed for gtk-2 or other flavors via the 'CLEARPASSPHRASE' command, nor if G_MESSAGES_DEBUG needs unsetting from the environment. An old user reports Gtk-warnings even with pinentry-qt, but their issue needs more verification. https://web.archive.org/web/20260629091849/https://dev.gnupg.org/T4144.html Care must be placed in who inherits our Assuan fds and what they do with them. GnuPG-bug-id: 4144 GnuPG-bug-id: 2243 GnuPG-bug-id: 2397 Signed-off-by: Kernc <[email protected]> --- gnome3/pinentry-gnome3.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/gnome3/pinentry-gnome3.c b/gnome3/pinentry-gnome3.c index 7f21d6f..3692f49 100644 --- a/gnome3/pinentry-gnome3.c +++ b/gnome3/pinentry-gnome3.c @@ -518,6 +518,13 @@ main (int argc, char *argv[]) { pinentry_init (PGMNAME); +/* Prevent logging messages escaping to stdout (our Assuan channel). */ +#if GLIB_CHECK_VERSION (2, 68, 0) + g_log_writer_default_set_use_stderr (TRUE); +#else + g_unsetenv ("G_MESSAGES_DEBUG"); +#endif + #ifdef FALLBACK_CURSES if (!getenv ("DBUS_SESSION_BUS_ADDRESS")) { -- 2.47.3 _______________________________________________ Gnupg-devel mailing list [email protected] https://lists.gnupg.org/mailman/listinfo/gnupg-devel