[Spice-devel] [spice-common v4 3/7] log: Use glib for logging

Christophe Fergeau cfergeau at redhat.com
Thu Jan 21 05:06:15 PST 2016


On Thu, Jan 21, 2016 at 07:29:59AM -0500, Frediano Ziglio wrote:
> > +            /* Make sure GLib default log handler will show the debug
> > messages. Messing with
> > +             * environment variables like this is ugly, but this only
> > happens when the legacy
> > +             * SPICE_DEBUG_LEVEL is used
> > +             */
> > +            debug_env = (char *)g_getenv("G_MESSAGES_DEBUG");
> > +            if (debug_env == NULL) {
> > +                g_setenv("G_MESSAGES_DEBUG", SPICE_LOG_DOMAIN, FALSE);
> > +            } else {
> > +                debug_env = g_strconcat(debug_env, ":", SPICE_LOG_DOMAIN,
> > NULL);
> > +                g_setenv("G_MESSAGES_DEBUG", SPICE_LOG_DOMAIN, FALSE);
> > +                g_free(debug_env);
> 
> A library should never set environment variable.

This is the only way I could find to keep SPICE_DEBUG_LEVEL keep working
as it used to even when g_debug() is used. This code is being careful to
only make somehow safe changes to that variable.
This environment variable is only set in a legacy case (ie one I'd like
to see go away), and this legacy case goes with a runtime warning
encouraging the user to switch to setting G_MESSAGES_DEBUG instead (in
which case we do not muck with env variables ourselves).
In my opinion, it's reasonable enough, especially without an alternative
to achieve that.

> > -void spice_logv(const char *log_domain,
> > -                SpiceLogLevel log_level,
> > -                const char *strloc,
> > -                const char *function,
> > -                const char *format,
> > -                va_list args) SPICE_ATTR_PRINTF(5, 0);
> > -
> 
> Sure does not break anything?

Not that I know of, I'll try rebuilding spice-gtk as I mainly tested
with spice-server.

Christophe
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/spice-devel/attachments/20160121/c8f87451/attachment.sig>


More information about the Spice-devel mailing list