mirror of
https://github.com/alsa-project/alsa-lib.git
synced 2025-11-02 09:01:48 -05:00
Added symbol versioning for dlsym-callbacks.
Removed snd_config_refer_load from confmisc.c and pcm.c.
This commit is contained in:
parent
36a2810081
commit
b45c08611c
43 changed files with 184 additions and 137 deletions
|
|
@ -101,10 +101,14 @@ static int snd_timer_open_conf(snd_timer_t **timer,
|
|||
open_name = buf;
|
||||
snprintf(buf, sizeof(buf), "_snd_timer_%s_open", str);
|
||||
}
|
||||
if (!lib)
|
||||
lib = ALSA_LIB;
|
||||
h = dlopen(lib, RTLD_NOW);
|
||||
open_func = h ? dlsym(h, open_name) : NULL;
|
||||
if (h) {
|
||||
if ((err = snd_dlsym_verify(h, open_name, SND_DLSYM_VERSION(SND_TIMER_DLSYM_VERSION))) < 0) {
|
||||
dlclose(h);
|
||||
goto _err;
|
||||
}
|
||||
open_func = dlsym(h, open_name);
|
||||
}
|
||||
if (!h) {
|
||||
SNDERR("Cannot open shared library %s", lib);
|
||||
err = -ENOENT;
|
||||
|
|
|
|||
|
|
@ -200,6 +200,7 @@ int snd_timer_hw_open(snd_timer_t **handle, const char *name, int dev_class, int
|
|||
return 0;
|
||||
}
|
||||
|
||||
SND_DLSYM_BUILD_VERSION(_snd_timer_hw_open, SND_TIMER_DLSYM_VERSION);
|
||||
int _snd_timer_hw_open(snd_timer_t **timer, char *name,
|
||||
snd_config_t *root ATTRIBUTE_UNUSED,
|
||||
snd_config_t *conf, int mode)
|
||||
|
|
|
|||
|
|
@ -100,10 +100,14 @@ static int snd_timer_query_open_conf(snd_timer_query_t **timer,
|
|||
open_name = buf;
|
||||
snprintf(buf, sizeof(buf), "_snd_timer_query_%s_open", str);
|
||||
}
|
||||
if (!lib)
|
||||
lib = ALSA_LIB;
|
||||
h = dlopen(lib, RTLD_NOW);
|
||||
open_func = h ? dlsym(h, open_name) : NULL;
|
||||
if (h) {
|
||||
if ((err = snd_dlsym_verify(h, open_name, SND_DLSYM_VERSION(SND_TIMER_QUERY_DLSYM_VERSION))) < 0) {
|
||||
dlclose(h);
|
||||
goto _err;
|
||||
}
|
||||
open_func = dlsym(h, open_name);
|
||||
}
|
||||
if (!h) {
|
||||
SNDERR("Cannot open shared library %s", lib);
|
||||
err = -ENOENT;
|
||||
|
|
|
|||
|
|
@ -88,6 +88,7 @@ int snd_timer_query_hw_open(snd_timer_query_t **handle, const char *name, int mo
|
|||
return 0;
|
||||
}
|
||||
|
||||
SND_DLSYM_BUILD_VERSION(_snd_timer_query_hw_open, SND_TIMER_QUERY_DLSYM_VERSION);
|
||||
int _snd_timer_query_hw_open(snd_timer_query_t **timer, char *name,
|
||||
snd_config_t *root ATTRIBUTE_UNUSED,
|
||||
snd_config_t *conf, int mode)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue