After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 610489 - gmodule should not check dependencies for initialization functions
gmodule should not check dependencies for initialization functions
Status: RESOLVED INVALID
Product: glib
Classification: Platform
Component: gmodule
2.23.x
Other NetBSD
: Normal normal
: ---
Assigned To: gtkdev
gtkdev
Depends on:
Blocks:
 
 
Reported: 2010-02-19 19:41 UTC by Roy Marples
Modified: 2010-02-24 12:35 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Check for initialization functions in module only. (1.88 KB, patch)
2010-02-19 19:41 UTC, Roy Marples
none Details | Review

Description Roy Marples 2010-02-19 19:41:13 UTC
Created attachment 154238 [details] [review]
Check for initialization functions in module only.

gmodule should not check dependencies for initialization functions, incase of conflict.
We can do this by passing a handle of RTLD_NEXT to g_module_symbol when checking for the functions g_module_check_init and g_module_unload.

A nice side effect of this patch is that it supplies a fantastic speed boost to evolution when it loads plugins as the plugins all have a lot of linked dependencies AND none of the above two functions.
Comment 1 Matthias Clasen 2010-02-21 20:47:28 UTC
I understand what you are trying to do here, but I am not sure how this patch is supposed to achieve it. If you are setting ->handle to RTLD_NEXT, there is no way that g_module_symbol can return anything that has a relation to the the file_name that is passed to g_module_open...
Comment 2 Roy Marples 2010-02-24 12:35:20 UTC
Yes, you are correct. A few apps outside of the GNOME ones I use have exhibited a few problems, so I'll pull this change request.