[OE-core] [thud][PATCH v2] createrepo-c: Fix setup of logging (log domains)

Zheng, Ruoqin zhengrq.fnst at cn.fujitsu.com
Wed Dec 19 07:12:06 UTC 2018


Ping

--------------------------------------------------
Zheng Ruoqin
Nanjing Fujitsu Nanda Software Tech. Co., Ltd.(FNST)
ADDR.: No.6 Wenzhu Road, Software Avenue,
       Nanjing, 210012, China
MAIL : zhengrq.fnst at cn.fujistu.com


> -----Original Message-----
> From: Zheng, Ruoqin/郑 若钦
> Sent: Tuesday, December 11, 2018 6:57 PM
> To: openembedded-core at lists.openembedded.org
> Cc: Zheng, Ruoqin/郑 若钦 <zhengrq.fnst at cn.fujitsu.com>
> Subject: [OE-core][thud][PATCH v2] createrepo-c: Fix setup of logging (log
> domains)
> 
> New debug messages were added into GLib library. These messages come from
> the "GLib" log domain and were not hidden in the standard and quiet mode of
> the application.
> This fix hides log messages regardless on source log domain.
> 
> Backport from 80810f04f2de6bae6e394f52ad9cdd2189862f74.
> 
> Signed-off-by: Zheng Ruoqin <zhengrq.fnst at cn.fujitsu.com>
> ---
>  ...etup-of-logging-log-domains-RhBug-1645897.patch | 73
> ++++++++++++++++++++++
>  .../createrepo-c/createrepo-c_git.bb               |  1 +
>  2 files changed, 74 insertions(+)
>  create mode 100644 meta/recipes-devtools/createrepo-c/createrepo-c/0001-
> Fix-setup-of-logging-log-domains-RhBug-1645897.patch
> 
> diff --git a/meta/recipes-devtools/createrepo-c/createrepo-c/0001-Fix-setup-of-
> logging-log-domains-RhBug-1645897.patch b/meta/recipes-devtools/createrepo-
> c/createrepo-c/0001-Fix-setup-of-logging-log-domains-RhBug-1645897.patch
> new file mode 100644
> index 0000000..6de9c05
> --- /dev/null
> +++ b/meta/recipes-devtools/createrepo-c/createrepo-c/0001-Fix-setup-of-
> +++ logging-log-domains-RhBug-1645897.patch
> @@ -0,0 +1,73 @@
> +From 80810f04f2de6bae6e394f52ad9cdd2189862f74 Mon Sep 17 00:00:00 2001
> +From: Jaroslav Rohel <jrohel at redhat.com>
> +Date: Fri, 9 Nov 2018 07:35:13 +0100
> +Subject: [PATCH] Fix setup of logging (log domains) (RhBug:1645897)
> +
> +New debug messages were added into GLib library. These messages come
> +from the "GLib" log domain and were not hidden in the standard and
> +quiet mode of the application.
> +This fix hides log messages regardless on source log domain.
> +
> +Upstream-Status: Backport
> +
> +Signed-off-by: Zheng Ruoqin <zhengrq.fnst at cn.fujitsu.com>
> +---
> + src/createrepo_shared.c | 19 ++++++-------------
> + src/misc.c              |  5 ++++-
> + 2 files changed, 10 insertions(+), 14 deletions(-)
> +
> +diff --git a/src/createrepo_shared.c b/src/createrepo_shared.c index
> +8a26787..7cb8ba8 100644
> +--- a/src/createrepo_shared.c
> ++++ b/src/createrepo_shared.c
> +@@ -270,24 +270,17 @@ cr_lock_repo(const gchar *repo_dir,  void
> +cr_setup_logging(gboolean quiet, gboolean verbose)  {
> +-    g_log_set_default_handler (cr_log_fn, NULL);
> +-
> +     if (quiet) {
> +         // Quiet mode
> +-        GLogLevelFlags levels = G_LOG_LEVEL_MESSAGE | G_LOG_LEVEL_INFO |
> +-                                G_LOG_LEVEL_DEBUG | G_LOG_LEVEL_WARNING;
> +-        g_log_set_handler(NULL, levels, cr_null_log_fn, NULL);
> +-        g_log_set_handler("C_CREATEREPOLIB", levels, cr_null_log_fn, NULL);
> ++        GLogLevelFlags hidden_levels = G_LOG_LEVEL_MESSAGE |
> G_LOG_LEVEL_INFO |
> ++                                       G_LOG_LEVEL_DEBUG | G_LOG_LEVEL_WARNING;
> ++        g_log_set_default_handler (cr_log_fn,
> ++ GINT_TO_POINTER(hidden_levels));
> +     } else if (verbose) {
> +         // Verbose mode
> +-        GLogLevelFlags levels = G_LOG_LEVEL_MESSAGE | G_LOG_LEVEL_INFO |
> +-                                G_LOG_LEVEL_DEBUG | G_LOG_LEVEL_WARNING;
> +-        g_log_set_handler(NULL, levels, cr_log_fn, NULL);
> +-        g_log_set_handler("C_CREATEREPOLIB", levels, cr_log_fn, NULL);
> ++        g_log_set_default_handler (cr_log_fn, GINT_TO_POINTER(0));
> +     } else {
> +         // Standard mode
> +-        GLogLevelFlags levels = G_LOG_LEVEL_DEBUG;
> +-        g_log_set_handler(NULL, levels, cr_null_log_fn, NULL);
> +-        g_log_set_handler("C_CREATEREPOLIB", levels, cr_null_log_fn, NULL);
> ++        GLogLevelFlags hidden_levels = G_LOG_LEVEL_DEBUG;
> ++        g_log_set_default_handler (cr_log_fn,
> ++ GINT_TO_POINTER(hidden_levels));
> +     }
> + }
> +diff --git a/src/misc.c b/src/misc.c
> +index 9937480..9549a44 100644
> +--- a/src/misc.c
> ++++ b/src/misc.c
> +@@ -912,8 +912,11 @@ void
> + cr_log_fn(const gchar *log_domain,
> +           GLogLevelFlags log_level,
> +           const gchar *message,
> +-          G_GNUC_UNUSED gpointer user_data)
> ++          gpointer user_data)
> + {
> ++    gint hidden_log_levels = GPOINTER_TO_INT(user_data);
> ++    if (log_level & hidden_log_levels)
> ++        return;
> +     switch(log_level) {
> +         case G_LOG_LEVEL_ERROR:
> +             if (log_domain) g_printerr("%s: ", log_domain);
> +--
> +1.8.3.1
> +
> diff --git a/meta/recipes-devtools/createrepo-c/createrepo-c_git.bb
> b/meta/recipes-devtools/createrepo-c/createrepo-c_git.bb
> index 2960811..08766b3 100644
> --- a/meta/recipes-devtools/createrepo-c/createrepo-c_git.bb
> +++ b/meta/recipes-devtools/createrepo-c/createrepo-c_git.bb
> @@ -7,6 +7,7 @@ LIC_FILES_CHKSUM =
> "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
>  SRC_URI = "git://github.com/rpm-software-management/createrepo_c \
>             file://0001-Do-not-set-PYTHON_INSTALL_DIR-by-running-python.patch \
>             file://0001-Correctly-install-the-shared-library.patch \
> +
> + file://0001-Fix-setup-of-logging-log-domains-RhBug-1645897.patch \
>             "
> 
>  PV = "0.11.1+git${SRCPV}"
> --
> 2.7.4





More information about the Openembedded-core mailing list