From: Kostiantyn Kostiuk Date: Fri, 27 Mar 2026 13:43:48 +0000 (+0200) Subject: qom: Use g_ascii_strcasecmp instead of strcasecmp X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=261c09999bc0b3e6e5df70aabcb39cc551a0cb99;p=thirdparty%2Fqemu.git qom: Use g_ascii_strcasecmp instead of strcasecmp This is a change in semantics. g_ascii_strcasecmp() doesn't honour locale but strcasecmp() does. But this is OK for at least one reason: (1) QEMU always runs with the C locale so there's not an actual behaviour change here (2) we want the comparison on class names to be a plain ASCII one, not to do weird things with "I" in Turkish locales, so g_ascii_strcasecmp() is better as it's explicit about that Reviewed-by: Peter Maydell Signed-off-by: Kostiantyn Kostiuk Link: https://lore.kernel.org/r/20260327134401.270186-3-kkostiuk@redhat.com Signed-off-by: Paolo Bonzini --- diff --git a/qom/object.c b/qom/object.c index ff8ede8a328..e5c0c2f53ed 100644 --- a/qom/object.c +++ b/qom/object.c @@ -1193,8 +1193,8 @@ GSList *object_class_get_list(const char *implements_type, static gint object_class_cmp(gconstpointer a, gconstpointer b, gpointer d) { - return strcasecmp(object_class_get_name((ObjectClass *)a), - object_class_get_name((ObjectClass *)b)); + return g_ascii_strcasecmp(object_class_get_name((ObjectClass *)a), + object_class_get_name((ObjectClass *)b)); } GSList *object_class_get_list_sorted(const char *implements_type,