How ?! For this to work requires that the plugin registrar inherits from TypeModule. I quickly rewrote the example but it does not work: $ valac --pkg=gmodule-2.0 --debug *.vala && ./main
main.vala:10.1-10.41: warning: unable to chain up to private base constructor public class PluginRegistrar : TypeModule ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Compilation succeeded - 1 warning(s) (process:18546): GLib-GObject-CRITICAL **: g_object_newv: assertion `G_TYPE_IS_OBJECT (object_type)' failed Erreur de segmentation
And in a real application I have an error like: g_type_plugin_* invalidly modified type
With the object creation. 2010/6/10 JM <interflug1 gmx net>
Hello Abderrahim Thanks for reply! I somehow got the error message in a wrong way, because I thought the "[ModuleInit]" annotation itself needed some extra info. Now it's working fine again. Sorry for the hassle. Regards JörnHi, 2010/6/10, JM <interflug1 gmx net>:Hello everybody This valac commit shows that there has been some change with [ModuleInit]:http://git.gnome.org/browse/vala/commit/?id=5fd7b8cebb983fccdebcd9329671d94c1e5cf826The example on http://live.gnome.org/Vala/TypeModules is showing an example exactly as I am using it in my application: [ModuleInit] public Type register_plugin (TypeModule module) { // types are registered automatically return typeof (MyPlugin); } Here, valac reports "error: [ModuleInit] requires a parameter of type`GLib.TypeModule'public Type init_module() {"I'm not sure I understand your problem, in the example register_plugin takes a TypeModule as parameter but from what I see in the error message, your init_module doesn't take any parameter, and that's what valac is saying.Can someone please tell me what the expected usage of [ModuleInit] would be?a [ModuleInit] function is called by the application when a plugin is loaded. It should have at least a TypeModule argument so that the plugin types can be registered dinamically. (It generally returns the type of the main plugin class for the application to create an instance, but that's not mandatory : the application can find it out from e.g. the plugin description file if there is one). HTH, Abderrahim_______________________________________________ vala-list mailing list vala-list gnome org http://mail.gnome.org/mailman/listinfo/vala-list
-- Nicolas Joseph
Attachment:
module.tar.gz
Description: GNU Zip compressed data