summaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
authorlukefromdc <lukefromdc@hushmail.com>2025-01-13 22:39:13 -0500
committerLuke from DC <lukefromdc@hushmail.com>2025-02-14 05:41:49 +0000
commit9b74dc16d852a40d37f7ce6c236406959fd013e5 (patch)
treea45c0cc58d15ed3e6e79d1558c2dc8b0b941e290 /plugins
parenta0f0a74ebe9a2eb72d4ead7dec507b8973a0ea42 (diff)
downloadmate-sensors-applet-master.tar.bz2
mate-sensors-applet-master.tar.xz
Fix an invalid pointer crash with glib 2.83.2HEADmaster
The typecast to non-const gchar produced invalid pointer errors on free() with glib 2.83.2
Diffstat (limited to 'plugins')
-rw-r--r--plugins/udisks2/udisks2-plugin.c19
1 files changed, 5 insertions, 14 deletions
diff --git a/plugins/udisks2/udisks2-plugin.c b/plugins/udisks2/udisks2-plugin.c
index 39d2d9a..7149bab 100644
--- a/plugins/udisks2/udisks2-plugin.c
+++ b/plugins/udisks2/udisks2-plugin.c
@@ -304,16 +304,15 @@ syslog(LOG_ERR, "propdict2 type: %s", g_variant_print(propdict2, TRUE));
#endif
/* get data */
- gchar *id = NULL;
- gchar *model = NULL;
+ const gchar *id = NULL;
+ const gchar *model = NULL;
gboolean smartenabled;
gdouble temp;
- /* NULL, bc we don't care about the length of the string
- * typecast bc g_variant_get_string() returns const char* */
- id = (gchar *) g_variant_get_string (g_variant_lookup_value (propdict, "Id", G_VARIANT_TYPE_STRING), NULL);
- model = (gchar *) g_variant_get_string (g_variant_lookup_value (propdict, "Model", G_VARIANT_TYPE_STRING), NULL);
+ /* NULL, bc we don't care about the length of the string*/
+ id = g_variant_get_string (g_variant_lookup_value (propdict, "Id", G_VARIANT_TYPE_STRING), NULL);
+ model = g_variant_get_string (g_variant_lookup_value (propdict, "Model", G_VARIANT_TYPE_STRING), NULL);
smartenabled = g_variant_get_boolean (g_variant_lookup_value (propdict2, "SmartEnabled", G_VARIANT_TYPE_BOOLEAN));
temp = g_variant_get_double (g_variant_lookup_value (propdict2, "SmartTemperature", G_VARIANT_TYPE_DOUBLE));
@@ -366,14 +365,6 @@ syslog(LOG_ERR, "No temp data for device: %s\n", key);
g_debug ("No temp data for device: %s\n", key);
}
-
-#ifdef UD2PD
-syslog(LOG_ERR, "b4 free1");
-#endif
-
- g_free (id);
- g_free (model);
-
}
#ifdef UD2PD