diff options
| -rw-r--r-- | backends/pulse/pulse-client-stream.c | 17 | ||||
| -rw-r--r-- | backends/pulse/pulse-ext-stream.c | 16 | ||||
| -rw-r--r-- | backends/pulse/pulse-sink-input.c | 6 | ||||
| -rw-r--r-- | backends/pulse/pulse-source-output.c | 6 | 
4 files changed, 17 insertions, 28 deletions
| diff --git a/backends/pulse/pulse-client-stream.c b/backends/pulse/pulse-client-stream.c index d725146..b99c498 100644 --- a/backends/pulse/pulse-client-stream.c +++ b/backends/pulse/pulse-client-stream.c @@ -26,6 +26,8 @@  #include <pulse/pulseaudio.h>  #include "pulse-client-stream.h" +#include "pulse-sink.h" +#include "pulse-source.h"  #include "pulse-stream.h"  struct _PulseClientStreamPrivate @@ -335,6 +337,7 @@ pulse_client_stream_get_parent (MateMixerClientStream *client)  static gboolean  pulse_client_stream_set_parent (MateMixerClientStream *client, MateMixerStream *parent)  { +    MateMixerStreamFlags    flags;      PulseClientStream      *pclient;      PulseClientStreamClass *klass; @@ -347,6 +350,20 @@ pulse_client_stream_set_parent (MateMixerClientStream *client, MateMixerStream *      if (pclient->priv->parent == parent)          return TRUE; +    flags = mate_mixer_stream_get_flags (MATE_MIXER_STREAM (pclient)); + +    /* Validate the parent stream */ +    if (flags & MATE_MIXER_STREAM_INPUT && !PULSE_IS_SOURCE (parent)) { +        g_warning ("Could not change stream parent to %s: not a parent input stream", +                   mate_mixer_stream_get_name (MATE_MIXER_STREAM (parent))); +        return FALSE; +    } else if (flags & MATE_MIXER_STREAM_OUTPUT && !PULSE_IS_SINK (parent)) { +        g_warning ("Could not change stream parent to %s: not a parent output stream", +                   mate_mixer_stream_get_name (MATE_MIXER_STREAM (parent))); +        return FALSE; +    } + +    /* Set the parent */      if (klass->set_parent (pclient, PULSE_STREAM (parent)) == FALSE)          return FALSE; diff --git a/backends/pulse/pulse-ext-stream.c b/backends/pulse/pulse-ext-stream.c index 96164e8..a12a22a 100644 --- a/backends/pulse/pulse-ext-stream.c +++ b/backends/pulse/pulse-ext-stream.c @@ -30,8 +30,6 @@  #include "pulse-client-stream.h"  #include "pulse-ext-stream.h"  #include "pulse-helpers.h" -#include "pulse-sink.h" -#include "pulse-source.h"  #include "pulse-stream.h"  static void pulse_ext_stream_class_init (PulseExtStreamClass *klass); @@ -242,7 +240,6 @@ pulse_ext_stream_set_volume (PulseStream *pstream, pa_cvolume *cvolume)  static gboolean  pulse_ext_stream_set_parent (PulseClientStream *pclient, PulseStream *parent)  { -    MateMixerStreamFlags       flags;      PulseStream               *pstream;      const pa_channel_map      *map;      const pa_cvolume          *cvolume; @@ -251,19 +248,6 @@ pulse_ext_stream_set_parent (PulseClientStream *pclient, PulseStream *parent)      g_return_val_if_fail (PULSE_IS_EXT_STREAM (pclient), FALSE);      g_return_val_if_fail (PULSE_IS_STREAM (parent), FALSE); -    flags = mate_mixer_stream_get_flags (MATE_MIXER_STREAM (pclient)); - -    /* Validate the parent stream */ -    if (flags & MATE_MIXER_STREAM_INPUT && !PULSE_IS_SOURCE (parent)) { -        g_warning ("Could not change stream parent to %s: not a parent input stream", -                   mate_mixer_stream_get_name (MATE_MIXER_STREAM (parent))); -        return FALSE; -    } else if (!PULSE_IS_SINK (parent)) { -        g_warning ("Could not change stream parent to %s: not a parent output stream", -                   mate_mixer_stream_get_name (MATE_MIXER_STREAM (parent))); -        return FALSE; -    } -      pstream = PULSE_STREAM (pclient);      info.name = mate_mixer_stream_get_name (MATE_MIXER_STREAM (pstream)); diff --git a/backends/pulse/pulse-sink-input.c b/backends/pulse/pulse-sink-input.c index 54cd3b3..1d5f9c2 100644 --- a/backends/pulse/pulse-sink-input.c +++ b/backends/pulse/pulse-sink-input.c @@ -253,12 +253,6 @@ pulse_sink_input_set_parent (PulseClientStream *pclient, PulseStream *parent)      g_return_val_if_fail (PULSE_IS_SINK_INPUT (pclient), FALSE); -    if (!PULSE_IS_SINK (parent)) { -        g_warning ("Could not change stream parent to %s: not a parent output stream", -                   mate_mixer_stream_get_name (MATE_MIXER_STREAM (parent))); -        return FALSE; -    } -      pstream = PULSE_STREAM (pclient);      return pulse_connection_move_sink_input (pulse_stream_get_connection (pstream), diff --git a/backends/pulse/pulse-source-output.c b/backends/pulse/pulse-source-output.c index c46b65b..6cbd888 100644 --- a/backends/pulse/pulse-source-output.c +++ b/backends/pulse/pulse-source-output.c @@ -243,12 +243,6 @@ pulse_source_output_set_parent (PulseClientStream *pclient, PulseStream *parent)      g_return_val_if_fail (PULSE_IS_SOURCE_OUTPUT (pclient), FALSE); -    if (!PULSE_IS_SOURCE (parent)) { -        g_warning ("Could not change stream parent to %s: not a parent input stream", -                   mate_mixer_stream_get_name (MATE_MIXER_STREAM (parent))); -        return FALSE; -    } -      pstream = PULSE_STREAM (pclient);      return pulse_connection_move_sink_input (pulse_stream_get_connection (pstream), | 
