summaryrefslogtreecommitdiff
path: root/rest-api-templates
diff options
context:
space:
mode:
Diffstat (limited to 'rest-api-templates')
-rw-r--r--rest-api-templates/param_parsing.mustache12
-rw-r--r--rest-api-templates/res_ari_resource.c.mustache10
2 files changed, 16 insertions, 6 deletions
diff --git a/rest-api-templates/param_parsing.mustache b/rest-api-templates/param_parsing.mustache
index 59c59e958..aabd728fd 100644
--- a/rest-api-templates/param_parsing.mustache
+++ b/rest-api-templates/param_parsing.mustache
@@ -36,8 +36,16 @@
goto fin;
}
- args.{{c_name}}_count = ast_app_separate_args(
- args.{{c_name}}_parse, ',', vals, ARRAY_LEN(vals));
+ if (strlen(args.{{c_name}}_parse) == 0) {
+ /* ast_app_separate_args can't handle "" */
+ args.{{c_name}}_count = 1;
+ vals[0] = args.{{c_name}}_parse;
+ } else {
+ args.{{c_name}}_count = ast_app_separate_args(
+ args.{{c_name}}_parse, ',', vals,
+ ARRAY_LEN(vals));
+ }
+
if (args.{{c_name}}_count == 0) {
ast_ari_response_alloc_failed(response);
goto fin;
diff --git a/rest-api-templates/res_ari_resource.c.mustache b/rest-api-templates/res_ari_resource.c.mustache
index 906d55f0d..e6b2a88f4 100644
--- a/rest-api-templates/res_ari_resource.c.mustache
+++ b/rest-api-templates/res_ari_resource.c.mustache
@@ -174,14 +174,16 @@ fin: __attribute__((unused))
* negotiation. Param parsing should happen earlier, but we
* need a way to pass it through the WebSocket code to the
* callback */
- RAII_VAR(char *, msg, NULL, ast_free);
+ RAII_VAR(char *, msg, NULL, ast_json_free);
if (response->message) {
msg = ast_json_dump_string(response->message);
} else {
- msg = ast_strdup("?");
+ ast_log(LOG_ERROR, "Missing response message\n");
+ }
+ if (msg) {
+ ast_websocket_write(ws_session,
+ AST_WEBSOCKET_OPCODE_TEXT, msg, strlen(msg));
}
- ast_websocket_write(ws_session, AST_WEBSOCKET_OPCODE_TEXT, msg,
- strlen(msg));
}
{{> param_cleanup}}
}