mirror of
https://github.com/qemu/qemu.git
synced 2026-02-04 05:35:39 +00:00
tests/vhost-user-bridge.c: Fix const qualifier build errors with recent glibc
A recent change in glibc 2.42.9000 [1] changes the return type of
strstr() and other string functions to be 'const char *' when the
input is a 'const char *'. This breaks the build in :
../tests/vhost-user-bridge.c: In function ‘vubr_parse_host_port’:
../tests/vhost-user-bridge.c:749:15: error: initialization discards ‘const’ qualifier from pointer target type [-Werror=discarded-qualifiers]
749 | char *p = strchr(buf, ':');
| ^~~~~~
Fix this by using the glib g_strsplit() routine instead of strdup().
[1] https://sourceware.org/git/?p=glibc.git;a=commit;h=cd748a63ab1a7ae846175c532a3daab341c62690
Suggested-by: Peter Maydell <peter.maydell@linaro.org>
Acked-by: Yodel Eldar <yodel.eldar@yodel.dev>
Tested-by: Yodel Eldar <yodel.eldar@yodel.dev>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Link: https://lore.kernel.org/qemu-devel/20251215101937.281722-3-clg@redhat.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
This commit is contained in:
@@ -746,14 +746,12 @@ vubr_run(VubrDev *dev)
|
|||||||
static int
|
static int
|
||||||
vubr_parse_host_port(const char **host, const char **port, const char *buf)
|
vubr_parse_host_port(const char **host, const char **port, const char *buf)
|
||||||
{
|
{
|
||||||
char *p = strchr(buf, ':');
|
g_auto(GStrv) tokens = g_strsplit(buf, ":", 2);
|
||||||
|
if (!tokens[0] || !tokens[1]) {
|
||||||
if (!p) {
|
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
*p = '\0';
|
*host = g_steal_pointer(&tokens[0]);
|
||||||
*host = strdup(buf);
|
*port = g_steal_pointer(&tokens[1]);
|
||||||
*port = strdup(p + 1);
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user