Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
29 lines
893 B
Diff
29 lines
893 B
Diff
diff --git a/src/modules/bank.c b/src/modules/bank.c
|
|
index 52037d5b59..c94e71fef9 100644
|
|
--- a/src/modules/bank.c
|
|
+++ b/src/modules/bank.c
|
|
@@ -461,6 +461,11 @@ static void AllocatePluginDir (module_bank_t *bank, unsigned maxdepth,
|
|
closedir (dh);
|
|
}
|
|
|
|
+static int plugin_cmp(const void *first, const void *second)
|
|
+{
|
|
+ return strcmp((*(vlc_plugin_t **) first)->path, (*(vlc_plugin_t **) second)->path);
|
|
+}
|
|
+
|
|
/**
|
|
* Scans for plug-ins within a file system hierarchy.
|
|
* \param path base directory to browse
|
|
@@ -500,8 +505,10 @@ static void AllocatePluginPath(vlc_object_t *obj, const char *path,
|
|
vlc_plugin_store(plugin);
|
|
}
|
|
|
|
- if (mode & CACHE_WRITE_FILE)
|
|
+ if (mode & CACHE_WRITE_FILE) {
|
|
+ qsort(bank.plugins, bank.size, sizeof(vlc_plugin_t *), plugin_cmp);
|
|
CacheSave(obj, path, bank.plugins, bank.size);
|
|
+ }
|
|
|
|
free(bank.plugins);
|
|
}
|