another minor ast_channel memory size decrease... for nearly all channels, 'dialconte...
[asterisk/asterisk.git] / apps / app_dial.c
index b7cafd0..370ac71 100644 (file)
@@ -639,7 +639,7 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in,
                                                OPT_CALLEE_PARK | OPT_CALLER_PARK |
                                                OPT_CALLEE_MIXMONITOR | OPT_CALLER_MIXMONITOR |
                                                DIAL_NOFORWARDHTML);
-                                       ast_copy_string(c->dialcontext, "", sizeof(c->dialcontext));
+                                       ast_string_field_set(c, dialcontext, "");
                                        ast_copy_string(c->exten, "", sizeof(c->exten));
                                }
                                continue;
@@ -677,7 +677,7 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in,
                                                        OPT_CALLEE_PARK | OPT_CALLER_PARK |
                                                        OPT_CALLEE_MIXMONITOR | OPT_CALLER_MIXMONITOR |
                                                        DIAL_NOFORWARDHTML);
-                                               ast_copy_string(c->dialcontext, "", sizeof(c->dialcontext));
+                                               ast_string_field_set(c, dialcontext, "");
                                                ast_copy_string(c->exten, "", sizeof(c->exten));
                                                if (CAN_EARLY_BRIDGE(peerflags))
                                                        /* Setup early bridge if appropriate */
@@ -1513,10 +1513,7 @@ static int dial_exec_full(struct ast_channel *chan, void *data, struct ast_flags
                        ast_app_group_set_channel(tc, outbound_group);
 
                /* Inherit context and extension */
-               if (!ast_strlen_zero(chan->macrocontext))
-                       ast_copy_string(tc->dialcontext, chan->macrocontext, sizeof(tc->dialcontext));
-               else
-                       ast_copy_string(tc->dialcontext, chan->context, sizeof(tc->dialcontext));
+               ast_string_field_set(tc, dialcontext, ast_strlen_zero(chan->macrocontext) ? chan->context : chan->macrocontext);
                if (!ast_strlen_zero(chan->macroexten))
                        ast_copy_string(tc->exten, chan->macroexten, sizeof(tc->exten));
                else