pa_stream_manager_is_valid_stream_role() is added.
[Version] 11.1.11
[Issue Type] Enhancement
Change-Id: I9448722e66212ca26c6d09f9e645f0ad8717ab67
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
Name: pulseaudio-modules-tizen
Summary: Pulseaudio modules for Tizen
-Version: 11.1.10
+Version: 11.1.11
Release: 0
Group: Multimedia/Audio
License: LGPL-2.1+
pa_dbus_send_error(conn, msg, DBUS_ERROR_NOT_SUPPORTED, "%s", "org.tizen.multimedia.audio.PolicyInternal");
return;
}
+ if (!pa_stream_manager_is_valid_stream_role(dm->core, stream_role)) {
+ pa_dbus_send_error(conn, msg, DBUS_ERROR_NOT_SUPPORTED, "%s", "org.tizen.multimedia.audio.InvalidArgument");
+ return;
+ }
device->specified_stream_role = stream_role;
return is_filter_apply_stream(stream, stream_type);
}
+bool pa_stream_manager_is_valid_stream_role(pa_core *c, const char *role) {
+ pa_stream_manager *m;
+
+ pa_assert(c);
+ pa_assert(role);
+
+ if (!(m = pa_shared_get(c, SHARED_STREAM_MANAGER))) {
+ pa_log_error("could not get shared data");
+ return false;
+ }
+ if (!pa_hashmap_get(m->stream_infos, role)) {
+ pa_log_error("%s is not valid role", role);
+ return false;
+ }
+
+ return true;
+}
+
pa_stream_manager* pa_stream_manager_get(pa_core *c) {
pa_stream_manager *m;
int32_t pa_stream_manager_get_route_type(void *stream, stream_type_t stream_type, bool is_new_data, stream_route_type_t *stream_route_type);
bool pa_stream_manager_check_name_is_vstream(void *stream, stream_type_t type, bool is_new_data);
bool pa_stream_manager_check_filter_apply_stream(void *stream, stream_type_t stream_type);
+bool pa_stream_manager_is_valid_stream_role(pa_core *c, const char *role);
pa_stream_manager* pa_stream_manager_get(pa_core *c);
pa_stream_manager* pa_stream_manager_ref(pa_stream_manager *m);