Exemple #1
0
static void add_service(obs_property_t *list, json_t *service, bool show_all,
		const char *cur_service)
{
	json_t *servers;
	const char *name;
	bool common;

	if (!json_is_object(service)) {
		blog(LOG_WARNING, "rtmp-common.c: [add_service] service "
		                  "is not an object");
		return;
	}

	name = get_string_val(service, "name");
	if (!name) {
		blog(LOG_WARNING, "rtmp-common.c: [add_service] service "
		                  "has no name");
		return;
	}

	common = get_bool_val(service, "common");
	if (!show_all && !common && strcmp(cur_service, name) != 0) {
		return;
	}

	servers = json_object_get(service, "servers");
	if (!servers || !json_is_array(servers)) {
		blog(LOG_WARNING, "rtmp-common.c: [add_service] service "
		                  "'%s' has no servers", name);
		return;
	}

	obs_property_list_add_string(list, name, name);
}
Exemple #2
0
static bool			get_identifier(t_json_parser *p)
{
	t_sub const			val = JSON_VAL_STRING(p);
	t_json_value_t		val_t;

	if (get_bool_val(val, &p->val_bool))
		val_t = JSON_VALUE_BOOL;
	else if (SUB_EQU(SUBC("null"), val))
		val_t = JSON_VALUE_NULL;
	else if (ft_subto_int(val, &p->val_int) == val.length)
		val_t = JSON_VALUE_INT;
	else if (ft_subto_float(val, &p->val_float) == val.length)
		val_t = JSON_VALUE_FLOAT;
	else
		return (ft_json_fail(p, SUBC("Invalid value")));
	p->value_type = val_t;
	return (true);
}