Update the libspeechd_loader
This commit is contained in:
parent
e8b5a6dedf
commit
c3f7f2447c
2 changed files with 15 additions and 0 deletions
|
@ -33,6 +33,7 @@ class LibSpeechdLoader {
|
|||
decltype(&::spd_set_synthesis_voice) spd_set_synthesis_voice;
|
||||
decltype(&::spd_list_modules) spd_list_modules;
|
||||
decltype(&::spd_set_output_module) spd_set_output_module;
|
||||
decltype(&::spd_set_language) spd_set_language;
|
||||
|
||||
|
||||
private:
|
||||
|
|
|
@ -201,6 +201,19 @@ bool LibSpeechdLoader::Load(const std::string& library_name) {
|
|||
return false;
|
||||
}
|
||||
|
||||
#if defined(LIBRARY_LOADER_OUT_RELEASE_GEN_LIBRARY_LOADERS_LIBSPEECHD_H_DLOPEN)
|
||||
spd_set_language =
|
||||
reinterpret_cast<decltype(this->spd_set_language)>(
|
||||
dlsym(library_, "spd_set_language"));
|
||||
#endif
|
||||
#if defined(LIBRARY_LOADER_OUT_RELEASE_GEN_LIBRARY_LOADERS_LIBSPEECHD_H_DT_NEEDED)
|
||||
spd_set_language = &::spd_set_language;
|
||||
#endif
|
||||
if (!spd_set_language) {
|
||||
CleanUp(true);
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
loaded_ = true;
|
||||
return true;
|
||||
|
@ -227,5 +240,6 @@ void LibSpeechdLoader::CleanUp(bool unload) {
|
|||
spd_set_synthesis_voice = NULL;
|
||||
spd_list_modules = NULL;
|
||||
spd_set_output_module = NULL;
|
||||
spd_set_language = NULL;
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue