From 9dd6786541dec0e1c759d8d8f9acba52cd0860fc Mon Sep 17 00:00:00 2001 From: Stefan Sauer Date: Sun, 11 Feb 2024 19:07:16 +0100 Subject: [PATCH] Use new g_memdup2 if available. This mostly addresses a deprecation warning. We can get rid of the ifdefs if we decide to simply bump the required version. --- src/gst/audio/plugin.c | 4 ++++ src/lib/core/song-io-native-bzt.c | 4 ++++ src/lib/core/song-io-native-xml.c | 4 ++++ src/ui/edit/main-page-patterns.c | 14 ++++++++++++-- 4 files changed, 24 insertions(+), 2 deletions(-) diff --git a/src/gst/audio/plugin.c b/src/gst/audio/plugin.c index 6506fd923..d4274b0e5 100644 --- a/src/gst/audio/plugin.c +++ b/src/gst/audio/plugin.c @@ -57,7 +57,11 @@ bt_g_param_spec_clone (GObjectClass * src_class, const gchar * src_name) g_type_query (G_PARAM_SPEC_TYPE (src), &query); /* this is pretty lame, we have no idea if we copy e.g. pointer fields */ +#if GLIB_CHECK_VERSION(2, 68, 0) + pspec = g_memdup2 (src, (gsize) query.instance_size); +#else pspec = g_memdup (src, query.instance_size); +#endif /* reset known fields, see g_param_spec_init() */ pspec->owner_type = 0; pspec->qdata = NULL; diff --git a/src/lib/core/song-io-native-bzt.c b/src/lib/core/song-io-native-bzt.c index 7104277e0..dbbf6d076 100644 --- a/src/lib/core/song-io-native-bzt.c +++ b/src/lib/core/song-io-native-bzt.c @@ -396,7 +396,11 @@ bt_song_io_native_bzt_save (gconstpointer const _self, gsf_off_t len = gsf_output_size (self->priv->output); const guint8 *mem = gsf_output_memory_get_bytes ( (GsfOutputMemory *) self->priv->output); +#if GLIB_CHECK_VERSION(2, 68, 0) + gpointer data = g_memdup2 (mem, (gsize) len); +#else gpointer data = g_memdup (mem, (guint) len); +#endif g_object_set ((gpointer) self, "data", data, "data-len", (guint) len, NULL); } diff --git a/src/lib/core/song-io-native-xml.c b/src/lib/core/song-io-native-xml.c index b00a3f175..15239323e 100644 --- a/src/lib/core/song-io-native-xml.c +++ b/src/lib/core/song-io-native-xml.c @@ -122,7 +122,11 @@ bt_song_io_native_xml_save (gconstpointer const _self, gpointer data; xmlDocDumpMemory (song_doc, &mem, (int *) &len); +#if GLIB_CHECK_VERSION(2, 68, 0) data = g_memdup2 (mem, len); +#else + data = g_memdup (mem, len); +#endif xmlFree (mem); g_object_set ((gpointer) self, "data", data, "data-len", len, NULL); } diff --git a/src/ui/edit/main-page-patterns.c b/src/ui/edit/main-page-patterns.c index b16e381d5..bb27daaf4 100644 --- a/src/ui/edit/main-page-patterns.c +++ b/src/ui/edit/main-page-patterns.c @@ -1819,12 +1819,22 @@ pattern_table_refresh (const BtMainPagePatterns * self) pid, j); group->num_columns = self->priv->voice_params; group->columns = +#if GLIB_CHECK_VERSION(2, 68, 0) + g_memdup2 (stamp->columns, + sizeof (BtPatternEditorColumn) * group->num_columns); +#else g_memdup (stamp->columns, - sizeof (BtPatternEditorColumn) * group->num_columns); + sizeof (BtPatternEditorColumn) * group->num_columns); +#endif for (i = 0; i < group->num_columns; i++) { group->columns[i].user_data = +#if GLIB_CHECK_VERSION(2, 68, 0) + g_memdup2 (group->columns[i].user_data, + sizeof (BtPatternEditorColumnConverters)); +#else g_memdup (group->columns[i].user_data, - sizeof (BtPatternEditorColumnConverters)); + sizeof (BtPatternEditorColumnConverters)); +#endif } group->width = 0; group++;