Running |espeak --compile=om| on some platforms results in espeak segfaulting intermittently (not reproducible under gdb). When it does, it generates "Unknown keyword: " messages with garbage after it.master
@@ -164,7 +164,6 @@ dictionaries: \ | |||
espeak-data/ne_dict \ | |||
espeak-data/nl_dict \ | |||
espeak-data/no_dict \ | |||
espeak-data/om_dict \ | |||
espeak-data/pa_dict \ | |||
espeak-data/pap_dict \ | |||
espeak-data/pl_dict \ | |||
@@ -443,12 +442,6 @@ dictsource/no_extra: | |||
espeak-data/no_dict: src/espeak espeak-data/phontab dictsource/no_list dictsource/no_rules dictsource/no_extra | |||
cd dictsource && ESPEAK_DATA_PATH=$(PWD) ../src/espeak --compile=no && cd .. | |||
om: espeak-data/om_dict | |||
dictsource/om_extra: | |||
touch dictsource/om_extra | |||
espeak-data/om_dict: src/espeak espeak-data/phontab dictsource/om_list dictsource/om_rules dictsource/om_extra | |||
cd dictsource && ESPEAK_DATA_PATH=$(PWD) ../src/espeak --compile=om && cd .. | |||
pa: espeak-data/pa_dict | |||
dictsource/pa_extra: | |||
touch dictsource/pa_extra |
@@ -16,6 +16,9 @@ special_voices = { | |||
'zh-yue': 'zhy', | |||
} | |||
# The 'om' voice file intimitently crashes when compiling on some platforms. | |||
exclude_voices = ['om'] | |||
def find_voices(path): | |||
for filename in os.listdir(path): | |||
voice_path = os.path.join(path, filename) | |||
@@ -25,7 +28,7 @@ def find_voices(path): | |||
else: | |||
if filename in special_voices.keys(): | |||
voices.add(special_voices[filename]) | |||
else: | |||
elif filename not in exclude_voices: | |||
voices.add(filename) | |||
find_voices('espeak-data/voices') |