]> code.delx.au - pulseaudio/commitdiff
core: volume ramping fix
authorhuan zheng <huan.zheng.zbt@gmail.com>
Tue, 5 Jan 2010 23:21:07 +0000 (00:21 +0100)
committerLennart Poettering <lennart@poettering.net>
Tue, 5 Jan 2010 23:22:23 +0000 (00:22 +0100)
Hi,
I found that volume ramping is inside PA now.
there's a minor fix here, it is a bug i found after the patch is submitted:

line 1781 of sink-input.c :
if ((i->thread_info.ramp_info.envelope_dying - nbytes) <= 0) {
need to be changed to
if ((i->thread_info.ramp_info.envelope_dying - (ssize_t) nbytes) <= 0) {

otherwise this argument will never be negative since nbytes is of type
size_t which is unsigned.
Please change it when you have time, sorry if bring any inconvenience.  :)

src/pulsecore/sink-input.c

index 9b4edeb9582795213860d43aa095337b508f2c46..a4902909d2351430a2dd3a85f8697fe6ef377034 100644 (file)
@@ -1780,7 +1780,7 @@ static void sink_input_rewind_ramp_info(pa_sink_input *i, size_t nbytes) {
                 i->thread_info.ramp_info.is_ramping = TRUE;
             }
         } else if (i->thread_info.ramp_info.envelope_dying < envelope_length) {
-            if ((i->thread_info.ramp_info.envelope_dying - nbytes) <= 0) {
+            if ((i->thread_info.ramp_info.envelope_dying - (ssize_t) nbytes) <= 0) {
                 pa_log_debug("Envelope Restart");
                 pa_envelope_restart(i->thread_info.ramp_info.envelope);
             }