device-manager-dbus: Fix build break 08/194008/1 accepted/tizen/unified/20181130.064945 submit/tizen/20181129.045552
authorSangchul Lee <sc11.lee@samsung.com>
Wed, 28 Nov 2018 07:43:32 +0000 (16:43 +0900)
committerSangchul Lee <sc11.lee@samsung.com>
Wed, 28 Nov 2018 07:43:32 +0000 (16:43 +0900)
It is revised according to the pulseaudio patch.
 : 'Sync with upstream code' (78c3d68d7183f0daa9e0570de24f0be92bac3659)

[Version] 11.1.30
[Issue type] Build break

Change-Id: Ic1cf6e95b676d1fecd777d5266d9d1d4998084cb
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
packaging/pulseaudio-modules-tizen.spec
src/device-manager-dbus.c

index 75a6851..6414212 100644 (file)
@@ -1,6 +1,6 @@
 Name:             pulseaudio-modules-tizen
 Summary:          Pulseaudio modules for Tizen
-Version:          11.1.29
+Version:          11.1.30
 Release:          0
 Group:            Multimedia/Audio
 License:          LGPL-2.1+
index 3587b82..2ad1377 100644 (file)
@@ -1126,16 +1126,18 @@ static void handle_set_sample_format(DBusConnection *conn, DBusMessage *msg, voi
     prev_selected_sample_format = sink->selected_sample_format;
     sink->selected_sample_format = pa_parse_sample_format(sample_format);
 
-    FILL_SAMPLE_SPEC_WITH_SELECTED(spec, sink);
-    if (pa_sink_reconfigure(sink, &spec, false) == -1) {
-        pa_log_error("failed to reconfigure");
-        pa_dbus_send_error(conn, msg, DBUS_ERROR_FAILED, "%s", "org.tizen.multimedia.audio.Internal");
-        sink->selected_sample_format = prev_selected_sample_format;
-        return;
+    if (prev_selected_sample_format != sink->selected_sample_format) {
+        FILL_SAMPLE_SPEC_WITH_SELECTED(spec, sink);
+        pa_sink_reconfigure(sink, &spec, false);
+        if (sink->selected_sample_format != sink->sample_spec.format) {
+            pa_log_error("failed to reconfigure");
+            pa_dbus_send_error(conn, msg, DBUS_ERROR_FAILED, "%s", "org.tizen.multimedia.audio.Internal");
+            sink->selected_sample_format = prev_selected_sample_format;
+            return;
+        }
+        save_preference(dm, sink);
     }
 
-    save_preference(dm, sink);
-
     pa_log_info("Set sample format(%s) of the device(id:%d) successfully", sample_format, device_id);
     pa_assert_se(dbus_connection_send(conn, reply, NULL));
     dbus_message_unref(reply);
@@ -1296,16 +1298,18 @@ static void handle_set_sample_rate(DBusConnection *conn, DBusMessage *msg, void
     prev_selected_sample_rate = sink->selected_sample_rate;
     sink->selected_sample_rate = sample_rate;
 
-    FILL_SAMPLE_SPEC_WITH_SELECTED(spec, sink);
-    if (pa_sink_reconfigure(sink, &spec, false) == -1) {
-        pa_log_error("failed to reconfigure");
-        pa_dbus_send_error(conn, msg, DBUS_ERROR_FAILED, "%s", "org.tizen.multimedia.audio.Internal");
-        sink->selected_sample_rate = prev_selected_sample_rate;
-        return;
+    if (prev_selected_sample_rate != sink->selected_sample_rate) {
+        FILL_SAMPLE_SPEC_WITH_SELECTED(spec, sink);
+        pa_sink_reconfigure(sink, &spec, false);
+        if (sink->selected_sample_rate != sink->sample_spec.rate) {
+            pa_log_error("failed to reconfigure");
+            pa_dbus_send_error(conn, msg, DBUS_ERROR_FAILED, "%s", "org.tizen.multimedia.audio.Internal");
+            sink->selected_sample_rate = prev_selected_sample_rate;
+            return;
+        }
+        save_preference(dm, sink);
     }
 
-    save_preference(dm, sink);
-
     pa_log_info("Set sample rate(%u) of the device(id:%d) successfully", sample_rate, device_id);
     pa_assert_se(dbus_connection_send(conn, reply, NULL));
     dbus_message_unref(reply);