diff options
| -rw-r--r-- | meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/0001-Fix-memory-leak-and-reduce-cpu-load-slightly.patch | 121 | ||||
| -rw-r--r-- | meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/xfce4-cpufreq-plugin-1.2.1-gcc10-common.patch | 41 | ||||
| -rw-r--r-- | meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.2.5.bb (renamed from meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.2.2.bb) | 6 |
3 files changed, 1 insertions, 167 deletions
diff --git a/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/0001-Fix-memory-leak-and-reduce-cpu-load-slightly.patch b/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/0001-Fix-memory-leak-and-reduce-cpu-load-slightly.patch deleted file mode 100644 index ae8bc5279d..0000000000 --- a/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/0001-Fix-memory-leak-and-reduce-cpu-load-slightly.patch +++ /dev/null | |||
| @@ -1,121 +0,0 @@ | |||
| 1 | From f86486e128f62ed5a531163535d11f0aa0268928 Mon Sep 17 00:00:00 2001 | ||
| 2 | From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com> | ||
| 3 | Date: Sun, 5 May 2019 20:45:26 +0200 | ||
| 4 | Subject: [PATCH] Fix memory-leak and reduce cpu-load slightly | ||
| 5 | MIME-Version: 1.0 | ||
| 6 | Content-Type: text/plain; charset=UTF-8 | ||
| 7 | Content-Transfer-Encoding: 8bit | ||
| 8 | |||
| 9 | * when setting font remove old css provider befor setting new | ||
| 10 | -> fix memory leak | ||
| 11 | * do call cpufreq_label_set_font only on init and when font was changed | ||
| 12 | -> reduce cpu-load | ||
| 13 | |||
| 14 | Fixes https://bugzilla.xfce.org/show_bug.cgi?id=15218 | ||
| 15 | |||
| 16 | Upstream-Status: Submitted [1] | ||
| 17 | |||
| 18 | [1] https://bugzilla.xfce.org/attachment.cgi?id=8492 | ||
| 19 | |||
| 20 | Signed-off-by: Andreas Müller <schnitzeltony@gmail.com> | ||
| 21 | |||
| 22 | --- | ||
| 23 | panel-plugin/xfce4-cpufreq-configure.c | 4 ++++ | ||
| 24 | panel-plugin/xfce4-cpufreq-plugin.c | 13 +++++++++++-- | ||
| 25 | panel-plugin/xfce4-cpufreq-plugin.h | 2 ++ | ||
| 26 | 3 files changed, 17 insertions(+), 2 deletions(-) | ||
| 27 | |||
| 28 | diff --git a/panel-plugin/xfce4-cpufreq-configure.c b/panel-plugin/xfce4-cpufreq-configure.c | ||
| 29 | index 1205fc9..48e72ff 100644 | ||
| 30 | --- a/panel-plugin/xfce4-cpufreq-configure.c | ||
| 31 | +++ b/panel-plugin/xfce4-cpufreq-configure.c | ||
| 32 | @@ -85,7 +85,10 @@ button_fontname_update(GtkWidget *button, gboolean update_plugin) | ||
| 33 | } | ||
| 34 | |||
| 35 | if (update_plugin) | ||
| 36 | + { | ||
| 37 | + cpufreq_label_set_font (); | ||
| 38 | cpufreq_update_plugin (TRUE); | ||
| 39 | + } | ||
| 40 | } | ||
| 41 | |||
| 42 | |||
| 43 | @@ -155,6 +158,7 @@ button_fontcolor_clicked (GtkWidget *button, void *data) | ||
| 44 | gtk_color_chooser_get_rgba (GTK_COLOR_CHOOSER (button), color); | ||
| 45 | cpuFreq->options->fontcolor = gdk_rgba_to_string (color); | ||
| 46 | g_free (color); | ||
| 47 | + cpufreq_label_set_font (); | ||
| 48 | cpufreq_update_plugin (TRUE); | ||
| 49 | } | ||
| 50 | |||
| 51 | diff --git a/panel-plugin/xfce4-cpufreq-plugin.c b/panel-plugin/xfce4-cpufreq-plugin.c | ||
| 52 | index e886121..8d7c9e5 100644 | ||
| 53 | --- a/panel-plugin/xfce4-cpufreq-plugin.c | ||
| 54 | +++ b/panel-plugin/xfce4-cpufreq-plugin.c | ||
| 55 | @@ -44,6 +44,7 @@ cpufreq_label_set_font (void) | ||
| 56 | { | ||
| 57 | gchar *css = NULL, *css_font = NULL, *css_color = NULL; | ||
| 58 | GtkCssProvider *provider; | ||
| 59 | + GtkStyleContext *context; | ||
| 60 | PangoFontDescription *font; | ||
| 61 | |||
| 62 | if (G_UNLIKELY (cpuFreq->label == NULL)) | ||
| 63 | @@ -76,11 +77,17 @@ cpufreq_label_set_font (void) | ||
| 64 | if (css) | ||
| 65 | { | ||
| 66 | provider = gtk_css_provider_new (); | ||
| 67 | + context = GTK_STYLE_CONTEXT (gtk_widget_get_style_context (GTK_WIDGET (cpuFreq->label))); | ||
| 68 | + | ||
| 69 | + if (currentProvider) | ||
| 70 | + gtk_style_context_remove_provider (context, currentProvider); | ||
| 71 | |||
| 72 | gtk_css_provider_load_from_data (provider, css, -1, NULL); | ||
| 73 | gtk_style_context_add_provider ( | ||
| 74 | - GTK_STYLE_CONTEXT (gtk_widget_get_style_context (GTK_WIDGET (cpuFreq->label))), | ||
| 75 | + context, | ||
| 76 | GTK_STYLE_PROVIDER (provider), GTK_STYLE_PROVIDER_PRIORITY_APPLICATION); | ||
| 77 | + | ||
| 78 | + currentProvider = provider; | ||
| 79 | } | ||
| 80 | |||
| 81 | g_free (css); | ||
| 82 | @@ -420,7 +427,6 @@ cpufreq_update_plugin (gboolean reset_label_size) | ||
| 83 | |||
| 84 | if (cpuFreq->layout_changed) | ||
| 85 | { | ||
| 86 | - cpufreq_label_set_font (); | ||
| 87 | cpufreq_widgets_layout (); | ||
| 88 | } | ||
| 89 | |||
| 90 | @@ -601,6 +607,7 @@ cpufreq_widgets (void) | ||
| 91 | |||
| 92 | gtk_widget_show_all (cpuFreq->button); | ||
| 93 | |||
| 94 | + cpufreq_label_set_font (); | ||
| 95 | cpufreq_update_plugin (TRUE); | ||
| 96 | } | ||
| 97 | |||
| 98 | @@ -775,6 +782,8 @@ cpufreq_construct (XfcePanelPlugin *plugin) | ||
| 99 | { | ||
| 100 | xfce_textdomain (GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR, "UTF-8"); | ||
| 101 | |||
| 102 | + currentProvider = NULL; | ||
| 103 | + | ||
| 104 | cpuFreq = g_new0 (CpuFreqPlugin, 1); | ||
| 105 | cpuFreq->options = g_new0 (CpuFreqPluginOptions, 1); | ||
| 106 | cpuFreq->plugin = plugin; | ||
| 107 | diff --git a/panel-plugin/xfce4-cpufreq-plugin.h b/panel-plugin/xfce4-cpufreq-plugin.h | ||
| 108 | index a6895e4..6338698 100644 | ||
| 109 | --- a/panel-plugin/xfce4-cpufreq-plugin.h | ||
| 110 | +++ b/panel-plugin/xfce4-cpufreq-plugin.h | ||
| 111 | @@ -95,6 +95,8 @@ typedef struct | ||
| 112 | |||
| 113 | extern CpuFreqPlugin *cpuFreq; | ||
| 114 | |||
| 115 | +GtkCssProvider *currentProvider; | ||
| 116 | + | ||
| 117 | G_BEGIN_DECLS | ||
| 118 | |||
| 119 | void | ||
| 120 | --- | ||
| 121 | 2.20.1 | ||
diff --git a/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/xfce4-cpufreq-plugin-1.2.1-gcc10-common.patch b/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/xfce4-cpufreq-plugin-1.2.1-gcc10-common.patch deleted file mode 100644 index 95605f83ae..0000000000 --- a/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin/xfce4-cpufreq-plugin-1.2.1-gcc10-common.patch +++ /dev/null | |||
| @@ -1,41 +0,0 @@ | |||
| 1 | Fix build with -fno-common | ||
| 2 | |||
| 3 | Part of Patch from https://src.fedoraproject.org/rpms/xfce4-cpufreq-plugin/raw/master/f/xfce4-cpufreq-plugin-1.2.1-gcc10-common.patch | ||
| 4 | |||
| 5 | Upstream-Status: Pending | ||
| 6 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
| 7 | |||
| 8 | Refresh for xfce4-cpufreq-plugin 1.2.2. | ||
| 9 | |||
| 10 | Signed-off-by: Kai Kang <kai.kang@windriver.com> | ||
| 11 | |||
| 12 | --- | ||
| 13 | panel-plugin/xfce4-cpufreq-plugin.c | 1 + | ||
| 14 | panel-plugin/xfce4-cpufreq-plugin.h | 2 +- | ||
| 15 | 2 files changed, 2 insertions(+), 1 deletion(-) | ||
| 16 | |||
| 17 | diff --git a/panel-plugin/xfce4-cpufreq-plugin.c b/panel-plugin/xfce4-cpufreq-plugin.c | ||
| 18 | index 1e33492..ce9e302 100644 | ||
| 19 | --- a/panel-plugin/xfce4-cpufreq-plugin.c | ||
| 20 | +++ b/panel-plugin/xfce4-cpufreq-plugin.c | ||
| 21 | @@ -38,6 +38,7 @@ | ||
| 22 | #endif /* __linux__ */ | ||
| 23 | |||
| 24 | CpuFreqPlugin *cpuFreq; | ||
| 25 | +GtkCssProvider *currentProvider; | ||
| 26 | |||
| 27 | void | ||
| 28 | cpufreq_label_set_font (void) | ||
| 29 | diff --git a/panel-plugin/xfce4-cpufreq-plugin.h b/panel-plugin/xfce4-cpufreq-plugin.h | ||
| 30 | index 8cd0d33..7dbccef 100644 | ||
| 31 | --- a/panel-plugin/xfce4-cpufreq-plugin.h | ||
| 32 | +++ b/panel-plugin/xfce4-cpufreq-plugin.h | ||
| 33 | @@ -95,7 +95,7 @@ typedef struct | ||
| 34 | |||
| 35 | extern CpuFreqPlugin *cpuFreq; | ||
| 36 | |||
| 37 | -GtkCssProvider *currentProvider; | ||
| 38 | +extern GtkCssProvider *currentProvider; | ||
| 39 | |||
| 40 | G_BEGIN_DECLS | ||
| 41 | |||
diff --git a/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.2.2.bb b/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.2.5.bb index 3b7b9ec5da..8fef520271 100644 --- a/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.2.2.bb +++ b/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.2.5.bb | |||
| @@ -5,8 +5,4 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=1f6f1c0be32491a0c8d2915607a28f36" | |||
| 5 | 5 | ||
| 6 | inherit xfce-panel-plugin | 6 | inherit xfce-panel-plugin |
| 7 | 7 | ||
| 8 | SRC_URI[sha256sum] = "500f04b8d857c96da8c8c7a4eecba30a903d0fce6e35a05e674529e43b47e498" | 8 | SRC_URI[sha256sum] = "f8bd728de2d33e7ab30c682716b1cac4776b9884ce48b03fd7c32c9b24b13498" |
| 9 | |||
| 10 | SRC_URI += "file://0001-Fix-memory-leak-and-reduce-cpu-load-slightly.patch \ | ||
| 11 | file://xfce4-cpufreq-plugin-1.2.1-gcc10-common.patch \ | ||
| 12 | " | ||
