[gst-devel] gstreamer-compprep crashes when reg.xml is up-to-date
Richard Boulton
richard at tartarus.org
Tue Jun 5 03:15:35 CEST 2001
After running gstreamer-register, gstreamer-compprep segfaults. It works
fine when the registry is not in use.
This appears to be due to the GList of plugins getting modified when a
plugin is loaded: the plugin struct for the unloaded version is removed
from the list and a struct for the new version is added in.
This is fine if the GList isn't in use, but gstreamer-compprep has an
iterator to the list in use, and pointing to the plugin which gets loaded.
Changing gst_plugin_get_list () to return a g_list_copy (_gst_plugins);
rather than _gst_plugins itself fixes the crash, and I've committed this,
but this only works because the plugin structs aren't cleaned up properly.
I think we need some reference counting, or something similar, to avoid
resource leaks here.
--
Richard
More information about the gstreamer-devel
mailing list