gsturi: Sort by feature name to break a feature rank tie

This matches autoplug in other places such as decodebin, otherwise we
will pick "randomly" based on the order in which plugins are
registered, which is mostly dependent on the order in which readdir()
returns items.

So let's make it predictable.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6342>
This commit is contained in:
Nirbheek Chauhan 2024-02-27 18:59:41 +05:30 committed by Tim-Philipp Müller
parent 48e0c6218d
commit 45ce449854

View file

@ -564,8 +564,12 @@ search_by_entry (GstPluginFeature * feature, gpointer search_entry)
static gint
sort_by_rank (GstPluginFeature * first, GstPluginFeature * second)
{
return gst_plugin_feature_get_rank (second) -
int diff = gst_plugin_feature_get_rank (second) -
gst_plugin_feature_get_rank (first);
if (diff == 0)
diff = g_strcmp0 (gst_plugin_feature_get_name (first),
gst_plugin_feature_get_name (second));
return diff;
}
static GList *