Merge "res_fax.c: Fix deadlock in fax_gateway_indicate_t38()."

changes/35/3735/1
Joshua Colp 9 years ago committed by Gerrit Code Review
commit 383b35fca7

@ -3001,12 +3001,15 @@ static struct ast_frame *fax_gateway_detect_v21(struct fax_gateway *gateway, str
return f; return f;
} }
static int fax_gateway_indicate_t38(struct ast_channel *chan, struct ast_channel *active, struct ast_control_t38_parameters *control_params) /*! \pre chan is locked on entry */
static void fax_gateway_indicate_t38(struct ast_channel *chan, struct ast_channel *active, struct ast_control_t38_parameters *control_params)
{ {
if (active == chan) { if (active == chan) {
return ast_indicate_data(chan, AST_CONTROL_T38_PARAMETERS, control_params, sizeof(*control_params)); ast_channel_unlock(chan);
ast_indicate_data(chan, AST_CONTROL_T38_PARAMETERS, control_params, sizeof(*control_params));
ast_channel_lock(chan);
} else { } else {
return ast_queue_control_data(chan, AST_CONTROL_T38_PARAMETERS, control_params, sizeof(*control_params)); ast_queue_control_data(chan, AST_CONTROL_T38_PARAMETERS, control_params, sizeof(*control_params));
} }
} }

Loading…
Cancel
Save