diff --git a/src/calibre/gui2/tts/config.py b/src/calibre/gui2/tts/config.py index 64bd00802e..89a67bbdad 100644 --- a/src/calibre/gui2/tts/config.py +++ b/src/calibre/gui2/tts/config.py @@ -572,7 +572,7 @@ class ConfigDialog(Dialog): def accept(self): engine_name = self.engine_choice.value - tts = create_tts_backend(engine_name or None) + tts = create_tts_backend(engine_name) s = self.engine_specific_config.as_settings() if not tts.validate_settings(s, self): return diff --git a/src/calibre/gui2/tts/types.py b/src/calibre/gui2/tts/types.py index ba54608dfa..3a0747c7f8 100644 --- a/src/calibre/gui2/tts/types.py +++ b/src/calibre/gui2/tts/types.py @@ -326,11 +326,11 @@ class TTSBackend(QObject): engine_instances: dict[str, TTSBackend] = {} -def create_tts_backend(force_engine: str | None = None, config_name: str = CONFIG_NAME) -> TTSBackend: +def create_tts_backend(force_engine: str = '', config_name: str = CONFIG_NAME) -> TTSBackend: if not available_engines(): raise OSError('There are no available TTS engines. Install a TTS engine before trying to use Read Aloud, such as flite or speech-dispatcher') prefs = load_config(config_name) - if force_engine is not None: + if force_engine: engine_name = force_engine if engine_name not in available_engines(): raise OSError(f'TTS engine {force_engine} is not available.')