]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
fix some issues in httapi record parser
authorAnthony Minessale <anthm@freeswitch.org>
Thu, 23 Aug 2012 22:49:46 +0000 (17:49 -0500)
committerAnthony Minessale <anthm@freeswitch.org>
Thu, 23 Aug 2012 22:49:53 +0000 (17:49 -0500)
src/mod/applications/mod_httapi/mod_httapi.c

index f926ddcd0ef92e797ab70b5062acdd70dfea1b8b..a331195b9db1b25e9c190dd3fe5310ae51140ab9 100644 (file)
@@ -229,7 +229,7 @@ SWITCH_STANDARD_API(httapi_api_function)
 static switch_status_t digit_action_callback(switch_ivr_dmachine_match_t *match)
 {
        action_binding_t *action_binding = (action_binding_t *) match->user_data;
-       
+
        action_binding->client->matching_action_binding = action_binding;
        action_binding->match_digits = switch_core_strdup(action_binding->client->pool, match->match_digits);
 
@@ -996,7 +996,6 @@ static switch_status_t parse_record(const char *tag_name, client_t *client, swit
                        action_binding->action = (char *) switch_xml_attr(bind, "action");
                        action_binding->error_file = (char *) error_file;
                        action_binding->parent = top_action_binding;
-                       
                        switch_ivr_dmachine_bind(dmachine, action_binding->realm, action_binding->input, 0, digit_action_callback, action_binding);
                        bind = bind->next;
                }
@@ -1022,6 +1021,10 @@ static switch_status_t parse_record(const char *tag_name, client_t *client, swit
                status = switch_ivr_record_file(client->session, &fh, tmp_record_path, args, record_limit);
        }
 
+       if (switch_channel_ready(client->channel)) {
+               status = SWITCH_STATUS_SUCCESS;
+       }
+
        if (client->matching_action_binding) {
                if (client->matching_action_binding->action) {
                        sub_action = client->matching_action_binding->action;
@@ -1326,7 +1329,6 @@ static void cleanup_attachments(client_t *client)
        for (hp = client->params->headers; hp; hp = hp->next) {
                if (!strncasecmp(hp->name, "attach_file:", 12)) {
                        if (switch_file_exists(hp->value, client->pool) == SWITCH_STATUS_SUCCESS) {
-                               printf("DELETE %s\n", hp->value);
                                unlink(hp->value);
                        }
                }