if (!res) {
struct ast_park_call_args args = {
.orig_chan_name = orig_chan_name,
+ .extout = NULL,
+ .return_con = NULL,
+ .return_ext = NULL,
};
struct ast_flags flags = { 0 };
- if (parse && !ast_strlen_zero(app_args.timeout)) {
- if (sscanf(app_args.timeout, "%d", &args.timeout) != 1) {
- ast_log(LOG_WARNING, "Invalid timeout '%s' provided\n", app_args.timeout);
- args.timeout = 0;
+ if (parse) {
+ if (!ast_strlen_zero(app_args.timeout)) {
+ if (sscanf(app_args.timeout, "%d", &args.timeout) != 1) {
+ ast_log(LOG_WARNING, "Invalid timeout '%s' provided\n", app_args.timeout);
+ args.timeout = 0;
+ }
}
- }
-
- args.return_con = app_args.return_con;
- args.return_ext = app_args.return_ext;
- if (parse && !ast_strlen_zero(app_args.return_pri)) {
- if (sscanf(app_args.return_pri, "%d", &args.return_pri) != 1) {
- ast_log(LOG_WARNING, "Invalid priority '%s' specified\n", app_args.return_pri);
- args.return_pri = 0;
+ if (!ast_strlen_zero(app_args.return_con)) {
+ args.return_con = app_args.return_con;
+ }
+ if (!ast_strlen_zero(app_args.return_ext)) {
+ args.return_ext = app_args.return_ext;
+ }
+ if (!ast_strlen_zero(app_args.return_pri)) {
+ if (sscanf(app_args.return_pri, "%d", &args.return_pri) != 1) {
+ ast_log(LOG_WARNING, "Invalid priority '%s' specified\n", app_args.return_pri);
+ args.return_pri = 0;
+ }
}
}