Closed davidben closed 13 years ago
valgrind says the address glib is trying to free was allocated by the Google Talk plugin. It's trying to free some structure that, in glib, pointed to by thread-local storage. Is it possible they're stomping on each other somehow?
Someone's stomping on the thread-local storage used to store the pointer to the glib thread structure. g_thread_self keeps changing as we dlopen modules, so presumably it's stuff in the _init of those modules. Both /usr/lib/mozilla/plugins/libnpgoogletalk64.so and /usr/lib/mozilla/plugins/skypebuttons.so seem to be causing problems.
Actually, this appears to be skypebuttons.so's fault. While on its own it doesn't cause the crash, it does mess up g_thread_self.
Qt's fault. Caused by this bug.
Don't unload plugins from the process
Unfortunately, some libraries are broken and corrupt internal state when they are unloaded. Closed by 0ff78b2a875ad99b2c2b0c1715493cf1ec36aea1.
Or at least, I haven't been able to get it to work, so I've avoided updating its NPAPI thunks. It also has a free bug when passing --plugin.