Blob Blame History Raw
diff --git a/src/pavucontrol.cc b/src/pavucontrol.cc
index b7f7a9b..2bf3463 100644
--- a/src/pavucontrol.cc
+++ b/src/pavucontrol.cc
@@ -409,7 +409,6 @@ void ChannelWidget::onVolumeScaleValueChanged() {
     streamWidget->updateChannelVolume(channel, volume);
 
     if (beepDevice != "") {
-        g_debug("blah: %s", beepDevice.c_str());
         ca_context_change_device(ca_gtk_context_get(), beepDevice.c_str());
 
         ca_context_cancel(ca_gtk_context_get(), 2);
@@ -423,8 +422,6 @@ void ChannelWidget::onVolumeScaleValueChanged() {
                                CA_PROP_CANBERRA_ENABLE, "1",
                                NULL);
 
-        g_debug("%i = %s", r, ca_strerror(r));
-
         ca_context_change_device(ca_gtk_context_get(), NULL);
     }
 }
@@ -935,7 +932,7 @@ void RoleWidget::executeVolumeUpdate() {
     info.channel_map.channels = 1;
     info.channel_map.map[0] = PA_CHANNEL_POSITION_MONO;
     info.volume = volume;
-    info.device = device.c_str();
+    info.device = device == "" ? NULL : device.c_str();
     info.mute = muteToggleButton->get_active();
 
     pa_operation* o;
@@ -947,7 +944,6 @@ void RoleWidget::executeVolumeUpdate() {
     pa_operation_unref(o);
 }
 
-
 /*** MainWindow ***/
 
 MainWindow::MainWindow(BaseObjectType* cobject, const Glib::RefPtr<Gnome::Glade::Xml>& x) :
@@ -1423,10 +1419,10 @@ void MainWindow::updateRole(const pa_ext_stream_restore_info &info) {
 
     eventRoleWidget->updating = true;
 
-    eventRoleWidget->device = info.device;
+    eventRoleWidget->device = info.device ? info.device : "";
 
     volume.channels = 1;
-    volume.values[0] = pa_cvolume_avg(&info.volume);
+    volume.values[0] = pa_cvolume_max(&info.volume);
 
     eventRoleWidget->setVolume(volume);
     eventRoleWidget->muteToggleButton->set_active(info.mute);