summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2021-03-25 08:56:11 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2021-03-25 13:32:39 +1000
commit06c1088342a349d7494dd8d86a7eca63e936494d (patch)
tree08816d493c110226e742ac0690026280e351a012
parent70e6090c4683065ae07f131adb5638a39ae9ee22 (diff)
downloadlibwacom-06c1088342a349d7494dd8d86a7eca63e936494d.tar.gz
Use g_memdup2 when we have it (meson only)
Check if we have g_memdup2 and where we don't have it, alias back to g_memdup() which is now deprecated in glib 2.68 and later. This is meson only, if you're running glib 2.68 from 2021, you can build with a modern buildsystem too. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-rw-r--r--libwacom/libwacom.c12
-rw-r--r--meson.build3
2 files changed, 11 insertions, 4 deletions
diff --git a/libwacom/libwacom.c b/libwacom/libwacom.c
index 3d8d140..6b21fbb 100644
--- a/libwacom/libwacom.c
+++ b/libwacom/libwacom.c
@@ -36,6 +36,10 @@
#include <linux/input-event-codes.h>
+#if !HAVE_G_MEMDUP2
+#define g_memdup2 g_memdup
+#endif
+
static const WacomDevice *
libwacom_get_device(const WacomDeviceDatabase *db, const char *match)
{
@@ -333,12 +337,12 @@ libwacom_copy(const WacomDevice *device)
d->ring_num_modes = device->ring_num_modes;
d->ring2_num_modes = device->ring2_num_modes;
d->num_styli = device->num_styli;
- d->supported_styli = g_memdup (device->supported_styli, sizeof(int) * device->num_styli);
+ d->supported_styli = g_memdup2 (device->supported_styli, sizeof(int) * device->num_styli);
d->num_leds = device->num_leds;
- d->status_leds = g_memdup (device->status_leds, sizeof(WacomStatusLEDs) * device->num_leds);
+ d->status_leds = g_memdup2 (device->status_leds, sizeof(WacomStatusLEDs) * device->num_leds);
d->num_buttons = device->num_buttons;
- d->buttons = g_memdup (device->buttons, sizeof(WacomButtonFlags) * device->num_buttons);
- d->button_codes = g_memdup (device->button_codes, sizeof(int) * device->num_buttons);
+ d->buttons = g_memdup2 (device->buttons, sizeof(WacomButtonFlags) * device->num_buttons);
+ d->button_codes = g_memdup2 (device->button_codes, sizeof(int) * device->num_buttons);
return d;
}
diff --git a/meson.build b/meson.build
index d3d2c0c..8a3189d 100644
--- a/meson.build
+++ b/meson.build
@@ -59,6 +59,9 @@ includes_src = include_directories('libwacom')
# config.h
config_h = configuration_data()
+config_h.set10('HAVE_G_MEMDUP2',
+ cc.has_function('g_memdup2',
+ dependencies: dep_glib))
#################### libwacom.so ########################
src_libwacom = [