[gstreamer-bugs] [Bug 623491] make *_get_type() thread safe

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Sat Jul 3 19:45:02 PDT 2010


https://bugzilla.gnome.org/show_bug.cgi?id=623491
  GStreamer | gstreamer (core) | unspecified

--- Comment #2 from Shixin Zeng <zeng.shixin at gmail.com> 2010-07-04 02:44:57 UTC ---
well, I'm new to gstreamer, and not familiar with code of gstreamer. I just
found that some _get_type() was thread safe, and some were not, and I
remembered that they were always not thread safe before g_once_init_enter/leave
was introduced to glib. So I assumed that this problem was caused by lacking of
manpowers for the transmission, and I went ahead and tried to help.

As I've said above, I didn't understand gstreamer code well, so I just checked
the code already in gstreamer, as I've found g_once_init_enter/leave was
already in gst/*, e.g. gst/gsttagsetter.c.

For the tests/check, I think that depends on how you define "broken". For
thread safe problems, it's really hard to prove it's broken. but I'd say it's
as broken as any other code with static variables. Has anyone noticed a problem
with the non-thread-safe _get_type()?

Maybe the stuff in tests/old/ should be untouched, I just did a grep in the
source tree and fix all _get_type()s.

So if needed, I will split the patch.

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.




More information about the Gstreamer-bugs mailing list