From b314d6ee08b351955f579f01ca5eda1730ab8641 Mon Sep 17 00:00:00 2001 From: Joshua Colp Date: Wed, 11 Jul 2007 16:10:03 +0000 Subject: Can't forget to remember what format is in use for writing. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@74560 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- res/res_speech.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'res') diff --git a/res/res_speech.c b/res/res_speech.c index fdcf322a6..b902f40d7 100644 --- a/res/res_speech.c +++ b/res/res_speech.c @@ -168,6 +168,10 @@ struct ast_speech *ast_speech_new(char *engine_name, int format) if (!(engine = find_engine(engine_name))) return NULL; + /* Make sure the requested format fits */ + if (!(engine->formats & format)) + return NULL; + /* Allocate our own speech structure, and try to allocate a structure from the engine too */ if (!(new_speech = ast_calloc(1, sizeof(*new_speech)))) return NULL; @@ -181,6 +185,9 @@ struct ast_speech *ast_speech_new(char *engine_name, int format) /* Copy over our engine pointer */ new_speech->engine = engine; + /* Can't forget the format audio is going to be in */ + new_speech->format = format; + /* We are not ready to accept audio yet */ ast_speech_change_state(new_speech, AST_SPEECH_STATE_NOT_READY); -- cgit v1.2.3