datastore->data = erds;
+ ast_channel_lock(chan);
ast_channel_datastore_add(chan, datastore);
+ ast_channel_unlock(chan);
res = 0;
goto finish;
}
- if (!(datastore = ast_channel_datastore_find(chan, &enum_result_datastore_info, args.id))) {
+ ast_channel_lock(chan);
+ datastore = ast_channel_datastore_find(chan, &enum_result_datastore_info, args.id);
+ ast_channel_unlock(chan);
+ if (!datastore) {
ast_log(LOG_WARNING, "No ENUM results found for query id!\n");
goto finish;
}
if (drds->num_results > 0)
sort_results(drds->results, drds->num_results);
+ ast_channel_lock(chan);
ast_channel_datastore_add(chan, datastore);
+ ast_channel_unlock(chan);
ast_module_user_remove(u);
ast_log(LOG_ERROR, "A result number must be given to DUNDIRESULT!\n");
goto finish;
}
+
+ ast_channel_lock(chan);
+ datastore = ast_channel_datastore_find(chan, &dundi_result_datastore_info, args.id);
+ ast_channel_unlock(chan);
- if (!(datastore = ast_channel_datastore_find(chan, &dundi_result_datastore_info, args.id))) {
+ if (!datastore) {
ast_log(LOG_WARNING, "No DUNDi results found for query ID '%s'\n", args.id);
goto finish;
}
+
drds = datastore->data;
if (!strcasecmp(args.resultnum, "getnum")) {