diff options
| author | Lennart Poettering <lennart@poettering.net> | 2008-10-07 22:47:32 +0200 | 
|---|---|---|
| committer | Lennart Poettering <lennart@poettering.net> | 2008-10-07 22:47:32 +0200 | 
| commit | 68cc2996cc1e0bfe53d35eafdd26ce4572a10ce9 (patch) | |
| tree | cd7c4f6c8422d8f4f6ad38036621a74c0f0bfee1 | |
| parent | 46f73fb9531772e89ef7706578ba3ed2bde6c563 (diff) | |
after calling PA_CORE_HOOK_SINK_SET_VOLUME hook, check again whether the volume changed
| -rw-r--r-- | src/pulsecore/sink.c | 8 | 
1 files changed, 6 insertions, 2 deletions
diff --git a/src/pulsecore/sink.c b/src/pulsecore/sink.c index 7e920490..d8d1f792 100644 --- a/src/pulsecore/sink.c +++ b/src/pulsecore/sink.c @@ -856,8 +856,12 @@ void pa_sink_set_volume(pa_sink *s, const pa_cvolume *volume) {      changed = !pa_cvolume_equal(&data.volume, &s->volume); -    if (changed && pa_hook_fire(&s->core->hooks[PA_CORE_HOOK_SINK_SET_VOLUME], &data) < 0) -        return; +    if (changed) { +        if (pa_hook_fire(&s->core->hooks[PA_CORE_HOOK_SINK_SET_VOLUME], &data) < 0) +            return; + +        changed = !pa_cvolume_equal(&data.volume, &s->volume); +    }      s->volume = data.volume;  | 
