@techee commented on this pull request.


In src/pluginextension.h:

> +typedef struct {
+	gboolean (*autocomplete_provided)(GeanyDocument *doc);
+	void (*autocomplete_perform)(GeanyDocument *doc, gboolean force);
+
+	gboolean (*calltips_provided)(GeanyDocument *doc);
+	void (*calltips_show)(GeanyDocument *doc, gboolean force);
+
+	gboolean (*goto_provided)(GeanyDocument *doc);
+	void (*goto_perform)(GeanyDocument *doc, gint pos, gboolean definition);
+
+	gboolean (*doc_symbols_provided)(GeanyDocument *doc);
+	GPtrArray *(*doc_symbols_get)(GeanyDocument *doc);
+
+	gboolean (*symbol_highlight_provided)(GeanyDocument *doc);
+
+	gchar _dummy[1024];

Maybe it'd be safer to have e.g. void (*_dummy[42])(void);

Yeah, it's better. Basically the idea was to pass "infinity" here from the practical point of view as I don't expect this will grow very fast.

On the other had if it grows slowly, say 5 calls per release and we don't update the padding when adding new functions and keep the struct growing, one would have to still use the 7-8-release-old plugin binary (with that 42 padding) to run into problems.


Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <geany/geany/pull/3849/review/2096353662@github.com>