Mercurial > pidgin
comparison src/plugin.c @ 10156:0dbeb6d1e258
[gaim-migrate @ 11236]
Some PRPL callbacks are required or Gaim go boom.
committer: Tailor Script <tailor@pidgin.im>
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Thu, 04 Nov 2004 04:40:57 +0000 |
parents | 4d484e455839 |
children | edf8c0a8e60b |
comparison
equal
deleted
inserted
replaced
10155:e05a325ac5a6 | 10156:0dbeb6d1e258 |
---|---|
244 | 244 |
245 if (plugin->info->magic != GAIM_PLUGIN_MAGIC || | 245 if (plugin->info->magic != GAIM_PLUGIN_MAGIC || |
246 plugin->info->major_version != GAIM_MAJOR_VERSION || | 246 plugin->info->major_version != GAIM_MAJOR_VERSION || |
247 plugin->info->minor_version > GAIM_MINOR_VERSION) | 247 plugin->info->minor_version > GAIM_MINOR_VERSION) |
248 { | 248 { |
249 gaim_debug(GAIM_DEBUG_ERROR, "plugins", "%s is unloadable: API version mismatch %d.%d.x (need %d.%d.x)\n", | 249 gaim_debug_error("plugins", "%s is unloadable: API version mismatch %d.%d.x (need %d.%d.x)\n", |
250 plugin->path, plugin->info->major_version, plugin->info->minor_version, GAIM_MAJOR_VERSION, GAIM_MINOR_VERSION); | 250 plugin->path, plugin->info->major_version, plugin->info->minor_version, |
251 GAIM_MAJOR_VERSION, GAIM_MINOR_VERSION); | |
252 gaim_plugin_destroy(plugin); | |
253 return NULL; | |
254 } | |
255 | |
256 /* If plugin is a PRPL, make sure it implements the required functions */ | |
257 if ((plugin->info->type == GAIM_PLUGIN_PROTOCOL) && ( | |
258 (GAIM_PLUGIN_PROTOCOL_INFO(plugin)->list_icon == NULL) || | |
259 (GAIM_PLUGIN_PROTOCOL_INFO(plugin)->login == NULL) || | |
260 (GAIM_PLUGIN_PROTOCOL_INFO(plugin)->close == NULL))) | |
261 { | |
262 gaim_debug_error("plugins", "%s is unloadable: Does not implement all required functions\n", | |
263 plugin->path); | |
251 gaim_plugin_destroy(plugin); | 264 gaim_plugin_destroy(plugin); |
252 return NULL; | 265 return NULL; |
253 } | 266 } |
254 | 267 |
255 return plugin; | 268 return plugin; |