[Github-comments] [geany] Proxy plugins (#629)

Thomas Martitz notifications at xxxxx
Fri Oct 2 21:36:20 UTC 2015


> @@ -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;

Actually, I'm preferring to leave it. We can't have paranoid checks everywhere, even in the deepest leaf functions. At some point we can/have to/should depend on earlier code to provide canonical paths, as is the case here.

---
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/pull/629/files#r41070363
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.geany.org/pipermail/github-comments/attachments/20151002/18822ff6/attachment.html>


More information about the Github-comments mailing list