properly report hangupcause when ast_request() fails for the last (or only) target...
[asterisk/asterisk.git] / apps / app_dial.c
index e25f2d6..ac579fe 100755 (executable)
@@ -1109,6 +1109,8 @@ static int dial_exec_full(struct ast_channel *chan, void *data, struct ast_flags
                        ast_log(LOG_NOTICE, "Unable to create channel of type '%s' (cause %d - %s)\n", tech, cause, ast_cause2str(cause));
                        HANDLE_CAUSE(cause, chan);
                        cur = rest;
+                       if (!cur)
+                               chan->hangupcause = cause;
                        continue;
                }
                pbx_builtin_setvar_helper(tmp->chan, "DIALEDPEERNUMBER", numsubst);