Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-12-SP4:Update
spice-gtk.1699
a99ed152-no-volume-sync-without-audio.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File a99ed152-no-volume-sync-without-audio.patch of Package spice-gtk.1699
From a99ed1524b075c0cd9e7d82e7877783a1e31d291 Mon Sep 17 00:00:00 2001 From: Victor Toso <victortoso@redhat.com> Date: Mon, 7 Sep 2015 10:17:34 +0200 Subject: [PATCH] audio: Do not volume-sync without audio In case audio backend is not initialized correctly or there isn't audio in the VM, we should not try to volume-sync. Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1257210 --- src/channel-main.c | 6 ++++-- src/spice-audio.c | 4 ++++ 2 files changed, 8 insertions(+), 2 deletions(-) --- a/src/channel-main.c +++ b/src/channel-main.c @@ -1151,7 +1151,8 @@ static void agent_sync_audio_playback(Sp SpiceAudio *audio = spice_audio_get(session, NULL); SpiceMainChannelPrivate *c = main_channel->priv; - if (!test_agent_cap(main_channel, VD_AGENT_CAP_AUDIO_VOLUME_SYNC) || + if (audio == NULL || + !test_agent_cap(main_channel, VD_AGENT_CAP_AUDIO_VOLUME_SYNC) || c->agent_volume_playback_sync == TRUE) { SPICE_DEBUG("%s - is not going to sync audio with guest", __func__); return; @@ -1207,7 +1208,8 @@ static void agent_sync_audio_record(Spic SpiceAudio *audio = spice_audio_get(session, NULL); SpiceMainChannelPrivate *c = main_channel->priv; - if (!test_agent_cap(main_channel, VD_AGENT_CAP_AUDIO_VOLUME_SYNC) || + if (audio == NULL || + !test_agent_cap(main_channel, VD_AGENT_CAP_AUDIO_VOLUME_SYNC) || c->agent_volume_record_sync == TRUE) { SPICE_DEBUG("%s - is not going to sync audio with guest", __func__); return; --- a/src/spice-audio.c +++ b/src/spice-audio.c @@ -197,6 +197,7 @@ void spice_audio_get_playback_volume_inf GAsyncReadyCallback callback, gpointer user_data) { + g_return_if_fail(audio != NULL); SPICE_AUDIO_GET_CLASS(audio)->get_playback_volume_info_async(audio, cancellable, main_channel, callback, user_data); } @@ -208,6 +209,7 @@ gboolean spice_audio_get_playback_volume guint16 **volume, GError **error) { + g_return_val_if_fail(audio != NULL, FALSE); return SPICE_AUDIO_GET_CLASS(audio)->get_playback_volume_info_finish(audio, res, mute, nchannels, volume, error); } @@ -218,6 +220,7 @@ void spice_audio_get_record_volume_info_ GAsyncReadyCallback callback, gpointer user_data) { + g_return_if_fail(audio != NULL); SPICE_AUDIO_GET_CLASS(audio)->get_record_volume_info_async(audio, cancellable, main_channel, callback, user_data); } @@ -229,6 +232,7 @@ gboolean spice_audio_get_record_volume_i guint16 **volume, GError **error) { + g_return_val_if_fail(audio != NULL, FALSE); return SPICE_AUDIO_GET_CLASS(audio)->get_record_volume_info_finish(audio, res, mute, nchannels, volume, error); }
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor