summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
Diffstat (limited to 'apps')
-rw-r--r--apps/app_meetme.c17
-rw-r--r--apps/app_mixmonitor.c6
-rw-r--r--apps/app_rpt.c29
3 files changed, 9 insertions, 43 deletions
diff --git a/apps/app_meetme.c b/apps/app_meetme.c
index 0e50414db..5fffa916c 100644
--- a/apps/app_meetme.c
+++ b/apps/app_meetme.c
@@ -1428,10 +1428,7 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
ast_hangup(conf->lchan);
conf->lchan = NULL;
} else {
- pthread_attr_init(&conf->attr);
- pthread_attr_setdetachstate(&conf->attr, PTHREAD_CREATE_DETACHED);
- ast_pthread_create_background(&conf->recordthread, &conf->attr, recordthread, conf);
- pthread_attr_destroy(&conf->attr);
+ ast_pthread_create_detached_background(&conf->recordthread, &conf->attr, recordthread, conf);
}
}
@@ -3458,7 +3455,6 @@ static void sla_handle_dial_state_event(void)
struct sla_ringing_trunk *ringing_trunk = NULL;
struct run_station_args args;
enum ast_dial_result dial_res;
- pthread_attr_t attr;
pthread_t dont_care;
ast_mutex_t cond_lock;
ast_cond_t cond;
@@ -3499,15 +3495,12 @@ static void sla_handle_dial_state_event(void)
free(ringing_station);
ast_mutex_init(&cond_lock);
ast_cond_init(&cond, NULL);
- pthread_attr_init(&attr);
- pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
ast_mutex_lock(&cond_lock);
- ast_pthread_create_background(&dont_care, &attr, run_station, &args);
+ ast_pthread_create_detached_background(&dont_care, NULL, run_station, &args);
ast_cond_wait(&cond, &cond_lock);
ast_mutex_unlock(&cond_lock);
ast_mutex_destroy(&cond_lock);
ast_cond_destroy(&cond);
- pthread_attr_destroy(&attr);
break;
case AST_DIAL_RESULT_TRYING:
case AST_DIAL_RESULT_RINGING:
@@ -4237,7 +4230,6 @@ static int sla_station_exec(struct ast_channel *chan, void *data)
ast_mutex_t cond_lock;
ast_cond_t cond;
pthread_t dont_care;
- pthread_attr_t attr;
struct dial_trunk_args args = {
.trunk_ref = trunk_ref,
.station = station,
@@ -4251,15 +4243,12 @@ static int sla_station_exec(struct ast_channel *chan, void *data)
ast_autoservice_start(chan);
ast_mutex_init(&cond_lock);
ast_cond_init(&cond, NULL);
- pthread_attr_init(&attr);
- pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
ast_mutex_lock(&cond_lock);
- ast_pthread_create_background(&dont_care, &attr, dial_trunk, &args);
+ ast_pthread_create_detached_background(&dont_care, NULL, dial_trunk, &args);
ast_cond_wait(&cond, &cond_lock);
ast_mutex_unlock(&cond_lock);
ast_mutex_destroy(&cond_lock);
ast_cond_destroy(&cond);
- pthread_attr_destroy(&attr);
ast_autoservice_stop(chan);
if (!trunk_ref->trunk->chan) {
ast_log(LOG_DEBUG, "Trunk didn't get created. chan: %lx\n", (long) trunk_ref->trunk->chan);
diff --git a/apps/app_mixmonitor.c b/apps/app_mixmonitor.c
index 40faee216..f29391273 100644
--- a/apps/app_mixmonitor.c
+++ b/apps/app_mixmonitor.c
@@ -229,7 +229,6 @@ static void *mixmonitor_thread(void *obj)
static void launch_monitor_thread(struct ast_channel *chan, const char *filename, unsigned int flags,
int readvol, int writevol, const char *post_process)
{
- pthread_attr_t attr;
pthread_t thread;
struct mixmonitor *mixmonitor;
char postprocess2[1024] = "";
@@ -296,10 +295,7 @@ static void launch_monitor_thread(struct ast_channel *chan, const char *filename
return;
}
- pthread_attr_init(&attr);
- pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
- ast_pthread_create_background(&thread, &attr, mixmonitor_thread, mixmonitor);
- pthread_attr_destroy(&attr);
+ ast_pthread_create_detached_background(&thread, NULL, mixmonitor_thread, mixmonitor);
}
diff --git a/apps/app_rpt.c b/apps/app_rpt.c
index 73a817a84..e59a7bbb5 100644
--- a/apps/app_rpt.c
+++ b/apps/app_rpt.c
@@ -2452,7 +2452,6 @@ static void rpt_telemetry(struct rpt *myrpt, int mode, void *data)
struct rpt_tele *tele;
struct rpt_link *mylink = (struct rpt_link *) data;
int res;
- pthread_attr_t attr;
tele = ast_calloc(1, sizeof(struct rpt_tele));
if (!tele) {
@@ -2471,10 +2470,7 @@ static void rpt_telemetry(struct rpt *myrpt, int mode, void *data)
}
insque((struct qelem *)tele, (struct qelem *)myrpt->tele.next);
rpt_mutex_unlock(&myrpt->lock);
- pthread_attr_init(&attr);
- pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
- res = ast_pthread_create(&tele->threadid, &attr, rpt_tele_thread, (void *) tele);
- pthread_attr_destroy(&attr);
+ res = ast_pthread_create_detached(&tele->threadid, NULL, rpt_tele_thread, (void *) tele);
if (res != 0) {
rpt_mutex_lock(&myrpt->lock);
remque((struct qlem *) tele); /* We don't like stuck transmitters, remove it from the queue */
@@ -3108,7 +3104,6 @@ static int function_ilink(struct rpt *myrpt, char *param, char *digits, int comm
static int function_autopatchup(struct rpt *myrpt, char *param, char *digitbuf, int command_source, struct rpt_link *mylink)
{
- pthread_attr_t attr;
int i, index;
char *value = NULL;
AST_DECLARE_APP_ARGS(params,
@@ -3184,10 +3179,7 @@ static int function_autopatchup(struct rpt *myrpt, char *param, char *digitbuf,
myrpt->cidx = 0;
myrpt->exten[myrpt->cidx] = 0;
rpt_mutex_unlock(&myrpt->lock);
- pthread_attr_init(&attr);
- pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
- ast_pthread_create(&myrpt->rpt_call_thread, &attr, rpt_call, (void *) myrpt);
- pthread_attr_destroy(&attr);
+ ast_pthread_create_detached(&myrpt->rpt_call_thread, NULL, rpt_call, (void *) myrpt);
return DC_COMPLETE;
}
@@ -5448,7 +5440,6 @@ static int attempt_reconnect(struct rpt *myrpt, struct rpt_link *l)
static void local_dtmf_helper(struct rpt *myrpt, char c)
{
int res;
- pthread_attr_t attr;
char cmd[MAXDTMF+1] = "";
if (c == myrpt->p.endchar) {
@@ -5537,10 +5528,7 @@ static void local_dtmf_helper(struct rpt *myrpt, char c)
myrpt->cidx = 0;
myrpt->exten[myrpt->cidx] = 0;
rpt_mutex_unlock(&myrpt->lock);
- pthread_attr_init(&attr);
- pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
- ast_pthread_create(&myrpt->rpt_call_thread, &attr, rpt_call, (void *)myrpt);
- pthread_attr_destroy(&attr);
+ ast_pthread_create_detached(&myrpt->rpt_call_thread, NULL, rpt_call, (void *)myrpt);
return;
}
}
@@ -6668,7 +6656,6 @@ static void *rpt(void *this)
static void *rpt_master(void *config)
{
int i, n;
- pthread_attr_t attr;
struct ast_config *cfg;
char *this;
const char *val;
@@ -6732,10 +6719,7 @@ static void *rpt_master(void *config)
ast_config_destroy(cfg);
pthread_exit(NULL);
}
- pthread_attr_init(&attr);
- pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
- ast_pthread_create(&rpt_vars[i].rpt_thread, &attr, rpt, (void *) &rpt_vars[i]);
- pthread_attr_destroy(&attr);
+ ast_pthread_create_detached(&rpt_vars[i].rpt_thread, NULL, rpt, (void *) &rpt_vars[i]);
}
usleep(500000);
for (;;) {
@@ -6761,10 +6745,7 @@ static void *rpt_master(void *config)
rpt_vars[i].threadrestarts = 0;
rpt_vars[i].lastthreadrestarttime = time(NULL);
- pthread_attr_init(&attr);
- pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
- ast_pthread_create(&rpt_vars[i].rpt_thread, &attr, rpt, (void *) &rpt_vars[i]);
- pthread_attr_destroy(&attr);
+ ast_pthread_create_detached(&rpt_vars[i].rpt_thread, NULL, rpt, (void *) &rpt_vars[i]);
ast_log(LOG_WARNING, "rpt_thread restarted on node %s\n", rpt_vars[i].name);
}