if (err) {
*err = errmsg;
} else {
- free(errmsg);
+ switch_safe_free(errmsg);
}
}
switch_cache_db_execute_sql_real(dbh, pre_trans_execute, &errmsg);
if (errmsg) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CRIT, "SQL PRE TRANS EXEC %s [%s]\n", pre_trans_execute, errmsg);
- free(errmsg);
+ switch_safe_free(errmsg);
}
}
} else {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "SQL Retry [%s]\n", errmsg);
}
- free(errmsg);
- errmsg = NULL;
+ switch_safe_free(errmsg);
if (again) {
switch(dbh->type) {
switch_cache_db_execute_sql_real(dbh, inner_pre_trans_execute, &errmsg);
if (errmsg) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CRIT, "SQL PRE TRANS EXEC %s [%s]\n", inner_pre_trans_execute, errmsg);
- free(errmsg);
+ switch_safe_free(errmsg);
}
}
if (errmsg) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "SQL ERR [%s]\n", errmsg);
- free(errmsg);
+ switch_safe_free(errmsg);
errmsg = NULL;
switch_yield(100000);
retries--;
switch_cache_db_execute_sql_real(dbh, inner_post_trans_execute, &errmsg);
if (errmsg) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CRIT, "SQL POST TRANS EXEC %s [%s]\n", inner_post_trans_execute, errmsg);
- free(errmsg);
+ switch_safe_free(errmsg);
}
}
switch_cache_db_execute_sql_real(dbh, post_trans_execute, &errmsg);
if (errmsg) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CRIT, "SQL POST TRANS EXEC %s [%s]\n", post_trans_execute, errmsg);
- free(errmsg);
+ switch_safe_free(errmsg);
}
}
if (err) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "SQL ERR: [%s] %s\n", job->sql, err);
- free(err);
+ switch_safe_free(err);
}
switch_cache_db_release_db_handle(&dbh);
if (dbh) {
switch_cache_db_execute_sql(dbh, (char *) pop, NULL);
}
- free(pop);
+ switch_safe_free(pop);
}
}
switch_mutex_unlock(qm->mutex);
switch_cache_db_execute_sql_real(qm->event_db, qm->pre_trans_execute, &errmsg);
if (errmsg) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CRIT, "SQL PRE TRANS EXEC %s [%s]\n", qm->pre_trans_execute, errmsg);
- free(errmsg); errmsg = NULL;
+ switch_safe_free(errmsg);
}
}
if (errmsg) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CRIT, "ERROR [%s]\n", errmsg);
- free(errmsg);
+ switch_safe_free(errmsg);
goto end;
}
switch_cache_db_execute_sql_real(qm->event_db, qm->inner_pre_trans_execute, &errmsg);
if (errmsg) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CRIT, "SQL PRE TRANS EXEC %s [%s]\n", qm->inner_pre_trans_execute, errmsg);
- free(errmsg);
+ switch_safe_free(errmsg);
}
}
switch_mutex_unlock(qm->mutex);
ttl++;
}
- free(pop);
- pop = NULL;
+ switch_safe_free(pop);
if (status != SWITCH_STATUS_SUCCESS) break;
} else {
break;
switch_cache_db_execute_sql_real(qm->event_db, qm->inner_post_trans_execute, &errmsg);
if (errmsg) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CRIT, "SQL POST TRANS EXEC %s [%s]\n", qm->inner_post_trans_execute, errmsg);
- free(errmsg);
+ switch_safe_free(errmsg);
}
}
switch_cache_db_execute_sql_real(qm->event_db, qm->post_trans_execute, &errmsg);
if (errmsg) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CRIT, "SQL POST TRANS EXEC %s [%s]\n", qm->post_trans_execute, errmsg);
- free(errmsg);
+ switch_safe_free(errmsg);
}
}
if (uuid && (extra_cols = parse_presence_data_cols(event))) {
new_sql() = switch_mprintf("update channels set %s where uuid='%s'", extra_cols, uuid);
- free(extra_cols);
+ switch_safe_free(extra_cols);
}
new_sql() = switch_mprintf("update channels set call_uuid='%q' where uuid='%s' or uuid='%s'",
if (uuid && (extra_cols = parse_presence_data_cols(event))) {
new_sql() = switch_mprintf("update channels set %s where uuid='%s'", extra_cols, uuid);
- free(extra_cols);
+ switch_safe_free(extra_cols);
}
new_sql() = switch_mprintf("update channels set call_uuid=uuid where call_uuid='%s'",
if (errmsg) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "SQL ERR: [%s] %s\n", sql, errmsg);
- free(errmsg);
+ switch_safe_free(errmsg);
}
switch_safe_free(sql);
switch_sql_queue_manager_push(sql_manager.qm, sql, 2, SWITCH_FALSE);
- free(xml_cdr_text);
+ switch_safe_free(xml_cdr_text);
switch_channel_set_flag(channel, CF_TRACKED);
}
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Database Error [%s]\n", err);
//switch_cache_db_release_db_handle(&sql_manager.dbh);
if (switch_stristr("read-only", err)) {
- free(err);
+ switch_safe_free(err);
} else {
- free(err);
+ switch_safe_free(err);
goto top;
}
}