@@ -830,25 +1011,80 @@ static gboolean check_plugin_path(const gchar *fname) }
+/* Retuns NULL if this ain't a plugin,
- otherwise it returns the appropriate PluginProxy instance to load it */
+static PluginProxy* is_plugin(const gchar *file) +{
- GList *node;
- const gchar *ext;
- /* extract file extension to avoid g_str_has_suffix() in the loop */
- ext = (const gchar *)strrchr(file, '.');
- if (ext == NULL)
return FALSE;
- /* ensure the dot is really part of the filename */
- else if (strchr(ext, G_DIR_SEPARATOR) != NULL)
return FALSE;
BTW, this is always called with the result of g_build_filename() (either directly or via plugin->filename) so it's kind of guaranteed it's a canonical path.
--- Reply to this email directly or view it on GitHub: https://github.com/geany/geany/pull/629/files#r41069639
github-comments@lists.geany.org