mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-22 01:21:53 -06:00
contrib/plugins: add compat for g_memdup2
We were premature if bumping this because some of our builds are still on older glibs. Just copy the compat handler for now and we can remove it later. Fixes:ee293103b0
(plugins: update lockstep to use g_memdup2) Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2161 Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20240729144414.830369-14-alex.bennee@linaro.org> (cherry picked from commit44e7948967
) Signed-off-by: Michael Tokarev <mjt@tls.msk.ru> Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2681 in 9.0.x
This commit is contained in:
parent
fe1f8cfad3
commit
f7840ef5fd
1 changed files with 25 additions and 0 deletions
|
@ -100,6 +100,31 @@ static void plugin_exit(qemu_plugin_id_t id, void *p)
|
|||
plugin_cleanup(id);
|
||||
}
|
||||
|
||||
/*
|
||||
* g_memdup has been deprecated in Glib since 2.68 and
|
||||
* will complain about it if you try to use it. However until
|
||||
* glib_req_ver for QEMU is bumped we make a copy of the glib-compat
|
||||
* handler.
|
||||
*/
|
||||
static inline gpointer g_memdup2_qemu(gconstpointer mem, gsize byte_size)
|
||||
{
|
||||
#if GLIB_CHECK_VERSION(2, 68, 0)
|
||||
return g_memdup2(mem, byte_size);
|
||||
#else
|
||||
gpointer new_mem;
|
||||
|
||||
if (mem && byte_size != 0) {
|
||||
new_mem = g_malloc(byte_size);
|
||||
memcpy(new_mem, mem, byte_size);
|
||||
} else {
|
||||
new_mem = NULL;
|
||||
}
|
||||
|
||||
return new_mem;
|
||||
#endif
|
||||
}
|
||||
#define g_memdup2(m, s) g_memdup2_qemu(m, s)
|
||||
|
||||
static void report_divergance(ExecState *us, ExecState *them)
|
||||
{
|
||||
DivergeState divrec = { log, 0 };
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue