On Tue, Jun 30, 2009 at 08:33:15AM +0200, Takashi Iwai wrote: > > It looks like we're talking about different things. You seem to be > > talking about external PCM plugins, i'm talking about external functions > > for the "hook" PCM plugin. The code i question is in pcm/pcm_hooks.c > > in function snd_pcm_hook_add_conf: > > > > if (err >= 0) { > > if (args && snd_config_get_string(args, &str) >= 0) { > > err = snd_config_search_definition(root, > > "hook_args", str, &args); > > if (err < 0) > > SNDERR("unknown hook_args %s", str); > > else > > err = install_func(pcm, args); > > snd_config_delete(args); > > } else > > err = install_func(pcm, args); > > snd_dlclose(h); > > } > > Ah, I understand now. Yes, this looks like a bug. > Meanwhile, it makes another bug if we just remove it. There would be > no dlclose(), then. It'd need resource tracking. Exactly the reason i haven't tried to make a proper patch ;) > A lack of dlclose is no serious bug, though. I hope you know better than me ;) > So... just removing snd_dlclose() there fixes your problem? > If yes, I'll commit the fix. TBH, i've not tried but i'm pretty sure it will fix the problem. I tried with dlopen workaround (to increase the refcounter) in install function and i tried with LD_PRELOAD'ing the library before starting an alsa app; both workarounds worked. -- Be free, use free (http://www.gnu.org/philosophy/free-sw.html) software! mailto:fercerpav@xxxxxxxxx _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel