It seems that the Empathy plugin is at fault, or at least behaves differently to all the other account plugins, as a single plugin (EmpathyAccountPlugin) is used as the source for every account plugin provided by Empathy. This can be seen in the Makefile.am (look at the lib<provider>_la_SOURCES variables):
This means that each plugin has the same ap_module_get_object_type() method, and so the types are registered twice when more than one is used in a single run of the control center panel, which cannot succeed with the current plugin loader. Each provider plugin having a different GType seems like a reasonable assumption, and that it what the plugins in online-accounts-account-plugins do, for example:
It seems that the Empathy plugin is at fault, or at least behaves differently to all the other account plugins, as a single plugin (EmpathyAccount Plugin) is used as the source for every account plugin provided by Empathy. This can be seen in the Makefile.am (look at the lib<provider> _la_SOURCES variables):
http:// git.gnome. org/browse/ empathy/ tree/ubuntu- online- accounts/ cc-plugins/ Makefile. am
This means that each plugin has the same ap_module_ get_object_ type() method, and so the types are registered twice when more than one is used in a single run of the control center panel, which cannot succeed with the current plugin loader. Each provider plugin having a different GType seems like a reasonable assumption, and that it what the plugins in online- accounts- account- plugins do, for example:
http:// bazaar. launchpad. net/~online- accounts/ online- accounts- account- plugins/ trunk/view/ head:/src/ windows- live.vala